Foreground camera
Conceptual Selector is created in a separate render scene that has its own geometry, lighting and list of materials. The scene is connected with the foreground camera, so it is drawn in front of drawing objects. Foreground camera setе зависимы от основной сцены и соответствуют моде "Draft + foreground wireframe" mode. Foreground camera is the first camera on the 'front camera list'
RedSDK scene composition.
Drawing in front of the main scene provides visibility and accessibility of all selector handles to the user, regardless of selected objects' positions.
Selector is in front of drawing objects.
Scaling
User can sent the minimum and maximum size of the Conceptual Selector on the screen in pixels. The benefit of an adjustable scale range over fixed scale is in giving users the capability to use a single movement (rotating the mouse wheel) to zoom in and get access to additional control handles that are grouped into sets by type of transformation (move, scale, rotate).
A part of selector with the size of 200 pixels and 500 pixels
In fact, saying "selector size" is not quite correct. Selector model contains several sets of graphics that are drawn depending on the selector state and can have different sizes; in addition, there are auxiliary graphics that are not drawn at all and whose size does not matter. So there is the following assumption: Screen size (min/max) parameters define the screen size of a unit cube (1 inch) from the TCW profile of selector.
Size of the visible part of Normal profile (UniversalCtrl.tcw)
The idea is that developer of a TCW profile will fit the size of visible selector geometry into the unit cube.
Dependence of selector size on window zoom within the defined limits is practically linear, outside of the limits – a constant (has resemblance to hysteresis).
Dependence of selector size on window zoom
Zoom in dynamic. Animated GIF. (Animation only in HTML version)
Only users can tell how convenient this scaling algorithm is. It is possible that scaling parameters, default values and the range will be different, for example, for desktop and [desktop] или touch screen.
Multi window mode, active window
Conceptual Selector is drawn in its entirety in the active window. In other windows (if they are open) – only parts of it are drawn. This was done to speed up drawing, as well as single out the active window.
Active control handles (that respond to mouse movements) are drawn only in the active window. Those that are not interactive (e.g. coordinate axes) are drawn in all windows.
Drawing in the active (left) and inactive windows.
User can control the drawing mode in multi window mode, by specifying 'yes or 'no' for handle_multi_view variable for the specific handle in the TCW profile.
'handle_multi_view' variable