wx_BGI_Graphics
Classic BGI-compatible graphics API with modern OpenGL extension API
Loading...
Searching...
No Matches
Functions
wx_bgi_overlay.h File Reference

Visual Aids Overlay API for wx_bgi_graphics. More...

#include "bgi_types.h"
Include dependency graph for wx_bgi_overlay.h:

Go to the source code of this file.

Functions

BGI_API void BGI_CALL wxbgi_overlay_concentric_disable (const char *camName)
 Disable the concentric circles overlay for a camera.
 
BGI_API void BGI_CALL wxbgi_overlay_concentric_enable (const char *camName)
 Enable the concentric circles overlay for a camera.
 
BGI_API int BGI_CALL wxbgi_overlay_concentric_is_enabled (const char *camName)
 Return 1 if the concentric circles overlay is enabled for a camera.
 
BGI_API void BGI_CALL wxbgi_overlay_concentric_set_count (const char *camName, int count)
 Set the number of concentric circles.
 
BGI_API void BGI_CALL wxbgi_overlay_concentric_set_radii (const char *camName, float innerRadius, float outerRadius)
 Set the inner and outer world-unit radii for the circles.
 
BGI_API void BGI_CALL wxbgi_overlay_cursor_disable (const char *camName)
 Disable the selection cursor square overlay for a camera.
 
BGI_API void BGI_CALL wxbgi_overlay_cursor_enable (const char *camName)
 Enable the selection cursor square overlay for a camera.
 
BGI_API int BGI_CALL wxbgi_overlay_cursor_is_enabled (const char *camName)
 Return 1 if the selection cursor is enabled for a camera.
 
BGI_API void BGI_CALL wxbgi_overlay_cursor_set_color (const char *camName, int colorScheme)
 Set the colour scheme of the selection cursor.
 
BGI_API void BGI_CALL wxbgi_overlay_cursor_set_size (const char *camName, int sizePx)
 Set the side length of the selection cursor square.
 
BGI_API void BGI_CALL wxbgi_overlay_grid_disable (void)
 Disable the reference grid overlay.
 
BGI_API void BGI_CALL wxbgi_overlay_grid_enable (void)
 Enable the reference grid overlay.
 
BGI_API int BGI_CALL wxbgi_overlay_grid_is_enabled (void)
 Return 1 if the grid overlay is enabled, 0 otherwise.
 
BGI_API void BGI_CALL wxbgi_overlay_grid_set_colors (int xAxisColor, int yAxisColor, int gridColor)
 Set the three colours used by the grid overlay.
 
BGI_API void BGI_CALL wxbgi_overlay_grid_set_extent (int halfExtentInLines)
 Set the grid extent.
 
BGI_API void BGI_CALL wxbgi_overlay_grid_set_spacing (float worldUnits)
 Set the spacing between adjacent grid lines.
 
BGI_API void BGI_CALL wxbgi_overlay_grid_set_ucs (const char *ucsName)
 Bind the grid to a specific UCS.
 
BGI_API void BGI_CALL wxbgi_overlay_ucs_axes_disable (void)
 Disable the UCS axes overlay.
 
BGI_API void BGI_CALL wxbgi_overlay_ucs_axes_enable (void)
 Enable the UCS axes overlay.
 
BGI_API int BGI_CALL wxbgi_overlay_ucs_axes_is_enabled (void)
 Return 1 if the UCS axes overlay is enabled, 0 otherwise.
 
BGI_API void BGI_CALL wxbgi_overlay_ucs_axes_set_length (float worldUnits)
 Set the length of each axis arm.
 
BGI_API void BGI_CALL wxbgi_overlay_ucs_axes_show_active (int show)
 Show or hide the active UCS axes (at the active UCS origin).
 
BGI_API void BGI_CALL wxbgi_overlay_ucs_axes_show_world (int show)
 Show or hide the world UCS axes (at the world origin).
 
BGI_API void BGI_CALL wxbgi_selection_clear (void)
 Clear all currently selected objects (does not delete them from the DDS).
 
BGI_API int BGI_CALL wxbgi_selection_count (void)
 Return the number of currently selected DDS objects.
 
BGI_API void BGI_CALL wxbgi_selection_delete_selected (void)
 Delete all currently selected objects from the DDS and clear the selection.
 
BGI_API const char *BGI_CALL wxbgi_selection_get_id (int index)
 Return the ID string of the index-th selected object (0-based).
 
BGI_API void BGI_CALL wxbgi_selection_set_flash_scheme (int scheme)
 Set the selection flash colour scheme.
 
BGI_API void BGI_CALL wxbgi_selection_set_pick_radius (int pixels)
 Set the screen-pixel pick radius for object selection.
 

Detailed Description

Visual Aids Overlay API for wx_bgi_graphics.

Visual overlays are non-DDS rendering aids drawn fresh every frame. They are not stored in the scene graph, cannot be selected or serialised, and default to disabled so that existing programs see no change.

All overlays are drawn automatically as part of wxbgi_render_dds(), so no extra call is needed — just enable the desired overlay and call wxbgi_render_dds() as usual.


Overlay types

1 — Reference Grid

Drawn in the XY plane of the active (or a named) UCS, projected in 3-D through every camera viewport. Visible simultaneously in all panels when enabled. BGI viewport clipping applies.

2 — UCS Axes

Labelled X/Y/Z axis arms drawn at the world UCS origin and/or the active UCS origin, projected through every camera viewport.

3 — Concentric Circles + Crosshair (per-camera)

World-space concentric circles centred at the camera's pan/target centre. Because the radii are in world units, zooming in spreads the circles apart giving a real sense of zoom scale. The crosshair rotates with the camera for 2-D cameras; it is fixed for 3-D cameras.

4 — Selection Cursor Square (per-camera)

A small square (2-16 px) that follows the mouse within the camera's viewport. The border colour alternates every 2 seconds between the light and dark shade of the chosen colour scheme (blue / green / red). Drawn in the OpenGL pass on top of all scene content.

Note
Thread safety: all functions acquire the internal library mutex.