Public Member Functions | Static Public Member Functions

MDrawInfo Class Reference

This reference page is linked to from the following overview topics: Drawing and refresh.


Search for all occurrences

Detailed Description

Drawing state used in the draw methods of MPxSurfaceShapeUI.

This class is used by the getDrawRequests method of MPxSurfaceShapeUI to specify the current object drawing state for a user defined shape.

This getPrototype method is used to construct a draw request object based on the current draw state for the object.

See MDrawRequest for more information.

Examples:

apiMeshShapeUI.cpp, apiMeshShapeUI.h, apiSimpleShapeUI.cpp, apiSimpleShapeUI.h, and quadricShape.cpp.

#include <MDrawInfo.h>

Inheritance diagram for MDrawInfo:
Inheritance graph
[legend]

List of all members.

Public Member Functions

  MDrawInfo ()
  Constructor.
  MDrawInfo (const MDrawInfo &in)
  Copy constructor.
virtual  ~MDrawInfo ()
  Destructor.
MDrawRequest  getPrototype (const MPxSurfaceShapeUI &drawHandler) const
  This method creates a draw request based on the current draw state.
M3dView  view () const
  Returns the view that the drawing will take place.
const MDagPath  multiPath () const
  Returns the path to the object to be drawn.
void  setMultiPath (const MDagPath &)
  Sets the path of the object to be drawn.
const MMatrix  projectionMatrix () const
  Returns the camera*projection matrix.
const MMatrix  inclusiveMatrix () const
  Returns the world space inclusive matrix.
M3dView::DisplayStyle  displayStyle () const
  The display appearance.
M3dView::DisplayStatus  displayStatus () const
  Returns the status of the object to draw.
bool  objectDisplayStatus (M3dView::DisplayObjects) const
  Determines whether the specified objects are allowed to be displayed.
bool  inSelect () const
  Returns true if this is called from within the select method of MPxSurfaceShapeUI.
bool  inUserInteraction () const
  Returns true during any interactive refresh, as when user is interacting with the scene in any way including camera changes, object or component TRS changes, etc.
bool  userChangingViewContext () const
  Returns true during any interactive refresh, as when user is changing the view using view context tools such as tumble, dolly or track.
bool  completelyInside () const
  Returns true if the object being drawn is inside the viewing frustum.
bool  canDrawComponent (bool isDisplayOn, const MSelectionMask &compMask) const
  Convenience method to test if components specified by the given mask can be drawn.

Static Public Member Functions

static const char *  className ()
  Returns the name of this class.

Constructor & Destructor Documentation

MDrawInfo ( const MDrawInfo other )

Copy constructor.

Parameters:
[in] other draw info object to copy

Member Function Documentation

MDrawRequest getPrototype ( const MPxSurfaceShapeUI drawHandler ) const

This method creates a draw request based on the current draw state.

The draw request is placed onto maya's drawing queue (MDrawRequestQueue) where it can be processed in turn. The drawHandler argument is the shape that will be doing the drawing which is the object calling this function.

See MDrawRequest for more information.

Parameters:
[in] drawHandler the ui object that is doing the drawing
Returns:
A draw request
Examples:
apiMeshShapeUI.cpp, apiSimpleShapeUI.cpp, and quadricShape.cpp.
M3dView view ( ) const

Returns the view that the drawing will take place.

Returns:
The view
Examples:
apiMeshShapeUI.cpp, apiSimpleShapeUI.cpp, and quadricShape.cpp.
const MDagPath multiPath ( ) const

Returns the path to the object to be drawn.

Returns:
The path to the object to be drawn
Examples:
apiMeshShapeUI.cpp, apiSimpleShapeUI.cpp, and quadricShape.cpp.
const MMatrix projectionMatrix ( ) const

Returns the camera*projection matrix.

Returns:
The camera projection matrix
const MMatrix inclusiveMatrix ( ) const

Returns the world space inclusive matrix.

Returns:
World space inclusive matrix
M3dView::DisplayStyle displayStyle ( ) const

The display appearance.

Returns:
The display appearance.
Examples:
apiMeshShapeUI.cpp, apiSimpleShapeUI.cpp, and quadricShape.cpp.
M3dView::DisplayStatus displayStatus ( ) const

Returns the status of the object to draw.

Returns:
Object display status
Examples:
apiMeshShapeUI.cpp, apiSimpleShapeUI.cpp, and quadricShape.cpp.
bool objectDisplayStatus ( M3dView::DisplayObjects  displayObj ) const

Determines whether the specified objects are allowed to be displayed.

Returns:
  • true All of the objects in the displayObj mask can be displayed.
  • false One or more objects in the displayObj mask is excluded from display.
Examples:
apiMeshShapeUI.cpp, and quadricShape.cpp.
bool inSelect ( ) const

Returns true if this is called from within the select method of MPxSurfaceShapeUI.

Returns:
  • true in select
  • false in draw
bool inUserInteraction ( ) const

Returns true during any interactive refresh, as when user is interacting with the scene in any way including camera changes, object or component TRS changes, etc.

Use userChangingViewContext for determining whether user is changing the view using view context tools such as tumble, dolly or track.

Returns:
  • true draw is called because user is interacting with scene
  • false draw is for another reason; user is not interacting
Examples:
apiMeshShapeUI.cpp.
bool userChangingViewContext ( ) const

Returns true during any interactive refresh, as when user is changing the view using view context tools such as tumble, dolly or track.

Useful for changing drawing mode to something simpler to speed up interaction re-draw. Use inUserInteraction for determining whether user is interacting with the scene in any way.

Returns:
  • true draw is called because user is changing the view using view context tools such as tumble, dolly or track
  • false draw is for another reason
Examples:
apiMeshShapeUI.cpp.
bool completelyInside ( ) const

Returns true if the object being drawn is inside the viewing frustum.

Returns:
  • true object inside frustum
  • false object not completely inside frustum
bool canDrawComponent ( bool  isDisplayOn,
const MSelectionMask mask 
) const

Convenience method to test if components specified by the given mask can be drawn.

Parameters:
[in] isDisplayOn component display is on
[in] mask component mask to test
Returns:
  • true the specified component can be drawn
  • false the specified component cannot be drawn
const char * className ( ) [static]

Returns the name of this class.

Returns:
Name of this class.

Reimplemented in MSelectInfo.


MDrawInfo MDrawInfo MDrawInfo MDrawInfo MDrawInfo MDrawInfo MDrawInfo MDrawInfo MDrawInfo MDrawInfo
MDrawInfo MDrawInfo MDrawInfo MDrawInfo MDrawInfo MDrawInfo MDrawInfo MDrawInfo MDrawInfo MDrawInfo