# class MappingImageSettings

Settings for the Simplygon mapping classes These settings control the properties of the mapping image that will be generated in the current simplification processor (reducer/remesher etc). The mapping image will be used when casting a new texture on the simplified geometry. In the settings object, the user is able to set the dimensions of the image (width/height) as well as whether the LOD should have new texture coordinates and some parameters for how they should be generated and all other settings regarding the mapping image.

# Properties

Property Description
AllowTransparencyMapping If true, the remeshing processor will allow mapped transparency in the generated mapping image. This allows material casting where gaps filled by the remeshing processor will be cast as transparent.
ApplyNewMaterialIds If true, and also generating one or more mapping images for material casting, the material IDs in the process geometry will be updated to reflect the new, not yet cast output materials. This means the output scene will be temporarily invalid before the materialtable has been updated to reflect the new changes.
AutomaticTextureSizeMultiplier Texture dimension length multiplier for the automatic texture size.
ForcePower2Texture If automatic_texture_size is enabled, then force the texture sizes to be a power of 2.
GenerateMappingImage If set, the aggregation processor, reduction processor, or remeshing processor will create a mapping image that maps triangles on the reduced geometry back to triangles on the original geometry. The texture is insert into the MappingImage object. The image data will contain two fields: * RidArray, "TriangleIds", TupleSize:1, The id of the triangle * UnsignedShortArray, "BarycentricCoords", TupleSize:2, Items A & B of the barycentric coordinate on the triangle. The user can control the size of the mapped texture using the values MappingTextureWidth and MappingTextureHeight.
GenerateTangents If true, generates a new tangent space fields at position specified by TexCoordLevel, based on the vertex normals and texture coordinates. Tangent space fields will always be created if missing, and GenerateMappingImage is enabled. If GenerateTexCoords is enabled, new tangents will always be generated.
GenerateTexCoords If true, generates a new texcoords field at the position specified by TexCoordLevel. Will be ignored and always generate texcoords if none are available in the Geometry if GenerateMappingImage is enabled.
InputMaterialCount The number of input materials used in the original geometry for mapping to multiple output materials. This needs to be set before you can set any specific in-out material mapping. 0 signifies that no in-out material mapping is used, ie. the process will produce one resulting mapping image.
MaximumLayers The maximum number of layers in the mapping image. If a remeshed geometry has a lot of transparent triangles, use a higher number to be able to find intersections on the inside of parts of the geometry. This setting only has effect in the remeshing, when running reduction the number of layers is always 1.
Name The name of the MappingImageSettings object. (Inherited from Object)
OnlyParameterizeInvalidUVs If enabled, will aggregate all the valid original UVs. If there are invalid original UVs, those parts will receive new parameterized UVs.
OutputMaterialCount The number of output mapping images that are to be generated. If this is set to more than 1, the material mapping also needs to be set.
ReplaceMappingImages Whether to replace already existing mapping images in the scene.
TexCoordGeneratorType Determines which method to use when generating the texture coordinates. Parameterizer generate from scratch based on the geometry. ChartAggregator generate based on the original texture coordinates.
TexCoordLevel The texture coordinate level used for mapping image and texture generation. If the TexCoordName has been set, the TexCoordLevel is not used.
TexCoordName The texture coordinate level name used for mapping image and texture generation. If new UVs are created, they will replace the old coordinates in the texture channel with the TexCoordName. If no texture level with this name exists. It will be created. If the TexCoordName is not set, the TexCoordLevel (index) will be used instead.
UseAutomaticTextureSize The UseAutomaticTextureSize flag. If true, then texture sizes will be computed for the reduced mesh depending on its pixel size on screen.
UseFullRetexturing If set, all original texcoord sets are replaced by a single new one which will be used for the mapping image. This means the output scene will be temporarily invalid before the materialtable has been updated to reflect the new changes. This flag has no effect on the remeshing, which always does a full retexturing.

# 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)
GetChartAggregatorSettings The settings for the chart aggregator.
GetClass Get the name of the MappingImageSettings 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)
GetInputMaterialSettings Get the input material settings for the given index.
GetIntParameter Get a named parameter integer value. (Inherited from SettingsObject)
GetOutputMaterialSettings Get the output material settings for the given index.
GetParameterizerSettings The settings for the parameterizer.
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 MappingImageSettings is a or is a descendant of the class named as the type parameter. (Inherited from Object)
IsNull Returns true if the MappingImageSettings object is invalid. (Inherited from Object)
IsSameObjectAs Returns true if the MappingImageSettings object is valid. (Inherited from Object)
NonNull Returns true if the MappingImageSettings object is valid. (Inherited from Object)
PrintInfo Prints the content/info of the MappingImageSettings 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)
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 spMappingImageSettings, and if this is the case, returns the object cast into spMappingImageSettings. (Inherited from Object)

# Properties details

# AllowTransparencyMapping

If true, the remeshing processor will allow mapped transparency in the generated mapping image. This allows material casting where gaps filled by the remeshing processor will be cast as transparent.

    # ApplyNewMaterialIds

    If true, and also generating one or more mapping images for material casting, the material IDs in the process geometry will be updated to reflect the new, not yet cast output materials. This means the output scene will be temporarily invalid before the materialtable has been updated to reflect the new changes.

      # AutomaticTextureSizeMultiplier

      Texture dimension length multiplier for the automatic texture size.

        # ForcePower2Texture

        If automatic_texture_size is enabled, then force the texture sizes to be a power of 2.

          # GenerateMappingImage

          If set, the aggregation processor, reduction processor, or remeshing processor will create a mapping image that maps triangles on the reduced geometry back to triangles on the original geometry. The texture is insert into the MappingImage object. The image data will contain two fields: * RidArray, "TriangleIds", TupleSize:1, The id of the triangle * UnsignedShortArray, "BarycentricCoords", TupleSize:2, Items A & B of the barycentric coordinate on the triangle. The user can control the size of the mapped texture using the values MappingTextureWidth and MappingTextureHeight.

            # GenerateTangents

            If true, generates a new tangent space fields at position specified by TexCoordLevel, based on the vertex normals and texture coordinates. Tangent space fields will always be created if missing, and GenerateMappingImage is enabled. If GenerateTexCoords is enabled, new tangents will always be generated.

              # GenerateTexCoords

              If true, generates a new texcoords field at the position specified by TexCoordLevel. Will be ignored and always generate texcoords if none are available in the Geometry if GenerateMappingImage is enabled.

                # InputMaterialCount

                The number of input materials used in the original geometry for mapping to multiple output materials. This needs to be set before you can set any specific in-out material mapping. 0 signifies that no in-out material mapping is used, ie. the process will produce one resulting mapping image.

                  # MaximumLayers

                  The maximum number of layers in the mapping image. If a remeshed geometry has a lot of transparent triangles, use a higher number to be able to find intersections on the inside of parts of the geometry. This setting only has effect in the remeshing, when running reduction the number of layers is always 1.

                    # Name

                    The name of the MappingImageSettings object. (Inherited from Object)

                      # OnlyParameterizeInvalidUVs

                      If enabled, will aggregate all the valid original UVs. If there are invalid original UVs, those parts will receive new parameterized UVs.

                        # OutputMaterialCount

                        The number of output mapping images that are to be generated. If this is set to more than 1, the material mapping also needs to be set.

                          # ReplaceMappingImages

                          Whether to replace already existing mapping images in the scene.

                            # TexCoordGeneratorType

                            Determines which method to use when generating the texture coordinates. Parameterizer generate from scratch based on the geometry. ChartAggregator generate based on the original texture coordinates.

                              # TexCoordLevel

                              The texture coordinate level used for mapping image and texture generation. If the TexCoordName has been set, the TexCoordLevel is not used.

                                # TexCoordName

                                The texture coordinate level name used for mapping image and texture generation. If new UVs are created, they will replace the old coordinates in the texture channel with the TexCoordName. If no texture level with this name exists. It will be created. If the TexCoordName is not set, the TexCoordLevel (index) will be used instead.

                                  # UseAutomaticTextureSize

                                  The UseAutomaticTextureSize flag. If true, then texture sizes will be computed for the reduced mesh depending on its pixel size on screen.

                                    # UseFullRetexturing

                                    If set, all original texcoord sets are replaced by a single new one which will be used for the mapping image. This means the output scene will be temporarily invalid before the materialtable has been updated to reflect the new changes. This flag has no effect on the remeshing, which always does a full retexturing.

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

                                          # GetChartAggregatorSettings

                                          The settings for the chart aggregator.

                                            # GetClass

                                            Get the name of the MappingImageSettings 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.

                                                  # GetInputMaterialSettings

                                                  Get the input material settings for the given index.

                                                    # GetIntParameter

                                                    Get a named parameter integer value.

                                                      # GetOutputMaterialSettings

                                                      Get the output material settings for the given index.

                                                        # GetParameterizerSettings

                                                        The settings for the parameterizer.

                                                          # GetStringParameter

                                                          Get a named parameter string value.

                                                            # GetUIntParameter

                                                            Get a named parameter unsigned integer value.

                                                              # IsA

                                                              Returns true if MappingImageSettings is a or is a descendant of the class named as the type parameter. (Inherited from Object)

                                                                # IsNull

                                                                Returns true if the MappingImageSettings object is invalid. (Inherited from Object)

                                                                  # IsSameObjectAs

                                                                  Returns true if the MappingImageSettings object is valid. (Inherited from Object)

                                                                    # NonNull

                                                                    Returns true if the MappingImageSettings object is valid. (Inherited from Object)

                                                                      # PrintInfo

                                                                      Prints the content/info of the MappingImageSettings 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.

                                                                                # 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 spMappingImageSettings, and if this is the case, returns the object cast into spMappingImageSettings. (Inherited from Object)