HPS::Exchange::TessellationOptionsKit

class HPS.Exchange.TessellationOptionsKit : public HPS.SprocketKit

The TessellationOptionsKit class is a user space object. It contains settings controlling how STL data is exported via Exchange.

Public Functions

override void Dispose ()
override bool Empty ()

Indicates whether this TessellationOptionsKit has any values set on it.

Return

true if no values are set on this TessellationOptionsKit, false otherwise.

bool Equals (HPS.Exchange.TessellationOptionsKit in_kit)

Check if the source TessellationOptionsKit is equivalent to this TessellationOptionsKit.

Param in_kit

The source TessellationOptionsKit to compare to this TessellationOptionsKit.

Return

true if the objects are equivalent, false otherwise.

override bool Equals (Object obj)
override int GetHashCode ()
override HPS.Type ObjectType ()

This function returns the type the object, as declared (if the object is derived, this does not give the true type of the derived object).

Return

The declared type of the object in question, which may differ from the true, underlying type.

void Set (HPS.Exchange.TessellationOptionsKit in_kit)

Copies the source TessellationOptionsKit into this TessellationOptionsKit.

Param in_kit

The source TessellationOptionsKit to copy.

HPS.Exchange.TessellationOptionsKit SetAccuracy (HPS.Exchange.Tessellation.Accuracy in_type)

Sets the accuracy of the tessellation that will be generated for BRep data.

Param in_type

The accuracy to use for tessellation generation.

Return

A reference to this TessellationOptionsKit.

HPS.Exchange.TessellationOptionsKit SetAccuracy (HPS.Exchange.Tessellation.Accuracy in_type, bool in_accurate_normals)

Sets the accuracy of the tessellation that will be generated for BRep data.

Param in_type

The accuracy to use for tessellation generation.

Param in_accurate_normals

Whether to compute surface normals when performing accurate tessellation. This only applies if in_type is set to Tessellation.Accuracy.Accurate or Tessellation.GridAccuracy.GridAccurate. This correspond to the (negated) value that will be passed to A3DRWParamsTessellationData::m_bDoNotComputeNormalsInAccurateTessellation.

Return

A reference to this TessellationOptionsKit.

HPS.Exchange.TessellationOptionsKit SetAccuracy (HPS.Exchange.Tessellation.Accuracy in_type, bool in_accurate_normals, bool in_accurate_surface_curvatures)

Sets the accuracy of the tessellation that will be generated for BRep data.

Param in_type

The accuracy to use for tessellation generation.

Param in_accurate_normals

Whether to compute surface normals when performing accurate tessellation. This only applies if in_type is set to Tessellation.Accuracy.Accurate or Tessellation.GridAccuracy.GridAccurate. This correspond to the (negated) value that will be passed to A3DRWParamsTessellationData::m_bDoNotComputeNormalsInAccurateTessellation.

Param in_accurate_surface_curvatures

Whether to take into account surfaces curvature in accurate tessellation to controle triangles elongation directions. This only applies if in_type is set to Tessellation.Accuracy.Accurate or Tessellation.GridAccuracy.GridAccurate. This correspond to the value that will be passed to A3DRWParamsTessellationData::m_bAccurateSurfaceCurvatures.

Return

A reference to this TessellationOptionsKit.

HPS.Exchange.TessellationOptionsKit SetAccuracy (HPS.Exchange.Tessellation.Accuracy in_type, bool in_accurate_normals, bool in_accurate_surface_curvatures, double in_accurate_grid_maximum_stitch_length)

Sets the accuracy of the tessellation that will be generated for BRep data.

Param in_type

The accuracy to use for tessellation generation.

Param in_accurate_normals

Whether to compute surface normals when performing accurate tessellation. This only applies if in_type is set to Tessellation.Accuracy.Accurate or Tessellation.GridAccuracy.GridAccurate. This correspond to the (negated) value that will be passed to A3DRWParamsTessellationData::m_bDoNotComputeNormalsInAccurateTessellation.

Param in_accurate_surface_curvatures

Whether to take into account surfaces curvature in accurate tessellation to controle triangles elongation directions. This only applies if in_type is set to Tessellation.Accuracy.Accurate or Tessellation.GridAccuracy.GridAccurate. This correspond to the value that will be passed to A3DRWParamsTessellationData::m_bAccurateSurfaceCurvatures.

Param in_accurate_grid_maximum_stitch_length

Maximal grid stitch length. Disabled if value is 0. Be careful, a too small value can generate a huge tessellation. This only applies if in_type is set to Tessellation.GridAccuracy.GridAccurate. This correspond to the value that will be passed to A3DRWParamsTessellationData::m_dAccurateTessellationWithGridMaximumStitchLength.

Return

A reference to this TessellationOptionsKit.

HPS.Exchange.TessellationOptionsKit SetLevel (HPS.Exchange.Tessellation.Chord.Limit in_limit_type, double in_limit, double in_angle_tolerance)

Sets the user defined quality of the tessellation that will be generated for BRep data. This implicitly sets A3DRWParamsTessellationData::m_eTessellationLevel to kA3DTessLODUserDefined.

Param in_limit_type

The type of the chord limit to be specified.

Param in_limit

Either the ratio of the tessellation chord height to the bounding box height which should be in the range [50, 10000], or the maximum distance between the surface definition and the tessellation approximation, depending on the preceding argument.

Param in_angle_tolerance

The maximum angle in degrees between two consecutive wire elements in the generated tessellation which should be in the range [10, 40]. This corresponds to the value that will be passed to A3DRWParamsTessellationData::m_dAngleToleranceDeg.

Return

A reference to this TessellationOptionsKit.

HPS.Exchange.TessellationOptionsKit SetLevel (HPS.Exchange.Tessellation.Level in_level)

Sets the predefined quality of the tessellation that will be generated for BRep data. This corresponds to the value that will be passed to A3DRWParamsTessellationData::m_eTessellationLevelOfDetail.

Param in_level

The predefined quality of the tessellation that will be generated for BRep data.

Return

A reference to this TessellationOptionsKit.

HPS.Exchange.TessellationOptionsKit SetMaximumEdgeLength (double in_length)

Sets the maximum length of triangle edges in the tessellation generated for BRep data. This corresponds to the value that will be passed to A3DRWParamsTessellationData::m_dMaximalTriangleEdgeLength.

Param in_length

The maximum length of triangle edges in the tessellation generated for BRep data. The value must be non-negative, and if set to 0.0, the length will not be used when generating the tessellation.

Return

A reference to this TessellationOptionsKit.

HPS.Exchange.TessellationOptionsKit SetUVPointPreservation (bool in_state)

Sets whether to keep parametric points as texture coordinates when generating the tessellation for BRep data. This corresponds to the value that will be passed to A3DRWParamsTessellationData::m_bKeepUVPoints.

Param in_state

Whether to keep parametric points as texture coordinates when generating the tessellation for BRep data.

Return

A reference to this TessellationOptionsKit.

void Show (out HPS.Exchange.TessellationOptionsKit out_kit)

Copies this TessellationOptionsKit into the given TessellationOptionsKit.

Param out_kit

The TessellationOptionsKit to populate with the contents of this TessellationOptionsKit.

bool ShowAccuracy (out HPS.Exchange.Tessellation.Accuracy out_type, out bool out_accurate_normals, out bool out_accurate_surface_curvatures, out double out_accurate_grid_maximum_stitch_length)

Shows the accuracy setting.

Param out_type

The type of the accuracy which was specified.

Param out_accurate_normals

Whether to compute surface normals when performing accurate tessellation. This only applies if out_type is different than Tessellation.Accuracy.Standard.

Param out_accurate_surface_curvatures

Whether to take into account surfaces curvature in accurate tessellation to controle triangles elongation directions. This only applies if out_type is different than Tessellation.Accuracy.Standard.

Param out_accurate_grid_maximum_stitch_length

Maximal grid stitch length. Disabled if value is 0. Be careful, a too small value can generate a huge tessellation. This only applies if out_type is Tessellation.Accuracy.GridAccurate.

Return

true if an accuracy setting was specified, false otherwise.

bool ShowLevel (out HPS.Exchange.Tessellation.Type out_type, out HPS.Exchange.Tessellation.Level out_level, out HPS.Exchange.Tessellation.Chord.Limit out_limit_type, out double out_limit, out double out_angle_tolerance)

Shows the level setting.

Param out_type

The type of the level setting which was specified.

Param out_level

The predefined quality of the tessellation that will be generated for BRep data. This is only valid if out_type is Tessellation.Type.Standard.

Param out_limit_type

The type of chord limit which was specified. This is only valid if out_type is Tessellation.Type.Custom.

Param out_limit

The chord limit to use to generate tessellation for BRep data. Its interpretation depends on the preceding argument. This is only valid if out_type is Tessellation.Type.Custom.

Param out_angle_tolerance

The maximum angle in degrees between two consecutive wire elements in the generated tessellation. This is only valid if out_type is Tessellation.Type.Custom.

Return

true if a level setting was specified, false otherwise.

bool ShowMaximumEdgeLength (out double out_length)

Shows the maximum edge length setting.

Param out_length

The maximum edge length setting.

Return

true if a maximum edge length setting was specified, false otherwise.

bool ShowUVPointPreservation (out bool out_state)

Shows the UV preservation setting.

Param out_state

Whether to keep parametric points as texture coordinates when generating the tessellation for BRep data.

Return

true if a UV preservation setting was specified, false otherwise.

TessellationOptionsKit ()

The default constructor creates an empty TessellationOptionsKit object.

TessellationOptionsKit (HPS.Exchange.TessellationOptionsKit in_kit)

The copy constructor creates a new TessellationOptionsKit object that contains the same settings as the source TessellationOptionsKit.

Param in_kit

The source TessellationOptionsKit to copy.

HPS.Exchange.TessellationOptionsKit UnsetAccuracy ()

Removes the accuracy setting.

Return

A reference to this TessellationOptionsKit.

HPS.Exchange.TessellationOptionsKit UnsetEverything ()

Removes all settings from this TessellationOptionsKit.

Return

A reference to this TessellationOptionsKit.

HPS.Exchange.TessellationOptionsKit UnsetLevel ()

Removes the level setting.

Return

A reference to this TessellationOptionsKit.

HPS.Exchange.TessellationOptionsKit UnsetMaximumEdgeLength ()

Removes the maximum edge length setting.

Return

A reference to this TessellationOptionsKit.

HPS.Exchange.TessellationOptionsKit UnsetUVPointPreservation ()

Removes the UV preservation setting.

Return

A reference to this TessellationOptionsKit.

Public Static Functions

HPS.Exchange.TessellationOptionsKit GetDefault ()

Creates an TessellationOptionsKit which contains the default settings. The returned object will not necessarily have values set for every option, but it will have settings for those options where it is reasonable to have a default. These values will be used for import unless an option is overridden by the options passed to File.Tessellation.

Return

An TessellationOptionsKit with the default settings.

bool operator!= (HPS.Exchange.TessellationOptionsKit a, HPS.Exchange.TessellationOptionsKit b)
bool operator== (HPS.Exchange.TessellationOptionsKit a, HPS.Exchange.TessellationOptionsKit b)