Zeichnet eine beliebige Entität in die Szene, wie drawAnyAsync es tut, ohne das gezeichnete Objekt
zurückzugeben; für den letzten Schritt eines Skripts, das nur will, dass das Ergebnis erscheint.
Die zu zeichnende Entität und die optionalen Zeichenoptionen
Zeichnet eine beliebige Entität, die die Bibliothek erzeugt, in die Szene und gibt das gezeichnete Objekt zurück: Kernel- Formen aus OCCT, JSCAD und Manifold, Punkte, Linien, Polylinien, Kurven, Meshes, Tags und Knoten.
Die Optionen werden auf die Entität abgestimmt, mit Standardwerten, wenn keine angegeben sind; übergeben Sie das vorherige Ergebnis im Aktualisierungs-Slot, um an Ort und Stelle neu zu zeichnen.
Was das Zeichnen der Entität ergibt: ein Szenenobjekt für Geometrie, das Tag oder die Tags für ein Tag, ein Achsenkreuz für einen Knoten; undefined für eine leere Liste
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 });
Zeichnet eine Entität, die keine Kernel-Arbeit braucht, wie drawAny es tut, ohne das gezeichnete Objekt
zurückzugeben; Punkte, Linien, Polylinien und Tags kommen infrage, Kernel-Formen nicht.
Die zu zeichnende Entität und die optionalen Zeichenoptionen
Zeichnet eine Entität, die keine Kernel-Arbeit braucht, sofort in die Szene und gibt das gezeichnete Objekt zurück: Punkte, Linien, Polylinien, Tags und Knoten.
Kernel-Formen aus OCCT, JSCAD und Manifold müssen durch drawAnyAsync gehen, das darauf wartet, dass
der Kernel sie vernetzt.
Was das Zeichnen der Entität ergibt: ein Szenenobjekt für Geometrie, das Tag oder die Tags für ein Tag, ein Achsenkreuz für einen Knoten; undefined für eine leere Liste
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 });
Zeichnet ein Gitter auf die Bodenebene, wie drawGridMesh es tut, ohne das Mesh zurückzugeben.
Die Größe, der Linienabstand, die Farben und die Deckkraft des Gitters
Zeichnet ein Gitter auf die Bodenebene, die XZ-Ebene durch den Ursprung, um ein Gefühl für Maßstab und Orientierung zu geben; jede zehnte Linie wird standardmäßig dicker gezeichnet.
Die Größe, der Linienabstand, die Farben und die Deckkraft des Gitters
Das Gitter-Mesh
Erstellt eine Bildtextur aus einer URL für die Textur-Slots von createPBRMaterial, mit
Kachelung, Versatz, Drehung und Filterung, die in jedem Renderer dasselbe bedeuten.
Die Bild-URL und die Optionen für Kachelung, Versatz, Drehung, Spiegelung und Abtastung
Die Textur der Engine
Erstellt ein physikalisch basiertes Material aus Einstellungen, die in jedem Renderer dasselbe bedeuten: Grund-
farbe, Metallic und Rauheit, Deckkraft, emissives Leuchten, die Textur-Slots und die Alpha- und
Seitenoptionen; legen Sie es in das faceMaterial der Zeichenoptionen.
Der Name, die Farben, die Metallic- und Rauheitswerte, die Deckkraft, die Texturen und die Renderoptionen
Das Material der Engine
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 });
Erzeugt Zeichenoptionen für Punkte, Linien, Polylinien, Kurven, Oberflächen und JSCAD-Meshes: Farben, Größe, Deckkraft, zweiseitiges Rendern und Pfeilspitzen an Linien, mit Standardwerten für das, was weggelassen wird.
Die Optionen, von denen ausgegangen wird
Die Zeichenoptionen
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 });
Erzeugt die vollständigen Zeichenoptionen für OCCT-Formen: Vernetzungsgenauigkeit, Flächen-, Kanten- und Vertex- Farben und -Größen, Indexbeschriftungen, Pfeile an Kanten, zweiseitiges Rendern und der Triangulations- Cache, mit Standardwerten für das, was weggelassen wird.
Die Optionen, von denen ausgegangen wird
Die Zeichenoptionen
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 });
Erzeugt die meistgenutzten Zeichenoptionen für OCCT-Formen, Genauigkeit, Flächen- und Kantenfarben und zweiseitiges Rendern, mit Standardwerten für das, was weggelassen wird.
Die Optionen, von denen ausgegangen wird
Die Zeichenoptionen
Erzeugt Zeichenoptionen für OCCT-Formen, deren Flächen ein vollständiges Engine-Material verwenden, wie
createPBRMaterial eines erzeugt, plus die Genauigkeit und den Kantenstil.
Die Optionen, von denen ausgegangen wird
Die Zeichenoptionen
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 });
Erzeugt Zeichenoptionen für Manifold-Volumenkörper und -Querschnitte: Flächenfarbe oder ein vollständiges Engine- Material, der Linienstil von Querschnitten, Normalen und das zweiseitige Rendern.
Die Optionen, von denen ausgegangen wird
Die Zeichenoptionen
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 });
Erzeugt Zeichenoptionen für Transformationsknoten, die als Dreibein farbiger Achsenlinien einer gegebenen Länge gezeichnet werden.
Die Optionen, von denen ausgegangen wird
Die Zeichenoptionen
Zeichnet alles in die Szene: Kernel-Formen, Punkte, Linien, Polylinien, Kurven, Meshes und Tags laufen alle über
drawAnyAsync, das den passenden Renderer für die Entität wählt und das gezeichnete Objekt zurückgibt. Dieoptions-Methoden bauen die Zeichenoptionen mit Standardwerten für jede Art von Entität,createPBRMaterialundcreateTextureerstellen Materialien für die Flächenslots, und ein gezeichnetes Objekt kann an Ort und Stelle neu gezeichnet werden, indem es zurückgegeben wird.