3ds Max C++ API Reference
|
The interface to the geometry checker manager. More...
#include <IGeometryChecker.h>
Public Member Functions | ||||
virtual IGeometryChecker * | GetNthGeometryChecker (int index) const =0 | |||
Get the nth GeometryChecker. | ||||
virtual MSTR | GetNthGeometryCheckerName (int index) const =0 | |||
Get the name of the nth Geometry Checker. | ||||
virtual bool | ActivateGeometryChecker (int index)=0 | |||
Activate this geometry checker so that it is the one that's run. | ||||
virtual int | GetActivatedGeometryCheckerIndex () const =0 | |||
Returns the index of the activated geometry checker. | ||||
virtual bool | DoesGeometryCheckerHavePropDlg (int index) const =0 | |||
Get whether or not the specified geometry checker has a property dialog. | ||||
virtual void | ShowGeometryCheckerPropDlg (int index)=0 | |||
Show the specified geometry checkers dialog. | ||||
virtual void | RunGeometryCheck (TimeValue t)=0 | |||
Run the current geometry check based upon the active geometry checker and the current selection set. | ||||
virtual IGeometryChecker::ReturnVal | GeometryCheck (TimeValue t, INode *node, IGeometryChecker::OutputVal &val)=0 | |||
Run the active geometry checker at this time and on this node. | ||||
virtual void | PopupMenuSelect ()=0 | |||
Show the selection popup menu that lets you pick different checkers to be active and modify different geometry checker manager properties. | ||||
virtual void | SelectResults (TimeValue t)=0 | |||
Select the results of the currently run geometry check on the currently selected node. | ||||
virtual void | DisplayResults (Color *overrideColor, TimeValue t, INode *node, HWND hwnd, IGeometryChecker::ReturnVal type, Tab< int > &indices)=0 | |||
Utility function to use the internal display mechanism to display a set of highlighted vertices, edges or faces. | ||||
virtual DWORD | GetNextValidGeometryCheckerID ()=0 | |||
Utility function to get the next valid geometry checker id. | ||||
Registeration Functions | ||||
Register the geometry checker
| ||||
virtual int | RegisterGeometryChecker (IGeometryChecker *geomChecker)=0 | |||
Unregister a geometry checker. | ||||
virtual void | UnRegisterGeometryChecker (IGeometryChecker *geomChecker)=0 | |||
Unregister a geometry checker. | ||||
virtual int | GetNumRegisteredGeometryCheckers () const =0 | |||
Returns the number of registered geometry checkers. | ||||
Properties | ||||
virtual void | SetGeometryCheckerOn (bool on)=0 | |||
Set whether or not the geometry checker system is on so checks will be run and outupt displayed. | ||||
virtual bool | GetGeometryCheckerOn () const =0 | |||
Returns whether or not the geometry checker system is on. | ||||
virtual void | SetSeeThrough (bool val)=0 | |||
Set whether or not the results can be seen through objects or not. | ||||
virtual bool | GetSeeThrough () const =0 | |||
Get whether or not the results should be seen through objects or not. | ||||
virtual void | SetAutoUpdate (bool val)=0 | |||
Turn on or off the automatic updating of the geometry checker. | ||||
virtual bool | GetAutoUpdate () const =0 | |||
Returns true if automatic updating of the geometry checker is on and false if not. | ||||
virtual void | SetDisplayTextUpTop (bool val)=0 | |||
Set the output display text on the top or bottom of the viewport. | ||||
virtual bool | GetDisplayTextUpTop () const =0 | |||
Returns true if the text is displayed on top of the viewport, false if displayed on the bottom. | ||||
Getting the Current Output | ||||
Gets the current ReturnVal of the current geometry check. | ||||
virtual IGeometryChecker::ReturnVal | GetCurrentReturnVal ()=0 | |||
Gets the number of indices in the current output. | ||||
virtual int | GetCurrentOutputCount ()=0 | |||
Gets the number of indices in the current output. | ||||
virtual MSTR | GetCurrentString ()=0 | |||
Returns the output string that's shown as text display. | ||||
![]() | ||||
CoreExport | FPInterfaceDesc () | |||
CoreExport | FPInterfaceDesc (Interface_ID id, const MCHAR *int_name, StringResID descr, ClassDesc *cd, ULONG flag,...) | |||
CoreExport | ~FPInterfaceDesc () | |||
virtual void | Init () | |||
LifetimeType | LifetimeControl () | |||
virtual BaseInterface * | GetInterface (Interface_ID id) | |||
CoreExport void | LoadDescriptor (Interface_ID id, const MCHAR *int_name, StringResID descr, ClassDesc *pCD, ULONG flag,...) | |||
CoreExport void | AppendFunction (int id,...) | |||
Add a new function to this interface descriptor. | ||||
CoreExport void | AppendProperty (int id,...) | |||
Add a new property to this interface descriptor. | ||||
CoreExport void | AppendEnum (int id,...) | |||
Add a new enum to this interface descriptor. | ||||
CoreExport void | SetClassDesc (ClassDesc *i_cd) | |||
CoreExport va_list | check_fn (va_list ap, int id) | |||
CoreExport va_list | scan_fn (va_list ap, int id, int index) | |||
CoreExport va_list | check_prop (va_list ap, int id) | |||
CoreExport va_list | scan_prop (va_list ap, int id, int index) | |||
CoreExport va_list | check_enum (va_list ap, EnumID id) | |||
CoreExport va_list | scan_enum (va_list ap, EnumID id, int index) | |||
FPInterfaceDesc * | GetDesc () | |||
Interface_ID | GetID () | |||
CoreExport FPFunctionDef * | GetFnDef (FunctionID fid) | |||
ActionTable * | GetActionTable () | |||
CoreExport void | EnableActions (BOOL onOff) | |||
virtual CoreExport HINSTANCE | HInstance () | |||
virtual CoreExport const MCHAR * | GetRsrcString (StringResID id) | |||
![]() | ||||
virtual BaseInterface * | GetInterface (Interface_ID id) | |||
virtual FPInterfaceDesc * | GetDesc ()=0 | |||
virtual CoreExport FPStatus | Invoke (FunctionID fid, TimeValue t=0, FPParams *params=NULL) | |||
virtual FPStatus | Invoke (FunctionID fid, FPParams *params) | |||
virtual CoreExport FPStatus | Invoke (FunctionID fid, TimeValue t, FPValue &result, FPParams *params=NULL) | |||
virtual FPStatus | Invoke (FunctionID fid, FPValue &result, FPParams *params=NULL) | |||
virtual CoreExport FunctionID | FindFn (const MCHAR *name) | |||
virtual CoreExport BOOL | IsEnabled (FunctionID actionID) | |||
virtual CoreExport BOOL | IsChecked (FunctionID actionID) | |||
virtual CoreExport BOOL | IsVisible (FunctionID actionID) | |||
virtual CoreExport FunctionID | GetIsEnabled (FunctionID actionID) | |||
virtual CoreExport FunctionID | GetIsChecked (FunctionID actionID) | |||
virtual CoreExport FunctionID | GetIsVisible (FunctionID actionID) | |||
virtual ActionTable * | GetActionTable () | |||
virtual void | EnableActions (BOOL onOff) | |||
![]() | ||||
virtual UtilExport | ~BaseInterface () | |||
Destructor. | ||||
UtilExport BaseInterface * | GetInterface (Interface_ID id) override | |||
virtual UtilExport Interface_ID | GetID () | |||
virtual LifetimeType | LifetimeControl () | |||
virtual bool | RegisterNotifyCallback (InterfaceNotifyCallback *incb) | |||
virtual void | UnRegisterNotifyCallback (InterfaceNotifyCallback *incb) | |||
virtual BaseInterface * | AcquireInterface () | |||
virtual void | ReleaseInterface () | |||
virtual void | DeleteInterface () | |||
virtual BaseInterface * | CloneInterface (void *remapDir=nullptr) | |||
![]() | ||||
virtual UtilExport | ~InterfaceServer () | |||
Destructor. | ||||
virtual UtilExport BaseInterface * | GetInterface (Interface_ID id) | |||
template<class InterfaceType > | ||||
InterfaceType * | GetTypedInterface () | |||
Additional Inherited Members | |
![]() | |
enum | LifetimeType { noRelease , immediateRelease , wantsRelease , serverControlled } |
![]() | |
static UtilExport void * | operator new (size_t size) |
Standard new operator used to allocate objects If there is insufficient memory, an exception will be thrown. | |
static UtilExport void * | operator new (size_t size, const std::nothrow_t &e) |
Standard new operator used to allocate objects if there is insufficient memory, NULL will be returned. | |
static UtilExport void * | operator new (size_t size, const char *filename, int line) |
New operator used to allocate objects that takes the filename and line number where the new was called If there is insufficient memory, an exception will be thrown. | |
static UtilExport void * | operator new (size_t size, int block_type, const char *filename, int line) |
New operator used to allocate objects that takes the type of memory, filename and line number where the new was called If there is insufficient memory, an exception will be thrown. | |
static UtilExport void * | operator new (size_t size, const std::nothrow_t &e, const char *filename, int line) |
New operator used to allocate objects that takes the filename and line number where the new was called If there is insufficient memory, NULL will be returned. | |
static UtilExport void * | operator new (size_t size, unsigned long flags) |
New operator used to allocate objects that takes extra flags to specify special operations If there is insufficient memory, an exception will be thrown. | |
static UtilExport void * | operator new (size_t size, const std::nothrow_t &e, unsigned long flags) |
New operator used to allocate objects that takes extra flags to specify special operations If there is insufficient memory, NULL will be returned. | |
static UtilExport void * | operator new[] (size_t size) |
New operator used to allocate arrays of objects If there is insufficient memory, an exception will be thrown. | |
static UtilExport void * | operator new[] (size_t size, const std::nothrow_t &e) |
New operator used to allocate arrays of objects If there is insufficient memory, NULL will be returned. | |
static UtilExport void * | operator new[] (size_t size, const char *filename, int line) |
New operator used to allocate arrays of objects If there is insufficient memory, an exception will be thrown. | |
static UtilExport void * | operator new[] (size_t size, int block_type, const char *filename, int line) |
New operator used to allocate arrays of objects. | |
static UtilExport void * | operator new[] (size_t size, const std::nothrow_t &e, const char *filename, int line) |
New operator used to allocate arrays of objects If there is insufficient memory, NULL will be returned. | |
static UtilExport void * | operator new[] (size_t size, unsigned long flags) |
New operator used to allocate arrays of objects If there is insufficient memory, an exception will be thrown. | |
static UtilExport void * | operator new[] (size_t size, const std::nothrow_t &e, unsigned long flags) |
New operator used to allocate arrays of objects If there is insufficient memory, NULL will be returned. | |
static UtilExport void | operator delete (void *ptr) |
Standard delete operator used to deallocate an object If the pointer is invalid, an exception will be thrown. | |
static UtilExport void | operator delete (void *ptr, const std::nothrow_t &e) |
Standard delete operator used to deallocate an object If the pointer is invalid, nothing will happen. | |
static UtilExport void | operator delete (void *ptr, const char *filename, int line) |
Delete operator used to deallocate an object that takes the filename and line number where the delete was called If the pointer is invalid, an exception will be thrown. | |
static UtilExport void | operator delete (void *ptr, int block_type, const char *filename, int line) |
Delete operator used to deallocate an object that takes the type of memory, filename and line number where the delete was called If the pointer is invalid, an exception will be thrown. | |
static UtilExport void | operator delete (void *ptr, const std::nothrow_t &e, const char *filename, int line) |
Delete operator used to deallocate an object that takes the filename and line number where the delete was called If the pointer is invalid, nothing will happen. | |
static UtilExport void | operator delete (void *ptr, unsigned long flags) |
Delete operator used to deallocate an object that takes extra flags to specify special operations If the pointer is invalid, an exception will be thrown. | |
static UtilExport void | operator delete (void *ptr, const std::nothrow_t &e, unsigned long flags) |
Delete operator used to deallocate an object that takes extra flags to specify special operations If the pointer is invalid, nothing will happen. | |
static UtilExport void | operator delete[] (void *ptr) |
Standard delete operator used to deallocate an array of objects If the pointer is invalid, an exception will be thrown. | |
static UtilExport void | operator delete[] (void *ptr, const std::nothrow_t &e) |
Standard delete operator used to deallocate an array of objects If the pointer is invalid, nothing will happen. | |
static UtilExport void | operator delete[] (void *ptr, const char *filename, int line) |
Delete operator used to deallocate an array of objects that takes the filename and line number where the delete was called If the pointer is invalid, an exception will be thrown. | |
static UtilExport void | operator delete[] (void *ptr, int block_type, const char *filename, int line) |
Delete operator used to deallocate an array of objects that takes the type of memory, filename and line number where the delete was called If the pointer is invalid, an exception will be thrown. | |
static UtilExport void | operator delete[] (void *ptr, const std::nothrow_t &e, const char *filename, int line) |
Delete operator used to deallocate an array of objects that takes the filename and line number where the delete was called If the pointer is invalid, nothing will happen. | |
static UtilExport void | operator delete[] (void *ptr, unsigned long flags) |
Delete operator used to deallocate an array of objects that takes extra flags to specify special operations If the pointer is invalid, an exception will be thrown. | |
static UtilExport void | operator delete[] (void *ptr, const std::nothrow_t &e, unsigned long flags) |
Delete operator used to deallocate an array of objects that takes extra flags to specify special operations If the pointer is invalid, an exception will be thrown. | |
static UtilExport void * | operator new (size_t size, void *placement_ptr) |
Placement new operator. | |
static UtilExport void | operator delete (void *ptr, void *placement_ptr) |
Placement delete operator. | |
static UtilExport void * | aligned_malloc (size_t size, size_t alignment) |
Allocates memory on a specified alignment boundary. | |
static UtilExport void * | aligned_realloc (void *ptr, size_t size, size_t alignment) |
Reallocates memory on a specified alignment boundary. | |
static UtilExport void | aligned_free (void *ptr) |
Frees a block of memory that was allocated with aligned_malloc/aligned_realloc. | |
![]() | |
Interface_ID | ID |
MSTR | internal_name |
StringResID | description |
ClassDesc * | cd |
USHORT | flags |
Tab< FPFunctionDef * > | functions |
Tab< FPPropDef * > | props |
Tab< FPEnum * > | enumerations |
MSPluginClass * | pc |
Rollout * | rollout |
ActionTable * | action_table |
![]() | |
static CoreExport FPInterfaceDesc | nullInterface |
![]() | |
CoreExport void | load_descriptor (Interface_ID id, const MCHAR *int_name, StringResID descr, ClassDesc *cd, USHORT flag, va_list ap) |
![]() | |
virtual FPStatus | _dispatch_fn (FunctionID fid, TimeValue t, FPValue &result, FPParams *p) |
The interface to the geometry checker manager.
This manager is responsible for registering, activitating and displaying the results of the geometry checkers. You get this interface by calling GetIGeometryCheckerManager()
|
pure virtual |
Unregister a geometry checker.
[in] | geomChecker | The checker you want to unregister. |
|
pure virtual |
Unregister a geometry checker.
[in] | geomChecker | The checker you want to unregister. |
|
pure virtual |
Returns the number of registered geometry checkers.
|
pure virtual |
Set whether or not the geometry checker system is on so checks will be run and outupt displayed.
[in] | on | If true the geometry checker system is on, if false it's off and no output or checks occur. |
|
pure virtual |
Returns whether or not the geometry checker system is on.
|
pure virtual |
Set whether or not the results can be seen through objects or not.
[in] | val | If true the results can be seen through other objects, if false, they can't. In other words if the value is true we disable z depth testing when drawing the results. |
|
pure virtual |
Get whether or not the results should be seen through objects or not.
|
pure virtual |
Turn on or off the automatic updating of the geometry checker.
If it's on, then the geometry checker will run whenever a new object is selected or some change happens to the model. If false the user needs to manual run and update the checker, which is useful for tests which are slow.
|
pure virtual |
Returns true if automatic updating of the geometry checker is on and false if not.
|
pure virtual |
Set the output display text on the top or bottom of the viewport.
[in] | val | If true the text is displayed on top, if false, it's displayed on the bottom. |
|
pure virtual |
Returns true if the text is displayed on top of the viewport, false if displayed on the bottom.
|
pure virtual |
Get the nth GeometryChecker.
[in] | index | The index of the registered geoemtry checker |
Get the name of the nth Geometry Checker.
[in] | index | The index of the registered geoemtry checker |
|
pure virtual |
Activate this geometry checker so that it is the one that's run.
[in] | index | The index of the geometry checker that's being made active. |
|
pure virtual |
Returns the index of the activated geometry checker.
|
pure virtual |
Get whether or not the specified geometry checker has a property dialog.
[in] | index | The index which to check to see if the geometry checker has a dialog. |
Show the specified geometry checkers dialog.
[in] | index | The index of the geometry checker that will show it's property dialog. |
Run the current geometry check based upon the active geometry checker and the current selection set.
[in] | t | The time at which to run the check. |
|
pure virtual |
Run the active geometry checker at this time and on this node.
[in] | t | The time at which to run the check. |
[in] | node | The node on which to run the check. |
[out] | val | The output of the check. Currently a list of indices. |
|
pure virtual |
Show the selection popup menu that lets you pick different checkers to be active and modify different geometry checker manager properties.
|
pure virtual |
Gets the number of indices in the current output.
|
pure virtual |
Gets the number of indices in the current output.
|
pure virtual |
Returns the output string that's shown as text display.
Select the results of the currently run geometry check on the currently selected node.
Based upon the ReturnType it will select the correct vertices, edges or faces on that node, in the current active modifier or object.
[in] | t | The time to perform the selection. |
|
pure virtual |
Utility function to use the internal display mechanism to display a set of highlighted vertices, edges or faces.
[in] | overrideColor | The color that you want the items to be displayed in. |
[in] | t | The time you want the node to get queried at for display. |
[in] | node | The node over which the display will be drawn over. |
[in] | hwnd | The window handle of the viewport where the display should get outputted. Usually the active viewport. |
[in] | type | The type of geometric item that will get displayed, may be IGeometryChecker::eVertices, IGeometryChecker::eEdges, or IGeometryChecker::eFaces |
[in] | indices | The indices of the geometric elements that will get highlighted. |
|
pure virtual |
Utility function to get the next valid geometry checker id.
New geometry checkers should use this function to get an id.