eVision .NET API
Loading...
Searching...
No Matches
eVision.Easy3D.EPointCloud Class Reference

Represents a 3D point cloud. More...

Inheritance diagram for eVision.Easy3D.EPointCloud:
Collaboration diagram for eVision.Easy3D.EPointCloud:

Public Member Functions

 EPointCloud ()
 Creates an EPointCloud object.
 EPointCloud (eVision.Easy3D.EPointCloud other)
 Creates an EPointCloud object.
void Clear ()
 Empties the EPointCloud.
void AddPoint (eVision.Easy3D.E3DPoint point)
 Adds a point to the EPointCloud.
void AddPoints (eVision.Easy3D.E3DPoint[] points)
 Adds a vector of points to the EPointCloud.
void AddPointCloud (eVision.Easy3D.EPointCloud cloud, bool addAttributeIfNotPresent)
 Adds the points of another point cloud to EPointCloud.
void AddPointCloud (eVision.Easy3D.EPointCloud cloud)
 Adds the points of another point cloud to EPointCloud.
void AddPointAndAttributesTo (eVision.Easy3D.EPointCloud dstCloud, uint srcIndex, bool addAttributeIfNotPresent)
 Adds a point and its attributes to another EPointCloud.
void AddPointAndAttributesTo (eVision.Easy3D.EPointCloud dstCloud, uint srcIndex)
 Adds a point and its attributes to another EPointCloud.
void RemovePoint (uint index)
 Removes a point and its corresponding attributes from the EPointCloud.
eVision.Easy3D.E3DPoint GetPoint (uint index)
 Retrieves a point from the EPointCloud.
void FillPointsBuffer (IntPtr pointsBuffer, int numPoints)
 Copies an external points buffer into the internal points buffer.
IntPtr GetAttributeBuffer (int attribute)
 Retrieves a pointer to the internal attribute buffer.
eVision.Easy3D.EAttributeType GetAttributeBufferType (int attribute)
 Returns the EAttributeType corresponding to the E3DAttribute.
bool HasAttributeBuffer (int attribute)
 Returns true if a buffer of the given E3DAttribute exists in the point cloud.
void ClearAttributeBuffer (int attribute)
 Empties the attribute buffer.
void AllocateAttributeBufferUInt8 (int attribute, byte defaultValue)
 Allocates an attribute buffer and fills it with defaultValue if the cloud is not empty.
void AllocateAttributeBufferUInt16 (int attribute, ushort defaultValue)
 Allocates an attribute buffer and fills it with defaultValue if the cloud is not empty.
void AllocateAttributeBufferUInt32 (int attribute, uint defaultValue)
 Allocates an attribute buffer and fills it with defaultValue if the cloud is not empty.
void AllocateAttributeBufferInt32 (int attribute, int defaultValue)
 Allocates an attribute buffer and fills it with defaultValue if the cloud is not empty.
void AllocateAttributeBufferFloat (int attribute, float defaultValue)
 Allocates an attribute buffer and fills it with defaultValue if the cloud is not empty.
void AllocateAttributeBufferDouble (int attribute, double defaultValue)
 Allocates an attribute buffer and fills it with defaultValue if the cloud is not empty.
void AllocateAttributeBufferEC24A (int attribute, eVision.EC24A defaultValue)
 Allocates an attribute buffer and fills it with defaultValue if the cloud is not empty.
void AllocateAttributeBufferE3DPoint (int attribute, eVision.Easy3D.E3DPoint defaultValue)
 Allocates an attribute buffer and fills it with defaultValue if the cloud is not empty.
void AllocateAttributeBuffer (int attribute, byte defaultValue)
 Allocates an attribute buffer and fills it with defaultValue if the cloud is not empty.
void AllocateAttributeBuffer (int attribute, ushort defaultValue)
 Allocates an attribute buffer and fills it with defaultValue if the cloud is not empty.
void AllocateAttributeBuffer (int attribute, uint defaultValue)
 Allocates an attribute buffer and fills it with defaultValue if the cloud is not empty.
void AllocateAttributeBuffer (int attribute, int defaultValue)
 Allocates an attribute buffer and fills it with defaultValue if the cloud is not empty.
void AllocateAttributeBuffer (int attribute, float defaultValue)
 Allocates an attribute buffer and fills it with defaultValue if the cloud is not empty.
void AllocateAttributeBuffer (int attribute, double defaultValue)
 Allocates an attribute buffer and fills it with defaultValue if the cloud is not empty.
void AllocateAttributeBuffer (int attribute, eVision.EC24A defaultValue)
 Allocates an attribute buffer and fills it with defaultValue if the cloud is not empty.
void AllocateAttributeBuffer (int attribute, eVision.Easy3D.E3DPoint defaultValue)
 Allocates an attribute buffer and fills it with defaultValue if the cloud is not empty.
void FillAttributeBufferUInt8 (int attribute, byte[] data)
 Allocates and copies the data to the attribute buffer.
void FillAttributeBufferUInt8 (int attribute, byte[] data, byte defaultValue)
 Allocates and copies the data to the attribute buffer.
void FillAttributeBufferUInt16 (int attribute, ushort[] data)
 Allocates and copies the data to the attribute buffer.
void FillAttributeBufferUInt16 (int attribute, ushort[] data, ushort defaultValue)
 Allocates and copies the data to the attribute buffer.
void FillAttributeBufferUInt32 (int attribute, uint[] data)
 Allocates and copies the data to the attribute buffer.
void FillAttributeBufferUInt32 (int attribute, uint[] data, uint defaultValue)
 Allocates and copies the data to the attribute buffer.
void FillAttributeBufferInt32 (int attribute, int[] data)
 Allocates and copies the data to the attribute buffer.
void FillAttributeBufferInt32 (int attribute, int[] data, int defaultValue)
 Allocates and copies the data to the attribute buffer.
void FillAttributeBufferFloat (int attribute, float[] data)
 Allocates and copies the data to the attribute buffer.
void FillAttributeBufferFloat (int attribute, float[] data, float defaultValue)
 Allocates and copies the data to the attribute buffer.
void FillAttributeBufferDouble (int attribute, double[] data)
 Allocates and copies the data to the attribute buffer.
void FillAttributeBufferDouble (int attribute, double[] data, double defaultValue)
 Allocates and copies the data to the attribute buffer.
void FillAttributeBufferEC24A (int attribute, eVision.EC24A[] data)
 Allocates and copies the data to the attribute buffer.
void FillAttributeBufferEC24A (int attribute, eVision.EC24A[] data, eVision.EC24A defaultValue)
 Allocates and copies the data to the attribute buffer.
void FillAttributeBufferE3DPoint (int attribute, eVision.Easy3D.E3DPoint[] data)
 Allocates and copies the data to the attribute buffer.
void FillAttributeBufferE3DPoint (int attribute, eVision.Easy3D.E3DPoint[] data, eVision.Easy3D.E3DPoint defaultValue)
 Allocates and copies the data to the attribute buffer.
void FillAttributeBuffer (int attribute, byte[] data)
 Allocates and copies the data to the attribute buffer.
void FillAttributeBuffer (int attribute, byte[] data, byte defaultValue)
 Allocates and copies the data to the attribute buffer.
void FillAttributeBuffer (int attribute, ushort[] data)
 Allocates and copies the data to the attribute buffer.
void FillAttributeBuffer (int attribute, ushort[] data, ushort defaultValue)
 Allocates and copies the data to the attribute buffer.
void FillAttributeBuffer (int attribute, uint[] data)
 Allocates and copies the data to the attribute buffer.
void FillAttributeBuffer (int attribute, uint[] data, uint defaultValue)
 Allocates and copies the data to the attribute buffer.
void FillAttributeBuffer (int attribute, int[] data)
 Allocates and copies the data to the attribute buffer.
void FillAttributeBuffer (int attribute, int[] data, int defaultValue)
 Allocates and copies the data to the attribute buffer.
void FillAttributeBuffer (int attribute, float[] data)
 Allocates and copies the data to the attribute buffer.
void FillAttributeBuffer (int attribute, float[] data, float defaultValue)
 Allocates and copies the data to the attribute buffer.
void FillAttributeBuffer (int attribute, double[] data)
 Allocates and copies the data to the attribute buffer.
void FillAttributeBuffer (int attribute, double[] data, double defaultValue)
 Allocates and copies the data to the attribute buffer.
void FillAttributeBuffer (int attribute, eVision.EC24A[] data)
 Allocates and copies the data to the attribute buffer.
void FillAttributeBuffer (int attribute, eVision.EC24A[] data, eVision.EC24A defaultValue)
 Allocates and copies the data to the attribute buffer.
void FillAttributeBuffer (int attribute, eVision.Easy3D.E3DPoint[] data)
 Allocates and copies the data to the attribute buffer.
void FillAttributeBuffer (int attribute, eVision.Easy3D.E3DPoint[] data, eVision.Easy3D.E3DPoint defaultValue)
 Allocates and copies the data to the attribute buffer.
int AddCustomAttributeBufferUInt8 (byte[] data)
 Allocates and copies the data to the new custom attribute buffer.
int AddCustomAttributeBufferUInt8 (byte[] data, byte defaultValue)
 Allocates and copies the data to the new custom attribute buffer.
int AddCustomAttributeBufferUInt16 (ushort[] data)
 Allocates and copies the data to the new custom attribute buffer.
int AddCustomAttributeBufferUInt16 (ushort[] data, ushort defaultValue)
 Allocates and copies the data to the new custom attribute buffer.
int AddCustomAttributeBufferUInt32 (uint[] data)
 Allocates and copies the data to the new custom attribute buffer.
int AddCustomAttributeBufferUInt32 (uint[] data, uint defaultValue)
 Allocates and copies the data to the new custom attribute buffer.
int AddCustomAttributeBufferInt32 (int[] data)
 Allocates and copies the data to the new custom attribute buffer.
int AddCustomAttributeBufferInt32 (int[] data, int defaultValue)
 Allocates and copies the data to the new custom attribute buffer.
int AddCustomAttributeBufferFloat (float[] data)
 Allocates and copies the data to the new custom attribute buffer.
int AddCustomAttributeBufferFloat (float[] data, float defaultValue)
 Allocates and copies the data to the new custom attribute buffer.
int AddCustomAttributeBufferDouble (double[] data)
 Allocates and copies the data to the new custom attribute buffer.
int AddCustomAttributeBufferDouble (double[] data, double defaultValue)
 Allocates and copies the data to the new custom attribute buffer.
int AddCustomAttributeBufferEC24A (eVision.EC24A[] data)
 Allocates and copies the data to the new custom attribute buffer.
int AddCustomAttributeBufferEC24A (eVision.EC24A[] data, eVision.EC24A defaultValue)
 Allocates and copies the data to the new custom attribute buffer.
int AddCustomAttributeBufferE3DPoint (eVision.Easy3D.E3DPoint[] data)
 Allocates and copies the data to the new custom attribute buffer.
int AddCustomAttributeBufferE3DPoint (eVision.Easy3D.E3DPoint[] data, eVision.Easy3D.E3DPoint defaultValue)
 Allocates and copies the data to the new custom attribute buffer.
int AddCustomAttributeBuffer (byte[] data)
 Allocates and copies the data to the new custom attribute buffer.
int AddCustomAttributeBuffer (byte[] data, byte defaultValue)
 Allocates and copies the data to the new custom attribute buffer.
int AddCustomAttributeBuffer (ushort[] data)
 Allocates and copies the data to the new custom attribute buffer.
int AddCustomAttributeBuffer (ushort[] data, ushort defaultValue)
 Allocates and copies the data to the new custom attribute buffer.
int AddCustomAttributeBuffer (uint[] data)
 Allocates and copies the data to the new custom attribute buffer.
int AddCustomAttributeBuffer (uint[] data, uint defaultValue)
 Allocates and copies the data to the new custom attribute buffer.
int AddCustomAttributeBuffer (int[] data)
 Allocates and copies the data to the new custom attribute buffer.
int AddCustomAttributeBuffer (int[] data, int defaultValue)
 Allocates and copies the data to the new custom attribute buffer.
int AddCustomAttributeBuffer (float[] data)
 Allocates and copies the data to the new custom attribute buffer.
int AddCustomAttributeBuffer (float[] data, float defaultValue)
 Allocates and copies the data to the new custom attribute buffer.
int AddCustomAttributeBuffer (double[] data)
 Allocates and copies the data to the new custom attribute buffer.
int AddCustomAttributeBuffer (double[] data, double defaultValue)
 Allocates and copies the data to the new custom attribute buffer.
int AddCustomAttributeBuffer (eVision.EC24A[] data)
 Allocates and copies the data to the new custom attribute buffer.
int AddCustomAttributeBuffer (eVision.EC24A[] data, eVision.EC24A defaultValue)
 Allocates and copies the data to the new custom attribute buffer.
int AddCustomAttributeBuffer (eVision.Easy3D.E3DPoint[] data)
 Allocates and copies the data to the new custom attribute buffer.
int AddCustomAttributeBuffer (eVision.Easy3D.E3DPoint[] data, eVision.Easy3D.E3DPoint defaultValue)
 Allocates and copies the data to the new custom attribute buffer.
int AllocateCustomAttributeBufferUInt8 (byte defaultValue)
 Allocates the data to the new custom attribute buffer and fills it with default values.
int AllocateCustomAttributeBufferUInt16 (ushort defaultValue)
 Allocates the data to the new custom attribute buffer and fills it with default values.
int AllocateCustomAttributeBufferUInt32 (uint defaultValue)
 Allocates the data to the new custom attribute buffer and fills it with default values.
int AllocateCustomAttributeBufferInt32 (int defaultValue)
 Allocates the data to the new custom attribute buffer and fills it with default values.
int AllocateCustomAttributeBufferFloat (float defaultValue)
 Allocates the data to the new custom attribute buffer and fills it with default values.
int AllocateCustomAttributeBufferDouble (double defaultValue)
 Allocates the data to the new custom attribute buffer and fills it with default values.
int AllocateCustomAttributeBufferEC24A (eVision.EC24A defaultValue)
 Allocates the data to the new custom attribute buffer and fills it with default values.
int AllocateCustomAttributeBufferE3DPoint (eVision.Easy3D.E3DPoint defaultValue)
 Allocates the data to the new custom attribute buffer and fills it with default values.
int AllocateCustomAttributeBuffer (byte defaultValue)
 Allocates the data to the new custom attribute buffer and fills it with default values.
int AllocateCustomAttributeBuffer (ushort defaultValue)
 Allocates the data to the new custom attribute buffer and fills it with default values.
int AllocateCustomAttributeBuffer (uint defaultValue)
 Allocates the data to the new custom attribute buffer and fills it with default values.
int AllocateCustomAttributeBuffer (int defaultValue)
 Allocates the data to the new custom attribute buffer and fills it with default values.
int AllocateCustomAttributeBuffer (float defaultValue)
 Allocates the data to the new custom attribute buffer and fills it with default values.
int AllocateCustomAttributeBuffer (double defaultValue)
 Allocates the data to the new custom attribute buffer and fills it with default values.
int AllocateCustomAttributeBuffer (eVision.EC24A defaultValue)
 Allocates the data to the new custom attribute buffer and fills it with default values.
int AllocateCustomAttributeBuffer (eVision.Easy3D.E3DPoint defaultValue)
 Allocates the data to the new custom attribute buffer and fills it with default values.
void GetAttribute (int attribute, uint index, out byte value)
 Retrieve the value of an attribute.
void GetAttribute (int attribute, uint index, out ushort value)
 Retrieve the value of an attribute.
void GetAttribute (int attribute, uint index, out uint value)
 Retrieve the value of an attribute.
void GetAttribute (int attribute, uint index, out int value)
 Retrieve the value of an attribute.
void GetAttribute (int attribute, uint index, out float value)
 Retrieve the value of an attribute.
void GetAttribute (int attribute, uint index, out double value)
 Retrieve the value of an attribute.
void GetAttribute (int attribute, uint index, out eVision.EC24A value)
 Retrieve the value of an attribute.
void GetAttribute (int attribute, uint index, out eVision.Easy3D.E3DPoint value)
 Retrieve the value of an attribute.
byte GetAttributeUInt8 (int attribute, uint index)
 Retrieve the value of an uint8 attribute.
ushort GetAttributeUInt16 (int attribute, uint index)
 Retrieve the value of an uint16 attribute.
uint GetAttributeUInt32 (int attribute, uint index)
 Retrieve the value of an uint32 attribute.
int GetAttributeInt32 (int attribute, uint index)
 Retrieve the value of an int32 attribute.
float GetAttributeFloat (int attribute, uint index)
 Retrieve the value of a float attribute.
double GetAttributeDouble (int attribute, uint index)
 Retrieve the value of a double attribute.
eVision.EC24A GetAttributeEC24A (int attribute, uint index)
 Retrieve the value of an EC24A attribute.
eVision.Easy3D.E3DPoint GetAttributeE3DPoint (int attribute, uint index)
 Retrieve the value of an E3DPoint attribute.
void SetAttributeUInt8 (int attribute, uint index, byte value)
 Sets the corresponding attribute at the given index.
void SetAttributeUInt16 (int attribute, uint index, ushort value)
 Sets the corresponding attribute at the given index.
void SetAttributeUInt32 (int attribute, uint index, uint value)
 Sets the corresponding attribute at the given index.
void SetAttributeInt32 (int attribute, uint index, int value)
 Sets the corresponding attribute at the given index.
void SetAttributeFloat (int attribute, uint index, float value)
 Sets the corresponding attribute at the given index.
void SetAttributeDouble (int attribute, uint index, double value)
 Sets the corresponding attribute at the given index.
void SetAttributeEC24A (int attribute, uint index, eVision.EC24A value)
 Sets the corresponding attribute at the given index.
void SetAttributeE3DPoint (int attribute, uint index, eVision.Easy3D.E3DPoint value)
 Sets the corresponding attribute at the given index.
void SetAttribute (int attribute, uint index, byte value)
 Sets the corresponding attribute at the given index.
void SetAttribute (int attribute, uint index, ushort value)
 Sets the corresponding attribute at the given index.
void SetAttribute (int attribute, uint index, uint value)
 Sets the corresponding attribute at the given index.
void SetAttribute (int attribute, uint index, int value)
 Sets the corresponding attribute at the given index.
void SetAttribute (int attribute, uint index, float value)
 Sets the corresponding attribute at the given index.
void SetAttribute (int attribute, uint index, double value)
 Sets the corresponding attribute at the given index.
void SetAttribute (int attribute, uint index, eVision.EC24A value)
 Sets the corresponding attribute at the given index.
void SetAttribute (int attribute, uint index, eVision.Easy3D.E3DPoint value)
 Sets the corresponding attribute at the given index.
void CopyAllAttributesTo (eVision.Easy3D.EPointCloud dstCloud, uint dstIndex, uint srcIndex)
 Copies all attributes at a given index from one EPointCloud to another one.
void Load (string path)
 Loads the EPointCloud. Supported formats are eVision proprietary, CSV, OBJ, PCD, PLY and XYZ. The given ESerializer must have been created for reading.
void Load (eVision.ESerializer serializer)
 Loads the EPointCloud. Supported formats are eVision proprietary, CSV, OBJ, PCD, PLY and XYZ. The given ESerializer must have been created for reading.
void Save (string path)
 Saves the EPointCloud. Supported formats are eVision proprietary, CSV, OBJ, PCD, PLY and XYZ. The given ESerializer must have been created for writing.
void Save (eVision.ESerializer serializer)
 Saves the EPointCloud. Supported formats are eVision proprietary, CSV, OBJ, PCD, PLY and XYZ. The given ESerializer must have been created for writing.
void SavePCD (string path, bool binary, bool binaryCompressed)
 Saves the EPointCloud in the PCD (Point Cloud Library) file format.
void SavePCD (string path, bool binary)
 Saves the EPointCloud in the PCD (Point Cloud Library) file format.
void SavePCD (string path)
 Saves the EPointCloud in the PCD (Point Cloud Library) file format.
void LoadPCD (string path)
 Loads an EPointCloud stored in the PCD (Point Cloud Library) file format.
void LoadPCD (string path, eVision.EFloatRange undefinedZValues)
 Loads an EPointCloud stored in the PCD (Point Cloud Library) file format.
void SaveCSV (string path)
 Saves the EPointCloud in the CSV (Comma-Separated Values) file format.
void LoadCSV (string path)
 Loads an EPointCloud stored in the CSV (Comma-Separated Values) file format.
void LoadCSV (string path, eVision.EFloatRange undefinedZValues)
 Loads an EPointCloud stored in the CSV (Comma-Separated Values) file format.
void SaveOBJ (string path)
 Saves the EPointCloud in the OBJ file format.
void LoadOBJ (string path)
 Loads an EPointCloud stored in the OBJ file format.
void LoadOBJ (string path, eVision.EFloatRange undefinedZValues)
 Loads an EPointCloud stored in the OBJ file format.
void SavePLY (string path, bool binary)
 Saves the EPointCloud in the PLY file format.
void SavePLY (string path)
 Saves the EPointCloud in the PLY file format.
void LoadPLY (string path)
 Loads an EPointCloud stored in the PLY file format.
void LoadPLY (string path, eVision.EFloatRange undefinedZValues)
 Loads an EPointCloud stored in the PLY file format.
void SaveXYZ (string path)
 Saves the EPointCloud in the XYZ file format.
void LoadXYZ (string path)
 Loads an EPointCloud stored in the XYZ file format.
void LoadXYZ (string path, eVision.EFloatRange undefinedZValues)
 Loads an EPointCloud stored in the XYZ file format.
void GetInitializedAttributes (ref int[] attributes)
 Fills the vector with the ids (in growing order) of all the attributes that have been initialized.
float DistanceToSegment (eVision.Easy3D.E3DPoint origin, eVision.Easy3D.E3DPoint end)
 Returns the shortest distance between an E3DPoint of the EPointCloud and a segment represented by 2 E3DPoint.
float DistanceToSegment (eVision.Easy3D.E3DPoint origin, eVision.Easy3D.E3DPoint end, out eVision.Easy3D.E3DPoint closest, out int closestIndex)
 Returns the shortest distance between an E3DPoint of the EPointCloud and a segment represented by 2 E3DPoint.
eVision.Easy3D.E3DClosestPoint ClosestPointToSegment (eVision.Easy3D.E3DPoint origin, eVision.Easy3D.E3DPoint end)
 Returns the closest point, its index and the distance between the EPointCloud and a segment represented by 2 E3DPoint.
float DistanceToLine (eVision.Easy3D.E3DPoint origin, eVision.Easy3D.E3DPoint end)
 Returns the shortest distance between an E3DPoint of the EPointCloud and a line represented by 2 E3DPoint.
float DistanceToLine (eVision.Easy3D.E3DPoint origin, eVision.Easy3D.E3DPoint end, out eVision.Easy3D.E3DPoint closest, out int closestIndex)
 Returns the shortest distance between an E3DPoint of the EPointCloud and a line represented by 2 E3DPoint.
eVision.Easy3D.E3DClosestPoint ClosestPointToLine (eVision.Easy3D.E3DPoint origin, eVision.Easy3D.E3DPoint end)
 Returns the closest point, its index and the distance between the EPointCloud and a line represented by 2 E3DPoint.
void PrepareSpacePartition ()
 Enables the build of the space partition (like EPointCloud.EnableSpacePartition) and builds it now instead of when it is first needed. The computation time of the space partition depends on the number of points in the point cloud.
eVision.Easy3D.E3DPlane ComputePlaneBehind (eVision.Easy3D.E3DPoint normal, float margin)
 Returns the E3DPlane with given normal on which the EPointCloud lays. This is useful when projecting an EPointCloud on an EZMap.
eVision.Easy3D.E3DPlane ComputePlaneBehind (eVision.Easy3D.E3DPoint normal)
 Returns the E3DPlane with given normal on which the EPointCloud lays. This is useful when projecting an EPointCloud on an EZMap.
void ComputeNormalsAndCurvatures (bool computeCurvatures, uint nbAdditionalNeighborsForCurvatures)
 Compute the normals of the cloud's points by fitting a plane on the 10 neighbors points. This method does not allow to compute the sign of the normals (we can't determine if a normal is x,y,z or -x,-y,-z).
void ComputeNormalsAndCurvatures (bool computeCurvatures)
 Compute the normals of the cloud's points by fitting a plane on the 10 neighbors points. This method does not allow to compute the sign of the normals (we can't determine if a normal is x,y,z or -x,-y,-z).
void ComputeNormalsAndCurvatures ()
 Compute the normals of the cloud's points by fitting a plane on the 10 neighbors points. This method does not allow to compute the sign of the normals (we can't determine if a normal is x,y,z or -x,-y,-z).

Properties

int NumPoints [get]
 Number of points in the EPointCloud.
IntPtr PointsBuffer [get]
 Retrieves a pointer to the internal points buffer.
bool EnableSpacePartition [get, set]
 Sets/Gets the status of space partitioning when computing distance to Segments and Lines. Space partitioning is a way to speed up the geometric queries on EPointCloud. The affected methods are EPointCloud.DistanceToSegment, EPointCloud.DistanceToLine. By default, space partition is disabled for these two methods.

Detailed Description

Represents a 3D point cloud.

License(s): Easy3D

Constructor & Destructor Documentation

◆ EPointCloud() [1/2]

eVision.Easy3D.EPointCloud.EPointCloud ( )

Creates an EPointCloud object.

◆ EPointCloud() [2/2]

eVision.Easy3D.EPointCloud.EPointCloud ( eVision.Easy3D.EPointCloud other)

Creates an EPointCloud object.

Parameters
otherReference to the EPointCloud used for the initialization.

Member Function Documentation

◆ AddCustomAttributeBuffer() [1/16]

int eVision.Easy3D.EPointCloud.AddCustomAttributeBuffer ( byte[] data)

Allocates and copies the data to the new custom attribute buffer.

Parameters
dataThe address of the external attribute buffer. The buffer should be of the same length as the EPointCloud (see EPointCloud.NumPoints).

An exception is also thrown if data is nullptr, if you don't want to specify the data, use AllocateCustomAttributeBufferXXX.

Deprecated

Use EPointCloud.AddCustomAttributeBufferUInt8.

Deprecated in version 24.6. Scheduled to be removed in version 27.6.

◆ AddCustomAttributeBuffer() [2/16]

int eVision.Easy3D.EPointCloud.AddCustomAttributeBuffer ( byte[] data,
byte defaultValue )

Allocates and copies the data to the new custom attribute buffer.

Parameters
dataThe address of the external attribute buffer. The buffer should be of the same length as the EPointCloud (see EPointCloud.NumPoints).
defaultValueThe value used to set the attribute when the EPointCloud grows (see EPointCloud.AddPoint, EPointCloud.AddPoints and EPointCloud.AddPointCloud).

An exception is also thrown if data is nullptr, if you don't want to specify the data, use AllocateCustomAttributeBufferXXX.

Deprecated

Use EPointCloud.AddCustomAttributeBufferUInt8.

Deprecated in version 24.6. Scheduled to be removed in version 27.6.

◆ AddCustomAttributeBuffer() [3/16]

int eVision.Easy3D.EPointCloud.AddCustomAttributeBuffer ( double[] data)

Allocates and copies the data to the new custom attribute buffer.

Parameters
dataThe address of the external attribute buffer. The buffer should be of the same length as the EPointCloud (see EPointCloud.NumPoints).

An exception is also thrown if data is nullptr, if you don't want to specify the data, use AllocateCustomAttributeBufferXXX.

Deprecated

Use EPointCloud.AddCustomAttributeBufferDouble.

Deprecated in version 24.6. Scheduled to be removed in version 27.6.

◆ AddCustomAttributeBuffer() [4/16]

int eVision.Easy3D.EPointCloud.AddCustomAttributeBuffer ( double[] data,
double defaultValue )

Allocates and copies the data to the new custom attribute buffer.

Parameters
dataThe address of the external attribute buffer. The buffer should be of the same length as the EPointCloud (see EPointCloud.NumPoints).
defaultValueThe value used to set the attribute when the EPointCloud grows (see EPointCloud.AddPoint, EPointCloud.AddPoints and EPointCloud.AddPointCloud).

An exception is also thrown if data is nullptr, if you don't want to specify the data, use AllocateCustomAttributeBufferXXX.

Deprecated

Use EPointCloud.AddCustomAttributeBufferDouble.

Deprecated in version 24.6. Scheduled to be removed in version 27.6.

◆ AddCustomAttributeBuffer() [5/16]

int eVision.Easy3D.EPointCloud.AddCustomAttributeBuffer ( eVision.Easy3D.E3DPoint[] data)

Allocates and copies the data to the new custom attribute buffer.

Parameters
dataThe address of the external attribute buffer. The buffer should be of the same length as the EPointCloud (see EPointCloud.NumPoints).

An exception is also thrown if data is nullptr, if you don't want to specify the data, use AllocateCustomAttributeBufferXXX.

Deprecated

Use EPointCloud.AddCustomAttributeBufferE3DPoint.

Deprecated in version 24.6. Scheduled to be removed in version 27.6.

◆ AddCustomAttributeBuffer() [6/16]

int eVision.Easy3D.EPointCloud.AddCustomAttributeBuffer ( eVision.Easy3D.E3DPoint[] data,
eVision.Easy3D.E3DPoint defaultValue )

Allocates and copies the data to the new custom attribute buffer.

Parameters
dataThe address of the external attribute buffer. The buffer should be of the same length as the EPointCloud (see EPointCloud.NumPoints).
defaultValueThe value used to set the attribute when the EPointCloud grows (see EPointCloud.AddPoint, EPointCloud.AddPoints and EPointCloud.AddPointCloud).

An exception is also thrown if data is nullptr, if you don't want to specify the data, use AllocateCustomAttributeBufferXXX.

Deprecated

Use EPointCloud.AddCustomAttributeBufferE3DPoint.

Deprecated in version 24.6. Scheduled to be removed in version 27.6.

◆ AddCustomAttributeBuffer() [7/16]

int eVision.Easy3D.EPointCloud.AddCustomAttributeBuffer ( eVision.EC24A[] data)

Allocates and copies the data to the new custom attribute buffer.

Parameters
dataThe address of the external attribute buffer. The buffer should be of the same length as the EPointCloud (see EPointCloud.NumPoints).

An exception is also thrown if data is nullptr, if you don't want to specify the data, use AllocateCustomAttributeBufferXXX.

Deprecated

Use EPointCloud.AddCustomAttributeBufferEC24A.

Deprecated in version 24.6. Scheduled to be removed in version 27.6.

◆ AddCustomAttributeBuffer() [8/16]

int eVision.Easy3D.EPointCloud.AddCustomAttributeBuffer ( eVision.EC24A[] data,
eVision.EC24A defaultValue )

Allocates and copies the data to the new custom attribute buffer.

Parameters
dataThe address of the external attribute buffer. The buffer should be of the same length as the EPointCloud (see EPointCloud.NumPoints).
defaultValueThe value used to set the attribute when the EPointCloud grows (see EPointCloud.AddPoint, EPointCloud.AddPoints and EPointCloud.AddPointCloud).

An exception is also thrown if data is nullptr, if you don't want to specify the data, use AllocateCustomAttributeBufferXXX.

Deprecated

Use EPointCloud.AddCustomAttributeBufferEC24A.

Deprecated in version 24.6. Scheduled to be removed in version 27.6.

◆ AddCustomAttributeBuffer() [9/16]

int eVision.Easy3D.EPointCloud.AddCustomAttributeBuffer ( float[] data)

Allocates and copies the data to the new custom attribute buffer.

Parameters
dataThe address of the external attribute buffer. The buffer should be of the same length as the EPointCloud (see EPointCloud.NumPoints).

An exception is also thrown if data is nullptr, if you don't want to specify the data, use AllocateCustomAttributeBufferXXX.

Deprecated

Use EPointCloud.AddCustomAttributeBufferFloat.

Deprecated in version 24.6. Scheduled to be removed in version 27.6.

◆ AddCustomAttributeBuffer() [10/16]

int eVision.Easy3D.EPointCloud.AddCustomAttributeBuffer ( float[] data,
float defaultValue )

Allocates and copies the data to the new custom attribute buffer.

Parameters
dataThe address of the external attribute buffer. The buffer should be of the same length as the EPointCloud (see EPointCloud.NumPoints).
defaultValueThe value used to set the attribute when the EPointCloud grows (see EPointCloud.AddPoint, EPointCloud.AddPoints and EPointCloud.AddPointCloud).

An exception is also thrown if data is nullptr, if you don't want to specify the data, use AllocateCustomAttributeBufferXXX.

Deprecated

Use EPointCloud.AddCustomAttributeBufferFloat.

Deprecated in version 24.6. Scheduled to be removed in version 27.6.

◆ AddCustomAttributeBuffer() [11/16]

int eVision.Easy3D.EPointCloud.AddCustomAttributeBuffer ( int[] data)

Allocates and copies the data to the new custom attribute buffer.

Parameters
dataThe address of the external attribute buffer. The buffer should be of the same length as the EPointCloud (see EPointCloud.NumPoints).

An exception is also thrown if data is nullptr, if you don't want to specify the data, use AllocateCustomAttributeBufferXXX.

Deprecated

Use EPointCloud.AddCustomAttributeBufferInt32.

Deprecated in version 24.6. Scheduled to be removed in version 27.6.

◆ AddCustomAttributeBuffer() [12/16]

int eVision.Easy3D.EPointCloud.AddCustomAttributeBuffer ( int[] data,
int defaultValue )

Allocates and copies the data to the new custom attribute buffer.

Parameters
dataThe address of the external attribute buffer. The buffer should be of the same length as the EPointCloud (see EPointCloud.NumPoints).
defaultValueThe value used to set the attribute when the EPointCloud grows (see EPointCloud.AddPoint, EPointCloud.AddPoints and EPointCloud.AddPointCloud).

An exception is also thrown if data is nullptr, if you don't want to specify the data, use AllocateCustomAttributeBufferXXX.

Deprecated

Use EPointCloud.AddCustomAttributeBufferInt32.

Deprecated in version 24.6. Scheduled to be removed in version 27.6.

◆ AddCustomAttributeBuffer() [13/16]

int eVision.Easy3D.EPointCloud.AddCustomAttributeBuffer ( uint[] data)

Allocates and copies the data to the new custom attribute buffer.

Parameters
dataThe address of the external attribute buffer. The buffer should be of the same length as the EPointCloud (see EPointCloud.NumPoints).

An exception is also thrown if data is nullptr, if you don't want to specify the data, use AllocateCustomAttributeBufferXXX.

Deprecated

Use EPointCloud.AddCustomAttributeBufferUInt32.

Deprecated in version 24.6. Scheduled to be removed in version 27.6.

◆ AddCustomAttributeBuffer() [14/16]

int eVision.Easy3D.EPointCloud.AddCustomAttributeBuffer ( uint[] data,
uint defaultValue )

Allocates and copies the data to the new custom attribute buffer.

Parameters
dataThe address of the external attribute buffer. The buffer should be of the same length as the EPointCloud (see EPointCloud.NumPoints).
defaultValueThe value used to set the attribute when the EPointCloud grows (see EPointCloud.AddPoint, EPointCloud.AddPoints and EPointCloud.AddPointCloud).

An exception is also thrown if data is nullptr, if you don't want to specify the data, use AllocateCustomAttributeBufferXXX.

Deprecated

Use EPointCloud.AddCustomAttributeBufferUInt32.

Deprecated in version 24.6. Scheduled to be removed in version 27.6.

◆ AddCustomAttributeBuffer() [15/16]

int eVision.Easy3D.EPointCloud.AddCustomAttributeBuffer ( ushort[] data)

Allocates and copies the data to the new custom attribute buffer.

Parameters
dataThe address of the external attribute buffer. The buffer should be of the same length as the EPointCloud (see EPointCloud.NumPoints).

An exception is also thrown if data is nullptr, if you don't want to specify the data, use AllocateCustomAttributeBufferXXX.

Deprecated

Use EPointCloud.AddCustomAttributeBufferUInt16.

Deprecated in version 24.6. Scheduled to be removed in version 27.6.

◆ AddCustomAttributeBuffer() [16/16]

int eVision.Easy3D.EPointCloud.AddCustomAttributeBuffer ( ushort[] data,
ushort defaultValue )

Allocates and copies the data to the new custom attribute buffer.

Parameters
dataThe address of the external attribute buffer. The buffer should be of the same length as the EPointCloud (see EPointCloud.NumPoints).
defaultValueThe value used to set the attribute when the EPointCloud grows (see EPointCloud.AddPoint, EPointCloud.AddPoints and EPointCloud.AddPointCloud).

An exception is also thrown if data is nullptr, if you don't want to specify the data, use AllocateCustomAttributeBufferXXX.

Deprecated

Use EPointCloud.AddCustomAttributeBufferUInt16.

Deprecated in version 24.6. Scheduled to be removed in version 27.6.

◆ AddCustomAttributeBufferDouble() [1/2]

int eVision.Easy3D.EPointCloud.AddCustomAttributeBufferDouble ( double[] data)

Allocates and copies the data to the new custom attribute buffer.

Parameters
dataThe address of the external attribute buffer. The buffer should be of the same length as the EPointCloud (see EPointCloud.NumPoints).

An exception is also thrown if data is nullptr, if you don't want to specify the data, use AllocateCustomAttributeBufferXXX.

◆ AddCustomAttributeBufferDouble() [2/2]

int eVision.Easy3D.EPointCloud.AddCustomAttributeBufferDouble ( double[] data,
double defaultValue )

Allocates and copies the data to the new custom attribute buffer.

Parameters
dataThe address of the external attribute buffer. The buffer should be of the same length as the EPointCloud (see EPointCloud.NumPoints).
defaultValueThe value used to set the attribute when the EPointCloud grows (see EPointCloud.AddPoint, EPointCloud.AddPoints and EPointCloud.AddPointCloud).

An exception is also thrown if data is nullptr, if you don't want to specify the data, use AllocateCustomAttributeBufferXXX.

◆ AddCustomAttributeBufferE3DPoint() [1/2]

int eVision.Easy3D.EPointCloud.AddCustomAttributeBufferE3DPoint ( eVision.Easy3D.E3DPoint[] data)

Allocates and copies the data to the new custom attribute buffer.

Parameters
dataThe address of the external attribute buffer. The buffer should be of the same length as the EPointCloud (see EPointCloud.NumPoints).

An exception is also thrown if data is nullptr, if you don't want to specify the data, use AllocateCustomAttributeBufferXXX.

◆ AddCustomAttributeBufferE3DPoint() [2/2]

int eVision.Easy3D.EPointCloud.AddCustomAttributeBufferE3DPoint ( eVision.Easy3D.E3DPoint[] data,
eVision.Easy3D.E3DPoint defaultValue )

Allocates and copies the data to the new custom attribute buffer.

Parameters
dataThe address of the external attribute buffer. The buffer should be of the same length as the EPointCloud (see EPointCloud.NumPoints).
defaultValueThe value used to set the attribute when the EPointCloud grows (see EPointCloud.AddPoint, EPointCloud.AddPoints and EPointCloud.AddPointCloud).

An exception is also thrown if data is nullptr, if you don't want to specify the data, use AllocateCustomAttributeBufferXXX.

◆ AddCustomAttributeBufferEC24A() [1/2]

int eVision.Easy3D.EPointCloud.AddCustomAttributeBufferEC24A ( eVision.EC24A[] data)

Allocates and copies the data to the new custom attribute buffer.

Parameters
dataThe address of the external attribute buffer. The buffer should be of the same length as the EPointCloud (see EPointCloud.NumPoints).

An exception is also thrown if data is nullptr, if you don't want to specify the data, use AllocateCustomAttributeBufferXXX.

◆ AddCustomAttributeBufferEC24A() [2/2]

int eVision.Easy3D.EPointCloud.AddCustomAttributeBufferEC24A ( eVision.EC24A[] data,
eVision.EC24A defaultValue )

Allocates and copies the data to the new custom attribute buffer.

Parameters
dataThe address of the external attribute buffer. The buffer should be of the same length as the EPointCloud (see EPointCloud.NumPoints).
defaultValueThe value used to set the attribute when the EPointCloud grows (see EPointCloud.AddPoint, EPointCloud.AddPoints and EPointCloud.AddPointCloud).

An exception is also thrown if data is nullptr, if you don't want to specify the data, use AllocateCustomAttributeBufferXXX.

◆ AddCustomAttributeBufferFloat() [1/2]

int eVision.Easy3D.EPointCloud.AddCustomAttributeBufferFloat ( float[] data)

Allocates and copies the data to the new custom attribute buffer.

Parameters
dataThe address of the external attribute buffer. The buffer should be of the same length as the EPointCloud (see EPointCloud.NumPoints).

An exception is also thrown if data is nullptr, if you don't want to specify the data, use AllocateCustomAttributeBufferXXX.

◆ AddCustomAttributeBufferFloat() [2/2]

int eVision.Easy3D.EPointCloud.AddCustomAttributeBufferFloat ( float[] data,
float defaultValue )

Allocates and copies the data to the new custom attribute buffer.

Parameters
dataThe address of the external attribute buffer. The buffer should be of the same length as the EPointCloud (see EPointCloud.NumPoints).
defaultValueThe value used to set the attribute when the EPointCloud grows (see EPointCloud.AddPoint, EPointCloud.AddPoints and EPointCloud.AddPointCloud).

An exception is also thrown if data is nullptr, if you don't want to specify the data, use AllocateCustomAttributeBufferXXX.

◆ AddCustomAttributeBufferInt32() [1/2]

int eVision.Easy3D.EPointCloud.AddCustomAttributeBufferInt32 ( int[] data)

Allocates and copies the data to the new custom attribute buffer.

Parameters
dataThe address of the external attribute buffer. The buffer should be of the same length as the EPointCloud (see EPointCloud.NumPoints).

An exception is also thrown if data is nullptr, if you don't want to specify the data, use AllocateCustomAttributeBufferXXX.

◆ AddCustomAttributeBufferInt32() [2/2]

int eVision.Easy3D.EPointCloud.AddCustomAttributeBufferInt32 ( int[] data,
int defaultValue )

Allocates and copies the data to the new custom attribute buffer.

Parameters
dataThe address of the external attribute buffer. The buffer should be of the same length as the EPointCloud (see EPointCloud.NumPoints).
defaultValueThe value used to set the attribute when the EPointCloud grows (see EPointCloud.AddPoint, EPointCloud.AddPoints and EPointCloud.AddPointCloud).

An exception is also thrown if data is nullptr, if you don't want to specify the data, use AllocateCustomAttributeBufferXXX.

◆ AddCustomAttributeBufferUInt16() [1/2]

int eVision.Easy3D.EPointCloud.AddCustomAttributeBufferUInt16 ( ushort[] data)

Allocates and copies the data to the new custom attribute buffer.

Parameters
dataThe address of the external attribute buffer. The buffer should be of the same length as the EPointCloud (see EPointCloud.NumPoints).

An exception is also thrown if data is nullptr, if you don't want to specify the data, use AllocateCustomAttributeBufferXXX.

◆ AddCustomAttributeBufferUInt16() [2/2]

int eVision.Easy3D.EPointCloud.AddCustomAttributeBufferUInt16 ( ushort[] data,
ushort defaultValue )

Allocates and copies the data to the new custom attribute buffer.

Parameters
dataThe address of the external attribute buffer. The buffer should be of the same length as the EPointCloud (see EPointCloud.NumPoints).
defaultValueThe value used to set the attribute when the EPointCloud grows (see EPointCloud.AddPoint, EPointCloud.AddPoints and EPointCloud.AddPointCloud).

An exception is also thrown if data is nullptr, if you don't want to specify the data, use AllocateCustomAttributeBufferXXX.

◆ AddCustomAttributeBufferUInt32() [1/2]

int eVision.Easy3D.EPointCloud.AddCustomAttributeBufferUInt32 ( uint[] data)

Allocates and copies the data to the new custom attribute buffer.

Parameters
dataThe address of the external attribute buffer. The buffer should be of the same length as the EPointCloud (see EPointCloud.NumPoints).

An exception is also thrown if data is nullptr, if you don't want to specify the data, use AllocateCustomAttributeBufferXXX.

◆ AddCustomAttributeBufferUInt32() [2/2]

int eVision.Easy3D.EPointCloud.AddCustomAttributeBufferUInt32 ( uint[] data,
uint defaultValue )

Allocates and copies the data to the new custom attribute buffer.

Parameters
dataThe address of the external attribute buffer. The buffer should be of the same length as the EPointCloud (see EPointCloud.NumPoints).
defaultValueThe value used to set the attribute when the EPointCloud grows (see EPointCloud.AddPoint, EPointCloud.AddPoints and EPointCloud.AddPointCloud).

An exception is also thrown if data is nullptr, if you don't want to specify the data, use AllocateCustomAttributeBufferXXX.

◆ AddCustomAttributeBufferUInt8() [1/2]

int eVision.Easy3D.EPointCloud.AddCustomAttributeBufferUInt8 ( byte[] data)

Allocates and copies the data to the new custom attribute buffer.

Parameters
dataThe address of the external attribute buffer. The buffer should be of the same length as the EPointCloud (see EPointCloud.NumPoints).

An exception is also thrown if data is nullptr, if you don't want to specify the data, use AllocateCustomAttributeBufferXXX.

◆ AddCustomAttributeBufferUInt8() [2/2]

int eVision.Easy3D.EPointCloud.AddCustomAttributeBufferUInt8 ( byte[] data,
byte defaultValue )

Allocates and copies the data to the new custom attribute buffer.

Parameters
dataThe address of the external attribute buffer. The buffer should be of the same length as the EPointCloud (see EPointCloud.NumPoints).
defaultValueThe value used to set the attribute when the EPointCloud grows (see EPointCloud.AddPoint, EPointCloud.AddPoints and EPointCloud.AddPointCloud).

An exception is also thrown if data is nullptr, if you don't want to specify the data, use AllocateCustomAttributeBufferXXX.

◆ AddPoint()

void eVision.Easy3D.EPointCloud.AddPoint ( eVision.Easy3D.E3DPoint point)

Adds a point to the EPointCloud.

Parameters
pointThe E3DPoint to add to the point cloud.

The point is not added if it contains nan or inf values.

◆ AddPointAndAttributesTo() [1/2]

void eVision.Easy3D.EPointCloud.AddPointAndAttributesTo ( eVision.Easy3D.EPointCloud dstCloud,
uint srcIndex )

Adds a point and its attributes to another EPointCloud.

Parameters
dstCloudThe EPointCloud where the attributes are copied.
srcIndexThe index of the element to copy from the source EPointCloud.

◆ AddPointAndAttributesTo() [2/2]

void eVision.Easy3D.EPointCloud.AddPointAndAttributesTo ( eVision.Easy3D.EPointCloud dstCloud,
uint srcIndex,
bool addAttributeIfNotPresent )

Adds a point and its attributes to another EPointCloud.

Parameters
dstCloudThe EPointCloud where the attributes are copied.
srcIndexThe index of the element to copy from the source EPointCloud.
addAttributeIfNotPresentWhether to initialize a buffer if it is present in EPointCloud but not in dstCloud. this could result in the creation of an attribute filled with default values.

◆ AddPointCloud() [1/2]

void eVision.Easy3D.EPointCloud.AddPointCloud ( eVision.Easy3D.EPointCloud cloud)

Adds the points of another point cloud to EPointCloud.

Parameters
cloudPoint cloud whose points will be added to the point cloud.

◆ AddPointCloud() [2/2]

void eVision.Easy3D.EPointCloud.AddPointCloud ( eVision.Easy3D.EPointCloud cloud,
bool addAttributeIfNotPresent )

Adds the points of another point cloud to EPointCloud.

Parameters
cloudPoint cloud whose points will be added to the point cloud.
addAttributeIfNotPresentWhether to initialize a buffer if it is present cloud but not in EPointCloud. this could result in the creation of an attribute filled with default values.

◆ AddPoints()

void eVision.Easy3D.EPointCloud.AddPoints ( eVision.Easy3D.E3DPoint[] points)

Adds a vector of points to the EPointCloud.

Parameters
pointsVector of E3DPoint to add to the point cloud.

The points that contain nan or inf values are not added.

◆ AllocateAttributeBuffer() [1/8]

void eVision.Easy3D.EPointCloud.AllocateAttributeBuffer ( int attribute,
byte defaultValue )

Allocates an attribute buffer and fills it with defaultValue if the cloud is not empty.

Parameters
attributeThe attribute buffer id. Either an E3DAttribute or an id returned by AddCustomAttributeBufferXXX.
defaultValueThe value used to set the attribute when the EPointCloud grows (see EPointCloud.AddPoint, EPointCloud.AddPoints and EPointCloud.AddPointCloud).

If the data type is not correct depending on the E3DAttribute, it throws an EException with an EError.EError_InvalidDataType.

Deprecated

Use EPointCloud.AllocateAttributeBufferUInt8.

Deprecated in version 24.6. Scheduled to be removed in version 27.6.

◆ AllocateAttributeBuffer() [2/8]

void eVision.Easy3D.EPointCloud.AllocateAttributeBuffer ( int attribute,
double defaultValue )

Allocates an attribute buffer and fills it with defaultValue if the cloud is not empty.

Parameters
attributeThe attribute buffer id. Either an E3DAttribute or an id returned by AddCustomAttributeBufferXXX.
defaultValueThe value used to set the attribute when the EPointCloud grows (see EPointCloud.AddPoint, EPointCloud.AddPoints and EPointCloud.AddPointCloud).

If the data type is not correct depending on the E3DAttribute, it throws an EException with an EError.EError_InvalidDataType.

Deprecated

Use EPointCloud.AllocateAttributeBufferDouble.

Deprecated in version 24.6. Scheduled to be removed in version 27.6.

◆ AllocateAttributeBuffer() [3/8]

void eVision.Easy3D.EPointCloud.AllocateAttributeBuffer ( int attribute,
eVision.Easy3D.E3DPoint defaultValue )

Allocates an attribute buffer and fills it with defaultValue if the cloud is not empty.

Parameters
attributeThe attribute buffer id. Either an E3DAttribute or an id returned by AddCustomAttributeBufferXXX.
defaultValueThe value used to set the attribute when the EPointCloud grows (see EPointCloud.AddPoint, EPointCloud.AddPoints and EPointCloud.AddPointCloud).

If the data type is not correct depending on the E3DAttribute, it throws an EException with an EError.EError_InvalidDataType.

Deprecated

Use EPointCloud.AllocateAttributeBufferE3DPoint.

Deprecated in version 24.6. Scheduled to be removed in version 27.6.

◆ AllocateAttributeBuffer() [4/8]

void eVision.Easy3D.EPointCloud.AllocateAttributeBuffer ( int attribute,
eVision.EC24A defaultValue )

Allocates an attribute buffer and fills it with defaultValue if the cloud is not empty.

Parameters
attributeThe attribute buffer id. Either an E3DAttribute or an id returned by AddCustomAttributeBufferXXX.
defaultValueThe value used to set the attribute when the EPointCloud grows (see EPointCloud.AddPoint, EPointCloud.AddPoints and EPointCloud.AddPointCloud).

If the data type is not correct depending on the E3DAttribute, it throws an EException with an EError.EError_InvalidDataType.

Deprecated

Use EPointCloud.AllocateAttributeBufferEC24A.

Deprecated in version 24.6. Scheduled to be removed in version 27.6.

◆ AllocateAttributeBuffer() [5/8]

void eVision.Easy3D.EPointCloud.AllocateAttributeBuffer ( int attribute,
float defaultValue )

Allocates an attribute buffer and fills it with defaultValue if the cloud is not empty.

Parameters
attributeThe attribute buffer id. Either an E3DAttribute or an id returned by AddCustomAttributeBufferXXX.
defaultValueThe value used to set the attribute when the EPointCloud grows (see EPointCloud.AddPoint, EPointCloud.AddPoints and EPointCloud.AddPointCloud).

If the data type is not correct depending on the E3DAttribute, it throws an EException with an EError.EError_InvalidDataType.

Deprecated

Use EPointCloud.AllocateAttributeBufferFloat.

Deprecated in version 24.6. Scheduled to be removed in version 27.6.

◆ AllocateAttributeBuffer() [6/8]

void eVision.Easy3D.EPointCloud.AllocateAttributeBuffer ( int attribute,
int defaultValue )

Allocates an attribute buffer and fills it with defaultValue if the cloud is not empty.

Parameters
attributeThe attribute buffer id. Either an E3DAttribute or an id returned by AddCustomAttributeBufferXXX.
defaultValueThe value used to set the attribute when the EPointCloud grows (see EPointCloud.AddPoint, EPointCloud.AddPoints and EPointCloud.AddPointCloud).

If the data type is not correct depending on the E3DAttribute, it throws an EException with an EError.EError_InvalidDataType.

Deprecated

Use EPointCloud.AllocateAttributeBufferInt32.

Deprecated in version 24.6. Scheduled to be removed in version 27.6.

◆ AllocateAttributeBuffer() [7/8]

void eVision.Easy3D.EPointCloud.AllocateAttributeBuffer ( int attribute,
uint defaultValue )

Allocates an attribute buffer and fills it with defaultValue if the cloud is not empty.

Parameters
attributeThe attribute buffer id. Either an E3DAttribute or an id returned by AddCustomAttributeBufferXXX.
defaultValueThe value used to set the attribute when the EPointCloud grows (see EPointCloud.AddPoint, EPointCloud.AddPoints and EPointCloud.AddPointCloud).

If the data type is not correct depending on the E3DAttribute, it throws an EException with an EError.EError_InvalidDataType.

Deprecated

Use EPointCloud.AllocateAttributeBufferUInt32.

Deprecated in version 24.6. Scheduled to be removed in version 27.6.

◆ AllocateAttributeBuffer() [8/8]

void eVision.Easy3D.EPointCloud.AllocateAttributeBuffer ( int attribute,
ushort defaultValue )

Allocates an attribute buffer and fills it with defaultValue if the cloud is not empty.

Parameters
attributeThe attribute buffer id. Either an E3DAttribute or an id returned by AddCustomAttributeBufferXXX.
defaultValueThe value used to set the attribute when the EPointCloud grows (see EPointCloud.AddPoint, EPointCloud.AddPoints and EPointCloud.AddPointCloud).

If the data type is not correct depending on the E3DAttribute, it throws an EException with an EError.EError_InvalidDataType.

Deprecated

Use EPointCloud.AllocateAttributeBufferUInt16.

Deprecated in version 24.6. Scheduled to be removed in version 27.6.

◆ AllocateAttributeBufferDouble()

void eVision.Easy3D.EPointCloud.AllocateAttributeBufferDouble ( int attribute,
double defaultValue )

Allocates an attribute buffer and fills it with defaultValue if the cloud is not empty.

Parameters
attributeThe attribute buffer id. Either an E3DAttribute or an id returned by AddCustomAttributeBufferXXX.
defaultValueThe value used to set the attribute when the EPointCloud grows (see EPointCloud.AddPoint, EPointCloud.AddPoints and EPointCloud.AddPointCloud).

If the data type is not correct depending on the E3DAttribute, it throws an EException with an EError.EError_InvalidDataType.

◆ AllocateAttributeBufferE3DPoint()

void eVision.Easy3D.EPointCloud.AllocateAttributeBufferE3DPoint ( int attribute,
eVision.Easy3D.E3DPoint defaultValue )

Allocates an attribute buffer and fills it with defaultValue if the cloud is not empty.

Parameters
attributeThe attribute buffer id. Either an E3DAttribute or an id returned by AddCustomAttributeBufferXXX.
defaultValueThe value used to set the attribute when the EPointCloud grows (see EPointCloud.AddPoint, EPointCloud.AddPoints and EPointCloud.AddPointCloud).

If the data type is not correct depending on the E3DAttribute, it throws an EException with an EError.EError_InvalidDataType.

◆ AllocateAttributeBufferEC24A()

void eVision.Easy3D.EPointCloud.AllocateAttributeBufferEC24A ( int attribute,
eVision.EC24A defaultValue )

Allocates an attribute buffer and fills it with defaultValue if the cloud is not empty.

Parameters
attributeThe attribute buffer id. Either an E3DAttribute or an id returned by AddCustomAttributeBufferXXX.
defaultValueThe value used to set the attribute when the EPointCloud grows (see EPointCloud.AddPoint, EPointCloud.AddPoints and EPointCloud.AddPointCloud).

If the data type is not correct depending on the E3DAttribute, it throws an EException with an EError.EError_InvalidDataType.

◆ AllocateAttributeBufferFloat()

void eVision.Easy3D.EPointCloud.AllocateAttributeBufferFloat ( int attribute,
float defaultValue )

Allocates an attribute buffer and fills it with defaultValue if the cloud is not empty.

Parameters
attributeThe attribute buffer id. Either an E3DAttribute or an id returned by AddCustomAttributeBufferXXX.
defaultValueThe value used to set the attribute when the EPointCloud grows (see EPointCloud.AddPoint, EPointCloud.AddPoints and EPointCloud.AddPointCloud).

If the data type is not correct depending on the E3DAttribute, it throws an EException with an EError.EError_InvalidDataType.

◆ AllocateAttributeBufferInt32()

void eVision.Easy3D.EPointCloud.AllocateAttributeBufferInt32 ( int attribute,
int defaultValue )

Allocates an attribute buffer and fills it with defaultValue if the cloud is not empty.

Parameters
attributeThe attribute buffer id. Either an E3DAttribute or an id returned by AddCustomAttributeBufferXXX.
defaultValueThe value used to set the attribute when the EPointCloud grows (see EPointCloud.AddPoint, EPointCloud.AddPoints and EPointCloud.AddPointCloud).

If the data type is not correct depending on the E3DAttribute, it throws an EException with an EError.EError_InvalidDataType.

◆ AllocateAttributeBufferUInt16()

void eVision.Easy3D.EPointCloud.AllocateAttributeBufferUInt16 ( int attribute,
ushort defaultValue )

Allocates an attribute buffer and fills it with defaultValue if the cloud is not empty.

Parameters
attributeThe attribute buffer id. Either an E3DAttribute or an id returned by AddCustomAttributeBufferXXX.
defaultValueThe value used to set the attribute when the EPointCloud grows (see EPointCloud.AddPoint, EPointCloud.AddPoints and EPointCloud.AddPointCloud).

If the data type is not correct depending on the E3DAttribute, it throws an EException with an EError.EError_InvalidDataType.

◆ AllocateAttributeBufferUInt32()

void eVision.Easy3D.EPointCloud.AllocateAttributeBufferUInt32 ( int attribute,
uint defaultValue )

Allocates an attribute buffer and fills it with defaultValue if the cloud is not empty.

Parameters
attributeThe attribute buffer id. Either an E3DAttribute or an id returned by AddCustomAttributeBufferXXX.
defaultValueThe value used to set the attribute when the EPointCloud grows (see EPointCloud.AddPoint, EPointCloud.AddPoints and EPointCloud.AddPointCloud).

If the data type is not correct depending on the E3DAttribute, it throws an EException with an EError.EError_InvalidDataType.

◆ AllocateAttributeBufferUInt8()

void eVision.Easy3D.EPointCloud.AllocateAttributeBufferUInt8 ( int attribute,
byte defaultValue )

Allocates an attribute buffer and fills it with defaultValue if the cloud is not empty.

Parameters
attributeThe attribute buffer id. Either an E3DAttribute or an id returned by AddCustomAttributeBufferXXX.
defaultValueThe value used to set the attribute when the EPointCloud grows (see EPointCloud.AddPoint, EPointCloud.AddPoints and EPointCloud.AddPointCloud).

If the data type is not correct depending on the E3DAttribute, it throws an EException with an EError.EError_InvalidDataType.

◆ AllocateCustomAttributeBuffer() [1/8]

int eVision.Easy3D.EPointCloud.AllocateCustomAttributeBuffer ( byte defaultValue)

Allocates the data to the new custom attribute buffer and fills it with default values.

Parameters
defaultValueThe value used to set the attribute initially and when the EPointCloud grows (see EPointCloud.AddPoint, EPointCloud.AddPoints and EPointCloud.AddPointCloud).
Deprecated

Use EPointCloud.AllocateCustomAttributeBufferUInt8.

Deprecated in version 24.6. Scheduled to be removed in version 27.6.

◆ AllocateCustomAttributeBuffer() [2/8]

int eVision.Easy3D.EPointCloud.AllocateCustomAttributeBuffer ( double defaultValue)

Allocates the data to the new custom attribute buffer and fills it with default values.

Parameters
defaultValueThe value used to set the attribute initially and when the EPointCloud grows (see EPointCloud.AddPoint, EPointCloud.AddPoints and EPointCloud.AddPointCloud).
Deprecated

Use EPointCloud.AllocateCustomAttributeBufferDouble.

Deprecated in version 24.6. Scheduled to be removed in version 27.6.

◆ AllocateCustomAttributeBuffer() [3/8]

int eVision.Easy3D.EPointCloud.AllocateCustomAttributeBuffer ( eVision.Easy3D.E3DPoint defaultValue)

Allocates the data to the new custom attribute buffer and fills it with default values.

Parameters
defaultValueThe value used to set the attribute initially and when the EPointCloud grows (see EPointCloud.AddPoint, EPointCloud.AddPoints and EPointCloud.AddPointCloud).
Deprecated

Use EPointCloud.AllocateCustomAttributeBufferE3DPoint.

Deprecated in version 24.6. Scheduled to be removed in version 27.6.

◆ AllocateCustomAttributeBuffer() [4/8]

int eVision.Easy3D.EPointCloud.AllocateCustomAttributeBuffer ( eVision.EC24A defaultValue)

Allocates the data to the new custom attribute buffer and fills it with default values.

Parameters
defaultValueThe value used to set the attribute initially and when the EPointCloud grows (see EPointCloud.AddPoint, EPointCloud.AddPoints and EPointCloud.AddPointCloud).
Deprecated

Use EPointCloud.AllocateCustomAttributeBufferEC24A.

Deprecated in version 24.6. Scheduled to be removed in version 27.6.

◆ AllocateCustomAttributeBuffer() [5/8]

int eVision.Easy3D.EPointCloud.AllocateCustomAttributeBuffer ( float defaultValue)

Allocates the data to the new custom attribute buffer and fills it with default values.

Parameters
defaultValueThe value used to set the attribute initially and when the EPointCloud grows (see EPointCloud.AddPoint, EPointCloud.AddPoints and EPointCloud.AddPointCloud).
Deprecated

Use EPointCloud.AllocateCustomAttributeBufferFloat.

Deprecated in version 24.6. Scheduled to be removed in version 27.6.

◆ AllocateCustomAttributeBuffer() [6/8]

int eVision.Easy3D.EPointCloud.AllocateCustomAttributeBuffer ( int defaultValue)

Allocates the data to the new custom attribute buffer and fills it with default values.

Parameters
defaultValueThe value used to set the attribute initially and when the EPointCloud grows (see EPointCloud.AddPoint, EPointCloud.AddPoints and EPointCloud.AddPointCloud).
Deprecated

Use EPointCloud.AllocateCustomAttributeBufferInt32.

Deprecated in version 24.6. Scheduled to be removed in version 27.6.

◆ AllocateCustomAttributeBuffer() [7/8]

int eVision.Easy3D.EPointCloud.AllocateCustomAttributeBuffer ( uint defaultValue)

Allocates the data to the new custom attribute buffer and fills it with default values.

Parameters
defaultValueThe value used to set the attribute initially and when the EPointCloud grows (see EPointCloud.AddPoint, EPointCloud.AddPoints and EPointCloud.AddPointCloud).
Deprecated

Use EPointCloud.AllocateCustomAttributeBufferUInt32.

Deprecated in version 24.6. Scheduled to be removed in version 27.6.

◆ AllocateCustomAttributeBuffer() [8/8]

int eVision.Easy3D.EPointCloud.AllocateCustomAttributeBuffer ( ushort defaultValue)

Allocates the data to the new custom attribute buffer and fills it with default values.

Parameters
defaultValueThe value used to set the attribute initially and when the EPointCloud grows (see EPointCloud.AddPoint, EPointCloud.AddPoints and EPointCloud.AddPointCloud).
Deprecated

Use EPointCloud.AllocateCustomAttributeBufferUInt16.

Deprecated in version 24.6. Scheduled to be removed in version 27.6.

◆ AllocateCustomAttributeBufferDouble()

int eVision.Easy3D.EPointCloud.AllocateCustomAttributeBufferDouble ( double defaultValue)

Allocates the data to the new custom attribute buffer and fills it with default values.

Parameters
defaultValueThe value used to set the attribute initially and when the EPointCloud grows (see EPointCloud.AddPoint, EPointCloud.AddPoints and EPointCloud.AddPointCloud).

◆ AllocateCustomAttributeBufferE3DPoint()

int eVision.Easy3D.EPointCloud.AllocateCustomAttributeBufferE3DPoint ( eVision.Easy3D.E3DPoint defaultValue)

Allocates the data to the new custom attribute buffer and fills it with default values.

Parameters
defaultValueThe value used to set the attribute initially and when the EPointCloud grows (see EPointCloud.AddPoint, EPointCloud.AddPoints and EPointCloud.AddPointCloud).

◆ AllocateCustomAttributeBufferEC24A()

int eVision.Easy3D.EPointCloud.AllocateCustomAttributeBufferEC24A ( eVision.EC24A defaultValue)

Allocates the data to the new custom attribute buffer and fills it with default values.

Parameters
defaultValueThe value used to set the attribute initially and when the EPointCloud grows (see EPointCloud.AddPoint, EPointCloud.AddPoints and EPointCloud.AddPointCloud).

◆ AllocateCustomAttributeBufferFloat()

int eVision.Easy3D.EPointCloud.AllocateCustomAttributeBufferFloat ( float defaultValue)

Allocates the data to the new custom attribute buffer and fills it with default values.

Parameters
defaultValueThe value used to set the attribute initially and when the EPointCloud grows (see EPointCloud.AddPoint, EPointCloud.AddPoints and EPointCloud.AddPointCloud).

◆ AllocateCustomAttributeBufferInt32()

int eVision.Easy3D.EPointCloud.AllocateCustomAttributeBufferInt32 ( int defaultValue)

Allocates the data to the new custom attribute buffer and fills it with default values.

Parameters
defaultValueThe value used to set the attribute initially and when the EPointCloud grows (see EPointCloud.AddPoint, EPointCloud.AddPoints and EPointCloud.AddPointCloud).

◆ AllocateCustomAttributeBufferUInt16()

int eVision.Easy3D.EPointCloud.AllocateCustomAttributeBufferUInt16 ( ushort defaultValue)

Allocates the data to the new custom attribute buffer and fills it with default values.

Parameters
defaultValueThe value used to set the attribute initially and when the EPointCloud grows (see EPointCloud.AddPoint, EPointCloud.AddPoints and EPointCloud.AddPointCloud).

◆ AllocateCustomAttributeBufferUInt32()

int eVision.Easy3D.EPointCloud.AllocateCustomAttributeBufferUInt32 ( uint defaultValue)

Allocates the data to the new custom attribute buffer and fills it with default values.

Parameters
defaultValueThe value used to set the attribute initially and when the EPointCloud grows (see EPointCloud.AddPoint, EPointCloud.AddPoints and EPointCloud.AddPointCloud).

◆ AllocateCustomAttributeBufferUInt8()

int eVision.Easy3D.EPointCloud.AllocateCustomAttributeBufferUInt8 ( byte defaultValue)

Allocates the data to the new custom attribute buffer and fills it with default values.

Parameters
defaultValueThe value used to set the attribute initially and when the EPointCloud grows (see EPointCloud.AddPoint, EPointCloud.AddPoints and EPointCloud.AddPointCloud).

◆ Clear()

void eVision.Easy3D.EPointCloud.Clear ( )

Empties the EPointCloud.

◆ ClearAttributeBuffer()

void eVision.Easy3D.EPointCloud.ClearAttributeBuffer ( int attribute)

Empties the attribute buffer.

Parameters
attributeThe attribute buffer id. Either an E3DAttribute or an id returned by AddCustomAttributeBufferXXX.

If the attribute buffer was a custom attribute, the id is not valid after the call to the method as the buffer will have been deallocated.

◆ ClosestPointToLine()

eVision.Easy3D.E3DClosestPoint eVision.Easy3D.EPointCloud.ClosestPointToLine ( eVision.Easy3D.E3DPoint origin,
eVision.Easy3D.E3DPoint end )

Returns the closest point, its index and the distance between the EPointCloud and a line represented by 2 E3DPoint.

Parameters
originOne endpoint of the line.
endThe other endpoint of the line.

◆ ClosestPointToSegment()

eVision.Easy3D.E3DClosestPoint eVision.Easy3D.EPointCloud.ClosestPointToSegment ( eVision.Easy3D.E3DPoint origin,
eVision.Easy3D.E3DPoint end )

Returns the closest point, its index and the distance between the EPointCloud and a segment represented by 2 E3DPoint.

Parameters
originOne endpoint of the segment.
endThe other endpoint of the segment.

◆ ComputeNormalsAndCurvatures() [1/3]

void eVision.Easy3D.EPointCloud.ComputeNormalsAndCurvatures ( )

Compute the normals of the cloud's points by fitting a plane on the 10 neighbors points. This method does not allow to compute the sign of the normals (we can't determine if a normal is x,y,z or -x,-y,-z).

The curvatures of the points will be computed when the computeCurvatures argument is set to true.

The normals are stored in the E3DAttribute.E3DAttribute_Normal attribute buffer and the curvatures in the E3DAttribute.E3DAttribute_Curvature attribute buffer (if requested).

◆ ComputeNormalsAndCurvatures() [2/3]

void eVision.Easy3D.EPointCloud.ComputeNormalsAndCurvatures ( bool computeCurvatures)

Compute the normals of the cloud's points by fitting a plane on the 10 neighbors points. This method does not allow to compute the sign of the normals (we can't determine if a normal is x,y,z or -x,-y,-z).

The curvatures of the points will be computed when the computeCurvatures argument is set to true.

Parameters
computeCurvaturesSet to true to compute the local curvatures (numbers between 0 for a plane and 1/3 for random noise) of each point as well.

The normals are stored in the E3DAttribute.E3DAttribute_Normal attribute buffer and the curvatures in the E3DAttribute.E3DAttribute_Curvature attribute buffer (if requested).

◆ ComputeNormalsAndCurvatures() [3/3]

void eVision.Easy3D.EPointCloud.ComputeNormalsAndCurvatures ( bool computeCurvatures,
uint nbAdditionalNeighborsForCurvatures )

Compute the normals of the cloud's points by fitting a plane on the 10 neighbors points. This method does not allow to compute the sign of the normals (we can't determine if a normal is x,y,z or -x,-y,-z).

The curvatures of the points will be computed when the computeCurvatures argument is set to true.

Parameters
computeCurvaturesSet to true to compute the local curvatures (numbers between 0 for a plane and 1/3 for random noise) of each point as well.
nbAdditionalNeighborsForCurvaturesEach curvature is computed using 10 + nbAdditionalNeighborsForCurvatures points.

The normals are stored in the E3DAttribute.E3DAttribute_Normal attribute buffer and the curvatures in the E3DAttribute.E3DAttribute_Curvature attribute buffer (if requested).

◆ ComputePlaneBehind() [1/2]

eVision.Easy3D.E3DPlane eVision.Easy3D.EPointCloud.ComputePlaneBehind ( eVision.Easy3D.E3DPoint normal)

Returns the E3DPlane with given normal on which the EPointCloud lays. This is useful when projecting an EPointCloud on an EZMap.

Parameters
normalThe normal of the plane.

◆ ComputePlaneBehind() [2/2]

eVision.Easy3D.E3DPlane eVision.Easy3D.EPointCloud.ComputePlaneBehind ( eVision.Easy3D.E3DPoint normal,
float margin )

Returns the E3DPlane with given normal on which the EPointCloud lays. This is useful when projecting an EPointCloud on an EZMap.

Parameters
normalThe normal of the plane.
marginLet P be the plane, A point of the EPointCloud closest to P and B the point of the EPointCloud furthest to P. margin = dist(P, A) / dist(P, B). Must be positive. Default: 0.02.

◆ CopyAllAttributesTo()

void eVision.Easy3D.EPointCloud.CopyAllAttributesTo ( eVision.Easy3D.EPointCloud dstCloud,
uint dstIndex,
uint srcIndex )

Copies all attributes at a given index from one EPointCloud to another one.

Parameters
dstCloudThe EPointCloud where the attributes are copied.
dstIndexThe index of the destination EPointCloud.
srcIndexThe index of the source EPointCloud.

An attribute is copied only if both attribute buffers are initialized. If both attribute types are not the same, then a conversion is done (if possible). This function does not perform an allocation. To add a new point with all its attributes to another EPointCloud, use function EPointCloud.AddPointAndAttributesTo.

◆ DistanceToLine() [1/2]

float eVision.Easy3D.EPointCloud.DistanceToLine ( eVision.Easy3D.E3DPoint origin,
eVision.Easy3D.E3DPoint end )

Returns the shortest distance between an E3DPoint of the EPointCloud and a line represented by 2 E3DPoint.

Parameters
originOne point of the line.
endThe other point of the line.

◆ DistanceToLine() [2/2]

float eVision.Easy3D.EPointCloud.DistanceToLine ( eVision.Easy3D.E3DPoint origin,
eVision.Easy3D.E3DPoint end,
out eVision.Easy3D.E3DPoint closest,
out int closestIndex )

Returns the shortest distance between an E3DPoint of the EPointCloud and a line represented by 2 E3DPoint.

Parameters
originOne point of the line.
endThe other point of the line.
closestWhere the closest point will be stored.
closestIndexWhere the index of the closest point will be stored.
Deprecated

Use EPointCloud.ClosestPointToLine instead.

Deprecated in version 24.2. Scheduled to be removed in version 27.6.

◆ DistanceToSegment() [1/2]

float eVision.Easy3D.EPointCloud.DistanceToSegment ( eVision.Easy3D.E3DPoint origin,
eVision.Easy3D.E3DPoint end )

Returns the shortest distance between an E3DPoint of the EPointCloud and a segment represented by 2 E3DPoint.

Parameters
originOne endpoint of the segment.
endThe other endpoint of the segment.

◆ DistanceToSegment() [2/2]

float eVision.Easy3D.EPointCloud.DistanceToSegment ( eVision.Easy3D.E3DPoint origin,
eVision.Easy3D.E3DPoint end,
out eVision.Easy3D.E3DPoint closest,
out int closestIndex )

Returns the shortest distance between an E3DPoint of the EPointCloud and a segment represented by 2 E3DPoint.

Parameters
originOne endpoint of the segment.
endThe other endpoint of the segment.
closestWhere the closest point will be stored.
closestIndexWhere the index of the closest point will be stored.
Deprecated

Use EPointCloud.ClosestPointToSegment instead.

Deprecated in version 24.2. Scheduled to be removed in version 27.6.

◆ FillAttributeBuffer() [1/16]

void eVision.Easy3D.EPointCloud.FillAttributeBuffer ( int attribute,
byte[] data )

Allocates and copies the data to the attribute buffer.

Parameters
attributeThe attribute buffer id. Either an E3DAttribute or an id returned by AddCustomAttributeBufferXXX.
dataThe address of the external attribute buffer. The buffer should be of the same length as the EPointCloud (see EPointCloud.NumPoints).

If the data type is not correct depending on the E3DAttribute, it throws an EException with an EError.EError_InvalidDataType. An exception is also thrown if data is nullptr, if you don't want to specify the data, use AllocateAttributeBufferXXX.

Deprecated

Use EPointCloud.FillAttributeBufferUInt8.

Deprecated in version 24.6. Scheduled to be removed in version 27.6.

◆ FillAttributeBuffer() [2/16]

void eVision.Easy3D.EPointCloud.FillAttributeBuffer ( int attribute,
byte[] data,
byte defaultValue )

Allocates and copies the data to the attribute buffer.

Parameters
attributeThe attribute buffer id. Either an E3DAttribute or an id returned by AddCustomAttributeBufferXXX.
dataThe address of the external attribute buffer. The buffer should be of the same length as the EPointCloud (see EPointCloud.NumPoints).
defaultValueThe value used to set the attribute when the EPointCloud grows (see EPointCloud.AddPoint, EPointCloud.AddPoints and EPointCloud.AddPointCloud).

If the data type is not correct depending on the E3DAttribute, it throws an EException with an EError.EError_InvalidDataType. An exception is also thrown if data is nullptr, if you don't want to specify the data, use AllocateAttributeBufferXXX.

Deprecated

Use EPointCloud.FillAttributeBufferUInt8.

Deprecated in version 24.6. Scheduled to be removed in version 27.6.

◆ FillAttributeBuffer() [3/16]

void eVision.Easy3D.EPointCloud.FillAttributeBuffer ( int attribute,
double[] data )

Allocates and copies the data to the attribute buffer.

Parameters
attributeThe attribute buffer id. Either an E3DAttribute or an id returned by AddCustomAttributeBufferXXX.
dataThe address of the external attribute buffer. The buffer should be of the same length as the EPointCloud (see EPointCloud.NumPoints).

If the data type is not correct depending on the E3DAttribute, it throws an EException with an EError.EError_InvalidDataType. An exception is also thrown if data is nullptr, if you don't want to specify the data, use AllocateAttributeBufferXXX.

Deprecated

Use EPointCloud.FillAttributeBufferDouble.

Deprecated in version 24.6. Scheduled to be removed in version 27.6.

◆ FillAttributeBuffer() [4/16]

void eVision.Easy3D.EPointCloud.FillAttributeBuffer ( int attribute,
double[] data,
double defaultValue )

Allocates and copies the data to the attribute buffer.

Parameters
attributeThe attribute buffer id. Either an E3DAttribute or an id returned by AddCustomAttributeBufferXXX.
dataThe address of the external attribute buffer. The buffer should be of the same length as the EPointCloud (see EPointCloud.NumPoints).
defaultValueThe value used to set the attribute when the EPointCloud grows (see EPointCloud.AddPoint, EPointCloud.AddPoints and EPointCloud.AddPointCloud).

If the data type is not correct depending on the E3DAttribute, it throws an EException with an EError.EError_InvalidDataType. An exception is also thrown if data is nullptr, if you don't want to specify the data, use AllocateAttributeBufferXXX.

Deprecated

Use EPointCloud.FillAttributeBufferDouble.

Deprecated in version 24.6. Scheduled to be removed in version 27.6.

◆ FillAttributeBuffer() [5/16]

void eVision.Easy3D.EPointCloud.FillAttributeBuffer ( int attribute,
eVision.Easy3D.E3DPoint[] data )

Allocates and copies the data to the attribute buffer.

Parameters
attributeThe attribute buffer id. Either an E3DAttribute or an id returned by AddCustomAttributeBufferXXX.
dataThe address of the external attribute buffer. The buffer should be of the same length as the EPointCloud (see EPointCloud.NumPoints).

If the data type is not correct depending on the E3DAttribute, it throws an EException with an EError.EError_InvalidDataType. An exception is also thrown if data is nullptr, if you don't want to specify the data, use AllocateAttributeBufferXXX.

Deprecated

Use EPointCloud.FillAttributeBufferE3DPoint.

Deprecated in version 24.6. Scheduled to be removed in version 27.6.

◆ FillAttributeBuffer() [6/16]

void eVision.Easy3D.EPointCloud.FillAttributeBuffer ( int attribute,
eVision.Easy3D.E3DPoint[] data,
eVision.Easy3D.E3DPoint defaultValue )

Allocates and copies the data to the attribute buffer.

Parameters
attributeThe attribute buffer id. Either an E3DAttribute or an id returned by AddCustomAttributeBufferXXX.
dataThe address of the external attribute buffer. The buffer should be of the same length as the EPointCloud (see EPointCloud.NumPoints).
defaultValueThe value used to set the attribute when the EPointCloud grows (see EPointCloud.AddPoint, EPointCloud.AddPoints and EPointCloud.AddPointCloud).

If the data type is not correct depending on the E3DAttribute, it throws an EException with an EError.EError_InvalidDataType. An exception is also thrown if data is nullptr, if you don't want to specify the data, use AllocateAttributeBufferXXX.

Deprecated

Use EPointCloud.FillAttributeBufferE3DPoint.

Deprecated in version 24.6. Scheduled to be removed in version 27.6.

◆ FillAttributeBuffer() [7/16]

void eVision.Easy3D.EPointCloud.FillAttributeBuffer ( int attribute,
eVision.EC24A[] data )

Allocates and copies the data to the attribute buffer.

Parameters
attributeThe attribute buffer id. Either an E3DAttribute or an id returned by AddCustomAttributeBufferXXX.
dataThe address of the external attribute buffer. The buffer should be of the same length as the EPointCloud (see EPointCloud.NumPoints).

If the data type is not correct depending on the E3DAttribute, it throws an EException with an EError.EError_InvalidDataType. An exception is also thrown if data is nullptr, if you don't want to specify the data, use AllocateAttributeBufferXXX.

Deprecated

Use EPointCloud.FillAttributeBufferEC24A.

Deprecated in version 24.6. Scheduled to be removed in version 27.6.

◆ FillAttributeBuffer() [8/16]

void eVision.Easy3D.EPointCloud.FillAttributeBuffer ( int attribute,
eVision.EC24A[] data,
eVision.EC24A defaultValue )

Allocates and copies the data to the attribute buffer.

Parameters
attributeThe attribute buffer id. Either an E3DAttribute or an id returned by AddCustomAttributeBufferXXX.
dataThe address of the external attribute buffer. The buffer should be of the same length as the EPointCloud (see EPointCloud.NumPoints).
defaultValueThe value used to set the attribute when the EPointCloud grows (see EPointCloud.AddPoint, EPointCloud.AddPoints and EPointCloud.AddPointCloud).

If the data type is not correct depending on the E3DAttribute, it throws an EException with an EError.EError_InvalidDataType. An exception is also thrown if data is nullptr, if you don't want to specify the data, use AllocateAttributeBufferXXX.

Deprecated

Use EPointCloud.FillAttributeBufferEC24A.

Deprecated in version 24.6. Scheduled to be removed in version 27.6.

◆ FillAttributeBuffer() [9/16]

void eVision.Easy3D.EPointCloud.FillAttributeBuffer ( int attribute,
float[] data )

Allocates and copies the data to the attribute buffer.

Parameters
attributeThe attribute buffer id. Either an E3DAttribute or an id returned by AddCustomAttributeBufferXXX.
dataThe address of the external attribute buffer. The buffer should be of the same length as the EPointCloud (see EPointCloud.NumPoints).

If the data type is not correct depending on the E3DAttribute, it throws an EException with an EError.EError_InvalidDataType. An exception is also thrown if data is nullptr, if you don't want to specify the data, use AllocateAttributeBufferXXX.

Deprecated

Use EPointCloud.FillAttributeBufferFloat.

Deprecated in version 24.6. Scheduled to be removed in version 27.6.

◆ FillAttributeBuffer() [10/16]

void eVision.Easy3D.EPointCloud.FillAttributeBuffer ( int attribute,
float[] data,
float defaultValue )

Allocates and copies the data to the attribute buffer.

Parameters
attributeThe attribute buffer id. Either an E3DAttribute or an id returned by AddCustomAttributeBufferXXX.
dataThe address of the external attribute buffer. The buffer should be of the same length as the EPointCloud (see EPointCloud.NumPoints).
defaultValueThe value used to set the attribute when the EPointCloud grows (see EPointCloud.AddPoint, EPointCloud.AddPoints and EPointCloud.AddPointCloud).

If the data type is not correct depending on the E3DAttribute, it throws an EException with an EError.EError_InvalidDataType. An exception is also thrown if data is nullptr, if you don't want to specify the data, use AllocateAttributeBufferXXX.

Deprecated

Use EPointCloud.FillAttributeBufferFloat.

Deprecated in version 24.6. Scheduled to be removed in version 27.6.

◆ FillAttributeBuffer() [11/16]

void eVision.Easy3D.EPointCloud.FillAttributeBuffer ( int attribute,
int[] data )

Allocates and copies the data to the attribute buffer.

Parameters
attributeThe attribute buffer id. Either an E3DAttribute or an id returned by AddCustomAttributeBufferXXX.
dataThe address of the external attribute buffer. The buffer should be of the same length as the EPointCloud (see EPointCloud.NumPoints).

If the data type is not correct depending on the E3DAttribute, it throws an EException with an EError.EError_InvalidDataType. An exception is also thrown if data is nullptr, if you don't want to specify the data, use AllocateAttributeBufferXXX.

Deprecated

Use EPointCloud.FillAttributeBufferInt32.

Deprecated in version 24.6. Scheduled to be removed in version 27.6.

◆ FillAttributeBuffer() [12/16]

void eVision.Easy3D.EPointCloud.FillAttributeBuffer ( int attribute,
int[] data,
int defaultValue )

Allocates and copies the data to the attribute buffer.

Parameters
attributeThe attribute buffer id. Either an E3DAttribute or an id returned by AddCustomAttributeBufferXXX.
dataThe address of the external attribute buffer. The buffer should be of the same length as the EPointCloud (see EPointCloud.NumPoints).
defaultValueThe value used to set the attribute when the EPointCloud grows (see EPointCloud.AddPoint, EPointCloud.AddPoints and EPointCloud.AddPointCloud).

If the data type is not correct depending on the E3DAttribute, it throws an EException with an EError.EError_InvalidDataType. An exception is also thrown if data is nullptr, if you don't want to specify the data, use AllocateAttributeBufferXXX.

Deprecated

Use EPointCloud.FillAttributeBufferInt32.

Deprecated in version 24.6. Scheduled to be removed in version 27.6.

◆ FillAttributeBuffer() [13/16]

void eVision.Easy3D.EPointCloud.FillAttributeBuffer ( int attribute,
uint[] data )

Allocates and copies the data to the attribute buffer.

Parameters
attributeThe attribute buffer id. Either an E3DAttribute or an id returned by AddCustomAttributeBufferXXX.
dataThe address of the external attribute buffer. The buffer should be of the same length as the EPointCloud (see EPointCloud.NumPoints).

If the data type is not correct depending on the E3DAttribute, it throws an EException with an EError.EError_InvalidDataType. An exception is also thrown if data is nullptr, if you don't want to specify the data, use AllocateAttributeBufferXXX.

Deprecated

Use EPointCloud.FillAttributeBufferUInt32.

Deprecated in version 24.6. Scheduled to be removed in version 27.6.

◆ FillAttributeBuffer() [14/16]

void eVision.Easy3D.EPointCloud.FillAttributeBuffer ( int attribute,
uint[] data,
uint defaultValue )

Allocates and copies the data to the attribute buffer.

Parameters
attributeThe attribute buffer id. Either an E3DAttribute or an id returned by AddCustomAttributeBufferXXX.
dataThe address of the external attribute buffer. The buffer should be of the same length as the EPointCloud (see EPointCloud.NumPoints).
defaultValueThe value used to set the attribute when the EPointCloud grows (see EPointCloud.AddPoint, EPointCloud.AddPoints and EPointCloud.AddPointCloud).

If the data type is not correct depending on the E3DAttribute, it throws an EException with an EError.EError_InvalidDataType. An exception is also thrown if data is nullptr, if you don't want to specify the data, use AllocateAttributeBufferXXX.

Deprecated

Use EPointCloud.FillAttributeBufferUInt32.

Deprecated in version 24.6. Scheduled to be removed in version 27.6.

◆ FillAttributeBuffer() [15/16]

void eVision.Easy3D.EPointCloud.FillAttributeBuffer ( int attribute,
ushort[] data )

Allocates and copies the data to the attribute buffer.

Parameters
attributeThe attribute buffer id. Either an E3DAttribute or an id returned by AddCustomAttributeBufferXXX.
dataThe address of the external attribute buffer. The buffer should be of the same length as the EPointCloud (see EPointCloud.NumPoints).

If the data type is not correct depending on the E3DAttribute, it throws an EException with an EError.EError_InvalidDataType. An exception is also thrown if data is nullptr, if you don't want to specify the data, use AllocateAttributeBufferXXX.

Deprecated

Use EPointCloud.FillAttributeBufferUInt16.

Deprecated in version 24.6. Scheduled to be removed in version 27.6.

◆ FillAttributeBuffer() [16/16]

void eVision.Easy3D.EPointCloud.FillAttributeBuffer ( int attribute,
ushort[] data,
ushort defaultValue )

Allocates and copies the data to the attribute buffer.

Parameters
attributeThe attribute buffer id. Either an E3DAttribute or an id returned by AddCustomAttributeBufferXXX.
dataThe address of the external attribute buffer. The buffer should be of the same length as the EPointCloud (see EPointCloud.NumPoints).
defaultValueThe value used to set the attribute when the EPointCloud grows (see EPointCloud.AddPoint, EPointCloud.AddPoints and EPointCloud.AddPointCloud).

If the data type is not correct depending on the E3DAttribute, it throws an EException with an EError.EError_InvalidDataType. An exception is also thrown if data is nullptr, if you don't want to specify the data, use AllocateAttributeBufferXXX.

Deprecated

Use EPointCloud.FillAttributeBufferUInt16.

Deprecated in version 24.6. Scheduled to be removed in version 27.6.

◆ FillAttributeBufferDouble() [1/2]

void eVision.Easy3D.EPointCloud.FillAttributeBufferDouble ( int attribute,
double[] data )

Allocates and copies the data to the attribute buffer.

Parameters
attributeThe attribute buffer id. Either an E3DAttribute or an id returned by AddCustomAttributeBufferXXX.
dataThe address of the external attribute buffer. The buffer should be of the same length as the EPointCloud (see EPointCloud.NumPoints).

If the data type is not correct depending on the E3DAttribute, it throws an EException with an EError.EError_InvalidDataType. An exception is also thrown if data is nullptr, if you don't want to specify the data, use AllocateAttributeBufferXXX.

◆ FillAttributeBufferDouble() [2/2]

void eVision.Easy3D.EPointCloud.FillAttributeBufferDouble ( int attribute,
double[] data,
double defaultValue )

Allocates and copies the data to the attribute buffer.

Parameters
attributeThe attribute buffer id. Either an E3DAttribute or an id returned by AddCustomAttributeBufferXXX.
dataThe address of the external attribute buffer. The buffer should be of the same length as the EPointCloud (see EPointCloud.NumPoints).
defaultValueThe value used to set the attribute when the EPointCloud grows (see EPointCloud.AddPoint, EPointCloud.AddPoints and EPointCloud.AddPointCloud).

If the data type is not correct depending on the E3DAttribute, it throws an EException with an EError.EError_InvalidDataType. An exception is also thrown if data is nullptr, if you don't want to specify the data, use AllocateAttributeBufferXXX.

◆ FillAttributeBufferE3DPoint() [1/2]

void eVision.Easy3D.EPointCloud.FillAttributeBufferE3DPoint ( int attribute,
eVision.Easy3D.E3DPoint[] data )

Allocates and copies the data to the attribute buffer.

Parameters
attributeThe attribute buffer id. Either an E3DAttribute or an id returned by AddCustomAttributeBufferXXX.
dataThe address of the external attribute buffer. The buffer should be of the same length as the EPointCloud (see EPointCloud.NumPoints).

If the data type is not correct depending on the E3DAttribute, it throws an EException with an EError.EError_InvalidDataType. An exception is also thrown if data is nullptr, if you don't want to specify the data, use AllocateAttributeBufferXXX.

◆ FillAttributeBufferE3DPoint() [2/2]

void eVision.Easy3D.EPointCloud.FillAttributeBufferE3DPoint ( int attribute,
eVision.Easy3D.E3DPoint[] data,
eVision.Easy3D.E3DPoint defaultValue )

Allocates and copies the data to the attribute buffer.

Parameters
attributeThe attribute buffer id. Either an E3DAttribute or an id returned by AddCustomAttributeBufferXXX.
dataThe address of the external attribute buffer. The buffer should be of the same length as the EPointCloud (see EPointCloud.NumPoints).
defaultValueThe value used to set the attribute when the EPointCloud grows (see EPointCloud.AddPoint, EPointCloud.AddPoints and EPointCloud.AddPointCloud).

If the data type is not correct depending on the E3DAttribute, it throws an EException with an EError.EError_InvalidDataType. An exception is also thrown if data is nullptr, if you don't want to specify the data, use AllocateAttributeBufferXXX.

◆ FillAttributeBufferEC24A() [1/2]

void eVision.Easy3D.EPointCloud.FillAttributeBufferEC24A ( int attribute,
eVision.EC24A[] data )

Allocates and copies the data to the attribute buffer.

Parameters
attributeThe attribute buffer id. Either an E3DAttribute or an id returned by AddCustomAttributeBufferXXX.
dataThe address of the external attribute buffer. The buffer should be of the same length as the EPointCloud (see EPointCloud.NumPoints).

If the data type is not correct depending on the E3DAttribute, it throws an EException with an EError.EError_InvalidDataType. An exception is also thrown if data is nullptr, if you don't want to specify the data, use AllocateAttributeBufferXXX.

◆ FillAttributeBufferEC24A() [2/2]

void eVision.Easy3D.EPointCloud.FillAttributeBufferEC24A ( int attribute,
eVision.EC24A[] data,
eVision.EC24A defaultValue )

Allocates and copies the data to the attribute buffer.

Parameters
attributeThe attribute buffer id. Either an E3DAttribute or an id returned by AddCustomAttributeBufferXXX.
dataThe address of the external attribute buffer. The buffer should be of the same length as the EPointCloud (see EPointCloud.NumPoints).
defaultValueThe value used to set the attribute when the EPointCloud grows (see EPointCloud.AddPoint, EPointCloud.AddPoints and EPointCloud.AddPointCloud).

If the data type is not correct depending on the E3DAttribute, it throws an EException with an EError.EError_InvalidDataType. An exception is also thrown if data is nullptr, if you don't want to specify the data, use AllocateAttributeBufferXXX.

◆ FillAttributeBufferFloat() [1/2]

void eVision.Easy3D.EPointCloud.FillAttributeBufferFloat ( int attribute,
float[] data )

Allocates and copies the data to the attribute buffer.

Parameters
attributeThe attribute buffer id. Either an E3DAttribute or an id returned by AddCustomAttributeBufferXXX.
dataThe address of the external attribute buffer. The buffer should be of the same length as the EPointCloud (see EPointCloud.NumPoints).

If the data type is not correct depending on the E3DAttribute, it throws an EException with an EError.EError_InvalidDataType. An exception is also thrown if data is nullptr, if you don't want to specify the data, use AllocateAttributeBufferXXX.

◆ FillAttributeBufferFloat() [2/2]

void eVision.Easy3D.EPointCloud.FillAttributeBufferFloat ( int attribute,
float[] data,
float defaultValue )

Allocates and copies the data to the attribute buffer.

Parameters
attributeThe attribute buffer id. Either an E3DAttribute or an id returned by AddCustomAttributeBufferXXX.
dataThe address of the external attribute buffer. The buffer should be of the same length as the EPointCloud (see EPointCloud.NumPoints).
defaultValueThe value used to set the attribute when the EPointCloud grows (see EPointCloud.AddPoint, EPointCloud.AddPoints and EPointCloud.AddPointCloud).

If the data type is not correct depending on the E3DAttribute, it throws an EException with an EError.EError_InvalidDataType. An exception is also thrown if data is nullptr, if you don't want to specify the data, use AllocateAttributeBufferXXX.

◆ FillAttributeBufferInt32() [1/2]

void eVision.Easy3D.EPointCloud.FillAttributeBufferInt32 ( int attribute,
int[] data )

Allocates and copies the data to the attribute buffer.

Parameters
attributeThe attribute buffer id. Either an E3DAttribute or an id returned by AddCustomAttributeBufferXXX.
dataThe address of the external attribute buffer. The buffer should be of the same length as the EPointCloud (see EPointCloud.NumPoints).

If the data type is not correct depending on the E3DAttribute, it throws an EException with an EError.EError_InvalidDataType. An exception is also thrown if data is nullptr, if you don't want to specify the data, use AllocateAttributeBufferXXX.

◆ FillAttributeBufferInt32() [2/2]

void eVision.Easy3D.EPointCloud.FillAttributeBufferInt32 ( int attribute,
int[] data,
int defaultValue )

Allocates and copies the data to the attribute buffer.

Parameters
attributeThe attribute buffer id. Either an E3DAttribute or an id returned by AddCustomAttributeBufferXXX.
dataThe address of the external attribute buffer. The buffer should be of the same length as the EPointCloud (see EPointCloud.NumPoints).
defaultValueThe value used to set the attribute when the EPointCloud grows (see EPointCloud.AddPoint, EPointCloud.AddPoints and EPointCloud.AddPointCloud).

If the data type is not correct depending on the E3DAttribute, it throws an EException with an EError.EError_InvalidDataType. An exception is also thrown if data is nullptr, if you don't want to specify the data, use AllocateAttributeBufferXXX.

◆ FillAttributeBufferUInt16() [1/2]

void eVision.Easy3D.EPointCloud.FillAttributeBufferUInt16 ( int attribute,
ushort[] data )

Allocates and copies the data to the attribute buffer.

Parameters
attributeThe attribute buffer id. Either an E3DAttribute or an id returned by AddCustomAttributeBufferXXX.
dataThe address of the external attribute buffer. The buffer should be of the same length as the EPointCloud (see EPointCloud.NumPoints).

If the data type is not correct depending on the E3DAttribute, it throws an EException with an EError.EError_InvalidDataType. An exception is also thrown if data is nullptr, if you don't want to specify the data, use AllocateAttributeBufferXXX.

◆ FillAttributeBufferUInt16() [2/2]

void eVision.Easy3D.EPointCloud.FillAttributeBufferUInt16 ( int attribute,
ushort[] data,
ushort defaultValue )

Allocates and copies the data to the attribute buffer.

Parameters
attributeThe attribute buffer id. Either an E3DAttribute or an id returned by AddCustomAttributeBufferXXX.
dataThe address of the external attribute buffer. The buffer should be of the same length as the EPointCloud (see EPointCloud.NumPoints).
defaultValueThe value used to set the attribute when the EPointCloud grows (see EPointCloud.AddPoint, EPointCloud.AddPoints and EPointCloud.AddPointCloud).

If the data type is not correct depending on the E3DAttribute, it throws an EException with an EError.EError_InvalidDataType. An exception is also thrown if data is nullptr, if you don't want to specify the data, use AllocateAttributeBufferXXX.

◆ FillAttributeBufferUInt32() [1/2]

void eVision.Easy3D.EPointCloud.FillAttributeBufferUInt32 ( int attribute,
uint[] data )

Allocates and copies the data to the attribute buffer.

Parameters
attributeThe attribute buffer id. Either an E3DAttribute or an id returned by AddCustomAttributeBufferXXX.
dataThe address of the external attribute buffer. The buffer should be of the same length as the EPointCloud (see EPointCloud.NumPoints).

If the data type is not correct depending on the E3DAttribute, it throws an EException with an EError.EError_InvalidDataType. An exception is also thrown if data is nullptr, if you don't want to specify the data, use AllocateAttributeBufferXXX.

◆ FillAttributeBufferUInt32() [2/2]

void eVision.Easy3D.EPointCloud.FillAttributeBufferUInt32 ( int attribute,
uint[] data,
uint defaultValue )

Allocates and copies the data to the attribute buffer.

Parameters
attributeThe attribute buffer id. Either an E3DAttribute or an id returned by AddCustomAttributeBufferXXX.
dataThe address of the external attribute buffer. The buffer should be of the same length as the EPointCloud (see EPointCloud.NumPoints).
defaultValueThe value used to set the attribute when the EPointCloud grows (see EPointCloud.AddPoint, EPointCloud.AddPoints and EPointCloud.AddPointCloud).

If the data type is not correct depending on the E3DAttribute, it throws an EException with an EError.EError_InvalidDataType. An exception is also thrown if data is nullptr, if you don't want to specify the data, use AllocateAttributeBufferXXX.

◆ FillAttributeBufferUInt8() [1/2]

void eVision.Easy3D.EPointCloud.FillAttributeBufferUInt8 ( int attribute,
byte[] data )

Allocates and copies the data to the attribute buffer.

Parameters
attributeThe attribute buffer id. Either an E3DAttribute or an id returned by AddCustomAttributeBufferXXX.
dataThe address of the external attribute buffer. The buffer should be of the same length as the EPointCloud (see EPointCloud.NumPoints).

If the data type is not correct depending on the E3DAttribute, it throws an EException with an EError.EError_InvalidDataType. An exception is also thrown if data is nullptr, if you don't want to specify the data, use AllocateAttributeBufferXXX.

◆ FillAttributeBufferUInt8() [2/2]

void eVision.Easy3D.EPointCloud.FillAttributeBufferUInt8 ( int attribute,
byte[] data,
byte defaultValue )

Allocates and copies the data to the attribute buffer.

Parameters
attributeThe attribute buffer id. Either an E3DAttribute or an id returned by AddCustomAttributeBufferXXX.
dataThe address of the external attribute buffer. The buffer should be of the same length as the EPointCloud (see EPointCloud.NumPoints).
defaultValueThe value used to set the attribute when the EPointCloud grows (see EPointCloud.AddPoint, EPointCloud.AddPoints and EPointCloud.AddPointCloud).

If the data type is not correct depending on the E3DAttribute, it throws an EException with an EError.EError_InvalidDataType. An exception is also thrown if data is nullptr, if you don't want to specify the data, use AllocateAttributeBufferXXX.

◆ FillPointsBuffer()

void eVision.Easy3D.EPointCloud.FillPointsBuffer ( IntPtr pointsBuffer,
int numPoints )

Copies an external points buffer into the internal points buffer.

Parameters
pointsBufferAddress of the external points buffer.
numPointsNumber of points in the external points buffer.

The buffer must contain points in the form of triplets of 32bits floats stored in the (X,Y,Z) order. The points that contain nan or inf values are not copied.

◆ GetAttribute() [1/8]

void eVision.Easy3D.EPointCloud.GetAttribute ( int attribute,
uint index,
out byte value )

Retrieve the value of an attribute.

Parameters
attributeThe attribute buffer id. Either an E3DAttribute or an id returned by AddCustomAttributeBufferXXX.
indexThe index of the element.
valueWhere the attribute value will be stored.

If the attribute has not been initialized or if the index is out of bound, it throws an EException.

Deprecated

Use EPointCloud.GetAttributeUInt8 instead.

Deprecated in version 24.2. Scheduled to be removed in version 27.6.

◆ GetAttribute() [2/8]

void eVision.Easy3D.EPointCloud.GetAttribute ( int attribute,
uint index,
out double value )

Retrieve the value of an attribute.

Parameters
attributeThe attribute buffer id. Either an E3DAttribute or an id returned by AddCustomAttributeBufferXXX.
indexThe index of the element.
valueWhere the attribute value will be stored.

If the attribute has not been initialized or if the index is out of bound, it throws an EException.

Deprecated

Use EPointCloud.GetAttributeDouble instead.

Deprecated in version 24.2. Scheduled to be removed in version 27.6.

◆ GetAttribute() [3/8]

void eVision.Easy3D.EPointCloud.GetAttribute ( int attribute,
uint index,
out eVision.Easy3D.E3DPoint value )

Retrieve the value of an attribute.

Parameters
attributeThe attribute buffer id. Either an E3DAttribute or an id returned by AddCustomAttributeBufferXXX.
indexThe index of the element.
valueWhere the attribute value will be stored.

If the attribute has not been initialized or if the index is out of bound, it throws an EException.

Deprecated

Use EPointCloud.GetAttributeE3DPoint instead.

Deprecated in version 24.2. Scheduled to be removed in version 27.6.

◆ GetAttribute() [4/8]

void eVision.Easy3D.EPointCloud.GetAttribute ( int attribute,
uint index,
out eVision.EC24A value )

Retrieve the value of an attribute.

Parameters
attributeThe attribute buffer id. Either an E3DAttribute or an id returned by AddCustomAttributeBufferXXX.
indexThe index of the element.
valueWhere the attribute value will be stored.

If the attribute has not been initialized or if the index is out of bound, it throws an EException.

Deprecated

Use EPointCloud.GetAttributeEC24A instead.

Deprecated in version 24.2. Scheduled to be removed in version 27.6.

◆ GetAttribute() [5/8]

void eVision.Easy3D.EPointCloud.GetAttribute ( int attribute,
uint index,
out float value )

Retrieve the value of an attribute.

Parameters
attributeThe attribute buffer id. Either an E3DAttribute or an id returned by AddCustomAttributeBufferXXX.
indexThe index of the element.
valueWhere the attribute value will be stored.

If the attribute has not been initialized or if the index is out of bound, it throws an EException.

Deprecated

Use EPointCloud.GetAttributeFloat instead.

Deprecated in version 24.2. Scheduled to be removed in version 27.6.

◆ GetAttribute() [6/8]

void eVision.Easy3D.EPointCloud.GetAttribute ( int attribute,
uint index,
out int value )

Retrieve the value of an attribute.

Parameters
attributeThe attribute buffer id. Either an E3DAttribute or an id returned by AddCustomAttributeBufferXXX.
indexThe index of the element.
valueWhere the attribute value will be stored.

If the attribute has not been initialized or if the index is out of bound, it throws an EException.

Deprecated

Use EPointCloud.GetAttributeInt32 instead.

Deprecated in version 24.2. Scheduled to be removed in version 27.6.

◆ GetAttribute() [7/8]

void eVision.Easy3D.EPointCloud.GetAttribute ( int attribute,
uint index,
out uint value )

Retrieve the value of an attribute.

Parameters
attributeThe attribute buffer id. Either an E3DAttribute or an id returned by AddCustomAttributeBufferXXX.
indexThe index of the element.
valueWhere the attribute value will be stored.

If the attribute has not been initialized or if the index is out of bound, it throws an EException.

Deprecated

Use EPointCloud.GetAttributeUInt32 instead.

Deprecated in version 24.2. Scheduled to be removed in version 27.6.

◆ GetAttribute() [8/8]

void eVision.Easy3D.EPointCloud.GetAttribute ( int attribute,
uint index,
out ushort value )

Retrieve the value of an attribute.

Parameters
attributeThe attribute buffer id. Either an E3DAttribute or an id returned by AddCustomAttributeBufferXXX.
indexThe index of the element.
valueWhere the attribute value will be stored.

If the attribute has not been initialized or if the index is out of bound, it throws an EException.

Deprecated

Use EPointCloud.GetAttributeUInt16 instead.

Deprecated in version 24.2. Scheduled to be removed in version 27.6.

◆ GetAttributeBuffer()

IntPtr eVision.Easy3D.EPointCloud.GetAttributeBuffer ( int attribute)

Retrieves a pointer to the internal attribute buffer.

Parameters
attributeThe attribute buffer id. Either an E3DAttribute or an id returned by AddCustomAttributeBufferXXX.

If the attribute has not been initialized, it throws an EException.

◆ GetAttributeBufferType()

eVision.Easy3D.EAttributeType eVision.Easy3D.EPointCloud.GetAttributeBufferType ( int attribute)

Returns the EAttributeType corresponding to the E3DAttribute.

Parameters
attributeThe attribute buffer id. Either an E3DAttribute or an id returned by AddCustomAttributeBufferXXX.

◆ GetAttributeDouble()

double eVision.Easy3D.EPointCloud.GetAttributeDouble ( int attribute,
uint index )

Retrieve the value of a double attribute.

Parameters
attributeThe attribute buffer id. Either an E3DAttribute or an id returned by AddCustomAttributeBufferXXX.
indexThe index of the element.

If the attribute has not been initialized or if the index is out of bound, it throws an EException.

◆ GetAttributeE3DPoint()

eVision.Easy3D.E3DPoint eVision.Easy3D.EPointCloud.GetAttributeE3DPoint ( int attribute,
uint index )

Retrieve the value of an E3DPoint attribute.

Parameters
attributeThe attribute buffer id. Either an E3DAttribute or an id returned by AddCustomAttributeBufferXXX.
indexThe index of the element.

If the attribute has not been initialized or if the index is out of bound, it throws an EException.

◆ GetAttributeEC24A()

eVision.EC24A eVision.Easy3D.EPointCloud.GetAttributeEC24A ( int attribute,
uint index )

Retrieve the value of an EC24A attribute.

Parameters
attributeThe attribute buffer id. Either an E3DAttribute or an id returned by AddCustomAttributeBufferXXX.
indexThe index of the element.

If the attribute has not been initialized or if the index is out of bound, it throws an EException.

◆ GetAttributeFloat()

float eVision.Easy3D.EPointCloud.GetAttributeFloat ( int attribute,
uint index )

Retrieve the value of a float attribute.

Parameters
attributeThe attribute buffer id. Either an E3DAttribute or an id returned by AddCustomAttributeBufferXXX.
indexThe index of the element.

If the attribute has not been initialized or if the index is out of bound, it throws an EException.

◆ GetAttributeInt32()

int eVision.Easy3D.EPointCloud.GetAttributeInt32 ( int attribute,
uint index )

Retrieve the value of an int32 attribute.

Parameters
attributeThe attribute buffer id. Either an E3DAttribute or an id returned by AddCustomAttributeBufferXXX.
indexThe index of the element.

If the attribute has not been initialized or if the index is out of bound, it throws an EException.

◆ GetAttributeUInt16()

ushort eVision.Easy3D.EPointCloud.GetAttributeUInt16 ( int attribute,
uint index )

Retrieve the value of an uint16 attribute.

Parameters
attributeThe attribute buffer id. Either an E3DAttribute or an id returned by AddCustomAttributeBufferXXX.
indexThe index of the element.

If the attribute has not been initialized or if the index is out of bound, it throws an EException.

◆ GetAttributeUInt32()

uint eVision.Easy3D.EPointCloud.GetAttributeUInt32 ( int attribute,
uint index )

Retrieve the value of an uint32 attribute.

Parameters
attributeThe attribute buffer id. Either an E3DAttribute or an id returned by AddCustomAttributeBufferXXX.
indexThe index of the element.

If the attribute has not been initialized or if the index is out of bound, it throws an EException.

◆ GetAttributeUInt8()

byte eVision.Easy3D.EPointCloud.GetAttributeUInt8 ( int attribute,
uint index )

Retrieve the value of an uint8 attribute.

Parameters
attributeThe attribute buffer id. Either an E3DAttribute or an id returned by AddCustomAttributeBufferXXX.
indexThe index of the element.

If the attribute has not been initialized or if the index is out of bound, it throws an EException.

◆ GetInitializedAttributes()

void eVision.Easy3D.EPointCloud.GetInitializedAttributes ( ref int[] attributes)

Fills the vector with the ids (in growing order) of all the attributes that have been initialized.

Parameters
attributesThe vector that will contain the initialized attributes id.

◆ GetPoint()

eVision.Easy3D.E3DPoint eVision.Easy3D.EPointCloud.GetPoint ( uint index)

Retrieves a point from the EPointCloud.

Parameters
indexIndex of the point to be retrieved.

◆ HasAttributeBuffer()

bool eVision.Easy3D.EPointCloud.HasAttributeBuffer ( int attribute)

Returns true if a buffer of the given E3DAttribute exists in the point cloud.

Parameters
attributeThe attribute buffer id. Either an E3DAttribute or an id returned by AddCustomAttributeBufferXXX.

◆ Load() [1/2]

void eVision.Easy3D.EPointCloud.Load ( eVision.ESerializer serializer)

Loads the EPointCloud. Supported formats are eVision proprietary, CSV, OBJ, PCD, PLY and XYZ. The given ESerializer must have been created for reading.

Parameters
serializerThe ESerializer object that is read from.

◆ Load() [2/2]

void eVision.Easy3D.EPointCloud.Load ( string path)

Loads the EPointCloud. Supported formats are eVision proprietary, CSV, OBJ, PCD, PLY and XYZ. The given ESerializer must have been created for reading.

Parameters
pathThe file path.

◆ LoadCSV() [1/2]

void eVision.Easy3D.EPointCloud.LoadCSV ( string path)

Loads an EPointCloud stored in the CSV (Comma-Separated Values) file format.

Parameters
pathThe full path of the input file.

Only the x,y,z coordinates of the points of the pointcloud are loaded. Use pcd or ply if you need more.

There is no standard for pointcloud in CSV file format. To be correctly read, the file needs to have at least the components (x, y, z) and each value must be separated by a comma. An acceptable file could be: x, y, z x1, y1, z1 x2, y2, z2 x3, y3, z3

Other components can be in the file and the order of the elements may differs from the example as long as it is defined in the header. Note that files containing series of profile frames (i.e. only containing z-values) are not supported.

Use EPointCloud.SaveCSV to save to CSV file.

◆ LoadCSV() [2/2]

void eVision.Easy3D.EPointCloud.LoadCSV ( string path,
eVision.EFloatRange undefinedZValues )

Loads an EPointCloud stored in the CSV (Comma-Separated Values) file format.

Parameters
pathThe full path of the input file.
undefinedZValuesOptional parameter, discard the points with Z value in the given range.

Only the x,y,z coordinates of the points of the pointcloud are loaded. Use pcd or ply if you need more.

There is no standard for pointcloud in CSV file format. To be correctly read, the file needs to have at least the components (x, y, z) and each value must be separated by a comma. An acceptable file could be: x, y, z x1, y1, z1 x2, y2, z2 x3, y3, z3

Other components can be in the file and the order of the elements may differs from the example as long as it is defined in the header. Note that files containing series of profile frames (i.e. only containing z-values) are not supported.

Use EPointCloud.SaveCSV to save to CSV file.

◆ LoadOBJ() [1/2]

void eVision.Easy3D.EPointCloud.LoadOBJ ( string path)

Loads an EPointCloud stored in the OBJ file format.

Parameters
pathThe full path of the input file.

The OBJ file format is documented here.

The only attribute loaded in the obj file format is the normals. Use pcd or ply if you need more.

Use EPointCloud.SaveOBJ to save to OBJ file.

◆ LoadOBJ() [2/2]

void eVision.Easy3D.EPointCloud.LoadOBJ ( string path,
eVision.EFloatRange undefinedZValues )

Loads an EPointCloud stored in the OBJ file format.

Parameters
pathThe full path of the input file.
undefinedZValuesOptional parameter, discard the points with Z value in the given range.

The OBJ file format is documented here.

The only attribute loaded in the obj file format is the normals. Use pcd or ply if you need more.

Use EPointCloud.SaveOBJ to save to OBJ file.

◆ LoadPCD() [1/2]

void eVision.Easy3D.EPointCloud.LoadPCD ( string path)

Loads an EPointCloud stored in the PCD (Point Cloud Library) file format.

ASCII, binary and binary_compressed formats are supported.

Parameters
pathThe full path of the input file.

The PCD file format is documented here.

When loading PCD files:

  • columns where the field COUNT is not set to 1 are ignored
  • in ascii files, all numbers are assumed to be written in base 10
  • file is assumed to contain at least the floating point fields x, y and z. They mustn't be the first but have to be consecutive. If one of these points is nan, inf or too big to be represented on a float, the line is ignored. These points can be double but are stored internally as float.
  • the other columns are loaded as user-custom attributes unless they match the specifications of our particular attributes
  • a column representing a color must have as suffix "_C" and be of type uint32 or float, they are bitwise encoded as a combination of uint8 in the form argb (uint32) or _rgb (float). Otherwise it is loaded as an uint32/float column.
  • columns representing an E3DPoint must have as suffixes "_x", "_y", "_z", be consecutive and of float/double type. They are stored as float in both cases. Otherwise they are loaded as 3 float/double columns.
  • we do not have internal int16 or int8 types so those are converted to int32 types.

The particular attributes we define and the conditions to be parsed as one are:

  • E3DAttribute_Color: name must be rgb (in which case alpha is not read and set to 255) or rgba, encoding must correspond to a color.
  • E3DAttribute_Normal: names must be (normal_x, normal_y and normal_z) or (nx, ny and nz), encoding must correspond to a point.
  • E3DAttribute_Intensity: name must be intensity, intensity must be a numeric type.
  • E3DAttribute_Texture: name must be texture (with corresponding suffixes if type is color or point).
  • E3DAttribute_Index: name must be index and type uint32 or int32.
  • E3DAttribute_Confidence: name must be confidence and type should be float or double (but is converted internally to float).
  • E3DAttribute_Distance: name must be distance and type should be float or double (but is converted internally to float).

Use EPointCloud.SavePCD to save to PCD file.

◆ LoadPCD() [2/2]

void eVision.Easy3D.EPointCloud.LoadPCD ( string path,
eVision.EFloatRange undefinedZValues )

Loads an EPointCloud stored in the PCD (Point Cloud Library) file format.

ASCII, binary and binary_compressed formats are supported.

Parameters
pathThe full path of the input file.
undefinedZValuesOptional parameter, discard the points with Z value in the given range.

The PCD file format is documented here.

When loading PCD files:

  • columns where the field COUNT is not set to 1 are ignored
  • in ascii files, all numbers are assumed to be written in base 10
  • file is assumed to contain at least the floating point fields x, y and z. They mustn't be the first but have to be consecutive. If one of these points is nan, inf or too big to be represented on a float, the line is ignored. These points can be double but are stored internally as float.
  • the other columns are loaded as user-custom attributes unless they match the specifications of our particular attributes
  • a column representing a color must have as suffix "_C" and be of type uint32 or float, they are bitwise encoded as a combination of uint8 in the form argb (uint32) or _rgb (float). Otherwise it is loaded as an uint32/float column.
  • columns representing an E3DPoint must have as suffixes "_x", "_y", "_z", be consecutive and of float/double type. They are stored as float in both cases. Otherwise they are loaded as 3 float/double columns.
  • we do not have internal int16 or int8 types so those are converted to int32 types.

The particular attributes we define and the conditions to be parsed as one are:

  • E3DAttribute_Color: name must be rgb (in which case alpha is not read and set to 255) or rgba, encoding must correspond to a color.
  • E3DAttribute_Normal: names must be (normal_x, normal_y and normal_z) or (nx, ny and nz), encoding must correspond to a point.
  • E3DAttribute_Intensity: name must be intensity, intensity must be a numeric type.
  • E3DAttribute_Texture: name must be texture (with corresponding suffixes if type is color or point).
  • E3DAttribute_Index: name must be index and type uint32 or int32.
  • E3DAttribute_Confidence: name must be confidence and type should be float or double (but is converted internally to float).
  • E3DAttribute_Distance: name must be distance and type should be float or double (but is converted internally to float).

Use EPointCloud.SavePCD to save to PCD file.

◆ LoadPLY() [1/2]

void eVision.Easy3D.EPointCloud.LoadPLY ( string path)

Loads an EPointCloud stored in the PLY file format.

Parameters
pathThe full path of the input file.

The PLY file format is documented here.

When loading PLY files:

  • in ascii files, all numbers are assumed to be written in base 10
  • file is assumed to contain at least the floating point fields x, y and z. They mustn't be the first but have to be consecutive. If one of these points is nan, inf or too big to be represented on a float, the line is ignored. These points can be double but are stored internally as float.
  • the other columns are loaded as user-custom attributes unless they match the specifications of our particular attributes
  • the 3(4) columns representing a color must be of type uchar and end with _red, _green, _blue (, _alpha). They must be consecutive and in the red, green, blue (alpha) order.
  • columns representing an E3DPoint must have as suffixes "_x", "_y", "_z", be consecutive and of float type. They are stored as float in both cases. Otherwise they are loaded as 3 float columns.
  • we do not have internal int16 or int8 types so those are converted to int32 types.

The particular attributes we define and the conditions to be parsed as one are:

  • E3DAttribute_Color: names must be red, green, blue (alpha), encoding must correspond to a color.
  • E3DAttribute_Normal: names must be (nx, ny and nz) or (normal_x, normal_y and normal_z), encoding must correspond to a point.
  • E3DAttribute_Intensity: name must be intensity, intensity must be a numeric type.
  • E3DAttribute_Texture: name must be texture (with corresponding suffixes if type is color or point).
  • E3DAttribute_Index: name must be index and type uint32 or int32.
  • E3DAttribute_Confidence: name must be confidence and type should be float or double (but is converted internally to float).
  • E3DAttribute_Distance: name must be distance and type should be float or double (but is converted internally to float).

Use EPointCloud.SavePLY to save to PLY file.

◆ LoadPLY() [2/2]

void eVision.Easy3D.EPointCloud.LoadPLY ( string path,
eVision.EFloatRange undefinedZValues )

Loads an EPointCloud stored in the PLY file format.

Parameters
pathThe full path of the input file.
undefinedZValuesOptional parameter, discard the points with Z value in the given range.

The PLY file format is documented here.

When loading PLY files:

  • in ascii files, all numbers are assumed to be written in base 10
  • file is assumed to contain at least the floating point fields x, y and z. They mustn't be the first but have to be consecutive. If one of these points is nan, inf or too big to be represented on a float, the line is ignored. These points can be double but are stored internally as float.
  • the other columns are loaded as user-custom attributes unless they match the specifications of our particular attributes
  • the 3(4) columns representing a color must be of type uchar and end with _red, _green, _blue (, _alpha). They must be consecutive and in the red, green, blue (alpha) order.
  • columns representing an E3DPoint must have as suffixes "_x", "_y", "_z", be consecutive and of float type. They are stored as float in both cases. Otherwise they are loaded as 3 float columns.
  • we do not have internal int16 or int8 types so those are converted to int32 types.

The particular attributes we define and the conditions to be parsed as one are:

  • E3DAttribute_Color: names must be red, green, blue (alpha), encoding must correspond to a color.
  • E3DAttribute_Normal: names must be (nx, ny and nz) or (normal_x, normal_y and normal_z), encoding must correspond to a point.
  • E3DAttribute_Intensity: name must be intensity, intensity must be a numeric type.
  • E3DAttribute_Texture: name must be texture (with corresponding suffixes if type is color or point).
  • E3DAttribute_Index: name must be index and type uint32 or int32.
  • E3DAttribute_Confidence: name must be confidence and type should be float or double (but is converted internally to float).
  • E3DAttribute_Distance: name must be distance and type should be float or double (but is converted internally to float).

Use EPointCloud.SavePLY to save to PLY file.

◆ LoadXYZ() [1/2]

void eVision.Easy3D.EPointCloud.LoadXYZ ( string path)

Loads an EPointCloud stored in the XYZ file format.

Parameters
pathThe full path of the input file.

Only the x,y,z coordinates of the points of the pointcloud are loaded. Use pcd or ply if you need more. Use EPointCloud.SaveXYZ to save to XYZ file.

◆ LoadXYZ() [2/2]

void eVision.Easy3D.EPointCloud.LoadXYZ ( string path,
eVision.EFloatRange undefinedZValues )

Loads an EPointCloud stored in the XYZ file format.

Parameters
pathThe full path of the input file.
undefinedZValuesOptional parameter, discard the points with Z value in the given range.

Only the x,y,z coordinates of the points of the pointcloud are loaded. Use pcd or ply if you need more. Use EPointCloud.SaveXYZ to save to XYZ file.

◆ PrepareSpacePartition()

void eVision.Easy3D.EPointCloud.PrepareSpacePartition ( )

Enables the build of the space partition (like EPointCloud.EnableSpacePartition) and builds it now instead of when it is first needed. The computation time of the space partition depends on the number of points in the point cloud.

See also EPointCloud.EnableSpacePartition.

◆ RemovePoint()

void eVision.Easy3D.EPointCloud.RemovePoint ( uint index)

Removes a point and its corresponding attributes from the EPointCloud.

Parameters
indexThe index of the point to remove.

◆ Save() [1/2]

void eVision.Easy3D.EPointCloud.Save ( eVision.ESerializer serializer)

Saves the EPointCloud. Supported formats are eVision proprietary, CSV, OBJ, PCD, PLY and XYZ. The given ESerializer must have been created for writing.

Parameters
serializerThe ESerializer object that is written to.

◆ Save() [2/2]

void eVision.Easy3D.EPointCloud.Save ( string path)

Saves the EPointCloud. Supported formats are eVision proprietary, CSV, OBJ, PCD, PLY and XYZ. The given ESerializer must have been created for writing.

Parameters
pathThe file path.

◆ SaveCSV()

void eVision.Easy3D.EPointCloud.SaveCSV ( string path)

Saves the EPointCloud in the CSV (Comma-Separated Values) file format.

Parameters
pathThe full path of the destination file.

Only the x,y,z coordinates of the points of the pointcloud are saved. Use pcd or ply if you need more. Use EPointCloud.LoadCSV to load from CSV file.

◆ SaveOBJ()

void eVision.Easy3D.EPointCloud.SaveOBJ ( string path)

Saves the EPointCloud in the OBJ file format.

Parameters
pathThe full path of the destination file.

The OBJ file format is documented here.

The only attribute saved in the obj file format is the normals. Use pcd or ply if you need more.

Use EPointCloud.LoadOBJ to load from OBJ file.

◆ SavePCD() [1/3]

void eVision.Easy3D.EPointCloud.SavePCD ( string path)

Saves the EPointCloud in the PCD (Point Cloud Library) file format.

ASCII, binary and binary_compressed formats are available.

Parameters
pathThe full path of the destination file.

The PCD file format is documented here.

Custom user fields are named custom0, custom1,... Colors are saved as an uint32_t (alpha, red, green, blue) and custom attributes' names are suffixed with _C. Points are saved as 3 consecutive floats and custom attributes' names are suffixed with _x, _y, _z.

Use EPointCloud.LoadPCD to load from PCD file.

◆ SavePCD() [2/3]

void eVision.Easy3D.EPointCloud.SavePCD ( string path,
bool binary )

Saves the EPointCloud in the PCD (Point Cloud Library) file format.

ASCII, binary and binary_compressed formats are available.

Parameters
pathThe full path of the destination file.
binaryWhether to store the file in binary instead of ascii, defaults to true.

The PCD file format is documented here.

Custom user fields are named custom0, custom1,... Colors are saved as an uint32_t (alpha, red, green, blue) and custom attributes' names are suffixed with _C. Points are saved as 3 consecutive floats and custom attributes' names are suffixed with _x, _y, _z.

Use EPointCloud.LoadPCD to load from PCD file.

◆ SavePCD() [3/3]

void eVision.Easy3D.EPointCloud.SavePCD ( string path,
bool binary,
bool binaryCompressed )

Saves the EPointCloud in the PCD (Point Cloud Library) file format.

ASCII, binary and binary_compressed formats are available.

Parameters
pathThe full path of the destination file.
binaryWhether to store the file in binary instead of ascii, defaults to true.
binaryCompressedWhether to store the file in binary compressed format, defaults to false. If set to true, value of binary argument is ignored.

Note that, in some cases, applying LZF compression may result in a bigger buffer, in these cases, the cloud will be saved in binary format instead. The pcd file format specifies that the number of bytes used by the cloud must be an unsigned 32bits integer. If the point cloud's size is too large for this, the cloud will be saved in binary format instead.

The PCD file format is documented here.

Custom user fields are named custom0, custom1,... Colors are saved as an uint32_t (alpha, red, green, blue) and custom attributes' names are suffixed with _C. Points are saved as 3 consecutive floats and custom attributes' names are suffixed with _x, _y, _z.

Use EPointCloud.LoadPCD to load from PCD file.

◆ SavePLY() [1/2]

void eVision.Easy3D.EPointCloud.SavePLY ( string path)

Saves the EPointCloud in the PLY file format.

Parameters
pathThe full path of the destination file.

The PLY file format is documented here.

Custom user fields are named custom0, custom1,... Colors are saved as 4 uchar fields suffixed with (_red, _green, _blue, _alpha) for custom attributes or named (red, green, blue, alpha) for the pointcloud's color attribute. Points are saved as 3 consecutive floats whose names are suffixed with _x, _y, _z.

Use EPointCloud.LoadPLY to load from PLY file.

◆ SavePLY() [2/2]

void eVision.Easy3D.EPointCloud.SavePLY ( string path,
bool binary )

Saves the EPointCloud in the PLY file format.

Parameters
pathThe full path of the destination file.
binaryWhether to store the file in binary instead of ascii, defaults to true.

The PLY file format is documented here.

Custom user fields are named custom0, custom1,... Colors are saved as 4 uchar fields suffixed with (_red, _green, _blue, _alpha) for custom attributes or named (red, green, blue, alpha) for the pointcloud's color attribute. Points are saved as 3 consecutive floats whose names are suffixed with _x, _y, _z.

Use EPointCloud.LoadPLY to load from PLY file.

◆ SaveXYZ()

void eVision.Easy3D.EPointCloud.SaveXYZ ( string path)

Saves the EPointCloud in the XYZ file format.

Parameters
pathThe full path of the destination file.

Only the x,y,z coordinates of the points of the pointcloud are saved. Use pcd or ply if you need more. Use EPointCloud.LoadXYZ to load from XYZ file.

◆ SetAttribute() [1/8]

void eVision.Easy3D.EPointCloud.SetAttribute ( int attribute,
uint index,
byte value )

Sets the corresponding attribute at the given index.

Parameters
attributeThe attribute buffer id. Either an E3DAttribute or an id returned by AddCustomAttributeBufferXXX.
indexThe index of the element.
valueThe new value of the element.

This function does not perform an allocation. To add a new point with some attributes in the EPointCloud, use functions EPointCloud.AddPoint or EPointCloud.AddPoints which will add default value(s) to the attribute buffers that are initialized. Then, they can be set with this function. If the attribute has not been initialized or if the index is out of bound, it throws an EException.

Deprecated

Use EPointCloud.SetAttributeUInt8.

Deprecated in version 24.6. Scheduled to be removed in version 27.6.

◆ SetAttribute() [2/8]

void eVision.Easy3D.EPointCloud.SetAttribute ( int attribute,
uint index,
double value )

Sets the corresponding attribute at the given index.

Parameters
attributeThe attribute buffer id. Either an E3DAttribute or an id returned by AddCustomAttributeBufferXXX.
indexThe index of the element.
valueThe new value of the element.

This function does not perform an allocation. To add a new point with some attributes in the EPointCloud, use functions EPointCloud.AddPoint or EPointCloud.AddPoints which will add default value(s) to the attribute buffers that are initialized. Then, they can be set with this function. If the attribute has not been initialized or if the index is out of bound, it throws an EException.

Deprecated

Use EPointCloud.SetAttributeDouble.

Deprecated in version 24.6. Scheduled to be removed in version 27.6.

◆ SetAttribute() [3/8]

void eVision.Easy3D.EPointCloud.SetAttribute ( int attribute,
uint index,
eVision.Easy3D.E3DPoint value )

Sets the corresponding attribute at the given index.

Parameters
attributeThe attribute buffer id. Either an E3DAttribute or an id returned by AddCustomAttributeBufferXXX.
indexThe index of the element.
valueThe new value of the element.

This function does not perform an allocation. To add a new point with some attributes in the EPointCloud, use functions EPointCloud.AddPoint or EPointCloud.AddPoints which will add default value(s) to the attribute buffers that are initialized. Then, they can be set with this function. If the attribute has not been initialized or if the index is out of bound, it throws an EException.

Deprecated

Use EPointCloud.SetAttributeE3DPoint.

Deprecated in version 24.6. Scheduled to be removed in version 27.6.

◆ SetAttribute() [4/8]

void eVision.Easy3D.EPointCloud.SetAttribute ( int attribute,
uint index,
eVision.EC24A value )

Sets the corresponding attribute at the given index.

Parameters
attributeThe attribute buffer id. Either an E3DAttribute or an id returned by AddCustomAttributeBufferXXX.
indexThe index of the element.
valueThe new value of the element.

This function does not perform an allocation. To add a new point with some attributes in the EPointCloud, use functions EPointCloud.AddPoint or EPointCloud.AddPoints which will add default value(s) to the attribute buffers that are initialized. Then, they can be set with this function. If the attribute has not been initialized or if the index is out of bound, it throws an EException.

Deprecated

Use EPointCloud.SetAttributeEC24A.

Deprecated in version 24.6. Scheduled to be removed in version 27.6.

◆ SetAttribute() [5/8]

void eVision.Easy3D.EPointCloud.SetAttribute ( int attribute,
uint index,
float value )

Sets the corresponding attribute at the given index.

Parameters
attributeThe attribute buffer id. Either an E3DAttribute or an id returned by AddCustomAttributeBufferXXX.
indexThe index of the element.
valueThe new value of the element.

This function does not perform an allocation. To add a new point with some attributes in the EPointCloud, use functions EPointCloud.AddPoint or EPointCloud.AddPoints which will add default value(s) to the attribute buffers that are initialized. Then, they can be set with this function. If the attribute has not been initialized or if the index is out of bound, it throws an EException.

Deprecated

Use EPointCloud.SetAttributeFloat.

Deprecated in version 24.6. Scheduled to be removed in version 27.6.

◆ SetAttribute() [6/8]

void eVision.Easy3D.EPointCloud.SetAttribute ( int attribute,
uint index,
int value )

Sets the corresponding attribute at the given index.

Parameters
attributeThe attribute buffer id. Either an E3DAttribute or an id returned by AddCustomAttributeBufferXXX.
indexThe index of the element.
valueThe new value of the element.

This function does not perform an allocation. To add a new point with some attributes in the EPointCloud, use functions EPointCloud.AddPoint or EPointCloud.AddPoints which will add default value(s) to the attribute buffers that are initialized. Then, they can be set with this function. If the attribute has not been initialized or if the index is out of bound, it throws an EException.

Deprecated

Use EPointCloud.SetAttributeInt32.

Deprecated in version 24.6. Scheduled to be removed in version 27.6.

◆ SetAttribute() [7/8]

void eVision.Easy3D.EPointCloud.SetAttribute ( int attribute,
uint index,
uint value )

Sets the corresponding attribute at the given index.

Parameters
attributeThe attribute buffer id. Either an E3DAttribute or an id returned by AddCustomAttributeBufferXXX.
indexThe index of the element.
valueThe new value of the element.

This function does not perform an allocation. To add a new point with some attributes in the EPointCloud, use functions EPointCloud.AddPoint or EPointCloud.AddPoints which will add default value(s) to the attribute buffers that are initialized. Then, they can be set with this function. If the attribute has not been initialized or if the index is out of bound, it throws an EException.

Deprecated

Use EPointCloud.SetAttributeUInt32.

Deprecated in version 24.6. Scheduled to be removed in version 27.6.

◆ SetAttribute() [8/8]

void eVision.Easy3D.EPointCloud.SetAttribute ( int attribute,
uint index,
ushort value )

Sets the corresponding attribute at the given index.

Parameters
attributeThe attribute buffer id. Either an E3DAttribute or an id returned by AddCustomAttributeBufferXXX.
indexThe index of the element.
valueThe new value of the element.

This function does not perform an allocation. To add a new point with some attributes in the EPointCloud, use functions EPointCloud.AddPoint or EPointCloud.AddPoints which will add default value(s) to the attribute buffers that are initialized. Then, they can be set with this function. If the attribute has not been initialized or if the index is out of bound, it throws an EException.

Deprecated

Use EPointCloud.SetAttributeUInt16.

Deprecated in version 24.6. Scheduled to be removed in version 27.6.

◆ SetAttributeDouble()

void eVision.Easy3D.EPointCloud.SetAttributeDouble ( int attribute,
uint index,
double value )

Sets the corresponding attribute at the given index.

Parameters
attributeThe attribute buffer id. Either an E3DAttribute or an id returned by AddCustomAttributeBufferXXX.
indexThe index of the element.
valueThe new value of the element.

This function does not perform an allocation. To add a new point with some attributes in the EPointCloud, use functions EPointCloud.AddPoint or EPointCloud.AddPoints which will add default value(s) to the attribute buffers that are initialized. Then, they can be set with this function. If the attribute has not been initialized or if the index is out of bound, it throws an EException.

◆ SetAttributeE3DPoint()

void eVision.Easy3D.EPointCloud.SetAttributeE3DPoint ( int attribute,
uint index,
eVision.Easy3D.E3DPoint value )

Sets the corresponding attribute at the given index.

Parameters
attributeThe attribute buffer id. Either an E3DAttribute or an id returned by AddCustomAttributeBufferXXX.
indexThe index of the element.
valueThe new value of the element.

This function does not perform an allocation. To add a new point with some attributes in the EPointCloud, use functions EPointCloud.AddPoint or EPointCloud.AddPoints which will add default value(s) to the attribute buffers that are initialized. Then, they can be set with this function. If the attribute has not been initialized or if the index is out of bound, it throws an EException.

◆ SetAttributeEC24A()

void eVision.Easy3D.EPointCloud.SetAttributeEC24A ( int attribute,
uint index,
eVision.EC24A value )

Sets the corresponding attribute at the given index.

Parameters
attributeThe attribute buffer id. Either an E3DAttribute or an id returned by AddCustomAttributeBufferXXX.
indexThe index of the element.
valueThe new value of the element.

This function does not perform an allocation. To add a new point with some attributes in the EPointCloud, use functions EPointCloud.AddPoint or EPointCloud.AddPoints which will add default value(s) to the attribute buffers that are initialized. Then, they can be set with this function. If the attribute has not been initialized or if the index is out of bound, it throws an EException.

◆ SetAttributeFloat()

void eVision.Easy3D.EPointCloud.SetAttributeFloat ( int attribute,
uint index,
float value )

Sets the corresponding attribute at the given index.

Parameters
attributeThe attribute buffer id. Either an E3DAttribute or an id returned by AddCustomAttributeBufferXXX.
indexThe index of the element.
valueThe new value of the element.

This function does not perform an allocation. To add a new point with some attributes in the EPointCloud, use functions EPointCloud.AddPoint or EPointCloud.AddPoints which will add default value(s) to the attribute buffers that are initialized. Then, they can be set with this function. If the attribute has not been initialized or if the index is out of bound, it throws an EException.

◆ SetAttributeInt32()

void eVision.Easy3D.EPointCloud.SetAttributeInt32 ( int attribute,
uint index,
int value )

Sets the corresponding attribute at the given index.

Parameters
attributeThe attribute buffer id. Either an E3DAttribute or an id returned by AddCustomAttributeBufferXXX.
indexThe index of the element.
valueThe new value of the element.

This function does not perform an allocation. To add a new point with some attributes in the EPointCloud, use functions EPointCloud.AddPoint or EPointCloud.AddPoints which will add default value(s) to the attribute buffers that are initialized. Then, they can be set with this function. If the attribute has not been initialized or if the index is out of bound, it throws an EException.

◆ SetAttributeUInt16()

void eVision.Easy3D.EPointCloud.SetAttributeUInt16 ( int attribute,
uint index,
ushort value )

Sets the corresponding attribute at the given index.

Parameters
attributeThe attribute buffer id. Either an E3DAttribute or an id returned by AddCustomAttributeBufferXXX.
indexThe index of the element.
valueThe new value of the element.

This function does not perform an allocation. To add a new point with some attributes in the EPointCloud, use functions EPointCloud.AddPoint or EPointCloud.AddPoints which will add default value(s) to the attribute buffers that are initialized. Then, they can be set with this function. If the attribute has not been initialized or if the index is out of bound, it throws an EException.

◆ SetAttributeUInt32()

void eVision.Easy3D.EPointCloud.SetAttributeUInt32 ( int attribute,
uint index,
uint value )

Sets the corresponding attribute at the given index.

Parameters
attributeThe attribute buffer id. Either an E3DAttribute or an id returned by AddCustomAttributeBufferXXX.
indexThe index of the element.
valueThe new value of the element.

This function does not perform an allocation. To add a new point with some attributes in the EPointCloud, use functions EPointCloud.AddPoint or EPointCloud.AddPoints which will add default value(s) to the attribute buffers that are initialized. Then, they can be set with this function. If the attribute has not been initialized or if the index is out of bound, it throws an EException.

◆ SetAttributeUInt8()

void eVision.Easy3D.EPointCloud.SetAttributeUInt8 ( int attribute,
uint index,
byte value )

Sets the corresponding attribute at the given index.

Parameters
attributeThe attribute buffer id. Either an E3DAttribute or an id returned by AddCustomAttributeBufferXXX.
indexThe index of the element.
valueThe new value of the element.

This function does not perform an allocation. To add a new point with some attributes in the EPointCloud, use functions EPointCloud.AddPoint or EPointCloud.AddPoints which will add default value(s) to the attribute buffers that are initialized. Then, they can be set with this function. If the attribute has not been initialized or if the index is out of bound, it throws an EException.

Property Documentation

◆ EnableSpacePartition

bool eVision.Easy3D.EPointCloud.EnableSpacePartition
getset

Sets/Gets the status of space partitioning when computing distance to Segments and Lines. Space partitioning is a way to speed up the geometric queries on EPointCloud. The affected methods are EPointCloud.DistanceToSegment, EPointCloud.DistanceToLine. By default, space partition is disabled for these two methods.

See also EPointCloud.PrepareSpacePartition. For EPointCloud.ComputeNormalsAndCurvatures, the same space partition is used but it cannot be disabled as using it is always faster.

◆ NumPoints

int eVision.Easy3D.EPointCloud.NumPoints
get

Number of points in the EPointCloud.

◆ PointsBuffer

IntPtr eVision.Easy3D.EPointCloud.PointsBuffer
get

Retrieves a pointer to the internal points buffer.