17#ifndef vtkPointsProjectedHull_h 
   18#define vtkPointsProjectedHull_h 
   20#include "vtkCommonDataModelModule.h"  
   23VTK_ABI_NAMESPACE_BEGIN
 
  139  int RectangleIntersection(
double hmin, 
double hmax, 
double vmin, 
double vmax, 
int direction);
 
  140  int GrahamScanAlgorithm(
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];
 
a simple class to control print indentation
 
the convex hull of the orthogonal projection of the vtkPoints in the 3 coordinate directions
 
int GetSizeCCWHullY()
Returns the number of points in the convex hull of the projection of the points down the positive y-a...
 
int GetCCWHullY(double *pts, int len)
 
int GetCCWHullZ(double *pts, int len)
 
int RectangleIntersectionY(vtkPoints *R)
of the parallel projection along the Y axis of the points
 
int GetSizeCCWHullX()
Returns the number of points in the convex hull of the projection of the points down the positive x-a...
 
int RectangleIntersectionX(vtkPoints *R)
determine whether the resulting rectangle intersects the convex hull of the projection of the points ...
 
~vtkPointsProjectedHull() override
 
int RectangleIntersectionX(float ymin, float ymax, float zmin, float zmax)
the convex hull of the projection of the points along the positive X-axis.
 
int GetCCWHullZ(float *pts, int len)
Returns the coordinates (x, y) of the points in the convex hull of the projection of the points down ...
 
int GetCCWHullX(float *pts, int len)
Returns the coordinates (y,z) of the points in the convex hull of the projection of the points down t...
 
int RectangleIntersectionZ(double xmin, double xmax, double ymin, double ymax)
 
int RectangleIntersectionX(double ymin, double ymax, double zmin, double zmax)
 
void Update()
Forces recalculation of convex hulls, use this if you delete/add points.
 
int GetCCWHullY(float *pts, int len)
Returns the coordinates (z, x) of the points in the convex hull of the projection of the points down ...
 
int RectangleIntersectionY(float zmin, float zmax, float xmin, float xmax)
the convex hull of the projection of the points along the positive Y-axis.
 
int GetSizeCCWHullZ()
Returns the number of points in the convex hull of the projection of the points down the positive z-a...
 
int RectangleIntersectionZ(float xmin, float xmax, float ymin, float ymax)
the convex hull of the projection of the points along the positive Z-axis.
 
void Reset() override
Make object look empty but do not delete memory.
 
static vtkPointsProjectedHull * New()
 
int GetCCWHullX(double *pts, int len)
 
int RectangleIntersectionZ(vtkPoints *R)
of the parallel projection along the Z axis of the points
 
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
 
void Initialize() override
Return object to instantiated state.
 
int RectangleIntersectionY(double zmin, double zmax, double xmin, double xmax)
 
represent and manipulate 3D points
 
void GetPoints(vtkIdList *ptId, vtkPoints *outPoints)
Given a list of pt ids, return an array of points.
 
virtual void Initialize()
Return object to instantiated state.
 
record modification and/or execution time