33 #ifndef UG__LIB_GRID__REFINEMENT__PROJECTORS__ELLIPTIC_CYLINDER_PROJECTOR_H
34 #define UG__LIB_GRID__REFINEMENT__PROJECTORS__ELLIPTIC_CYLINDER_PROJECTOR_H
129 template <
class TElem>
134 template <
class Archive>
#define UG_EMPTY_BASE_CLASS_SERIALIZATION(clsDerived, clsBase)
Definition: boost_serialization.h:51
Base-class for edges.
Definition: grid_base_objects.h:397
Projects new vertices onto a cylinder with an elliptic base.
Definition: elliptic_cylinder_projector.h:52
void set_center(const vector3 ¢er)
Definition: elliptic_cylinder_projector.cpp:148
number m_a
Definition: elliptic_cylinder_projector.h:161
virtual number new_vertex(Vertex *vrt, Edge *parent)
called when a new vertex was created from an old edge
Definition: elliptic_cylinder_projector.cpp:219
void serialize(Archive &ar, const unsigned int version)
Definition: elliptic_cylinder_projector.h:135
void set_influence_radius(number influenceRadius)
Definition: elliptic_cylinder_projector.cpp:207
number influence_radius() const
Definition: elliptic_cylinder_projector.cpp:212
const vector3 & center() const
Definition: elliptic_cylinder_projector.cpp:153
vector3 m_ellipseNormal
Definition: elliptic_cylinder_projector.h:160
number m_b
Definition: elliptic_cylinder_projector.h:162
const vector3 & ellipse_axis1() const
Definition: elliptic_cylinder_projector.cpp:177
number scale_point_to_radius(vector3 &vIO, number r)
Definition: elliptic_cylinder_projector.cpp:251
void set_ellipse_axis2(const vector3 &axis)
Definition: elliptic_cylinder_projector.cpp:183
number m_influenceRadius
Definition: elliptic_cylinder_projector.h:158
const vector3 & cylinder_axis() const
Definition: elliptic_cylinder_projector.cpp:164
number radial_ellipse_coord(const vector3 &v)
Definition: elliptic_cylinder_projector.cpp:236
number m_radius
Definition: elliptic_cylinder_projector.h:157
vector3 m_center
Definition: elliptic_cylinder_projector.h:153
number radius() const
Definition: elliptic_cylinder_projector.cpp:201
EllipticCylinderProjector()
Definition: elliptic_cylinder_projector.cpp:42
vector3 m_ellipse_axis2
Definition: elliptic_cylinder_projector.h:156
void set_radius(number radius)
Definition: elliptic_cylinder_projector.cpp:196
vector3 m_cylinder_axis
Definition: elliptic_cylinder_projector.h:154
vector3 m_ellipse_axis1
Definition: elliptic_cylinder_projector.h:155
const vector3 & ellipse_axis2() const
Definition: elliptic_cylinder_projector.cpp:190
void set_ellipse_axis1(const vector3 &axis)
Definition: elliptic_cylinder_projector.cpp:170
friend class boost::serialization::access
Definition: elliptic_cylinder_projector.h:132
number perform_projection(Vertex *vrt, TElem *parent)
Definition: elliptic_cylinder_projector.cpp:277
void set_cylinder_axis(const vector3 &axis)
Definition: elliptic_cylinder_projector.cpp:159
virtual ~EllipticCylinderProjector()
Definition: elliptic_cylinder_projector.cpp:143
Faces are 2-dimensional objects.
Definition: grid_base_objects.h:510
Adjusts vertex coordinates during refinement.
Definition: refinement_projector.h:55
virtual SPIGeometry3d geometry() const
Definition: refinement_projector.h:81
Base-class for all vertex-types.
Definition: grid_base_objects.h:231
Volumes are 3-dimensional objects.
Definition: grid_base_objects.h:754
double number
Definition: types.h:124
vector_t::value_type VecLength(const vector_t &v)
returns the length of v. Slower than VecLengthSq.
Definition: math_vector_functions_common_impl.hpp:341
void VecCross(vector_t &vOut, const vector_t &v1, const vector_t &v2)
calculates the cross product of two Vectors of dimension 3. It makes no sense to use VecCross for vec...
Definition: math_vector_functions_common_impl.hpp:437