#include <HIOUtilityExchange.h>
Public Types | |
enum | HTessellationLOD { TessLODExtraLow, TessLODLow, TessLODMedium, TessLODHigh, TessLODExtraHigh, TessLODUserDefined, TessLODControlledPrecision } |
Public Attributes | |
bool | m_bAccurateTessellation |
bool | m_bAccurateTessellationWithGrid |
bool | m_bDoNotComputeNormalsInAccurateTessellation |
bool | m_bKeepUVPoints |
bool | m_bUseHeightInsteadOfRatio |
double | m_dAccurateTessellationWithGridMaximumStitchLength |
double | m_dAngleToleranceDeg |
double | m_dChordHeightRatio |
double | m_dMaxChordHeight |
double | m_dMaximalTriangleEdgeLength |
double | m_dMinimalTriangleAngleDeg |
HTessellationLOD | m_TessLod |
Specifies the settings of tessellation in Import.
Enumerator | |
---|---|
TessLODExtraLow |
Extra Low level: when selected, these members are automatically defined with the following values: ChordHeightRatio = 50, AngleToleranceDeg = 40. |
TessLODLow |
Low level: when selected, these members are automatically defined with the following values: ChordHeightRatio = 600, AngleToleranceDeg = 40. |
TessLODMedium |
Medium level: when selected, these members are automatically defined with the following values: ChordHeightRatio = 2000, AngleToleranceDeg = 40. |
TessLODHigh |
High level: when selected, these members are automatically defined with the following values: ChordHeightRatio = 5000, AngleToleranceDeg = 30. |
TessLODExtraHigh |
Extra High level: when selected, these members are automatically defined with the following values: ChordHeightRatio = 10000, AngleToleranceDeg = 20. |
TessLODUserDefined |
User Defined level: when selected, these members should be defined: m_dChordHeightRatio if m_bUseHeightInsteadOfRatio is set to false, m_dMaxChordHeight if m_bUseHeightInsteadOfRatio is set to true, m_dAngleToleranceDeg. Be very careful when using m_dMaxChordHeight because a too small value would generate a huge tessellation. |
TessLODControlledPrecision |
Controlled Precision level: when selected, these members should be defined: m_dAngleToleranceDeg, m_dMaxChordHeight, m_dMinimalTriangleAngleDeg.
|
bool HTessellationSettings::m_bAccurateTessellation |
Accurate tessellation. Uses standard parameters. 'false' indicates the tessellation is set for visualization. Setting this value to 'true' will generate tessellation more suited for analysis. Can be used with all TessellationLevelOfDetails.
bool HTessellationSettings::m_bAccurateTessellationWithGrid |
Enable accurate tessellation with faces inner points on a grid.
bool HTessellationSettings::m_bDoNotComputeNormalsInAccurateTessellation |
Do not compute surface normals in accurate tessellation.
bool HTessellationSettings::m_bKeepUVPoints |
Keep parametric points as texture points.
bool HTessellationSettings::m_bUseHeightInsteadOfRatio |
Use m_dMaxChordHeight instead of m_dChordHeightRatio if m_eTessellationLevelOfDetail = kA3DTessLODUserDefined.
double HTessellationSettings::m_dAccurateTessellationWithGridMaximumStitchLength |
Maximal grid stitch length. Disabled if value is 0. Be careful, a too small value can generate a huge tessellation.
double HTessellationSettings::m_dAngleToleranceDeg |
Specifies the maximum angle between two contiguous tessellation segments describing the curve of a topological edge for every face.
During tessellation, the curve describing the edge of a topological face will be approximated using straight line segments. m_dAngleToleranceDeg is the maximum angle between two consecutive segments.
Allowable values range from 10 to 40. Lower values will result in greater accuracy.
double HTessellationSettings::m_dChordHeightRatio |
Specifies the ratio of the diagonal length of the bounding box to the chord height. A value of 50 means that the diagonal of the bounding box is 50 times greater than the chord height. Values can range from 50 to 10,000. Higher values will generate more accurate tessellation.
double HTessellationSettings::m_dMaxChordHeight |
Specifies the maximum distance between the original geometric surface specified in the CAD file and the resulting tessellation. Be careful, very small values can generate very large tessellation files.
Conversely, very large values can generate inaccurate tessellation. In such cases, it may be better to use the m_dChordHeightRatio
member to scale this value relative to the object that's being tessellated.
m_dMaxChordHeight
is ignored if m_bUseHeightInsteadOfRatio
isn't set to true. double HTessellationSettings::m_dMaximalTriangleEdgeLength |
Maximal length of the edges of triangles. Disabled if value is 0. Be careful, a too small value can generate a huge tessellation.
double HTessellationSettings::m_dMinimalTriangleAngleDeg |
Specifies the angle between two contiguous segments of wire edges for every face. Allowable values range from 10 through 30.