SoMarker Class Reference
[Nodes]
Defines a custom bitmap for SoMarkerSet and SoIndexedMarkerSet.
More...
#include <Inventor/nodes/SoMarker.h>
List of all members.
Public Types |
enum | MarkerType {
CROSS_5_5,
PLUS_5_5,
MINUS_5_5,
SLASH_5_5,
BACKSLASH_5_5,
BAR_5_5,
STAR_5_5,
Y_5_5,
LIGHTNING_5_5,
WELL_5_5,
CIRCLE_LINE_5_5,
SQUARE_LINE_5_5,
DIAMOND_LINE_5_5,
TRIANGLE_LINE_5_5,
RHOMBUS_LINE_5_5,
HOURGLASS_LINE_5_5,
SATELLITE_LINE_5_5,
PINE_TREE_LINE_5_5,
CAUTION_LINE_5_5,
SHIP_LINE_5_5,
CIRCLE_FILLED_5_5,
SQUARE_FILLED_5_5,
DIAMOND_FILLED_5_5,
TRIANGLE_FILLED_5_5,
RHOMBUS_FILLED_5_5,
HOURGLASS_FILLED_5_5,
SATELLITE_FILLED_5_5,
PINE_TREE_FILLED_5_5,
CAUTION_FILLED_5_5,
SHIP_FILLED_5_5,
CROSS_7_7,
PLUS_7_7,
MINUS_7_7,
SLASH_7_7,
BACKSLASH_7_7,
BAR_7_7,
STAR_7_7,
Y_7_7,
LIGHTNING_7_7,
WELL_7_7,
CIRCLE_LINE_7_7,
SQUARE_LINE_7_7,
DIAMOND_LINE_7_7,
TRIANGLE_LINE_7_7,
RHOMBUS_LINE_7_7,
HOURGLASS_LINE_7_7,
SATELLITE_LINE_7_7,
PINE_TREE_LINE_7_7,
CAUTION_LINE_7_7,
SHIP_LINE_7_7,
CIRCLE_FILLED_7_7,
SQUARE_FILLED_7_7,
DIAMOND_FILLED_7_7,
TRIANGLE_FILLED_7_7,
RHOMBUS_FILLED_7_7,
HOURGLASS_FILLED_7_7,
SATELLITE_FILLED_7_7,
PINE_TREE_FILLED_7_7,
CAUTION_FILLED_7_7,
SHIP_FILLED_7_7,
CROSS_9_9,
PLUS_9_9,
MINUS_9_9,
SLASH_9_9,
BACKSLASH_9_9,
BAR_9_9,
STAR_9_9,
Y_9_9,
LIGHTNING_9_9,
WELL_9_9,
CIRCLE_LINE_9_9,
SQUARE_LINE_9_9,
DIAMOND_LINE_9_9,
TRIANGLE_LINE_9_9,
RHOMBUS_LINE_9_9,
HOURGLASS_LINE_9_9,
SATELLITE_LINE_9_9,
PINE_TREE_LINE_9_9,
CAUTION_LINE_9_9,
SHIP_LINE_9_9,
CIRCLE_FILLED_9_9,
SQUARE_FILLED_9_9,
DIAMOND_FILLED_9_9,
TRIANGLE_FILLED_9_9,
RHOMBUS_FILLED_9_9,
HOURGLASS_FILLED_9_9,
SATELLITE_FILLED_9_9,
PINE_TREE_FILLED_9_9,
CAUTION_FILLED_9_9,
SHIP_FILLED_9_9
} |
Public Member Functions |
virtual SoType | getTypeId () const |
| SoMarker () |
Static Public Member Functions |
static SoType | getClassTypeId () |
Public Attributes |
SoMFUByte | bitmap |
SoMFUInt32 | orderedRGBA |
SoSFBool | upToDown |
SoSFBool | isLSBFirst |
SoSFVec2s | size |
SoSFInt32 | index |
Detailed Description
Defines a custom bitmap for
SoMarkerSet and
SoIndexedMarkerSet.
This class defines a Marker. A marker is an image defined by a bitmap and optional color values. If no color values are given then image pixels corresponding to "1" bits are drawn using the current material color (see SoMaterial) and pixels corresponding to "0" bits are not drawn (whatever is behind the marker shows through). If color values are given then each pixel in the image can be assigned an RGBA value.
size is the dimensions of the marker image in pixels. bitmap is the marker bitmap. The bitmap is arranged row by row, from left to right and up to down (or down to up according to the parameter isUpToDown ). Each byte specifies eight pixels. If isLSBFirst is TRUE, bits are ordered within a byte from Least Significant to Most Significant; otherwise the first bit in each byte is the most significant one. If isUpToDown is TRUE, the marker bitmap is described from down to up (first byte is the bottom left corner of the bitmap), otherwise from up to down (first byte is the top left corner).
Also note that each row must use a whole number of bytes. Padding is thus needed at the end of each row if row size is not a multiple of 8.
orderedRGBA is an optional color mask to apply to the marker. The color mask is arranged the same as bitmap, but each value (unsigned integer) specifies the color of one pixel. Each color is an ordered RGBA value. A value of 0xFF for Alpha makes the color mask be ignored for this pixel, and the color is inherited from the state depending on the bitmap value (as if no color values were given).
Note:
- If only orderedRGBA values are set, the bitmap is assumed to be a fully defined set of "1" bits.
- Marker size must be greater than 1x1.
Marker definitions are used by the SoMarkerSet and SoIndexedMarkerSet nodes. To make a custom marker available to these nodes, use one of the addMarker methods defined in those classes.
An SoMarker node can be added to the scene graph, but it is not a geometry node or an attribute node (does not render anything and does not affect the traversal state list). However SoMarker nodes are written out to an Inventor file if an SoWriteAction is applied to the scene graph. So adding SoMarker nodes to the scene graph allows custom marker definitions to be saved and restored. For example:
FILE FORMAT/DEFAULT
SEE ALSO
SoMarkerSet, SoIndexedMarkerSet
Member Enumeration Documentation
Marker type.
- Enumerator:
CROSS_5_5 |
Cross 5x5.
|
PLUS_5_5 |
Plus 5x5.
|
MINUS_5_5 |
Minus 5x5.
|
SLASH_5_5 |
Slash 5x5.
|
BACKSLASH_5_5 |
Backslash 5x5.
|
BAR_5_5 |
Bar 5x5.
|
STAR_5_5 |
Star 5x5.
|
Y_5_5 |
Y 5x5.
|
LIGHTNING_5_5 |
Lightning 5x5.
|
WELL_5_5 |
Well 5x5.
|
CIRCLE_LINE_5_5 |
Circle line 5x5.
|
SQUARE_LINE_5_5 |
Square line 5x5.
|
DIAMOND_LINE_5_5 |
Diamond line 5x5.
|
TRIANGLE_LINE_5_5 |
Triangle line 5x5.
|
RHOMBUS_LINE_5_5 |
Rhombus line 5x5.
|
HOURGLASS_LINE_5_5 |
Hourglass line 5x5.
|
SATELLITE_LINE_5_5 |
Satellite line 5x5.
|
PINE_TREE_LINE_5_5 |
Pine line 5x5.
|
CAUTION_LINE_5_5 |
Caution line 5x5.
|
SHIP_LINE_5_5 |
Ship line 5x5.
|
CIRCLE_FILLED_5_5 |
Circle filled 5x5.
|
SQUARE_FILLED_5_5 |
Square filled 5x5.
|
DIAMOND_FILLED_5_5 |
Diamond filled 5x5.
|
TRIANGLE_FILLED_5_5 |
Triangle filled 5x5.
|
RHOMBUS_FILLED_5_5 |
Rhombus filled 5x5.
|
HOURGLASS_FILLED_5_5 |
Hourglass filled 5x5.
|
SATELLITE_FILLED_5_5 |
Satellite filled 5x5.
|
PINE_TREE_FILLED_5_5 |
Pine filled 5x5.
|
CAUTION_FILLED_5_5 |
Caution filled 5x5.
|
SHIP_FILLED_5_5 |
Ship filled 5x5.
|
CROSS_7_7 |
Cross 7x7.
|
PLUS_7_7 |
Plus 7x7.
|
MINUS_7_7 |
Minus 7x7.
|
SLASH_7_7 |
Slash 7x7.
|
BACKSLASH_7_7 |
Backslash 7x7.
|
BAR_7_7 |
Bar 7x7.
|
STAR_7_7 |
Star 7x7.
|
Y_7_7 |
Y 7x7.
|
LIGHTNING_7_7 |
Lightning 7x7.
|
WELL_7_7 |
Well 7x7.
|
CIRCLE_LINE_7_7 |
Circle line 7x7.
|
SQUARE_LINE_7_7 |
Square line 7x7.
|
DIAMOND_LINE_7_7 |
Diamond line 7x7.
|
TRIANGLE_LINE_7_7 |
Triangle line 7x7.
|
RHOMBUS_LINE_7_7 |
Rhombus line 7x7.
|
HOURGLASS_LINE_7_7 |
Hourglass line 7x7.
|
SATELLITE_LINE_7_7 |
Satellite line 7x7.
|
PINE_TREE_LINE_7_7 |
Pine line 7x7.
|
CAUTION_LINE_7_7 |
Caution line 7x7.
|
SHIP_LINE_7_7 |
Ship line 7x7.
|
CIRCLE_FILLED_7_7 |
Circle filled 7x7.
|
SQUARE_FILLED_7_7 |
Square filled 7x7.
|
DIAMOND_FILLED_7_7 |
Diamond filled 7x7.
|
TRIANGLE_FILLED_7_7 |
Triangle filled 7x7.
|
RHOMBUS_FILLED_7_7 |
Rhombus filled 7x7.
|
HOURGLASS_FILLED_7_7 |
Hourglass filled 7x7.
|
SATELLITE_FILLED_7_7 |
Satellite filled 7x7.
|
PINE_TREE_FILLED_7_7 |
Pine filled 7x7.
|
CAUTION_FILLED_7_7 |
Caution filled 7x7.
|
SHIP_FILLED_7_7 |
Ship filled 7x7.
|
CROSS_9_9 |
Cross 9x9.
|
PLUS_9_9 |
Plus 9x9.
|
MINUS_9_9 |
Minus 9x9.
|
SLASH_9_9 |
Slash 9x9.
|
BACKSLASH_9_9 |
Backslash 9x9.
|
BAR_9_9 |
Bar 9x9.
|
STAR_9_9 |
Star 9x9.
|
Y_9_9 |
Y 9x9.
|
LIGHTNING_9_9 |
Lightning 9x9.
|
WELL_9_9 |
Well 9x9.
|
CIRCLE_LINE_9_9 |
Circle line 9x9.
|
SQUARE_LINE_9_9 |
Square line 9x9.
|
DIAMOND_LINE_9_9 |
Diamond line 9x9.
|
TRIANGLE_LINE_9_9 |
Triangle line 9x9.
|
RHOMBUS_LINE_9_9 |
Rhombus line 9x9.
|
HOURGLASS_LINE_9_9 |
Hourglass line 9x9.
|
SATELLITE_LINE_9_9 |
Satellite line 9x9.
|
PINE_TREE_LINE_9_9 |
Pine line 9x9.
|
CAUTION_LINE_9_9 |
Caution line 9x9.
|
SHIP_LINE_9_9 |
Ship line 9x9.
|
CIRCLE_FILLED_9_9 |
Circle filled 9x9.
|
SQUARE_FILLED_9_9 |
Square filled 9x9.
|
DIAMOND_FILLED_9_9 |
Diamond filled 9x9.
|
TRIANGLE_FILLED_9_9 |
Triangle filled 9x9.
|
RHOMBUS_FILLED_9_9 |
Rhombus filled 9x9.
|
HOURGLASS_FILLED_9_9 |
Hourglass filled 9x9.
|
SATELLITE_FILLED_9_9 |
Satellite filled 9x9.
|
PINE_TREE_FILLED_9_9 |
Pine filled 9x9.
|
CAUTION_FILLED_9_9 |
Caution filled 9x9.
|
SHIP_FILLED_9_9 |
Ship filled 9x9.
|
Constructor & Destructor Documentation
Member Function Documentation
static SoType SoMarker::getClassTypeId |
( |
|
) |
[static] |
Returns the type identifier for this class.
Reimplemented from SoNode.
virtual SoType SoMarker::getTypeId |
( |
|
) |
const [virtual] |
Returns the type identifier for this specific instance.
Reimplemented from SoNode.
Member Data Documentation
Defines the current marker data buffer.
Note that each pixel row of the marker must use a whole number of bytes. Padding is thus needed at the end of each row if row size is not a multiple of 8.
Defines the marker index.
if TRUE, bits are ordered within a byte from Least Significant to most significant; otherwise the first bit in each byte is the most significant one.
Defines the marker coloration mask.
Defines the size (in pixels) of the marker.
Must be greater than 1x1
if TRUE, marker bitmap is described from down to up (that is bytes[0] is the left bottom corner of the bitmap), otherwise from up to down (that is bytes[0] is the top left corner).
The documentation for this class was generated from the following file: