Prusa Slicer 2.6.0
Loading...
Searching...
No Matches
igl::geodesic::Vertex Class Reference
+ Inheritance diagram for igl::geodesic::Vertex:
+ Collaboration diagram for igl::geodesic::Vertex:

Public Types

typedef SimpleVector< vertex_pointervertex_pointer_vector
 
typedef SimpleVector< edge_pointeredge_pointer_vector
 
typedef SimpleVector< face_pointerface_pointer_vector
 

Public Member Functions

 Vertex ()
 
 ~Vertex ()
 
bool & saddle_or_boundary ()
 
vertex_pointer_vectoradjacent_vertices ()
 
edge_pointer_vectoradjacent_edges ()
 
face_pointer_vectoradjacent_faces ()
 
unsigned & id ()
 
PointType type ()
 
double * xyz ()
 
double & x ()
 
double & y ()
 
double & z ()
 
void set (double new_x, double new_y, double new_z)
 
void set (double *data)
 
double distance (double *v)
 
double distance (Point3D *v)
 
void add (Point3D *v)
 
void multiply (double v)
 

Protected Attributes

vertex_pointer_vector m_adjacent_vertices
 
edge_pointer_vector m_adjacent_edges
 
face_pointer_vector m_adjacent_faces
 
unsigned m_id
 
PointType m_type
 

Private Attributes

bool m_saddle_or_boundary
 
double m_coordinates [3]
 

Detailed Description

Member Typedef Documentation

◆ edge_pointer_vector

◆ face_pointer_vector

◆ vertex_pointer_vector

Constructor & Destructor Documentation

◆ Vertex()

igl::geodesic::Vertex::Vertex ( )
inline
428 {
429 m_type = VERTEX;
430 };
PointType m_type
Definition exact_geodesic.cpp:359
@ VERTEX
Definition exact_geodesic.cpp:328

References igl::geodesic::MeshElementBase::m_type, and igl::geodesic::VERTEX.

◆ ~Vertex()

igl::geodesic::Vertex::~Vertex ( )
inline
432{};

Member Function Documentation

◆ add()

void igl::geodesic::Point3D::add ( Point3D v)
inlineinherited
407 {
408 x() += v->x();
409 y() += v->y();
410 z() += v->z();
411 };
double & x()
Definition exact_geodesic.cpp:374
double & z()
Definition exact_geodesic.cpp:376
double & y()
Definition exact_geodesic.cpp:375

References igl::geodesic::Point3D::x(), igl::geodesic::Point3D::y(), and igl::geodesic::Point3D::z().

Referenced by igl::geodesic::SurfacePoint::SurfacePoint().

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

◆ adjacent_edges()

◆ adjacent_faces()

face_pointer_vector & igl::geodesic::MeshElementBase::adjacent_faces ( )
inlineinherited

◆ adjacent_vertices()

◆ distance() [1/2]

double igl::geodesic::Point3D::distance ( double *  v)
inlineinherited
393 {
394 double dx = m_coordinates[0] - v[0];
395 double dy = m_coordinates[1] - v[1];
396 double dz = m_coordinates[2] - v[2];
397
398 return sqrt(dx*dx + dy*dy + dz*dz);
399 };
EIGEN_DEVICE_FUNC const SqrtReturnType sqrt() const
Definition ArrayCwiseUnaryOps.h:152
double m_coordinates[3]
Definition exact_geodesic.cpp:421

References igl::geodesic::Point3D::m_coordinates, and sqrt().

Referenced by igl::geodesic::GeodesicAlgorithmExact::best_first_interval(), igl::geodesic::Point3D::distance(), igl::geodesic::Edge::local_coordinates(), igl::geodesic::GeodesicAlgorithmBase::set_stop_conditions(), and igl::geodesic::GeodesicAlgorithmExact::visible_from_source().

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

◆ distance() [2/2]

double igl::geodesic::Point3D::distance ( Point3D v)
inlineinherited
402 {
403 return distance(v->xyz());
404 };
double distance(double *v)
Definition exact_geodesic.cpp:392

References igl::geodesic::Point3D::distance(), and igl::geodesic::Point3D::xyz().

+ Here is the call graph for this function:

◆ id()

◆ multiply()

void igl::geodesic::Point3D::multiply ( double  v)
inlineinherited
414 {
415 x() *= v;
416 y() *= v;
417 z() *= v;
418 };

References igl::geodesic::Point3D::x(), igl::geodesic::Point3D::y(), and igl::geodesic::Point3D::z().

Referenced by igl::geodesic::SurfacePoint::SurfacePoint().

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

◆ saddle_or_boundary()

bool & igl::geodesic::Vertex::saddle_or_boundary ( )
inline
434{return m_saddle_or_boundary;};
bool m_saddle_or_boundary
Definition exact_geodesic.cpp:437

References m_saddle_or_boundary.

Referenced by igl::geodesic::Mesh::build_adjacencies(), and igl::geodesic::GeodesicAlgorithmExact::propagate().

+ Here is the caller graph for this function:

◆ set() [1/2]

void igl::geodesic::Point3D::set ( double *  data)
inlineinherited
386 {
387 x() = *data;
388 y() = *(data+1);
389 z() = *(data+2);
390 }
constexpr auto data(C &c) -> decltype(c.data())
Definition span.hpp:195

References igl::geodesic::Point3D::x(), igl::geodesic::Point3D::y(), and igl::geodesic::Point3D::z().

+ Here is the call graph for this function:

◆ set() [2/2]

void igl::geodesic::Point3D::set ( double  new_x,
double  new_y,
double  new_z 
)
inlineinherited
379 {
380 x() = new_x;
381 y() = new_y;
382 z() = new_z;
383 }

References igl::geodesic::Point3D::x(), igl::geodesic::Point3D::y(), and igl::geodesic::Point3D::z().

Referenced by igl::geodesic::SurfacePoint::SurfacePoint(), igl::geodesic::SurfacePoint::SurfacePoint(), and igl::geodesic::fill_surface_point_structure().

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

◆ type()

PointType igl::geodesic::MeshElementBase::type ( )
inlineinherited
351{return m_type;};

References igl::geodesic::MeshElementBase::m_type.

Referenced by igl::geodesic::Interval::initialize(), igl::geodesic::GeodesicAlgorithmExact::list_edges_visible_from_source(), and igl::geodesic::SurfacePoint::type().

+ Here is the caller graph for this function:

◆ x()

◆ xyz()

double * igl::geodesic::Point3D::xyz ( )
inlineinherited
373{return m_coordinates;};

References igl::geodesic::Point3D::m_coordinates.

Referenced by igl::geodesic::Point3D::distance().

+ Here is the caller graph for this function:

◆ y()

◆ z()

double & igl::geodesic::Point3D::z ( )
inlineinherited

Member Data Documentation

◆ m_adjacent_edges

edge_pointer_vector igl::geodesic::MeshElementBase::m_adjacent_edges
protectedinherited

◆ m_adjacent_faces

face_pointer_vector igl::geodesic::MeshElementBase::m_adjacent_faces
protectedinherited

◆ m_adjacent_vertices

vertex_pointer_vector igl::geodesic::MeshElementBase::m_adjacent_vertices
protectedinherited

◆ m_coordinates

◆ m_id

unsigned igl::geodesic::MeshElementBase::m_id
protectedinherited

◆ m_saddle_or_boundary

bool igl::geodesic::Vertex::m_saddle_or_boundary
private

Referenced by saddle_or_boundary().

◆ m_type

PointType igl::geodesic::MeshElementBase::m_type
protectedinherited

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