Geogram Version 1.8.5
A programming library of geometric algorithms
Loading...
Searching...
No Matches
GEO::vec3HE Struct Reference

3D vector in homogeneous coordinates with coordinates as arithmetic expansions. More...

#include <geogram/numerics/exact_geometry.h>

Public Member Functions

 vec3HE ()
 Creates an uninitialized vec3HE.
 
 vec3HE (const expansion_nt &x_in, const expansion_nt &y_in, const expansion_nt &z_in, const expansion_nt &w_in)
 
 vec3HE (expansion_nt &&x_in, expansion_nt &&y_in, expansion_nt &&z_in, expansion_nt &&w_in)
 
 vec3HE (double x_in, double y_in, double z_in, double w_in)
 
 vec3HE (const vec3HE &rhs)
 
 vec3HE (vec3HE &&rhs)
 
 vec3HE (const vec3 &rhs)
 
vec3HEoperator= (const vec3HE &rhs)
 
vec3HEoperator= (vec3HE &&rhs)
 
expansion_ntdata ()
 
const expansion_ntdata () const
 
expansion_ntoperator[] (coord_index_t i)
 
const expansion_ntoperator[] (coord_index_t i) const
 
void optimize ()
 Optimizes the internal storage of the expansions used to store the coordinates.
 

Public Attributes

expansion_nt x
 
expansion_nt y
 
expansion_nt z
 
expansion_nt w
 

Detailed Description

3D vector in homogeneous coordinates with coordinates as arithmetic expansions.

Coordinates support +,-,* and / by multiplying w.

Definition at line 173 of file exact_geometry.h.

Constructor & Destructor Documentation

◆ vec3HE() [1/7]

GEO::vec3HE::vec3HE ( )
inline

Creates an uninitialized vec3HE.

Definition at line 178 of file exact_geometry.h.

◆ vec3HE() [2/7]

GEO::vec3HE::vec3HE ( const expansion_nt x_in,
const expansion_nt y_in,
const expansion_nt z_in,
const expansion_nt w_in 
)
inline

Definition at line 186 of file exact_geometry.h.

◆ vec3HE() [3/7]

GEO::vec3HE::vec3HE ( expansion_nt &&  x_in,
expansion_nt &&  y_in,
expansion_nt &&  z_in,
expansion_nt &&  w_in 
)
inline

Definition at line 194 of file exact_geometry.h.

◆ vec3HE() [4/7]

GEO::vec3HE::vec3HE ( double  x_in,
double  y_in,
double  z_in,
double  w_in 
)
inline

Definition at line 202 of file exact_geometry.h.

◆ vec3HE() [5/7]

GEO::vec3HE::vec3HE ( const vec3HE rhs)
inline

Definition at line 210 of file exact_geometry.h.

◆ vec3HE() [6/7]

GEO::vec3HE::vec3HE ( vec3HE &&  rhs)
inline

Definition at line 214 of file exact_geometry.h.

◆ vec3HE() [7/7]

GEO::vec3HE::vec3HE ( const vec3 rhs)
inlineexplicit

Definition at line 218 of file exact_geometry.h.

Member Function Documentation

◆ data() [1/2]

expansion_nt * GEO::vec3HE::data ( )
inline

Definition at line 242 of file exact_geometry.h.

◆ data() [2/2]

const expansion_nt * GEO::vec3HE::data ( ) const
inline

Definition at line 246 of file exact_geometry.h.

◆ operator=() [1/2]

vec3HE & GEO::vec3HE::operator= ( const vec3HE rhs)
inline

Definition at line 222 of file exact_geometry.h.

◆ operator=() [2/2]

vec3HE & GEO::vec3HE::operator= ( vec3HE &&  rhs)
inline

Definition at line 232 of file exact_geometry.h.

◆ operator[]() [1/2]

expansion_nt & GEO::vec3HE::operator[] ( coord_index_t  i)
inline

Definition at line 250 of file exact_geometry.h.

◆ operator[]() [2/2]

const expansion_nt & GEO::vec3HE::operator[] ( coord_index_t  i) const
inline

Definition at line 255 of file exact_geometry.h.

◆ optimize()

void GEO::vec3HE::optimize ( )
inline

Optimizes the internal storage of the expansions used to store the coordinates.

Definition at line 264 of file exact_geometry.h.

Member Data Documentation

◆ w

expansion_nt GEO::vec3HE::w

Definition at line 274 of file exact_geometry.h.

◆ x

expansion_nt GEO::vec3HE::x

Definition at line 271 of file exact_geometry.h.

◆ y

expansion_nt GEO::vec3HE::y

Definition at line 272 of file exact_geometry.h.

◆ z

expansion_nt GEO::vec3HE::z

Definition at line 273 of file exact_geometry.h.


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