class
QuadReductionSettings
Settings for the QuadReductionProcessor class. This contains the fundamental reduction settings like stop conditions and reduction targets.
Properties
Property | Description |
---|---|
KeepUnprocessedSceneMeshes | If false, the processor will remove all geometry and scene meshes which were not selected for processing from the scene. If true, only the geometry in the ProcessSelectionSet will be replaced or updated, while the rest of the scene tree is kept intact. New geometry is always added as the last child of the scene root. If generating a mappingimage to cast materials, new materialIds will also be appended to the end of the old material table instead of replacing the old ones. |
MergeGeometries | The processor will merge all the geometries in the scene into a single geometry if MergeGeometries is enabled. |
Name | The name of the QuadReductionSettings object. (Inherited from Object) |
ProcessSelectionSetID | Which selection set should be processed. If set to -1, all geometries in the scene will be processed. If both selection set name and ID are set, the name will be used. |
ProcessSelectionSetName | Which selection set should be processed. If the name is not found, all geometries in the scene will be processed. If both selection set name and ID are set, the name will be used. |
ReductionTargetMaxDeviation | The MaxDeviation value, the maximum surface-deviation between the reduced geometry and the original. |
ReductionTargetMaxDeviationEnabled | Enable max deviation as a reduction target. The reducer will stop when the set max deviation has been reached. |
ReductionTargetOnScreenSize | The OnScreenSize value, used to calculate the maximum surface-deviation allowed, by assuming errors less than 1 pixel onscreen will not be noticeable. |
ReductionTargetOnScreenSizeEnabled | Enable on screen size as a reduction target. The reducer will stop when the set on screen size has been reached. |
ReductionTargetPolygonCount | The wanted Polygon count. The range is 0->inf. Note that a pair of two triangles linked by the QuadFlags field to designate a quad counts as *one* polygon, not two. Also note that using this target will disable reduction for continuous areas of triangles within the quad mesh. |
ReductionTargetPolygonCountEnabled | Enable Polygon count as a reduction target. The reducer will stop when the set Polygon count has been reached. Note that a pair of two triangles linked by the QuadFlags field to designate a quad counts as *one* polygon, not two. Also note that using this target will disable reduction for continuous areas of triangles within the quad mesh. |
ReductionTargetPolygonRatio | The wanted reduction ratio. The range is 0->1. Note that a pair of two triangles linked by the QuadFlags field to designate a quad counts as *one* polygon, not two. Also note that using this target will disable reduction for continuous areas of triangles within the quad mesh. |
ReductionTargetPolygonRatioEnabled | Enable Polygon ratio as a reduction target. The reducer will stop when the set Polygon-ratio has been reached. Note that a pair of two triangles linked by the QuadFlags field to designate a quad counts as *one* polygon, not two. Also note that using this target will disable reduction for continuous areas of triangles within the quad mesh. |
ReductionTargetStopCondition | The stop condition for the reducer. Any -> the reducer will stop when any single one of the set reduction targets have been reached. All -> the reducer will stop when all enabled reduction targets have been reached. |
UseWelding | If set, vertices occupying the same position in 3D space will be welded together, creating better connectivity for quad reduction. |
Methods
Method | Description |
---|---|
AddObserver | Adds a user-defined observer object to the interface, that will receive events from the interface. (Inherited from Object) |
GetBoolParameter | Get a named parameter boolean value. (Inherited from SettingsObject) |
GetClass | Get the name of the QuadReductionSettings class. (Inherited from Object) |
GetDoubleParameter | Get a named parameter floating point value. (Inherited from SettingsObject) |
GetErrorString | Returns a string describing the error that was found the last time ValidateSettings was performed. (Inherited from SettingsObject) |
GetIntParameter | Get a named parameter integer value. (Inherited from SettingsObject) |
GetStringParameter | Get a named parameter string value. (Inherited from SettingsObject) |
GetUIntParameter | Get a named parameter unsigned integer value. (Inherited from SettingsObject) |
IsA | Returns true if QuadReductionSettings is a or is a descendant of the class named as the type parameter. (Inherited from Object) |
IsNull | Returns true if the QuadReductionSettings object is invalid. (Inherited from Object) |
IsSameObjectAs | Returns true if the QuadReductionSettings object is valid. (Inherited from Object) |
NonNull | Returns true if the QuadReductionSettings object is valid. (Inherited from Object) |
PrintInfo | Prints the content/info of the QuadReductionSettings object to the log. (Inherited from Object) |
RemoveObserver | Removes a previously added observer object. (Inherited from Object) |
SetBoolParameter | Set a named parameter boolean value. (Inherited from SettingsObject) |
SetDoubleParameter | Set a named parameter floating point value. (Inherited from SettingsObject) |
SetIntParameter | Set a named parameter integer value. (Inherited from SettingsObject) |
SetReductionTargets | Set reduction targets and stop condition used in the reduction. Using PolygonCount or PolygonRatio will disable handling of continuous triangle areas in the quad reduction. The PolygonCount and PolygonRatio targets should also be considered the **max** polygon counts of the output mesh, meaning the mesh will often be reduced further if more collapses can be performed without degrading the quality of the mesh. |
SetStringParameter | Set a named parameter string value. (Inherited from SettingsObject) |
SetUIntParameter | Set a named parameter unsigned integer value. (Inherited from SettingsObject) |
SetValidateParameterNames | Set if parameter names should be validated or not. Parameters that previously do not exist will generate and error if validation is enabled and be allowed if validation is disabled. (Inherited from SettingsObject) |
ToJSON | Get settings as JSON for debugging purposes. (Inherited from SettingsObject) |
ValidateSettings | Validates the current settings values. (Inherited from SettingsObject) |
Static methods
Method | Description |
---|---|
IsClassA | Returns true if the class is a or is a descendant of the class named as the type parameter. (Inherited from Object) |
SafeCast | SafeCast makes sure the input object is of a class that can be cast into spQuadReductionSettings, and if this is the case, returns the object cast into spQuadReductionSettings. (Inherited from Object) |
Properties details
KeepUnprocessedSceneMeshes
If false, the processor will remove all geometry and scene meshes which were not selected for processing from the scene. If true, only the geometry in the ProcessSelectionSet will be replaced or updated, while the rest of the scene tree is kept intact. New geometry is always added as the last child of the scene root. If generating a mappingimage to cast materials, new materialIds will also be appended to the end of the old material table instead of replacing the old ones.
MergeGeometries
The processor will merge all the geometries in the scene into a single geometry if MergeGeometries is enabled.
Name
The name of the QuadReductionSettings object. (Inherited from Object)
ProcessSelectionSetID
Which selection set should be processed. If set to -1, all geometries in the scene will be processed. If both selection set name and ID are set, the name will be used.
ProcessSelectionSetName
Which selection set should be processed. If the name is not found, all geometries in the scene will be processed. If both selection set name and ID are set, the name will be used.
ReductionTargetMaxDeviation
The MaxDeviation value, the maximum surface-deviation between the reduced geometry and the original.
ReductionTargetMaxDeviationEnabled
Enable max deviation as a reduction target. The reducer will stop when the set max deviation has been reached.
ReductionTargetOnScreenSize
The OnScreenSize value, used to calculate the maximum surface-deviation allowed, by assuming errors less than 1 pixel onscreen will not be noticeable.
ReductionTargetOnScreenSizeEnabled
Enable on screen size as a reduction target. The reducer will stop when the set on screen size has been reached.
ReductionTargetPolygonCount
The wanted Polygon count. The range is 0->inf. Note that a pair of two triangles linked by the QuadFlags field to designate a quad counts as *one* polygon, not two. Also note that using this target will disable reduction for continuous areas of triangles within the quad mesh.
ReductionTargetPolygonCountEnabled
Enable Polygon count as a reduction target. The reducer will stop when the set Polygon count has been reached. Note that a pair of two triangles linked by the QuadFlags field to designate a quad counts as *one* polygon, not two. Also note that using this target will disable reduction for continuous areas of triangles within the quad mesh.
ReductionTargetPolygonRatio
The wanted reduction ratio. The range is 0->1. Note that a pair of two triangles linked by the QuadFlags field to designate a quad counts as *one* polygon, not two. Also note that using this target will disable reduction for continuous areas of triangles within the quad mesh.
ReductionTargetPolygonRatioEnabled
Enable Polygon ratio as a reduction target. The reducer will stop when the set Polygon-ratio has been reached. Note that a pair of two triangles linked by the QuadFlags field to designate a quad counts as *one* polygon, not two. Also note that using this target will disable reduction for continuous areas of triangles within the quad mesh.
ReductionTargetStopCondition
The stop condition for the reducer. Any -> the reducer will stop when any single one of the set reduction targets have been reached. All -> the reducer will stop when all enabled reduction targets have been reached.
UseWelding
If set, vertices occupying the same position in 3D space will be welded together, creating better connectivity for quad reduction.
Methods details
AddObserver
Adds a user-defined observer object to the interface, that will receive events from the interface. (Inherited from Object)
GetBoolParameter
Get a named parameter boolean value.
GetClass
Get the name of the QuadReductionSettings class. (Inherited from Object)
GetDoubleParameter
Get a named parameter floating point value.
GetErrorString
Returns a string describing the error that was found the last time ValidateSettings was performed.
GetIntParameter
Get a named parameter integer value.
GetStringParameter
Get a named parameter string value.
GetUIntParameter
Get a named parameter unsigned integer value.
IsA
Returns true if QuadReductionSettings is a or is a descendant of the class named as the type parameter. (Inherited from Object)
IsNull
Returns true if the QuadReductionSettings object is invalid. (Inherited from Object)
IsSameObjectAs
Returns true if the QuadReductionSettings object is valid. (Inherited from Object)
NonNull
Returns true if the QuadReductionSettings object is valid. (Inherited from Object)
PrintInfo
Prints the content/info of the QuadReductionSettings object to the log. (Inherited from Object)
RemoveObserver
Removes a previously added observer object. (Inherited from Object)
SetBoolParameter
Set a named parameter boolean value.
SetDoubleParameter
Set a named parameter floating point value.
SetIntParameter
Set a named parameter integer value.
SetReductionTargets
Set reduction targets and stop condition used in the reduction. Using PolygonCount or PolygonRatio will disable handling of continuous triangle areas in the quad reduction. The PolygonCount and PolygonRatio targets should also be considered the **max** polygon counts of the output mesh, meaning the mesh will often be reduced further if more collapses can be performed without degrading the quality of the mesh.
SetStringParameter
Set a named parameter string value.
SetUIntParameter
Set a named parameter unsigned integer value.
SetValidateParameterNames
Set if parameter names should be validated or not. Parameters that previously do not exist will generate and error if validation is enabled and be allowed if validation is disabled.
ToJSON
Get settings as JSON for debugging purposes.
ValidateSettings
Validates the current settings values.
Static methods details
IsClassA
Returns true if the class is a or is a descendant of the class named as the type parameter. (Inherited from Object)
SafeCast
SafeCast makes sure the input object is of a class that can be cast into spQuadReductionSettings, and if this is the case, returns the object cast into spQuadReductionSettings. (Inherited from Object)