library of assembled shared sources |
http://lass.cocamware.com |
#include <plane_3d_impl_detail.h>
Static Public Member Functions | |
template<typename T > | |
static void | generateCartesian (const Point3D< T > &iSupport, const Vector3D< T > &iDirU, const Vector3D< T > &iDirV, Vector3D< T > &oNormal, T &oD) |
Generate cartesian equation out of parametric equation. | |
template<typename T > | |
static void | generateDirections (const Vector3D< T > &iNormal, Vector3D< T > &oDirU, Vector3D< T > &oDirV) |
Generate directions vectors U and V of parametric equation P = S + x*U + y*V, based on the normal vector N of the cartesian equation N.P + S == 0. | |
template<typename T > | |
static void | generateReciprocal (const Vector3D< T > &iDirU, const Vector3D< T > &iDirV, Vector3D< T > &oReciprocalDirU, Vector3D< T > &oReciprocalDirV) |
generate reciprocal direction vectors Ur and Vr given directions U and V. |
Here are some common generator functions gahtered, that are used to generate some values automatically from others.
Definition at line 66 of file plane_3d_impl_detail.h.
static void lass::prim::impl::Plane3DImplDetail::generateCartesian | ( | const Point3D< T > & | iSupport, | |
const Vector3D< T > & | iDirU, | |||
const Vector3D< T > & | iDirV, | |||
Vector3D< T > & | oNormal, | |||
T & | oD | |||
) | [inline, static] |
Generate cartesian equation out of parametric equation.
Generate normal vector N and value d of cartesian equaition N.P + d == 0, given support point S and direction vectors U and V of parametric equation P = S + x*U + y*V.
Definition at line 74 of file plane_3d_impl_detail.h.
References lass::prim::cross(), lass::prim::dot(), and lass::prim::Point3D< T >::position().
Referenced by lass::prim::impl::Plane3DParametric< T, NormalizingPolicy >::getCartesian(), lass::prim::impl::Plane3DCartesian< T, NormalizingPolicy >::Plane3DCartesian(), and lass::prim::impl::Plane3DCombined< T, NormalizingPolicy >::Plane3DCombined().
static void lass::prim::impl::Plane3DImplDetail::generateDirections | ( | const Vector3D< T > & | iNormal, | |
Vector3D< T > & | oDirU, | |||
Vector3D< T > & | oDirV | |||
) | [inline, static] |
Generate directions vectors U and V of parametric equation P = S + x*U + y*V, based on the normal vector N of the cartesian equation N.P + S == 0.
Definition at line 88 of file plane_3d_impl_detail.h.
References lass::num::abs(), lass::prim::cross(), lass::prim::Vector3D< T >::x, lass::prim::Vector3D< T >::y, and lass::prim::Vector3D< T >::z.
Referenced by lass::prim::impl::Plane3DCartesian< T, NormalizingPolicy >::getDirections(), lass::prim::impl::Plane3DCombined< T, NormalizingPolicy >::Plane3DCombined(), and lass::prim::impl::Plane3DParametric< T, NormalizingPolicy >::Plane3DParametric().
static void lass::prim::impl::Plane3DImplDetail::generateReciprocal | ( | const Vector3D< T > & | iDirU, | |
const Vector3D< T > & | iDirV, | |||
Vector3D< T > & | oReciprocalDirU, | |||
Vector3D< T > & | oReciprocalDirV | |||
) | [inline, static] |
generate reciprocal direction vectors Ur and Vr given directions U and V.
Reciprocal vectors can be used to find the values x and y in A=x*U+y*V, given A, U and V. With Ur and Vr, they can be found by x=A.Ur and y=A.Vr.
Definition at line 125 of file plane_3d_impl_detail.h.
References lass::prim::dot(), and lass::prim::Vector3D< T >::squaredNorm().
Referenced by lass::prim::impl::Plane3DCombined< T, NormalizingPolicy >::flip(), lass::prim::impl::Plane3DParametric< T, NormalizingPolicy >::getReciprocals(), lass::prim::impl::Plane3DCartesian< T, NormalizingPolicy >::getReciprocals(), lass::prim::impl::Plane3DCombined< T, NormalizingPolicy >::Plane3DCombined(), and lass::prim::Parallelogram3D< T >::uv().
Generated on Mon Nov 10 14:22:14 2008 for Library of Assembled Shared Sources by 1.5.7.1 |