polyobj.h File Reference
 
 
 
polyobj.h File Reference

This reference page is linked to from the following overview topics: Deferred Loading of Plug-ins.


#include "meshlib.h"
#include "mnmath.h"
#include "snap.h"
#include "object.h"
#include "maxtess.h"

Classes

class   PolyObject

Defines

#define  PolyLibExport   __declspec( dllimport )
#define  POLY_MULTI_PROCESSING   TRUE
#define  CID_EDITTRI   CID_USER+0x1048
  Command Mode ID for edit-tri mode for Edit Poly or Editable Poly.
#define  CID_TURNEDGE   CID_USER+0x104E
  Command Mode ID for turn-edge mode for Edit Poly or Editable Poly.

Functions

PolyLibExport
MaxSDK::Graphics::IAddRenderItemsHelper
CreatePolyObjectAddRenderItemsHelper (PolyObject *pObject)
  Internal used only.
PolyLibExport ClassDesc GetPolyObjDescriptor ()
PolyLibExport void  RegisterEditPolyObjDesc (ClassDesc *desc)
PolyLibExport ClassDesc GetEditPolyObjDesc ()
PolyLibExport PolyObject CreateEditablePolyObject ()
PolyLibExport void  ConvertPolyToPatch (MNMesh &from, PatchMesh &to, DWORD flags=0)
PolyLibExport void  ConvertPatchToPoly (PatchMesh &from, MNMesh &to, DWORD flags=0)
MAX_DEPRECATED PolyLibExport void  UpdateDisplayRequirements (MNMesh &mesh, unsigned long &requirementFlags)
PolyLibExport void  UpdatePolyObjectDisplay (MNMesh &mesh, MaxSDK::Graphics::IRenderItemContainer &renderItems, const MaxSDK::Graphics::UpdateDisplayContext &updateDisplayContext)

Variables

PolyLibExport Class_ID  polyObjectClassID

Define Documentation

#define PolyLibExport   __declspec( dllimport )
#define POLY_MULTI_PROCESSING   TRUE
#define CID_EDITTRI   CID_USER+0x1048

Command Mode ID for edit-tri mode for Edit Poly or Editable Poly.

#define CID_TURNEDGE   CID_USER+0x104E

Command Mode ID for turn-edge mode for Edit Poly or Editable Poly.


Function Documentation

PolyLibExport MaxSDK::Graphics::IAddRenderItemsHelper* CreatePolyObjectAddRenderItemsHelper ( PolyObject pObject )

Internal used only.

Create an utility interface for any PolyObject to add their render items to targetRenderItemContainer after calling BaseObject::UpdateDisplay()

PolyLibExport ClassDesc* GetPolyObjDescriptor ( )
Remarks:
Gets the class descriptor for the PolyObject.
PolyLibExport void RegisterEditPolyObjDesc ( ClassDesc desc )
Remarks:
Allows a plugin to register an Editable Poly object. (This is done by epoly.dlo in the standard 3ds Max distribution.) This is the object which is collapsed to when the stack is collapsed. The default if no such object is registered is to simply collapse to a PolyObject (which has no UI parameters).
Parameters:
ClassDesc* desc

A pointer to the class descriptor.
PolyLibExport ClassDesc* GetEditPolyObjDesc ( )
Remarks:
Gets the class descriptor for the currently registered Editable Poly object.
PolyLibExport PolyObject* CreateEditablePolyObject ( )
Remarks:
Returns an Editable Poly object from the currently registered EPoly descriptor, cast as a PolyObject.
PolyLibExport void ConvertPolyToPatch ( MNMesh from,
PatchMesh to,
DWORD  flags = 0 
)
PolyLibExport void ConvertPatchToPoly ( PatchMesh from,
MNMesh to,
DWORD  flags = 0 
)
MAX_DEPRECATED PolyLibExport void UpdateDisplayRequirements ( MNMesh mesh,
unsigned long &  requirementFlags 
)
Deprecated:
Deprecated method in terms of implementation as of 3ds Max 2013 Please use UpdatePolyObjectDisplay() instead.
PolyLibExport void UpdatePolyObjectDisplay ( MNMesh mesh,
MaxSDK::Graphics::IRenderItemContainer renderItems,
const MaxSDK::Graphics::UpdateDisplayContext updateDisplayContext 
)

Variable Documentation