Om  1.0.0
A universal framework for multimedia simulation
Public Member Functions | Public Attributes | List of all members
om::math::SIMDPlane3D< T, 4 > Class Template Reference

A specialization for the SIMDPlane3D class that has a SIMD width of 4. More...

#include <omSIMDPlane3D.h>

Public Member Functions

 SIMDPlane3D (const Plane3D< T > &plane)
 Create a SIMD plane with N copies of the specified plane for a SIMD width of N. More...
 
 SIMDPlane3D (const Plane3D< T > &plane1, const Plane3D< T > &plane2, const Plane3D< T > &plane3, const Plane3D< T > &plane4)
 Create a SIMD plane with the 4 planes it contains equal to the specified planes. More...
 
SIMDScalar< T, 4 > getDistanceTo (const SIMDVector3D< T, 4 > &point) const
 Get the perpendicular distance from the specified point to the plane. More...
 
SIMDScalar< T, 4 > getSignedDistanceTo (const SIMDVector3D< T, 4 > &point) const
 Get the perpendicular distance from the specified point to the plane. More...
 

Public Attributes

SIMDVector3D< T, 4 > normal
 A SIMD 3D vector indicating the normals of the planes. More...
 
SIMDScalar< T, 4 > offset
 A SIMD scalar indicating the distance that the planes are offset from the origin. More...
 

Detailed Description

template<typename T>
class om::math::SIMDPlane3D< T, 4 >

A specialization for the SIMDPlane3D class that has a SIMD width of 4.

This class is used to store and operate on a set of 4 3D planes in a SIMD fashion. The planes are stored in a structure-of-arrays format that accelerates SIMD operations. Each plane is specified by a normal and origin offset.

Constructor & Destructor Documentation

template<typename T >
om::math::SIMDPlane3D< T, 4 >::SIMDPlane3D ( const Plane3D< T > &  plane)
inline

Create a SIMD plane with N copies of the specified plane for a SIMD width of N.

template<typename T >
om::math::SIMDPlane3D< T, 4 >::SIMDPlane3D ( const Plane3D< T > &  plane1,
const Plane3D< T > &  plane2,
const Plane3D< T > &  plane3,
const Plane3D< T > &  plane4 
)
inline

Create a SIMD plane with the 4 planes it contains equal to the specified planes.

Member Function Documentation

template<typename T >
SIMDScalar<T,4> om::math::SIMDPlane3D< T, 4 >::getDistanceTo ( const SIMDVector3D< T, 4 > &  point) const
inline

Get the perpendicular distance from the specified point to the plane.

template<typename T >
SIMDScalar<T,4> om::math::SIMDPlane3D< T, 4 >::getSignedDistanceTo ( const SIMDVector3D< T, 4 > &  point) const
inline

Get the perpendicular distance from the specified point to the plane.

Member Data Documentation

template<typename T >
SIMDVector3D<T,4> om::math::SIMDPlane3D< T, 4 >::normal

A SIMD 3D vector indicating the normals of the planes.

template<typename T >
SIMDScalar<T,4> om::math::SIMDPlane3D< T, 4 >::offset

A SIMD scalar indicating the distance that the planes are offset from the origin.


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