xmsgridtrace  1.0
xms Namespace Reference

XMS Namespace. More...

Namespaces

Classes

class  AnisotropicInterpolator
 
struct  BarycentricVals
 
struct  edgerecord
 
class  ETestMessagingState
 
class  fSatisfies
 
class  GmExtents2d
 
class  GmExtents3d
 
class  GmMultiPolyIntersectionSorter
 
class  GmMultiPolyIntersectionSorterTerse
 
class  GmMultiPolyIntersector
 
struct  GmMultiPolyIntersectorData
 
class  GmMultiPolyIntersectorImpl
 
class  GmPolygon
 
class  GmPolygonImpl
 
class  GmPolyLinePtRedistributer
 
class  GmPolyLinePtRedistributerImpl
 
class  GmPtSearch
 
class  GmPtSearchImpl
 
class  GmTriSearch
 
class  GmTriSearchImpl
 
class  idx_pt
 
class  idx_tri
 
class  InterpAnisotropic
 
class  InterpAnisotropicImpl
 
class  InterpBase
 
class  InterpCt
 
class  InterpIdw
 
class  InterpIdwImpl
 
class  InterpLinear
 
class  InterpLinearImpl
 
class  InterpNatNeigh
 
class  InterpNatNeighImpl
 
struct  InterpPtInfo
 
class  ix
 
struct  LineParameters
 
class  ltPt2
 
class  ltPt3
 
class  ltPt3_2D
 
struct  nnOuterEdgeStruct
 
class  NodalFunc
 
class  NodalFuncImpl
 
class  Observer
 
class  Progress
 
class  ProgressListener
 
class  Pt2
 
class  Pt3
 
class  Pt4
 
class  SharedSingleton
 
class  Singleton
 
struct  SNResult
 
class  StCommaNumpunct
 
class  StTemp2DigitExponents
 
class  ThreadLoop
 
class  ThreadMgr
 
class  ThreadMgrImpl
 
class  TrAutoFixFourTrianglePts
 
class  TrAutoFixFourTrianglePtsImpl
 
class  TrBreaklineAdder
 
class  TrBreaklineAdderImpl
 
class  TrOuterTriangleDeleter
 
class  TrOuterTriangleDeleterImpl
 
class  TrTin
 
class  TrTinImpl
 
class  TrTriangulator
 
class  TrTriangulatorPoints
 
class  XmEdge
 
class  XmGridTrace
 Traces points in an XmUGrid following a vector dataset. More...
 
class  XmLog
 
class  XmUGrid
 
class  XmUGrid2dDataExtractor
 
class  XmUGrid2dDataExtractorImpl
 
class  XmUGrid2dPolylineDataExtractor
 
class  XmUGridImpl
 
class  XmUGridTriangles2d
 

Typedefs

typedef boost::geometry::model::d2::point_xy< double > GmBstPt2d
 
typedef boost::geometry::model::polygon< GmBstPt2dGmBstPoly2d
 
typedef boost::geometry::model::polygon< Pt3dGmBstPoly3d
 
typedef boost::geometry::model::box< Pt3dGmBstBox3d
 
typedef boost::geometry::model::linestring< Pt3dGmBstLine3d
 
typedef boost::geometry::ring_type< GmBstPoly3d >::type GmBstRing3d
 
typedef std::pair< GmBstBox3d, int > ValueBox
 
typedef bgi::rtree< ValueBox, bgi::quadratic< 8 > > RtreeBox
 
typedef bg::model::box< bPt > box
 
typedef size_t value
 
typedef bgi::quadratic< 8 > qRtree
 
typedef std::vector< edgerecordVecEdge
 

Enumerations

enum  Turn_enum
 
enum  PtInOutOrOn_enum
 
enum  GmMultiPolyIntersectorQueryEnum
 
enum  XmUGridCellType
 
enum  XmUGridFaceOrientation
 
enum  DataLocationEnum
 

Functions

bool gmPointInOrOnBox2d (const Pt3d &a_bMin, const Pt3d &a_bMax, const Pt3d &a_pt)
 
bool gmBoxesOverlap2d (const Pt3d &a_b1Min, const Pt3d &a_b1Max, const Pt3d &a_b2Min, const Pt3d &a_b2Max)
 
void gmCalculateNormalizedPlaneCoefficients (const Pt3d &p1, const Pt3d &p2, const Pt3d &p3, double *a, double *b, double *c, double *d)
 
void gmCalculateNormalizedPlaneCoefficients (const Pt3d *p1, const Pt3d *p2, const Pt3d *p3, double *a, double *b, double *c, double *d)
 
double gmMiddleZ (const VecPt3d &a_points)
 
PtInOutOrOn_enum gmPtInCircumcircle (const Pt3d &pt, Pt3d circumcirclePts[3])
 
double gmXyDistanceSquared (const Pt3d &pt1, const Pt3d &pt2)
 
bool gmCircumcircleWithTol (const Pt3d *pt1, const Pt3d *pt2, const Pt3d *pt3, double *xc, double *yc, double *r2, double tol)
 
int gmCartToBary (const Pt3d *cart, const Pt3d *orig, double coef[6], int dir, Pt3d *bary)
 
int gmBaryPrepare (const Pt3d *p1, const Pt3d *p2, const Pt3d *p3, const Pt3d *norm, Pt3d *orig, double coef[6], int *dir, bool flag)
 
bool gmColinearWithTol (const Pt3d &p1, const Pt3d &p2, const Pt3d &p3, const double tol)
 
bool gmIntersectLineSegmentsWithTol (const Pt3d &one1, const Pt3d &one2, const Pt3d &two1, const Pt3d &two2, double *xi, double *yi, double *zi1, double *zi2, double tol)
 
bool gmCounterClockwiseTri (const Pt3d &vtx0, const Pt3d &vtx1, const Pt3d &vtx2)
 
double gmCross2D (const double &dx1, const double &dy1, const double &dx2, const double &dy2)
 
double gmAngleBetween2DVectors (double dxp, double dyp, double dxn, double dyn)
 
double gmAngleBetween2DVectors (double dxp, double dyp, double dxn, double dyn, double a_magn, double a_magp)
 
double gmAngleBetweenEdges (const Pt3d &p1, const Pt3d &p2, const Pt3d &p3)
 
double gmAngleBetweenEdges (const Pt2d &p1, const Pt2d &p2, const Pt2d &p3)
 
double gmComputeDeviationInDirection (const Pt3d &a_p0, const Pt3d &a_p1, const Pt3d &a_p2)
 
bool gmOnLineWithTol (const Pt3d &p1, const Pt3d &p2, const double x, const double y, const double tol)
 
bool gmOnLineAndBetweenEndpointsWithTol (const Pt3d &a_pt1, const Pt3d &a_pt2, const double a_x, const double a_y, double a_tol)
 
void gmAddToExtents (const Pt3d &a_pt, Pt3d &a_min, Pt3d &a_max)
 
void gmAddToExtents (const Pt3d &a_pt, Pt2d &a_min, Pt2d &a_max)
 
void gmAddToExtents (const Pt2d &a_pt, Pt3d &a_min, Pt3d &a_max)
 
double gmXyDistance (double x1, double y1, double x2, double y2)
 
double gmXyDistance (const Pt3d &pt1, const Pt3d &pt2)
 
Turn_enum gmTurn (const Pt3d &a_v1, const Pt3d &a_v2, const Pt3d &a_v3, double a_angtol)
 
Pt3d gmComputeCentroid (const VecPt3d &a_points)
 
Pt3d gmComputePolygonCentroid (const VecPt3d &pts)
 
bool gmLinesIntersect (const Pt3d &one1, const Pt3d &one2, const Pt3d &two1, const Pt3d &two2)
 
int gmPointInPolygon2D (const T *a_verts, const size_t a_num, const double a_x, const double a_y, const double a_tol)
 
int gmPointInPolygon2D (const Pt3d *a_verts, size_t a_num, double a_x, double a_y)
 
int gmPointInPolygon2D (const Pt3d *a_verts, size_t a_num, Pt3d a_pt)
 
int gmPointInPolygon2D (const Pt2i *a_verts, size_t a_num, Pt2d a_pt)
 
int gmPointInPolygon2D (const Pt2i *a_verts, size_t a_num, Pt3d a_pt)
 
int gmPointInPolygon2D (const Pt2i *a_verts, size_t a_num, Pt2i a_pt)
 
int gmPointInPolygon2D (const VecPt3d &a_verts, const Pt3d &a_pt)
 
template int gmPointInPolygon2D< Pt3d > (const Pt3d *a_verts, const size_t a_num, const double a_x, const double a_y, const double a_tol)
 
template int gmPointInPolygon2D< Pt2d > (const Pt2d *a_verts, const size_t a_num, const double a_x, const double a_y, const double a_tol)
 
template int gmPointInPolygon2D< Pt2i > (const Pt2i *a_verts, const size_t a_num, const double a_x, const double a_y, const double a_tol)
 
double gmComputeXyTol (const Pt3d &a_mn, const Pt3d &a_mx)
 
double gmXyTol (bool a_set, double a_value)
 
double gmZTol (bool a_set, double a_value)
 
bool gmEqualPointsXY (double x1, double y1, double x2, double y2, double tolerance)
 
bool gmEqualPointsXY (double x1, double y1, double x2, double y2)
 
bool gmEqualPointsXY (const Pt2d &a_pt1, const Pt2d &a_pt2, double tol)
 
bool gmEqualPointsXY (const Pt3d &a_pt1, const Pt3d &a_pt2, double tol)
 
bool gmEqualPointsXY (const Pt2i &point1, const Pt2i &point2)
 
bool gmEqualPointsXYZ (double x1, double y1, double z1, double x2, double y2, double z2, double tolerance)
 
bool gmEqualPointsXYZ (double x1, double y1, double z1, double x2, double y2, double z2)
 
bool gmEqualPointsXYZ (const Pt3d &pt1, const Pt3d &pt2, double tol)
 
bool gmPointInTriangleWithTol (const Pt3d *p1, const Pt3d *p2, const Pt3d *p3, double x, double y, double tol)
 
bool gmInsideOrOnLineWithTol (const Pt3d *p1, const Pt3d *p2, const Pt3d *inpoint, const double x, const double y, const double tol, double *dist)
 
double gmPolygonArea (const Pt3d *pts, size_t npoints)
 
VecPt3d gmArrayToVecPt3d (double *a_array, int a_size)
 
void gmEnvelopeOfPts (const VecPt3d &a_pts, Pt3d &a_min, Pt3d &a_max)
 
void gmOrderPointsCounterclockwise (const VecPt3d &a_pts, VecInt &a_ccwOrder, int a_startindex)
 
void gmOrderPointsCounterclockwise (VecPt3d &a_pts)
 
double gmFindClosestPtOnSegment (const Pt3d &a_pt1, const Pt3d &a_pt2, const Pt3d &a_pt, Pt3d &a_newpt, const double a_tol)
 
double gmPtDistanceAlongSegment (const Pt3d &a_pt1, const Pt3d &a_pt2, const Pt3d &a_pt, const double a_tol)
 
bool gmInsideOfLineWithTol (const Pt3d &a_vertex1, const Pt3d &a_vertex2, const Pt3d &a_oppositevertex, const double a_x, const double a_y, const double a_tol)
 
void gmExtents2D (const VecPt3d &a_points, Pt2d &a_min, Pt2d &a_max)
 
void gmExtents2D (const VecPt3d &a_points, Pt3d &a_min, Pt3d &a_max)
 
void gmExtents3D (const VecPt3d &a_points, Pt3d &a_min, Pt3d &a_max)
 
double gmPerpendicularAngle (const Pt3d &a_pt1, const Pt3d &a_pt2)
 
double gmBisectingAngle (const Pt3d &a_p1, const Pt3d &a_p2, const Pt3d &a_p3)
 
void gmComponentMagnitudes (double *a_x, double *a_y, double *a_mag, double *a_dir, bool a_tomagdir)
 
Pt3d gmCreateVector (const Pt3d &a_p1, const Pt3d &a_p2)
 
double gmConvertAngleToBetween0And360 (double a_angle, bool a_InDegrees)
 
void gmCross3D (const Pt3d &a_vec1, const Pt3d &a_vec2, Pt3d *a_vec3)
 
double gmDot3D (const Pt3d &a_vec1, const Pt3d &a_vec2)
 
int gmIntersectTriangleAndLineSegment (const Pt3d &a_pt1, const Pt3d &a_pt2, const Pt3d &a_t0, const Pt3d &a_t1, const Pt3d &a_t2, Pt3d &a_IntersectPt)
 
double gm2DDistanceToLineWithTol (const Pt3d *a_pt1, const Pt3d *a_pt2, double a_x, double a_y, double a_tol)
 
static double iDistanceToRing (const GmBstRing3d &a_ring, const Pt3d &a_pt)
 
void iCartToBary (const Pt3d &a_pt1, const Pt3d &a_pt2, const Pt3d &a_pt3, BarycentricVals &a_b)
 
void iGetBarycentricCoords (const Pt3d &a_p, BarycentricVals &a_b, Pt3d &weights)
 
int mxLUDecomp (double **mat, int n, int *indx, double *d)
 
int mxLUBcksub (double **mat, int n, const int *indx, double *b)
 
bool mxiLudcmp3 (double mat[3][3], int indx[3], double *d)
 
void mxiLubksb3 (const double mat[3][3], const int indx[3], double b[3])
 
bool mxSolveNxN (double **A, double *x, double *b, int n)
 
bool mxSolveBandedEquations (double **a, double *x, double *b, int numeqs, int halfbandwidth)
 
bool mxSolve3x3 (double A[3][3], double x[3], double b[3])
 
int mxInvert4x4 (const double matrix[4][4], double inv[4][4])
 
void mxPointMult (Pt3d *pt, const double ctm[4][4])
 
void mxCopy4x4 (double copy[4][4], const double matrix[4][4])
 
void mxIdent4x4 (double matrix[4][4])
 
void mxMult4x4 (double product[4][4], const double matrix1[4][4], const double matrix2[4][4])
 
void mxRotate4x4 (double xrot, double yrot, double zrot, double rMatt[4][4])
 
void mxTranslate4x4 (const Pt3d &a_translation, double a_mx[4][4])
 
bool trTriangulateIt (TrTriangulator &a_Client)
 
double trArea (const Pt3d &a_pt1, const Pt3d &a_pt2, const Pt3d &a_pt3)
 
void trBuildGridTrianglePolys (int rows, int cols, VecPt3d &a_points, VecInt2d &a_polys)
 
void trBuildGridPolys (int rows, int cols, VecPt3d &pts, VecInt2d &polys)
 
int trIncrementIndex (int i)
 
int trDecrementIndex (int i)
 
void trRenumberOnDelete (const SetInt &a_deleting, VecInt &a_vec)
 
VecPt3d ConvexHull (const std::vector< Pt3< double >> &a_points)
 
VecInt ConvexHullWithIndices (const std::vector< int > &a_points, BSHP< XmUGrid > a_ugrid)
 
bool DoLineSegmentsCross (const std::pair< Pt3< double >, Pt3< double >> &a_segment1, const std::pair< Pt3< double >, Pt3< double >> &a_segment2)
 
bool DoLineSegmentsCross (const Pt3< double > &a_segment1Point1, const Pt3< double > &a_segment1Point2, const Pt3< double > &a_segment2Point1, const Pt3< double > &a_segment2Point2)
 
bool XmEdgesEquivalent (const XmEdge &a_edge1, const XmEdge &a_edge2)
 
BSHP< XmUGridTEST_XmUGrid1Left90Tri ()
 
BSHP< XmUGridTEST_XmUGridSimpleQuad ()
 
BSHP< XmUGridTEST_XmUGrid2dLinear ()
 
BSHP< XmUGridTEST_XmUGrid3dLinear ()
 
BSHP< XmUGridTEST_XmUGridHexagonalPolyhedron ()
 
BSHP< xms::XmUGridTEST_XmUBuildQuadUGrid (const int a_rows, const int a_cols)
 
BSHP< xms::XmUGridTEST_XmUBuildQuadUGrid (const int a_rows, const int a_cols, const xms::Pt3d &a_origin)
 
BSHP< xms::XmUGridTEST_XmUBuildHexahedronUgrid (const int a_rows, const int a_cols, const int a_lays)
 
BSHP< xms::XmUGridTEST_XmUBuildHexahedronUgrid (const int a_rows, const int a_cols, const int a_lays, const xms::Pt3d &a_origin)
 
BSHP< xms::XmUGridTEST_XmUBuildPolyhedronUgrid (const int a_rows, const int a_cols, const int a_lays)
 
BSHP< xms::XmUGridTEST_XmUBuildPolyhedronUgrid (const int a_rows, const int a_cols, const int a_lays, const xms::Pt3d &a_origin)
 
BSHP< xms::XmUGridTEST_XmUBuild3DChevronUgrid ()
 
BSHP< XmUGridXmReadUGridFromAsciiFile (const std::string &a_filePath)
 
BSHP< XmUGridXmReadUGridFromStream (std::istream &a_inStream)
 
void XmWriteUGridToAsciiFile (BSHP< XmUGrid > a_ugrid, const std::string &a_filePath)
 
void XmWriteUGridToStream (BSHP< XmUGrid > a_ugrid, std::ostream &a_outStream)
 

Variables

 TURN_LEFT
 
 TURN_RIGHT
 
 TURN_COLINEAR_180
 
 TURN_COLINEAR_0
 
 PT_ERROR
 
 PT_IN
 
 PT_OUT
 
 PT_ON
 

Detailed Description

XMS Namespace.