libMesh
|
This class defines a plane. More...
#include <plane.h>
Public Member Functions | |
Plane () | |
Dummy Constructor. More... | |
Plane (const Point &p, const Point &n) | |
Constructs a plane containing point p with normal n. More... | |
Plane (const Point &p0, const Point &p1, const Point &p2) | |
Constructs a plane containing the three points. More... | |
Plane (const Plane &other_plane) | |
Copy-constructor. More... | |
~Plane () | |
Destructor. More... | |
void | create_from_point_normal (const Point &p, const Point &n) |
Defines a plane containing point p with normal n. More... | |
void | create_from_three_points (const Point &p0, const Point &p1, const Point &p2) |
Defines a plane intersecting the three points p0, p1, and p2. More... | |
void | xy_plane (const Real zpos=0.) |
Creates an XY plane located at z=zpos. More... | |
void | xz_plane (const Real ypos=0.) |
Creates an XZ plane located at y=ypos. More... | |
void | yz_plane (const Real xpos=0.) |
Creates an YZ plane located at x=xpos. More... | |
virtual bool | above_surface (const Point &p) const override |
virtual bool | below_surface (const Point &p) const override |
virtual bool | on_surface (const Point &p) const override |
virtual Point | closest_point (const Point &p) const override |
virtual Point | unit_normal (const Point &p) const override |
const Point & | get_planar_point () const |
virtual Point | surface_coords (const Point &world_coords) const |
virtual Point | world_coords (const Point &surf_coords) const |
Private Member Functions | |
const Point & | normal () const |
Private Attributes | |
Point | _point |
The plane is defined by a point and a normal. More... | |
Point | _normal |
This class defines a plane.
|
default |
Dummy Constructor.
Constructs a plane containing point p with normal n.
Definition at line 34 of file plane.C.
References create_from_point_normal().
Constructs a plane containing the three points.
The normal is determined in a counter-clockwise sense. See the create_from_three_points method for more details.
Definition at line 42 of file plane.C.
References create_from_three_points().
libMesh::Plane::Plane | ( | const Plane & | other_plane | ) |
Copy-constructor.
Definition at line 51 of file plane.C.
References _normal, _point, and create_from_point_normal().
|
default |
Destructor.
Does nothing at the moment.
|
overridevirtual |
true
if the point p is above the surface, false otherwise. Implements libMesh::Surface.
Definition at line 121 of file plane.C.
References _point, normal(), and libMesh::Real.
Referenced by below_surface().
|
overridevirtual |
true
if the point p is below the surface, false otherwise. Implements libMesh::Surface.
Definition at line 138 of file plane.C.
References above_surface().
Implements libMesh::Surface.
Definition at line 163 of file plane.C.
References _point, and normal().
Defines a plane containing point p with normal n.
Definition at line 64 of file plane.C.
References _normal, _point, and libMesh::TypeVector< T >::unit().
Referenced by Plane().
void libMesh::Plane::create_from_three_points | ( | const Point & | p0, |
const Point & | p1, | ||
const Point & | p2 | ||
) |
Defines a plane intersecting the three points p0, p1, and p2.
The normal is constructed in a counter-clockwise sense, i.e. (p1-p0)x(p2-p0);
Definition at line 72 of file plane.C.
References _normal, _point, libMesh::TypeVector< T >::cross(), and libMesh::TypeVector< T >::unit().
Referenced by Plane().
const Point & libMesh::Plane::get_planar_point | ( | ) | const |
Definition at line 183 of file plane.C.
References _point.
|
inlineprivate |
Definition at line 139 of file plane.h.
References _normal.
Referenced by above_surface(), closest_point(), and on_surface().
|
overridevirtual |
true
if the point p is on the surface, false otherwise.Implements libMesh::Surface.
Definition at line 145 of file plane.C.
References _point, std::abs(), normal(), and libMesh::Real.
|
inlinevirtualinherited |
Point
world_coords
in the surface's coordinate system. world_coords
is in the world coordinate system. This method is not purely virtual, because there may be surfaces that do not have their own coordinate system. These simply do not have to override this method. Reimplemented in libMesh::Sphere.
Definition at line 101 of file surface.h.
References libMesh::Surface::world_coords().
Implements libMesh::Surface.
Definition at line 178 of file plane.C.
References _normal.
|
inlinevirtualinherited |
surf_coords
. This method is not purely virtual, because there may be surfaces that do not have an own coordinate system. These simply do not have to override this method. Reimplemented in libMesh::Sphere.
Definition at line 110 of file surface.h.
Referenced by libMesh::Surface::surface_coords().
void libMesh::Plane::xy_plane | ( | const Real | zpos = 0. | ) |
Creates an XY plane located at z=zpos.
Definition at line 88 of file plane.C.
References _normal, and _point.
void libMesh::Plane::xz_plane | ( | const Real | ypos = 0. | ) |
Creates an XZ plane located at y=ypos.
Definition at line 99 of file plane.C.
References _normal, and _point.
void libMesh::Plane::yz_plane | ( | const Real | xpos = 0. | ) |
Creates an YZ plane located at x=xpos.
Definition at line 110 of file plane.C.
References _normal, and _point.
|
private |
Definition at line 145 of file plane.h.
Referenced by create_from_point_normal(), create_from_three_points(), normal(), Plane(), unit_normal(), xy_plane(), xz_plane(), and yz_plane().
|
private |
The plane is defined by a point and a normal.
Definition at line 144 of file plane.h.
Referenced by above_surface(), closest_point(), create_from_point_normal(), create_from_three_points(), get_planar_point(), on_surface(), Plane(), xy_plane(), xz_plane(), and yz_plane().