32 #ifndef vtkPointsProjectedHull_h
33 #define vtkPointsProjectedHull_h
35 #include "vtkCommonDataModelModule.h"
59 int RectangleIntersectionX(
float ymin,
float ymax,
float zmin,
float zmax);
60 int RectangleIntersectionX(
double ymin,
double ymax,
double zmin,
double zmax);
73 int RectangleIntersectionY(
float zmin,
float zmax,
float xmin,
float xmax);
74 int RectangleIntersectionY(
double zmin,
double zmax,
double xmin,
double xmax);
87 int RectangleIntersectionZ(
float xmin,
float xmax,
float ymin,
float ymax);
88 int RectangleIntersectionZ(
double xmin,
double xmax,
double ymin,
double ymax);
96 int GetCCWHullX(
float *pts,
int len);
97 int GetCCWHullX(
double *pts,
int len);
105 int GetCCWHullY(
float *pts,
int len);
106 int GetCCWHullY(
double *pts,
int len);
114 int GetCCWHullZ(
float *pts,
int len);
115 int GetCCWHullZ(
double *pts,
int len);
122 int GetSizeCCWHullX();
129 int GetSizeCCWHullY();
136 int GetSizeCCWHullZ();
155 int RectangleIntersection(
double hmin,
double hmax,
156 double vmin,
double vmax,
int direction);
157 int GrahamScanAlgorithm(
int direction);
159 int RectangleBoundingBoxIntersection(
double hmin,
double hmax,
160 double vmin,
double vmax,
int direction);
161 int RectangleOutside(
double hmin,
double hmax,
162 double vmin,
double vmax,
int direction);
164 int RectangleOutside1DPolygon(
double hmin,
double hmax,
165 double vmin,
double vmax,
int dir);
168 void ClearAllocations();
171 static
int RemoveExtras(
double *pts,
int n);
172 static
double Distance(
double *p1,
double *p2);
173 static
int PositionInHull(
double *base,
double *
top,
double *pt);
174 static
int OutsideLine(
double hmin,
double hmax,
175 double vmin,
double vmax,
double *p0,
double *p1,
double *insidePt);
176 static
int OutsideHorizontalLine(
double vmin,
double vmax,
177 double *p0,
double *p1,
double *insidePt);
178 static
int OutsideVerticalLine(
double hmin,
double hmax,
double *p0,
179 double *p1,
double *insidePt);
186 float HullBBox[3][4];
virtual void Initialize()
Return object to instantiated state.
record modification and/or execution time
virtual void Update()
Updates the extensions string.
a simple class to control print indentation
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
the convex hull of the orthogonal projection of the vtkPoints in the 3 coordinate directions ...
void Reset() override
Make object look empty but do not delete memory.
represent and manipulate 3D points