Simplygon C++ API  8.3.35800.0
SimplygonSDK::IBoneSettings Class Referenceabstract

#include <SimplygonSDK.h>

Inheritance diagram for SimplygonSDK::IBoneSettings:
SimplygonSDK::ISettingsObject SimplygonSDK::IObject

Public Member Functions

virtual unsigned int GetBoneCount ()=0
 
virtual real GetBoneRatio ()=0
 
virtual unsigned int GetBoneReductionTargets ()=0
 
virtual const char * GetClass ()
 
virtual bool GetLimitBonesPerVertex ()=0
 
virtual rid GetLockBoneSelectionSetID ()=0
 
virtual rstring GetLockBoneSelectionSetName ()=0
 
virtual unsigned int GetMaxBonePerVertex ()=0
 
virtual real GetMaxDeviation ()=0
 
virtual unsigned int GetOnScreenSize ()=0
 
virtual rid GetRemoveBoneSelectionSetID ()=0
 
virtual rstring GetRemoveBoneSelectionSetName ()=0
 
virtual bool GetRemoveUnusedBones ()=0
 
virtual unsigned int GetStopCondition ()=0
 
virtual bool GetUseBoneReducer ()=0
 
virtual bool IsA (const char *type) const
 
virtual void SetBoneCount (unsigned int value)=0
 
virtual void SetBoneRatio (real value)=0
 
virtual void SetBoneReductionTargets (unsigned int value)=0
 
virtual void SetLimitBonesPerVertex (bool value)=0
 
virtual void SetLockBoneSelectionSetID (rid value)=0
 
virtual void SetLockBoneSelectionSetName (const char *value)=0
 
virtual void SetMaxBonePerVertex (unsigned int value)=0
 
virtual void SetMaxDeviation (real value)=0
 
virtual void SetOnScreenSize (unsigned int value)=0
 
virtual void SetRemoveBoneSelectionSetID (rid value)=0
 
virtual void SetRemoveBoneSelectionSetName (const char *value)=0
 
virtual void SetRemoveUnusedBones (bool value)=0
 
virtual void SetStopCondition (unsigned int value)=0
 
virtual void SetUseBoneReducer (bool value)=0
 
- Public Member Functions inherited from SimplygonSDK::ISettingsObject
virtual rstring GetErrorString ()=0
 
virtual bool ValidateSettings ()=0
 
- Public Member Functions inherited from SimplygonSDK::IObject
virtual rid AddObserver (robserver *Observer, rid EventId)=0
 
virtual void AddRef ()=0
 
virtual rstring GetName ()=0
 
virtual void * GetUserComponentArea (rid userid)=0
 
virtual void PrintInfo ()=0
 
virtual void Release ()=0
 
virtual void RemoveObserver (rid ObserverId)=0
 
virtual void SetName (const char *Name)=0
 

Static Public Member Functions

static bool IsClassA (const char *type)
 
static IBoneSettingsSafeCast (IObject *ptr)
 
- Static Public Member Functions inherited from SimplygonSDK::ISettingsObject
static bool IsClassA (const char *type)
 
static ISettingsObjectSafeCast (IObject *ptr)
 
- Static Public Member Functions inherited from SimplygonSDK::IObject
static bool IsClassA (const char *type)
 
static IObjectSafeCast (IObject *ptr)
 

Detailed Description

Settings for the Simplygon Reduction/Remeshing classes With the BoneSettings object, the user can setup all the parameters for how the BoneLOD processor should simplify the links between geometries and bones. Bones can be un-linked from the geometry either with a set ratio or depending on a selected pixel size on screen.

Definition at line 10921 of file SimplygonSDK.h.

Member Function Documentation

◆ GetBoneCount()

virtual unsigned int SimplygonSDK::IBoneSettings::GetBoneCount ( )
pure virtual

Get the wanted reduction ratio. The range is 0->inf.

Returns
the current value of TriangleCount

◆ GetBoneRatio()

virtual real SimplygonSDK::IBoneSettings::GetBoneRatio ( )
pure virtual

Get the wanted reduction ratio. The range is 0->1.

Returns
the current value of ReductionRatio

◆ GetBoneReductionTargets()

virtual unsigned int SimplygonSDK::IBoneSettings::GetBoneReductionTargets ( )
pure virtual

Get the flag mask that decides what types of reduction targets will be used

  • SG_BONEREDUCTIONTARGET_BONECOUNT -> the reducer will stop when the set bone-count has been reached.
  • SG_BONEREDUCTIONTARGET_BONERATIO -> the reducer will stop when the set bone-ratio has been reached.
  • SG_BONEREDUCTIONTARGET_MAXDEVIATION -> the reducer will stop when the set max deviation has been reached.
  • SG_BONEREDUCTIONTARGET_ONSCREENSIZE -> the reducer will stop when the asset will visually pass for the original at the set pixel size.
Returns
the current value of ReductionTargets.

◆ GetClass()

virtual const char* SimplygonSDK::IBoneSettings::GetClass ( )
virtual

GetClass returns the name of the class of the object.

Returns
the name of the actual class of the object, as a const char string

Reimplemented from SimplygonSDK::ISettingsObject.

◆ GetLimitBonesPerVertex()

virtual bool SimplygonSDK::IBoneSettings::GetLimitBonesPerVertex ( )
pure virtual

Decides whether unused bones should be removed.

Returns
value the current flag value

◆ GetLockBoneSelectionSetID()

virtual rid SimplygonSDK::IBoneSettings::GetLockBoneSelectionSetID ( )
pure virtual

The ID of the selection set that contains all of the bones that will be locked, and cannot be removed in the BoneLOD process. If a bone is locked, all its ancestors will be locked also. If the ID is -1, then no bones are selected

Returns
the ID of the selection set

◆ GetLockBoneSelectionSetName()

virtual rstring SimplygonSDK::IBoneSettings::GetLockBoneSelectionSetName ( )
pure virtual

The name of the selection set that contains all of the bones that will be locked, and cannot be removed in the BoneLOD process. If a bone is locked, all its ancestors will be locked also. If the name is NULL, then no bones are selected If both ID and Name are set, ID will be used.

◆ GetMaxBonePerVertex()

virtual unsigned int SimplygonSDK::IBoneSettings::GetMaxBonePerVertex ( )
pure virtual

Decides the maximum limit of how many bones can be connected to each vertex. If for example set to 1, then each vertex will only be linked to 1 bone.

Returns
value the maximum bones per vertex

◆ GetMaxDeviation()

virtual real SimplygonSDK::IBoneSettings::GetMaxDeviation ( )
pure virtual

Get the MaxDeviation value, the maximum surface-deviation between the reduced geometry and the original.

Returns
the current value of MaxDeviation

◆ GetOnScreenSize()

virtual unsigned int SimplygonSDK::IBoneSettings::GetOnScreenSize ( )
pure virtual

Get the OnScreenSize value, the maximum surface-deviation between the reduced geometry and the original.

Returns
the current value of OnScreenSize

◆ GetRemoveBoneSelectionSetID()

virtual rid SimplygonSDK::IBoneSettings::GetRemoveBoneSelectionSetID ( )
pure virtual

The ID of the selection set that contains all of the bones that will be forced to be removed in the BoneLOD process, UNLESS they are locked. If a bone is set to be removed, all its descendants will be removed also. If the ID is -1, then no bones are selected

Returns
the ID of the selection set

◆ GetRemoveBoneSelectionSetName()

virtual rstring SimplygonSDK::IBoneSettings::GetRemoveBoneSelectionSetName ( )
pure virtual

The name of the selection set that contains all of the bones that will be forced to be removed in the BoneLOD process, UNLESS they are locked. If a bone is set to be removed, all its descendants will be removed also. If the name is NULL, then no bones are selected If both ID and Name are set, ID will be used.

◆ GetRemoveUnusedBones()

virtual bool SimplygonSDK::IBoneSettings::GetRemoveUnusedBones ( )
pure virtual

Decides whether unused bones should be removed.

Returns
value the current flag value

◆ GetStopCondition()

virtual unsigned int SimplygonSDK::IBoneSettings::GetStopCondition ( )
pure virtual

Get the stop condition for the reducer.

  • SG_STOPCONDITION_ANY -> the reducer will stop when any single one of the set reduction targets have been reached
  • SG_STOPCONDITION_ALL -> the reducer will stop when all enabled reduction targets have been set.

◆ GetUseBoneReducer()

virtual bool SimplygonSDK::IBoneSettings::GetUseBoneReducer ( )
pure virtual

Enables or disables the bone reduction processing that actually removes bones. Even with this flag off, the bones per vertex can still be limited.

Returns
value the current flag value

◆ IsA()

virtual bool SimplygonSDK::IBoneSettings::IsA ( const char *  type) const
virtual

The IsA function returns true if the object is a or is a descendant of the class named as the type parameter

Parameters
typeis the name of the class to check if the object is, or is a descendant of
Returns
true if the object is of the specified class, false if not

Reimplemented from SimplygonSDK::ISettingsObject.

◆ IsClassA()

static bool SimplygonSDK::IBoneSettings::IsClassA ( const char *  type)
inlinestatic

The IsClassA function returns true if IBoneSettings is a or is a descendant of the class named as the type parameter

Parameters
typeis the name of the class to check if the class is, or is a descendant of
Returns
true if the class is of the specified class, false if not

Definition at line 10942 of file SimplygonSDK.h.

◆ SafeCast()

static IBoneSettings* SimplygonSDK::IBoneSettings::SafeCast ( IObject ptr)
inlinestatic

SafeCast makes sure the pointer is of a class that can be cast into a IBoneSettings pointer, and if this is possible, returns the cast pointer.

Parameters
ptris the pointer to be cast into a IBoneSettings pointer
Returns
a pointer to the IBoneSettings object, if the cast can be made, and a NULL pointer otherwise

Definition at line 10955 of file SimplygonSDK.h.

◆ SetBoneCount()

virtual void SimplygonSDK::IBoneSettings::SetBoneCount ( unsigned int  value)
pure virtual

Set the wanted triangle count. The range is 0->inf.

Parameters
valueis the value to which ReductionRatio will be set

◆ SetBoneRatio()

virtual void SimplygonSDK::IBoneSettings::SetBoneRatio ( real  value)
pure virtual

Set the wanted reduction ratio. The range is 0->1.

Parameters
valueis the value to which ReductionRatio will be set

◆ SetBoneReductionTargets()

virtual void SimplygonSDK::IBoneSettings::SetBoneReductionTargets ( unsigned int  value)
pure virtual

Set the flag mask that decides what types of reduction targets will be used

  • SG_BONEREDUCTIONTARGET_BONECOUNT -> the reducer will stop when the set bone-count has been reached.
  • SG_BONEREDUCTIONTARGET_BONERATIO -> the reducer will stop when the set bone-ratio has been reached.
  • SG_BONEREDUCTIONTARGET_MAXDEVIATION -> the reducer will stop when the set max deviation has been reached.
  • SG_BONEREDUCTIONTARGET_ONSCREENSIZE -> the reducer will stop when the asset will visually pass for the original at the set pixel size.
Parameters
valueis the desired value of BoneReductionTargets

◆ SetLimitBonesPerVertex()

virtual void SimplygonSDK::IBoneSettings::SetLimitBonesPerVertex ( bool  value)
pure virtual

Decides whether unused bones should be removed.

Parameters
valuethe desired flag value

◆ SetLockBoneSelectionSetID()

virtual void SimplygonSDK::IBoneSettings::SetLockBoneSelectionSetID ( rid  value)
pure virtual

The ID of the selection set that contains all of the bones that will be locked, and cannot be removed in the BoneLOD process. If a bone is locked, all its ancestors will be locked also. If the ID is -1, then no bones are selected

Parameters
valuethe ID of the selection set

◆ SetLockBoneSelectionSetName()

virtual void SimplygonSDK::IBoneSettings::SetLockBoneSelectionSetName ( const char *  value)
pure virtual

The name of the selection set that contains all of the bones that will be locked, and cannot be removed in the BoneLOD process. If a bone is locked, all its ancestors will be locked also. If the name is NULL, then no bones are selected If both ID and Name are set, ID will be used.

Parameters
valuethe name of the selection set

◆ SetMaxBonePerVertex()

virtual void SimplygonSDK::IBoneSettings::SetMaxBonePerVertex ( unsigned int  value)
pure virtual

Decides the maximum limit of how many bones can be connected to each vertex. If for example set to 1, then each vertex will only be linked to 1 bone.

Parameters
valuethe desired maximum bones per vertex

◆ SetMaxDeviation()

virtual void SimplygonSDK::IBoneSettings::SetMaxDeviation ( real  value)
pure virtual

Set the MaxDeviation value, the maximum surface-deviation between the reduced geometry and the original.

Parameters
valueis the value to which MaxDeviation will be set

◆ SetOnScreenSize()

virtual void SimplygonSDK::IBoneSettings::SetOnScreenSize ( unsigned int  value)
pure virtual

Set the OnScreenSize value, the maximum surface-deviation between the reduced geometry and the original.

Parameters
valueis the value to which OnScreenSize will be set

◆ SetRemoveBoneSelectionSetID()

virtual void SimplygonSDK::IBoneSettings::SetRemoveBoneSelectionSetID ( rid  value)
pure virtual

The ID of the selection set that contains all of the bones that will be forced to be removed in the BoneLOD process, UNLESS they are locked. If a bone is set to be removed, all its descendants will be removed also. If the ID is -1, then no bones are selected

Parameters
valuethe ID of the selection set

◆ SetRemoveBoneSelectionSetName()

virtual void SimplygonSDK::IBoneSettings::SetRemoveBoneSelectionSetName ( const char *  value)
pure virtual

The name of the selection set that contains all of the bones that will be forced to be removed in the BoneLOD process, UNLESS they are locked. If a bone is set to be removed, all its descendants will be removed also. If the name is NULL, then no bones are selected If both ID and Name are set, ID will be used.

Parameters
valuethe name of the selection set

◆ SetRemoveUnusedBones()

virtual void SimplygonSDK::IBoneSettings::SetRemoveUnusedBones ( bool  value)
pure virtual

Decides whether unused bones should be removed.

Parameters
valuethe desired flag value

◆ SetStopCondition()

virtual void SimplygonSDK::IBoneSettings::SetStopCondition ( unsigned int  value)
pure virtual

Set the stop condition for the reducer.

  • SG_STOPCONDITION_ANY -> the reducer will stop when any single one of the set reduction targets have been reached
  • SG_STOPCONDITION_ALL -> the reducer will stop when all enabled reduction targets have been set.
Parameters
valueis the flag to which StopCondition will be set.

◆ SetUseBoneReducer()

virtual void SimplygonSDK::IBoneSettings::SetUseBoneReducer ( bool  value)
pure virtual

Enables or disables the bone reduction processing that actually removes bones. Even with this flag off, the bones per vertex can still be limited.

Parameters
valuethe desired flag value

The documentation for this class was generated from the following file: