QCAD
Open Source 2D CAD
Loading...
Searching...
No Matches
ON_BoundingBox Class Reference

#include <opennurbs_bounding_box.h>

Public Member Functions

double Area () const
 
ON_3dPoint Center () const
 
ON_3dPoint ClosestPoint (const ON_3dPoint &test_point) const
 
ON_3dPoint Corner (int, int, int) const
 
void Destroy ()
 
ON_3dVector Diagonal () const
 
ON_3dPoint FarPoint (const ON_3dPoint &) const
 
bool GetClosestPoint (const ON_BoundingBox &, ON_3dPoint &, ON_3dPoint &) const
 
int GetClosestPoint (const ON_Line &, ON_3dPoint &, double *, double *) const
 
bool GetCorners (ON_3dPoint box_corners[8]) const
 
bool GetCorners (ON_3dPointArray &box_corners) const
 
bool GetFarPoint (const ON_BoundingBox &, ON_3dPoint &, ON_3dPoint &) const
 
bool Includes (const ON_BoundingBox &other, bool bProperSubSet=false) const
 
bool Intersection (const ON_BoundingBox &bbox_A, const ON_BoundingBox &bbox_B)
 
bool Intersection (const ON_BoundingBox &other_bbox)
 
bool Intersection (const ON_Line &, double *=NULL, double *=NULL) const
 
int IsDegenerate (double tolerance=ON_UNSET_VALUE) const
 
bool IsDisjoint (const ON_BoundingBox &other_bbox) const
 
bool IsFartherThan (double d, const ON_3dPoint &P) const
 
bool IsFartherThan (double d, const ON_BoundingBox &other) const
 
bool IsFartherThan (double d, const ON_Line &line) const
 
bool IsFartherThan (double d, const ON_Plane &plane) const
 
bool IsFartherThan (double d, const ON_PlaneEquation &plane_equation) const
 
bool IsPointIn (const ON_3dPoint &test_point, int bStrictlyIn=false) const
 
bool IsValid () const
 
int IsVisible (const ON_Xform &bbox2c) const
 
ON_3dPoint Max () const
 
double MaximumDistanceTo (const ON_3dPoint &P) const
 
double MaximumDistanceTo (const ON_BoundingBox &other) const
 
double MaximumDistanceTo (const ON_Line &line) const
 
double MaximumDistanceTo (const ON_Plane &plane) const
 
double MaximumDistanceTo (const ON_PlaneEquation &plane_equation) const
 
ON_3dPoint Min () const
 
double MinimumDistanceTo (const ON_3dPoint &P) const
 
double MinimumDistanceTo (const ON_BoundingBox &other) const
 
double MinimumDistanceTo (const ON_Line &line) const
 
double MinimumDistanceTo (const ON_Plane &plane) const
 
double MinimumDistanceTo (const ON_PlaneEquation &plane_equation) const
 
 ON_BoundingBox ()
 
 ON_BoundingBox (const ON_3dPoint &, const ON_3dPoint &)
 
ON_3dPointoperator[] (int)
 
const ON_3dPointoperator[] (int) const
 
bool Set (const ON_3dPoint &point, int bGrowBox=false)
 
bool Set (const ON_SimpleArray< ON_2dPoint > &point_array, int bGrowBox=false)
 
bool Set (const ON_SimpleArray< ON_3dPoint > &point_array, int bGrowBox=false)
 
bool Set (const ON_SimpleArray< ON_4dPoint > &point_array, int bGrowBox=false)
 
bool Set (int dim, int is_rat, int count, int stride, const double *point_array, int bGrowBox=false)
 
bool SwapCoordinates (int, int)
 
double Tolerance () const
 
bool Transform (const ON_Xform &)
 
bool Union (const ON_BoundingBox &)
 
bool Union (const ON_BoundingBox &, const ON_BoundingBox &)
 
double Volume () const
 
 ~ON_BoundingBox ()
 

Public Attributes

ON_3dPoint m_max
 
ON_3dPoint m_min
 

Static Public Attributes

static const ON_BoundingBox EmptyBoundingBox
 

Constructor & Destructor Documentation

◆ ON_BoundingBox() [1/2]

ON_BoundingBox::ON_BoundingBox ( )

◆ ON_BoundingBox() [2/2]

ON_BoundingBox::ON_BoundingBox ( const ON_3dPoint & min_pt,
const ON_3dPoint & max_pt )

◆ ~ON_BoundingBox()

ON_BoundingBox::~ON_BoundingBox ( )

Member Function Documentation

◆ Area()

double ON_BoundingBox::Area ( ) const

◆ Center()

ON_3dPoint ON_BoundingBox::Center ( ) const

◆ ClosestPoint()

ON_3dPoint ON_BoundingBox::ClosestPoint ( const ON_3dPoint & test_point) const

◆ Corner()

ON_3dPoint ON_BoundingBox::Corner ( int x_index,
int y_index,
int z_index ) const

◆ Destroy()

void ON_BoundingBox::Destroy ( )

◆ Diagonal()

ON_3dVector ON_BoundingBox::Diagonal ( ) const

◆ FarPoint()

ON_3dPoint ON_BoundingBox::FarPoint ( const ON_3dPoint & test_point) const

◆ GetClosestPoint() [1/2]

bool ON_BoundingBox::GetClosestPoint ( const ON_BoundingBox & other_box,
ON_3dPoint & this_point,
ON_3dPoint & other_point ) const

◆ GetClosestPoint() [2/2]

int ON_BoundingBox::GetClosestPoint ( const ON_Line & line,
ON_3dPoint & box_point,
double * t0,
double * t1 ) const

◆ GetCorners() [1/2]

bool ON_BoundingBox::GetCorners ( ON_3dPoint box_corners[8]) const

◆ GetCorners() [2/2]

bool ON_BoundingBox::GetCorners ( ON_3dPointArray & box_corners) const

◆ GetFarPoint()

bool ON_BoundingBox::GetFarPoint ( const ON_BoundingBox & other_box,
ON_3dPoint & this_point,
ON_3dPoint & other_point ) const

◆ Includes()

bool ON_BoundingBox::Includes ( const ON_BoundingBox & other,
bool bProperSubSet = false ) const

◆ Intersection() [1/3]

bool ON_BoundingBox::Intersection ( const ON_BoundingBox & bbox_A,
const ON_BoundingBox & bbox_B )

◆ Intersection() [2/3]

bool ON_BoundingBox::Intersection ( const ON_BoundingBox & other_bbox)

◆ Intersection() [3/3]

bool ON_BoundingBox::Intersection ( const ON_Line & line,
double * t0 = NULL,
double * t1 = NULL ) const

◆ IsDegenerate()

int ON_BoundingBox::IsDegenerate ( double tolerance = ON_UNSET_VALUE) const

◆ IsDisjoint()

bool ON_BoundingBox::IsDisjoint ( const ON_BoundingBox & other_bbox) const

◆ IsFartherThan() [1/5]

bool ON_BoundingBox::IsFartherThan ( double d,
const ON_3dPoint & P ) const

◆ IsFartherThan() [2/5]

bool ON_BoundingBox::IsFartherThan ( double d,
const ON_BoundingBox & other ) const

◆ IsFartherThan() [3/5]

bool ON_BoundingBox::IsFartherThan ( double d,
const ON_Line & line ) const

◆ IsFartherThan() [4/5]

bool ON_BoundingBox::IsFartherThan ( double d,
const ON_Plane & plane ) const

◆ IsFartherThan() [5/5]

bool ON_BoundingBox::IsFartherThan ( double d,
const ON_PlaneEquation & plane_equation ) const

◆ IsPointIn()

bool ON_BoundingBox::IsPointIn ( const ON_3dPoint & test_point,
int bStrictlyIn = false ) const

◆ IsValid()

bool ON_BoundingBox::IsValid ( ) const

◆ IsVisible()

int ON_BoundingBox::IsVisible ( const ON_Xform & bbox2c) const

◆ Max()

ON_3dPoint ON_BoundingBox::Max ( ) const

◆ MaximumDistanceTo() [1/5]

double ON_BoundingBox::MaximumDistanceTo ( const ON_3dPoint & P) const

◆ MaximumDistanceTo() [2/5]

double ON_BoundingBox::MaximumDistanceTo ( const ON_BoundingBox & other) const

◆ MaximumDistanceTo() [3/5]

double ON_BoundingBox::MaximumDistanceTo ( const ON_Line & line) const

◆ MaximumDistanceTo() [4/5]

double ON_BoundingBox::MaximumDistanceTo ( const ON_Plane & plane) const

◆ MaximumDistanceTo() [5/5]

double ON_BoundingBox::MaximumDistanceTo ( const ON_PlaneEquation & plane_equation) const

◆ Min()

ON_3dPoint ON_BoundingBox::Min ( ) const

◆ MinimumDistanceTo() [1/5]

double ON_BoundingBox::MinimumDistanceTo ( const ON_3dPoint & P) const

◆ MinimumDistanceTo() [2/5]

double ON_BoundingBox::MinimumDistanceTo ( const ON_BoundingBox & other) const

◆ MinimumDistanceTo() [3/5]

double ON_BoundingBox::MinimumDistanceTo ( const ON_Line & line) const

◆ MinimumDistanceTo() [4/5]

double ON_BoundingBox::MinimumDistanceTo ( const ON_Plane & plane) const

◆ MinimumDistanceTo() [5/5]

double ON_BoundingBox::MinimumDistanceTo ( const ON_PlaneEquation & plane_equation) const

◆ operator[]() [1/2]

ON_3dPoint & ON_BoundingBox::operator[] ( int i)

◆ operator[]() [2/2]

const ON_3dPoint & ON_BoundingBox::operator[] ( int i) const

◆ Set() [1/5]

bool ON_BoundingBox::Set ( const ON_3dPoint & point,
int bGrowBox = false )

◆ Set() [2/5]

bool ON_BoundingBox::Set ( const ON_SimpleArray< ON_2dPoint > & point_array,
int bGrowBox = false )

◆ Set() [3/5]

bool ON_BoundingBox::Set ( const ON_SimpleArray< ON_3dPoint > & point_array,
int bGrowBox = false )

◆ Set() [4/5]

bool ON_BoundingBox::Set ( const ON_SimpleArray< ON_4dPoint > & point_array,
int bGrowBox = false )

◆ Set() [5/5]

bool ON_BoundingBox::Set ( int dim,
int is_rat,
int count,
int stride,
const double * point_array,
int bGrowBox = false )

◆ SwapCoordinates()

bool ON_BoundingBox::SwapCoordinates ( int i,
int j )

◆ Tolerance()

double ON_BoundingBox::Tolerance ( ) const

◆ Transform()

bool ON_BoundingBox::Transform ( const ON_Xform & xform)

◆ Union() [1/2]

bool ON_BoundingBox::Union ( const ON_BoundingBox & a)

◆ Union() [2/2]

bool ON_BoundingBox::Union ( const ON_BoundingBox & a,
const ON_BoundingBox & b )

◆ Volume()

double ON_BoundingBox::Volume ( ) const

Member Data Documentation

◆ EmptyBoundingBox

const ON_BoundingBox ON_BoundingBox::EmptyBoundingBox
static

◆ m_max

ON_3dPoint ON_BoundingBox::m_max

◆ m_min

ON_3dPoint ON_BoundingBox::m_min

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