gmsh-TingyuanDoc  0.1
An Open-Source Timing-driven Analytical Mixed-size FPGA Placer
SOrientedBoundingBox Class Reference

#include <SOrientedBoundingBox.h>

Collaboration diagram for SOrientedBoundingBox:

Public Member Functions

 SOrientedBoundingBox ()
 
 SOrientedBoundingBox (SVector3 &center, double sizeX, double sizeY, double sizeZ, const SVector3 &axisX, const SVector3 &axisY, const SVector3 &axisZ)
 
 SOrientedBoundingBox (SOrientedBoundingBox *other)
 
const SVector3getCenter () const
 
double getCenterX () const
 
double getCenterY () const
 
double getCenterZ () const
 
SVector3 getSize () const
 
double getMaxSize () const
 
double getMinSize () const
 
SVector3 getAxis (int axis) const
 valid values for axis are 0 (X-axis), 1 (Y-axis) or 2 (Z-axis) More...
 
bool intersects (SOrientedBoundingBox &obb) const
 

Static Public Member Functions

static SOrientedBoundingBoxbuildOBB (std::vector< SPoint3 > &vertices)
 
static double compare (SOrientedBoundingBox &obb1, SOrientedBoundingBox &obb2)
 

Public Attributes

double p1x
 
double p1y
 
double p1z
 
double p2x
 
double p2y
 
double p2z
 
double p3x
 
double p3y
 
double p3z
 
double p4x
 
double p4y
 
double p4z
 
double p5x
 
double p5y
 
double p5z
 
double p6x
 
double p6y
 
double p6z
 
double p7x
 
double p7y
 
double p7z
 
double p8x
 
double p8y
 
double p8z
 

Private Member Functions

void fillp ()
 

Private Attributes

SVector3 center
 
SVector3 size
 
SVector3 axisX
 
SVector3 axisY
 
SVector3 axisZ
 

Detailed Description

Definition at line 33 of file SOrientedBoundingBox.h.

Constructor & Destructor Documentation

◆ SOrientedBoundingBox() [1/3]

SOrientedBoundingBox::SOrientedBoundingBox ( )

Definition at line 71 of file SOrientedBoundingBox.cpp.

Referenced by buildOBB().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ SOrientedBoundingBox() [2/3]

SOrientedBoundingBox::SOrientedBoundingBox ( SVector3 center,
double  sizeX,
double  sizeY,
double  sizeZ,
const SVector3 axisX,
const SVector3 axisY,
const SVector3 axisZ 
)

Definition at line 81 of file SOrientedBoundingBox.cpp.

Here is the call graph for this function:

◆ SOrientedBoundingBox() [3/3]

SOrientedBoundingBox::SOrientedBoundingBox ( SOrientedBoundingBox other)

Definition at line 98 of file SOrientedBoundingBox.cpp.

Here is the call graph for this function:

Member Function Documentation

◆ buildOBB()

SOrientedBoundingBox * SOrientedBoundingBox::buildOBB ( std::vector< SPoint3 > &  vertices)
static

Definition at line 150 of file SOrientedBoundingBox.cpp.

Referenced by GRegion::getOBB(), GEdge::getOBB(), and GFace::getOBB().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ compare()

double SOrientedBoundingBox::compare ( SOrientedBoundingBox obb1,
SOrientedBoundingBox obb2 
)
static

Definition at line 553 of file SOrientedBoundingBox.cpp.

Referenced by GeomMeshMatcher::matchEdges(), GeomMeshMatcher::matchFaces(), and GeomMeshMatcher::matchRegions().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ fillp()

void SOrientedBoundingBox::fillp ( )
private

Definition at line 32 of file SOrientedBoundingBox.cpp.

Referenced by SOrientedBoundingBox().

Here is the caller graph for this function:

◆ getAxis()

SVector3 SOrientedBoundingBox::getAxis ( int  axis) const

valid values for axis are 0 (X-axis), 1 (Y-axis) or 2 (Z-axis)

Definition at line 108 of file SOrientedBoundingBox.cpp.

Referenced by compare(), intersects(), and SOrientedBoundingBox().

Here is the caller graph for this function:

◆ getCenter()

const SVector3& SOrientedBoundingBox::getCenter ( ) const
inline

Definition at line 47 of file SOrientedBoundingBox.h.

Referenced by compare(), intersects(), and SOrientedBoundingBox().

Here is the caller graph for this function:

◆ getCenterX()

double SOrientedBoundingBox::getCenterX ( ) const
inline

Definition at line 48 of file SOrientedBoundingBox.h.

◆ getCenterY()

double SOrientedBoundingBox::getCenterY ( ) const
inline

Definition at line 49 of file SOrientedBoundingBox.h.

◆ getCenterZ()

double SOrientedBoundingBox::getCenterZ ( ) const
inline

Definition at line 50 of file SOrientedBoundingBox.h.

◆ getMaxSize()

double SOrientedBoundingBox::getMaxSize ( ) const
inline

Definition at line 53 of file SOrientedBoundingBox.h.

◆ getMinSize()

double SOrientedBoundingBox::getMinSize ( ) const
inline

Definition at line 58 of file SOrientedBoundingBox.h.

◆ getSize()

SVector3 SOrientedBoundingBox::getSize ( ) const
inline

Definition at line 51 of file SOrientedBoundingBox.h.

Referenced by compare(), intersects(), and SOrientedBoundingBox().

Here is the caller graph for this function:

◆ intersects()

bool SOrientedBoundingBox::intersects ( SOrientedBoundingBox obb) const

Definition at line 119 of file SOrientedBoundingBox.cpp.

Here is the call graph for this function:

Member Data Documentation

◆ axisX

SVector3 SOrientedBoundingBox::axisX
private

Definition at line 88 of file SOrientedBoundingBox.h.

Referenced by fillp(), getAxis(), and SOrientedBoundingBox().

◆ axisY

SVector3 SOrientedBoundingBox::axisY
private

Definition at line 89 of file SOrientedBoundingBox.h.

Referenced by fillp(), getAxis(), and SOrientedBoundingBox().

◆ axisZ

SVector3 SOrientedBoundingBox::axisZ
private

Definition at line 90 of file SOrientedBoundingBox.h.

Referenced by fillp(), getAxis(), and SOrientedBoundingBox().

◆ center

SVector3 SOrientedBoundingBox::center
private

◆ p1x

double SOrientedBoundingBox::p1x

Definition at line 73 of file SOrientedBoundingBox.h.

Referenced by fillp().

◆ p1y

double SOrientedBoundingBox::p1y

Definition at line 73 of file SOrientedBoundingBox.h.

Referenced by fillp().

◆ p1z

double SOrientedBoundingBox::p1z

Definition at line 73 of file SOrientedBoundingBox.h.

Referenced by fillp().

◆ p2x

double SOrientedBoundingBox::p2x

Definition at line 74 of file SOrientedBoundingBox.h.

Referenced by fillp().

◆ p2y

double SOrientedBoundingBox::p2y

Definition at line 74 of file SOrientedBoundingBox.h.

Referenced by fillp().

◆ p2z

double SOrientedBoundingBox::p2z

Definition at line 74 of file SOrientedBoundingBox.h.

Referenced by fillp().

◆ p3x

double SOrientedBoundingBox::p3x

Definition at line 75 of file SOrientedBoundingBox.h.

Referenced by fillp().

◆ p3y

double SOrientedBoundingBox::p3y

Definition at line 75 of file SOrientedBoundingBox.h.

Referenced by fillp().

◆ p3z

double SOrientedBoundingBox::p3z

Definition at line 75 of file SOrientedBoundingBox.h.

Referenced by fillp().

◆ p4x

double SOrientedBoundingBox::p4x

Definition at line 76 of file SOrientedBoundingBox.h.

Referenced by fillp().

◆ p4y

double SOrientedBoundingBox::p4y

Definition at line 76 of file SOrientedBoundingBox.h.

Referenced by fillp().

◆ p4z

double SOrientedBoundingBox::p4z

Definition at line 76 of file SOrientedBoundingBox.h.

Referenced by fillp().

◆ p5x

double SOrientedBoundingBox::p5x

Definition at line 77 of file SOrientedBoundingBox.h.

Referenced by fillp().

◆ p5y

double SOrientedBoundingBox::p5y

Definition at line 77 of file SOrientedBoundingBox.h.

Referenced by fillp().

◆ p5z

double SOrientedBoundingBox::p5z

Definition at line 77 of file SOrientedBoundingBox.h.

Referenced by fillp().

◆ p6x

double SOrientedBoundingBox::p6x

Definition at line 78 of file SOrientedBoundingBox.h.

Referenced by fillp().

◆ p6y

double SOrientedBoundingBox::p6y

Definition at line 78 of file SOrientedBoundingBox.h.

Referenced by fillp().

◆ p6z

double SOrientedBoundingBox::p6z

Definition at line 78 of file SOrientedBoundingBox.h.

Referenced by fillp().

◆ p7x

double SOrientedBoundingBox::p7x

Definition at line 79 of file SOrientedBoundingBox.h.

Referenced by fillp().

◆ p7y

double SOrientedBoundingBox::p7y

Definition at line 79 of file SOrientedBoundingBox.h.

Referenced by fillp().

◆ p7z

double SOrientedBoundingBox::p7z

Definition at line 79 of file SOrientedBoundingBox.h.

Referenced by fillp().

◆ p8x

double SOrientedBoundingBox::p8x

Definition at line 80 of file SOrientedBoundingBox.h.

Referenced by fillp().

◆ p8y

double SOrientedBoundingBox::p8y

Definition at line 80 of file SOrientedBoundingBox.h.

Referenced by fillp().

◆ p8z

double SOrientedBoundingBox::p8z

Definition at line 80 of file SOrientedBoundingBox.h.

Referenced by fillp().

◆ size

SVector3 SOrientedBoundingBox::size
private

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