Click or drag to resize

PointCloud Class

Represents a collection of coordinates with optional normal vectors and colors.
Inheritance Hierarchy

Namespace:  Rhino.Geometry
Assembly:  RhinoCommon (in RhinoCommon.dll)
Syntax
[SerializableAttribute]
public class PointCloud : GeometryBase, IEnumerable<PointCloudItem>, 
	IEnumerable

The PointCloud type exposes the following members.

Constructors
  NameDescription
Public methodPointCloud
Initializes a new instance of the PointCloud class that is empty.
Public methodPointCloud(IEnumerablePoint3d)
Initializes a new instance of the PointCloud class, copying the content from a set of points.
Public methodPointCloud(PointCloud)
Initializes a new instance of the PointCloud class, copying (Merge) the content of another point cloud.
Protected methodPointCloud(SerializationInfo, StreamingContext)
Binds with the Rhino default serializer to support object persistence.
Top
Properties
  NameDescription
Public propertyContainsColors
Gets a value indicating whether or not the points in this point cloud have colors assigned to them.
Public propertyContainsHiddenFlags
Gets a value indicating whether or not the points in this point cloud have hidden flags assigned to them.
Public propertyContainsNormals
Gets a value indicating whether or not the points in this point cloud have normals assigned to them.
Public propertyContainsPointValues
Gets a value indicating whether or not the points in this point cloud have extra values assigned to them. Extra values can be used to store a user-defined values, such as intensity.
Public propertyCount
Gets the number of points in this point cloud.
Public propertyDisposed
Indicates if this object has been disposed or the document it originally belonged to has been disposed.
(Inherited from CommonObject.)
Public propertyHasBrepForm
Returns true if the Brep.TryConvertBrep function will be successful for this object
(Inherited from GeometryBase.)
Public propertyHasUserData
Gets true if this class has any custom information attached to it through UserData.
(Inherited from CommonObject.)
Public propertyHiddenPointCount
Gets the number of points that have their Hidden flag set.
Public propertyIsDeformable
true if object can be accurately modified with "squishy" transformations like projections, shears, and non-uniform scaling.
(Inherited from GeometryBase.)
Public propertyIsDocumentControlled
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.)
Public propertyIsValid
Tests an object to see if it is valid.
(Inherited from CommonObject.)
Public propertyItem
Gets the item at the given index.
Public propertyObjectType
Useful for switch statements that need to differentiate between basic object types like points, curves, surfaces, and so on.
(Inherited from GeometryBase.)
Public propertyUserData
List of custom information that is attached to this class.
(Inherited from CommonObject.)
Public propertyUserDictionary
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.)
Public propertyUserStringCount
Gets the amount of user strings.
(Inherited from GeometryBase.)
Top
Methods
  NameDescription
Public methodAdd(Point3d)
Append a new point to the end of the list.
Public methodAdd(Point3d, Vector3d)
Append a new point to the end of the list.
Public methodAdd(Point3d, Color)
Append a new point to the end of the list.
Public methodAdd(Point3d, Vector3d, Color)
Append a new point to the end of the list.
Public methodAdd(Point3d, Vector3d, Color, Double)
Append a new point to the end of the list.
Public methodAddRange(IEnumerablePoint3d)
Appends a collection of points to this point cloud.
Public methodAddRange(IEnumerablePoint3d, IEnumerableVector3d)
Appends a collection of points and normal vectors to this point cloud.
Public methodAddRange(IEnumerablePoint3d, IEnumerableColor)
Appends a collection of points and normal vectors to this point cloud.
Public methodAddRange(IEnumerablePoint3d, IEnumerableVector3d, IEnumerableColor)
Appends a collection of points, normal vectors, and colors to this point cloud.
Public methodAddRange(IEnumerablePoint3d, IEnumerableVector3d, IEnumerableColor, IEnumerableDouble)
Appends a collection of points, normal vectors, colors, and extra values to this point cloud.
Public methodAppendNew
Appends a new PointCloudItem to the end of this point cloud.
Public methodAsReadOnlyListOfPoints
Returns an enumerator and list indexer over point cloud locations.
Public methodClearColors
Destroys the color information in this point cloud.
Public methodClearHiddenFlags
Destroys the hidden flag information in this point cloud.
Public methodClearNormals
Destroys the normal vector information in this point cloud.
Public methodClearPointValues
Destroys the extra value information in this point cloud. Extra values can be used to store a user-defined values, such as intensity.
Public methodClosestPoint
Returns index of the closest point in the point cloud to a given test point.
Public methodComponentIndex
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.)
Protected methodConstructConstObject
Assigns a parent object and a sub-object index to this.
(Inherited from CommonObject.)
Public methodCreateContourCurves(Point3d, Point3d, Double, Double)
Creates a planar curves by intersecting a plane with a point cloud.
Public methodCreateContourCurves(Point3d, Point3d, Double, Double, Double, Double, Boolean, Boolean, Boolean, Double)
Creates a planar curves by intersecting a plane with a point cloud.
Public methodCreateSectionCurve(Plane, Double)
Creates planar curves by intersecting a plane with a point cloud.
Public methodCreateSectionCurve(Plane, Double, Double, Double, Boolean, Boolean, Boolean, Double)
Creates a planar curve by intersecting a plane with a point cloud.
Public methodDataCRC
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.)
Public methodDeleteAllUserStrings (Inherited from GeometryBase.)
Public methodDeleteUserString (Inherited from GeometryBase.)
Public methodDispose
Actively reclaims unmanaged resources that this instance uses.
(Inherited from CommonObject.)
Protected methodDispose(Boolean)
Overridden in order to destroy local display cache information
(Inherited from GeometryBase.)
Public methodDuplicate
Constructs a deep (full) copy of this object.
(Inherited from GeometryBase.)
Public methodDuplicateShallow
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 methodEnsurePrivateCopy
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 methodEquals
Determines whether the specified object is equal to the current object.
(Inherited from Object.)
Protected methodFinalize
Passively reclaims unmanaged resources when the class user did not explicitly call Dispose().
(Inherited from CommonObject.)
Public methodCode exampleGetBoundingBox(Boolean)
Bounding box solver. Gets the world axis aligned bounding box for the geometry.
(Inherited from GeometryBase.)
Public methodCode exampleGetBoundingBox(Plane)
Aligned Bounding box solver. Gets the plane aligned bounding box.
(Inherited from GeometryBase.)
Public methodGetBoundingBox(Transform)
Aligned Bounding box solver. Gets the world axis aligned bounding box for the transformed geometry.
(Inherited from GeometryBase.)
Public methodGetBoundingBox(Plane, Box)
Aligned Bounding box solver. Gets the plane aligned bounding box.
(Inherited from GeometryBase.)
Public methodGetColors
Copy all the point colors in this point cloud to an array.
Public methodGetEnumerator
Gets an enumerator that allows to modify each point cloud point.
Public methodGetHashCode
Serves as the default hash function.
(Inherited from Object.)
Public methodGetNormals
Copy all the normal vectors in this point cloud to an array.
Public methodGetObjectData
Populates a System.Runtime.Serialization.SerializationInfo with the data needed to serialize the target object.
(Inherited from CommonObject.)
Public methodGetPoints
Copy all the point coordinates in this point cloud to an array.
Public methodGetPointValues
Copy all the extra point values in this point cloud to an array. Extra values can be used to store a user-defined value, such as intensity.
Public methodGetRandomSubsample(UInt32)
Returns a random subsample of a point cloud.
Public methodGetRandomSubsample(UInt32, CancellationToken, IProgressDouble)
Returns a random subsample of a point cloud.
Public methodGetType
Gets the Type of the current instance.
(Inherited from Object.)
Public methodGetUnsafeLock
Allows the developer to obtain unsafe pointers to the underlying unmanaged data structures of the PointCloud.
Public methodGetUserString
Gets user string from this geometry.
(Inherited from GeometryBase.)
Public methodGetUserStrings
Gets a copy of all (user key string, user value string) pairs attached to this geometry.
(Inherited from GeometryBase.)
Public methodInsert(Int32, Point3d)
Inserts a new point into the point list.
Public methodInsert(Int32, Point3d, Vector3d)
Inserts a new point into the point list.
Public methodInsert(Int32, Point3d, Color)
Inserts a new point into the point list.
Public methodInsert(Int32, Point3d, Vector3d, Color)
Inserts a new point into the point list.
Public methodInsert(Int32, Point3d, Vector3d, Color, Double)
Inserts a new point into the point list.
Public methodInsertNew
Inserts a new PointCloudItem at a specific position of the point cloud.
Public methodInsertRange
Append a collection of points to this point cloud.
Public methodIsValidWithLog
Determines if an object is valid. Also provides a report on errors if this object happens not to be valid.
(Inherited from CommonObject.)
Public methodMakeDeformable
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 methodMemberwiseClone
Creates a shallow copy of the current Object.
(Inherited from Object.)
Public methodMemoryEstimate
Computes an estimate of the number of bytes that this object is using in memory.
(Inherited from GeometryBase.)
Public methodMerge
Merges, or appends, a specified point cloud into this one.
Protected methodNonConstOperation
Destroy cache handle
(Inherited from GeometryBase.)
Protected methodOnSwitchToNonConst
Is called when a non-constant operation occurs.
(Inherited from GeometryBase.)
Public methodPointAt
Returns the location of the point at a specific index.
Public methodReleaseUnsafeLock
Updates the PointCloud data with the information that was stored via the PointCloudUnsafeLock.
Public methodRemoveAt
Remove the point at the given index.
Public methodRemoveRange
Removes points at given indices.
Public methodRotate
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 methodScale
Scales the object by the specified factor. The scale is centered at the origin.
(Inherited from GeometryBase.)
Public methodSetUserString
Attach a user string (key,value combination) to this geometry.
(Inherited from GeometryBase.)
Public methodShrinkWrap
Returns a ShrinkWrap mesh from this point cloud object.
Public methodToJSON
Create a JSON string representation of this object
(Inherited from CommonObject.)
Public methodToString
Returns a string that represents the current object.
(Inherited from Object.)
Public methodTransform
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 methodTranslate(Vector3d)
Translates the object along the specified vector.
(Inherited from GeometryBase.)
Public methodTranslate(Double, Double, Double)
Translates the object along the specified vector.
(Inherited from GeometryBase.)
Top
See Also