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

Public Member Functions

 Point3D ()
 
 Point3D (Point3D *p)
 
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)
 

Private Attributes

double m_coordinates [3]
 

Detailed Description

Constructor & Destructor Documentation

◆ Point3D() [1/2]

igl::geodesic::Point3D::Point3D ( )
inline
365{};

◆ Point3D() [2/2]

igl::geodesic::Point3D::Point3D ( Point3D p)
inline
367 {
368 x() = p->x();
369 y() = p->y();
370 z() = p->z();
371 };
double & x()
Definition exact_geodesic.cpp:374
double & z()
Definition exact_geodesic.cpp:376
double & y()
Definition exact_geodesic.cpp:375

References x(), y(), and z().

+ Here is the call graph for this function:

Member Function Documentation

◆ add()

void igl::geodesic::Point3D::add ( Point3D v)
inline
407 {
408 x() += v->x();
409 y() += v->y();
410 z() += v->z();
411 };

References x(), y(), and z().

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

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

◆ distance() [1/2]

double igl::geodesic::Point3D::distance ( double *  v)
inline
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 m_coordinates, and sqrt().

Referenced by igl::geodesic::GeodesicAlgorithmExact::best_first_interval(), 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)
inline
402 {
403 return distance(v->xyz());
404 };
double distance(double *v)
Definition exact_geodesic.cpp:392

References distance(), and xyz().

+ Here is the call graph for this function:

◆ multiply()

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

References x(), y(), and z().

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

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

◆ set() [1/2]

void igl::geodesic::Point3D::set ( double *  data)
inline
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 x(), y(), and 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 
)
inline
379 {
380 x() = new_x;
381 y() = new_y;
382 z() = new_z;
383 }

References x(), y(), and 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:

◆ x()

double & igl::geodesic::Point3D::x ( )
inline
374{return *m_coordinates;};

References m_coordinates.

Referenced by Point3D(), igl::geodesic::SurfacePoint::SurfacePoint(), igl::geodesic::SurfacePoint::SurfacePoint(), add(), igl::geodesic::fill_surface_point_double(), igl::geodesic::Mesh::initialize_mesh_data(), multiply(), igl::geodesic::SurfacePointWithIndex::operator()(), set(), set(), and igl::geodesic::Mesh::verify().

+ Here is the caller graph for this function:

◆ xyz()

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

References m_coordinates.

Referenced by distance().

+ Here is the caller graph for this function:

◆ y()

double & igl::geodesic::Point3D::y ( )
inline
375{return *(m_coordinates+1);};

References m_coordinates.

Referenced by Point3D(), igl::geodesic::SurfacePoint::SurfacePoint(), igl::geodesic::SurfacePoint::SurfacePoint(), add(), igl::geodesic::fill_surface_point_double(), igl::geodesic::Mesh::initialize_mesh_data(), multiply(), igl::geodesic::SurfacePointWithIndex::operator()(), set(), set(), and igl::geodesic::Mesh::verify().

+ Here is the caller graph for this function:

◆ z()

double & igl::geodesic::Point3D::z ( )
inline
376{return *(m_coordinates+2);};

References m_coordinates.

Referenced by Point3D(), igl::geodesic::SurfacePoint::SurfacePoint(), igl::geodesic::SurfacePoint::SurfacePoint(), add(), igl::geodesic::fill_surface_point_double(), igl::geodesic::Mesh::initialize_mesh_data(), multiply(), set(), set(), and igl::geodesic::Mesh::verify().

+ Here is the caller graph for this function:

Member Data Documentation

◆ m_coordinates

double igl::geodesic::Point3D::m_coordinates[3]
private

Referenced by distance(), x(), xyz(), y(), and z().


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