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

Represents a 3D meshed object. More...

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

Public Member Functions

 EMesh ()
 Creates an EMesh object.
 EMesh (eVision.Easy3D.EPointCloud pointCloud, int[] triangleIndexes)
 Creates an EMesh object.
 EMesh (eVision.Easy3D.EPointCloud pointCloud, int[] triangleIndexes, eVision.Easy3D.E3DPoint[] normals)
 Creates an EMesh object.
 EMesh (eVision.Easy3D.EMesh other)
 Creates an EMesh object.
void Clear ()
 Empties the Mesh.
void Load (string path)
 Loads the EMesh. Supported formats are eVision proprietary and STL. The given ESerializer must have been created for reading.
void Load (eVision.ESerializer serializer)
 Loads the EMesh. Supported formats are eVision proprietary and STL. The given ESerializer must have been created for reading.
void Save (string path)
 Saves the EMesh. Supported formats are eVision proprietary and STL. The given ESerializer must have been created for writing.
void Save (eVision.ESerializer serializer)
 Saves the EMesh. Supported formats are eVision proprietary and STL. The given ESerializer must have been created for writing.
void SaveSTL (string path, bool binary)
 Saves the triangle mesh to an STL file.
void SaveSTL (string path)
 Saves the triangle mesh to an STL file.
void LoadSTL (string path)
 Loads a triangle mesh from an STL file.
eVision.Easy3D.E3DPlane ComputePlaneBehind (eVision.Easy3D.E3DPoint normal, float margin)
 Returns the E3DPlane with given normal on which the EMesh lays. This is useful when projecting an EMesh on an EZMap.
eVision.Easy3D.E3DPlane ComputePlaneBehind (eVision.Easy3D.E3DPoint normal)
 Returns the E3DPlane with given normal on which the EMesh lays. This is useful when projecting an EMesh on an EZMap.

Properties

eVision.Easy3D.EPointCloud PointCloud [get]
 Returns the point cloud of the EMesh object.
IntPtr TriangleIndexes [get]
 Returns a pointer to the index array (an array of 32 bit signed integers) representing the list of triangles. Indexes are referring to the array of E3DPoint.
IntPtr Normals [get]
 Returns a pointer to the array (of E3DPoint) representing the list of normals. If the EMesh object has no triangle mesh data, this method returns NULL.
int TriangleCount [get]
 Returns the number of triangles.

Detailed Description

Represents a 3D meshed object.

License(s): Easy3D

Constructor & Destructor Documentation

◆ EMesh() [1/4]

eVision.Easy3D.EMesh.EMesh ( )

Creates an EMesh object.

◆ EMesh() [2/4]

eVision.Easy3D.EMesh.EMesh ( eVision.Easy3D.EPointCloud pointCloud,
int[] triangleIndexes )

Creates an EMesh object.

Parameters
pointCloudA point cloud
triangleIndexesThe triangle mesh is a list of indexes, referring to the array contained in "pointCloud".

A triangle is defined by 3 indexes (T1a T1b T1c T2a T2b T2c T3a ....). Index values must be in [0, N[ with N the number of points in the EPointCloud. The triangle index array size is a multiple of 3.

◆ EMesh() [3/4]

eVision.Easy3D.EMesh.EMesh ( eVision.Easy3D.EPointCloud pointCloud,
int[] triangleIndexes,
eVision.Easy3D.E3DPoint[] normals )

Creates an EMesh object.

Parameters
pointCloudA point cloud
triangleIndexesThe triangle mesh is a list of indexes, referring to the array contained in "pointCloud".

A triangle is defined by 3 indexes (T1a T1b T1c T2a T2b T2c T3a ....). Index values must be in [0, N[ with N the number of points in the EPointCloud. The triangle index array size is a multiple of 3.

Parameters
normalsNormals of each of the faces of the mesh. Must be the third of the size of "triangleIndexes".

If not provided, they will be computed automatically from the faces by assuming the vertices are listed in counter-clock-wise order from outside (which is the convention used by the stl file format).

◆ EMesh() [4/4]

eVision.Easy3D.EMesh.EMesh ( eVision.Easy3D.EMesh other)

Creates an EMesh object.

Parameters
otherAnother EMesh.

Member Function Documentation

◆ Clear()

void eVision.Easy3D.EMesh.Clear ( )

Empties the Mesh.

◆ ComputePlaneBehind() [1/2]

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

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

Parameters
normalThe normal of the plane.

◆ ComputePlaneBehind() [2/2]

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

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

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

◆ Load() [1/2]

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

Loads the EMesh. Supported formats are eVision proprietary and STL. The given ESerializer must have been created for reading.

Parameters
serializerThe serializer.

◆ Load() [2/2]

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

Loads the EMesh. Supported formats are eVision proprietary and STL. The given ESerializer must have been created for reading.

Parameters
pathThe file path.

◆ LoadSTL()

void eVision.Easy3D.EMesh.LoadSTL ( string path)

Loads a triangle mesh from an STL file.

Parameters
pathThe path to the STL file.

◆ Save() [1/2]

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

Saves the EMesh. Supported formats are eVision proprietary and STL. The given ESerializer must have been created for writing.

Parameters
serializerThe ESerializer object that is written to.

◆ Save() [2/2]

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

Saves the EMesh. Supported formats are eVision proprietary and STL. The given ESerializer must have been created for writing.

Parameters
pathThe file path.

◆ SaveSTL() [1/2]

void eVision.Easy3D.EMesh.SaveSTL ( string path)

Saves the triangle mesh to an STL file.

Parameters
pathThe path to the STL file.

◆ SaveSTL() [2/2]

void eVision.Easy3D.EMesh.SaveSTL ( string path,
bool binary )

Saves the triangle mesh to an STL file.

Parameters
pathThe path to the STL file.
binaryOptional parameter, activates the binary file format (default is true).

Property Documentation

◆ Normals

IntPtr eVision.Easy3D.EMesh.Normals
get

Returns a pointer to the array (of E3DPoint) representing the list of normals. If the EMesh object has no triangle mesh data, this method returns NULL.

◆ PointCloud

eVision.Easy3D.EPointCloud eVision.Easy3D.EMesh.PointCloud
get

Returns the point cloud of the EMesh object.

◆ TriangleCount

int eVision.Easy3D.EMesh.TriangleCount
get

Returns the number of triangles.

If the EMesh object has no triangle mesh data, the method returns 0.

◆ TriangleIndexes

IntPtr eVision.Easy3D.EMesh.TriangleIndexes
get

Returns a pointer to the index array (an array of 32 bit signed integers) representing the list of triangles. Indexes are referring to the array of E3DPoint.

A triangle is defined by 3 indexes (T1a T1b T1c T2a T2b T2c T3a ....). The triangle index array size is a multiple of 3.

Index values must be in [0, N[ where N is the number of points in the point cloud. If the EMesh object has no triangle mesh data, this method returns NULL.