64 class GeoTessPosition;
155 :
GeoTessPolygon(center, radius, nEdges), bottom(h_bottom), top(h_top)
206 && radius > bottom->
getRadius(x, profiles) - 1e-4
207 && radius < top->
getRadius(x, profiles) + 1e-4
208 && GeoTessPolygon::contains(x);
222 && GeoTessPolygon::contains(x);
244 bool containsAll(vector<double*>& points, vector<double>& radii, vector<int>& layers, vector<GeoTessProfile**>& profiles)
246 for (
int i=0; i<(int)points.size(); ++i)
247 if (!contains(points[i], radii[i], layers[i], profiles[i]))
263 bool containsAny(vector<double*>& points, vector<double>& radii, vector<int>& layers, vector<GeoTessProfile**>& profiles)
265 for (
int i=0; i<(int)points.size(); ++i)
266 if (contains(points[i], radii[i], layers[i], profiles[i]))
271 virtual void write(
const string& outputFileName);
275 virtual void loadAscii(vector<string>& records);
An abstract class that represents a single "surface" within a model.
virtual double getRadius(const double *position, GeoTessProfile **profiles)
virtual int getLayerIndex()
Extends Polygon by including information and constraints about the radial dimension.
bool containsAll(vector< double * > &points, vector< double > &radii, vector< int > &layers, vector< GeoTessProfile ** > &profiles)
GeoTessPolygon3D(vector< double * > points, GeoTessHorizon *h_bottom, GeoTessHorizon *h_top)
virtual string class_name()
bool contains(const double *x, const double &radius, const int &layer, GeoTessProfile **profiles)
GeoTessHorizon * getTop()
GeoTessHorizon * getBottom()
bool contains(const double *x, const int &layer)
virtual void write(const string &outputFileName)
bool contains(GeoTessPosition &position)
GeoTessPolygon3D(string filename)
bool containsAny(vector< double * > &points, vector< double > &radii, vector< int > &layers, vector< GeoTessProfile ** > &profiles)
GeoTessPolygon3D(double *center, double radius, int nEdges, GeoTessHorizon *h_bottom, GeoTessHorizon *h_top)
An ordered list of points on the surface of a unit sphere that define a closed polygon.
Information about an interpolated point at an arbitrary position in a model.
Abstract class that manages the radii and data values that span a single layer associated with a sing...