// AxisAlignedBox.h: interface for the AxisAlignedBox class. // ////////////////////////////////////////////////////////////////////// #if !defined(AFX_AXISALIGNEDBOX_H__C62FD3BF_A68B_4DCA_BA54_DBA6EE78E183__INCLUDED_) #define AFX_AXISALIGNEDBOX_H__C62FD3BF_A68B_4DCA_BA54_DBA6EE78E183__INCLUDED_ #include "point.h" // Added by ClassView #include "vector.h" // Added by ClassView #if _MSC_VER > 1000 #pragma once #endif // _MSC_VER > 1000 #include "Utils.h" namespace Geometry { class AxisAlignedBox { public: static void run_unit_tests(); double maxs(int dim); double distance_to_side_plane( const Point &p, int dim, int side ); Point projected_point( const Point &p, int dim, int side ); bool contains_point( const Point &p ); double min_distance_from(const Point &p, Point &closest_surf_pt); Vector dims; Point mins; AxisAlignedBox( Point mins, Vector dims ); AxisAlignedBox(); virtual ~AxisAlignedBox(); }; } #endif // !defined(AFX_AXISALIGNEDBOX_H__C62FD3BF_A68B_4DCA_BA54_DBA6EE78E183__INCLUDED_)