Skip to main content

ModelAabbComponent Class Template

Component that stores the canonical Axis-Aligned Bounding Box (AABB) of a model. More...

Declaration

template <typename THandle> class helios::engine::rendering::model::components::ModelAabbComponent<THandle> { ... }

Public Constructors Index

template <typename THandle>
ModelAabbComponent ()=default

Default constructor. More...

template <typename THandle>
ModelAabbComponent (const ModelAabbComponent &other)
template <typename THandle>
ModelAabbComponent (ModelAabbComponent &&) noexcept=default

Public Operators Index

template <typename THandle>
ModelAabbComponent &operator= (const ModelAabbComponent &)=default
template <typename THandle>
ModelAabbComponent &operator= (ModelAabbComponent &&) noexcept=default

Public Member Functions Index

template <typename THandle>
voidsetAabb (const helios::math::aabbf &aabb)

Sets the AABB for this component. More...

template <typename THandle>
const helios::math::aabbf &aabb () const noexcept

Retrieves the stored AABB. More...

Private Member Attributes Index

template <typename THandle>
helios::math::aabbfaabb_ {}

The stored AABB. More...

Description

Component that stores the canonical Axis-Aligned Bounding Box (AABB) of a model.

This component is used to associate spatial bounds with an entity, typically derived from a 3D model or mesh. It is essential for culling, collision detection, and other spatial queries.

Definition at line 24 of file ModelAabbComponent.ixx.

Public Constructors

ModelAabbComponent()

template <typename THandle>
helios::engine::rendering::model::components::ModelAabbComponent< THandle >::ModelAabbComponent ()
default

Default constructor.

Definition at line 36 of file ModelAabbComponent.ixx.

ModelAabbComponent()

template <typename THandle>
helios::engine::rendering::model::components::ModelAabbComponent< THandle >::ModelAabbComponent (const ModelAabbComponent & other)
inline

Definition at line 38 of file ModelAabbComponent.ixx.

39 aabb_(other.aabb_) {}

ModelAabbComponent()

template <typename THandle>
helios::engine::rendering::model::components::ModelAabbComponent< THandle >::ModelAabbComponent (ModelAabbComponent &&)
noexcept default

Definition at line 42 of file ModelAabbComponent.ixx.

Public Operators

operator=()

template <typename THandle>
ModelAabbComponent & helios::engine::rendering::model::components::ModelAabbComponent< THandle >::operator= (const ModelAabbComponent &)
default

Definition at line 41 of file ModelAabbComponent.ixx.

operator=()

template <typename THandle>
ModelAabbComponent & helios::engine::rendering::model::components::ModelAabbComponent< THandle >::operator= (ModelAabbComponent &&)
noexcept default

Definition at line 43 of file ModelAabbComponent.ixx.

Public Member Functions

aabb()

template <typename THandle>
const helios::math::aabbf & helios::engine::rendering::model::components::ModelAabbComponent< THandle >::aabb ()
inline noexcept

Retrieves the stored AABB.

Returns

Constant reference to the AABB.

Definition at line 60 of file ModelAabbComponent.ixx.

60 [[nodiscard]] const helios::math::aabbf& aabb() const noexcept {
61 return aabb_;
62 }

Referenced by helios::engine::rendering::model::components::ModelAabbComponent< THandle >::setAabb.

setAabb()

template <typename THandle>
void helios::engine::rendering::model::components::ModelAabbComponent< THandle >::setAabb (const helios::math::aabbf & aabb)
inline

Sets the AABB for this component.

Parameters
aabb

The new AABB to store.

Definition at line 50 of file ModelAabbComponent.ixx.

50 void setAabb(const helios::math::aabbf& aabb) {
51 aabb_ = aabb;
52 }

Reference helios::engine::rendering::model::components::ModelAabbComponent< THandle >::aabb.

Private Member Attributes

aabb_

template <typename THandle>
helios::math::aabbf helios::engine::rendering::model::components::ModelAabbComponent< THandle >::aabb_ {}

The stored AABB.

Definition at line 29 of file ModelAabbComponent.ixx.

29 helios::math::aabbf aabb_{};

The documentation for this class was generated from the following file:


Generated via doxygen2docusaurus 2.0.0 by Doxygen 1.9.8.