Desenha qualquer entidade na cena, tal como drawAnyAsync faz, sem devolver o objeto
desenhado; para o último passo de um script que só precisa que o resultado apareça.
A entidade a desenhar e as opções de desenho opcionais
Desenha na cena qualquer entidade que a biblioteca produz e devolve o objeto desenhado: formas de kernel do OCCT, JSCAD e Manifold, pontos, linhas, polilinhas, curvas, malhas, etiquetas e nós.
As opções são ajustadas à entidade, com predefinições quando nenhuma é dada; passe o resultado anterior de volta na ranhura de atualização para redesenhar no lugar.
O que o desenho da entidade produz: um objeto de cena para geometria, a tag ou tags para uma tag, uma tríade de eixos para um nó; undefined para uma lista vazia
const box = await bitbybit.occt.shapes.solid.createBox({ width: 10, length: 10, height: 10, center: [0, 0, 0] });
const options = bitbybit.draw.optionsOcctShapeSimple({ precision: 0.01, drawFaces: true, faceColour: "#ff0000", drawEdges: true, edgeColour: "#ffffff", edgeWidth: 2, drawTwoSided: true, backFaceColour: "#0000ff", backFaceOpacity: 1 });
const drawn = await bitbybit.draw.drawAnyAsync({ entity: box, options });
Desenha uma entidade que não precisa de trabalho do kernel, tal como drawAny faz, sem devolver o objeto
desenhado; pontos, linhas, polilinhas e etiquetas qualificam-se, formas de kernel não.
A entidade a desenhar e as opções de desenho opcionais
Desenha imediatamente na cena uma entidade que não precisa de trabalho do kernel e devolve o objeto desenhado: pontos, linhas, polilinhas, etiquetas e nós.
As formas de kernel do OCCT, JSCAD e Manifold têm de passar por drawAnyAsync, que espera que o
kernel gere a sua malha.
O que o desenho da entidade produz: um objeto de cena para geometria, a tag ou tags para uma tag, uma tríade de eixos para um nó; undefined para uma lista vazia
const options = bitbybit.draw.optionsSimple({ colours: "#00ff00", size: 0.5, opacity: 1, updatable: false, hidden: false, drawTwoSided: true, backFaceColour: "#0000ff", backFaceOpacity: 1, colorMapStrategy: Bit.Inputs.Base.colorMapStrategyEnum.lastColorRemainder, arrowSize: 0, arrowAngle: 15 });
const drawn = bitbybit.draw.drawAny({ entity: [[0, 0, 0], [5, 5, 5], [10, 0, 0]], options });
Desenha uma grelha no plano do chão, tal como drawGridMesh faz, sem devolver a malha.
O tamanho, o espaçamento das linhas, as cores e a opacidade da grelha
Desenha uma grelha no plano do chão, o plano XZ que passa pela origem, para dar uma noção de escala e orientação; por predefinição cada décima linha é desenhada mais grossa.
O tamanho, o espaçamento das linhas, as cores e a opacidade da grelha
A malha da grelha
Cria uma textura de imagem a partir de um URL para as ranhuras de textura de createPBRMaterial, com
repetição, deslocamento, rotação e filtragem que significam o mesmo em todos os renderizadores.
O URL da imagem e as opções de repetição, deslocamento, rotação, inversão e amostragem
A textura do motor
Cria um material fisicamente baseado a partir de definições que significam o mesmo em todos os renderizadores: cor
base, metálico e rugosidade, opacidade, brilho emissivo, as ranhuras de textura e as opções de alfa e
de lado; coloque-o no faceMaterial das opções de desenho.
O nome, as cores, os valores metálico e de rugosidade, a opacidade, as texturas e as opções de renderização
O material do motor
const material = bitbybit.draw.createPBRMaterial({ name: "steel", baseColor: "#c0c0c0", metallic: 1, roughness: 0.4, alpha: 1, emissiveColor: "#000000", emissiveIntensity: 1, zOffset: 0, zOffsetUnits: 0, alphaMode: Bit.Inputs.Draw.alphaModeEnum.opaque, alphaCutoff: 0.5, doubleSided: false, wireframe: false, unlit: false });
const options = bitbybit.draw.optionsOcctShapeMaterial({ precision: 0.01, faceMaterial: material, drawEdges: true, edgeColour: "#ffffff", edgeWidth: 2 });
Constrói opções de desenho para pontos, linhas, polilinhas, curvas, superfícies e malhas JSCAD: cores, tamanho, opacidade, renderização de dois lados e pontas de seta nas linhas, com predefinições para o que for omitido.
As opções de partida
As opções de desenho
const options = bitbybit.draw.optionsSimple({ colours: "#ff0000", size: 2, opacity: 1, updatable: false, hidden: false, drawTwoSided: true, backFaceColour: "#0000ff", backFaceOpacity: 1, colorMapStrategy: Bit.Inputs.Base.colorMapStrategyEnum.lastColorRemainder, arrowSize: 0, arrowAngle: 15 });
Constrói as opções de desenho completas para formas OCCT: precisão de malha, cores e tamanhos de faces, arestas e vértices, rótulos de índice, setas nas arestas, renderização de dois lados e a cache de triangulação, com predefinições para o que for omitido.
As opções de partida
As opções de desenho
const options = bitbybit.draw.optionsOcctShape({ faceOpacity: 1, edgeOpacity: 1, edgeColour: "#ffffff", faceColour: "#ff0000", edgeWidth: 2, drawEdges: true, drawFaces: true, drawVertices: false, vertexColour: "#ff00ff", vertexSize: 0.03, precision: 0.01, drawEdgeIndexes: false, edgeIndexHeight: 0.06, edgeIndexColour: "#ff00ff", drawFaceIndexes: false, faceIndexHeight: 0.06, faceIndexColour: "#0000ff", drawTwoSided: true, backFaceColour: "#0000ff", backFaceOpacity: 1, edgeArrowSize: 0, edgeArrowAngle: 15, keepMeshData: false, allowQualityDecrease: true, forceFaceDeflection: false });
Constrói as opções de desenho mais usadas para formas OCCT, precisão, cores de faces e arestas e renderização de dois lados, com predefinições para o que for omitido.
As opções de partida
As opções de desenho
Constrói opções de desenho para formas OCCT cujas faces usam um material completo do motor, tal como
createPBRMaterial o cria, mais a precisão e o estilo das arestas.
As opções de partida
As opções de desenho
const material = bitbybit.draw.createPBRMaterial({ name: "steel", baseColor: "#c0c0c0", metallic: 1, roughness: 0.4, alpha: 1, emissiveColor: "#000000", emissiveIntensity: 1, zOffset: 0, zOffsetUnits: 0, alphaMode: Bit.Inputs.Draw.alphaModeEnum.opaque, alphaCutoff: 0.5, doubleSided: false, wireframe: false, unlit: false });
const options = bitbybit.draw.optionsOcctShapeMaterial({ precision: 0.01, faceMaterial: material, drawEdges: true, edgeColour: "#ffffff", edgeWidth: 2 });
Constrói opções de desenho para sólidos e secções transversais Manifold: cor de face ou um material completo do motor, o estilo de linha das secções transversais, as normais e a renderização de dois lados.
As opções de partida
As opções de desenho
const options = bitbybit.draw.optionsManifoldShapeMaterial({ faceOpacity: 1, faceColour: "#ff0000", faceMaterial: material, crossSectionColour: "#ff00ff", crossSectionWidth: 2, crossSectionOpacity: 1, computeNormals: false, drawTwoSided: true, backFaceColour: "#0000ff", backFaceOpacity: 1 });
const drawn = await bitbybit.draw.drawAnyAsync({ entity: solid, options });
Constrói opções de desenho para nós de transformação, que são desenhados como uma tríade de linhas de eixo coloridas com um dado comprimento.
As opções de partida
As opções de desenho
Desenhar qualquer coisa na cena: formas do kernel, pontos, linhas, polilinhas, curvas, malhas e tags passam todos por
drawAnyAsync, que escolhe o renderizador certo para a entidade e devolve o objeto desenhado. Os métodosoptionsconstroem as opções de desenho com predefinições para cada tipo de entidade,createPBRMaterialecreateTexturecriam materiais para as ranhuras das faces, e um objeto desenhado pode ser redesenhado no lugar passando-o de volta.