Bitbybit Docs
    Preparing search index...

    Class BabylonMesh

    Bekerja dengan mesh yang sudah ada di scene BabylonJS, objek-objek yang dikembalikan draw.drawAnyAsync: menggeser, memutar dan menskalakannya, menampilkan dan menyembunyikan, pengindukan, flag pemilihan dan tabrakan, nama dan id, pengklonan dan pembuatan instans untuk banyak salinan, dan membaca kembali segitiga-segitiganya. Rotasi diberikan dalam derajat; posisi dan jarak dalam satuan scene.

    Index

    Constructors

    edit

    • Menyatukan beberapa mesh menjadi satu mesh baru, yang digambar lebih cepat daripada banyak mesh terpisah.

      Sumber-sumbernya dihapus jika disposeSource bernilai true; setel allow32BitsIndices jika mesh-mesh itu bersama-sama memiliki lebih dari 65 ribu verteks, dan gunakan opsi sub-mesh untuk mempertahankan material terpisah.

      Parameters

      Returns Mesh

      Mesh hasil penggabungan

      const merged = bitbybit.babylon.mesh.mergeMeshes({ arrayOfMeshes: [meshA, meshB], disposeSource: true, allow32BitsIndices: true, subdivideWithSubMeshes: false, multiMultiMaterials: false });
      
    • Memberi setiap segitiga sebuah mesh verteks dan normalnya sendiri, sehingga muka-muka tampil sebagai faset datar, bukan dihaluskan melintasi tepi; mesh diubah di tempat dan dikembalikan.

      Parameters

      Returns Mesh

      Mesh yang sama, dengan shading datar

      const faceted = bitbybit.babylon.mesh.convertToFlatShadedMesh({ babylonMesh: mesh });
      
    • Membuat salinan sebuah mesh, beserta anak-anaknya, yang berbagi geometri dengan aslinya dan ditempatkan di tempat yang sama; salinan itu memancarkan dan menerima bayangan seperti aslinya.

      Parameters

      Returns Mesh

      Salinannya

      const copy = bitbybit.babylon.mesh.clone({ babylonMesh: mesh });
      bitbybit.babylon.mesh.setPosition({ babylonMesh: copy, position: [10, 0, 0] });
    • Membuat satu salinan mesh di setiap posisi yang diberikan, dalam urutan yang sama; salinan-salinan itu berbagi geometri dengan aslinya.

      Parameters

      Returns Mesh[]

      Satu salinan per posisi

      const copies = bitbybit.babylon.mesh.cloneToPositions({ babylonMesh: mesh, positions: [[0, 0, 0], [10, 0, 0], [20, 0, 0]] });
      

    get

    • Membaca node yang menjadi induk sebuah mesh, yaitu yang menjadi acuan geraknya; mesh di tingkat atas tidak memilikinya.

      Parameters

      Returns Node

      Node induk

    • Menyetel apakah sebuah mesh merespons pemilihan pointer, dan anak-anaknya juga jika includeChildren bernilai true; mesh yang tidak dapat dipilih dilewati oleh klik dan ray yang memilih.

      Parameters

      Returns void

      bitbybit.babylon.mesh.setPickable({ babylonMesh: mesh, pickable: true, includeChildren: true });
      
    • Membaca apakah mesh dapat dipilih dengan pointer.

      Parameters

      Returns boolean

      True jika mesh merespons pemilihan

    • Menemukan setiap mesh dalam scene yang namanya memuat teks yang diberikan, peka huruf besar-kecil, dalam urutan scene.

      Parameters

      Returns AbstractMesh[]

      Mesh yang cocok

      const wheels = bitbybit.babylon.mesh.getMeshesWhereNameContains({ name: "wheel" });
      
    • Mencantumkan mesh-mesh yang berinduk di bawah sebuah mesh: semua keturunan, atau hanya anak langsung jika directDescendantsOnly bernilai true.

      Parameters

      Returns AbstractMesh[]

      Mesh anak

      const parts = bitbybit.babylon.mesh.getChildMeshes({ babylonMesh: model, directDescendantsOnly: false });
      
    • Menemukan setiap mesh dalam scene dengan id yang persis sama dengan yang diberikan; id tidak harus unik, jadi beberapa mesh mungkin cocok.

      Parameters

      Returns AbstractMesh[]

      Mesh dengan id tersebut

      const meshes = bitbybit.babylon.mesh.getMeshesOfId({ id: "wheel" });
      
    • Menemukan mesh pertama dalam scene dengan id yang persis sama dengan yang diberikan; gunakan getMeshesOfId jika beberapa mesh memakainya bersama.

      Parameters

      Returns AbstractMesh

      Mesh pertama dengan id tersebut

      const mesh = bitbybit.babylon.mesh.getMeshOfId({ id: "wheel" });
      
    • Menemukan mesh dengan id unik yang diberikan, angka yang diberikan scene ke setiap mesh satu kali, sebagaimana dibaca getUniqueId.

      Parameters

      Returns AbstractMesh

      Mesh dengan id unik tersebut

      const id = bitbybit.babylon.mesh.getUniqueId({ babylonMesh: mesh });
      const same = bitbybit.babylon.mesh.getMeshOfUniqueId({ uniqueId: id });
    • Membaca id sebuah mesh, label yang disetel oleh setId atau oleh loader yang membuatnya.

      Parameters

      Returns string

      Id

    • Membaca id unik sebuah mesh, angka yang diberikan scene ke setiap mesh satu kali dan tidak pernah dipakai ulang.

      Parameters

      Returns number

      Angka id unik

    • Membaca segitiga-segitiga sebuah mesh sebagai daftar berisi tiga titik dalam koordinat mesh itu sendiri, bentuk yang diterima jscad.shapes.fromPolygonPoints dan pembangun serupa. Mesh harus tersusun dari segitiga.

      Parameters

      Returns Point3[][]

      Segitiga-segitiga sebagai daftar berisi tiga titik

      const triangles = bitbybit.babylon.mesh.getVerticesAsPolygonPoints({ babylonMesh: mesh });
      
    • Membaca nama sebuah mesh, sebagaimana disetel oleh setName atau oleh apa pun yang membuatnya.

      Parameters

      Returns string

      Nama

    • Membaca material sebuah mesh, deskripsi permukaan yang dipakai untuk menggambar muka-mukanya.

      Parameters

      Returns Material

      Material

    • Membaca posisi sebuah mesh relatif terhadap induknya, sebagai titik.

      Parameters

      Returns Point3

      Posisi sebagai titik

    • Membaca posisi sebuah mesh dalam koordinat dunia, dengan transformasi setiap induknya diterapkan.

      Parameters

      Returns Point3

      Posisi dunia sebagai titik

    • Membaca rotasi sebuah mesh mengelilingi X, Y dan Z, dalam radian, sebagaimana disimpan properti rotasinya.

      Parameters

      Returns Point3

      Sudut rotasi dalam radian

    • Membaca faktor skala sebuah mesh sepanjang X, Y dan Z; 1 berarti tidak diskalakan.

      Parameters

      Returns Point3

      Faktor skala

    instance

    • Membuat instance mesh yang telah ditempatkan, seperti createMeshInstanceAndTransform, tanpa mengembalikannya; untuk skrip yang hanya perlu salinannya tampil.

      Parameters

      Returns void

      bitbybit.babylon.mesh.createMeshInstanceAndTransformNoReturn({ mesh, position: [10, 0, 0], rotation: [0, 45, 0], scaling: [1, 1, 1] });
      
    • Membuat instance sebuah mesh, salinan ringan yang berbagi geometrinya dan digambar dengan murah, dan menempatkannya pada posisi, rotasi dalam derajat dan penskalaan yang diberikan.

      Mesh dengan anak mendapat satu instance per anak, dikumpulkan di bawah wadah baru; aslinya disembunyikan.

      Parameters

      Returns Mesh

      Wadah yang menampung instans-instansnya

      const instance = bitbybit.babylon.mesh.createMeshInstanceAndTransform({ mesh, position: [10, 0, 0], rotation: [0, 45, 0], scaling: [1, 1, 1] });
      
    • Membuat instance sebuah mesh, salinan ringan yang berbagi geometrinya dan digambar dengan murah jika banyak yang serupa diperlukan, ditempatkan di tempat aslinya berada.

      Mesh dengan anak mendapat satu instance per anak, dikumpulkan di bawah wadah baru.

      Parameters

      Returns Mesh

      Instans, atau wadah yang menampung instans anak

      const instance = bitbybit.babylon.mesh.createMeshInstance({ mesh });
      bitbybit.babylon.mesh.setPosition({ babylonMesh: instance, position: [10, 0, 0] });

    intersects

    • Memberi tahu apakah dua mesh tumpang tindih, dinilai dari kotak pembatasnya: kotak sejajar sumbu secara default, atau kotak yang mengikuti rotasi setiap mesh jika precise bernilai true; includeDescendants menguji anak-anaknya juga.

      Parameters

      Returns boolean

      True jika kedua mesh saling tumpang tindih

      const touching = bitbybit.babylon.mesh.intersectsMesh({ babylonMesh: meshA, babylonMesh2: meshB, precise: true, includeDescendants: false });
      
    • Memberi tahu apakah sebuah titik terletak di dalam kotak pembatas sebuah mesh.

      Parameters

      Returns boolean

      True jika titik berada di dalam batas mesh

      const inside = bitbybit.babylon.mesh.intersectsPoint({ babylonMesh: mesh, point: [0, 1, 0] });
      

    memory

    • Menghapus mesh dari scene dan membebaskan sumber daya GPU-nya; mesh tidak dapat dipakai sesudahnya. Tidak terjadi apa pun jika tidak ada mesh yang diberikan.

      Parameters

      Returns void

      bitbybit.babylon.mesh.dispose({ babylonMesh: mesh });
      

    move

    • Memindahkan sebuah mesh sepanjang arah depannya sendiri, sumbu Z lokal, sejauh distance satuan scene; mesh yang diputar bergerak ke arah hadapnya.

      Parameters

      Returns void

      bitbybit.babylon.mesh.moveForward({ babylonMesh: mesh, distance: 5 });
      
    • Memindahkan sebuah mesh berlawanan dengan arah depannya sendiri, sumbu Z lokal, sejauh distance satuan scene.

      Parameters

      Returns void

    • Memindahkan sebuah mesh sepanjang arah atasnya sendiri, sumbu Y lokal, sejauh distance satuan scene.

      Parameters

      Returns void

    • Memindahkan sebuah mesh berlawanan dengan arah atasnya sendiri, sumbu Y lokal, sejauh distance satuan scene.

      Parameters

      Returns void

    • Memindahkan sebuah mesh sepanjang arah kanannya sendiri, sumbu X lokal, sejauh distance satuan scene.

      Parameters

      Returns void

    • Memindahkan sebuah mesh berlawanan dengan arah kanannya sendiri, sumbu X lokal, sejauh distance satuan scene.

      Parameters

      Returns void

    • Memutar sebuah mesh mengelilingi sumbu Y-nya sendiri sejauh rotate derajat, di atas rotasinya saat ini, seperti mobil berbelok ke kiri atau kanan.

      Parameters

      Returns void

      bitbybit.babylon.mesh.yaw({ babylonMesh: mesh, rotate: 45 });
      
    • Memutar sebuah mesh mengelilingi sumbu X-nya sendiri sejauh rotate derajat, di atas rotasinya saat ini, seperti hidung yang mendongak ke atas atau menunduk.

      Parameters

      Returns void

    • Memutar sebuah mesh mengelilingi sumbu Z-nya sendiri sejauh rotate derajat, di atas rotasinya saat ini, seperti sayap yang miring.

      Parameters

      Returns void

    • Memutar sebuah mesh sejauh angle derajat mengelilingi sumbu yang melewati position, sehingga mesh mengorbit titik itu, bukan berputar di tempat.

      Parameters

      Returns void

      bitbybit.babylon.mesh.rotateAroundAxisWithPosition({ mesh, position: [0, 0, 0], axis: [0, 1, 0], angle: 90 });
      

    set

    • Menjadikan satu mesh anak dari mesh lain, sehingga sejak saat itu ia bergerak, berputar dan menskala bersama induknya; posisinya menjadi relatif terhadap induk.

      Parameters

      • inputs: SetParentDto

        Mesh dan mesh yang akan menjadi induknya

      Returns void

      bitbybit.babylon.mesh.setParent({ babylonMesh: wheel, parentMesh: car });
      
    • Menyalakan atau mematikan pemeriksaan tabrakan untuk sebuah mesh, dan anak-anaknya jika includeChildren bernilai true, sehingga kamera atau collider lain yang tabrakannya aktif tidak dapat menembusnya.

      Parameters

      Returns void

      bitbybit.babylon.mesh.setCheckCollisions({ babylonMesh: walls, checkCollisions: true, includeChildren: true });
      
    • Membiarkan sebuah mesh, dan anak-anaknya jika includeChildren bernilai true, bereaksi terhadap pointer yang sekadar bergerak di atasnya, yang mati secara default karena memerlukan satu pemilihan pada setiap gerakan pointer.

      Parameters

      Returns void

      bitbybit.babylon.mesh.enablePointerMoveEvents({ babylonMesh: mesh, includeChildren: true });
      
    • Menghentikan sebuah mesh, dan anak-anaknya jika includeChildren bernilai true, dari bereaksi terhadap gerakan pointer, kembali ke default.

      Parameters

      Returns void

      bitbybit.babylon.mesh.disablePointerMoveEvents({ babylonMesh: mesh, includeChildren: true });
      
    • Menyetel id sebuah mesh, label yang dipakai getMeshOfId untuk menemukannya dan yang tidak harus unik.

      Parameters

      Returns void

    • Menyetel nama sebuah mesh, dan anak-anaknya juga jika includeChildren bernilai true; nama adalah yang dicari getMeshesWhereNameContains.

      Parameters

      Returns void

    • Memberi sebuah mesh material, dan anak-anaknya juga jika includeChildren bernilai true; material menentukan warna, kilap dan transparansi permukaannya.

      Parameters

      Returns void

      const material = bitbybit.babylon.material.pbrMetallicRoughness.create({ name: "red", baseColor: "#ff0000", emissiveColor: "#000000", metallic: 0.2, roughness: 0.6, alpha: 1, backFaceCulling: false, zOffset: 0 });
      bitbybit.babylon.mesh.setMaterial({ babylonMesh: mesh, material, includeChildren: true });
    • Menempatkan sebuah mesh, atau instance-nya, pada titik relatif terhadap induknya.

      Parameters

      Returns void

      bitbybit.babylon.mesh.setPosition({ babylonMesh: mesh, position: [0, 5, 0] });
      
    • Menyetel rotasi sebuah mesh, atau instance-nya, sebagai sudut dalam derajat mengelilingi X, Y dan Z, menggantikan rotasinya saat ini.

      Parameters

      Returns void

      bitbybit.babylon.mesh.setRotation({ babylonMesh: mesh, rotation: [0, 90, 0] });
      
    • Menyetel faktor skala sebuah mesh, atau instance-nya, sepanjang X, Y dan Z, menggantikan skalanya saat ini; 1 berarti tidak diskalakan.

      Parameters

      Returns void

      bitbybit.babylon.mesh.setScale({ babylonMesh: mesh, scale: [2, 1, 1] });
      
    • Mengalikan skala saat ini dari sebuah mesh, atau instance-nya, dengan satu faktor pada semua sumbu, sehingga 2 menggandakan ukuran berapa pun yang dimilikinya.

      Parameters

      Returns void

    updates

    • Memindahkan, merotasi, menskalakan dan mewarnai ulang mesh yang telah digambar di tempat, tanpa menggambarnya lagi, yang lebih cepat jika hanya penempatan atau warna yang berubah.

      rotation di sini dalam radian. colours adalah satu warna heksadesimal, atau daftar dengan satu entri per mesh anak, atau per titik atau garis dari gambar semacam itu; daftar lain memakai entri pertamanya.

      Parameters

      Returns void

      bitbybit.babylon.mesh.updateDrawn({ babylonMesh: mesh, position: [0, 5, 0], rotation: [0, Math.PI / 2, 0], scaling: [1, 1, 1], colours: "#ff0000" });
      

    visibility

    • Menyetel seberapa terlihat sebuah mesh, dari 0 untuk sepenuhnya transparan sampai 1 untuk tampil penuh, dengan nilai di antaranya memudarkannya; includeChildren menerapkan nilai yang sama ke mesh-mesh anaknya.

      Parameters

      Returns void

      bitbybit.babylon.mesh.setVisibility({ babylonMesh: mesh, visibility: 0.5, includeChildren: true });
      
    • Menyembunyikan mesh tanpa menghapusnya dari scene, dan mesh-mesh anaknya juga jika includeChildren bernilai true; show menampilkannya kembali.

      Parameters

      Returns void

      bitbybit.babylon.mesh.hide({ babylonMesh: mesh, includeChildren: true });
      
    • Menampilkan mesh yang disembunyikan oleh hide atau oleh penggambaran tersembunyi, dan mesh-mesh anaknya juga jika includeChildren bernilai true.

      Parameters

      Returns void

      bitbybit.babylon.mesh.show({ babylonMesh: mesh, includeChildren: true });