17 #ifndef vtkPointsProjectedHull_h
18 #define vtkPointsProjectedHull_h
20 #include "vtkCommonDataModelModule.h"
23 VTK_ABI_NAMESPACE_BEGIN
45 int RectangleIntersectionX(
float ymin,
float ymax,
float zmin,
float zmax);
46 int RectangleIntersectionX(
double ymin,
double ymax,
double zmin,
double zmax);
59 int RectangleIntersectionY(
float zmin,
float zmax,
float xmin,
float xmax);
60 int RectangleIntersectionY(
double zmin,
double zmax,
double xmin,
double xmax);
73 int RectangleIntersectionZ(
float xmin,
float xmax,
float ymin,
float ymax);
74 int RectangleIntersectionZ(
double xmin,
double xmax,
double ymin,
double ymax);
82 int GetCCWHullX(
float* pts,
int len);
83 int GetCCWHullX(
double* pts,
int len);
91 int GetCCWHullY(
float* pts,
int len);
92 int GetCCWHullY(
double* pts,
int len);
100 int GetCCWHullZ(
float* pts,
int len);
101 int GetCCWHullZ(
double* pts,
int len);
108 int GetSizeCCWHullX();
115 int GetSizeCCWHullY();
122 int GetSizeCCWHullZ();
139 int RectangleIntersection(
double hmin,
double hmax,
double vmin,
double vmax,
int direction);
142 int RectangleBoundingBoxIntersection(
143 double hmin,
double hmax,
double vmin,
double vmax,
int direction);
144 int RectangleOutside(
double hmin,
double hmax,
double vmin,
double vmax,
int direction);
146 int RectangleOutside1DPolygon(
double hmin,
double hmax,
double vmin,
double vmax,
int dir);
149 void ClearAllocations();
151 static int RemoveExtras(
double* pts,
int n);
152 static double Distance(
double* p1,
double* p2);
153 static vtkIdType PositionInHull(
double* base,
double*
top,
double* pt);
154 static int OutsideLine(
155 double hmin,
double hmax,
double vmin,
double vmax,
double* p0,
double* p1,
double* insidePt);
156 static int OutsideHorizontalLine(
157 double vmin,
double vmax,
double* p0,
double* p1,
double* insidePt);
158 static int OutsideVerticalLine(
159 double hmin,
double hmax,
double* p0,
double* p1,
double* insidePt);
166 float HullBBox[3][4];
173 VTK_ABI_NAMESPACE_END
virtual void Initialize()
Return object to instantiated state.
record modification and/or execution time
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.
void GetPoints(vtkIdList *ptId, vtkPoints *outPoints)
Given a list of pt ids, return an array of points.
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