Menggambar entitas apa pun ke dalam scene, seperti drawAnyAsync, tanpa mengembalikan objek yang digambar; untuk langkah terakhir skrip yang hanya perlu hasilnya tampil.
Entitas yang akan digambar dan opsi penggambaran opsional
Menggambar entitas apa pun yang dihasilkan pustaka ke dalam scene dan mengembalikan objek yang digambar: bentuk kernel dari OCCT, JSCAD dan Manifold, titik, garis, polyline, kurva, mesh, tag dan node.
Opsi dicocokkan dengan entitasnya, dengan default jika tidak ada yang diberikan; berikan kembali hasil sebelumnya di slot pembaruan untuk menggambar ulang di tempat.
Apa yang dihasilkan dari menggambar entitas: objek scene untuk geometri, tag atau tag-tag untuk sebuah tag, triad sumbu untuk sebuah node; undefined untuk daftar kosong
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 });
Menggambar entitas yang tidak memerlukan kerja kernel, seperti drawAny, tanpa mengembalikan objek yang digambar; titik, garis, polyline dan tag memenuhi syarat, bentuk kernel tidak.
Entitas yang akan digambar dan opsi penggambaran opsional
Menggambar entitas yang tidak memerlukan kerja kernel ke dalam scene secara langsung dan mengembalikan objek yang digambar: titik, garis, polyline, tag dan node.
Bentuk kernel dari OCCT, JSCAD dan Manifold harus melalui drawAnyAsync, yang menunggu kernel mem-mesh-nya.
Apa yang dihasilkan dari menggambar entitas: objek scene untuk geometri, tag atau tag-tag untuk sebuah tag, triad sumbu untuk sebuah node; undefined untuk daftar kosong
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 });
Menggambar grid pada bidang tanah, seperti drawGridMesh, tanpa mengembalikan mesh-nya.
Ukuran, jarak garis, warna dan opasitas grid
Menggambar grid pada bidang tanah, bidang XZ yang melewati titik asal, untuk memberi kesan skala dan orientasi; setiap garis kesepuluh digambar lebih tebal secara default.
Ukuran, jarak garis, warna dan opasitas grid
Mesh grid
Membuat tekstur gambar dari URL untuk slot-slot tekstur createPBRMaterial, dengan pengubinan, offset, rotasi dan penyaringan yang berarti sama di setiap renderer.
URL gambar serta opsi pengubinan, offset, rotasi, pembalikan dan sampling
Tekstur milik engine
Membuat material berbasis fisika dari pengaturan yang berarti sama di setiap renderer: warna dasar, metalik dan kekasaran, opasitas, cahaya emisif, slot-slot tekstur serta opsi alfa dan sisi; letakkan di faceMaterial pada opsi penggambaran.
Nama, warna, nilai metalik dan kekasaran, opasitas, tekstur dan opsi rendering
Material milik 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 });
Membangun opsi penggambaran untuk titik, garis, polyline, kurva, permukaan dan mesh JSCAD: warna, ukuran, opasitas, rendering dua sisi dan kepala panah pada garis, dengan default untuk yang dikosongkan.
Opsi awal yang menjadi dasar
Opsi penggambaran
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 });
Membangun opsi penggambaran lengkap untuk bentuk OCCT: presisi meshing, warna dan ukuran muka, tepi dan verteks, label indeks, panah pada tepi, rendering dua sisi dan cache triangulasi, dengan default untuk yang dikosongkan.
Opsi awal yang menjadi dasar
Opsi penggambaran
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 });
Membangun opsi penggambaran yang paling sering dipakai untuk bentuk OCCT, yaitu presisi, warna muka dan tepi serta rendering dua sisi, dengan default untuk yang dikosongkan.
Opsi awal yang menjadi dasar
Opsi penggambaran
Membangun opsi penggambaran untuk bentuk OCCT yang muka-mukanya memakai material engine penuh, sebagaimana dibuat createPBRMaterial, ditambah presisi dan gaya tepi.
Opsi awal yang menjadi dasar
Opsi penggambaran
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 });
Membangun opsi penggambaran untuk solid dan penampang Manifold: warna muka atau material engine penuh, gaya garis penampang, normal dan rendering dua sisi.
Opsi awal yang menjadi dasar
Opsi penggambaran
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 });
Membangun opsi penggambaran untuk node transformasi, yang digambar sebagai triad garis sumbu berwarna dengan panjang tertentu.
Opsi awal yang menjadi dasar
Opsi penggambaran
Menggambar apa pun ke dalam scene: bentuk kernel, titik, garis, polyline, kurva, mesh dan tag semuanya melalui
drawAnyAsync, yang memilih renderer yang tepat untuk entitas tersebut dan mengembalikan objek yang digambar. Metode-metodeoptionsmembangun opsi penggambaran dengan nilai bawaan untuk setiap jenis entitas,createPBRMaterialdancreateTexturemembuat material untuk slot muka, dan objek yang telah digambar dapat digambar ulang di tempat dengan mengembalikannya sebagai masukan.