CFx SDK Documentation 2024 SP0
Loading...
Searching...
No Matches
Public Member Functions | List of all members
OdGeBoundBlock3d Class Reference

#include <GeBoundBlock3d.h>

Inheritance diagram for OdGeBoundBlock3d:
OdGeEntity3d OdGsCullingOBBox OdSi::BBox

Public Member Functions

 OdGeBoundBlock3d ()
 
 OdGeBoundBlock3d (const OdGePoint3d &base, const OdGeVector3d &side1, const OdGeVector3d &side2, const OdGeVector3d &side3)
 
 OdGeBoundBlock3d (const OdGePoint3d &point1, const OdGePoint3d &point2)
 
 OdGeBoundBlock3d (const OdGeBoundBlock3d &source)
 
 OdGeBoundBlock3d (const OdGeMatrix3d &lcs, const OdGeExtents3d &localBox)
 
void getMinMaxPoints (OdGePoint3d &p1, OdGePoint3d &p2) const
 
void get (OdGePoint3d &base, OdGeVector3d &side1, OdGeVector3d &side2, OdGeVector3d &side3) const
 
OdGeBoundBlock3dset (const OdGePoint3d &p1, const OdGePoint3d &p2)
 
OdGeBoundBlock3dset (const OdGePoint3d &base, const OdGeVector3d &side1, const OdGeVector3d &side2, const OdGeVector3d &side3)
 
OdGeBoundBlock3dextend (const OdGePoint3d &point)
 
OdGeBoundBlock3dswell (double distance)
 
bool contains (const OdGePoint3d &point, const OdGeTol &tol=OdGeContext::gTol) const
 
bool isDisjoint (const OdGeBoundBlock3d &block, const OdGeTol &tol=OdGeContext::gTol) const
 
bool isBox () const
 
OdGeBoundBlock3dsetToBox (bool toBox)
 
OdGeBoundBlock3doperator= (const OdGeBoundBlock3d &block)
 
OdGePoint3d minPoint () const
 
OdGePoint3d maxPoint () const
 
OdGePoint3d center () const
 
void setToBoxOrtho (const OdGeVector3d &dir1, const OdGeVector3d &dir2, const OdGeVector3d &dir3)
 
void setToBoxOrtho ()
 
- Public Member Functions inherited from OdGeEntity3d
 ODRX_HEAP_OPERATORS ()
 
 ~OdGeEntity3d ()
 
bool isKindOf (OdGe::EntityId entType) const
 
OdGe::EntityId type () const
 
OdGeEntity3dcopy () const
 
OdGeEntity3doperator= (const OdGeEntity3d &entity)
 
bool operator== (const OdGeEntity3d &entity) const
 
bool operator!= (const OdGeEntity3d &entity) const
 
bool isEqualTo (const OdGeEntity3d &object, const OdGeTol &tol=OdGeContext::gTol) const
 
OdGeEntity3dtransformBy (const OdGeMatrix3d &xfm)
 
OdGeEntity3dtranslateBy (const OdGeVector3d &translateVec)
 
OdGeEntity3drotateBy (double angle, const OdGeVector3d &vect, const OdGePoint3d &basePoint=OdGePoint3d::kOrigin)
 
OdGeEntity3dmirror (const OdGePlane &plane)
 
OdGeEntity3dscaleBy (double scaleFactor, const OdGePoint3d &basePoint=OdGePoint3d::kOrigin)
 
bool isOn (const OdGePoint3d &point, const OdGeTol &tol=OdGeContext::gTol) const
 

Additional Inherited Members

- Protected Member Functions inherited from OdGeEntity3d
 OdGeEntity3d ()
 
 OdGeEntity3d (const OdGeEntity3d &)
 
void connectTo (OdGeEntity3dImpl *)
 

Detailed Description

This class implements 3D bounding volumes.

Corresponding C++ library: TD_Ge

<group OdGe_Classes>

See also
<link ge_OdGeBoundBlock3D, Working with Bounding Blocks>

Definition at line 42 of file GeBoundBlock3d.h.

Constructor & Destructor Documentation

◆ OdGeBoundBlock3d() [1/5]

OdGeBoundBlock3d::OdGeBoundBlock3d ( )

The default constructor for the OdGeBoundBlock3d class. Constructs a parallelepiped reduced to the coordinate origin.

Remarks
A parallelepiped is a parallelogram extruded in an arbitrary direction.

◆ OdGeBoundBlock3d() [2/5]

OdGeBoundBlock3d::OdGeBoundBlock3d ( const OdGePoint3d base,
const OdGeVector3d side1,
const OdGeVector3d side2,
const OdGeVector3d side3 
)

Constructor for the OdGeBoundBlock3d class.

Parameters
base[in] Base of a parallelogram bounding block.
side1[in] First side of a parallelogram bounding block.
side2[in] Second side of a parallelogram bounding block.
side3[in] Third side of a parallelogram bounding block.
Remarks
The constructor constructs a parallelogram with given point and three sides.

◆ OdGeBoundBlock3d() [3/5]

OdGeBoundBlock3d::OdGeBoundBlock3d ( const OdGePoint3d point1,
const OdGePoint3d point2 
)

Constructor for the OdGeBoundBlock3d class.

Parameters
point1[in] First point of a coordinate-aligned box.
point2[in] Second point of a coordinate-aligned box.
Remarks
The constructor constructs a box bounded by two input points.

◆ OdGeBoundBlock3d() [4/5]

OdGeBoundBlock3d::OdGeBoundBlock3d ( const OdGeBoundBlock3d source)

Constructor for the OdGeBoundBlock3d class.

Parameters
source[in] Object to be cloned.
Remarks
Copies the input OdGeBoundBlock3d object.

◆ OdGeBoundBlock3d() [5/5]

OdGeBoundBlock3d::OdGeBoundBlock3d ( const OdGeMatrix3d lcs,
const OdGeExtents3d localBox 
)

Constructor for the OdGeBoundBlock3d class.

Parameters
lcs[in] Local coordinate system (must be orthogonal).
localBox[in] Axis-aligned box in the specified lcs.

Member Function Documentation

◆ center()

OdGePoint3d OdGeBoundBlock3d::center ( ) const

Returns the center of the bounding block.

◆ contains()

bool OdGeBoundBlock3d::contains ( const OdGePoint3d point,
const OdGeTol tol = OdGeContext::gTol 
) const

Checks whether the passed point is contained in the bounding block.

Parameters
point[in] Any 3D point.
tol[in] Geometric tolerance.
Returns
true if the specified point is contained in the bounding block, false otherwise.

◆ extend()

OdGeBoundBlock3d & OdGeBoundBlock3d::extend ( const OdGePoint3d point)

Extends the bounding block to contain the specified point.

Parameters
point[in] Any 3D point.

◆ get()

void OdGeBoundBlock3d::get ( OdGePoint3d base,
OdGeVector3d side1,
OdGeVector3d side2,
OdGeVector3d side3 
) const

Returns base and sides of bounding block.

Parameters
base[out] Receives the base of the bounding box.
side1[out] Receives the first side.
side2[out] Receives the second side.
side3[out] Receives the third side.

◆ getMinMaxPoints()

void OdGeBoundBlock3d::getMinMaxPoints ( OdGePoint3d p1,
OdGePoint3d p2 
) const

Returns the extents of the bounding block.

Parameters
p1[out] Receives the first corner of the extents.
p2[out] Receives the second corner of the extents.

◆ isBox()

bool OdGeBoundBlock3d::isBox ( ) const

Returns true if and only if this bounding block is a coordinate-aligned box.

◆ isDisjoint()

bool OdGeBoundBlock3d::isDisjoint ( const OdGeBoundBlock3d block,
const OdGeTol tol = OdGeContext::gTol 
) const

Checks whether the specified bounding block does not intersect this bounding block.

Parameters
block[in] Any 3D bounding block.
tol[in] Geometric tolerance.
Returns
true if the specified bounding block does not intersect this bounding block, false otherwise.

◆ maxPoint()

OdGePoint3d OdGeBoundBlock3d::maxPoint ( ) const

Gets the maximum point of the OdGeBoundBlock3d object.

Remarks
The max point of the object extents is one of two points that are used to construct a bounding block. The max point has greater values for each coordinate axis compared to the min point.

◆ minPoint()

OdGePoint3d OdGeBoundBlock3d::minPoint ( ) const

Gets the minimum point of the OdGeBoundBlock3d object.

Remarks
The min point of the object extents is one of two points that are used to construct a bounding block. The min point has minor values for each coordinate axis compared to the max point.

◆ operator=()

OdGeBoundBlock3d & OdGeBoundBlock3d::operator= ( const OdGeBoundBlock3d block)

The assignment operator for the OdGeBoundBlock3d class.

Parameters
block[in] Input OdGeBoundBlock3d object.
Remarks
Makes this block identical to the input block.

◆ set() [1/2]

OdGeBoundBlock3d & OdGeBoundBlock3d::set ( const OdGePoint3d base,
const OdGeVector3d side1,
const OdGeVector3d side2,
const OdGeVector3d side3 
)

Sets the bounding block to a parallelepiped bounding block.

Parameters
base[in] Base of parallelepiped bounding block.
side1[in] First side of parallelepiped bounding block.
side2[in] Second side of parallelepiped bounding block.
side3[in] Third side of parallelepiped bounding block.

◆ set() [2/2]

OdGeBoundBlock3d & OdGeBoundBlock3d::set ( const OdGePoint3d p1,
const OdGePoint3d p2 
)

Sets the bounding block to a coordinate-aligned box.

Parameters
p1[in] First point of a coordinate-aligned box.
p2[in] Second point of a coordinate-aligned box.

◆ setToBox()

OdGeBoundBlock3d & OdGeBoundBlock3d::setToBox ( bool  toBox)

Sets this bounding block to a coordinate-aligned box, or a parallelogram bounding block. Returns a reference to this bounding block.

Parameters
toBox[in] If true, sets this bounding block to a coordinate-aligned otherwise, sets it to a parallelepiped bounding block.

◆ setToBoxOrtho() [1/2]

void OdGeBoundBlock3d::setToBoxOrtho ( )
inline

Sets this bounding block to a coordinate-aligned box if axes of this bound block are parallel to world coordinate space axes.

Definition at line 279 of file GeBoundBlock3d.h.

◆ setToBoxOrtho() [2/2]

void OdGeBoundBlock3d::setToBoxOrtho ( const OdGeVector3d dir1,
const OdGeVector3d dir2,
const OdGeVector3d dir3 
)
inline

Sets this bounding block to a coordinate-aligned box if the specified axes are parallel to world coordinate space axes.

Parameters
dir1[in] First coordinate system axis.
dir2[in] Second coordinate system axis.
dir3[in] Third coordinate system axis.

Definition at line 261 of file GeBoundBlock3d.h.

◆ swell()

OdGeBoundBlock3d & OdGeBoundBlock3d::swell ( double  distance)

Moves the walls of the bounding block the specified distance.

Parameters
distance[in] Distance.

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