ug4
|
Refines linearily except for when a refined edge intersects the given cylinder. More...
#include <cylinder_cut_projector.h>
Public Member Functions | |
const vector3 & | axis () const |
const vector3 & | center () const |
CylinderCutProjector () | |
CylinderCutProjector (const vector3 ¢er, const vector3 &axis, number radius) | |
CylinderCutProjector (SPIGeometry3d geometry, const vector3 ¢er, const vector3 &axis, number radius) | |
virtual number | new_vertex (Vertex *vrt, Edge *parent) |
called when a new vertex was created from an old edge. | |
number | radius () const |
void | set_axis (const vector3 &axis) |
void | set_center (const vector3 ¢er) |
void | set_radius (number radius) |
virtual | ~CylinderCutProjector () |
![]() | |
virtual SPIGeometry3d | geometry () const |
virtual number | new_vertex (Vertex *vrt, Face *parent) |
called when a new vertex was created from an old face. | |
virtual number | new_vertex (Vertex *vrt, Vertex *parent) |
called when a new vertex was created from an old vertex. | |
virtual number | new_vertex (Vertex *vrt, Volume *parent) |
called when a new vertex was created from an old volume. | |
virtual void | refinement_begins (const ISubGrid *sg) |
called before refinement begins | |
virtual bool | refinement_begins_requires_subgrid () const |
virtual void | refinement_ends () |
called when refinement is done | |
RefinementProjector () | |
RefinementProjector (SPElementCallback cb) | |
RefinementProjector (SPIGeometry3d geometry) | |
RefinementProjector (SPIGeometry3d geometry, SPElementCallback concernedElems) | |
virtual void | set_concerned_elements (SPElementCallback cb) |
virtual void | set_geometry (SPIGeometry3d geometry) |
virtual | ~RefinementProjector () |
Private Member Functions | |
template<class Archive > | |
void | serialize (Archive &ar, const unsigned int version) |
Private Attributes | |
vector3 | m_axis |
vector3 | m_center |
number | m_radius |
Friends | |
class | boost::serialization::access |
Additional Inherited Members | |
![]() | |
IGeometry3d & | geom () |
const IGeometry3d & | geom () const |
template<class TElem > | |
bool | is_concerned (TElem *e) |
vector3 | pos (Vertex *v) const |
void | set_pos (Vertex *v, const vector3 &p) |
Refines linearily except for when a refined edge intersects the given cylinder.
Refines linearily except for when a refined edge intersects the given cylinder. the new vertex will be placed at the intersection of the edge with the cylinder in this case.
|
inline |
|
inline |
|
inline |
|
inlinevirtual |
|
inline |
References m_axis.
Referenced by set_axis().
|
inline |
References m_center.
Referenced by set_center().
called when a new vertex was created from an old edge.
Reimplemented from ug::RefinementProjector.
References m_axis, m_center, m_radius, ug::RefinementProjector::new_vertex(), p, ug::RefinementProjector::pos(), ug::RayCylinderIntersection(), ug::RefinementProjector::set_pos(), ug::VecScaleAdd(), ug::VecSubtract(), and ug::EdgeVertices::vertex().
|
inline |
References m_radius.
Referenced by set_radius().
|
inlineprivate |
References m_axis, m_center, m_radius, and UG_EMPTY_BASE_CLASS_SERIALIZATION.
|
inline |
|
inline |
|
inline |
|
friend |
|
private |
Referenced by axis(), new_vertex(), serialize(), and set_axis().
|
private |
Referenced by center(), new_vertex(), serialize(), and set_center().
|
private |
Referenced by new_vertex(), radius(), serialize(), and set_radius().