IGLib  1.7.2
The IGLib base library EXTENDED - with other lilbraries and applications.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Events Macros
IG.Num.Geometry Class Reference

Analytical Geometry in 3D. More...

Static Public Member Functions

static double distpt3d (vec3 p1, vec3 p2)
 
static double directioncos3d (vec3 s1, vec3 s2)
 
static double ortprojptline3d (vec3 pt, vec3 r, vec3 s, vec3 proj)
 
static double distptline3d (vec3 pt, vec3 r, vec3 s)
 
static double nearestptlines3d (vec3 r1, vec3 s1, vec3 r2, vec3 s2, ref vec3 pt1, ref vec3 pt2)
 
static double nearestptlinescoef3d (vec3 r1, vec3 s1, vec3 r2, vec3 s2, ref vec3 pt1, ref double c1, ref vec3 pt2, ref double c2)
 
static void ortprojptplane3d (vec3 pt, vec3 r, vec3 n, ref vec3 proj)
 
static void ortprojlineplane3d (vec3 r1, vec3 s1, vec3 r2, vec3 n2, ref vec3 rpr, ref vec3 spr)
 
static double signdistptplane3d (vec3 pt, vec3 r, vec3 n)
 
static double distptplane3d (vec3 pt, vec3 r, vec3 n)
 
static double intsectlineplane3d (vec3 r1, vec3 s1, vec3 r2, vec3 n2, ref vec3 sect)
 
static double intsectplanes3d (vec3 r1, vec3 n1, vec3 r2, vec3 n2, ref vec3 r, ref vec3 s)
 

Static Private Member Functions

static double m_sqr (double x)
 Square of double argument. More...
 
static double sqrt (double x)
 Square root of double argument. More...
 
static double vecnorm3d (vec3 v)
 Vector norm. More...
 
static double fabs (double x)
 
static void zerovec3d (ref vec3 v)
 Sets all components of the vector to 0. More...
 
static double scalprod3d (vec3 v1, vec3 v2)
 Scalar product of two 3D vectors. More...
 
static void vecprod3d (vec3 v1, vec3 v2, ref vec3 res)
 Vector product of two 3D vectors. More...
 
static void vecdif3d (vec3 v1, vec3 v2, ref vec3 v3)
 Difference of two 3D vectors. More...
 
static void vecsum3d (vec3 v1, vec3 v2, ref vec3 v3)
 Sum of two 3D vectors. More...
 
static void multscalvec3d (vec3 v1, double s, ref vec3 prod)
 Product of vector with a scalar. More...
 
static void zeromat3d (ref mat3 a)
 Sets all components of the matrix to 0. More...
 
static void solve2d (mat3 A, vec3 b, out vec3 x)
 V x zapise resitev sistema dveh enacb z dvema neznankama, kjer so More...
 

Private Attributes

**Naredimo premico
 

Detailed Description

Analytical Geometry in 3D.

$A Igor Jul08;

This class was developed by transcribing the C library IOptLib's geometry related functions and rearranging and packing them into a C# class.

Member Function Documentation

static double IG.Num.Geometry.m_sqr ( double  x)
inlinestaticprivate

Square of double argument.

static double IG.Num.Geometry.sqrt ( double  x)
inlinestaticprivate

Square root of double argument.

static double IG.Num.Geometry.vecnorm3d ( vec3  v)
inlinestaticprivate

Vector norm.

References IG.Num.vec3.Norm.

static double IG.Num.Geometry.fabs ( double  x)
inlinestaticprivate
static void IG.Num.Geometry.zerovec3d ( ref vec3  v)
inlinestaticprivate

Sets all components of the vector to 0.

static double IG.Num.Geometry.scalprod3d ( vec3  v1,
vec3  v2 
)
inlinestaticprivate

Scalar product of two 3D vectors.

References IG.Num.vec3.ScalarProduct().

static void IG.Num.Geometry.vecprod3d ( vec3  v1,
vec3  v2,
ref vec3  res 
)
inlinestaticprivate

Vector product of two 3D vectors.

References IG.Num.vec3.VectorProduct().

static void IG.Num.Geometry.vecdif3d ( vec3  v1,
vec3  v2,
ref vec3  v3 
)
inlinestaticprivate

Difference of two 3D vectors.

References IG.Num.vec3.Subtract().

static void IG.Num.Geometry.vecsum3d ( vec3  v1,
vec3  v2,
ref vec3  v3 
)
inlinestaticprivate

Sum of two 3D vectors.

References IG.Num.vec3.Add().

static void IG.Num.Geometry.multscalvec3d ( vec3  v1,
double  s,
ref vec3  prod 
)
inlinestaticprivate

Product of vector with a scalar.

References IG.Num.vec3.Multiply().

static void IG.Num.Geometry.zeromat3d ( ref mat3  a)
inlinestaticprivate

Sets all components of the matrix to 0.

static void IG.Num.Geometry.solve2d ( mat3  A,
vec3  b,
out vec3  x 
)
inlinestaticprivate

V x zapise resitev sistema dveh enacb z dvema neznankama, kjer so

static double IG.Num.Geometry.distpt3d ( vec3  p1,
vec3  p2 
)
inlinestatic
static double IG.Num.Geometry.directioncos3d ( vec3  s1,
vec3  s2 
)
inlinestatic
static double IG.Num.Geometry.ortprojptline3d ( vec3  pt,
vec3  r,
vec3  s,
vec3  proj 
)
inlinestatic
static double IG.Num.Geometry.distptline3d ( vec3  pt,
vec3  r,
vec3  s 
)
inlinestatic
static double IG.Num.Geometry.nearestptlines3d ( vec3  r1,
vec3  s1,
vec3  r2,
vec3  s2,
ref vec3  pt1,
ref vec3  pt2 
)
inlinestatic

References IG.Num.A.

static double IG.Num.Geometry.nearestptlinescoef3d ( vec3  r1,
vec3  s1,
vec3  r2,
vec3  s2,
ref vec3  pt1,
ref double  c1,
ref vec3  pt2,
ref double  c2 
)
inlinestatic

References IG.Num.A.

static void IG.Num.Geometry.ortprojptplane3d ( vec3  pt,
vec3  r,
vec3  n,
ref vec3  proj 
)
inlinestatic
static void IG.Num.Geometry.ortprojlineplane3d ( vec3  r1,
vec3  s1,
vec3  r2,
vec3  n2,
ref vec3  rpr,
ref vec3  spr 
)
inlinestatic
static double IG.Num.Geometry.signdistptplane3d ( vec3  pt,
vec3  r,
vec3  n 
)
inlinestatic
static double IG.Num.Geometry.distptplane3d ( vec3  pt,
vec3  r,
vec3  n 
)
inlinestatic
static double IG.Num.Geometry.intsectlineplane3d ( vec3  r1,
vec3  s1,
vec3  r2,
vec3  n2,
ref vec3  sect 
)
inlinestatic
static double IG.Num.Geometry.intsectplanes3d ( vec3  r1,
vec3  n1,
vec3  r2,
vec3  n2,
ref vec3  r,
ref vec3  s 
)
inlinestatic

Member Data Documentation

* * Naredimo IG.Num.Geometry.premico
private
  • Naredi inverzno transformacijsko matriko iz desnosucnega ortonormiranega* 1. premica: */* 2. premica: */* 1. tocka: */* 2. tocka: */* Ort. proj. tocke na premico in razdalja med tocko in premico: */* Izracun secisca premice in ravnine: */* Ort. projekcija premice na ravnino: */* Ort. projekcija tocke na ravnino: */* Razdalja med tocko in ravnino: */* Naredimo ravnino iz 2. premice komp. z r2 premaknemo, norm. je prav. na s1): */* Secisce dveh ravnin: */

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