#include <IPainterInterface.h>
Public Member Functions |
|
virtual BOOL | StartStroke ()=0 |
This is called when the user start a pen
stroke. |
|
virtual BOOL | PaintStroke (BOOL hit, IPoint2 mousePos, Point3 worldPoint, Point3 worldNormal, Point3 localPoint, Point3 localNormal, Point3 bary, int index, BOOL shift, BOOL ctrl, BOOL alt, float radius, float str, float pressure, INode *node, BOOL mirrorOn, Point3 worldMirrorPoint, Point3 worldMirrorNormal, Point3 localMirrorPoint, Point3 localMirrorNormal)=0 |
This is called as the user strokes across
the mesh or screen with the mouse down. |
|
virtual BOOL | EndStroke ()=0 |
This is called as the user ends a strokes
when the users has it set to always update. |
|
virtual BOOL | EndStroke (int ct, BOOL *hit, IPoint2 *mousePos, Point3 *worldPoint, Point3 *worldNormal, Point3 *localPoint, Point3 *localNormal, Point3 *bary, int *index, BOOL *shift, BOOL *ctrl, BOOL *alt, float *radius, float *str, float *pressure, INode **node, BOOL mirrorOn, Point3 *worldMirrorPoint, Point3 *worldMirrorNormal, Point3 *localMirrorPoint, Point3 *localMirrorNormal)=0 |
This is called as the user ends a strokes
when the users has it set to update on mouse up only. |
|
virtual BOOL | CancelStroke ()=0 |
This is called as the user cancels a stroke
by right clicking. |
|
virtual BOOL | SystemEndPaintSession ()=0 |
This is called when the painter want to end
a paint session for some reason. |
|
virtual void | PainterDisplay (TimeValue t, ViewExp *vpt, int flags)=0 |
this is called when the painter updates the
view ports this will let you do custom drawing if you need to
|
virtual BOOL StartStroke | ( | ) | [pure virtual] |
This is called when the user start a pen stroke.
virtual BOOL PaintStroke | ( | BOOL | hit, |
IPoint2 | mousePos, | ||
Point3 | worldPoint, | ||
Point3 | worldNormal, | ||
Point3 | localPoint, | ||
Point3 | localNormal, | ||
Point3 | bary, | ||
int | index, | ||
BOOL | shift, | ||
BOOL | ctrl, | ||
BOOL | alt, | ||
float | radius, | ||
float | str, | ||
float | pressure, | ||
INode * | node, | ||
BOOL | mirrorOn, | ||
Point3 | worldMirrorPoint, | ||
Point3 | worldMirrorNormal, | ||
Point3 | localMirrorPoint, | ||
Point3 | localMirrorNormal | ||
) | [pure virtual] |
This is called as the user strokes across the mesh or screen with the mouse down.
This only gets called if the interactive mode is off (the user has turned off Update on Mouse Up)
hit | - if this is a hit or not, since the user can paint off a mesh |
mousePos | - this is mouse coords of the current hit in view space |
worldPoint | - this is the hit point on the painted mesh in world space |
worldNormal | - this is the normal of the hit point on the painted mesh in world space |
localPoint | - this is the hit point on the painted mesh in local space of the mesh that was hit |
localNormal | - this is the normal of the hit point on the painted mesh in local space of the mesh that was hit |
bary | - this the barcentric coords of the hit point based on the face that was hit this may or may not be valid depending on the state of the stack. For instance if a paint modifier was below a MeshSmooth, the barycentric coords would be based on the MeshSmooth'ed mesh and not the mesh at the point of the paint modifier |
index | - the index of the face that was hit. See the warning in Point3 bary above. |
shift,ctrl,alt | - the state of the shift, alt, and ctrl keys when the point was hit |
radius | - of the radius of the brush when the point was hit, this is after all modifiers have been applied like pressure or predefined radius etc |
str | - of the strength of the brush when the point was hit, this is after all modifiers have been applied like pressure or predefined radius etc |
pressure | - if a pressure sensitive tablet is used this value will be the pressure of the stroke ranging from 0 to 1 |
node | - this node that got hit |
mirrorOn | - whther the user had mirror on for the stroke, you can ignore the next for params if false |
worldMirrorPoint | - the mirrored world stroke pos |
worldMirrorNormal | - the mirrored world stroke normal |
localMirrorPoint | - the mirros local stroke pos |
localMirrorNormal | - the mirros local stroke normal |
virtual BOOL EndStroke | ( | ) | [pure virtual] |
This is called as the user ends a strokes when the users has it set to always update.
virtual BOOL EndStroke | ( | int | ct, |
BOOL * | hit, | ||
IPoint2 * | mousePos, | ||
Point3 * | worldPoint, | ||
Point3 * | worldNormal, | ||
Point3 * | localPoint, | ||
Point3 * | localNormal, | ||
Point3 * | bary, | ||
int * | index, | ||
BOOL * | shift, | ||
BOOL * | ctrl, | ||
BOOL * | alt, | ||
float * | radius, | ||
float * | str, | ||
float * | pressure, | ||
INode ** | node, | ||
BOOL | mirrorOn, | ||
Point3 * | worldMirrorPoint, | ||
Point3 * | worldMirrorNormal, | ||
Point3 * | localMirrorPoint, | ||
Point3 * | localMirrorNormal | ||
) | [pure virtual] |
This is called as the user ends a strokes when the users has it set to update on mouse up only.
the canvas gets a list of all points, normals etc instead of one at a time
ct | - the number of elements in the following arrays |
everythingElse | - see PaintStroke() these are identical except they are arrays of values |
virtual BOOL CancelStroke | ( | ) | [pure virtual] |
This is called as the user cancels a stroke by right clicking.
virtual BOOL SystemEndPaintSession | ( | ) | [pure virtual] |
This is called when the painter want to end a paint session for some reason.
virtual void PainterDisplay | ( | TimeValue | t, |
ViewExp * | vpt, | ||
int | flags | ||
) | [pure virtual] |
this is called when the painter updates the view ports this will let you do custom drawing if you need to