GEOS SDK TechDocs
|
|
4.4 Guide Constraints and Guidelines
|
4.6 Esoteric Messages
Up until now, we have discussed various ways to constrain mouse movement to grid- or guide-lines. However, other constraints are possible, and may be accessed through the following messages.
void MSG_VIS_RULER_CONSTRAIN_TO_AXES(
PointDWFixed _far* point);
Use this message to constrain the mouse to the axes; that is to force it to be in line either horizontally or vertically with the reference point (the point stored in
VRI_reference
).
void MSG_VIS_RULER_CONSTRAIN_TO_HORIZONTAL_AXIS(
PointDWFixed _far* point);
Use this message to constrain the mouse horizontally, forcing it to be in line horizontally with the reference point (the point stored in
VRI_reference
).
void MSG_VIS_RULER_CONSTRAIN_TO_VERTICAL_AXIS(
PointDWFixed _far* point);
Use this message to constrain the mouse vertically, forcing it to be in line vertically with the reference point (the point stored in
VRI_reference
).
void MSG_VIS_RULER_CONSTRAIN_TO_DIAGONALS(
PointDWFixed _far* point);
Use this message to constrain the mouse to the diagonal axes; that is to force it to be on a line 45 degrees through the reference point (the point stored in
VRI_reference
).
void MSG_VIS_RULER_SET_CONSTRAIN_TRANSFORM(
TransMatrix* tm)
Use this message to impose a transformation on the coordinate system used to constrain the mouse. You can see this at work in GeoDraw when resizing an object which has been rotated or skewed.
void MSG_VIS_RULER_CLEAR_CONSTRAIN_TRANSFORM();
Use this message to remove any transformation on the coordinate system used to constrain the mouse.
void MSG_VIS_RULER_CONSTRAIN_X_TO_UNITY_SLOPE_AXIS(
PointDWFixed _far* point);
Use this message to determine the coordinates resulting from horizontally snapping a given point to the Northeast diagonal line passing through the reference point.
void MSG_VIS_RULER_CONSTRAIN_Y_TO_UNITY_SLOPE_AXIS(
PointDWFixed _far* point);
Use this message to determine the coordinates resulting from vertically snapping a given point to the Northeast diagonal line passing through the reference point.
void MSG_VIS_RULER_CONSTRAIN_X_TO_NEGATIVE_SLOPE_AXIS(
PointDWFixed _far* point);
Use this message to determine the coordinates resulting from horizontally snapping a given point to the Southeast diagonal line passing through the reference point.
void MSG_VIS_RULER_CONSTRAIN_Y_TO_NEGATIVE_SLOPE_AXIS(
PointDWFixed _far* point);
Use this message to determine the coordinates resulting from horizontally snapping a given point to the Southeast diagonal line passing through the reference point.
@message void MSG_VIS_RULER_CONSTRAIN_TO_VECTOR(
PointDWFixed _far* point);
This message computes the point resulting from constraining the passed point using vector constraint. This means that the mouse's constrained location will end up at a certain angle from the reference angle. This angle is determined by means of a point set up my
MSG_VIS_RULER_SET_VECTOR
. This constraint will constrain the point either to the vector line or to that line's reflection.
@message void MSG_VIS_RULER_CONSTRAIN_X_TO_VECTOR(
PointDWFixed _far* point);
This message computes the point resulting from horizontally constraining the passed point to the line going through the reference point with the present vector slope.
@message void MSG_VIS_RULER_CONSTRAIN_X_TO_VECTOR_REFLECTION(
PointDWFixed _far* point);
This message computes the point resulting from horizontally constraining the passed point to the line going through the reference point with the negative of the present vector slope.
@message void MSG_VIS_RULER_CONSTRAIN_Y_TO_VECTOR(
PointDWFixed _far* point);
This message computes the point resulting from vertically constraining the passed point to the line going through the reference point with the present vector slope.
@message void MSG_VIS_RULER_CONSTRAIN_Y_TO_VECTOR_REFLECTION(
PointDWFixed _far* point);
This message computes the point resulting from vertically constraining the passed point to the line going through the reference point with the negative of the present vector slope.
GEOS SDK TechDocs
|
|
4.4 Guide Constraints and Guidelines
|
4.6 Esoteric Messages