50#ifndef LASS_GUARDIAN_OF_INCLUSION_PRIM_PARALLELOGRAM_3D_H
51#define LASS_GUARDIAN_OF_INCLUSION_PRIM_PARALLELOGRAM_3D_H
71 typedef typename TPoint::TVector TVector;
72 typedef Point2D<T> TUV;
75 typedef typename TPoint::TValue TValue;
76 typedef typename TPoint::TParam TParam;
77 typedef typename TPoint::TReference TReference;
78 typedef typename TPoint::TConstReference TConstReference;
79 typedef typename TPoint::TNumTraits TNumTraits;
81 enum { dimension = TPoint::dimension };
83 template <
typename U>
struct Rebind
89 Parallelogram3D(
const TPoint& support,
const TVector& sizeX,
const TVector& sizeY);
91 const TPoint& support()
const;
94 const TVector& sizeU()
const;
97 const TVector& sizeV()
const;
100 const TPlane plane()
const;
106 const TPoint point(TParam u, TParam v)
const;
107 const TPoint point(
const TUV& uv)
const;
108 const TUV uv(
const TPoint& point)
const;
124std::ostream& operator<<(std::ostream& stream,
const Parallelogram3D<T>& parallelogram);
134#ifdef LASS_GUARDIAN_OF_INCLUSION_PRIM_AABB_3D_H
138#ifdef LASS_GUARDIAN_OF_INCLUSION_PRIM_RAY_3D_H
Output stream for writing a selection of geometric primitives to XML files.
A very simple 3D polygon :)
const TValue area() const
return area of the polygons surface.
Parallelogram3D()
constructs an empty parallelogram.
bool isReflex(int indexOfVertex) const
return true if inner angle of vertex is reflex (is > 180 degrees).
Parallelogram3D(const TPoint &support, const TVector &sizeX, const TVector &sizeY)
Constructs a parallelogram with a support and two sizes.
bool isConvex() const
return true if polygon is convex, false if not.
bool isSimple() const
return true if polygon is simple, false if not.
const TValue perimeter() const
return sum of the lengths of all edges
const TValue squaredArea() const
returns squared area of parallelogram to avoid the square root.
#define LASS_SIMD_ALIGN
if LASS_SIMD_ALIGNMENT is set, use LASS_SIMD_ALIGN to align some structures on SIMD alignment boundar...
set of geometrical primitives
Library for Assembled Shared Sources.