# class DisplacementCaster

DisplacementCaster is used to store the delta-values between the original and processed geometries. The values are divided by a scaling value, and clamped into the -1 -> 1 range before being stored into an image.

# Properties

Property Description
DestMaterialId The DestMaterialId object. If set, only the parts of the destination map that. To disable, set to -1. (Inherited from MaterialCaster)
MappingImage The MappingImage object. The MappingImage object contains the mapping between the Geometry and SourceGeometry objects. (Inherited from MaterialCaster)
Name The name of the DisplacementCaster object. (Inherited from Object)
OutputFilePath The OutputFilePath file path, where the output image will be placed. Note that the extension will be appended the file path if it differs from the OutputImageFileFormat set in the caster settings object. Either OutputImage or OutputFilePath must be set. If OutputImage is set, then OutputFilePath is ignored. (Inherited from MaterialCaster)
OutputImage The OutputImage object that will receive the image. The current contents of the image will be removed, and the image will be written to the Colors field of the ImageData object. Either OutputImage or OutputFilePath must be set. If OutputImage is set, then OutputFilePath is ignored. (Inherited from MaterialCaster)
SourceMaterials The SourceMaterials object. The SourceMaterials object contains all materials of the the source geometry. The source geometry must have a "MaterialIds" field that indices the material table. (Inherited from MaterialCaster)
SourceTextures The SourceTextures object. The SourceTextures object contains all textures of the the source geometry. (Inherited from MaterialCaster)

# Methods

Method Description
AddObserver Adds a user-defined observer object to the interface, that will receive events from the interface. (Inherited from Object)
Clear Clear all internal states of the object. This will NOT clear the parameters set in the object. (Inherited from ProcessingObject)
GetClass Get the name of the DisplacementCaster class. (Inherited from Object)
GetDisplacementCasterSettings The displacement caster settings object.
GetMaterialCasterSettings The settings object. (Inherited from MaterialCaster)
GetPercentDone Returns the current progress of the processing as a value between 0 and 100. (Inherited from ProcessingObject)
IsA Returns true if DisplacementCaster is a or is a descendant of the class named as the type parameter. (Inherited from Object)
IsNull Returns true if the DisplacementCaster object is invalid. (Inherited from Object)
IsSameObjectAs Returns true if the DisplacementCaster object is valid. (Inherited from Object)
NewCopy Create a new clone of the material caster, copying all settings. (Inherited from MaterialCaster)
NonNull Returns true if the DisplacementCaster object is valid. (Inherited from Object)
PrintInfo Prints the content/info of the DisplacementCaster object to the log. (Inherited from Object)
RemoveObserver Removes a previously added observer object. (Inherited from Object)
RunProcessing Runs the processing the object is designed for. (Inherited from ProcessingObject)
ToJSON Get settings as JSON for debugging purposes. (Inherited from ProcessingObject)

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

# Properties details

# DestMaterialId

The DestMaterialId object. If set, only the parts of the destination map that. To disable, set to -1.

# Syntax

// Setter
void SetDestMaterialId( rid value ) const;

// Getter
rid GetDestMaterialId() const;

# SetDestMaterialId parameters

Type Name Min Max Description
rid value The value to which DestMaterialId will be set.

# GetDestMaterialId return value

Type: rid

# MappingImage

The MappingImage object. The MappingImage object contains the mapping between the Geometry and SourceGeometry objects.

# Syntax

// Setter
void SetMappingImage( const spMappingImage & value ) const;

// Getter
spMappingImage GetMappingImage() const;

# SetMappingImage parameters

Type Name Min Max Description
MappingImage value The mapping image to which MappingImage will be set.

# GetMappingImage return value

Type: MappingImage

# Name

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

# Syntax

// Setter
void SetName( const char * name ) const;

// Getter
spString GetName() const;

# SetName parameters

Type Name Min Max Description
const char * name New name of the object.

# GetName return value

Type: spString

# OutputFilePath

The OutputFilePath file path, where the output image will be placed. Note that the extension will be appended the file path if it differs from the OutputImageFileFormat set in the caster settings object. Either OutputImage or OutputFilePath must be set. If OutputImage is set, then OutputFilePath is ignored.

# Syntax

// Setter
void SetOutputFilePath( const char * value ) const;

// Getter
spString GetOutputFilePath() const;

# SetOutputFilePath parameters

Type Name Min Max Description
const char * value The string to which OutputFilePath will be set.

# GetOutputFilePath return value

Type: spString

# OutputImage

The OutputImage object that will receive the image. The current contents of the image will be removed, and the image will be written to the Colors field of the ImageData object. Either OutputImage or OutputFilePath must be set. If OutputImage is set, then OutputFilePath is ignored.

# Syntax

// Setter
void SetOutputImage( const spImageData & value ) const;

// Getter
spImageData GetOutputImage() const;

# SetOutputImage parameters

Type Name Min Max Description
ImageData value The image data to which OutputImage will be set.

# GetOutputImage return value

Type: ImageData

# SourceMaterials

The SourceMaterials object. The SourceMaterials object contains all materials of the the source geometry. The source geometry must have a "MaterialIds" field that indices the material table.

# Syntax

// Setter
void SetSourceMaterials( const spMaterialTable & value ) const;

// Getter
spMaterialTable GetSourceMaterials() const;

# SetSourceMaterials parameters

Type Name Min Max Description
MaterialTable value The material table to which SourceMaterials will be set.

# GetSourceMaterials return value

Type: MaterialTable

# SourceTextures

The SourceTextures object. The SourceTextures object contains all textures of the the source geometry.

# Syntax

// Setter
void SetSourceTextures( const spTextureTable & value ) const;

// Getter
spTextureTable GetSourceTextures() const;

# SetSourceTextures parameters

Type Name Min Max Description
TextureTable value The texture table to which SourceTextures will be set.

# GetSourceTextures return value

Type: TextureTable

# Methods details

# AddObserver

Adds a user-defined observer object to the interface, that will receive events from the interface. (Inherited from Object)

# Syntax

rid AddObserver( const spObserver & observer ) const;

# Parameters

Type Name Min Max Description
Observer observer Observer is the object that will receive events.

# Return value

Type: rid

# Clear

Clear all internal states of the object. This will NOT clear the parameters set in the object.

# Syntax

void Clear() const;

# Parameters

Clear takes no parameters.

# GetClass

Get the name of the DisplacementCaster class. (Inherited from Object)

# Syntax

spString GetClass() const;

# Parameters

GetClass takes no parameters.

# Return value

Type: spString

# GetDisplacementCasterSettings

The displacement caster settings object.

# Syntax

spDisplacementCasterSettings GetDisplacementCasterSettings() const;

# Parameters

GetDisplacementCasterSettings takes no parameters.

# Return value

Type: DisplacementCasterSettings

# GetMaterialCasterSettings

The settings object.

# Syntax

spMaterialCasterSettings GetMaterialCasterSettings() const;

# Parameters

GetMaterialCasterSettings takes no parameters.

# Return value

Type: MaterialCasterSettings

# GetPercentDone

Returns the current progress of the processing as a value between 0 and 100.

# Syntax

real GetPercentDone() const;

# Parameters

GetPercentDone takes no parameters.

# Return value

Type: real

# IsA

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

# Syntax

bool IsA( const char * type ) const;

# Parameters

Type Name Min Max Description
const char * type Name of the class to check if DisplacementCaster is, or is a descendant of.

# Return value

Type: bool

# IsNull

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

# Syntax

bool IsNull() const;

# Parameters

IsNull takes no parameters.

# Return value

Type: bool

# IsSameObjectAs

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

# Syntax

bool IsSameObjectAs( const spObject & object ) const;

# Parameters

Type Name Min Max Description
Object object Object to compare with.

# Return value

Type: bool

# NewCopy

Create a new clone of the material caster, copying all settings.

# Syntax

spMaterialCaster NewCopy() const;

# Parameters

Type Name Min Max Description

# Return value

Type: MaterialCaster

# NonNull

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

# Syntax

bool NonNull() const;

# Parameters

NonNull takes no parameters.

# Return value

Type: bool

# PrintInfo

Prints the content/info of the DisplacementCaster object to the log. (Inherited from Object)

# Syntax

void PrintInfo() const;

# Parameters

PrintInfo takes no parameters.

# RemoveObserver

Removes a previously added observer object. (Inherited from Object)

# Syntax

void RemoveObserver( rid observerId ) const;

# Parameters

Type Name Min Max Description
rid observerId ObserverId is the id returned by AddObserver when the observer was added.

# RunProcessing

Runs the processing the object is designed for.

# Syntax

Simplygon::EProcessStatus RunProcessing() const;

# Parameters

RunProcessing takes no parameters.

# Return value

Type: EProcessStatus

Key Value Comment
Finished 0 The process finished with no error
Skipped 1 The process was skipped, in most cases because of a missing or invalid object, or that there was nothing to process. See the log for details.

# ToJSON

Get settings as JSON for debugging purposes.

# Syntax

spString ToJSON() const;

# Parameters

ToJSON takes no parameters.

# Return value

Type: spString

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

# Syntax

static bool IsClassA( const char * type ) const;

# Parameters

Type Name Min Max Description
const char * type Name of the class to check if the class is, or is a descendant of.

# Return value

Type: bool

# SafeCast

SafeCast makes sure the input object is of a class that can be cast into spDisplacementCaster, and if this is the case, returns the object cast into spDisplacementCaster. (Inherited from Object)

# Syntax

static spDisplacementCaster SafeCast( const spObject & object ) const;

# Parameters

Type Name Min Max Description
Object object Object to cast.

# Return value

Type: DisplacementCaster