# 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.
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.
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.
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.
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.
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.

                      # 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.

                        # 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.

                          # 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.

                            # 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.

                                                                    # 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)