Bitbybit Docs
    Preparing search index...

    Class ManifoldEvaluate

    Mengukur solid Manifold dan membaca pembukuannya: luas permukaan dan volume, jumlah verteks, segitiga dan tepi, kotak pembatas, toleransi, genus, celah ke solid lain, serta id dan status yang dilacak kernel untuk setiap solid. Tidak ada di sini yang mengubah solid.

    Index

    Constructors

    basic

    • Mengukur luas permukaan total sebuah solid, dalam satuan model persegi.

      Parameters

      Returns Promise<number>

      Luas permukaan

      const area = await bitbybit.manifold.manifold.evaluate.surfaceArea({ manifold: cube });
      
    • Mengukur volume sebuah solid, dalam satuan model kubik.

      Parameters

      Returns Promise<number>

      Volume

      const volume = await bitbybit.manifold.manifold.evaluate.volume({ manifold: cube });
      
    • Memberi tahu apakah sebuah solid tidak memiliki segitiga sama sekali, seperti hasil perpotongan bentuk-bentuk yang tidak tumpang tindih.

      Parameters

      Returns Promise<boolean>

      True jika solid kosong

      const empty = await bitbybit.manifold.manifold.evaluate.isEmpty({ manifold: shape });
      
    • Menghitung verteks mesh sebuah solid, sudut-sudut yang dibagi segitiga-segitiganya.

      Parameters

      Returns Promise<number>

      Jumlah verteks

      const vertices = await bitbybit.manifold.manifold.evaluate.numVert({ manifold: shape });
      
    • Menghitung segitiga mesh sebuah solid, yang merupakan seluruh permukaannya.

      Parameters

      Returns Promise<number>

      Jumlah segitiga

      const triangles = await bitbybit.manifold.manifold.evaluate.numTri({ manifold: shape });
      
    • Menghitung tepi mesh sebuah solid, masing-masing dibagi oleh dua segitiga.

      Parameters

      Returns Promise<number>

      Jumlah tepi

      const edges = await bitbybit.manifold.manifold.evaluate.numEdge({ manifold: shape });
      
    • Menghitung kanal properti yang dibawa setiap verteks sebuah solid; posisi saja memakai tiga.

      Parameters

      Returns Promise<number>

      Jumlah properti per verteks

      const channels = await bitbybit.manifold.manifold.evaluate.numProp({ manifold: shape });
      
    • Menghitung verteks properti sebuah solid, yang setidaknya sebanyak numVert: verteks yang segitiga-segitiga tetangganya membawa properti berbeda, misalnya tepi tajam dengan dua normal, disimpan lebih dari sekali.

      Parameters

      Returns Promise<number>

      Jumlah verteks properti

      const propVertices = await bitbybit.manifold.manifold.evaluate.numPropVert({ manifold: shape });
      
    • Menemukan kotak sejajar sumbu di sekeliling setiap verteks sebuah solid.

      Parameters

      Returns Promise<Vector3[]>

      Sudut minimum dan sudut maksimum

      const [min, max] = await bitbybit.manifold.manifold.evaluate.boundingBox({ manifold: shape });
      
    • Membaca toleransi sebuah solid, galat pembulatan yang terakumulasi selama transformasi dan operasi yang membuatnya.

      Segitiga yang lebih tipis dari ini diperlakukan sebagai degenerat dan dihapus.

      Parameters

      Returns Promise<number>

      Toleransi dalam satuan model

      const tolerance = await bitbybit.manifold.manifold.evaluate.tolerance({ manifold: shape });
      
    • Menghitung lubang yang menembus sebuah solid, seperti cincin memiliki satu dan bola tidak ada.

      Hanya masuk akal untuk satu potongan yang terhubung, jadi jalankan operations.decompose terlebih dahulu pada solid yang terdiri dari beberapa potongan.

      Parameters

      Returns Promise<number>

      Jumlah lubang yang menembus solid

      const holes = await bitbybit.manifold.manifold.evaluate.genus({ manifold: shape });
      
    • Mengukur jarak terkecil antara dua solid, mencari tidak lebih jauh dari searchLength.

      Hasilnya antara 0 dan panjang pencarian.

      Parameters

      Returns Promise<number>

      Celah terkecil di antara keduanya

      const gap = await bitbybit.manifold.manifold.evaluate.minGap({ manifold1: cube, manifold2: sphere, searchLength: 100 });
      
    • Membaca id solid yang merupakan asli, sebagaimana dibuat operations.asOriginal atau solid yang baru dibangun; solid yang dihasilkan dari solid lain oleh sebuah operasi melaporkan -1.

      Parameters

      Returns Promise<number>

      Id asli, atau -1

      const id = await bitbybit.manifold.manifold.evaluate.originalID({ manifold: shape });
      
    • Memberi tahu mengapa sebuah solid keluar kosong: NoError, atau alasan seperti NotManifold atau InvalidConstruction jika mesh asal pembangunannya bukan permukaan tertutup.

      Status dibawa melalui operasi-operasi berikutnya, sehingga input yang rusak tidak hilang; solid kosong tetap dapat melaporkan NoError, seperti memotongkan bentuk-bentuk yang tidak tumpang tindih.

      Parameters

      Returns Promise<string>

      Nama status

      const status = await bitbybit.manifold.manifold.evaluate.status({ manifold: shape });
      

    spatial

    • Menembakkan ruas sinar dari satu titik ke titik lain dan mendaftar setiap tempat ia menembus permukaan sebuah solid, yang terdekat lebih dulu; daftar kosong bila meleset.

      Setiap hit membawa titiknya, normal di sana, id muka asal, dan jaraknya sepanjang ruas sebagai pecahan dari panjang ruas.

      Parameters

      Returns Promise<RayHit[]>

      Hit-hit yang diurutkan berdasarkan jarak

      const hits = await bitbybit.manifold.manifold.evaluate.rayCast({ manifold: shape, origin: [0, 10, 0], endpoint: [0, -10, 0] });