Functions | |
void | Define_Highlight (int count, const HC_KEY *keys, const char *style, const char *options) |
void | UnDefine_Highlight (int count, const HC_KEY *keys, const char *style, const char *options) |
void Define_Highlight | ( | int | count, |
const HC_KEY * | keys, | ||
const char * | style, | ||
const char * | options | ||
) |
Specifies a method of highlighting an item.
count | - Length of 'keys' array in parameter 2 |
keys | - An array of HC_KEYs defining an unambiguous path to the highlighted object |
style | - The named style to apply to the specified item, set by Define_Named_Style |
options | - Options to control the behavior of the function |
Highlighting an item in the HOOPS scene-graph involves having an entity/segment redrawn with a particular set of attributes. Define_Highlight allows you to apply a named style to an entity or segment, thus causing it to be drawn with that style during the next update.
When a segment-tree is highlighted, it will highlight both subsegments and included segments.
The following choices for options are recognized:
[no] segment only Indicates that the highlight only applies to the geometry in that segment, not to subsegments. The default is "no segment only"
update [=off | draw | redraw]
(Not yet implemented!) As the styles are not directly connected, we don't know what effect setting a highlight may have on the picture. currently Define_Highlight does nothing to trigger a redraw; it's assumed the program will use Control_Update. The thought here was that we would provide an easy means to incorporate the Control_Update effect into the highlight call, or have the highlight normally trigger a full redraw and provide the option as a means to suppress that when the user doesn't want it (or knows he can get by with a simpler update (for example, just draw instead of erase and redraw if the highlight is just a color change with no transparency involved)
If the 'static' model Rendering_Options is currently enabled, specifying a segment key will only result in the segment itself getting highlighted, not any subsements or included segments.
void UnDefine_Highlight | ( | int | count, |
const HC_KEY * | keys, | ||
const char * | style, | ||
const char * | options | ||
) |