The 3D bounding box class. More...
#include <BoundBox.h>
Public Types | |
typedef _Precision | num_type |
enum | OCTANT { OCT_LDB = 0, OCT_RDB, OCT_LUB, OCT_RUB, OCT_LDF, OCT_RDF, OCT_LUF, OCT_RUF } |
enum | SIDE { LEFT =0, RIGHT =1, TOP =2, BOTTOM =3, FRONT =4, BACK =5, INVALID =255 } |
typedef float_traits< num_type > | traits_type |
Public Member Functions | |
void | Add (const BoundBox3< _Precision > &rcBB) |
Appends the bounding box to this box. More... | |
void | Add (const Vector3< _Precision > &rclVect) |
Appends the point to the box. More... | |
BoundBox3 (_Precision fMinX=std::numeric_limits< _Precision >::max(), _Precision fMinY=std::numeric_limits< _Precision >::max(), _Precision fMinZ=std::numeric_limits< _Precision >::max(), _Precision fMaxX=-std::numeric_limits< _Precision >::max(), _Precision fMaxY=-std::numeric_limits< _Precision >::max(), _Precision fMaxZ=-std::numeric_limits< _Precision >::max()) | |
Builds box from pairs of x,y,z values. More... | |
BoundBox3 (const BoundBox3< _Precision > &rcBB) | |
BoundBox3 (const Vector3< _Precision > &rcCnt, _Precision fDistance) | |
Defines a bounding box around the center rcCnt with the distances fDistance in each coordinate. More... | |
BoundBox3 (const Vector3< _Precision > *pclVect, unsigned long ulCt) | |
Builds box from an array of points. More... | |
_Precision | CalcDiagonalLength (void) const |
Compute the diagonal length of this bounding box. More... | |
bool | CalcEdge (unsigned short usEdge, Vector3< _Precision > &rcP0, Vector3< _Precision > &rcP1) const |
Calculates the two points of an edge. More... | |
BoundBox3< _Precision > | CalcOctant (typename BoundBox3< _Precision >::OCTANT Octant) const |
void | CalcPlane (unsigned short usPlane, Vector3< _Precision > &rBase, Vector3< _Precision > &rNormal) const |
Returns the plane of the given side. More... | |
Vector3< _Precision > | CalcPoint (unsigned short usPoint) const |
Returns the corner point usPoint. More... | |
Vector3< _Precision > | ClosestPoint (const Vector3< _Precision > &rclPt) const |
Searches for the closest point of the bounding box. More... | |
void | Enlarge (_Precision fLen) |
Enlarges the box with factor fLen. More... | |
Vector3< _Precision > | GetCenter (void) const |
Returns the center.of the box. More... | |
bool | GetOctantFromVector (const Vector3< _Precision > &rclVct, OCTANT &rclOctant) const |
BoundBox3< _Precision >::SIDE | GetSideFromRay (const Vector3< _Precision > &rclPt, const Vector3< _Precision > &rclDir) const |
Returns the side of the bounding box the ray exits. More... | |
BoundBox3< _Precision >::SIDE | GetSideFromRay (const Vector3< _Precision > &rclPt, const Vector3< _Precision > &rclDir, Vector3< _Precision > &rcInt) const |
Returns the side of the bounding box the ray exits. More... | |
bool | Intersect (const BoundBox2d &rcBB) const |
Checks for intersection. More... | |
bool | Intersect (const BoundBox3< _Precision > &rcBB) const |
Methods for intersection, cuttÃng and union of bounding boxes. More... | |
BoundBox3< _Precision > | Intersected (const BoundBox3< _Precision > &rcBB) const |
Computes the intersection between two bounding boxes. More... | |
bool | IntersectionPoint (const Vector3< _Precision > &rcVct, const Vector3< _Precision > &rcVctDir, Vector3< _Precision > &cVctRes, _Precision epsilon) const |
Intersection point of an inner search ray with the bounding box, built of the base rcVct and the direction rcVctDir. More... | |
bool | IntersectPlaneWithLine (unsigned short usSide, const Vector3< _Precision > &rcBase, const Vector3< _Precision > &rcDir, Vector3< _Precision > &rcP0) const |
Computes the intersection point of line and a plane of the bounding box. More... | |
bool | IntersectWithLine (const Vector3< _Precision > &rcBase, const Vector3< _Precision > &rcDir, Vector3< _Precision > &rcP0, Vector3< _Precision > &rcP1) const |
Computes the intersection points of line and bounding box. More... | |
bool | IsCutLine (const Vector3< _Precision > &rcBase, const Vector3< _Precision > &rcDir, _Precision fTolerance=0.0f) const |
Checks for intersection with line incl. More... | |
bool | IsCutPlane (const Vector3< _Precision > &rclBase, const Vector3< _Precision > &rclNormal) const |
Checks if this plane specified by (point,normal) cuts this box. More... | |
bool | IsInBox (const BoundBox2d &rcbb) const |
Checks if this 2D box lies inside the box. More... | |
bool | IsInBox (const BoundBox3< _Precision > &rcBB) const |
Checks if this 3D box lies inside the box. More... | |
bool | IsInBox (const Vector3< _Precision > &rcVct) const |
Test methods. More... | |
bool | IsValid (void) const |
Checks whether the bounding box is valid. More... | |
_Precision | LengthX (void) const |
Calculates expansion in x-direction. More... | |
_Precision | LengthY (void) const |
Calculates expansion in y-direction. More... | |
_Precision | LengthZ (void) const |
Calculates expansion in z-direction. More... | |
void | MoveX (_Precision f) |
Moves in x-direction. More... | |
void | MoveY (_Precision f) |
Moves in y-direction. More... | |
void | MoveZ (_Precision f) |
Moves in z-direction. More... | |
bool | operator&& (const BoundBox2d &rcBB) const |
Checks for intersection. More... | |
bool | operator&& (const BoundBox3< _Precision > &rcBB) const |
Checks for intersection. More... | |
BoundBox3< _Precision > & | operator= (const BoundBox3< _Precision > &rcBound) |
Assignment operator. More... | |
void | Print (std::ostream &) const |
Prints the values to stream. More... | |
BoundBox2d | ProjectBox (const ViewProjMethod *rclP) const |
Projects the box onto a plane and returns a 2D box. More... | |
void | ScaleX (_Precision f) |
Scales in x-direction. More... | |
void | ScaleY (_Precision f) |
Scales in y-direction. More... | |
void | ScaleZ (_Precision f) |
Scales in z-direction. More... | |
void | SetVoid (void) |
void | Shrink (_Precision fLen) |
Shrinks the box with factor fLen. More... | |
BoundBox3< _Precision > | Transformed (const Matrix4D &mat) const |
Transform the corners of this box with the given matrix and create a new bounding box. More... | |
BoundBox3< _Precision > | United (const BoundBox3< _Precision > &rcBB) const |
The union of two bounding boxes. More... | |
~BoundBox3 () | |
Public Attributes | |
_Precision | MaxX |
_Precision | MaxY |
_Precision | MaxZ |
_Precision | MinX |
Public attributes. More... | |
_Precision | MinY |
_Precision | MinZ |
Detailed Description
template<class _Precision>
class Base::BoundBox3< _Precision >
The 3D bounding box class.
Member Typedef Documentation
◆ num_type
typedef _Precision Base::BoundBox3< _Precision >::num_type |
◆ traits_type
typedef float_traits<num_type> Base::BoundBox3< _Precision >::traits_type |
Member Enumeration Documentation
◆ OCTANT
enum Base::BoundBox3::OCTANT |
◆ SIDE
enum Base::BoundBox3::SIDE |
Constructor & Destructor Documentation
◆ BoundBox3() [1/4]
|
explicit |
Builds box from pairs of x,y,z values.
◆ BoundBox3() [2/4]
Base::BoundBox3< _Precision >::BoundBox3 | ( | const BoundBox3< _Precision > & | rcBB | ) |
◆ BoundBox3() [3/4]
Base::BoundBox3< _Precision >::BoundBox3 | ( | const Vector3< _Precision > * | pclVect, |
unsigned long | ulCt | ||
) |
Builds box from an array of points.
◆ BoundBox3() [4/4]
Base::BoundBox3< _Precision >::BoundBox3 | ( | const Vector3< _Precision > & | rcCnt, |
_Precision | fDistance | ||
) |
Defines a bounding box around the center rcCnt with the distances fDistance in each coordinate.
◆ ~BoundBox3()
Base::BoundBox3< _Precision >::~BoundBox3 |
Member Function Documentation
◆ Add() [1/2]
void Base::BoundBox3< _Precision >::Add | ( | const BoundBox3< _Precision > & | rcBB | ) |
Appends the bounding box to this box.
The box can grow but not shrink.
◆ Add() [2/2]
void Base::BoundBox3< _Precision >::Add | ( | const Vector3< _Precision > & | rclVect | ) |
Appends the point to the box.
The box can grow but not shrink.
Referenced by Base::BoundBoxPy::add(), Inspection::MeshInspectGrid::AddFacet(), MeshCore::MeshFacetGrid::AddFacet(), Points::PointsGrid::CalculateGridLength(), MeshGui::SoFCMeshSegmentShape::computeBBox(), MeshGui::SoFCMeshObjectBoundary::computeBBox(), FemGui::ViewProviderFEMMeshBuilder::createMesh(), MeshCore::PlaneFit::Dimension(), Points::PointKernel::getBoundBox(), Mesh::MeshObject::getBoundBox(), TechDraw::DrawProjGroup::getBoundingBox(), Gui::MovableGroupModel::getBoundingBox(), MeshCore::PlaneFit::GetBoundings(), Gui::Dialog::TransformStrategy::getRotationCenter(), Points::PointsGrid::InitGrid(), MeshInfoWatcher::onSelectionChanged(), Points::PointsGrid::PointsGrid(), Base::BoundBoxPy::PyInit(), PartDesignGui::ViewProviderDatumLine::setExtents(), PartDesignGui::ViewProviderDatumPlane::setExtents(), and Gui::View3DInventorViewer::viewSelection().
◆ CalcDiagonalLength()
_Precision Base::BoundBox3< _Precision >::CalcDiagonalLength | ( | void | ) | const |
Compute the diagonal length of this bounding box.
- Note
- It's up to the client programmer to make sure that this bounding box is valid.
Referenced by MeshCore::MeshProjection::bboxInsideRectangle(), Points::PointsGrid::CalculateGridLength(), MeshCore::MeshGrid::CalculateGridLength(), FemGui::ViewProviderFEMMeshBuilder::createMesh(), Points::PointsGrid::InSide(), MeshCore::MeshGrid::Inside(), and PartGui::ViewProviderMirror::setEdit().
◆ CalcEdge()
bool Base::BoundBox3< _Precision >::CalcEdge | ( | unsigned short | usEdge, |
Vector3< _Precision > & | rcP0, | ||
Vector3< _Precision > & | rcP1 | ||
) | const |
Calculates the two points of an edge.
0. edge P0-P1 1. edge P1-P2 2. edge P2-P3
- edge P3-P0 4. edge P4-P5 5. edge P5-P6
- edge P6-P7 7. edge P7-P4 8. edge P0-P4
- edge P1-P5 10. edge P2-P6 11. edge P3-P7
Referenced by Base::BoundBoxPy::getEdge().
◆ CalcOctant()
BoundBox3< _Precision > Base::BoundBox3< _Precision >::CalcOctant | ( | typename BoundBox3< _Precision >::OCTANT | Octant | ) | const |
◆ CalcPlane()
void Base::BoundBox3< _Precision >::CalcPlane | ( | unsigned short | usPlane, |
Vector3< _Precision > & | rBase, | ||
Vector3< _Precision > & | rNormal | ||
) | const |
Returns the plane of the given side.
◆ CalcPoint()
Vector3< _Precision > Base::BoundBox3< _Precision >::CalcPoint | ( | unsigned short | usPoint | ) | const |
Returns the corner point usPoint.
0: front,bottom,left 1: front,bottom,right 2: front,top,right 3: front,top,left 4: back,bottom,left 5: back,bottom,right 6: back,top,right 7: back,top,left
Referenced by MeshCore::MeshTrimByPlane::CheckFacets(), Mesh::MeshObject::getBoundBox(), and Base::BoundBoxPy::getPoint().
◆ ClosestPoint()
Vector3< _Precision > Base::BoundBox3< _Precision >::ClosestPoint | ( | const Vector3< _Precision > & | rclPt | ) | const |
Searches for the closest point of the bounding box.
Referenced by Base::BoundBoxPy::closestPoint().
◆ Enlarge()
void Base::BoundBox3< _Precision >::Enlarge | ( | _Precision | fLen | ) |
Enlarges the box with factor fLen.
Referenced by FemGui::ViewProviderFEMMeshBuilder::createMesh(), Base::BoundBoxPy::enlarge(), and MeshCore::MeshGrid::GetMeshBoundBox().
◆ GetCenter()
Vector3< _Precision > Base::BoundBox3< _Precision >::GetCenter | ( | void | ) | const |
Returns the center.of the box.
Referenced by MeshCore::MeshProjection::bboxInsideRectangle(), MeshGui::SoFCMeshObjectShape::computeBBox(), MeshGui::SoFCMeshSegmentShape::computeBBox(), MeshGui::SoFCMeshObjectBoundary::computeBBox(), PartGui::CrossSections::CrossSections(), MeshPartGui::CrossSections::CrossSections(), MeshCore::MeshGeomEdge::IntersectBoundingBox(), MeshCore::MeshGeomFacet::IntersectBoundingBox(), DrawingGui::orthoview::orthoview(), Points::PointsGrid::SearchNearestFromPoint(), MeshCore::MeshGrid::SearchNearestFromPoint(), MeshCore::MeshFacetGrid::SearchNearestFromPoint(), and PartGui::ViewProviderMirror::setEdit().
◆ GetOctantFromVector()
bool Base::BoundBox3< _Precision >::GetOctantFromVector | ( | const Vector3< _Precision > & | rclVct, |
OCTANT & | rclOctant | ||
) | const |
◆ GetSideFromRay() [1/2]
BoundBox3< _Precision >::SIDE Base::BoundBox3< _Precision >::GetSideFromRay | ( | const Vector3< _Precision > & | rclPt, |
const Vector3< _Precision > & | rclDir | ||
) | const |
Returns the side of the bounding box the ray exits.
Referenced by Points::PointsGrid::SearchNearestFromPoint(), MeshCore::MeshGrid::SearchNearestFromPoint(), and MeshCore::MeshFacetGrid::SearchNearestFromPoint().
◆ GetSideFromRay() [2/2]
BoundBox3< _Precision >::SIDE Base::BoundBox3< _Precision >::GetSideFromRay | ( | const Vector3< _Precision > & | rclPt, |
const Vector3< _Precision > & | rclDir, | ||
Vector3< _Precision > & | rcInt | ||
) | const |
Returns the side of the bounding box the ray exits.
◆ Intersect() [1/2]
bool Base::BoundBox3< _Precision >::Intersect | ( | const BoundBox2d & | rcBB | ) | const |
Checks for intersection.
◆ Intersect() [2/2]
bool Base::BoundBox3< _Precision >::Intersect | ( | const BoundBox3< _Precision > & | rcBB | ) | const |
Methods for intersection, cuttÃng and union of bounding boxes.
Checks for intersection.
Referenced by Base::BoundBoxPy::intersect().
◆ Intersected()
BoundBox3< _Precision > Base::BoundBox3< _Precision >::Intersected | ( | const BoundBox3< _Precision > & | rcBB | ) | const |
Computes the intersection between two bounding boxes.
The result is also a bounding box.
Referenced by Base::BoundBoxPy::intersected().
◆ IntersectionPoint()
bool Base::BoundBox3< _Precision >::IntersectionPoint | ( | const Vector3< _Precision > & | rcVct, |
const Vector3< _Precision > & | rcVctDir, | ||
Vector3< _Precision > & | cVctRes, | ||
_Precision | epsilon | ||
) | const |
Intersection point of an inner search ray with the bounding box, built of the base rcVct and the direction rcVctDir.
rcVct must lie inside the bounding box.
Referenced by Base::BoundBoxPy::getIntersectionPoint().
◆ IntersectPlaneWithLine()
bool Base::BoundBox3< _Precision >::IntersectPlaneWithLine | ( | unsigned short | usSide, |
const Vector3< _Precision > & | rcBase, | ||
const Vector3< _Precision > & | rcDir, | ||
Vector3< _Precision > & | rcP0 | ||
) | const |
Computes the intersection point of line and a plane of the bounding box.
◆ IntersectWithLine()
bool Base::BoundBox3< _Precision >::IntersectWithLine | ( | const Vector3< _Precision > & | rcBase, |
const Vector3< _Precision > & | rcDir, | ||
Vector3< _Precision > & | rcP0, | ||
Vector3< _Precision > & | rcP1 | ||
) | const |
Computes the intersection points of line and bounding box.
◆ IsCutLine()
bool Base::BoundBox3< _Precision >::IsCutLine | ( | const Vector3< _Precision > & | rcBase, |
const Vector3< _Precision > & | rcDir, | ||
_Precision | fTolerance = 0.0f |
||
) | const |
Checks for intersection with line incl.
search tolerance.
Referenced by Base::BoundBoxPy::intersect().
◆ IsCutPlane()
bool Base::BoundBox3< _Precision >::IsCutPlane | ( | const Vector3< _Precision > & | rclBase, |
const Vector3< _Precision > & | rclNormal | ||
) | const |
Checks if this plane specified by (point,normal) cuts this box.
- Note
- It's up to the client programmer to make sure that this bounding box is valid.
Referenced by MeshCore::MeshProjection::bboxInsideRectangle(), MeshCore::MeshTrimByPlane::CheckFacets(), MeshCore::MeshAlgorithm::CutWithPlane(), MeshCore::MeshAlgorithm::GetFacetsFromPlane(), and Base::BoundBoxPy::isCutPlane().
◆ IsInBox() [1/3]
bool Base::BoundBox3< _Precision >::IsInBox | ( | const BoundBox2d & | rcbb | ) | const |
Checks if this 2D box lies inside the box.
- Note
- It's up to the client programmer to make sure that both bounding boxes are valid.
◆ IsInBox() [2/3]
bool Base::BoundBox3< _Precision >::IsInBox | ( | const BoundBox3< _Precision > & | rcBB | ) | const |
Checks if this 3D box lies inside the box.
- Note
- It's up to the client programmer to make sure that both bounding boxes are valid.
◆ IsInBox() [3/3]
bool Base::BoundBox3< _Precision >::IsInBox | ( | const Vector3< _Precision > & | rcVct | ) | const |
Test methods.
Checks if this point lies inside the box.
- Note
- It's up to the client programmer to make sure that this bounding box is valid.
Referenced by MeshCore::MeshGeomEdge::ContainedByOrIntersectBoundingBox(), MeshCore::MeshGeomFacet::IntersectBoundingBox(), MeshCore::MeshGeomFacet::IntersectWithFacet(), Base::BoundBoxPy::isInside(), MeshCore::MeshGeomFacet::Perimeter(), Points::PointsGrid::SearchNearestFromPoint(), MeshCore::MeshGrid::SearchNearestFromPoint(), MeshCore::MeshFacetGrid::SearchNearestFromPoint(), Points::PointsGrid::Verify(), and MeshCore::MeshPointGrid::Verify().
◆ IsValid()
bool Base::BoundBox3< _Precision >::IsValid | ( | void | ) | const |
Checks whether the bounding box is valid.
Referenced by Mesh::MeshObject::getBoundBox(), PartGui::ViewProvider2DObject::updateData(), and Gui::View3DInventorViewer::viewSelection().
◆ LengthX()
_Precision Base::BoundBox3< _Precision >::LengthX | ( | void | ) | const |
Calculates expansion in x-direction.
Referenced by PathSimulator::PathSim::BeginSimulation(), Points::PointsGrid::CalculateGridLength(), MeshCore::MeshGrid::CalculateGridLength(), MeshCore::MeshAlgorithm::CalculateMinimumGridLength(), FemGui::ViewProviderFEMMeshBuilder::createMesh(), Points::PointsGrid::InitGrid(), MeshCore::MeshGrid::InitGrid(), Inspection::MeshInspectGrid::InitGrid(), Inspection::InspectActualShape::InspectActualShape(), MeshCore::MeshGeomEdge::IntersectBoundingBox(), MeshCore::MeshGeomFacet::IntersectBoundingBox(), MeshCore::MeshEigensystem::MeshEigensystem(), MeshCore::MeshFacetGrid::MeshFacetGrid(), Inspection::MeshInspectGrid::MeshInspectGrid(), MeshCore::MeshPointGrid::MeshPointGrid(), TechDraw::DrawProjGroup::minimumBbViews(), Points::PointsGrid::PointsGrid(), PartDesignGui::ViewProviderDatumCoordinateSystem::setExtents(), PartDesignGui::ViewProviderDatumPlane::setExtents(), and InspectionGui::ViewProviderInspection::updateData().
◆ LengthY()
_Precision Base::BoundBox3< _Precision >::LengthY | ( | void | ) | const |
Calculates expansion in y-direction.
Referenced by PathSimulator::PathSim::BeginSimulation(), Points::PointsGrid::CalculateGridLength(), MeshCore::MeshGrid::CalculateGridLength(), MeshCore::MeshAlgorithm::CalculateMinimumGridLength(), FemGui::ViewProviderFEMMeshBuilder::createMesh(), Points::PointsGrid::InitGrid(), MeshCore::MeshGrid::InitGrid(), Inspection::MeshInspectGrid::InitGrid(), Inspection::InspectActualShape::InspectActualShape(), MeshCore::MeshGeomEdge::IntersectBoundingBox(), MeshCore::MeshGeomFacet::IntersectBoundingBox(), MeshCore::MeshFacetGrid::MeshFacetGrid(), Inspection::MeshInspectGrid::MeshInspectGrid(), MeshCore::MeshPointGrid::MeshPointGrid(), Points::PointsGrid::PointsGrid(), PartDesignGui::ViewProviderDatumCoordinateSystem::setExtents(), PartDesignGui::ViewProviderDatumPlane::setExtents(), and InspectionGui::ViewProviderInspection::updateData().
◆ LengthZ()
_Precision Base::BoundBox3< _Precision >::LengthZ | ( | void | ) | const |
Calculates expansion in z-direction.
Referenced by PathSimulator::PathSim::BeginSimulation(), Points::PointsGrid::CalculateGridLength(), MeshCore::MeshGrid::CalculateGridLength(), MeshCore::MeshAlgorithm::CalculateMinimumGridLength(), FemGui::ViewProviderFEMMeshBuilder::createMesh(), Points::PointsGrid::InitGrid(), MeshCore::MeshGrid::InitGrid(), Inspection::MeshInspectGrid::InitGrid(), Inspection::InspectActualShape::InspectActualShape(), MeshCore::MeshGeomEdge::IntersectBoundingBox(), MeshCore::MeshGeomFacet::IntersectBoundingBox(), MeshCore::MeshFacetGrid::MeshFacetGrid(), Inspection::MeshInspectGrid::MeshInspectGrid(), MeshCore::MeshPointGrid::MeshPointGrid(), Points::PointsGrid::PointsGrid(), PartDesignGui::ViewProviderDatumLine::setExtents(), PartDesignGui::ViewProviderDatumCoordinateSystem::setExtents(), and InspectionGui::ViewProviderInspection::updateData().
◆ MoveX()
void Base::BoundBox3< _Precision >::MoveX | ( | _Precision | f | ) |
Moves in x-direction.
Referenced by TechDraw::DrawProjGroup::getBoundingBox(), and Base::BoundBoxPy::move().
◆ MoveY()
void Base::BoundBox3< _Precision >::MoveY | ( | _Precision | f | ) |
Moves in y-direction.
Referenced by TechDraw::DrawProjGroup::getBoundingBox(), and Base::BoundBoxPy::move().
◆ MoveZ()
void Base::BoundBox3< _Precision >::MoveZ | ( | _Precision | f | ) |
Moves in z-direction.
Referenced by Base::BoundBoxPy::move().
◆ operator&&() [1/2]
bool Base::BoundBox3< _Precision >::operator&& | ( | const BoundBox2d & | rcBB | ) | const |
Checks for intersection.
◆ operator&&() [2/2]
bool Base::BoundBox3< _Precision >::operator&& | ( | const BoundBox3< _Precision > & | rcBB | ) | const |
Checks for intersection.
◆ operator=()
BoundBox3< _Precision > & Base::BoundBox3< _Precision >::operator= | ( | const BoundBox3< _Precision > & | rcBound | ) |
Assignment operator.
◆ Print()
void Base::BoundBox3< _Precision >::Print | ( | std::ostream & | out | ) | const |
Prints the values to stream.
◆ ProjectBox()
BoundBox2d Base::BoundBox3< _Precision >::ProjectBox | ( | const ViewProjMethod * | rclP | ) | const |
Projects the box onto a plane and returns a 2D box.
Referenced by MeshCore::MeshTrimming::CheckFacets(), and PartGui::ViewProvider2DObject::updateData().
◆ ScaleX()
void Base::BoundBox3< _Precision >::ScaleX | ( | _Precision | f | ) |
Scales in x-direction.
Referenced by TechDraw::DrawProjGroup::getBoundingBox(), TechDraw::DrawProjGroup::makeViewBbs(), and Base::BoundBoxPy::scale().
◆ ScaleY()
void Base::BoundBox3< _Precision >::ScaleY | ( | _Precision | f | ) |
Scales in y-direction.
Referenced by TechDraw::DrawProjGroup::getBoundingBox(), TechDraw::DrawProjGroup::makeViewBbs(), and Base::BoundBoxPy::scale().
◆ ScaleZ()
void Base::BoundBox3< _Precision >::ScaleZ | ( | _Precision | f | ) |
Scales in z-direction.
Referenced by TechDraw::DrawProjGroup::getBoundingBox(), TechDraw::DrawProjGroup::makeViewBbs(), and Base::BoundBoxPy::scale().
◆ SetVoid()
void Base::BoundBox3< _Precision >::SetVoid | ( | void | ) |
Referenced by Base::BoundBoxPy::setVoid().
◆ Shrink()
void Base::BoundBox3< _Precision >::Shrink | ( | _Precision | fLen | ) |
Shrinks the box with factor fLen.
◆ Transformed()
BoundBox3< _Precision > Base::BoundBox3< _Precision >::Transformed | ( | const Matrix4D & | mat | ) | const |
Transform the corners of this box with the given matrix and create a new bounding box.
- Note
- It's up to the client programmer to make sure that this bounding box is valid.
Referenced by Inspection::MeshInspectGrid::InitGrid(), Inspection::InspectNominalFastMesh::InspectNominalFastMesh(), Inspection::InspectNominalMesh::InspectNominalMesh(), Inspection::MeshInspectGrid::MeshInspectGrid(), PartDesignGui::ViewProviderDatumLine::setExtents(), PartDesignGui::ViewProviderDatumPlane::setExtents(), and Base::BoundBoxPy::transformed().
◆ United()
BoundBox3< _Precision > Base::BoundBox3< _Precision >::United | ( | const BoundBox3< _Precision > & | rcBB | ) | const |
The union of two bounding boxes.
Referenced by Base::BoundBoxPy::united().
Member Data Documentation
◆ MaxX
_Precision Base::BoundBox3< _Precision >::MaxX |
Referenced by Inspection::MeshInspectGrid::AddFacet(), MeshCore::MeshFacetGrid::AddFacet(), MeshGui::SoFCMeshNode::computeBBox(), MeshGui::SoFCMeshOpenEdge::computeBBox(), MeshGui::SoFCMeshFaceSet::computeBBox(), MeshGui::SoFCMeshObjectShape::computeBBox(), MeshGui::SoFCMeshOpenEdgeSet::computeBBox(), MeshGui::SoFCMeshSegmentShape::computeBBox(), MeshGui::SoFCMeshObjectBoundary::computeBBox(), MeshCore::PlaneFit::Dimension(), TechDraw::DrawViewPart::getBoxX(), Gui::Dialog::TransformStrategy::getRotationCenter(), Points::PointsGrid::InSide(), MeshCore::MeshGrid::Inside(), TechDraw::DrawViewSection::isReallyInBox(), TechDraw::DrawDimHelper::minMax(), MeshInfoWatcher::onSelectionChanged(), Base::BoundBoxPy::PyInit(), Base::BoundBoxPy::representation(), PartDesignGui::ViewProviderDatumPlane::setExtents(), Base::BoundBoxPy::setXMax(), MeshCore::MeshAlgorithm::Surround(), and Gui::View3DInventorViewer::viewSelection().
◆ MaxY
_Precision Base::BoundBox3< _Precision >::MaxY |
Referenced by Inspection::MeshInspectGrid::AddFacet(), MeshCore::MeshFacetGrid::AddFacet(), MeshGui::SoFCMeshNode::computeBBox(), MeshGui::SoFCMeshOpenEdge::computeBBox(), MeshGui::SoFCMeshFaceSet::computeBBox(), MeshGui::SoFCMeshObjectShape::computeBBox(), MeshGui::SoFCMeshOpenEdgeSet::computeBBox(), MeshGui::SoFCMeshSegmentShape::computeBBox(), MeshGui::SoFCMeshObjectBoundary::computeBBox(), MeshCore::PlaneFit::Dimension(), TechDraw::DrawViewPart::getBoxY(), Gui::Dialog::TransformStrategy::getRotationCenter(), Points::PointsGrid::InSide(), MeshCore::MeshGrid::Inside(), TechDraw::DrawViewSection::isReallyInBox(), TechDraw::DrawDimHelper::minMax(), Base::BoundBoxPy::PyInit(), Base::BoundBoxPy::representation(), PartDesignGui::ViewProviderDatumPlane::setExtents(), Base::BoundBoxPy::setYMax(), MeshCore::MeshAlgorithm::Surround(), and Gui::View3DInventorViewer::viewSelection().
◆ MaxZ
_Precision Base::BoundBox3< _Precision >::MaxZ |
Referenced by Inspection::MeshInspectGrid::AddFacet(), MeshCore::MeshFacetGrid::AddFacet(), MeshGui::SoFCMeshNode::computeBBox(), MeshGui::SoFCMeshOpenEdge::computeBBox(), MeshGui::SoFCMeshFaceSet::computeBBox(), MeshGui::SoFCMeshObjectShape::computeBBox(), MeshGui::SoFCMeshOpenEdgeSet::computeBBox(), MeshGui::SoFCMeshSegmentShape::computeBBox(), MeshGui::SoFCMeshObjectBoundary::computeBBox(), Gui::Dialog::TransformStrategy::getRotationCenter(), Points::PointsGrid::InSide(), MeshCore::MeshGrid::Inside(), TechDraw::DrawViewSection::isReallyInBox(), Base::BoundBoxPy::PyInit(), Base::BoundBoxPy::representation(), PartDesignGui::ViewProviderDatumLine::setExtents(), Base::BoundBoxPy::setZMax(), MeshCore::MeshAlgorithm::Surround(), and Gui::View3DInventorViewer::viewSelection().
◆ MinX
_Precision Base::BoundBox3< _Precision >::MinX |
Public attributes.
Referenced by Inspection::MeshInspectGrid::AddFacet(), MeshCore::MeshFacetGrid::AddFacet(), PathSimulator::PathSim::BeginSimulation(), MeshGui::SoFCMeshNode::computeBBox(), MeshGui::SoFCMeshOpenEdge::computeBBox(), MeshGui::SoFCMeshFaceSet::computeBBox(), MeshGui::SoFCMeshObjectShape::computeBBox(), MeshGui::SoFCMeshOpenEdgeSet::computeBBox(), MeshGui::SoFCMeshSegmentShape::computeBBox(), MeshGui::SoFCMeshObjectBoundary::computeBBox(), FemGui::ViewProviderFEMMeshBuilder::createMesh(), MeshCore::PlaneFit::Dimension(), TechDraw::DrawViewPart::getBoxX(), Gui::Dialog::TransformStrategy::getRotationCenter(), Points::PointsGrid::InitGrid(), MeshCore::MeshGrid::InitGrid(), Inspection::MeshInspectGrid::InitGrid(), Points::PointsGrid::InSide(), MeshCore::MeshGrid::Inside(), TechDraw::DrawViewSection::isReallyInBox(), TechDraw::DrawDimHelper::minMax(), MeshInfoWatcher::onSelectionChanged(), Part::TopoShapePy::optimalBoundingBox(), Base::BoundBoxPy::PyInit(), Base::BoundBoxPy::representation(), MeshCore::MeshFacetGrid::SearchNearestFromPoint(), PartDesignGui::ViewProviderDatumPlane::setExtents(), Base::BoundBoxPy::setXMin(), MeshCore::MeshAlgorithm::Surround(), and Gui::View3DInventorViewer::viewSelection().
◆ MinY
_Precision Base::BoundBox3< _Precision >::MinY |
Referenced by Inspection::MeshInspectGrid::AddFacet(), MeshCore::MeshFacetGrid::AddFacet(), PathSimulator::PathSim::BeginSimulation(), MeshGui::SoFCMeshNode::computeBBox(), MeshGui::SoFCMeshOpenEdge::computeBBox(), MeshGui::SoFCMeshFaceSet::computeBBox(), MeshGui::SoFCMeshObjectShape::computeBBox(), MeshGui::SoFCMeshOpenEdgeSet::computeBBox(), MeshGui::SoFCMeshSegmentShape::computeBBox(), MeshGui::SoFCMeshObjectBoundary::computeBBox(), FemGui::ViewProviderFEMMeshBuilder::createMesh(), MeshCore::PlaneFit::Dimension(), TechDraw::DrawViewPart::getBoxY(), Gui::Dialog::TransformStrategy::getRotationCenter(), Points::PointsGrid::InitGrid(), MeshCore::MeshGrid::InitGrid(), Inspection::MeshInspectGrid::InitGrid(), Points::PointsGrid::InSide(), MeshCore::MeshGrid::Inside(), TechDraw::DrawViewSection::isReallyInBox(), TechDraw::DrawDimHelper::minMax(), Base::BoundBoxPy::PyInit(), Base::BoundBoxPy::representation(), MeshCore::MeshFacetGrid::SearchNearestFromPoint(), PartDesignGui::ViewProviderDatumPlane::setExtents(), Base::BoundBoxPy::setYMin(), MeshCore::MeshAlgorithm::Surround(), and Gui::View3DInventorViewer::viewSelection().
◆ MinZ
_Precision Base::BoundBox3< _Precision >::MinZ |
Referenced by Inspection::MeshInspectGrid::AddFacet(), MeshCore::MeshFacetGrid::AddFacet(), PathSimulator::PathSim::BeginSimulation(), MeshGui::SoFCMeshNode::computeBBox(), MeshGui::SoFCMeshOpenEdge::computeBBox(), MeshGui::SoFCMeshFaceSet::computeBBox(), MeshGui::SoFCMeshObjectShape::computeBBox(), MeshGui::SoFCMeshOpenEdgeSet::computeBBox(), MeshGui::SoFCMeshSegmentShape::computeBBox(), MeshGui::SoFCMeshObjectBoundary::computeBBox(), FemGui::ViewProviderFEMMeshBuilder::createMesh(), Gui::Dialog::TransformStrategy::getRotationCenter(), Points::PointsGrid::InitGrid(), MeshCore::MeshGrid::InitGrid(), Inspection::MeshInspectGrid::InitGrid(), Points::PointsGrid::InSide(), MeshCore::MeshGrid::Inside(), TechDraw::DrawViewSection::isReallyInBox(), Base::BoundBoxPy::PyInit(), Base::BoundBoxPy::representation(), MeshCore::MeshFacetGrid::SearchNearestFromPoint(), PartDesignGui::ViewProviderDatumLine::setExtents(), Base::BoundBoxPy::setZMin(), MeshCore::MeshAlgorithm::Surround(), and Gui::View3DInventorViewer::viewSelection().
The documentation for this class was generated from the following file:
- src/Base/BoundBox.h