Runtime for frustum cull filter. More...
#include <kanzi/core.ui/graphics3d/frustum_cull_filter_runtime.hpp>
Public Types | |
enum | FrustumPlaneIndex { FrustumPlaneNear, FrustumPlaneFar, FrustumPlaneTop, FrustumPlaneBottom, FrustumPlaneLeft, FrustumPlaneRight, FrustumPlaneCount } |
Frustum plane indices. More... | |
Public Member Functions | |
CameraSharedPtr | getCamera () const |
Gets the filtering camera. More... | |
Matrix4x4 | getProjectionMatrix () const |
Gets the projection matrix used. More... | |
void | setProjectionMatrix (Matrix4x4 matrix) |
Sets the projection matrix. More... | |
Public Member Functions inherited from kanzi::FilterObjectSourceRuntime | |
bool | filterNode (Node &node) |
Runs a filter on the given node. More... | |
Public Member Functions inherited from kanzi::ObjectSourceRuntime | |
void | filter (NodeList &outputNodes) |
Runs the filter on a given node. More... | |
NodeListSharedPtr | getInputNodeList () |
Gets the input node list for this particular object source. More... | |
ObjectSourceRuntimeSharedPtr | getParentRuntime () const |
Gets the parent runtime. More... | |
NodeListSharedPtr | getRootNodeList () |
Gets the root node list, parents included. More... | |
bool | isDirty () |
Tells if the node filter considers itself dirty and needs re-executing. More... | |
bool | matches (NodeListSharedPtr nodeList, ObjectSourceSharedPtr filter) |
Tells if this filter runtime matches the given node list and filter. More... | |
void | setCamera (CameraSharedPtr camera) |
Sets the camera for this object source runtime. More... | |
void | update (NodeList &nodes) |
Perform implementation-dependent per-frame update for internal data of the filter. More... | |
virtual | ~ObjectSourceRuntime ()=default |
Destructor. More... | |
Static Public Member Functions | |
static FrustumCullFilterRuntimeSharedPtr | create (NodeListSharedPtr nodeList, ObjectSourceSharedPtr filter) |
Creates a contains property node filter. More... | |
Protected Attributes | |
CameraWeakPtr | m_camera |
Camera to filter with. More... | |
Plane | m_frustumPlanes [FrustumPlaneCount] |
Frustum planes. More... | |
Matrix4x4 | m_projectionMatrix |
Camera projection matrix. More... | |
bool | m_valid |
Indicates if the culling data valid and usable for filtering. More... | |
Protected Attributes inherited from kanzi::FilterObjectSourceRuntime | |
bool | m_isExclusive |
Exclusivity flag, copied from the filter object source. More... | |
Protected Attributes inherited from kanzi::ObjectSourceRuntime | |
NodeListWeakPtr | m_inputNodes |
Input node list. More... | |
ObjectSourceWeakPtr | m_objectSource |
Parent object source. More... | |
NodeListSharedPtr | m_parentNodeList |
Node list that is the result of the parent runtime being executed. More... | |
ObjectSourceRuntimeSharedPtr | m_parentRuntime |
Runtime for the object source chain. More... | |
Runtime for frustum cull filter.
Frustum plane indices.
|
inlineexplicitprotected |
Constructor.
nodeList | Node list to filter. |
filter | Parent filter. |
|
static |
Creates a contains property node filter.
nodeList | Node list to filter. |
filter | Parent filter. |
|
inline |
Gets the filtering camera.
|
inline |
Gets the projection matrix used.
|
inline |
Sets the projection matrix.
matrix | Projection matrix to use. |
|
overrideprotectedvirtual |
FilterObjectSourceRuntime::filterNodeOverride() implementation.
Reimplemented from kanzi::FilterObjectSourceRuntime.
|
overrideprotectedvirtual |
ObjectSourceRuntime::filterOverride() implementation.
Reimplemented from kanzi::FilterObjectSourceRuntime.
|
overrideprotectedvirtual |
ObjectSourceRuntime::isDirtyOverride() implementation.
Reimplemented from kanzi::ObjectSourceRuntime.
|
overrideprotectedvirtual |
ObjectSourceRuntime::setCameraOverride() implementation.
Reimplemented from kanzi::ObjectSourceRuntime.
|
protected |
Camera to filter with.
|
protected |
Frustum planes.
|
protected |
Indicates if the culling data valid and usable for filtering.