|
| virtual void | addShape (const ShapeRef &s) const noexcept=0 |
| | Adds a Shape.
|
| |
| virtual void | addShapes (const ShapeList &shapes)=0 |
| | Removes given shape with Shape#destroy(GL2ES2, RegionRenderer), if contained.
|
| |
| virtual const AABBox3f & | bounds (const PMVMat4f &pmv, const Shape &shape) const noexcept=0 |
| | Returns AABBox dimension of given Shape from this container's perspective, i.e.
|
| |
| virtual bool | contains (const Shape &s)=0 |
| |
| virtual Shape & | getShapeByID (int id) const noexcept=0 |
| |
| virtual Shape & | getShapeByIdx (int id) const noexcept=0 |
| |
| virtual Shape & | getShapeByName (const std::string &name) const noexcept=0 |
| |
| virtual bool | isCullingEnabled () const noexcept=0 |
| | Return whether Project-Modelview (PMv) frustum culling or Group's Modelview (Mv) frustum clipping is enabled for this container.
|
| |
| virtual bool | isOutside (const PMVMat4f &, const Shape &shape) const noexcept=0 |
| | Returns whether the given Shape is completely outside of this container.
|
| |
| virtual bool | isOutside2 (const Mat4f &mvCont, const Shape &shape, const PMVMat4f &) const noexcept=0 |
| | Returns whether the given Shape is completely outside of this container.
|
| |
| virtual bool | isPMvCullingEnabled () const noexcept=0 |
| | Return whether Project-Modelview (PMv) frustum culling is enabled for this container.
|
| |
| virtual void | removeAllShapes (RenderContext &rc, RegionRenderer &renderer)=0 |
| | Removes all contained shapes with Shape#destroy(GL2ES2, RegionRenderer).
|
| |
| virtual ShapeRef | removeShape (const ShapeRef &s) const noexcept=0 |
| | Removes given shape, w/o Shape#destroy(GL2ES2, RegionRenderer).
|
| |
| virtual void | removeShapes (const ShapeList &shapes)=0 |
| | Removes all given shapes, w/o Shape#destroy(GL2ES2, RegionRenderer).
|
| |
| virtual void | removeShapes (RenderContext &rc, RegionRenderer &renderer, const ShapeList &shapes)=0 |
| | Removes all given shapes with Shape#destroy(GL2ES2, RegionRenderer).
|
| |
| virtual ShapeList & | renderedShapes () const noexcept=0 |
| | Returns added shapes which are rendered and sorted by z-axis in ascending order toward z-near.
|
| |
| virtual void | setPMvCullingEnabled (bool v) noexcept=0 |
| | Enable or disable Project-Modelview (PMv) frustum culling per Shape for this container.
|
| |
| virtual size_t | shapeCount () const noexcept=0 |
| | Returns number of Shapes, see getShapes().
|
| |
| virtual const ShapeList & | shapes () const noexcept=0 |
| | Returns added Shapes.
|
| |
Container interface of UI Shapes.
- See also
- Scene
-
Shape
Definition at line 59 of file Container.hpp.
| virtual ShapeList & gamp::graph::ui::Container::renderedShapes |
( |
| ) |
const |
|
pure virtualnoexcept |
Returns added shapes which are rendered and sorted by z-axis in ascending order toward z-near.
The rendered shapes are visible and not deemed outside of this container due to culling.
Only rendered shapes are considered for picking/activation.
The returned list is data-race free, i.e. won't be mutated by the rendering thread as it gets completely replace at each rendering loop using a local volatile reference.
Only when disposing the container, the list gets cleared, hence {@Link List#size()} shall be used in the loop.
- See also
- #addShape(Shape)
-
isCullingEnabled()
-
Shape#isVisible()
-
#isOutside(PMVMatrix4f, Shape)