Library of Assembled Shared Sources
lass::prim::Point3DH< T > Struct Template Reference

homogenous 3D Point More...

#include <point_3dh.h>

Inheritance diagram for lass::prim::Point3DH< T >:

Public Member Functions

TConstReference at (signed iIndex) const
 Wrap index around range.
 
TReference at (signed iIndex)
 Wrap index around range.
 
const Point3DH< T > & operator+ () const
 A weird way to get back the same object.
 
bool isZero () const
 Return true if point is origin (0, 0, 0, w).
 
bool isNaN () const
 Return true if at least one of the components is NaN.
 
bool isInfinite () const
 Return true if point is at infinite distance of origin.
 
bool isValid () const
 Return true if point is valid.
 
const TParam weight () const
 Return weight of point.
 
const TPoint affine () const
 Return rescaled version of point with weight = 1.
 
void homogenize ()
 Rescale point so that weight is 1.
 

Detailed Description

template<typename T>
struct lass::prim::Point3DH< T >

homogenous 3D Point

Author
BdG
Date
2003

Definition at line 71 of file point_3dh.h.

Member Function Documentation

◆ isZero()

template<typename T>
bool lass::prim::Point3DH< T >::isZero ( ) const

Return true if point is origin (0, 0, 0, w).

w may be 0 but doesn't has to be.

Definition at line 229 of file point_3dh.inl.

References isZero().

Referenced by isZero().

◆ isInfinite()

template<typename T>
bool lass::prim::Point3DH< T >::isInfinite ( ) const
inline

Return true if point is at infinite distance of origin.

test if w == 0.

Definition at line 249 of file point_3dh.inl.

References isInfinite().

Referenced by isInfinite().

◆ isValid()

template<typename T>
bool lass::prim::Point3DH< T >::isValid ( ) const

Return true if point is valid.

test if point != (0, 0, 0, 0)

Definition at line 259 of file point_3dh.inl.

References isValid().

Referenced by isValid().

◆ weight()

template<typename T>
const Point3DH< T >::TParam lass::prim::Point3DH< T >::weight ( ) const
inline

Return weight of point.

weight = w.

Definition at line 271 of file point_3dh.inl.

References weight().

Referenced by weight().

◆ affine()

template<typename T>
const Point3D< T > lass::prim::Point3DH< T >::affine ( ) const

Return rescaled version of point with weight = 1.

Does not influence original poitn.

Definition at line 282 of file point_3dh.inl.

References affine(), and homogenize().

Referenced by affine(), and lass::prim::Aabb3D< T, MinMaxPolicy >::boundingSphere().


The documentation for this struct was generated from the following files: