The script works by calling the rectangle select widget,
which in turn calls a plugin function that ray traces the viewport or uses frustum culling techniques to select objects inside the rectangle.
The function returns a list of objects found and the frustum points.
Usage:
- Left click the button to run with current options
- Right click to open the options panel.
- drag in the viewport to make a selection
- Divisions - the number of vertical and horizontal ray traces used to find objects. Values less than 8 will use frustum/bounding box based selection.
- 0 - will select items partially inside the rectangle
- 1 to 7 - will only select items completely enclosed in the rectangle
- 8 and up - will use ray tracing based selection
- Keep Active - tool will exit on RMB, otherwise will end after the selection is complete.
- Respect Locking - if an object has been marked as unselectable it will not be selected.
Notes:
- The rectangle widget is now visible. :)
- small items can be missed when using ray tracing - increase the Divisions
- high division values may run slowly
- Ctrl will add to the selection
- Shift will remove from the selection
- Ctrl + Shift will toggle the selection
- seems to run faster when the Panel side view is not active
- frustum will select small objects and items occluded by other objects
- ray tracing will only select objects in front
- ray tracing does not work with 2d encapsulated objects
- recommend desktop settings Wire highlight = "Objects"
- RMB the button included on the panel to change the rectangle color
Dev Notes
- plugin returns a semicolon separated string,
the first entry is a comma separated list of the x,y,z values that make up the points of the frustum,
the rest of the entries are the full paths to the selected nodes
- The frustum values are in order top left, top right, bottom left, bottom right with xyz values corresonding to position and direction
- Frustum technique may be slow on large scenes because of preparation overhead - untested...
- DoSelect checkbox on the widget node does not do anything
September 8, 2021
- fixed bug causing all invisible items to show
September 7, 2021
- fixed bug caused when nothing is selected
- removed extraneous render highlight node
September 6, 2021
- The rectangle widget is now visible. :), thanks to trueBlue
- Keep Active added by trueBlue
- Ctrl and Shift behaviors
- Frustum Bounding box
- Selection occurs inside plugin code
- New rsx plugin
September 22, 2020
- small bug - button id was not updated to a unique value
- changed color of widget