Alphabetical Class Index  Class Hierarchy   File Members   Compound Members   File List  

HImUtility Class Reference

#include <HImUtility.h>

Static Public Member Functions

static void draw_annotation_lines (HIC_Rendition const *nr, HIC_Polyline const *poly)
 
static void draw_dc_polyline_infront (HIC_Rendition const *rendition, int count, HIC_DC_Point const *geo3)
 
static void draw_device_independent_line_weights (HIC_Rendition const *rendition, int count, HIC_DC_Point const *geo3)
 
static void draw_gradiated_window_background (HIC_Rendition const *rendition, HIC_Int_Rectangle const *extent)
 
static void draw_segment_in_background (HIC_Rendition const *nr, HIC_DC_Point const *points, HIC_RGBA const *colors, HIC_Plane const *planes, HIC_Parameter const *params, HIC_Integer32 param_width, HIC_Parameter_Flags param_flags)
 
static void drawTextInfront (HIC_Rendition const *rendition, HIC_Text_Info const *text_info)
 
static void RegisterCallbacks ()
 
static void set_clip_rectangle (HIC_Rendition const *nr, HIC_Segment_Info const *si)
 
static void suppress_3d_geometry (HIC_Rendition const *rendition, HIC_Geometry const *geo3)
 
static void visible_hlr_polyline (HIC_Rendition const *rendition, int count, HIC_DC_Point const *geo3)
 

Detailed Description

HImUtility contains a number of widely used IM callbacks. Callbacks are attributes of a segment and can be set in one of two ways. The first is by calling the 3dGS function HC_Set_Callback("callback_point = callbback_name") or the by using the MVO method HImSetCallback("callback_point", "callback_name"). If you are using MVO then it is recommended that you use the HImSetCallback approach. The callback name and callback point are both documented for each callback below.

Member Function Documentation

static void HImUtility::draw_annotation_lines ( HIC_Rendition const *  nr,
HIC_Polyline const *  poly 
)
static

This callback only draws the lines in a segment if the visibility of text is on. Developers use it to easily turn off the visibility of leaders of annotation data. The callback is called "HImUtility_draw_annotation_lines" and the callback point is "draw 3d polyline".

static void HImUtility::draw_dc_polyline_infront ( HIC_Rendition const *  rendition,
int  count,
HIC_DC_Point const *  geo3 
)
static

This callback draws the lines in the front 1% of the scene forcing the lines to appear on top of everything else in the scene. The callback is called "HImUtility_draw_dc_polyline_infront" and the callback point is "draw dc polyline".

static void HImUtility::draw_device_independent_line_weights ( HIC_Rendition const *  rendition,
int  count,
HIC_DC_Point const *  geo3 
)
static

This callback draws the lines and edges with device independent weights. This is particularily useful in cases where you are using line/edge weights greater than 1 and want WYSIWYG printing. The callback is called "HImUtility_device_independent_polyline_weight" and the callback point is "draw dc polyline".

static void HImUtility::draw_gradiated_window_background ( HIC_Rendition const *  rendition,
HIC_Int_Rectangle const *  extent 
)
static

This callback draws the window background in a gradiated fashion. It is no longer needed as this window coloring scheme is supported in 3dGS but is included for backward compatibility reasons. The callback is called "HImUtility_draw_gradiated_window_background" and the callback point is "draw window".

static void HImUtility::draw_segment_in_background ( HIC_Rendition const *  nr,
HIC_DC_Point const *  points,
HIC_RGBA const *  colors,
HIC_Plane const *  planes,
HIC_Parameter const *  params,
HIC_Integer32  param_width,
HIC_Parameter_Flags  param_flags 
)
static

This callback draws all the faces of the shells in the segment in the back 10% of the scene forcing them to appear behind everything else in the scene. The callback is called "HImUtility_draw_segment_in_background" and the callback point is "draw dc reshaded triangle".

static void HImUtility::drawTextInfront ( HIC_Rendition const *  rendition,
HIC_Text_Info const *  text_info 
)
static

This callback draws the text in the front 1% of the scene forcing the text to appear on top of everything else in the scene. The callback is called "HImUtility_draw_text_infront" and the callback point is "draw text".

static void HImUtility::RegisterCallbacks ( )
static

This method registers all the callbacks in this class with 3dGS and the MVO IM Manager

static void HImUtility::set_clip_rectangle ( HIC_Rendition const *  nr,
HIC_Segment_Info const *  si 
)
static

This callback sets a rectilinear clip region on the segment. When you set this callback, you must set the user options of "left=i, right=j, top=k, bottom=l" on the segment that you want the clip performed. I, j, k and l are floating point numbers which define the world space borders of the clip region. The callback is called "HImUtility_set_clip_rectangle" and the callback point is "draw segment tree".

static void HImUtility::suppress_3d_geometry ( HIC_Rendition const *  rendition,
HIC_Geometry const *  geo3 
)
static

This callback does not draw anything and consequently causes no geometry to be drawn for the segment it is set on. The callback is called "HImUtility_suppress_3d_geometry" and the callback point is "draw 3d geometry".

static void HImUtility::visible_hlr_polyline ( HIC_Rendition const *  rendition,
int  count,
HIC_DC_Point const *  geo3 
)
static

This callback was written to show users how to collect the output from a hidden line rendering of a scene.


The documentation for this class was generated from the following file: