Functions | |
void | Set_Marker_Symbol (const char *symbol) |
void | QSet_Marker_Symbol (const char *segment, const char *symbol) |
void | UnSet_Marker_Symbol (void) |
void | QUnSet_Marker_Symbol (const char *segment) |
void Set_Marker_Symbol | ( | const char * | symbol | ) |
Changes the screen icon used to represent graphical "markers" in the scene.
symbol | - Special constant (see below.) |
------------------------------------------------------------------------------------- "()" or "O" An open circle, similar to `O'. Note: both a letter ("O" or "o") and a numeral ("0") will work. This is the default. "*" A star of some sort. "X" A `x' mark. "+" A `+' mark. "." A simple dot. This is often the only marker symbol that devices handle directly (others are composed and transformed in software). "(*)" or "@" A filled-in circle. "(.)" An open circle with a dot in the center. "(+)" An open circle with a + in the center. "(x)" An open circle with a 'x' in the center. "(())" or "(O)" An open circle with another circle inside. "[]" A hollow box. "[*]" A filled-in box. "[.]" A hollow box with a dot in the center. "[x]" A hollow box with a 'x' in the center. "<>" A hollow diamond. "<*>" A filled-in diamond. "<.>" A hollow diamond with a dot in the center. "<+>" A hollow diamond with a + in the center. "/\" A hollow up-pointing triangle. Note that in C string constants the \ must be doubled. "/*\" A filled-in triangle. "/.\" A hollow triangle with a dot in the center. "|>" A hollow rightward-triangle. "|*>" A filled-in rightward-triangle. "|.>" A hollow rightward-triangle with a dot in the center. "<|" A hollow leftward-triangle. "<*|" A filled-in leftward-triangle. "<.|" A hollow leftward-triangle with a dot in the center. "\/" A hollow downward-triangle. Note again that in C string constants the \ must be doubled. "\*/" A filled-in downward-triangle. "\./" A hollow downward-triangle with a dot in the center. -------------------------------------------------------------------------------------
HOOPS markers will all have the identical radius in x and y, except for the "." marker, which will be smaller.
The "." marker will be drawn "as small as possible but still clearly visible"; this size may be larger than a single pixel on some machines. If you want a true single pixel set the Marker Size to zero.
For compatibility with previous releases, the "()" and "(*)" will be returned as "o" and "@" from Show_Marker_Symbol() .
#define MARKER_OPCODE_START_FILL -1 #define MARKER_OPCODE_RESTART_FILL -2 #define MARKER_OPCODE_END_FILL -3 #define MARKER_OPCODE_ELLIPSE -4 #define MARKER_OPCODE_CIRCULAR_ARC -5 #define MARKER_OPCODE_INFINITE_LINE -6 #define MARKER_OPCODE_INFINITE_RAY -7 #define MARKER_OPCODE_START_CONTRAST_COLOR -8 #define MARKER_OPCODE_START_NORMAL_COLOR -9 #define MARKER_OPCODE_START_RGB_COLOR -10 #define MARKER_OPCODE_START_INDEXED_COLOR -11 #define MARKER_OPCODE_TERMINATE 0 #define MARKER_OPCODE_POINT 1 #define MARKER_OPCODE_LINE_2 2 #define MARKER_OPCODE_LINE_3 3 #define MARKER_OPCODE_LINE_4 4 #define MARKER_OPCODE_LINE_5 5 #define MARKER_OPCODE_LINE_6 6 #define MARKER_OPCODE_LINE_7 7 #define MARKER_OPCODE_LINE_8 8 #define MARKER_OPCODE_LINE_9 9 #define MARKER_OPCODE_LINE_10 10 #define MARKER_OPCODE_LINE_11 11 #define MARKER_OPCODE_LINE_12 12 #define MARKER_OPCODE_LINE_13 13 const char marker_pound[] = {100, 0, 0, MARKER_OPCODE_LINE_2, -38, 87, -38, -87, MARKER_OPCODE_LINE_2, 38, 87, 38, -87, MARKER_OPCODE_LINE_2, 87, -38, -87, -38, MARKER_OPCODE_LINE_2, 87, 38, -87, 38, MARKER_OPCODE_TERMINATE}; const char marker_wide_plus[] = {100, 0, 0, MARKER_OPCODE_LINE_13, 100, 25, 100, -25, 25, -25, 25, -100, -25, -100, -25, -25, -100, -25, -100, 25, -25, 25, -25, 100, 25, 100, 25, 25, 100, 25, MARKER_OPCODE_TERMINATE}; const char marker_open_arrow[] = {100, 0, 0, MARKER_OPCODE_LINE_3, 83, -100, 0, 100, -83, -100, MARKER_OPCODE_TERMINATE}; const char marker_closed_arrow[] = {100, 0, 0, MARKER_OPCODE_LINE_4, 83, -100, 0, 100, -83, -100, 83, -100, MARKER_OPCODE_TERMINATE}; const char marker_vertical_bar[] = {100, 0, 0, MARKER_OPCODE_LINE_2, 0, 87, 0, -87, MARKER_OPCODE_TERMINATE}; const char marker_half_arrow_left[] = {100, 0, 0, MARKER_OPCODE_LINE_2, 100, 100, -87, -87, MARKER_OPCODE_TERMINATE}; const char marker_half_arrow_right[] = {100, 0, 0, MARKER_OPCODE_LINE_2, -100, 100, 87, -87, MARKER_OPCODE_TERMINATE}; const char marker_wide_arrow[] = {100, 0, 0, MARKER_OPCODE_LINE_4, 0, 100, -100, -100, 100, -100, 0, 100, MARKER_OPCODE_TERMINATE}; const char marker_double_arrow[] = {100, 0, 0, MARKER_OPCODE_LINE_8, -100, 0, 0, 0, 100, -100, -100, -100, 0, 0, 100, 0, 0, 100, -100, 0, MARKER_OPCODE_TERMINATE}; const char marker_letter_y[] = {100, 0, 0, MARKER_OPCODE_LINE_2, -63, 87, 0, 0, MARKER_OPCODE_LINE_2, 0, 0, 63, 87, MARKER_OPCODE_LINE_2, 0, 0, 0, -87, MARKER_OPCODE_TERMINATE}; const char marker_letter_z[] = {100, 0, 0, MARKER_OPCODE_LINE_4, -63, 87, 63, 87, -63, -87, 63, -87, MARKER_OPCODE_TERMINATE}; HC_Define_Glyph("#", countof(marker_pound), marker_pound); HC_Define_Glyph("++", countof(marker_wide_plus), marker_wide_plus); HC_Define_Glyph("/ \\", countof(marker_open_arrow), marker_open_arrow); HC_Define_Glyph("/_\\", countof(marker_closed_arrow), marker_closed_arrow); HC_Define_Glyph("|", countof(marker_vertical_bar), marker_vertical_bar); HC_Define_Glyph("/", countof(marker_half_arrow_left), marker_half_arrow_left); HC_Define_Glyph("\\", countof(marker_half_arrow_right), marker_half_arrow_right); HC_Define_Glyph("/__\\", countof(marker_wide_arrow), marker_wide_arrow); HC_Define_Glyph("/_^_\\", countof(marker_double_arrow), marker_double_arrow); HC_Define_Glyph("y", countof(marker_letter_y), marker_letter_y); HC_Define_Glyph("z", countof(marker_letter_z), marker_letter_z);
void QSet_Marker_Symbol | ( | const char * | segment, | |
const char * | symbol | |||
) |
Similar to Set_Marker_Symbol(), but operates on a given segment rather than the currently open one.
segment | - Name of the segment(s) to be changed. | |
symbol | - Special constant (see below.) |
void UnSet_Marker_Symbol | ( | void | ) |
Removes all settings established by a previous call to Set_Marker_Symbol().
void QUnSet_Marker_Symbol | ( | const char * | segment | ) |
Removes all settings established by a previous call Set_Marker_Symbol(), but operates on a given segment rather than the currently open one.
segment | - Name of the segment(s) to be changed. |