24 theUlCorner(0.0, 0.0, 0.0),
25 theLrCorner(0.0, 0.0, 0.0)
32 theUlCorner = points[0];
33 theLrCorner = theUlCorner;
34 minHgt = theUlCorner.hgt;
38 for(
ossim_uint32 index = 1; index < points.size(); index++)
41 if(theUlCorner.lond() > points[index].lond())
43 theUlCorner.lond(points[index].lond());
45 else if(theLrCorner.lond() < points[index].lond())
47 theLrCorner.lond(points[index].lond());
50 if(points[index].latd() > theUlCorner.latd())
52 theUlCorner.latd(points[index].latd());
54 else if(points[index].latd() < theLrCorner.latd())
56 theLrCorner.latd(points[index].latd());
59 if (points[index].hgt > maxHgt)
61 maxHgt = points[index].hgt;
63 else if (points[index].hgt < minHgt)
65 minHgt = points[index].hgt;
69 theUlCorner.hgt = maxHgt;
70 theLrCorner.hgt = minHgt;
116 double minHgt, maxHgt;
118 std::vector<ossimGpt> points(4);
131 for(index = 1; index < points.size(); index++)
152 if (points[index].hgt > maxHgt)
153 maxHgt = points[index].hgt;
154 else if (points[index].hgt < minHgt)
155 minHgt = points[index].hgt;
162 double lonSpacingInDegrees)
const 180 double latSpacingInDegrees,
181 double lonSpacingInDegrees,
182 bool clipToGeographicBounds)
const 187 lonSpacingInDegrees);
197 point.
latd()-latSpacingInDegrees,
198 point.
lond()+lonSpacingInDegrees);
202 if(clipToGeographicBounds)
204 rect = rect.clipToRect(clipRect);
206 result.push_back(rect);
208 point.
lond(point.
lond()+lonSpacingInDegrees);
211 point.
latd(point.
latd()-latSpacingInDegrees);
281 rtn = ((ulx <= lrx) && (uly >= lry));
double lond() const
Will convert the radian measure to degrees.
ossim_float64 width() const
Returns the width of a rectangle in deg.
ossimGrect stretchToEvenBoundary(double latSpacingInDegrees, double lonSpacingInDegrees) const
ossimGrect()
Will default to 0,0,0,0.
ossim_float64 hgt
Height in meters above the ellipsiod.
ostream & operator<<(ostream &os, const ossimGrect &rect)
double latd() const
Will convert the radian measure to degrees.
bool completely_within(const ossimGrect &rect) const
const ossimDatum * datum() const
datum().
void expandToInclude(const ossimGpt &gpt)
Expands existing rect to accommodate argument point.
ossim_float64 widthMeters() const
Returns the width of a rectangle in meters using the center lat for scaling EW direction.
bool pointWithin(const ossimGpt &gpt, bool considerHgt=false) const
METHOD: pointWithin(ossimGpt)
void computeEvenTiles(std::vector< ossimGrect > &result, double latSpacingInDegrees, double lonSpacingInDegrees, bool clipToGeographicBounds=true) const
unsigned int ossim_uint32
const ossimGpt & ul() const
ossimGpt midPoint() const
ossim_float64 heightMeters() const
Returns the height of a rectangle in meters.
ossim_float64 height() const
Returns the height of a rectangle in deg.
bool intersects(const ossimGrect &rect) const
const ossimGpt & lr() const
std::basic_ostream< char > ostream
Base class for char output streams.