Screen Drawing and Screen Interaction

 
 
 

You can provide screen drawing through the UFOEditorRGBDraw and UFOEditorOverlayDraw user functions. They let the user draw OpenGL graphics in the RGB image plane and the overlay image plane respectively.

You can provide screen interaction using the following user functions; any subset of which may be combined to produce the desired interface. ufoEditorMouseDown, ufoEditorMouseUp, ufoEditorMouseDrag, and ufoEditorMousePosition are called on the corresponding mouse events and ufoEditorKeyEvent is called on a keyboard key press. The ufoEditorDraw library function causes the editor to set up context for OpenGL drawing, and calls ufoEditorOverlayDraw or ufoEditorRGBDraw. This speeds up screen drawing during screen or GUI interaction.

OpenGL projections are set up for projection of the full or master raster resolution coordinate space on the screen. For mouse interaction, the supplied X,Y position will be in full or master raster resolution pixel coordinates.

The Softimage Compositor lets you zoom the viewed raster during editing by an arbitrary factor. The ufoEditorRGBDraw and ufoEditorOverlayDraw user functions may need to take into account any raster zooming. The UFO library function ufoEditorGetPixelSize gets the X and Y pixel size of the viewed raster indicating the zoom factor.