Bitbybit Docs
    Bereite Suchindex vor...

    Klasse MeshEvaluate

    Lesen von Manifold-Mesh-Daten: die Position und die zusätzlichen Eigenschaften eines Vertex, die Vertices eines Dreiecks, die Tangente einer Halbkante, die Transformation eines Dreiecks-Runs und die Anzahlen von Eigenschaften, Vertices, Dreiecken und Runs. Indizes zählen ab 0.

    Index

    Konstruktoren

    basic

    • Liest die Position eines Vertex eines Meshes.

      Parameter

      Rückgabewert Promise<Point3>

      Die Vertex-Position

      const point = await bitbybit.manifold.mesh.evaluate.position({ mesh, vertexIndex: 0 });
      
    • Liest die drei Vertex-Indizes eines Dreiecks eines Meshes, in Reihenfolge gegen den Uhrzeigersinn.

      Parameter

      Rückgabewert Promise<number[]>

      Die drei Vertex-Indizes

      const corners = await bitbybit.manifold.mesh.evaluate.verts({ mesh, triangleIndex: 0 });
      
    • Liest die Tangente einer Halbkante eines geglätteten Meshes: die Richtung, in der die Oberfläche den Startvertex der Kante verlässt, als drei Zahlen plus ein Gewicht.

      Halbkante dreimal der Dreiecksindex plus j ist die Kante des Dreiecks t, die an seinem j-ten Vertex beginnt; ein Mesh ohne Glättungstangenten hat keine.

      Parameter

      Rückgabewert Promise<number[]>

      Die Tangente als [x, y, z, weight]

      const tangent = await bitbybit.manifold.mesh.evaluate.tangent({ mesh: smoothedMesh, halfEdgeIndex: 0 });
      
    • Liest die Eigenschaften eines Vertex über seine Position hinaus, etwa Normalen oder Farben, die in zusätzlichen Kanälen gespeichert sind.

      Parameter

      Rückgabewert Promise<number[]>

      Die zusätzlichen Eigenschaftswerte, in Kanalreihenfolge

      const props = await bitbybit.manifold.mesh.evaluate.extras({ mesh, vertexIndex: 0 });
      
    • Liest die spaltenweise gespeicherte 4x4-Matrix, die das ursprüngliche Mesh auf einen Dreieckslauf trägt, die Platzierung dieser Instanz.

      Parameter

      Rückgabewert Promise<number[]>

      Die 16 Zahlen der Matrix

      const placement = await bitbybit.manifold.mesh.evaluate.transform({ mesh, triangleRunIndex: 0 });
      
    • Sagt, ob ein Dreiecksdurchlauf in die andere Richtung zeigt als das ursprüngliche Mesh, aus dem er stammt, wie die Innenfläche, die eine Subtraktion hinterlässt. Nur zur Information: Die Normalen, die ein Mesh ausgibt, sind bereits für das Ergebnis ausgerichtet.

      Parameter

      Rückgabewert Promise<boolean>

      True, wenn der Durchlauf eine Rückseite ist

      const flipped = await bitbybit.manifold.mesh.evaluate.backside({ mesh, triangleRunIndex: 0 });
      
    • Sagt, ob die ersten drei zusätzlichen Eigenschaftskanäle eines Dreiecksdurchlaufs Vertex-Normalen enthalten, die manifold.operations.calculateNormals dort schreibt.

      Parameter

      Rückgabewert Promise<boolean>

      True, wenn der Durchlauf Normalen in seinen Eigenschaften trägt

      const lit = await bitbybit.manifold.mesh.evaluate.hasNormals({ mesh, triangleRunIndex: 0 });
      
    • Zählt die Eigenschaftskanäle, die jeder Vertex eines Meshes trägt; die Position allein nimmt drei.

      Parameter

      Rückgabewert Promise<number>

      Die Anzahl der Eigenschaften pro Vertex

      const channels = await bitbybit.manifold.mesh.evaluate.numProp({ mesh });
      
    • Zählt die Eigenschafts-Vertices eines Meshes, die die geometrischen Vertices übersteigen können, wo benachbarte Dreiecke unterschiedliche Eigenschaften tragen.

      Parameter

      Rückgabewert Promise<number>

      Die Anzahl der Vertices

      const vertices = await bitbybit.manifold.mesh.evaluate.numVert({ mesh });
      
    • Zählt die Dreiecke eines Meshes, die zusammen seine ganze Oberfläche bilden.

      Parameter

      Rückgabewert Promise<number>

      Die Anzahl der Dreiecke

      const triangles = await bitbybit.manifold.mesh.evaluate.numTri({ mesh });
      
    • Zählt die Dreiecksläufe eines Meshes: jeder Lauf ist eine Strecke aufeinanderfolgender Dreiecke, die von derselben Instanz derselben Eingabeform stammen.

      Parameter

      Rückgabewert Promise<number>

      Die Anzahl der Runs

      const runs = await bitbybit.manifold.mesh.evaluate.numRun({ mesh });