Point class final
#include <Rodin/Geometry/Point.h>
Concrete implementation of a spatial point on a mesh.
This class provides a complete implementation of PointBase with storage for reference coordinates. Points can be constructed with various combinations of reference and physical coordinates.
Usage Examples
// Create a point at the centroid of a cell in reference coordinates Math::SpatialPoint rc(3); rc << 0.25, 0.25, 0.25; // Barycentric coords for tetrahedron Point p(cell, rc); // Access physical coordinates std::cout << "x = " << p.x() << ", y = " << p.y() << ", z = " << p.z() << std::endl; // Compute Jacobian information const auto& J = p.getJacobian(); Real detJ = p.getJacobianDeterminant();
Thread Safety
Not thread-safe. Each thread should use separate Point instances.
Base classes
- class PointBase
- Base class for spatial points on a discrete mesh.
Public types
Constructors, destructors, conversion operators
-
Point(const Polytope& polytope,
const Math::
SpatialPoint& rc) explicit - Constructs a point with reference coordinates.
-
Point(const Polytope& polytope,
Math::
SpatialPoint&& rc) explicit - Constructs a point with reference coordinates (move).
-
Point(const Polytope& polytope,
const Math::
SpatialPoint& rc, const Math:: SpatialPoint& pc) explicit - Constructs with both reference and physical coordinates.
-
Point(const Polytope& polytope,
const Math::
SpatialPoint& rc, Math:: SpatialPoint&& pc) explicit - Constructs with reference and physical coordinates (mixed).
-
Point(const Polytope& polytope,
Math::
SpatialPoint&& rc, const Math:: SpatialPoint& pc) explicit - Constructs with reference and physical coordinates (mixed).
-
Point(const Polytope& polytope,
Math::
SpatialPoint&& rc, Math:: SpatialPoint&& pc) explicit - Constructs with reference and physical coordinates (move both).
- Point(const Point& other)
- Copy constructor.
- Point(Point&& other)
- Move constructor.
Public functions
-
auto getReferenceCoordinates() const -> const Math::
SpatialPoint& override - Gets the reference coordinates.
Function documentation
Rodin:: Geometry:: Point:: Point(const Polytope& polytope,
const Math:: SpatialPoint& rc) explicit
Constructs a point with reference coordinates.
| Parameters | |
|---|---|
| polytope in | Polytope containing the point |
| rc in | Reference coordinates |
Rodin:: Geometry:: Point:: Point(const Polytope& polytope,
Math:: SpatialPoint&& rc) explicit
Constructs a point with reference coordinates (move).
| Parameters | |
|---|---|
| polytope in | Polytope containing the point |
| rc in | Reference coordinates |
Rodin:: Geometry:: Point:: Point(const Polytope& polytope,
const Math:: SpatialPoint& rc,
const Math:: SpatialPoint& pc) explicit
Constructs with both reference and physical coordinates.
| Parameters | |
|---|---|
| polytope in | Polytope containing the point |
| rc in | Reference coordinates |
| pc in | Physical coordinates |
Rodin:: Geometry:: Point:: Point(const Polytope& polytope,
const Math:: SpatialPoint& rc,
Math:: SpatialPoint&& pc) explicit
Constructs with reference and physical coordinates (mixed).
| Parameters | |
|---|---|
| polytope in | Polytope containing the point |
| rc in | Reference coordinates |
| pc in | Physical coordinates (move) |
Rodin:: Geometry:: Point:: Point(const Polytope& polytope,
Math:: SpatialPoint&& rc,
const Math:: SpatialPoint& pc) explicit
Constructs with reference and physical coordinates (mixed).
| Parameters | |
|---|---|
| polytope in | Polytope containing the point |
| rc in | Reference coordinates (move) |
| pc in | Physical coordinates |
Rodin:: Geometry:: Point:: Point(const Polytope& polytope,
Math:: SpatialPoint&& rc,
Math:: SpatialPoint&& pc) explicit
Constructs with reference and physical coordinates (move both).
| Parameters | |
|---|---|
| polytope in | Polytope containing the point |
| rc in | Reference coordinates (move) |
| pc in | Physical coordinates (move) |
const Math:: SpatialPoint& Rodin:: Geometry:: Point:: getReferenceCoordinates() const override
Gets the reference coordinates.
| Returns | Reference coordinate vector |
|---|