SubD Class |
Namespace: Rhino.Geometry
The SubD type exposes the following members.
Name | Description | |
---|---|---|
SubD |
Create a new instance of SubD geometry
| |
SubD(SerializationInfo, StreamingContext) |
Protected constructor used in serialization.
|
Name | Description | |
---|---|---|
Disposed |
Indicates if this object has been disposed or the
document it originally belonged to has been disposed.
(Inherited from CommonObject.) | |
Edges |
All edges in this SubD
| |
Empty |
Get a new, empty SubD object.
| |
Faces |
All faces in this SubD
| |
HasBrepForm |
Returns true if the Brep.TryConvertBrep function will be successful for this object
(Inherited from GeometryBase.) | |
HasUserData |
Gets true if this class has any custom information attached to it through UserData.
(Inherited from CommonObject.) | |
IsDeformable |
true if object can be accurately modified with "squishy" transformations like
projections, shears, and non-uniform scaling.
(Inherited from GeometryBase.) | |
IsDocumentControlled |
If true this object may not be modified. Any properties or functions that attempt
to modify this object when it is set to "IsReadOnly" will throw a NotSupportedException.
(Inherited from GeometryBase.) | |
IsSolid |
Test SubD to see if the active level is a solid.
A "solid" is a closed oriented manifold, or a closed oriented manifold.
| |
IsValid | Tests an object to see if it is valid. (Inherited from CommonObject.) | |
ObjectType |
Useful for switch statements that need to differentiate between
basic object types like points, curves, surfaces, and so on.
(Inherited from GeometryBase.) | |
UserData |
List of custom information that is attached to this class.
(Inherited from CommonObject.) | |
UserDictionary |
Dictionary of custom information attached to this class. The dictionary is actually user
data provided as an easy to use shareable set of information.
(Inherited from CommonObject.) | |
UserStringCount |
Gets the amount of user strings.
(Inherited from GeometryBase.) | |
Vertices |
All vertices in this SubD
|
Name | Description | |
---|---|---|
ClearEvaluationCache |
Clear all cached evaluation information (meshes, surface points, bounding boxes, ...)
that depends on edge tags, vertex tags, and the location of vertex control points.
| |
ComponentFromComponentIndex |
Returns a SubDComponent, either a SubDEdge, SubDFace, or SubDVertex, from a component index.
| |
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.) | |
ConstructConstObject |
Assigns a parent object and a sub-object index to this.
(Inherited from CommonObject.) | |
CopyEvaluationCache |
Expert function that copies cached evaluations of component subdivision points and
limit surface information from src to this. Typically this is done for performance
critical situations like control point editing:
- Copy a SubD to be modified (this does not copy the evaluation cache)
- Copy the evaluation cache from the unmodified SubD
- Modify the SubD copy
- Update the surface mesh cache so that only the modified parts are recalculated
- Display, meshing, bounding boxes on the modified SubD are now available
| |
CreateFromCylinder |
Creates a SubD form of a cylinder.
| |
CreateFromLoft |
Creates a SubD lofted through shape curves.
| |
CreateFromMesh(Mesh) |
Create a new SubD from a mesh.
| |
CreateFromMesh(Mesh, SubDCreationOptions) |
Create a new SubD from a mesh.
| |
CreateFromSurface |
Create a SubD that approximates the surface. If the surface is a SubD
friendly NURBS surface and withCorners is true, then the SubD and input
surface will have the same geometry.
| |
CreateFromSweep(NurbsCurve, NurbsCurve, IEnumerableNurbsCurve, Boolean, Boolean) |
Fits a SubD through a series of profile curves that define the SubD cross-sections and two curves that defines SubD edges.
| |
CreateFromSweep(NurbsCurve, IEnumerableNurbsCurve, Boolean, Boolean, Boolean, Vector3d) |
Fits a SubD through a series of profile curves that define the SubD cross-sections and one curve that defines a SubD edge.
| |
CreateGlobeSphere |
Creates a SubD sphere made from polar triangle fans and bands of quads.
The result resembles a globe with triangle fans at the poles and the
edges forming latitude parallels and longitude meridians.
| |
CreateIcosahedron |
Creates a SubD sphere based on an icosohedron (20 triangular faces and 5 valent vertices).
This is a goofy topology for a Catmull-Clark subdivision surface
(all triangles, all vertices have 5 edges).
You may want to consider using the much behaved result from
CreateSubDQuadSphere(sphere, vertexLocation, 1)
or even the result from CreateSubDGlobeSphere().
| |
CreateQuadSphere |
Creates a SubD sphere made from quad faces.
| |
CreateTriSphere |
Creates a SubD sphere made from triangular faces.
This is a goofy topology for a Catmull-Clark subdivision surface
(all triangles and all vertices have 5 or 6 edges).
You may want to consider using the much behaved result from
CreateSubDQuadSphere() or even the result from CreateSubDGlobeSphere().
| |
DataCRC |
Returns a CRC calculated from the information that defines the object.
This CRC can be used as a quick way to see if two objects are not identical.
(Inherited from GeometryBase.) | |
DeleteAllUserStrings | (Inherited from GeometryBase.) | |
DeleteUserString | (Inherited from GeometryBase.) | |
Dispose |
Actively reclaims unmanaged resources that this instance uses.
(Inherited from CommonObject.) | |
Dispose(Boolean) |
Deletes the underlying native pointer during a Dispose call or GC collection
(Overrides GeometryBaseDispose(Boolean).) | |
Duplicate |
Constructs a deep (full) copy of this object.
(Inherited from GeometryBase.) | |
DuplicateEdgeCurves |
Gets Nurbs form of all edges in this SubD, with clamped knots.
NB: Does not update the SubD evaluation cache before getting the edges.
| |
DuplicateEdgeCurves(Boolean, Boolean, Boolean, Boolean, Boolean, Boolean) |
Gets Nurbs form of edges in this SubD.
NB: Does not update the SubD evaluation cache before getting the edges.
| |
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.) | |
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.) | |
Equals | Determines whether the specified object is equal to the current object. (Inherited from Object.) | |
Finalize |
Passively reclaims unmanaged resources when the class user did not explicitly call Dispose().
(Inherited from CommonObject.) | |
Flip |
Reverses the orientation of all SubD normals.
| |
GetBoundingBox(Boolean) |
Bounding box solver. Gets the world axis aligned bounding box for the geometry.
(Inherited from GeometryBase.) | |
GetBoundingBox(Plane) |
Aligned Bounding box solver. Gets the plane aligned bounding box.
(Inherited from GeometryBase.) | |
GetBoundingBox(Transform) |
Aligned Bounding box solver. Gets the world axis aligned bounding box for the transformed geometry.
(Inherited from GeometryBase.) | |
GetBoundingBox(Plane, Box) |
Aligned Bounding box solver. Gets the plane aligned bounding box.
(Inherited from GeometryBase.) | |
GetHashCode | Serves as the default hash function. (Inherited from Object.) | |
GetObjectData |
Populates a System.Runtime.Serialization.SerializationInfo with the data needed to serialize the target object.
(Inherited from CommonObject.) | |
GetType | Gets the Type of the current instance. (Inherited from Object.) | |
GetUserString |
Gets user string from this geometry.
(Inherited from GeometryBase.) | |
GetUserStrings |
Gets a copy of all (user key string, user value string) pairs attached to this geometry.
(Inherited from GeometryBase.) | |
InterpolateSurfacePoints(Point3d) |
Modifies the SubD so that the SubD vertex limit surface points are
equal to surface_points[]
| |
InterpolateSurfacePoints(UInt32, Point3d) |
Modifies the SubD so that the SubD vertex limit surface points of the listed vertices are
equal to surface_points[].
| |
IsValidWithLog |
Determines if an object is valid. Also provides a report on errors if this
object happens not to be valid.
(Inherited from CommonObject.) | |
JoinSubDs(IEnumerableSubD, Double, Boolean) |
Joins an enumeration of SubDs to form as few as possible resulting SubDs.
There may be more than one SubD in the result array.
| |
JoinSubDs(IEnumerableSubD, Double, Boolean, Boolean) |
Joins an enumeration of SubDs to form as few as possible resulting SubDs.
There may be more than one SubD in the result array.
| |
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.) | |
MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object.) | |
MemoryEstimate |
Computes an estimate of the number of bytes that this object is using in memory.
(Inherited from GeometryBase.) | |
MergeAllCoplanarFaces(Double) |
Merges adjacent coplanar faces into single faces.
| |
MergeAllCoplanarFaces(Double, Double) |
Merges adjacent coplanar faces into single faces.
| |
NonConstOperation |
Destroy cache handle
(Overrides GeometryBaseNonConstOperation.) | |
Offset |
Makes a new SubD with vertices offset at distance in the direction of the control net vertex normals.
Optionally, based on the value of solidify, adds the input SubD and a ribbon of faces along any naked edges.
| |
OnSwitchToNonConst |
Called when this object switches from being considered "owned by the document"
to being an independent instance.
(Overrides GeometryBaseOnSwitchToNonConst.) | |
PackFaces |
Resets the SubD to the default face packing if adding creases or deleting faces breaks the quad grids.
It does not change the topology or geometry of the SubD. SubD face packs always stop at creases.
| |
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.) | |
Scale |
Scales the object by the specified factor. The scale is centered at the origin.
(Inherited from GeometryBase.) | |
SetUserString |
Attach a user string (key,value combination) to this geometry.
(Inherited from GeometryBase.) | |
SetVertexSurfacePoint |
Set the location of a single vertex surface point.
This function is not suitable for setting the locations of multiple vertex surface points that are topologically near to each other.
| |
Subdivide |
Apply the Catmull-Clark subdivision algorithm and save the results in this SubD.
| |
Subdivide(IEnumerableInt32) |
Apply the Catmull-Clark subdivision algorithm and save the results in this SubD.
| |
Subdivide(Int32) |
Apply the Catmull-Clark subdivision algorithm and save the results in this SubD.
| |
SurfaceMeshCacheExists |
Checks that a surface mesh evaluation cache exists, and that it has the required options.
This cache is used by
- SurfacePoint,
- ToNurbsCurve(Boolean), and
- CreateFromSubD(SubD, Int32).
| |
ToBrep |
Create a Brep based on this SubD geometry, based on SubDToBrepOptions.Default options.
| |
ToBrep(SubDToBrepOptions) |
Create a Brep based on this SubD geometry.
| |
ToJSON |
Create a JSON string representation of this object
(Inherited from CommonObject.) | |
ToString | Returns a string that represents the current object. (Inherited from Object.) | |
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.) | |
TransformComponents |
Transforms an enumerable of SubD components.
| |
Translate(Vector3d) | Translates the object along the specified vector. (Inherited from GeometryBase.) | |
Translate(Double, Double, Double) | Translates the object along the specified vector. (Inherited from GeometryBase.) | |
UpdateAllTagsAndSectorCoefficients |
Updates vertex tag, edge tag, and edge coefficient values on the active
level. After completing custom editing operations that modify the
topology of the SubD control net or changing values of vertex or edge
tags, the tag and sector coefficients information on nearby components
in the edited areas need to be updated.
| |
UpdateSurfaceMeshCache |
Updates limit surface information returned by
- SurfacePoint,
- ToNurbsCurve(Boolean), and
- CreateFromSubD(SubD, Int32).
The density of the mesh cache is Default.
|