gmsh-TingyuanDoc  0.1
An Open-Source Timing-driven Analytical Mixed-size FPGA Placer
SurfaceProjectorUtils Namespace Reference

Typedefs

using vec2 = std::array< double, 2 >
 
using vec3 = std::array< double, 3 >
 

Functions

vec3 operator- (const vec3 &a, const vec3 &b)
 
vec3 operator+ (const vec3 &a, const vec3 &b)
 
vec3 operator* (const double &a, const vec3 &b)
 
vec3 operator* (const vec3 &a, const double &b)
 
double dot (const vec3 &a, const vec3 &b)
 
double length2 (const vec3 &a)
 
double maxAbs (double x, double y, double z)
 
double maxAbs (const vec3 &a)
 
void normalizeFast (vec3 &a)
 
void normalize (vec3 &a)
 
double project_point_segment_l2 (const vec3 &query, const vec3 &a, const vec3 &b, vec3 &proj, double &lambda)
 
double project_point_triangle_l2 (const vec3 &query, const vec3 &p1, const vec3 &p2, const vec3 &p3, vec3 &proj, double lambda[3])
 

Typedef Documentation

◆ vec2

using SurfaceProjectorUtils::vec2 = typedef std::array<double, 2>

Definition at line 27 of file meshOctreeLibOL.cpp.

◆ vec3

using SurfaceProjectorUtils::vec3 = typedef std::array<double, 3>

Definition at line 28 of file meshOctreeLibOL.cpp.

Function Documentation

◆ dot()

double SurfaceProjectorUtils::dot ( const vec3 a,
const vec3 b 
)
inline

Definition at line 45 of file meshOctreeLibOL.cpp.

Referenced by length2(), project_point_segment_l2(), and project_point_triangle_l2().

Here is the caller graph for this function:

◆ length2()

double SurfaceProjectorUtils::length2 ( const vec3 a)
inline

Definition at line 49 of file meshOctreeLibOL.cpp.

Referenced by normalizeFast(), project_point_segment_l2(), project_point_triangle_l2(), and sphereProjection().

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

◆ maxAbs() [1/2]

double SurfaceProjectorUtils::maxAbs ( const vec3 a)
inline

Definition at line 54 of file meshOctreeLibOL.cpp.

Here is the call graph for this function:

◆ maxAbs() [2/2]

double SurfaceProjectorUtils::maxAbs ( double  x,
double  y,
double  z 
)
inline

Definition at line 50 of file meshOctreeLibOL.cpp.

Referenced by maxAbs(), and normalize().

Here is the caller graph for this function:

◆ normalize()

void SurfaceProjectorUtils::normalize ( vec3 a)
inline

Definition at line 59 of file meshOctreeLibOL.cpp.

Referenced by sphereProjection().

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

◆ normalizeFast()

void SurfaceProjectorUtils::normalizeFast ( vec3 a)
inline

Definition at line 55 of file meshOctreeLibOL.cpp.

Referenced by normalize().

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

◆ operator*() [1/2]

vec3 SurfaceProjectorUtils::operator* ( const double &  a,
const vec3 b 
)
inline

Definition at line 37 of file meshOctreeLibOL.cpp.

◆ operator*() [2/2]

vec3 SurfaceProjectorUtils::operator* ( const vec3 a,
const double &  b 
)
inline

Definition at line 41 of file meshOctreeLibOL.cpp.

◆ operator+()

vec3 SurfaceProjectorUtils::operator+ ( const vec3 a,
const vec3 b 
)
inline

Definition at line 33 of file meshOctreeLibOL.cpp.

◆ operator-()

vec3 SurfaceProjectorUtils::operator- ( const vec3 a,
const vec3 b 
)
inline

Definition at line 29 of file meshOctreeLibOL.cpp.

◆ project_point_segment_l2()

double SurfaceProjectorUtils::project_point_segment_l2 ( const vec3 query,
const vec3 a,
const vec3 b,
vec3 proj,
double &  lambda 
)
inline

Definition at line 67 of file meshOctreeLibOL.cpp.

Referenced by project_point_triangle_l2().

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

◆ project_point_triangle_l2()

double SurfaceProjectorUtils::project_point_triangle_l2 ( const vec3 query,
const vec3 p1,
const vec3 p2,
const vec3 p3,
vec3 proj,
double  lambda[3] 
)
inline

Definition at line 90 of file meshOctreeLibOL.cpp.

Referenced by SurfaceProjector::closestPoint().

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