import { ManifoldWorkerManager } from "../../manifold-worker/manifold-worker-manager"; import * as Inputs from "@bitbybit-dev/manifold/lib/api/inputs"; /** * Contains various functions for Solid meshes from Manifold library https://github.com/elalish/manifold * Thanks Manifold community for developing this kernel */ export declare class MeshEvaluate { private readonly manifoldWorkerManager; constructor(manifoldWorkerManager: ManifoldWorkerManager); /** * Get position on mesh vertex index * @param inputs mesh * @returns point * @group basic * @shortname position * @drawable true */ position(inputs: Inputs.Manifold.MeshVertexIndexDto): Promise; /** * Gets the three vertex indices of this triangle in CCW order. * @param inputs mesh * @returns verts * @group basic * @shortname verts * @drawable false */ verts(inputs: Inputs.Manifold.MeshTriangleIndexDto): Promise; /** * Gets the tangent vector starting at verts(tri)[j] pointing to the next * Bezier point along the CCW edge. The fourth value is its weight. * @param inputs mesh * @returns tangent * @group basic * @shortname tangent * @drawable true */ tangent(inputs: Inputs.Manifold.MeshHalfEdgeIndexDto): Promise; /** * Gets any other properties associated with this vertex. * @param inputs mesh * @returns extras * @group basic * @shortname extras * @drawable false */ extras(inputs: Inputs.Manifold.MeshVertexIndexDto): Promise; /** * Gets the column-major 4x4 matrix transform from the original mesh to these * related triangles. * @param inputs mesh * @returns transform matrix * @group basic * @shortname transform 4x4 matrix * @drawable false */ transform(inputs: Inputs.Manifold.MeshVertexIndexDto): Promise; /** * Number of properties per vertex, always >= 3. * @param inputs mesh * @returns number of properties * @group basic * @shortname number props * @drawable false */ numProp(inputs: Inputs.Manifold.MeshDto): Promise; /** * Number of property vertices * @param inputs mesh * @returns number of vertices * @group basic * @shortname number vertices * @drawable false */ numVert(inputs: Inputs.Manifold.MeshDto): Promise; /** * Get number of triangles on mesh * @param inputs mesh * @returns number of triangles * @group basic * @shortname number triangles * @drawable false */ numTri(inputs: Inputs.Manifold.MeshDto): Promise; /** * Number of triangle runs. Each triangle run is a set of consecutive * triangles that all come from the same instance of the same input mesh. * @param inputs mesh * @returns number of runs * @group basic * @shortname number runs * @drawable false */ numRun(inputs: Inputs.Manifold.MeshDto): Promise; }