fastest 3D software for linux

Linux 3D
interactive ray-tracing
[1 introduction] [2 overview] [3 reference] [4 GUI]

Index

 E3dPolygon_TestTriangulate
 E3dPolygon_Flatten
 E3dPolygon_FlattenScaled


E3dPolygon_TestTriangulate

Test-triangulate a Polygon

Syntax
int E3dPolygon_TestTriangulate(E3dPolygon* PPolygon, const E3dVertexNodeSize PVertexNodeSize, const E3dVertex* PVertices, const E3dVertexSize PVertexSize, const EBool PDoConvex)

Arguments
E3dPolygon* PPolygon Pointer to the E3dPolygon structure const E3dVertexNodeSize PVertexNodeSize The size of a VertexNode in PPolygon (bytes) const E3dVertex* PVertices The array of Vertices this Polygon is indexing in its VertexNodes const EBool PDoConvex Should we try to triangulate convex Polys or just concave ones
Description
Triangulates a Polygon, but it doesn't store the resulting triangles in Polygon structure. This function can be useful to determine whether a Polygon can be triangulated (if not, it is usually considered "degenerate" and could be thrown out, ignored etc.)

Return value
The number of resulting triangles, or 0 if the triangulation was unsuccessful.

See also
E3dPolygon_Triangulate, E3dPolygon_TriangulateForRendering

E3dPolygon_Flatten

Rotate a Polygon, so it's aligned with the X-Y plane

Syntax
E3dCoord2* E3dPolygon_Flatten(const E3dPolygon* PPolygon, const E3dVertexNodeSize PVertexNodeSize, const E3dVertex* PVertices, const E3dVertexSize PVertexSize)

Arguments
const E3dPolygon* PPolygon Pointer to the Polygon const E3dVertex* PVertices The Vertex array of the Mesh containing this Polygon
Description
Aligns the Polygon with the X-Y plane, making it a 2D Polygon.
This is useful for many Polygon operations, such as determining Edge intersections, triangulating etc.

Return value
Pointer to an array of 2DPositions, corresponding to each VertexNode of the Polygon, or NULL in case of an error.
This array must be freed by the caller when not used any more.

See also
E3dPolygon_FlattenScaled()

E3dPolygon_FlattenScaled

Scale and rotate a Polygon, so it's aligned with the X-Y plane

Syntax
E3dCoord2* E3dPolygon_FlattenScaled(const E3dPolygon* PPolygon, const E3dVertexNodeSize PVertexNodeSize, const E3dVertex* PVertices, const E3dVertexSize PVertexSize, const E3dCoordinate PScale)

Arguments
const E3dPolygon* PPolygon Pointer to the Polygon const E3dVertex* PVertices The Vertex array of the Mesh containing this Polygon const E3dVertexSize PVertexSize The size of each Vertex in bytes const E3dCoordinate PScale Scaling factor
Description
Aligns the Polygon with the X-Y plane, making it a 2D Polygon.
Before being rotated, the Polygon will be uniformly scaled around its center by PScale.

Return value
Pointer to an array of 2DPositions, corresponding to each VertexNode of the Polygon, or NULL in case of an error.
This array must be freed by the caller when not used any more

See also
E3dPolygon_Flatten()
© 1996-2022 By Gabor Nagy