ToyMaker Game Engine 0.0.2
ToyMaker is a game engine developed and maintained by Zoheb Shujauddin.
Loading...
Searching...
No Matches
ToyMaker::VolumeCapsule Struct Reference

Holds the parameters describing the spatial query volume of a simple three-dimensionsal capsule (or pill, or whatever you like). More...

#include <types.hpp>

Inheritance diagram for ToyMaker::VolumeCapsule:
ToyMaker::Volume< VolumeCapsule > ToyMaker::VolumeBase_

Public Member Functions

std::array< glm::vec3, 8 > getVolumeRelativeBoxCorners () const
 Gets an array containing the coordinates of the corners of the volume aligned box just containing the capsule.
bool isSensible () const
 Tests whether the values representing the capsule make sense (as opposed to being invalid or infinite.).
bool isPositiveStrict () const
 Tests whether the values representing the capsule are all strictly positive.
Public Member Functions inherited from ToyMaker::Volume< VolumeCapsule >
std::array< glm::vec3, 8 > getVolumeRelativeBoxCorners () const
 Poor man's vtable cont'd.
bool isSensible () const
 Poor man's vtable cont'd.
bool isPositiveStrict () const
 Poor man's vtable cont'd.
Public Member Functions inherited from ToyMaker::VolumeBase_
template<typename TDerived>
std::array< glm::vec3, 8 > getVolumeRelativeBoxCorners () const
 Gets corners of the object-relative bounding box that encapsulates the derived volume.
template<typename TDerived>
bool isSensible () const
 Returns whether or not the derived volume has sensible parameters (i.e., isn't infinite or invalid).
template<typename TDerived>
bool isPositiveStrict () const
 Returns whether or not the derived volume has strictly positive parameters.

Public Attributes

float mHeight {0.f}
 The height of the cylindrical section of the capsule.
float mRadius {0.f}
 The radius of the hemispheres on either end of the capsule.

Additional Inherited Members

Static Public Member Functions inherited from ToyMaker::VolumeBase_
static constexpr std::array< glm::vec3, 8 > GetCornerSignsArray ()
 Returns an array populated with axis-wise sign multipliers, where the positions on the array correspond to the corner of a box.
static std::array< glm::vec3, 8 > ComputeBoxCorners (const glm::vec3 &boxDimensions)
 Computes the model relative corners of a box, given the dimensions of the box.

Detailed Description

Holds the parameters describing the spatial query volume of a simple three-dimensionsal capsule (or pill, or whatever you like).

Member Function Documentation

◆ getVolumeRelativeBoxCorners()

std::array< glm::vec3, 8 > ToyMaker::VolumeCapsule::getVolumeRelativeBoxCorners ( ) const
inline

Gets an array containing the coordinates of the corners of the volume aligned box just containing the capsule.

Returns
std::array<glm::vec3, 8> An array of box corner coordinates.

◆ isPositiveStrict()

bool ToyMaker::VolumeCapsule::isPositiveStrict ( ) const
inline

Tests whether the values representing the capsule are all strictly positive.

Return values
trueThe capsule parameters are strictly positive;
falseThe capsule's parameters are not strictly positive

◆ isSensible()

bool ToyMaker::VolumeCapsule::isSensible ( ) const
inline

Tests whether the values representing the capsule make sense (as opposed to being invalid or infinite.).

Return values
trueThe capsule parameters are sensible;
falseThe capsule parameters are not sensible;

The documentation for this struct was generated from the following file:
  • ToyMaker_Main/include/toymaker/engine/spatial_query/types.hpp