KrisLibrary  1.0.0
Ellipsoid3D.h
1 #ifndef MATH3D_ELLIPSOID_H
2 #define MATH3D_ELLIPSOID_H
3 
4 #include "LocalCoordinates3D.h"
5 #include "Line3D.h"
6 
7 namespace Math3D {
8 
17 {
18  bool contains(const Point3D& pt) const;
19  bool intersects(const Line3D& l, Real* t1=NULL, Real* t2=NULL) const;
20  bool intersects(const Segment3D& s, Real* t1=NULL, Real* t2=NULL) const;
21  void getAABB(AABB3D& bb) const;
22 };
23 
24 std::ostream& operator << (std::ostream& out,const Ellipsoid3D& b);
25 std::istream& operator >> (std::istream& in, Ellipsoid3D& b);
26 
27 } //namespace Math3D
28 
29 #endif
30 
A 3D vector class.
Definition: math3d/primitives.h:136
Definition: LocalCoordinates3D.h:41
A 3D axis-aligned bounding box.
Definition: AABB3D.h:13
Contains all the definitions in the Math3D package.
Definition: AnyGeometry.h:13
A 3D ellipsoidThe ellipsoid is the centered unit sphere [-1,1]^3 set in the scaled local coordinate s...
Definition: Ellipsoid3D.h:16
A 3D line class.
Definition: Line3D.h:18
Definition: Segment3D.h:12