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

#include <SimplygonSDK.h>

Inheritance diagram for SimplygonSDK::IRemeshingSettings:
SimplygonSDK::ISettingsObject SimplygonSDK::IObject

Public Member Functions

virtual const char * GetClass ()
 
virtual void GetClippingGeometryEmptySpaceOverride (real *realReturnDataPtr)=0
 
virtual rid GetClippingGeometrySelectionSetID ()=0
 
virtual rstring GetClippingGeometrySelectionSetName ()=0
 
virtual rid GetCuttingPlaneSelectionSetID ()=0
 
virtual rstring GetCuttingPlaneSelectionSetName ()=0
 
virtual void GetEmptySpaceOverride (real *realReturnDataPtr)=0
 
virtual real GetHardEdgeAngleInRadians ()=0
 
virtual unsigned int GetMaxTriangleSize ()=0
 
virtual real GetMergeBoldness ()=0
 
virtual unsigned int GetMergeDistance ()=0
 
virtual unsigned int GetOnScreenSize ()=0
 
virtual rstring GetOutputSceneNodeName ()=0
 
virtual rid GetProcessSelectionSetID ()=0
 
virtual rstring GetProcessSelectionSetName ()=0
 
virtual bool GetRespectWindingDirection ()=0
 
virtual rid GetSurfaceTransferMode ()=0
 
virtual bool GetTransferColors ()=0
 
virtual bool GetTransferNormals ()=0
 
virtual bool GetUseClippingGeometry ()=0
 
virtual bool GetUseClippingGeometryEmptySpaceOverride ()=0
 
virtual bool GetUseCuttingPlanes ()=0
 
virtual bool GetUseEmptySpaceOverride ()=0
 
virtual bool GetUsePreviewMode ()=0
 
virtual bool IsA (const char *type) const
 
virtual void SetClippingGeometryEmptySpaceOverride (const real *value_realInputDataPtr)=0
 
virtual void SetClippingGeometrySelectionSetID (rid value)=0
 
virtual void SetClippingGeometrySelectionSetName (const char *value)=0
 
virtual void SetCuttingPlaneSelectionSetID (rid value)=0
 
virtual void SetCuttingPlaneSelectionSetName (const char *value)=0
 
virtual void SetEmptySpaceOverride (const real *value_realInputDataPtr)=0
 
virtual void SetHardEdgeAngleInRadians (real value)=0
 
virtual void SetMaxTriangleSize (unsigned int value)=0
 
virtual void SetMergeBoldness (real value)=0
 
virtual void SetMergeDistance (unsigned int value)=0
 
virtual void SetOnScreenSize (unsigned int value)=0
 
virtual void SetOutputSceneNodeName (const char *value)=0
 
virtual void SetProcessSelectionSetID (rid value)=0
 
virtual void SetProcessSelectionSetName (const char *value)=0
 
virtual void SetRespectWindingDirection (bool value)=0
 
virtual void SetSurfaceTransferMode (rid value)=0
 
virtual void SetTransferColors (bool value)=0
 
virtual void SetTransferNormals (bool value)=0
 
virtual void SetUseClippingGeometry (bool value)=0
 
virtual void SetUseClippingGeometryEmptySpaceOverride (bool value)=0
 
virtual void SetUseCuttingPlanes (bool value)=0
 
virtual void SetUseEmptySpaceOverride (bool value)=0
 
virtual void SetUsePreviewMode (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 IRemeshingSettingsSafeCast (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

Remeshing settings for the IRemeshingProcessor class. The remesher creates a completely new lightweight mesh from the input geometry, and is intended to be viewed from the outside. Here you will set the OnScreenSize (larger numbers means a more detailed mesh), merge distance (which fills in smaller gaps) and a cutting plane (where all parts of the input mesh on the far side of that plane will be culled).

Definition at line 13179 of file SimplygonSDK.h.

Member Function Documentation

◆ GetClass()

virtual const char* SimplygonSDK::IRemeshingSettings::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.

◆ GetClippingGeometryEmptySpaceOverride()

virtual void SimplygonSDK::IRemeshingSettings::GetClippingGeometryEmptySpaceOverride ( real realReturnDataPtr)
pure virtual

Get the clipping geometry empty space override coordinate.

Parameters
realReturnDataPtrpointer to a user-provided data area to receive the return value. Note! Needs to be at least 3 elements in size

◆ GetClippingGeometrySelectionSetID()

virtual rid SimplygonSDK::IRemeshingSettings::GetClippingGeometrySelectionSetID ( )
pure virtual

The ID of the SelectionSet containing the terrain for clipping. If both ID and Name are set, ID will be used.

Returns
the ID of the selection set

◆ GetClippingGeometrySelectionSetName()

virtual rstring SimplygonSDK::IRemeshingSettings::GetClippingGeometrySelectionSetName ( )
pure virtual

The name of the SelectionSet containing the terrain for clipping. If both ID and Name are set, ID will be used.

◆ GetCuttingPlaneSelectionSetID()

virtual rid SimplygonSDK::IRemeshingSettings::GetCuttingPlaneSelectionSetID ( )
pure virtual

The ID of the SelectionSet containing all the cutting planes that should be used. If set to -1, all cutting planes are selected. Cutting planes will only be used if UseCuttingPlanes is true.

Returns
the ID of the selection set

◆ GetCuttingPlaneSelectionSetName()

virtual rstring SimplygonSDK::IRemeshingSettings::GetCuttingPlaneSelectionSetName ( )
pure virtual

The name of the SelectionSet containing all the cutting planes that should be used. If SetName is not found, all cutting planes are selected. If both ID and Name are set, ID will be used.

◆ GetEmptySpaceOverride()

virtual void SimplygonSDK::IRemeshingSettings::GetEmptySpaceOverride ( real realReturnDataPtr)
pure virtual

Get the empty space override coordinate.

Parameters
realReturnDataPtrpointer to a user-provided data area to receive the return value. Note! Needs to be at least 3 elements in size

◆ GetHardEdgeAngleInRadians()

virtual real SimplygonSDK::IRemeshingSettings::GetHardEdgeAngleInRadians ( )
pure virtual

Set/Get the normal hard angle cutoff (in radians)

Returns
the current value of HardEdgeAngleInRadians

◆ GetMaxTriangleSize()

virtual unsigned int SimplygonSDK::IRemeshingSettings::GetMaxTriangleSize ( )
pure virtual

The maximum size in pixels of a generated triangle Any value from 5 pixels and above is allowed. If set to 0, there will be no restriction.

Returns
the current value of MaxTriangleSize

◆ GetMergeBoldness()

virtual real SimplygonSDK::IRemeshingSettings::GetMergeBoldness ( )
pure virtual

Get the merge boldness. Defined from 0 to 1, low values will only merge deep cavities while high values will merge anything that falls under the merge distance.

Returns
the current value of MergeBoldness

◆ GetMergeDistance()

virtual unsigned int SimplygonSDK::IRemeshingSettings::GetMergeDistance ( )
pure virtual

Get the on-screen merge distance in pixels.

Returns
the current value of MergeDistance

◆ GetOnScreenSize()

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

Get the on-screen rendering size of the geometry. Allowed values are in the range 40 to 4000 pixels.

Returns
the current value of OnScreenSize

◆ GetOutputSceneNodeName()

virtual rstring SimplygonSDK::IRemeshingSettings::GetOutputSceneNodeName ( )
pure virtual

The name of the scene node in the output Scene containing the remeshed geometry

◆ GetProcessSelectionSetID()

virtual rid SimplygonSDK::IRemeshingSettings::GetProcessSelectionSetID ( )
pure virtual

Selects which SelectionSet should be processed. If set to -1, all geometries in the scene will be processed.

Returns
the current SelectionSet id

◆ GetProcessSelectionSetName()

virtual rstring SimplygonSDK::IRemeshingSettings::GetProcessSelectionSetName ( )
pure virtual

Selects which SelectionSet should be processed. If set to NULL, all geometries in the scene will be processed. If both ID and Name are set, ID will be used.

Returns
the current SelectionSet name

◆ GetRespectWindingDirection()

virtual bool SimplygonSDK::IRemeshingSettings::GetRespectWindingDirection ( )
pure virtual

Get the RespectWindingDirection flag. If true, the remeshing processor will not map backfacing triangles

Returns
the current value of RespectWindingDirection

◆ GetSurfaceTransferMode()

virtual rid SimplygonSDK::IRemeshingSettings::GetSurfaceTransferMode ( )
pure virtual

Get the surface transfer mode, options are SG_SURFACETRANSFER_FAST and SG_SURFACETRANSFER_ACCURATE

Returns
the current surface transfer mode

◆ GetTransferColors()

virtual bool SimplygonSDK::IRemeshingSettings::GetTransferColors ( )
pure virtual

Get the TransferColors flag. If set, vertex color channels will be sampled from the original mesh

Returns
the current value of the TransferColors bool

◆ GetTransferNormals()

virtual bool SimplygonSDK::IRemeshingSettings::GetTransferNormals ( )
pure virtual

Get the TransferNormals flag. If set, the vertex normals channel will be sampled from the original mesh

Returns
the current value of the TransferNormals bool

◆ GetUseClippingGeometry()

virtual bool SimplygonSDK::IRemeshingSettings::GetUseClippingGeometry ( )
pure virtual

Get the the UseClippingGeometry flag. If set, the terrain selection set along with the terrain empty space override will be used to clip the remeshed geometry, like a clipping plane.

Returns
the current value of the UseClippingGeometry bool

◆ GetUseClippingGeometryEmptySpaceOverride()

virtual bool SimplygonSDK::IRemeshingSettings::GetUseClippingGeometryEmptySpaceOverride ( )
pure virtual

Gets the UseClippingGeometryEmptySpaceOverride flag. If on, a coordinate in the area that will be considered "outside" for the clipping geometry can be overridden by the user.

Returns
the current value of UseClippingGeometryEmptySpaceOverride

◆ GetUseCuttingPlanes()

virtual bool SimplygonSDK::IRemeshingSettings::GetUseCuttingPlanes ( )
pure virtual

Get the current value of UseCuttingPlanes

Returns
the current value of UseCuttingPlanes

◆ GetUseEmptySpaceOverride()

virtual bool SimplygonSDK::IRemeshingSettings::GetUseEmptySpaceOverride ( )
pure virtual

Gets the EmptySpaceOverride flag. If on, a coordinate in the area that will be considered "outside" can be overridden by the user, allowing the remesher to be used for things like interiors of caves and rooms.

Returns
the current value of UseEmptySpaceOverride

◆ GetUsePreviewMode()

virtual bool SimplygonSDK::IRemeshingSettings::GetUsePreviewMode ( )
pure virtual

Sets the UsePreviewMode flag. If on, an alternate algorithm is used for the remeshing which is significantly faster, but supports smaller sizes ( up to 1000 OnScreenSize ), does not include any advanced features, and may be less precise.

Returns
the current value of UsePreviewMode

◆ IsA()

virtual bool SimplygonSDK::IRemeshingSettings::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::IRemeshingSettings::IsClassA ( const char *  type)
inlinestatic

The IsClassA function returns true if IRemeshingSettings 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 13200 of file SimplygonSDK.h.

◆ SafeCast()

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

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

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

Definition at line 13213 of file SimplygonSDK.h.

◆ SetClippingGeometryEmptySpaceOverride()

virtual void SimplygonSDK::IRemeshingSettings::SetClippingGeometryEmptySpaceOverride ( const real value_realInputDataPtr)
pure virtual

Set the clipping geometry empty space override coordinate.

Parameters
value_realInputDataPtris a pointer to a 3-tuple real which will be copied and used as a marker designating empty space

◆ SetClippingGeometrySelectionSetID()

virtual void SimplygonSDK::IRemeshingSettings::SetClippingGeometrySelectionSetID ( rid  value)
pure virtual

The ID of the SelectionSet containing the terrain for clipping. If both ID and Name are set, ID will be used.

Parameters
valuethe ID of the selection set containing the clipping terrain

◆ SetClippingGeometrySelectionSetName()

virtual void SimplygonSDK::IRemeshingSettings::SetClippingGeometrySelectionSetName ( const char *  value)
pure virtual

The name of the SelectionSet containing the terrain for clipping. If both ID and Name are set, ID will be used.

Parameters
valuethe desired SelectionSet name

◆ SetCuttingPlaneSelectionSetID()

virtual void SimplygonSDK::IRemeshingSettings::SetCuttingPlaneSelectionSetID ( rid  value)
pure virtual

The ID of the SelectionSet containing all the cutting planes that should be used. If set to -1, all cutting planes are selected. Cutting planes will only be used if UseCuttingPlanes is true.

Parameters
valuethe ID of the selection set containing the cutting planes

◆ SetCuttingPlaneSelectionSetName()

virtual void SimplygonSDK::IRemeshingSettings::SetCuttingPlaneSelectionSetName ( const char *  value)
pure virtual

The name of the SelectionSet containing all the cutting planes that should be used. If SetName is not found, all cutting planes are selected. If both ID and Name are set, ID will be used.

Parameters
valuethe desired SelectionSet name

◆ SetEmptySpaceOverride()

virtual void SimplygonSDK::IRemeshingSettings::SetEmptySpaceOverride ( const real value_realInputDataPtr)
pure virtual

Set the empty space override coordinate.

Parameters
value_realInputDataPtris a pointer to a 3-tuple real which will be copied and used as a marker designating empty space

◆ SetHardEdgeAngleInRadians()

virtual void SimplygonSDK::IRemeshingSettings::SetHardEdgeAngleInRadians ( real  value)
pure virtual

Set/Get the normal hard angle cutoff (in radians)

Parameters
valueis the value to which HardEdgeAngleInRadians will be set

◆ SetMaxTriangleSize()

virtual void SimplygonSDK::IRemeshingSettings::SetMaxTriangleSize ( unsigned int  value)
pure virtual

The maximum size in pixels of a generated triangle Any value from 5 pixels and above is allowed. If set to 0, there will be no restriction.

Parameters
valueis the value MaxTriangleSize will be set to

◆ SetMergeBoldness()

virtual void SimplygonSDK::IRemeshingSettings::SetMergeBoldness ( real  value)
pure virtual

Set the merge boldness. Defined from 0 to 1, low values will only merge deep cavities while high values will merge anything that falls under the merge distance.

Parameters
valueis the value MergeBoldness will be set to

◆ SetMergeDistance()

virtual void SimplygonSDK::IRemeshingSettings::SetMergeDistance ( unsigned int  value)
pure virtual

Set the on-screen merge distance in pixels. Smaller cavities will be removed. This will be capped to the on-screen size of the remeshing.

Parameters
valueis the value MergeDistance will be set to

◆ SetOnScreenSize()

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

Set the on-screen rendering size of the geometry. Allowed values are in the range 20 to 4000 pixels.

Parameters
valueis the value OnScreenSize will be set to Value cannot be less than 20. Value cannot be greater than 4000.

◆ SetOutputSceneNodeName()

virtual void SimplygonSDK::IRemeshingSettings::SetOutputSceneNodeName ( const char *  value)
pure virtual

The name of the scene node in the output Scene containing the remeshed geometry

Parameters
valuethe desired OutputSceneNodeName

◆ SetProcessSelectionSetID()

virtual void SimplygonSDK::IRemeshingSettings::SetProcessSelectionSetID ( rid  value)
pure virtual

Selects which SelectionSet should be processed. If set to -1, all geometries in the scene will be processed.

Parameters
valuethe desired SelectionSet id

◆ SetProcessSelectionSetName()

virtual void SimplygonSDK::IRemeshingSettings::SetProcessSelectionSetName ( const char *  value)
pure virtual

Selects which SelectionSet should be processed. If SetName is not found, all geometries in the scene will be processed. If both ID and Name are set, ID will be used.

Parameters
valuethe desired SelectionSet name

◆ SetRespectWindingDirection()

virtual void SimplygonSDK::IRemeshingSettings::SetRespectWindingDirection ( bool  value)
pure virtual

Set the RespectWindingDirection flag. If true, the remeshing processor will not map backfacing triangles

Parameters
valuethe desired value of RespectWindingDirection

◆ SetSurfaceTransferMode()

virtual void SimplygonSDK::IRemeshingSettings::SetSurfaceTransferMode ( rid  value)
pure virtual

Set the surface transfer mode, options are SG_SURFACETRANSFER_FAST and SG_SURFACETRANSFER_ACCURATE

Parameters
valueis the new surface transfer mode

◆ SetTransferColors()

virtual void SimplygonSDK::IRemeshingSettings::SetTransferColors ( bool  value)
pure virtual

Set the TransferColors flag. If set, vertex color channels will be sampled from the original mesh

Parameters
valueis the bool to which TransferColors will be set

◆ SetTransferNormals()

virtual void SimplygonSDK::IRemeshingSettings::SetTransferNormals ( bool  value)
pure virtual

Set the TransferNormals flag. If set, the vertex normals channel will be sampled from the original mesh

Parameters
valueis the value to which TransferNormals will be set

◆ SetUseClippingGeometry()

virtual void SimplygonSDK::IRemeshingSettings::SetUseClippingGeometry ( bool  value)
pure virtual

Set the UseClippingGeometry flag. If set, the terrain selection set along with the terrain empty space override will be used to clip the remeshed geometry, like a clipping plane.

Parameters
valueis the bool to which UseClippingGeometry will be set

◆ SetUseClippingGeometryEmptySpaceOverride()

virtual void SimplygonSDK::IRemeshingSettings::SetUseClippingGeometryEmptySpaceOverride ( bool  value)
pure virtual

Sets the UseClippingGeometryEmptySpaceOverride flag. If on, a coordinate in the area that will be considered "outside" for the clipping geometry can be overridden by the user.

Parameters
valueis the value to which UseClippingGeometryEmptySpaceOverride will be set

◆ SetUseCuttingPlanes()

virtual void SimplygonSDK::IRemeshingSettings::SetUseCuttingPlanes ( bool  value)
pure virtual

Set to true to cap the mesh with user defined cutting planes

Parameters
valueis the bool UseCuttingPlanes will be set to

◆ SetUseEmptySpaceOverride()

virtual void SimplygonSDK::IRemeshingSettings::SetUseEmptySpaceOverride ( bool  value)
pure virtual

Sets the EmptySpaceOverride flag. If on, a coordinate in the area that will be considered "outside" can be overridden by the user, allowing the remesher to be used for things like interiors of caves and rooms.

Parameters
valueis the value to which UseEmptySpaceOverride will be set

◆ SetUsePreviewMode()

virtual void SimplygonSDK::IRemeshingSettings::SetUsePreviewMode ( bool  value)
pure virtual

Sets the UsePreviewMode flag. If on, an alternate algorithm is used for the remeshing which is significantly faster, but supports smaller sizes ( up to 1000 OnScreenSize ), does not include any advanced features, and may be less precise.

Parameters
valueis the value to which UsePreviewMode will be set

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