PeriDEM 0.3.0
PeriDEM -- Peridynamics-based high-fidelity model for granular media
Loading...
Searching...
No Matches
geom::Rectangle Class Reference

Defines Rectangle. More...

#include <geomObjects.h>

Inheritance diagram for geom::Rectangle:
Collaboration diagram for geom::Rectangle:

Public Member Functions

 Rectangle ()
 Constructor.
 
 Rectangle (double Lx, double Ly, util::Point x=util::Point(), std::string description="")
 Constructor.
 
 Rectangle (const Rectangle &other)
 Copy constructor.
 
 Rectangle (util::Point x1, util::Point x2, std::string description="")
 Constructor.
 
Rectangleoperator= (const Rectangle &other)
 Assignment operator.
 
void transform (const util::Point &translation, const double &scale, const double &angle, const util::Point &axis, const util::Point *rotationPoint) override
 Similarity about pivot \(\mathbf p\) (default: old center d_x), then rigid displacement \(\mathbf t\) = translation: \(\mathbf y = \mathbf p + s\,\mathbf R(\mathbf x-\mathbf p) + \mathbf t\). When \(\theta=0\) and \(s=1\), \(\mathbf y = \mathbf x + \mathbf t\) for every point and the center.
 
bool wallContactQuery (const util::Point &x, WallContactHit &hit) const override
 
double volume () const override
 Computes the volume (area in 2d, length in 1d) of object.
 
util::Point center () const override
 Computes the center of object.
 
std::pair< util::Point, util::Pointbox () const override
 Computes the bounding box of object.
 
std::pair< util::Point, util::Pointbox (const double &tol) const override
 Computes the bounding box of object.
 
double inscribedRadius () const override
 Computes the radius of biggest circle/sphere completely within the object.
 
double boundingRadius () const override
 Computes the radius of smallest circle/sphere such that object can be fit into it.
 
std::string printStr (int nt, int lvl) const override
 Returns the string containing printable information about the object.
 
void print (int nt, int lvl) const override
 Prints the information about the object.
 
void print () const override
 Prints the information about the object.
 
Interaction with point
bool isInside (const util::Point &x) const override
 Checks if point is inside this object.
 
bool isOutside (const util::Point &x) const override
 Checks if point is outside of this object.
 
bool isNear (const util::Point &x, const double &tol) const override
 Checks if point is within given distance of this object.
 
bool isNearBoundary (const util::Point &x, const double &tol, const bool &within) const override
 cons
 
bool doesIntersect (const util::Point &x) const override
 Checks if point lies exactly on the boundary.
 
Interaction with box
bool isInside (const std::pair< util::Point, util::Point > &box) const override
 Checks if box is completely inside.
 
bool isOutside (const std::pair< util::Point, util::Point > &box) const override
 Checks if box is outside of the object.
 
bool isNear (const std::pair< util::Point, util::Point > &box, const double &tol) const override
 Checks if box is within given distance of this object.
 
bool doesIntersect (const std::pair< util::Point, util::Point > &box) const override
 Checks if box intersects this object.
 
- Public Member Functions inherited from geom::GeomObject
 GeomObject (std::string name="", std::string description="")
 Constructor.
 

Data Fields

std::vector< util::Pointd_vertices
 Vertices.
 
util::Point d_x
 Center.
 
double d_Lx
 Edge length of a rectangle in x-direction.
 
double d_Ly
 Edge length of a rectangle in y-direction.
 
double d_r
 Radius of bounding circle.
 
- Data Fields inherited from geom::GeomObject
const std::string d_name
 name of object
 
const std::string d_description
 Further description of object.
 
std::vector< std::string > d_tags
 Tags/attributes about the object.
 

Detailed Description

Defines Rectangle.

Definition at line 1254 of file geomObjects.h.

Constructor & Destructor Documentation

◆ Rectangle() [1/4]

geom::Rectangle::Rectangle ( )
inline

Constructor.

Definition at line 1275 of file geomObjects.h.

1276 : GeomObject("rectangle", ""),
1277 d_Lx(0.),
1278 d_Ly(0.),
1279 d_r(0.),
1280 d_x(util::Point()),
1281 d_vertices({
1284 }) {
1285 };
GeomObject(std::string name="", std::string description="")
Constructor.
std::vector< util::Point > d_vertices
Vertices.
double d_r
Radius of bounding circle.
double d_Lx
Edge length of a rectangle in x-direction.
double d_Ly
Edge length of a rectangle in y-direction.
util::Point d_x
Center.
A structure to represent 3d vectors.
Definition point.h:30

◆ Rectangle() [2/4]

geom::Rectangle::Rectangle ( double  Lx,
double  Ly,
util::Point  x = util::Point(),
std::string  description = "" 
)
inline

Constructor.

Parameters
LxLength along x-direction
LyLength along y-direction
xCenter point
descriptionDescription of object (e.g., further classification or any tag)

Definition at line 1295 of file geomObjects.h.

1297 : GeomObject("rectangle", description),
1298 d_Lx(Lx),
1299 d_Ly(Ly),
1300 d_r(0.5 * std::sqrt(std::pow(Lx, 2) + std::pow(Ly, 2))),
1301 d_x(x) {
1302 d_vertices.push_back(
1303 x + util::Point(-0.5 * d_Lx, -0.5 * d_Ly, 0.));
1304 d_vertices.push_back(
1305 x + util::Point(0.5 * d_Lx, -0.5 * d_Ly, 0.));
1306 d_vertices.push_back(x + util::Point(0.5 * d_Lx, 0.5 * d_Ly, 0.));
1307 d_vertices.push_back(
1308 x + util::Point(-0.5 * d_Lx, 0.5 * d_Ly, 0.));
1309 };

References d_Lx, d_Ly, and d_vertices.

◆ Rectangle() [3/4]

geom::Rectangle::Rectangle ( const Rectangle other)
inline

Copy constructor.

Parameters
otherObject to copy from

Definition at line 1315 of file geomObjects.h.

1316 : GeomObject(other.d_name, other.d_description),
1317 d_Lx(other.d_Lx),
1318 d_Ly(other.d_Ly),
1319 d_r(other.d_r),
1320 d_x(other.d_x),
1321 d_vertices(other.d_vertices) {
1322 d_tags = other.d_tags;
1323 }
std::vector< std::string > d_tags
Tags/attributes about the object.

References geom::GeomObject::d_tags.

◆ Rectangle() [4/4]

geom::Rectangle::Rectangle ( util::Point  x1,
util::Point  x2,
std::string  description = "" 
)
inline

Constructor.

Parameters
x1Left-bottom corner point
x2Right-top corner point
descriptionDescription of object (e.g., further classification or any tag)

Definition at line 1332 of file geomObjects.h.

1334 : GeomObject("rectangle", description),
1335 d_Lx(x2.d_x - x1.d_x),
1336 d_Ly(x2.d_y - x1.d_y),
1337 d_r(0.5 *
1338 std::sqrt(std::pow(d_Lx, 2) + std::pow(d_Ly, 2))),
1339 d_x(0.5 * (x1 + x2)) {
1340 d_vertices.push_back(x1);
1341 d_vertices.push_back(util::Point(x1.d_x + d_Lx, x1.d_y, x1.d_z));
1342 d_vertices.push_back(x2);
1343 d_vertices.push_back(util::Point(x2.d_x - d_Lx, x2.d_y, x2.d_z));
1344 };
double d_y
the y coordinate
Definition point.h:36
double d_z
the z coordinate
Definition point.h:39
double d_x
the x coordinate
Definition point.h:33

References d_Lx, d_vertices, util::Point::d_x, util::Point::d_y, and util::Point::d_z.

Member Function Documentation

◆ boundingRadius()

double geom::Rectangle::boundingRadius ( ) const
overridevirtual

Computes the radius of smallest circle/sphere such that object can be fit into it.

Returns
Radius Radius of bounding circle/sphere

Reimplemented from geom::GeomObject.

Definition at line 657 of file geomObjects.cpp.

657 {
658
659 return d_r;
660 }

References d_r.

◆ box() [1/2]

std::pair< util::Point, util::Point > geom::Rectangle::box ( ) const
overridevirtual

Computes the bounding box of object.

Returns
Pair Left-bottom-back and right-top-front corner points of box

Reimplemented from geom::GeomObject.

Definition at line 638 of file geomObjects.cpp.

638 {
639
640 return box(0.);
641 }
std::pair< util::Point, util::Point > box() const override
Computes the bounding box of object.

References box().

Referenced by box(), doesIntersect(), isInside(), isNear(), isNear(), isOutside(), printStr(), and wallContactQuery().

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

◆ box() [2/2]

std::pair< util::Point, util::Point > geom::Rectangle::box ( const double &  tol) const
overridevirtual

Computes the bounding box of object.

Parameters
tolTolerance/padding used in creating bounding box
Returns
Pair Left-bottom-back and right-top-front corner points of box

Reimplemented from geom::GeomObject.

Definition at line 643 of file geomObjects.cpp.

644 {
645
646 return {util::Point(d_vertices[0].d_x - tol, d_vertices[0].d_y - tol,
647 0.),
648 util::Point(d_vertices[2].d_x + tol, d_vertices[2].d_y + tol,
649 0.)};
650 }

References d_vertices, and d_x.

◆ center()

util::Point geom::Rectangle::center ( ) const
overridevirtual

Computes the center of object.

Returns
Point Coordinates of center

Reimplemented from geom::GeomObject.

Definition at line 634 of file geomObjects.cpp.

634 {
635 return d_x;
636 }

References d_x.

◆ doesIntersect() [1/2]

bool geom::Rectangle::doesIntersect ( const std::pair< util::Point, util::Point > &  box) const
overridevirtual

Checks if box intersects this object.

Parameters
boxBox
Returns
True True if intersects

Reimplemented from geom::GeomObject.

Definition at line 729 of file geomObjects.cpp.

730 {
731
732 // need to check all four corner points
733 for (auto p: geom::getCornerPoints(2, box))
734 if (this->isInside(p))
735 return true;
736
737 return false;
738 }
bool isInside(const util::Point &x) const override
Checks if point is inside this object.
std::vector< util::Point > getCornerPoints(size_t dim, const std::pair< util::Point, util::Point > &box)
Returns all corner points in the box.

References box(), geom::getCornerPoints(), and isInside().

Here is the call graph for this function:

◆ doesIntersect() [2/2]

bool geom::Rectangle::doesIntersect ( const util::Point x) const
overridevirtual

Checks if point lies exactly on the boundary.

Parameters
xPoint
Returns
True True if it lies on the boundary

Reimplemented from geom::GeomObject.

Definition at line 696 of file geomObjects.cpp.

696 {
697
698 return isNearBoundary(x, 1.0E-8, false);
699 }
bool isNearBoundary(const util::Point &x, const double &tol, const bool &within) const override
cons

References isNearBoundary().

Here is the call graph for this function:

◆ inscribedRadius()

double geom::Rectangle::inscribedRadius ( ) const
overridevirtual

Computes the radius of biggest circle/sphere completely within the object.

Returns
Radius Radius of inscribed circle/sphere

Reimplemented from geom::GeomObject.

Definition at line 652 of file geomObjects.cpp.

652 {
653
654 return util::isLess(d_Lx, d_Ly) ? d_Lx : d_Ly;
655 }
bool isLess(const double &a, const double &b)
Returns true if a < b.
Definition function.cpp:20

References d_Lx, d_Ly, and util::isLess().

Here is the call graph for this function:

◆ isInside() [1/2]

bool geom::Rectangle::isInside ( const std::pair< util::Point, util::Point > &  box) const
overridevirtual

Checks if box is completely inside.

Parameters
boxBox
Returns
True True if box lies inside

Reimplemented from geom::GeomObject.

Definition at line 701 of file geomObjects.cpp.

702 {
703
704 for (auto p: geom::getCornerPoints(2, box))
705 if (!this->isInside(p))
706 return false;
707
708 return true;
709 }

References box(), geom::getCornerPoints(), and isInside().

Here is the call graph for this function:

◆ isInside() [2/2]

bool geom::Rectangle::isInside ( const util::Point x) const
overridevirtual

Checks if point is inside this object.

Parameters
xPoint
Returns
True If point lies inside

Reimplemented from geom::GeomObject.

Definition at line 662 of file geomObjects.cpp.

662 {
664 }
bool isPointInsideRectangle(util::Point x, double x_min, double x_max, double y_min, double y_max)
Checks if point is inside a rectangle.

References d_vertices, and geom::isPointInsideRectangle().

Referenced by doesIntersect(), isInside(), isOutside(), and isOutside().

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

◆ isNear() [1/2]

bool geom::Rectangle::isNear ( const std::pair< util::Point, util::Point > &  box,
const double &  tol 
) const
overridevirtual

Checks if box is within given distance of this object.

Parameters
boxBox
tolTolerance used in checking the nearness
Returns
True True if box is inside within the tol distance

Reimplemented from geom::GeomObject.

Definition at line 722 of file geomObjects.cpp.

724 {
725
726 return geom::areBoxesNear(this->box(), box, tol, 2);
727 }
bool areBoxesNear(const std::pair< util::Point, util::Point > &b1, const std::pair< util::Point, util::Point > &b2, const double &tol, size_t dim)
Checks if given two boxes are within given distance from each other.

References geom::areBoxesNear(), and box().

Here is the call graph for this function:

◆ isNear() [2/2]

bool geom::Rectangle::isNear ( const util::Point x,
const double &  tol 
) const
overridevirtual

Checks if point is within given distance of this object.

Parameters
xPoint
tolTolerance used in checking the nearness
Returns
True True if within the tol distance

Reimplemented from geom::GeomObject.

Definition at line 670 of file geomObjects.cpp.

671 {
672
673 // get a bigger box containing this object
674 auto bbox = box(tol);
675
676 return geom::isPointInsideBox(x, 2, bbox);
677 }
bool isPointInsideBox(util::Point x, size_t dim, const std::pair< util::Point, util::Point > &box)
Returns true if point is inside box.

References box(), and geom::isPointInsideBox().

Referenced by isNearBoundary().

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

◆ isNearBoundary()

bool geom::Rectangle::isNearBoundary ( const util::Point x,
const double &  tol,
const bool &  within 
) const
overridevirtual

cons

cons

Reimplemented from geom::GeomObject.

Definition at line 679 of file geomObjects.cpp.

681 {
682
683 // check if particle is inside the object
684 if (!isNear(x, within ? 0. : tol))
685 return false;
686
687 bool near_x_edge = util::isLess(std::abs(x.d_x - d_vertices[0].d_x), tol) or
688 util::isLess(std::abs(x.d_x - d_vertices[2].d_x), tol);
689
690 bool near_y_edge = util::isLess(std::abs(x.d_y - d_vertices[0].d_y), tol) or
691 util::isLess(std::abs(x.d_y - d_vertices[2].d_y), tol);
692
693 return near_x_edge || near_y_edge;
694 }
bool isNear(const util::Point &x, const double &tol) const override
Checks if point is within given distance of this object.

References d_vertices, util::Point::d_x, util::Point::d_y, util::isLess(), and isNear().

Referenced by doesIntersect().

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

◆ isOutside() [1/2]

bool geom::Rectangle::isOutside ( const std::pair< util::Point, util::Point > &  box) const
overridevirtual

Checks if box is outside of the object.

Parameters
boxBox
Returns
True True if box lies outside

Reimplemented from geom::GeomObject.

Definition at line 711 of file geomObjects.cpp.

712 {
713
714 bool intersect = false;
715 for (auto p: geom::getCornerPoints(2, box))
716 if (!intersect)
717 intersect = this->isInside(p);
718
719 return !intersect;
720 }

References box(), geom::getCornerPoints(), and isInside().

Here is the call graph for this function:

◆ isOutside() [2/2]

bool geom::Rectangle::isOutside ( const util::Point x) const
overridevirtual

Checks if point is outside of this object.

Parameters
xPoint
Returns
True If point lies outside

Reimplemented from geom::GeomObject.

Definition at line 666 of file geomObjects.cpp.

666 {
667 return !isInside(x);
668 }

References isInside().

Here is the call graph for this function:

◆ operator=()

Rectangle & geom::Rectangle::operator= ( const Rectangle other)
inline

Assignment operator.

Parameters
otherObject to copy from
Returns
Reference to this object

Definition at line 1351 of file geomObjects.h.

1351 {
1352 if (this != &other) {
1353 // Copy base class members
1354 d_tags = other.d_tags;
1355
1356 // Copy member variables
1357 d_Lx = other.d_Lx;
1358 d_Ly = other.d_Ly;
1359 d_r = other.d_r;
1360 d_x = other.d_x;
1361 d_vertices = other.d_vertices;
1362 }
1363 return *this;
1364 }

References d_Lx, d_Ly, d_r, geom::GeomObject::d_tags, d_vertices, and d_x.

◆ print() [1/2]

void geom::Rectangle::print ( ) const
inlineoverridevirtual

Prints the information about the object.

Reimplemented from geom::GeomObject.

Definition at line 1503 of file geomObjects.h.

1503{ print(0, 0); };
void print() const override
Prints the information about the object.

References print().

Referenced by print().

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

◆ print() [2/2]

void geom::Rectangle::print ( int  nt,
int  lvl 
) const
inlineoverridevirtual

Prints the information about the object.

Parameters
ntNumber of tabs to append before printing
lvlInformation level (higher means more information)

Reimplemented from geom::GeomObject.

Definition at line 1496 of file geomObjects.h.

1496 {
1497 std::cout << printStr(nt, lvl);
1498 };
std::string printStr(int nt, int lvl) const override
Returns the string containing printable information about the object.

References printStr().

Here is the call graph for this function:

◆ printStr()

std::string geom::Rectangle::printStr ( int  nt,
int  lvl 
) const
overridevirtual

Returns the string containing printable information about the object.

Parameters
ntNumber of tabs to append before printing
lvlInformation level (higher means more information)
Returns
string String containing printable information about the object

Reimplemented from geom::GeomObject.

Definition at line 740 of file geomObjects.cpp.

740 {
741
742 auto tabS = util::io::getTabS(nt);
743
744 std::ostringstream oss;
745
746 oss << tabS << "------- Rectangle --------" << std::endl << std::endl;
747 oss << tabS << "Name = " << d_name << std::endl;
748 oss << tabS << "Lengths (Lx, Ly) = (" << d_Lx << ", " << d_Ly << ")" << std::endl;
749 oss << tabS << "Bounding circle radius = " << d_r << std::endl;
750 oss << tabS << "Vertices = " << util::io::printStr(d_vertices, 0) << std::endl;
751 oss << std::endl;
752
753 if (lvl > 0)
754 oss << tabS << "Bounding box: "
755 << util::io::printBoxStr(box(0.), nt + 1);
756
757 if (lvl == 0)
758 oss << std::endl;
759
760 return oss.str();
761 }
const std::string d_name
name of object
std::string printBoxStr(const std::pair< util::Point, util::Point > &box, int nt=print_default_tab)
Returns formatted string for output.
Definition io.h:188
std::string getTabS(int nt)
Returns tab spaces of a given size.
Definition io.h:39
std::string printStr(const T &msg, int nt=print_default_tab)
Returns formatted string for output.
Definition io.h:53

References box(), d_Lx, d_Ly, geom::GeomObject::d_name, d_r, d_vertices, util::io::getTabS(), util::io::printBoxStr(), and util::io::printStr().

Referenced by print().

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

◆ transform()

void geom::Rectangle::transform ( const util::Point translation,
const double &  scale,
const double &  angle,
const util::Point axis,
const util::Point rotationPoint 
)
inlineoverridevirtual

Similarity about pivot \(\mathbf p\) (default: old center d_x), then rigid displacement \(\mathbf t\) = translation: \(\mathbf y = \mathbf p + s\,\mathbf R(\mathbf x-\mathbf p) + \mathbf t\). When \(\theta=0\) and \(s=1\), \(\mathbf y = \mathbf x + \mathbf t\) for every point and the center.

Parameters
translationRigid translation vector \(\mathbf t\) (added after rotate+scale about \(\mathbf p\))
scaleUniform scale factor
angleRotation angle (radians)
axisAxis of rotation
rotationPointIf non-null, use as \(\mathbf p\); if null, use old d_x as pivot.

Reimplemented from geom::GeomObject.

Definition at line 1368 of file geomObjects.h.

1369 {
1370 // Scale the dimensions
1371 d_Lx *= scale;
1372 d_Ly *= scale;
1373 d_r *= scale;
1374
1375 const util::Point c0 = d_x;
1376 for (auto &v : d_vertices) {
1377 v = mapSimilarity(v, c0, translation, scale, angle, axis, rotationPoint);
1378 }
1379 d_x = mapSimilarity(c0, c0, translation, scale, angle, axis, rotationPoint);
1380 }
util::Point mapSimilarity(const util::Point &x, const util::Point &pivotDefault, const util::Point &t, double scale, double angle, const util::Point &axis, const util::Point *rotationPoint)
Definition geomObjects.h:55

References d_Lx, d_Ly, d_r, d_vertices, d_x, and geom::mapSimilarity().

Here is the call graph for this function:

◆ volume()

double geom::Rectangle::volume ( ) const
overridevirtual

Computes the volume (area in 2d, length in 1d) of object.

Returns
Volume Volume of object

Reimplemented from geom::GeomObject.

Definition at line 630 of file geomObjects.cpp.

630 {
631 return d_Lx * d_Ly;
632 }

References d_Lx, and d_Ly.

◆ wallContactQuery()

bool geom::Rectangle::wallContactQuery ( const util::Point x,
WallContactHit hit 
) const
overridevirtual

Axis-aligned / vertex box surface (outward from filled rectangle).

Reimplemented from geom::GeomObject.

Definition at line 560 of file geomObjects.cpp.

561 {
562 hit = WallContactHit();
563 // Axis-aligned SDF from current bounding box (walls are typically AA).
564 const auto bb = box();
565 const double x0 = bb.first.d_x;
566 const double y0 = bb.first.d_y;
567 const double x1 = bb.second.d_x;
568 const double y1 = bb.second.d_y;
569 if (!(x1 > x0) || !(y1 > y0))
570 return false;
571
572 const double dx = std::max(x0 - x.d_x, x.d_x - x1);
573 const double dy = std::max(y0 - x.d_y, x.d_y - y1);
574 const bool outside = dx > 0. || dy > 0.;
575
576 if (outside) {
577 // Closest point on AABB, gap = exterior distance.
578 util::Point c = x;
579 if (x.d_x < x0)
580 c.d_x = x0;
581 else if (x.d_x > x1)
582 c.d_x = x1;
583 if (x.d_y < y0)
584 c.d_y = y0;
585 else if (x.d_y > y1)
586 c.d_y = y1;
587 c.d_z = x.d_z;
588 const util::Point d = x - c;
589 const double dist = d.length();
590 if (!(dist > 1.e-16)) {
591 // On a face: pick dominant exterior axis.
592 if (dx >= dy) {
593 hit.outward_n = util::Point(x.d_x < x0 ? -1. : 1., 0., 0.);
594 } else {
595 hit.outward_n = util::Point(0., x.d_y < y0 ? -1. : 1., 0.);
596 }
597 hit.signed_gap = 0.;
598 hit.closest = c;
599 } else {
600 hit.outward_n = d / dist;
601 hit.signed_gap = dist;
602 hit.closest = c;
603 }
604 } else {
605 // Inside: negative distance to nearest face.
606 const double dl = x.d_x - x0;
607 const double dr = x1 - x.d_x;
608 const double db = x.d_y - y0;
609 const double dt = y1 - x.d_y;
610 const double m = std::min(std::min(dl, dr), std::min(db, dt));
611 hit.signed_gap = -m;
612 if (m == dl) {
613 hit.outward_n = util::Point(-1., 0., 0.);
614 hit.closest = util::Point(x0, x.d_y, x.d_z);
615 } else if (m == dr) {
616 hit.outward_n = util::Point(1., 0., 0.);
617 hit.closest = util::Point(x1, x.d_y, x.d_z);
618 } else if (m == db) {
619 hit.outward_n = util::Point(0., -1., 0.);
620 hit.closest = util::Point(x.d_x, y0, x.d_z);
621 } else {
622 hit.outward_n = util::Point(0., 1., 0.);
623 hit.closest = util::Point(x.d_x, y1, x.d_z);
624 }
625 }
626 hit.active = true;
627 return true;
628 }
double length() const
Computes the Euclidean length of the vector.
Definition point.h:124

References geom::WallContactHit::active, box(), geom::WallContactHit::closest, util::Point::d_x, util::Point::d_y, util::Point::d_z, util::Point::length(), geom::WallContactHit::outward_n, and geom::WallContactHit::signed_gap.

Referenced by main().

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

Field Documentation

◆ d_Lx

double geom::Rectangle::d_Lx

Edge length of a rectangle in x-direction.

Definition at line 1263 of file geomObjects.h.

Referenced by inscribedRadius(), operator=(), printStr(), Rectangle(), Rectangle(), transform(), and volume().

◆ d_Ly

double geom::Rectangle::d_Ly

Edge length of a rectangle in y-direction.

Definition at line 1266 of file geomObjects.h.

Referenced by inscribedRadius(), operator=(), printStr(), Rectangle(), transform(), and volume().

◆ d_r

double geom::Rectangle::d_r

Radius of bounding circle.

Definition at line 1269 of file geomObjects.h.

Referenced by boundingRadius(), operator=(), printStr(), and transform().

◆ d_vertices

◆ d_x

util::Point geom::Rectangle::d_x

Center.

Definition at line 1260 of file geomObjects.h.

Referenced by box(), center(), operator=(), and transform().


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