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

Represents a 3D point cloud. More...

Public Member Functions

None __init__ (self)
 Creates an eVision.Easy3D.EPointCloud object.
None __init__ (self, eVision.Easy3D.EPointCloud other)
 Creates an eVision.Easy3D.EPointCloud object.
None Clear (self)
 Empties the eVision.Easy3D.EPointCloud.
None AddPoint (self, eVision.Easy3D.E3DPoint point)
 Adds a point to the eVision.Easy3D.EPointCloud.
None AddPoints (self, list[eVision._eVision.Easy3D.E3DPoint] points)
 Adds a vector of points to the eVision.Easy3D.EPointCloud.
None AddPointCloud (self, eVision.Easy3D.EPointCloud cloud, bool addAttributeIfNotPresent)
 Adds the points of another point cloud to eVision.Easy3D.EPointCloud.
None AddPointCloud (self, eVision.Easy3D.EPointCloud cloud)
 Adds the points of another point cloud to eVision.Easy3D.EPointCloud.
None AddPointAndAttributesTo (self, eVision.Easy3D.EPointCloud dstCloud, int srcIndex, bool addAttributeIfNotPresent)
 Adds a point and its attributes to another eVision.Easy3D.EPointCloud.
None AddPointAndAttributesTo (self, eVision.Easy3D.EPointCloud dstCloud, int srcIndex)
 Adds a point and its attributes to another eVision.Easy3D.EPointCloud.
None RemovePoint (self, int index)
 Removes a point and its corresponding attributes from the eVision.Easy3D.EPointCloud.
eVision.Easy3D.E3DPoint GetPoint (self, int index)
 Retrieves a point from the eVision.Easy3D.EPointCloud.
None FillPointsBuffer (self, ctypes.c_void_p pointsBuffer, int numPoints)
 Copies an external points buffer into the internal points buffer.
ctypes.c_void_p GetAttributeBuffer (self, int attribute)
 Retrieves a pointer to the internal attribute buffer.
eVision.Easy3D.EAttributeType GetAttributeBufferType (self, int attribute)
 Returns the eVision.Easy3D.EAttributeType corresponding to the eVision.Easy3D.E3DAttribute.
bool HasAttributeBuffer (self, int attribute)
 Returns true if a buffer of the given eVision.Easy3D.E3DAttribute exists in the point cloud.
None ClearAttributeBuffer (self, int attribute)
 Empties the attribute buffer.
None AllocateAttributeBufferUInt8 (self, int attribute, int defaultValue)
 Allocates an attribute buffer and fills it with defaultValue if the cloud is not empty.
None AllocateAttributeBufferUInt16 (self, int attribute, int defaultValue)
 Allocates an attribute buffer and fills it with defaultValue if the cloud is not empty.
None AllocateAttributeBufferUInt32 (self, int attribute, int defaultValue)
 Allocates an attribute buffer and fills it with defaultValue if the cloud is not empty.
None AllocateAttributeBufferInt32 (self, int attribute, int defaultValue)
 Allocates an attribute buffer and fills it with defaultValue if the cloud is not empty.
None AllocateAttributeBufferFloat (self, int attribute, float defaultValue)
 Allocates an attribute buffer and fills it with defaultValue if the cloud is not empty.
None AllocateAttributeBufferDouble (self, int attribute, float defaultValue)
 Allocates an attribute buffer and fills it with defaultValue if the cloud is not empty.
None AllocateAttributeBufferEC24A (self, int attribute, eVision.EC24A defaultValue)
 Allocates an attribute buffer and fills it with defaultValue if the cloud is not empty.
None AllocateAttributeBufferE3DPoint (self, int attribute, eVision.Easy3D.E3DPoint defaultValue)
 Allocates an attribute buffer and fills it with defaultValue if the cloud is not empty.
None FillAttributeBufferUInt8 (self, int attribute, list[int] data)
 Allocates and copies the data to the attribute buffer.
None FillAttributeBufferUInt8 (self, int attribute, list[int] data, int defaultValue)
 Allocates and copies the data to the attribute buffer.
None FillAttributeBufferUInt16 (self, int attribute, list[int] data)
 Allocates and copies the data to the attribute buffer.
None FillAttributeBufferUInt16 (self, int attribute, list[int] data, int defaultValue)
 Allocates and copies the data to the attribute buffer.
None FillAttributeBufferUInt32 (self, int attribute, list[int] data)
 Allocates and copies the data to the attribute buffer.
None FillAttributeBufferUInt32 (self, int attribute, list[int] data, int defaultValue)
 Allocates and copies the data to the attribute buffer.
None FillAttributeBufferInt32 (self, int attribute, list[int] data)
 Allocates and copies the data to the attribute buffer.
None FillAttributeBufferInt32 (self, int attribute, list[int] data, int defaultValue)
 Allocates and copies the data to the attribute buffer.
None FillAttributeBufferFloat (self, int attribute, list[float] data)
 Allocates and copies the data to the attribute buffer.
None FillAttributeBufferFloat (self, int attribute, list[float] data, float defaultValue)
 Allocates and copies the data to the attribute buffer.
None FillAttributeBufferDouble (self, int attribute, list[float] data)
 Allocates and copies the data to the attribute buffer.
None FillAttributeBufferDouble (self, int attribute, list[float] data, float defaultValue)
 Allocates and copies the data to the attribute buffer.
None FillAttributeBufferEC24A (self, int attribute, list[eVision._eVision.EC24A] data)
 Allocates and copies the data to the attribute buffer.
None FillAttributeBufferEC24A (self, int attribute, list[eVision._eVision.EC24A] data, eVision.EC24A defaultValue)
 Allocates and copies the data to the attribute buffer.
None FillAttributeBufferE3DPoint (self, int attribute, list[eVision._eVision.Easy3D.E3DPoint] data)
 Allocates and copies the data to the attribute buffer.
None FillAttributeBufferE3DPoint (self, int attribute, list[eVision._eVision.Easy3D.E3DPoint] data, eVision.Easy3D.E3DPoint defaultValue)
 Allocates and copies the data to the attribute buffer.
int AddCustomAttributeBufferUInt8 (self, list[int] data)
 Allocates and copies the data to the new custom attribute buffer.
int AddCustomAttributeBufferUInt8 (self, list[int] data, int defaultValue)
 Allocates and copies the data to the new custom attribute buffer.
int AddCustomAttributeBufferUInt16 (self, list[int] data)
 Allocates and copies the data to the new custom attribute buffer.
int AddCustomAttributeBufferUInt16 (self, list[int] data, int defaultValue)
 Allocates and copies the data to the new custom attribute buffer.
int AddCustomAttributeBufferUInt32 (self, list[int] data)
 Allocates and copies the data to the new custom attribute buffer.
int AddCustomAttributeBufferUInt32 (self, list[int] data, int defaultValue)
 Allocates and copies the data to the new custom attribute buffer.
int AddCustomAttributeBufferInt32 (self, list[int] data)
 Allocates and copies the data to the new custom attribute buffer.
int AddCustomAttributeBufferInt32 (self, list[int] data, int defaultValue)
 Allocates and copies the data to the new custom attribute buffer.
int AddCustomAttributeBufferFloat (self, list[float] data)
 Allocates and copies the data to the new custom attribute buffer.
int AddCustomAttributeBufferFloat (self, list[float] data, float defaultValue)
 Allocates and copies the data to the new custom attribute buffer.
int AddCustomAttributeBufferDouble (self, list[float] data)
 Allocates and copies the data to the new custom attribute buffer.
int AddCustomAttributeBufferDouble (self, list[float] data, float defaultValue)
 Allocates and copies the data to the new custom attribute buffer.
int AddCustomAttributeBufferEC24A (self, list[eVision._eVision.EC24A] data)
 Allocates and copies the data to the new custom attribute buffer.
int AddCustomAttributeBufferEC24A (self, list[eVision._eVision.EC24A] data, eVision.EC24A defaultValue)
 Allocates and copies the data to the new custom attribute buffer.
int AddCustomAttributeBufferE3DPoint (self, list[eVision._eVision.Easy3D.E3DPoint] data)
 Allocates and copies the data to the new custom attribute buffer.
int AddCustomAttributeBufferE3DPoint (self, list[eVision._eVision.Easy3D.E3DPoint] data, eVision.Easy3D.E3DPoint defaultValue)
 Allocates and copies the data to the new custom attribute buffer.
int AllocateCustomAttributeBufferUInt8 (self, int defaultValue)
 Allocates the data to the new custom attribute buffer and fills it with default values.
int AllocateCustomAttributeBufferUInt16 (self, int defaultValue)
 Allocates the data to the new custom attribute buffer and fills it with default values.
int AllocateCustomAttributeBufferUInt32 (self, int defaultValue)
 Allocates the data to the new custom attribute buffer and fills it with default values.
int AllocateCustomAttributeBufferInt32 (self, int defaultValue)
 Allocates the data to the new custom attribute buffer and fills it with default values.
int AllocateCustomAttributeBufferFloat (self, float defaultValue)
 Allocates the data to the new custom attribute buffer and fills it with default values.
int AllocateCustomAttributeBufferDouble (self, float defaultValue)
 Allocates the data to the new custom attribute buffer and fills it with default values.
int AllocateCustomAttributeBufferEC24A (self, eVision.EC24A defaultValue)
 Allocates the data to the new custom attribute buffer and fills it with default values.
int AllocateCustomAttributeBufferE3DPoint (self, eVision.Easy3D.E3DPoint defaultValue)
 Allocates the data to the new custom attribute buffer and fills it with default values.
int GetAttributeUInt8 (self, int attribute, int index)
 Retrieve the value of an uint8 attribute.
int GetAttributeUInt16 (self, int attribute, int index)
 Retrieve the value of an uint16 attribute.
int GetAttributeUInt32 (self, int attribute, int index)
 Retrieve the value of an uint32 attribute.
int GetAttributeInt32 (self, int attribute, int index)
 Retrieve the value of an int32 attribute.
float GetAttributeFloat (self, int attribute, int index)
 Retrieve the value of a float attribute.
float GetAttributeDouble (self, int attribute, int index)
 Retrieve the value of a double attribute.
eVision.EC24A GetAttributeEC24A (self, int attribute, int index)
 Retrieve the value of an eVision.EC24A attribute.
eVision.Easy3D.E3DPoint GetAttributeE3DPoint (self, int attribute, int index)
 Retrieve the value of an eVision.Easy3D.E3DPoint attribute.
None SetAttributeUInt8 (self, int attribute, int index, int value)
 Sets the corresponding attribute at the given index.
None SetAttributeUInt16 (self, int attribute, int index, int value)
 Sets the corresponding attribute at the given index.
None SetAttributeUInt32 (self, int attribute, int index, int value)
 Sets the corresponding attribute at the given index.
None SetAttributeInt32 (self, int attribute, int index, int value)
 Sets the corresponding attribute at the given index.
None SetAttributeFloat (self, int attribute, int index, float value)
 Sets the corresponding attribute at the given index.
None SetAttributeDouble (self, int attribute, int index, float value)
 Sets the corresponding attribute at the given index.
None SetAttributeEC24A (self, int attribute, int index, eVision.EC24A value)
 Sets the corresponding attribute at the given index.
None SetAttributeE3DPoint (self, int attribute, int index, eVision.Easy3D.E3DPoint value)
 Sets the corresponding attribute at the given index.
None CopyAllAttributesTo (self, eVision.Easy3D.EPointCloud dstCloud, int dstIndex, int srcIndex)
 Copies all attributes at a given index from one eVision.Easy3D.EPointCloud to another one.
None Load (self, str path)
 Loads the eVision.Easy3D.EPointCloud.
None Load (self, eVision.ESerializer|None serializer)
 Loads the eVision.Easy3D.EPointCloud.
None Save (self, str path)
 Saves the eVision.Easy3D.EPointCloud.
None Save (self, eVision.ESerializer|None serializer)
 Saves the eVision.Easy3D.EPointCloud.
None SavePCD (self, str path, bool binary, bool binaryCompressed)
 Saves the eVision.Easy3D.EPointCloud in the PCD (Point Cloud Library) file format.
None SavePCD (self, str path, bool binary)
 Saves the eVision.Easy3D.EPointCloud in the PCD (Point Cloud Library) file format.
None SavePCD (self, str path)
 Saves the eVision.Easy3D.EPointCloud in the PCD (Point Cloud Library) file format.
None LoadPCD (self, str path)
 Loads an eVision.Easy3D.EPointCloud stored in the PCD (Point Cloud Library) file format.
None LoadPCD (self, str path, eVision.EFloatRange undefinedZValues)
 Loads an eVision.Easy3D.EPointCloud stored in the PCD (Point Cloud Library) file format.
None SaveCSV (self, str path)
 Saves the eVision.Easy3D.EPointCloud in the CSV (Comma-Separated Values) file format.
None LoadCSV (self, str path)
 Loads an eVision.Easy3D.EPointCloud stored in the CSV (Comma-Separated Values) file format.
None LoadCSV (self, str path, eVision.EFloatRange undefinedZValues)
 Loads an eVision.Easy3D.EPointCloud stored in the CSV (Comma-Separated Values) file format.
None SaveOBJ (self, str path)
 Saves the eVision.Easy3D.EPointCloud in the OBJ file format.
None LoadOBJ (self, str path)
 Loads an eVision.Easy3D.EPointCloud stored in the OBJ file format.
None LoadOBJ (self, str path, eVision.EFloatRange undefinedZValues)
 Loads an eVision.Easy3D.EPointCloud stored in the OBJ file format.
None SavePLY (self, str path, bool binary)
 Saves the eVision.Easy3D.EPointCloud in the PLY file format.
None SavePLY (self, str path)
 Saves the eVision.Easy3D.EPointCloud in the PLY file format.
None LoadPLY (self, str path)
 Loads an eVision.Easy3D.EPointCloud stored in the PLY file format.
None LoadPLY (self, str path, eVision.EFloatRange undefinedZValues)
 Loads an eVision.Easy3D.EPointCloud stored in the PLY file format.
None SaveXYZ (self, str path)
 Saves the eVision.Easy3D.EPointCloud in the XYZ file format.
None LoadXYZ (self, str path)
 Loads an eVision.Easy3D.EPointCloud stored in the XYZ file format.
None LoadXYZ (self, str path, eVision.EFloatRange undefinedZValues)
 Loads an eVision.Easy3D.EPointCloud stored in the XYZ file format.
None GetInitializedAttributes (self, list[int] attributes)
 Fills the vector with the ids (in growing order) of all the attributes that have been initialized.
float DistanceToSegment (self, eVision.Easy3D.E3DPoint origin, eVision.Easy3D.E3DPoint end)
 Returns the shortest distance between an eVision.Easy3D.E3DPoint of the eVision.Easy3D.EPointCloud and a segment represented by 2 eVision.Easy3D.E3DPoint.
eVision.Easy3D.E3DClosestPoint ClosestPointToSegment (self, eVision.Easy3D.E3DPoint origin, eVision.Easy3D.E3DPoint end)
 Returns the closest point, its index and the distance between the eVision.Easy3D.EPointCloud and a segment represented by 2 eVision.Easy3D.E3DPoint.
float DistanceToLine (self, eVision.Easy3D.E3DPoint origin, eVision.Easy3D.E3DPoint end)
 Returns the shortest distance between an eVision.Easy3D.E3DPoint of the eVision.Easy3D.EPointCloud and a line represented by 2 eVision.Easy3D.E3DPoint.
eVision.Easy3D.E3DClosestPoint ClosestPointToLine (self, eVision.Easy3D.E3DPoint origin, eVision.Easy3D.E3DPoint end)
 Returns the closest point, its index and the distance between the eVision.Easy3D.EPointCloud and a line represented by 2 eVision.Easy3D.E3DPoint.
None PrepareSpacePartition (self)
 Enables the build of the space partition (like eVision.Easy3D.EPointCloud.EnableSpacePartition) and builds it now instead of when it is first needed.
eVision.Easy3D.E3DPlane ComputePlaneBehind (self, eVision.Easy3D.E3DPoint normal, float margin)
 Returns the eVision.Easy3D.E3DPlane with given normal on which the eVision.Easy3D.EPointCloud lays.
eVision.Easy3D.E3DPlane ComputePlaneBehind (self, eVision.Easy3D.E3DPoint normal)
 Returns the eVision.Easy3D.E3DPlane with given normal on which the eVision.Easy3D.EPointCloud lays.
None ComputeNormalsAndCurvatures (self, bool computeCurvatures, int nbAdditionalNeighborsForCurvatures)
 Compute the normals of the cloud's points by fitting a plane on the 10 neighbors points.
None ComputeNormalsAndCurvatures (self, bool computeCurvatures)
 Compute the normals of the cloud's points by fitting a plane on the 10 neighbors points.
None ComputeNormalsAndCurvatures (self)
 Compute the normals of the cloud's points by fitting a plane on the 10 neighbors points.
int NumPoints (self)
 Number of points in the eVision.Easy3D.EPointCloud.
ctypes.c_void_p PointsBuffer (self)
 Retrieves a pointer to the internal points buffer.
bool EnableSpacePartition (self)
 Sets/Gets the status of space partitioning when computing distance to Segments and Lines.
 EnableSpacePartition (self, bool value)
 Sets/Gets the status of space partitioning when computing distance to Segments and Lines.

Detailed Description

Represents a 3D point cloud.

Remarks:

License(s): Easy3D

Constructor & Destructor Documentation

◆ __init__() [1/2]

None eVision.Easy3D.EPointCloud.__init__ ( self)

Creates an eVision.Easy3D.EPointCloud object.

◆ __init__() [2/2]

None eVision.Easy3D.EPointCloud.__init__ ( self,
eVision.Easy3D.EPointCloud other )

Creates an eVision.Easy3D.EPointCloud object.

Parameters
otherReference to the eVision.Easy3D.EPointCloud used for the initialization.

Member Function Documentation

◆ AddCustomAttributeBufferDouble() [1/2]

int eVision.Easy3D.EPointCloud.AddCustomAttributeBufferDouble ( self,
list[float] data )

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

Remarks:

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

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

◆ AddCustomAttributeBufferDouble() [2/2]

int eVision.Easy3D.EPointCloud.AddCustomAttributeBufferDouble ( self,
list[float] data,
float defaultValue )

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

Remarks:

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

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

◆ AddCustomAttributeBufferE3DPoint() [1/2]

int eVision.Easy3D.EPointCloud.AddCustomAttributeBufferE3DPoint ( self,
list[eVision._eVision.Easy3D.E3DPoint] data )

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

Remarks:

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

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

◆ AddCustomAttributeBufferE3DPoint() [2/2]

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

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

Remarks:

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

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

◆ AddCustomAttributeBufferEC24A() [1/2]

int eVision.Easy3D.EPointCloud.AddCustomAttributeBufferEC24A ( self,
list[eVision._eVision.EC24A] data )

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

Remarks:

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

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

◆ AddCustomAttributeBufferEC24A() [2/2]

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

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

Remarks:

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

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

◆ AddCustomAttributeBufferFloat() [1/2]

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

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

Remarks:

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

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

◆ AddCustomAttributeBufferFloat() [2/2]

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

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

Remarks:

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

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

◆ AddCustomAttributeBufferInt32() [1/2]

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

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

Remarks:

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

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

◆ AddCustomAttributeBufferInt32() [2/2]

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

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

Remarks:

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

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

◆ AddCustomAttributeBufferUInt16() [1/2]

int eVision.Easy3D.EPointCloud.AddCustomAttributeBufferUInt16 ( self,
list[int] data )

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

Remarks:

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

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

◆ AddCustomAttributeBufferUInt16() [2/2]

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

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

Remarks:

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

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

◆ AddCustomAttributeBufferUInt32() [1/2]

int eVision.Easy3D.EPointCloud.AddCustomAttributeBufferUInt32 ( self,
list[int] data )

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

Remarks:

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

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

◆ AddCustomAttributeBufferUInt32() [2/2]

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

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

Remarks:

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

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

◆ AddCustomAttributeBufferUInt8() [1/2]

int eVision.Easy3D.EPointCloud.AddCustomAttributeBufferUInt8 ( self,
list[int] data )

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

Remarks:

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

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

◆ AddCustomAttributeBufferUInt8() [2/2]

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

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

Remarks:

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

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

◆ AddPoint()

None eVision.Easy3D.EPointCloud.AddPoint ( self,
eVision.Easy3D.E3DPoint point )

Adds a point to the eVision.Easy3D.EPointCloud.

Remarks:

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

Parameters
pointThe eVision.Easy3D.E3DPoint to add to the point cloud.

◆ AddPointAndAttributesTo() [1/2]

None eVision.Easy3D.EPointCloud.AddPointAndAttributesTo ( self,
eVision.Easy3D.EPointCloud dstCloud,
int srcIndex )

Adds a point and its attributes to another eVision.Easy3D.EPointCloud.

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

◆ AddPointAndAttributesTo() [2/2]

None eVision.Easy3D.EPointCloud.AddPointAndAttributesTo ( self,
eVision.Easy3D.EPointCloud dstCloud,
int srcIndex,
bool addAttributeIfNotPresent )

Adds a point and its attributes to another eVision.Easy3D.EPointCloud.

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

◆ AddPointCloud() [1/2]

None eVision.Easy3D.EPointCloud.AddPointCloud ( self,
eVision.Easy3D.EPointCloud cloud )

Adds the points of another point cloud to eVision.Easy3D.EPointCloud.

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

◆ AddPointCloud() [2/2]

None eVision.Easy3D.EPointCloud.AddPointCloud ( self,
eVision.Easy3D.EPointCloud cloud,
bool addAttributeIfNotPresent )

Adds the points of another point cloud to eVision.Easy3D.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 eVision.Easy3D.EPointCloud. this could result in the creation of an attribute filled with default values.

◆ AddPoints()

None eVision.Easy3D.EPointCloud.AddPoints ( self,
list[eVision._eVision.Easy3D.E3DPoint] points )

Adds a vector of points to the eVision.Easy3D.EPointCloud.

Remarks:

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

Parameters
pointsVector of eVision.Easy3D.E3DPoint to add to the point cloud.

◆ AllocateAttributeBufferDouble()

None eVision.Easy3D.EPointCloud.AllocateAttributeBufferDouble ( self,
int attribute,
float defaultValue )

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

Remarks:

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

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

◆ AllocateAttributeBufferE3DPoint()

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

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

Remarks:

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

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

◆ AllocateAttributeBufferEC24A()

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

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

Remarks:

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

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

◆ AllocateAttributeBufferFloat()

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

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

Remarks:

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

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

◆ AllocateAttributeBufferInt32()

None eVision.Easy3D.EPointCloud.AllocateAttributeBufferInt32 ( self,
int attribute,
int defaultValue )

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

Remarks:

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

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

◆ AllocateAttributeBufferUInt16()

None eVision.Easy3D.EPointCloud.AllocateAttributeBufferUInt16 ( self,
int attribute,
int defaultValue )

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

Remarks:

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

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

◆ AllocateAttributeBufferUInt32()

None eVision.Easy3D.EPointCloud.AllocateAttributeBufferUInt32 ( self,
int attribute,
int defaultValue )

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

Remarks:

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

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

◆ AllocateAttributeBufferUInt8()

None eVision.Easy3D.EPointCloud.AllocateAttributeBufferUInt8 ( self,
int attribute,
int defaultValue )

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

Remarks:

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

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

◆ AllocateCustomAttributeBufferDouble()

int eVision.Easy3D.EPointCloud.AllocateCustomAttributeBufferDouble ( self,
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 eVision.Easy3D.EPointCloud grows (see eVision.Easy3D.EPointCloud.AddPoint, eVision.Easy3D.EPointCloud.AddPoints and eVision.Easy3D.EPointCloud.AddPointCloud).

◆ AllocateCustomAttributeBufferE3DPoint()

int eVision.Easy3D.EPointCloud.AllocateCustomAttributeBufferE3DPoint ( self,
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 eVision.Easy3D.EPointCloud grows (see eVision.Easy3D.EPointCloud.AddPoint, eVision.Easy3D.EPointCloud.AddPoints and eVision.Easy3D.EPointCloud.AddPointCloud).

◆ AllocateCustomAttributeBufferEC24A()

int eVision.Easy3D.EPointCloud.AllocateCustomAttributeBufferEC24A ( self,
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 eVision.Easy3D.EPointCloud grows (see eVision.Easy3D.EPointCloud.AddPoint, eVision.Easy3D.EPointCloud.AddPoints and eVision.Easy3D.EPointCloud.AddPointCloud).

◆ AllocateCustomAttributeBufferFloat()

int eVision.Easy3D.EPointCloud.AllocateCustomAttributeBufferFloat ( self,
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 eVision.Easy3D.EPointCloud grows (see eVision.Easy3D.EPointCloud.AddPoint, eVision.Easy3D.EPointCloud.AddPoints and eVision.Easy3D.EPointCloud.AddPointCloud).

◆ AllocateCustomAttributeBufferInt32()

int eVision.Easy3D.EPointCloud.AllocateCustomAttributeBufferInt32 ( self,
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 eVision.Easy3D.EPointCloud grows (see eVision.Easy3D.EPointCloud.AddPoint, eVision.Easy3D.EPointCloud.AddPoints and eVision.Easy3D.EPointCloud.AddPointCloud).

◆ AllocateCustomAttributeBufferUInt16()

int eVision.Easy3D.EPointCloud.AllocateCustomAttributeBufferUInt16 ( self,
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 eVision.Easy3D.EPointCloud grows (see eVision.Easy3D.EPointCloud.AddPoint, eVision.Easy3D.EPointCloud.AddPoints and eVision.Easy3D.EPointCloud.AddPointCloud).

◆ AllocateCustomAttributeBufferUInt32()

int eVision.Easy3D.EPointCloud.AllocateCustomAttributeBufferUInt32 ( self,
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 eVision.Easy3D.EPointCloud grows (see eVision.Easy3D.EPointCloud.AddPoint, eVision.Easy3D.EPointCloud.AddPoints and eVision.Easy3D.EPointCloud.AddPointCloud).

◆ AllocateCustomAttributeBufferUInt8()

int eVision.Easy3D.EPointCloud.AllocateCustomAttributeBufferUInt8 ( self,
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 eVision.Easy3D.EPointCloud grows (see eVision.Easy3D.EPointCloud.AddPoint, eVision.Easy3D.EPointCloud.AddPoints and eVision.Easy3D.EPointCloud.AddPointCloud).

◆ Clear()

None eVision.Easy3D.EPointCloud.Clear ( self)

◆ ClearAttributeBuffer()

None eVision.Easy3D.EPointCloud.ClearAttributeBuffer ( self,
int attribute )

Empties the attribute buffer.

Remarks:

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.

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

◆ ClosestPointToLine()

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

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

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

◆ ClosestPointToSegment()

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

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

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

◆ ComputeNormalsAndCurvatures() [1/3]

None eVision.Easy3D.EPointCloud.ComputeNormalsAndCurvatures ( self)

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.

Remarks:

The normals are stored in the eVision.Easy3D.E3DAttribute.Normal attribute buffer and the curvatures in the eVision.Easy3D.E3DAttribute.Curvature attribute buffer (if requested).

◆ ComputeNormalsAndCurvatures() [2/3]

None eVision.Easy3D.EPointCloud.ComputeNormalsAndCurvatures ( self,
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.

Remarks:

The normals are stored in the eVision.Easy3D.E3DAttribute.Normal attribute buffer and the curvatures in the eVision.Easy3D.E3DAttribute.Curvature attribute buffer (if requested).

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.

◆ ComputeNormalsAndCurvatures() [3/3]

None eVision.Easy3D.EPointCloud.ComputeNormalsAndCurvatures ( self,
bool computeCurvatures,
int 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.

Remarks:

The normals are stored in the eVision.Easy3D.E3DAttribute.Normal attribute buffer and the curvatures in the eVision.Easy3D.E3DAttribute.Curvature attribute buffer (if requested).

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.

◆ ComputePlaneBehind() [1/2]

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

Returns the eVision.Easy3D.E3DPlane with given normal on which the eVision.Easy3D.EPointCloud lays.

This is useful when projecting an eVision.Easy3D.EPointCloud on an eVision.Easy3D.EZMap.

Parameters
normalThe normal of the plane.

◆ ComputePlaneBehind() [2/2]

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

Returns the eVision.Easy3D.E3DPlane with given normal on which the eVision.Easy3D.EPointCloud lays.

This is useful when projecting an eVision.Easy3D.EPointCloud on an eVision.Easy3D.EZMap.

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

◆ CopyAllAttributesTo()

None eVision.Easy3D.EPointCloud.CopyAllAttributesTo ( self,
eVision.Easy3D.EPointCloud dstCloud,
int dstIndex,
int srcIndex )

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

Remarks:

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 eVision.Easy3D.EPointCloud, use function eVision.Easy3D.EPointCloud.AddPointAndAttributesTo.

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

◆ DistanceToLine()

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

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

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

◆ DistanceToSegment()

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

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

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

◆ EnableSpacePartition() [1/2]

bool eVision.Easy3D.EPointCloud.EnableSpacePartition ( self)

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 eVision.Easy3D.EPointCloud. The affected methods are eVision.Easy3D.EPointCloud.DistanceToSegment, eVision.Easy3D.EPointCloud.DistanceToLine. By default, space partition is disabled for these two methods.

Remarks:

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

◆ EnableSpacePartition() [2/2]

eVision.Easy3D.EPointCloud.EnableSpacePartition ( self,
bool value )

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 eVision.Easy3D.EPointCloud. The affected methods are eVision.Easy3D.EPointCloud.DistanceToSegment, eVision.Easy3D.EPointCloud.DistanceToLine. By default, space partition is disabled for these two methods.

Remarks:

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

◆ FillAttributeBufferDouble() [1/2]

None eVision.Easy3D.EPointCloud.FillAttributeBufferDouble ( self,
int attribute,
list[float] data )

Allocates and copies the data to the attribute buffer.

Remarks:

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

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

◆ FillAttributeBufferDouble() [2/2]

None eVision.Easy3D.EPointCloud.FillAttributeBufferDouble ( self,
int attribute,
list[float] data,
float defaultValue )

Allocates and copies the data to the attribute buffer.

Remarks:

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

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

◆ FillAttributeBufferE3DPoint() [1/2]

None eVision.Easy3D.EPointCloud.FillAttributeBufferE3DPoint ( self,
int attribute,
list[eVision._eVision.Easy3D.E3DPoint] data )

Allocates and copies the data to the attribute buffer.

Remarks:

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

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

◆ FillAttributeBufferE3DPoint() [2/2]

None eVision.Easy3D.EPointCloud.FillAttributeBufferE3DPoint ( self,
int attribute,
list[eVision._eVision.Easy3D.E3DPoint] data,
eVision.Easy3D.E3DPoint defaultValue )

Allocates and copies the data to the attribute buffer.

Remarks:

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

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

◆ FillAttributeBufferEC24A() [1/2]

None eVision.Easy3D.EPointCloud.FillAttributeBufferEC24A ( self,
int attribute,
list[eVision._eVision.EC24A] data )

Allocates and copies the data to the attribute buffer.

Remarks:

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

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

◆ FillAttributeBufferEC24A() [2/2]

None eVision.Easy3D.EPointCloud.FillAttributeBufferEC24A ( self,
int attribute,
list[eVision._eVision.EC24A] data,
eVision.EC24A defaultValue )

Allocates and copies the data to the attribute buffer.

Remarks:

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

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

◆ FillAttributeBufferFloat() [1/2]

None eVision.Easy3D.EPointCloud.FillAttributeBufferFloat ( self,
int attribute,
list[float] data )

Allocates and copies the data to the attribute buffer.

Remarks:

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

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

◆ FillAttributeBufferFloat() [2/2]

None eVision.Easy3D.EPointCloud.FillAttributeBufferFloat ( self,
int attribute,
list[float] data,
float defaultValue )

Allocates and copies the data to the attribute buffer.

Remarks:

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

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

◆ FillAttributeBufferInt32() [1/2]

None eVision.Easy3D.EPointCloud.FillAttributeBufferInt32 ( self,
int attribute,
list[int] data )

Allocates and copies the data to the attribute buffer.

Remarks:

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

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

◆ FillAttributeBufferInt32() [2/2]

None eVision.Easy3D.EPointCloud.FillAttributeBufferInt32 ( self,
int attribute,
list[int] data,
int defaultValue )

Allocates and copies the data to the attribute buffer.

Remarks:

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

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

◆ FillAttributeBufferUInt16() [1/2]

None eVision.Easy3D.EPointCloud.FillAttributeBufferUInt16 ( self,
int attribute,
list[int] data )

Allocates and copies the data to the attribute buffer.

Remarks:

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

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

◆ FillAttributeBufferUInt16() [2/2]

None eVision.Easy3D.EPointCloud.FillAttributeBufferUInt16 ( self,
int attribute,
list[int] data,
int defaultValue )

Allocates and copies the data to the attribute buffer.

Remarks:

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

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

◆ FillAttributeBufferUInt32() [1/2]

None eVision.Easy3D.EPointCloud.FillAttributeBufferUInt32 ( self,
int attribute,
list[int] data )

Allocates and copies the data to the attribute buffer.

Remarks:

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

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

◆ FillAttributeBufferUInt32() [2/2]

None eVision.Easy3D.EPointCloud.FillAttributeBufferUInt32 ( self,
int attribute,
list[int] data,
int defaultValue )

Allocates and copies the data to the attribute buffer.

Remarks:

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

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

◆ FillAttributeBufferUInt8() [1/2]

None eVision.Easy3D.EPointCloud.FillAttributeBufferUInt8 ( self,
int attribute,
list[int] data )

Allocates and copies the data to the attribute buffer.

Remarks:

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

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

◆ FillAttributeBufferUInt8() [2/2]

None eVision.Easy3D.EPointCloud.FillAttributeBufferUInt8 ( self,
int attribute,
list[int] data,
int defaultValue )

Allocates and copies the data to the attribute buffer.

Remarks:

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

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

◆ FillPointsBuffer()

None eVision.Easy3D.EPointCloud.FillPointsBuffer ( self,
ctypes.c_void_p pointsBuffer,
int numPoints )

Copies an external points buffer into the internal points buffer.

Remarks:

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.

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

◆ GetAttributeBuffer()

ctypes.c_void_p eVision.Easy3D.EPointCloud.GetAttributeBuffer ( self,
int attribute )

Retrieves a pointer to the internal attribute buffer.

Remarks:

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

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

◆ GetAttributeBufferType()

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

Returns the eVision.Easy3D.EAttributeType corresponding to the eVision.Easy3D.E3DAttribute.

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

◆ GetAttributeDouble()

float eVision.Easy3D.EPointCloud.GetAttributeDouble ( self,
int attribute,
int index )

Retrieve the value of a double attribute.

Remarks:

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

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

◆ GetAttributeE3DPoint()

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

Retrieve the value of an eVision.Easy3D.E3DPoint attribute.

Remarks:

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

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

◆ GetAttributeEC24A()

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

Retrieve the value of an eVision.EC24A attribute.

Remarks:

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

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

◆ GetAttributeFloat()

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

Retrieve the value of a float attribute.

Remarks:

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

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

◆ GetAttributeInt32()

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

Retrieve the value of an int32 attribute.

Remarks:

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

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

◆ GetAttributeUInt16()

int eVision.Easy3D.EPointCloud.GetAttributeUInt16 ( self,
int attribute,
int index )

Retrieve the value of an uint16 attribute.

Remarks:

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

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

◆ GetAttributeUInt32()

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

Retrieve the value of an uint32 attribute.

Remarks:

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

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

◆ GetAttributeUInt8()

int eVision.Easy3D.EPointCloud.GetAttributeUInt8 ( self,
int attribute,
int index )

Retrieve the value of an uint8 attribute.

Remarks:

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

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

◆ GetInitializedAttributes()

None eVision.Easy3D.EPointCloud.GetInitializedAttributes ( self,
list[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 ( self,
int index )

Retrieves a point from the eVision.Easy3D.EPointCloud.

Parameters
indexIndex of the point to be retrieved.

◆ HasAttributeBuffer()

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

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

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

◆ Load() [1/2]

None eVision.Easy3D.EPointCloud.Load ( self,
eVision.ESerializer | None serializer )

Loads the eVision.Easy3D.EPointCloud.

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

Parameters
serializerThe eVision.ESerializer object that is read from.

◆ Load() [2/2]

None eVision.Easy3D.EPointCloud.Load ( self,
str path )

Loads the eVision.Easy3D.EPointCloud.

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

Parameters
pathThe file path.

◆ LoadCSV() [1/2]

None eVision.Easy3D.EPointCloud.LoadCSV ( self,
str path )

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

Remarks:

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 eVision.Easy3D.EPointCloud.SaveCSV to save to CSV file.

Parameters
pathThe full path of the input file.

◆ LoadCSV() [2/2]

None eVision.Easy3D.EPointCloud.LoadCSV ( self,
str path,
eVision.EFloatRange undefinedZValues )

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

Remarks:

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 eVision.Easy3D.EPointCloud.SaveCSV to save to CSV file.

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

◆ LoadOBJ() [1/2]

None eVision.Easy3D.EPointCloud.LoadOBJ ( self,
str path )

Loads an eVision.Easy3D.EPointCloud stored in the OBJ file format.

Remarks:

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 eVision.Easy3D.EPointCloud.SaveOBJ to save to OBJ file.

Parameters
pathThe full path of the input file.

◆ LoadOBJ() [2/2]

None eVision.Easy3D.EPointCloud.LoadOBJ ( self,
str path,
eVision.EFloatRange undefinedZValues )

Loads an eVision.Easy3D.EPointCloud stored in the OBJ file format.

Remarks:

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 eVision.Easy3D.EPointCloud.SaveOBJ to save to OBJ file.

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

◆ LoadPCD() [1/2]

None eVision.Easy3D.EPointCloud.LoadPCD ( self,
str path )

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

ASCII, binary and binary_compressed formats are supported.

Remarks:

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 eVision.Easy3D.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 eVision.Easy3D.EPointCloud.SavePCD to save to PCD file.

Parameters
pathThe full path of the input file.

◆ LoadPCD() [2/2]

None eVision.Easy3D.EPointCloud.LoadPCD ( self,
str path,
eVision.EFloatRange undefinedZValues )

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

ASCII, binary and binary_compressed formats are supported.

Remarks:

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 eVision.Easy3D.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 eVision.Easy3D.EPointCloud.SavePCD to save to PCD file.

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

◆ LoadPLY() [1/2]

None eVision.Easy3D.EPointCloud.LoadPLY ( self,
str path )

Loads an eVision.Easy3D.EPointCloud stored in the PLY file format.

Remarks:

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 eVision.Easy3D.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 eVision.Easy3D.EPointCloud.SavePLY to save to PLY file.

Parameters
pathThe full path of the input file.

◆ LoadPLY() [2/2]

None eVision.Easy3D.EPointCloud.LoadPLY ( self,
str path,
eVision.EFloatRange undefinedZValues )

Loads an eVision.Easy3D.EPointCloud stored in the PLY file format.

Remarks:

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 eVision.Easy3D.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 eVision.Easy3D.EPointCloud.SavePLY to save to PLY file.

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

◆ LoadXYZ() [1/2]

None eVision.Easy3D.EPointCloud.LoadXYZ ( self,
str path )

Loads an eVision.Easy3D.EPointCloud stored in the XYZ file format.

Remarks:

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

Parameters
pathThe full path of the input file.

◆ LoadXYZ() [2/2]

None eVision.Easy3D.EPointCloud.LoadXYZ ( self,
str path,
eVision.EFloatRange undefinedZValues )

Loads an eVision.Easy3D.EPointCloud stored in the XYZ file format.

Remarks:

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

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

◆ NumPoints()

int eVision.Easy3D.EPointCloud.NumPoints ( self)

Number of points in the eVision.Easy3D.EPointCloud.

◆ PointsBuffer()

ctypes.c_void_p eVision.Easy3D.EPointCloud.PointsBuffer ( self)

Retrieves a pointer to the internal points buffer.

◆ PrepareSpacePartition()

None eVision.Easy3D.EPointCloud.PrepareSpacePartition ( self)

Enables the build of the space partition (like eVision.Easy3D.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.

Remarks:

See also eVision.Easy3D.EPointCloud.EnableSpacePartition.

◆ RemovePoint()

None eVision.Easy3D.EPointCloud.RemovePoint ( self,
int index )

Removes a point and its corresponding attributes from the eVision.Easy3D.EPointCloud.

Parameters
indexThe index of the point to remove.

◆ Save() [1/2]

None eVision.Easy3D.EPointCloud.Save ( self,
eVision.ESerializer | None serializer )

Saves the eVision.Easy3D.EPointCloud.

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

Parameters
serializerThe eVision.ESerializer object that is written to.

◆ Save() [2/2]

None eVision.Easy3D.EPointCloud.Save ( self,
str path )

Saves the eVision.Easy3D.EPointCloud.

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

Parameters
pathThe file path.

◆ SaveCSV()

None eVision.Easy3D.EPointCloud.SaveCSV ( self,
str path )

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

Remarks:

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

Parameters
pathThe full path of the destination file.

◆ SaveOBJ()

None eVision.Easy3D.EPointCloud.SaveOBJ ( self,
str path )

Saves the eVision.Easy3D.EPointCloud in the OBJ file format.

Remarks:

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 eVision.Easy3D.EPointCloud.LoadOBJ to load from OBJ file.

Parameters
pathThe full path of the destination file.

◆ SavePCD() [1/3]

None eVision.Easy3D.EPointCloud.SavePCD ( self,
str path )

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

ASCII, binary and binary_compressed formats are available.

Remarks:

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 eVision.Easy3D.EPointCloud.LoadPCD to load from PCD file.

Parameters
pathThe full path of the destination file.

◆ SavePCD() [2/3]

None eVision.Easy3D.EPointCloud.SavePCD ( self,
str path,
bool binary )

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

ASCII, binary and binary_compressed formats are available.

Remarks:

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 eVision.Easy3D.EPointCloud.LoadPCD to load from PCD file.

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

◆ SavePCD() [3/3]

None eVision.Easy3D.EPointCloud.SavePCD ( self,
str path,
bool binary,
bool binaryCompressed )

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

ASCII, binary and binary_compressed formats are available.

Remarks:

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 eVision.Easy3D.EPointCloud.LoadPCD to load from PCD file.

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.

◆ SavePLY() [1/2]

None eVision.Easy3D.EPointCloud.SavePLY ( self,
str path )

Saves the eVision.Easy3D.EPointCloud in the PLY file format.

Remarks:

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 eVision.Easy3D.EPointCloud.LoadPLY to load from PLY file.

Parameters
pathThe full path of the destination file.

◆ SavePLY() [2/2]

None eVision.Easy3D.EPointCloud.SavePLY ( self,
str path,
bool binary )

Saves the eVision.Easy3D.EPointCloud in the PLY file format.

Remarks:

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 eVision.Easy3D.EPointCloud.LoadPLY to load from PLY file.

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

◆ SaveXYZ()

None eVision.Easy3D.EPointCloud.SaveXYZ ( self,
str path )

Saves the eVision.Easy3D.EPointCloud in the XYZ file format.

Remarks:

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

Parameters
pathThe full path of the destination file.

◆ SetAttributeDouble()

None eVision.Easy3D.EPointCloud.SetAttributeDouble ( self,
int attribute,
int index,
float value )

Sets the corresponding attribute at the given index.

Remarks:

This function does not perform an allocation. To add a new point with some attributes in the eVision.Easy3D.EPointCloud, use functions eVision.Easy3D.EPointCloud.AddPoint or eVision.Easy3D.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 eVision.EException.

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

◆ SetAttributeE3DPoint()

None eVision.Easy3D.EPointCloud.SetAttributeE3DPoint ( self,
int attribute,
int index,
eVision.Easy3D.E3DPoint value )

Sets the corresponding attribute at the given index.

Remarks:

This function does not perform an allocation. To add a new point with some attributes in the eVision.Easy3D.EPointCloud, use functions eVision.Easy3D.EPointCloud.AddPoint or eVision.Easy3D.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 eVision.EException.

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

◆ SetAttributeEC24A()

None eVision.Easy3D.EPointCloud.SetAttributeEC24A ( self,
int attribute,
int index,
eVision.EC24A value )

Sets the corresponding attribute at the given index.

Remarks:

This function does not perform an allocation. To add a new point with some attributes in the eVision.Easy3D.EPointCloud, use functions eVision.Easy3D.EPointCloud.AddPoint or eVision.Easy3D.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 eVision.EException.

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

◆ SetAttributeFloat()

None eVision.Easy3D.EPointCloud.SetAttributeFloat ( self,
int attribute,
int index,
float value )

Sets the corresponding attribute at the given index.

Remarks:

This function does not perform an allocation. To add a new point with some attributes in the eVision.Easy3D.EPointCloud, use functions eVision.Easy3D.EPointCloud.AddPoint or eVision.Easy3D.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 eVision.EException.

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

◆ SetAttributeInt32()

None eVision.Easy3D.EPointCloud.SetAttributeInt32 ( self,
int attribute,
int index,
int value )

Sets the corresponding attribute at the given index.

Remarks:

This function does not perform an allocation. To add a new point with some attributes in the eVision.Easy3D.EPointCloud, use functions eVision.Easy3D.EPointCloud.AddPoint or eVision.Easy3D.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 eVision.EException.

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

◆ SetAttributeUInt16()

None eVision.Easy3D.EPointCloud.SetAttributeUInt16 ( self,
int attribute,
int index,
int value )

Sets the corresponding attribute at the given index.

Remarks:

This function does not perform an allocation. To add a new point with some attributes in the eVision.Easy3D.EPointCloud, use functions eVision.Easy3D.EPointCloud.AddPoint or eVision.Easy3D.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 eVision.EException.

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

◆ SetAttributeUInt32()

None eVision.Easy3D.EPointCloud.SetAttributeUInt32 ( self,
int attribute,
int index,
int value )

Sets the corresponding attribute at the given index.

Remarks:

This function does not perform an allocation. To add a new point with some attributes in the eVision.Easy3D.EPointCloud, use functions eVision.Easy3D.EPointCloud.AddPoint or eVision.Easy3D.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 eVision.EException.

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

◆ SetAttributeUInt8()

None eVision.Easy3D.EPointCloud.SetAttributeUInt8 ( self,
int attribute,
int index,
int value )

Sets the corresponding attribute at the given index.

Remarks:

This function does not perform an allocation. To add a new point with some attributes in the eVision.Easy3D.EPointCloud, use functions eVision.Easy3D.EPointCloud.AddPoint or eVision.Easy3D.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 eVision.EException.

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