Methods_T_Rhino_Geometry_Mesh - mcneel/rhinocommon-api-docs GitHub Wiki

Mesh Methods

The Mesh type exposes the following members.

Methods

 

Name Description
Public methodCode example Append Appends a copy of another mesh to this one and updates indices of appended mesh parts.
Public method ClearSurfaceData Removes surface parameters, curvature parameters and surface statistics from the mesh.
Public method ClearTextureData Removes all texture coordinate information from this mesh.
Public method ClosestMeshPoint Gets the point on the mesh that is closest to a given test point. Similar to the ClosestPoint function except this returns a MeshPoint class which includes extra information beyond just the location of the closest point.
Public method ClosestPoint(Point3d) Gets the point on the mesh that is closest to a given test point.
Public method ClosestPoint(Point3d, Point3d, Double) Gets the point on the mesh that is closest to a given test point.
Public method ClosestPoint(Point3d, Point3d, Vector3d, Double) Gets the point on the mesh that is closest to a given test point.
Public method CollapseFacesByArea Collapses multiple mesh faces, with areas less than LessThanArea and greater than GreaterThanArea, based on the principles found in Stan Melax's mesh reduction PDF, see http://pomax.nihongoresources.com/downloads/PolygonReduction.pdf
Public method CollapseFacesByByAspectRatio Collapses a multiple mesh faces, determined by face aspect ratio, based on criteria found in Stan Melax's polygon reduction, see http://pomax.nihongoresources.com/downloads/PolygonReduction.pdf
Public method CollapseFacesByEdgeLength Collapses multiple mesh faces, with greater/less than edge length, based on the principles found in Stan Melax's mesh reduction PDF, see http://pomax.nihongoresources.com/downloads/PolygonReduction.pdf
Public method ColorAt(MeshPoint) Evaluate a mesh color at a set of barycentric coordinates.
Public method ColorAt(Int32, Double, Double, Double, Double) Evaluate a mesh normal at a set of barycentric coordinates. Barycentric coordinates must be assigned in accordance with the rules as defined by MeshPoint.T.
Public methodCode example Compact Removes any unreferenced objects from arrays, reindexes as needed and shrinks arrays to minimum required size.
Public method ComponentIndex If this piece of geometry is a component in something larger, like a BrepEdge in a Brep, then this function returns the component index. (Inherited from GeometryBase.)
Public method ComputeAutoCreaseInformation Do not use this method. Length: top.Mesh.Vertices.Count
Public methodStatic member ComputeThickness(IEnumerable(Mesh), Double) Compute thickness metrics for this mesh.
Public methodStatic member ComputeThickness(IEnumerable(Mesh), Double, CancellationToken) Compute thickness metrics for this mesh.
Public methodStatic member ComputeThickness(IEnumerable(Mesh), Double, Double, CancellationToken) Compute thickness metrics for this mesh.
Protected method ConstructConstObject Assigns a parent object and a subobject index to this. (Inherited from CommonObject.)
Public method CopyFrom Copies mesh values into this mesh from another mesh.
Public methodStatic member CreateBooleanDifference Computes the solid difference of two sets of Meshes.
Public methodStatic member CreateBooleanIntersection Computes the solid intersection of two sets of meshes.
Public methodStatic member CreateBooleanSplit Splits a set of meshes with another set.
Public methodStatic member CreateBooleanUnion Computes the solid union of a set of meshes.
Public methodStatic member CreateContourCurves(Mesh, Plane) Constructs contour curves for a mesh, sectioned at a plane.
Public methodStatic memberCode example CreateContourCurves(Mesh, Point3d, Point3d, Double) Constructs contour curves for a mesh, sectioned along a linear axis.
Public methodStatic member CreateFromBox(BoundingBox, Int32, Int32, Int32) Constructs new mesh that matches a bounding box.
Public methodStatic member CreateFromBox(Box, Int32, Int32, Int32) Constructs new mesh that matches an aligned box.
Public methodStatic member CreateFromBox(IEnumerable(Point3d), Int32, Int32, Int32) Constructs new mesh from 8 corner points.
Public methodStatic memberCode example CreateFromBrep(Brep) Constructs a mesh from a brep.
Public methodStatic memberCode example CreateFromBrep(Brep, MeshingParameters) Constructs a mesh from a brep.
Public methodStatic member CreateFromClosedPolyline Attempts to create a Mesh that is a triangulation of a closed polyline.
Public methodStatic member CreateFromCone Constructs a mesh cone
Public methodStatic member CreateFromCurvePipe Constructs a new mesh pipe from a curve.
Public methodStatic member CreateFromCylinder Constructs a mesh cylinder
Public methodStatic member CreateFromLines Creates a mesh by analizing the edge structure that could result from the extraction of edges from an original mesh.
Public methodStatic member CreateFromPlanarBoundary(Curve, MeshingParameters) **Obsolete. ** Attempts to construct a mesh from a closed planar curve.RhinoMakePlanarMeshes
Public methodStatic member CreateFromPlanarBoundary(Curve, MeshingParameters, Double) Attempts to construct a mesh from a closed planar curve.RhinoMakePlanarMeshes
Public methodStatic member CreateFromPlane Constructs a planar mesh grid.
Public methodStatic member CreateFromSphere Constructs a mesh sphere.
Public methodStatic member CreateFromTessellation Attempts to create a mesh that is a triangulation of a list of points, projected on a plane, including its holes and fixed edges.
Public method CreatePartitions In ancient times (or modern smartphone times), some rendering engines were only able to process small batches of triangles and the CreatePartitions() function was provided to partition the mesh into subsets of vertices and faces that those rendering engines could handle.
Public methodStatic member CreateRefinedCatmullClarkMesh Instantiates a new mesh that represents a Catmull-Clark subdivision of the mesh.
Public methodStatic member CreateRefinedLoopMesh Instantiates a new mesh that represents a Loop subdivision of the mesh.
Public method DestroyPartition Destroys mesh partition.
Public method DestroyTopology Removes topology data, forcing all topology information to be recomputed.
Public method DestroyTree Destroys the mesh vertex access tree.
Public method Dispose() Actively reclaims unmanaged resources that this instance uses. (Inherited from CommonObject.)
Protected method Dispose(Boolean) For derived class implementers. This method is called with argument true when class user calls Dispose(), while with argument false when the Garbage Collector invokes the finalizer, or Finalize() method.

You must reclaim all used unmanaged resources in both cases, and can use this chance to call Dispose on disposable fields if the argument is true.

Also, you must call the base virtual method within your overriding method.

(Inherited from CommonObject.)

Public method Duplicate Constructs a copy of this mesh. This is the same as DuplicateMesh(). (Overrides GeometryBase.Duplicate().)
Public method DuplicateMesh Constructs a copy of this mesh. This is the same as Duplicate().
Public method DuplicateShallow Constructs a light copy of this object. By "light", it is meant that the same underlying data is used until something is done to attempt to change it. For example, you could have a shallow copy of a very heavy mesh object and the same underlying data will be used when doing things like inspecting the number of faces on the mesh. If you modify the location of one of the mesh vertices, the shallow copy will create a full duplicate of the underlying mesh data and the shallow copy will become a deep copy. (Inherited from GeometryBase.)
Public method EnsurePrivateCopy If you want to keep a copy of this class around by holding onto it in a variable after a command completes, call EnsurePrivateCopy to make sure that this class is not tied to the document. You can call this function as many times as you want. (Inherited from CommonObject.)
Public method Equals Determines whether the specified object is equal to the current object. (Inherited from Object.)
Public method EvaluateMeshGeometry If the mesh has SurfaceParameters, the surface is evaluated at these parameters and the mesh geometry is updated.
Public method ExplodeAtUnweldedEdges Explode the mesh into submeshes where a submesh is a collection of faces that are contained within a closed loop of "unwelded" edges. Unwelded edges are edges where the faces that share the edge have unique mesh vertexes (not mesh topology vertexes) at both ends of the edge.
Public method ExtendSelectionByEdgeRidge Suggests an extension of a selection set by using information related with topology and alignment.
Public method ExtendSelectionByFaceLoop Suggests an extension of a face selection set by using information related with topology and alignment.
Protected method Finalize() Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.)
Protected method Finalize() Passively reclaims unmanaged resources when the class user did not explicitly call Dispose(). (Inherited from CommonObject.)
Public method Flip Reverses the direction of the mesh.
Public methodCode example GetBoundingBox(Boolean) Boundingbox solver. Gets the world axis aligned boundingbox for the geometry. (Inherited from GeometryBase.)
Public methodCode example GetBoundingBox(Plane) Aligned Boundingbox solver. Gets the plane aligned boundingbox. (Inherited from GeometryBase.)
Public method GetBoundingBox(Transform) Aligned Boundingbox solver. Gets the world axis aligned boundingbox for the transformed geometry. (Inherited from GeometryBase.)
Public method GetBoundingBox(Plane, Box) Aligned Boundingbox solver. Gets the plane aligned boundingbox. (Inherited from GeometryBase.)
Public method GetCachedTextureCoordinates Call this method to get cached texture coordinates for a texture mapping with the specified Id.
Public method GetHashCode Serves as the default hash function. (Inherited from Object.)
Public method GetNakedEdgePointStatus Returns an array of bool values equal in length to the number of vertices in this mesh. Each value corresponds to a mesh vertex and is set to true if the vertex is not completely surrounded by faces.
Public methodCode example GetNakedEdges Returns all edges of a mesh that are considered "naked" in the sense that the edge only has one face.
Public method GetNgonAndFacesCount Retrieves the count of items that GetNgonAndFacesEnumerable() will provide.
Public method GetNgonAndFacesEnumerable Retrieves a complete enumerable, i.e., one that provides an iterator over every face that is present, no matter if defined as a triangle, a quad, or a strictly over-four-sided ngon.
Public method GetObjectData Populates a System.Runtime.Serialization.SerializationInfo with the data needed to serialize the target object. (Inherited from CommonObject.)
Public method GetOutlines(Plane) Constructs the outlines of a mesh projected against a plane.
Public method GetOutlines(RhinoViewport) Constructs the outlines of a mesh. The projection information in the viewport is used to determine how the outlines are projected.
Public method GetPartition Retrieves a partition. See CreatePartitions(Int32, Int32) for details.
Public method GetType Gets the Type of the current instance. (Inherited from Object.)
Public method GetUnsafeLock Allows to obtain unsafe pointers to the underlying unmanaged data structures of the mesh.
Public method GetUserString Gets user string from this geometry. (Inherited from GeometryBase.)
Public method GetUserStrings Gets a copy of all (user key string, user value string) pairs attached to this geometry. (Inherited from GeometryBase.)
Public method IsManifold Gets a value indicating whether or not the mesh is manifold. A manifold mesh does not have any edge that borders more than two faces.
Public method IsPointInside Determines if a point is inside a solid mesh.
Public method IsValidWithLog Determines if an object is valid. Also provides a report on errors if this object happens not to be valid. (Inherited from CommonObject.)
Public method MakeDeformable If possible, converts the object into a form that can be accurately modified with "squishy" transformations like projections, shears, an non-uniform scaling. (Inherited from GeometryBase.)
Protected method MemberwiseClone Creates a shallow copy of the current Object. (Inherited from Object.)
Public method MemoryEstimate Computes an estimate of the number of bytes that this object is using in memory. (Inherited from GeometryBase.)
Protected method NonConstOperation For derived classes implementers. Defines the necessary implementation to free the instance from being const.

(Inherited from CommonObject.)

Public method NormalAt(MeshPoint) Evaluate a mesh normal at a set of barycentric coordinates.
Public method NormalAt(Int32, Double, Double, Double, Double) Evaluate a mesh normal at a set of barycentric coordinates. Barycentric coordinates must be assigned in accordance with the rules as defined by MeshPoint.T.
Public method Offset(Double) Makes a new mesh with vertices offset a distance in the opposite direction of the existing vertex normals. Same as Mesh.Offset(distance, false)
Public method Offset(Double, Boolean) Makes a new mesh with vertices offset a distance in the opposite direction of the existing vertex normals. Optionally, based on the value of solidify, adds the input mesh and a ribbon of faces along any naked edges. If solidify is false it acts exactly as the Offset(distance) function.
Protected method OnSwitchToNonConst Performs some memory cleanup if necessary (Overrides GeometryBase.OnSwitchToNonConst().)
Public method PointAt(MeshPoint) Evaluate a mesh at a set of barycentric coordinates.
Public method PointAt(Int32, Double, Double, Double, Double) Evaluates a mesh at a set of barycentric coordinates. Barycentric coordinates must be assigned in accordance with the rules as defined by MeshPoint.T.
Public method PullPointsToMesh Pulls a collection of points to a mesh.
Public method Reduce(ReduceMeshParameters) Reduce polygon count
Public method Reduce(Int32, Boolean, Int32, Boolean) Reduce polygon count
Public method Reduce(Int32, Boolean, Int32, Boolean, CancellationToken, IProgress(Double), String) Reduce polygon count
Public method ReleaseUnsafeLock Updates the Mesh data with the information that was stored via the MeshUnsafeLock.
Public method Rotate Rotates the object about the specified axis. A positive rotation angle results in a counter-clockwise rotation about the axis (right hand rule). (Inherited from GeometryBase.)
Public method Scale Scales the object by the specified factor. The scale is centered at the origin. (Inherited from GeometryBase.)
Public method SetCachedTextureCoordinates Set cached texture coordinates using the specified mapping.
Public method SetTextureCoordinates Set texture coordinates using given mapping and applying given transform. Set lazy to false to generate texture coordinates right away.
Public method SetUserString Attach a user string (key,value combination) to this geometry. (Inherited from GeometryBase.)
Public method SolidOrientation Determines orientation of a "solid" mesh.
Public method Split(Mesh) Split a mesh with another mesh.
Public method Split(IEnumerable(Mesh)) Split a mesh with a collection of meshes.
Public method Split(Plane) Split a mesh by an infinite plane.
Public method SplitDisjointPieces Splits up the mesh into its unconnected pieces.
Public method ToString Returns a string that represents the current object. (Inherited from Object.)
Public method Transform Transforms the geometry. If the input Transform has a SimilarityType of OrientationReversing, you may want to consider flipping the transformed geometry after calling this function when it makes sense. For example, you may want to call Flip() on a Brep after transforming it. (Inherited from GeometryBase.)
Public method Translate(Vector3d) Translates the object along the specified vector. (Inherited from GeometryBase.)
Public method Translate(Double, Double, Double) Translates the object along the specified vector. (Inherited from GeometryBase.)
Public method UnifyNormals Attempts to fix inconsistencies in the directions of meshfaces for a mesh. This function does not modify the vertex normals, but rather rearranges the mesh face winding and face normals to make them all consistent. You may want to call Mesh.Normals.ComputeNormals() to recompute vertex normals after calling this functions.
Public method Unweld Makes sure that faces sharing an edge and having a difference of normal greater than or equal to angleToleranceRadians have unique vertexes along that edge, adding vertices if necessary.
Public methodCode example Volume Removes any unreferenced objects from arrays, reindexes as needed and shrinks arrays to minimum required size.
Public method Weld Makes sure that faces sharing an edge and having a difference of normal greater than or equal to angleToleranceRadians share vertexes along that edge, vertex normals are averaged.
Public method WithDisplacement Constructs new mesh from the current one, with displacement applied to it.
Public method WithEdgeSoftening Constructs new mesh from the current one, with edge softening applied to it.
Public method WithShutLining Constructs new mesh from the current one, with shut lining applied to it.
  Back to Top

See Also

Reference

Mesh Class
Rhino.Geometry Namespace

⚠️ **GitHub.com Fallback** ⚠️