Sophie

Sophie

distrib > Fedora > 14 > x86_64 > by-pkgid > 5035839f674c88dea1f7928a86fbdc64 > files > 730

geos-devel-3.2.1-3.fc14.x86_64.rpm

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<title>GEOS: geos::geom::GeometryCollection Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="doxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<!-- Generated by Doxygen 1.7.1 -->
<div class="navigation" id="top">
  <div class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
      <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
      <li><a href="files.html"><span>Files</span></a></li>
    </ul>
  </div>
  <div class="tabs2">
    <ul class="tablist">
      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
      <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
    </ul>
  </div>
  <div class="navpath">
    <ul>
      <li><a class="el" href="namespacegeos.html">geos</a>      </li>
      <li><a class="el" href="namespacegeos_1_1geom.html">geom</a>      </li>
      <li><a class="el" href="classgeos_1_1geom_1_1GeometryCollection.html">geos::geom::GeometryCollection</a>      </li>
    </ul>
  </div>
</div>
<div class="header">
  <div class="summary">
<a href="#pub-types">Public Types</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pro-methods">Protected Member Functions</a> &#124;
<a href="#pro-attribs">Protected Attributes</a> &#124;
<a href="#friends">Friends</a>  </div>
  <div class="headertitle">
<h1>geos::geom::GeometryCollection Class Reference</h1>  </div>
</div>
<div class="contents">
<!-- doxytag: class="geos::geom::GeometryCollection" --><!-- doxytag: inherits="geos::geom::Geometry" -->
<p>Represents a collection of heterogeneous <a class="el" href="classgeos_1_1geom_1_1Geometry.html" title="Basic implementation of Geometry, constructed and destructed by GeometryFactory.">Geometry</a> objects.  
<a href="#_details">More...</a></p>

<p><code>#include &lt;<a class="el" href="geom_8h_source.html">geos.h</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for geos::geom::GeometryCollection:</div>
<div class="dyncontent">
 <div class="center">
  <img src="classgeos_1_1geom_1_1GeometryCollection.png" usemap="#geos::geom::GeometryCollection_map" alt=""/>
  <map id="geos::geom::GeometryCollection_map" name="geos::geom::GeometryCollection_map">
<area href="classgeos_1_1geom_1_1Geometry.html" alt="geos::geom::Geometry" shape="rect" coords="201,0,392,24"/>
<area href="classgeos_1_1geom_1_1MultiLineString.html" alt="geos::geom::MultiLineString" shape="rect" coords="0,112,191,136"/>
<area href="classgeos_1_1geom_1_1MultiPoint.html" alt="geos::geom::MultiPoint" shape="rect" coords="201,112,392,136"/>
<area href="classgeos_1_1geom_1_1MultiPolygon.html" alt="geos::geom::MultiPolygon" shape="rect" coords="402,112,593,136"/>
</map>
</div>

<p><a href="classgeos_1_1geom_1_1GeometryCollection-members.html">List of all members.</a></p>
<table class="memberdecls">
<tr><td colspan="2"><h2><a name="pub-types"></a>
Public Types</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aacc50b649c48fe31257e244a94e63594"></a><!-- doxytag: member="geos::geom::GeometryCollection::const_iterator" ref="aacc50b649c48fe31257e244a94e63594" args="" -->
typedef std::vector&lt; <a class="el" href="classgeos_1_1geom_1_1Geometry.html">Geometry</a> * &gt;<br class="typebreak"/>
::const_iterator&nbsp;</td><td class="memItemRight" valign="bottom"><b>const_iterator</b></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a22d00e3fcec3002b3741fb907aebe6b1"></a><!-- doxytag: member="geos::geom::GeometryCollection::iterator" ref="a22d00e3fcec3002b3741fb907aebe6b1" args="" -->
typedef std::vector&lt; <a class="el" href="classgeos_1_1geom_1_1Geometry.html">Geometry</a> * &gt;<br class="typebreak"/>
::iterator&nbsp;</td><td class="memItemRight" valign="bottom"><b>iterator</b></td></tr>
<tr><td colspan="2"><h2><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af57e7454961b0c38af819435ecfe0278"></a><!-- doxytag: member="geos::geom::GeometryCollection::begin" ref="af57e7454961b0c38af819435ecfe0278" args="() const " -->
const_iterator&nbsp;</td><td class="memItemRight" valign="bottom"><b>begin</b> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a52d2232d5b596ea0609eba67bacb924b"></a><!-- doxytag: member="geos::geom::GeometryCollection::end" ref="a52d2232d5b596ea0609eba67bacb924b" args="() const " -->
const_iterator&nbsp;</td><td class="memItemRight" valign="bottom"><b>end</b> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classgeos_1_1geom_1_1Geometry.html">Geometry</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgeos_1_1geom_1_1GeometryCollection.html#a3b30808a1d17d793bdfb8db9cbacc755">clone</a> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classgeos_1_1geom_1_1CoordinateSequence.html">CoordinateSequence</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgeos_1_1geom_1_1GeometryCollection.html#a798b7e6d81a0d2c4340e499f46f30dd2">getCoordinates</a> () const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Collects all coordinates of all subgeometries into a <a class="el" href="classgeos_1_1geom_1_1CoordinateSequence.html" title="The internal representation of a list of coordinates inside a Geometry.">CoordinateSequence</a>.  <a href="#a798b7e6d81a0d2c4340e499f46f30dd2"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aafe3bc69c0c36251ab959b64844cf5df"></a><!-- doxytag: member="geos::geom::GeometryCollection::isEmpty" ref="aafe3bc69c0c36251ab959b64844cf5df" args="() const " -->
virtual bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgeos_1_1geom_1_1GeometryCollection.html#aafe3bc69c0c36251ab959b64844cf5df">isEmpty</a> () const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns whether or not the set of points in this <a class="el" href="classgeos_1_1geom_1_1Geometry.html" title="Basic implementation of Geometry, constructed and destructed by GeometryFactory.">Geometry</a> is empty. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classgeos_1_1geom_1_1Dimension.html#af46f1c0c325eb685fcf32987748d04cf">Dimension::DimensionType</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgeos_1_1geom_1_1GeometryCollection.html#af97c6e44c4a47a73f916c4c24f7fe646">getDimension</a> () const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the maximum dimension of geometries in this collection (0=point, 1=line, 2=surface).  <a href="#af97c6e44c4a47a73f916c4c24f7fe646"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classgeos_1_1geom_1_1Geometry.html">Geometry</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgeos_1_1geom_1_1GeometryCollection.html#a12466db79f69e3c7a45d34e758a366e9">getBoundary</a> () const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the boundary, or an empty geometry of appropriate dimension if this <code><a class="el" href="classgeos_1_1geom_1_1Geometry.html" title="Basic implementation of Geometry, constructed and destructed by GeometryFactory.">Geometry</a></code> is empty.  <a href="#a12466db79f69e3c7a45d34e758a366e9"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a47d95ab48216871f48269699d6a4d0c2"></a><!-- doxytag: member="geos::geom::GeometryCollection::getBoundaryDimension" ref="a47d95ab48216871f48269699d6a4d0c2" args="() const " -->
virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgeos_1_1geom_1_1GeometryCollection.html#a47d95ab48216871f48269699d6a4d0c2">getBoundaryDimension</a> () const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the maximum boundary dimension of geometries in this collection. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae6c42340491056bb17ed01d1be1e6914"></a><!-- doxytag: member="geos::geom::GeometryCollection::getNumPoints" ref="ae6c42340491056bb17ed01d1be1e6914" args="() const " -->
virtual size_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgeos_1_1geom_1_1GeometryCollection.html#ae6c42340491056bb17ed01d1be1e6914">getNumPoints</a> () const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the count of this Geometrys vertices. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac2a25a44ddca7090b61b0ead0fd87f47"></a><!-- doxytag: member="geos::geom::GeometryCollection::getGeometryType" ref="ac2a25a44ddca7090b61b0ead0fd87f47" args="() const " -->
virtual std::string&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgeos_1_1geom_1_1GeometryCollection.html#ac2a25a44ddca7090b61b0ead0fd87f47">getGeometryType</a> () const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Return a string representation of this <a class="el" href="classgeos_1_1geom_1_1Geometry.html" title="Basic implementation of Geometry, constructed and destructed by GeometryFactory.">Geometry</a> type. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae096d66ba53529fe4e00045a1f8745fa"></a><!-- doxytag: member="geos::geom::GeometryCollection::getGeometryTypeId" ref="ae096d66ba53529fe4e00045a1f8745fa" args="() const " -->
virtual <a class="el" href="namespacegeos_1_1geom.html#a98c5b0e81001a7c3fdc7a058960356d8">GeometryTypeId</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgeos_1_1geom_1_1GeometryCollection.html#ae096d66ba53529fe4e00045a1f8745fa">getGeometryTypeId</a> () const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Return an integer representation of this <a class="el" href="classgeos_1_1geom_1_1Geometry.html" title="Basic implementation of Geometry, constructed and destructed by GeometryFactory.">Geometry</a> type. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad19ed6a15b399ca9698b2bada9bbbeb5"></a><!-- doxytag: member="geos::geom::GeometryCollection::equalsExact" ref="ad19ed6a15b399ca9698b2bada9bbbeb5" args="(const Geometry *other, double tolerance=0) const " -->
virtual bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgeos_1_1geom_1_1GeometryCollection.html#ad19ed6a15b399ca9698b2bada9bbbeb5">equalsExact</a> (const <a class="el" href="classgeos_1_1geom_1_1Geometry.html">Geometry</a> *other, double tolerance=0) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns true if the two Geometrys are exactly equal, up to a specified tolerance. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad624fe93180fa1963ce12a67be5e7e4d"></a><!-- doxytag: member="geos::geom::GeometryCollection::apply_ro" ref="ad624fe93180fa1963ce12a67be5e7e4d" args="(CoordinateFilter *filter) const " -->
virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><b>apply_ro</b> (<a class="el" href="classgeos_1_1geom_1_1CoordinateFilter.html">CoordinateFilter</a> *filter) const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aeec60324ceef39221d358eed485eb73e"></a><!-- doxytag: member="geos::geom::GeometryCollection::apply_rw" ref="aeec60324ceef39221d358eed485eb73e" args="(const CoordinateFilter *filter)" -->
virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><b>apply_rw</b> (const <a class="el" href="classgeos_1_1geom_1_1CoordinateFilter.html">CoordinateFilter</a> *filter)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a27125692c3c11514aebd7b54060627fb"></a><!-- doxytag: member="geos::geom::GeometryCollection::apply_ro" ref="a27125692c3c11514aebd7b54060627fb" args="(GeometryFilter *filter) const " -->
virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><b>apply_ro</b> (<a class="el" href="classgeos_1_1geom_1_1GeometryFilter.html">GeometryFilter</a> *filter) const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a44b06c168f0ec5f4f3fb4f5692970b3c"></a><!-- doxytag: member="geos::geom::GeometryCollection::apply_rw" ref="a44b06c168f0ec5f4f3fb4f5692970b3c" args="(GeometryFilter *filter)" -->
virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><b>apply_rw</b> (<a class="el" href="classgeos_1_1geom_1_1GeometryFilter.html">GeometryFilter</a> *filter)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab4e79dd82f8b0f94aed07ac785d962de"></a><!-- doxytag: member="geos::geom::GeometryCollection::apply_ro" ref="ab4e79dd82f8b0f94aed07ac785d962de" args="(GeometryComponentFilter *filter) const " -->
virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><b>apply_ro</b> (<a class="el" href="classgeos_1_1geom_1_1GeometryComponentFilter.html">GeometryComponentFilter</a> *filter) const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a16f08b30a65d0d13dd2dd9bd21c16ab8"></a><!-- doxytag: member="geos::geom::GeometryCollection::apply_rw" ref="a16f08b30a65d0d13dd2dd9bd21c16ab8" args="(GeometryComponentFilter *filter)" -->
virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><b>apply_rw</b> (<a class="el" href="classgeos_1_1geom_1_1GeometryComponentFilter.html">GeometryComponentFilter</a> *filter)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgeos_1_1geom_1_1GeometryCollection.html#ad84bb98e501121800aa51ae6fee23fea">apply_rw</a> (<a class="el" href="classgeos_1_1geom_1_1CoordinateSequenceFilter.html">CoordinateSequenceFilter</a> &amp;filter)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgeos_1_1geom_1_1GeometryCollection.html#a8d516ba4111cd21d0e2149a88de6822a">apply_ro</a> (<a class="el" href="classgeos_1_1geom_1_1CoordinateSequenceFilter.html">CoordinateSequenceFilter</a> &amp;filter) const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab2190b25b62c7f3f39653628fd412051"></a><!-- doxytag: member="geos::geom::GeometryCollection::normalize" ref="ab2190b25b62c7f3f39653628fd412051" args="()" -->
virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgeos_1_1geom_1_1GeometryCollection.html#ab2190b25b62c7f3f39653628fd412051">normalize</a> ()</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Converts this <a class="el" href="classgeos_1_1geom_1_1Geometry.html" title="Basic implementation of Geometry, constructed and destructed by GeometryFactory.">Geometry</a> to normal form (or canonical form). <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a60408ee3a4afb6bc76818a0e5a646092"></a><!-- doxytag: member="geos::geom::GeometryCollection::getCoordinate" ref="a60408ee3a4afb6bc76818a0e5a646092" args="() const " -->
virtual const <a class="el" href="classgeos_1_1geom_1_1Coordinate.html">Coordinate</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgeos_1_1geom_1_1GeometryCollection.html#a60408ee3a4afb6bc76818a0e5a646092">getCoordinate</a> () const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns a vertex of this <a class="el" href="classgeos_1_1geom_1_1Geometry.html" title="Basic implementation of Geometry, constructed and destructed by GeometryFactory.">Geometry</a>, or NULL if this is the empty geometry. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a618fbe4b10e0d16177c5351cf9195c79"></a><!-- doxytag: member="geos::geom::GeometryCollection::getArea" ref="a618fbe4b10e0d16177c5351cf9195c79" args="() const " -->
virtual double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgeos_1_1geom_1_1GeometryCollection.html#a618fbe4b10e0d16177c5351cf9195c79">getArea</a> () const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the total area of this collection. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a14fd53eecc5722032d17b40db7eb164e"></a><!-- doxytag: member="geos::geom::GeometryCollection::getLength" ref="a14fd53eecc5722032d17b40db7eb164e" args="() const " -->
virtual double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgeos_1_1geom_1_1GeometryCollection.html#a14fd53eecc5722032d17b40db7eb164e">getLength</a> () const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the total length of this collection. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1d43e7b1bd08cdc2546638edf9ef54ce"></a><!-- doxytag: member="geos::geom::GeometryCollection::getNumGeometries" ref="a1d43e7b1bd08cdc2546638edf9ef54ce" args="() const " -->
virtual size_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgeos_1_1geom_1_1GeometryCollection.html#a1d43e7b1bd08cdc2546638edf9ef54ce">getNumGeometries</a> () const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the number of geometries in this collection. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2209d0b5ffe55df3b3839497e0f92ca6"></a><!-- doxytag: member="geos::geom::GeometryCollection::getGeometryN" ref="a2209d0b5ffe55df3b3839497e0f92ca6" args="(size_t n) const " -->
virtual const <a class="el" href="classgeos_1_1geom_1_1Geometry.html">Geometry</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgeos_1_1geom_1_1GeometryCollection.html#a2209d0b5ffe55df3b3839497e0f92ca6">getGeometryN</a> (size_t n) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns a pointer to the nth <a class="el" href="classgeos_1_1geom_1_1Geometry.html" title="Basic implementation of Geometry, constructed and destructed by GeometryFactory.">Geometry</a> int this collection. <br/></td></tr>
<tr><td colspan="2"><h2><a name="pro-methods"></a>
Protected Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad0178184866c4e95c65562d52be0bf23"></a><!-- doxytag: member="geos::geom::GeometryCollection::GeometryCollection" ref="ad0178184866c4e95c65562d52be0bf23" args="(const GeometryCollection &amp;gc)" -->
&nbsp;</td><td class="memItemRight" valign="bottom"><b>GeometryCollection</b> (const <a class="el" href="classgeos_1_1geom_1_1GeometryCollection.html">GeometryCollection</a> &amp;gc)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgeos_1_1geom_1_1GeometryCollection.html#a3f03f2cfa46a5c9871e668cfabeee02f">GeometryCollection</a> (std::vector&lt; <a class="el" href="classgeos_1_1geom_1_1Geometry.html">Geometry</a> * &gt; *newGeoms, const <a class="el" href="classgeos_1_1geom_1_1GeometryFactory.html">GeometryFactory</a> *newFactory)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Construct a <a class="el" href="classgeos_1_1geom_1_1GeometryCollection.html" title="Represents a collection of heterogeneous Geometry objects.">GeometryCollection</a> with the given <a class="el" href="classgeos_1_1geom_1_1GeometryFactory.html" title="Supplies a set of utility methods for building Geometry objects from CoordinateSequence or other Geom...">GeometryFactory</a>. Will keep a reference to the factory, so don't delete it until al <a class="el" href="classgeos_1_1geom_1_1Geometry.html" title="Basic implementation of Geometry, constructed and destructed by GeometryFactory.">Geometry</a> objects referring to it are deleted. Will take ownership of the <a class="el" href="classgeos_1_1geom_1_1Geometry.html" title="Basic implementation of Geometry, constructed and destructed by GeometryFactory.">Geometry</a> vector.  <a href="#a3f03f2cfa46a5c9871e668cfabeee02f"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a00176a390c4c8d076dd2419c2089d935"></a><!-- doxytag: member="geos::geom::GeometryCollection::computeEnvelopeInternal" ref="a00176a390c4c8d076dd2419c2089d935" args="() const " -->
virtual Envelope::AutoPtr&nbsp;</td><td class="memItemRight" valign="bottom"><b>computeEnvelopeInternal</b> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a27b438b5ee1661666545ddf15e93b3f1"></a><!-- doxytag: member="geos::geom::GeometryCollection::compareToSameClass" ref="a27b438b5ee1661666545ddf15e93b3f1" args="(const Geometry *gc) const " -->
virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><b>compareToSameClass</b> (const <a class="el" href="classgeos_1_1geom_1_1Geometry.html">Geometry</a> *gc) const </td></tr>
<tr><td colspan="2"><h2><a name="pro-attribs"></a>
Protected Attributes</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad55fc7843bb40121b9a00f213780fb81"></a><!-- doxytag: member="geos::geom::GeometryCollection::geometries" ref="ad55fc7843bb40121b9a00f213780fb81" args="" -->
std::vector&lt; <a class="el" href="classgeos_1_1geom_1_1Geometry.html">Geometry</a> * &gt; *&nbsp;</td><td class="memItemRight" valign="bottom"><b>geometries</b></td></tr>
<tr><td colspan="2"><h2><a name="friends"></a>
Friends</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a639aef3f5d0d27a72053343b0e09b5f3"></a><!-- doxytag: member="geos::geom::GeometryCollection::GeometryFactory" ref="a639aef3f5d0d27a72053343b0e09b5f3" args="" -->
class&nbsp;</td><td class="memItemRight" valign="bottom"><b>GeometryFactory</b></td></tr>
</table>
<hr/><a name="_details"></a><h2>Detailed Description</h2>
<p>Represents a collection of heterogeneous <a class="el" href="classgeos_1_1geom_1_1Geometry.html" title="Basic implementation of Geometry, constructed and destructed by GeometryFactory.">Geometry</a> objects. </p>
<p>Collections of <a class="el" href="classgeos_1_1geom_1_1Geometry.html" title="Basic implementation of Geometry, constructed and destructed by GeometryFactory.">Geometry</a> of the same type are represented by <a class="el" href="classgeos_1_1geom_1_1GeometryCollection.html" title="Represents a collection of heterogeneous Geometry objects.">GeometryCollection</a> subclasses <a class="el" href="classgeos_1_1geom_1_1MultiPoint.html" title="Models a collection of Point objects.">MultiPoint</a>, <a class="el" href="classgeos_1_1geom_1_1MultiLineString.html" title="Basic implementation of MultiLineString objects.">MultiLineString</a>, <a class="el" href="classgeos_1_1geom_1_1MultiPolygon.html" title="Basic implementation of MultiPolygon.">MultiPolygon</a>. </p>
<hr/><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="a3f03f2cfa46a5c9871e668cfabeee02f"></a><!-- doxytag: member="geos::geom::GeometryCollection::GeometryCollection" ref="a3f03f2cfa46a5c9871e668cfabeee02f" args="(std::vector&lt; Geometry * &gt; *newGeoms, const GeometryFactory *newFactory)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">geos::geom::GeometryCollection::GeometryCollection </td>
          <td>(</td>
          <td class="paramtype">std::vector&lt; <a class="el" href="classgeos_1_1geom_1_1Geometry.html">Geometry</a> * &gt; *&nbsp;</td>
          <td class="paramname"> <em>newGeoms</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classgeos_1_1geom_1_1GeometryFactory.html">GeometryFactory</a> *&nbsp;</td>
          <td class="paramname"> <em>newFactory</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Construct a <a class="el" href="classgeos_1_1geom_1_1GeometryCollection.html" title="Represents a collection of heterogeneous Geometry objects.">GeometryCollection</a> with the given <a class="el" href="classgeos_1_1geom_1_1GeometryFactory.html" title="Supplies a set of utility methods for building Geometry objects from CoordinateSequence or other Geom...">GeometryFactory</a>. Will keep a reference to the factory, so don't delete it until al <a class="el" href="classgeos_1_1geom_1_1Geometry.html" title="Basic implementation of Geometry, constructed and destructed by GeometryFactory.">Geometry</a> objects referring to it are deleted. Will take ownership of the <a class="el" href="classgeos_1_1geom_1_1Geometry.html" title="Basic implementation of Geometry, constructed and destructed by GeometryFactory.">Geometry</a> vector. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>newGeoms</em>&nbsp;</td><td>The <code><a class="el" href="classgeos_1_1geom_1_1Geometry.html" title="Basic implementation of Geometry, constructed and destructed by GeometryFactory.">Geometry</a></code>s for this <code><a class="el" href="classgeos_1_1geom_1_1GeometryCollection.html" title="Represents a collection of heterogeneous Geometry objects.">GeometryCollection</a></code>, or <code>null</code> or an empty array to create the empty geometry. Elements may be empty <code><a class="el" href="classgeos_1_1geom_1_1Geometry.html" title="Basic implementation of Geometry, constructed and destructed by GeometryFactory.">Geometry</a></code>s, but not <code>null</code>s.</td></tr>
  </table>
  </dd>
</dl>
<p>If construction succeed the created object will take ownership of newGeoms vector and elements.</p>
<p>If construction fails "IllegalArgumentException *" is thrown and it is your responsibility to delete newGeoms vector and content.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>newFactory</em>&nbsp;</td><td>the <a class="el" href="classgeos_1_1geom_1_1GeometryFactory.html" title="Supplies a set of utility methods for building Geometry objects from CoordinateSequence or other Geom...">GeometryFactory</a> used to create this geometry </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="a8d516ba4111cd21d0e2149a88de6822a"></a><!-- doxytag: member="geos::geom::GeometryCollection::apply_ro" ref="a8d516ba4111cd21d0e2149a88de6822a" args="(CoordinateSequenceFilter &amp;filter) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void geos::geom::GeometryCollection::apply_ro </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classgeos_1_1geom_1_1CoordinateSequenceFilter.html">CoordinateSequenceFilter</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>filter</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Performs a read-only operation on the coordinates in this Geometry's CoordinateSequences.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>filter</em>&nbsp;</td><td>the filter to apply </td></tr>
  </table>
  </dd>
</dl>

<p>Implements <a class="el" href="classgeos_1_1geom_1_1Geometry.html#a31aa2b7a73162848ceaffdb25d91a9dc">geos::geom::Geometry</a>.</p>

</div>
</div>
<a class="anchor" id="ad84bb98e501121800aa51ae6fee23fea"></a><!-- doxytag: member="geos::geom::GeometryCollection::apply_rw" ref="ad84bb98e501121800aa51ae6fee23fea" args="(CoordinateSequenceFilter &amp;filter)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void geos::geom::GeometryCollection::apply_rw </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classgeos_1_1geom_1_1CoordinateSequenceFilter.html">CoordinateSequenceFilter</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>filter</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Performs an operation on the coordinates in this Geometry's CoordinateSequences.s If the filter reports that a coordinate value has been changed, <a class="el" href="">geometryChanged</a> will be called automatically.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>filter</em>&nbsp;</td><td>the filter to apply </td></tr>
  </table>
  </dd>
</dl>

<p>Implements <a class="el" href="classgeos_1_1geom_1_1Geometry.html#a19566f7393929d162eead6ee454fe97f">geos::geom::Geometry</a>.</p>

</div>
</div>
<a class="anchor" id="a3b30808a1d17d793bdfb8db9cbacc755"></a><!-- doxytag: member="geos::geom::GeometryCollection::clone" ref="a3b30808a1d17d793bdfb8db9cbacc755" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="classgeos_1_1geom_1_1Geometry.html">Geometry</a>* geos::geom::GeometryCollection::clone </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Creates and returns a full copy of this <a class="el" href="classgeos_1_1geom_1_1GeometryCollection.html" title="Represents a collection of heterogeneous Geometry objects.">GeometryCollection</a> object. (including all coordinates contained by it).</p>
<dl class="return"><dt><b>Returns:</b></dt><dd>a clone of this instance </dd></dl>

<p>Implements <a class="el" href="classgeos_1_1geom_1_1Geometry.html#a25b5ab073477cee2d5b756a0d163c006">geos::geom::Geometry</a>.</p>

<p>Reimplemented in <a class="el" href="classgeos_1_1geom_1_1MultiLineString.html#a772aab048197c3b89176fa2df813bdfc">geos::geom::MultiLineString</a>, <a class="el" href="classgeos_1_1geom_1_1MultiPoint.html#a04a9e37d7cd6e5de2a6f42d9f04e2467">geos::geom::MultiPoint</a>, and <a class="el" href="classgeos_1_1geom_1_1MultiPolygon.html#af52232dd3f497ab0d4c5c31a476a79e9">geos::geom::MultiPolygon</a>.</p>

</div>
</div>
<a class="anchor" id="a12466db79f69e3c7a45d34e758a366e9"></a><!-- doxytag: member="geos::geom::GeometryCollection::getBoundary" ref="a12466db79f69e3c7a45d34e758a366e9" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="classgeos_1_1geom_1_1Geometry.html">Geometry</a>* geos::geom::GeometryCollection::getBoundary </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns the boundary, or an empty geometry of appropriate dimension if this <code><a class="el" href="classgeos_1_1geom_1_1Geometry.html" title="Basic implementation of Geometry, constructed and destructed by GeometryFactory.">Geometry</a></code> is empty. </p>
<p>(In the case of zero-dimensional geometries, an empty <a class="el" href="classgeos_1_1geom_1_1GeometryCollection.html" title="Represents a collection of heterogeneous Geometry objects.">GeometryCollection</a> is returned.) For a discussion of this function, see the OpenGIS Simple Features Specification. As stated in SFS Section 2.1.13.1, "the boundary of a Geometry is a set of Geometries of the
 next lower dimension."</p>
<dl class="return"><dt><b>Returns:</b></dt><dd>the closure of the combinatorial boundary of this <code><a class="el" href="classgeos_1_1geom_1_1Geometry.html" title="Basic implementation of Geometry, constructed and destructed by GeometryFactory.">Geometry</a></code>. Ownershipof the returned object transferred to caller. </dd></dl>

<p>Implements <a class="el" href="classgeos_1_1geom_1_1Geometry.html#a7519090aea0e06ee78fadcb1fc4bd2dd">geos::geom::Geometry</a>.</p>

<p>Reimplemented in <a class="el" href="classgeos_1_1geom_1_1MultiLineString.html#af4759ffa1782daeabf4cfb6891f703db">geos::geom::MultiLineString</a>, <a class="el" href="classgeos_1_1geom_1_1MultiPoint.html#a5f20a9f3f89a87b58e3d0ccbccb49307">geos::geom::MultiPoint</a>, and <a class="el" href="classgeos_1_1geom_1_1MultiPolygon.html#ad1b6aac0a17ed1ea52d26825bb9a0d73">geos::geom::MultiPolygon</a>.</p>

</div>
</div>
<a class="anchor" id="a798b7e6d81a0d2c4340e499f46f30dd2"></a><!-- doxytag: member="geos::geom::GeometryCollection::getCoordinates" ref="a798b7e6d81a0d2c4340e499f46f30dd2" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="classgeos_1_1geom_1_1CoordinateSequence.html">CoordinateSequence</a>* geos::geom::GeometryCollection::getCoordinates </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Collects all coordinates of all subgeometries into a <a class="el" href="classgeos_1_1geom_1_1CoordinateSequence.html" title="The internal representation of a list of coordinates inside a Geometry.">CoordinateSequence</a>. </p>
<p>Note that the returned coordinates are copies, so you want be able to use them to modify the geometries in place. Also you'll need to delete the <a class="el" href="classgeos_1_1geom_1_1CoordinateSequence.html" title="The internal representation of a list of coordinates inside a Geometry.">CoordinateSequence</a> when finished using it.</p>
<dl class="return"><dt><b>Returns:</b></dt><dd>the collected coordinates </dd></dl>

<p>Implements <a class="el" href="classgeos_1_1geom_1_1Geometry.html#a422a5feecf0fdf00e67b2bf696244003">geos::geom::Geometry</a>.</p>

</div>
</div>
<a class="anchor" id="af97c6e44c4a47a73f916c4c24f7fe646"></a><!-- doxytag: member="geos::geom::GeometryCollection::getDimension" ref="af97c6e44c4a47a73f916c4c24f7fe646" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="classgeos_1_1geom_1_1Dimension.html#af46f1c0c325eb685fcf32987748d04cf">Dimension::DimensionType</a> geos::geom::GeometryCollection::getDimension </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns the maximum dimension of geometries in this collection (0=point, 1=line, 2=surface). </p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classgeos_1_1geom_1_1Dimension.html#af46f1c0c325eb685fcf32987748d04cf">Dimension::DimensionType</a> </dd></dl>

<p>Implements <a class="el" href="classgeos_1_1geom_1_1Geometry.html#ae6e5cb68c6b3edb5b71dc983a2795c5c">geos::geom::Geometry</a>.</p>

<p>Reimplemented in <a class="el" href="classgeos_1_1geom_1_1MultiLineString.html#aa5e24e57a9314095772a833bac13a9a0">geos::geom::MultiLineString</a>, <a class="el" href="classgeos_1_1geom_1_1MultiPoint.html#aa84f3191d3c307db3703775c7d1389b4">geos::geom::MultiPoint</a>, and <a class="el" href="classgeos_1_1geom_1_1MultiPolygon.html#aded41b5e6d415ecc07f61bcc7fe2a332">geos::geom::MultiPolygon</a>.</p>

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="GeometryCollection_8h_source.html">GeometryCollection.h</a></li>
</ul>
</div>
<hr class="footer"/><address class="footer"><small>Generated on Thu Jul 22 2010 for GEOS by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
</body>
</html>