📄 ogr__geometry_8h-source.html
字号:
<a name="l00211"></a>00211 {<a name="l00212"></a>00212 <span class="keyword">public</span>:<a name="l00213"></a>00213 OGRCurve();<a name="l00214"></a>00214 <span class="keyword">virtual</span> ~OGRCurve();<a name="l00215"></a>00215 <span class="comment">// ICurve methods</span><a name="l00216"></a>00216 <span class="keyword">virtual</span> <span class="keywordtype">double</span> get_Length() <span class="keyword">const </span>= 0;<a name="l00217"></a>00217 <span class="keyword">virtual</span> <span class="keywordtype">void</span> StartPoint(OGRPoint *) <span class="keyword">const </span>= 0;<a name="l00218"></a>00218 <span class="keyword">virtual</span> <span class="keywordtype">void</span> EndPoint(OGRPoint *) <span class="keyword">const </span>= 0;<a name="l00219"></a>00219 <span class="keyword">virtual</span> <span class="keywordtype">int</span> get_IsClosed() <span class="keyword">const</span>;<a name="l00220"></a>00220 <span class="keyword">virtual</span> <span class="keywordtype">void</span> Value( <span class="keywordtype">double</span>, OGRPoint * ) <span class="keyword">const </span>= 0;<a name="l00221"></a>00221 <a name="l00222"></a>00222 };<a name="l00223"></a>00223 <a name="l00224"></a>00224 <span class="comment">/************************************************************************/</span><a name="l00225"></a>00225 <span class="comment">/* OGRLineString */</span><a name="l00226"></a>00226 <span class="comment">/************************************************************************/</span><a name="l00227"></a>00227 <a name="l00232"></a><a class="code" href="classOGRLineString.html">00232</a> <span class="keyword">class </span>CPL_DLL OGRLineString : <span class="keyword">public</span> OGRCurve<a name="l00233"></a>00233 {<a name="l00234"></a>00234 <span class="keyword">protected</span>:<a name="l00235"></a>00235 <span class="keywordtype">int</span> nPointCount;<a name="l00236"></a>00236 <a class="code" href="classOGRRawPoint.html">OGRRawPoint</a> *paoPoints;<a name="l00237"></a>00237 <span class="keywordtype">double</span> *padfZ;<a name="l00238"></a>00238 <a name="l00239"></a>00239 <span class="keywordtype">void</span> Make3D();<a name="l00240"></a>00240 <span class="keywordtype">void</span> Make2D();<a name="l00241"></a>00241 <a name="l00242"></a>00242 <span class="keyword">public</span>:<a name="l00243"></a>00243 OGRLineString();<a name="l00244"></a>00244 <span class="keyword">virtual</span> ~OGRLineString();<a name="l00245"></a>00245 <a name="l00246"></a>00246 <span class="comment">// IWks Interface</span><a name="l00247"></a>00247 <span class="keyword">virtual</span> <span class="keywordtype">int</span> <a class="code" href="classOGRGeometry.html#68215bd90d675b7627a798b162c54ab1">WkbSize</a>() <span class="keyword">const</span>;<a name="l00248"></a>00248 <span class="keyword">virtual</span> OGRErr <a class="code" href="classOGRGeometry.html#b2c6583c2b7c3e526dcfe54a61470c1f">importFromWkb</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> *, <span class="keywordtype">int</span> = -1 );<a name="l00249"></a>00249 <span class="keyword">virtual</span> OGRErr <a class="code" href="classOGRGeometry.html#6fe8947602669a35136e107cd45b084d">exportToWkb</a>( OGRwkbByteOrder, <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> * ) <span class="keyword">const</span>;<a name="l00250"></a>00250 <span class="keyword">virtual</span> OGRErr <a class="code" href="classOGRGeometry.html#30561a301d44b1f90393ea4a78a5b0a5">importFromWkt</a>( <span class="keywordtype">char</span> ** );<a name="l00251"></a>00251 <span class="keyword">virtual</span> OGRErr <a class="code" href="classOGRGeometry.html#71184265101d21cffa5c50ee79afdd61">exportToWkt</a>( <span class="keywordtype">char</span> ** ppszDstText ) <span class="keyword">const</span>;<a name="l00252"></a>00252 <a name="l00253"></a>00253 <span class="comment">// IGeometry interface</span><a name="l00254"></a>00254 <span class="keyword">virtual</span> <span class="keywordtype">int</span> <a class="code" href="classOGRGeometry.html#266c427f00ea35fdc503393c210a115d">getDimension</a>() <span class="keyword">const</span>;<a name="l00255"></a>00255 <span class="keyword">virtual</span> <a class="code" href="classOGRGeometry.html">OGRGeometry</a> *<a class="code" href="classOGRGeometry.html#f2fe60f2bde104cb3eef16475f3f3cd8">clone</a>() <span class="keyword">const</span>;<a name="l00256"></a>00256 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classOGRGeometry.html#1702b5b8142abe761061a6cd44e50b05">empty</a>();<a name="l00257"></a>00257 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classOGRGeometry.html#a3d42b06ae6f7bbef6d1a2886da8d398">getEnvelope</a>( <a class="code" href="classOGREnvelope.html">OGREnvelope</a> * psEnvelope ) <span class="keyword">const</span>;<a name="l00258"></a>00258 <a name="l00259"></a>00259 <span class="comment">// ICurve methods</span><a name="l00260"></a>00260 <span class="keyword">virtual</span> <span class="keywordtype">double</span> <a class="code" href="classOGRCurve.html#1eab84f4cae72cab2f861d8e72fc71a6">get_Length</a>() <span class="keyword">const</span>;<a name="l00261"></a>00261 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classOGRCurve.html#28510cf9de71e098b50d241f6ab99cd1">StartPoint</a>(OGRPoint *) <span class="keyword">const</span>;<a name="l00262"></a>00262 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classOGRCurve.html#2e9e8e178c7e70efdecd1c50d95d537e">EndPoint</a>(OGRPoint *) <span class="keyword">const</span>;<a name="l00263"></a>00263 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classOGRCurve.html#c96e6d31c407cddc03cc1af9b99e486e">Value</a>( <span class="keywordtype">double</span>, OGRPoint * ) <span class="keyword">const</span>;<a name="l00264"></a>00264 <a name="l00265"></a>00265 <span class="comment">// ILineString methods</span><a name="l00266"></a><a class="code" href="classOGRLineString.html#d2f41c1c69feaea512d561cf16a0e4a3">00266</a> <span class="keywordtype">int</span> getNumPoints()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> nPointCount; }<a name="l00267"></a>00267 <span class="keywordtype">void</span> getPoint( <span class="keywordtype">int</span>, OGRPoint * ) <span class="keyword">const</span>;<a name="l00268"></a><a class="code" href="classOGRLineString.html#a4c8c1c903bca56f64bc5856f42b2e5c">00268</a> <span class="keywordtype">double</span> getX( <span class="keywordtype">int</span> i )<span class="keyword"> const </span>{ <span class="keywordflow">return</span> paoPoints[i].x; }<a name="l00269"></a><a class="code" href="classOGRLineString.html#be55ebb3fc3c9491eb937d2c5c240771">00269</a> <span class="keywordtype">double</span> getY( <span class="keywordtype">int</span> i )<span class="keyword"> const </span>{ <span class="keywordflow">return</span> paoPoints[i].y; }<a name="l00270"></a>00270 <span class="keywordtype">double</span> getZ( <span class="keywordtype">int</span> i ) <span class="keyword">const</span>;<a name="l00271"></a>00271 <a name="l00272"></a>00272 <span class="comment">// ISpatialRelation</span><a name="l00273"></a>00273 <span class="keyword">virtual</span> OGRBoolean <a class="code" href="classOGRGeometry.html#e751513a46c7e7b154796bfe494faf16">Equals</a>( <a class="code" href="classOGRGeometry.html">OGRGeometry</a> * ) <span class="keyword">const</span>;<a name="l00274"></a>00274 <a name="l00275"></a>00275 <span class="comment">// non standard.</span><a name="l00276"></a>00276 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classOGRGeometry.html#79f84a2b948d511f28c47c47577dea49">setCoordinateDimension</a>( <span class="keywordtype">int</span> nDimension ); <a name="l00277"></a>00277 <span class="keywordtype">void</span> setNumPoints( <span class="keywordtype">int</span> );<a name="l00278"></a>00278 <span class="keywordtype">void</span> setPoint( <span class="keywordtype">int</span>, OGRPoint * );<a name="l00279"></a>00279 <span class="keywordtype">void</span> setPoint( <span class="keywordtype">int</span>, <span class="keywordtype">double</span>, <span class="keywordtype">double</span> );<a name="l00280"></a>00280 <span class="keywordtype">void</span> setPoint( <span class="keywordtype">int</span>, <span class="keywordtype">double</span>, <span class="keywordtype">double</span>, <span class="keywordtype">double</span> );<a name="l00281"></a>00281 <span class="keywordtype">void</span> setPoints( <span class="keywordtype">int</span>, <a class="code" href="classOGRRawPoint.html">OGRRawPoint</a> *, <span class="keywordtype">double</span> * = NULL );<a name="l00282"></a>00282 <span class="keywordtype">void</span> setPoints( <span class="keywordtype">int</span>, <span class="keywordtype">double</span> * padfX, <span class="keywordtype">double</span> * padfY,<a name="l00283"></a>00283 <span class="keywordtype">double</span> *padfZ = NULL );<a name="l00284"></a>00284 <span class="keywordtype">void</span> addPoint( OGRPoint * );<a name="l00285"></a>00285 <span class="keywordtype">void</span> addPoint( <span class="keywordtype">double</span>, <span class="keywordtype">double</span> );<a name="l00286"></a>00286 <span class="keywordtype">void</span> addPoint( <span class="keywordtype">double</span>, <span class="keywordtype">double</span>, <span class="keywordtype">double</span> );<a name="l00287"></a>00287 <a name="l00288"></a>00288 <span class="keywordtype">void</span> getPoints( <a class="code" href="classOGRRawPoint.html">OGRRawPoint</a> *, <span class="keywordtype">double</span> * = NULL ) <span class="keyword">const</span>;<a name="l00289"></a>00289 <a name="l00290"></a>00290 <span class="keywordtype">void</span> addSubLineString( <span class="keyword">const</span> OGRLineString *, <a name="l00291"></a>00291 <span class="keywordtype">int</span> nStartVertex = 0, <span class="keywordtype">int</span> nEndVertex = -1 );<a name="l00292"></a>00292 <a name="l00293"></a>00293 <span class="comment">// non-standard from OGRGeometry</span><a name="l00294"></a>00294 <span class="keyword">virtual</span> OGRwkbGeometryType <a class="code" href="classOGRGeometry.html#26fef0fc5e95c9e8e526922476c778bd">getGeometryType</a>() <span class="keyword">const</span>;<a name="l00295"></a>00295 <span class="keyword">virtual</span> <span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code" href="classOGRGeometry.html#b9c97ddc4876f1aa563cc4c075bfb251">getGeometryName</a>() <span class="keyword">const</span>;<a name="l00296"></a>00296 <span class="keyword">virtual</span> OGRErr <a class="code" href="classOGRGeometry.html#a9e8bfb3c2129f25cf622660f734e1ba">transform</a>( <a class="code" href="classOGRCoordinateTransformation.html">OGRCoordinateTransformation</a> *poCT );<a name="l00297"></a>00297 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classOGRGeometry.html#aae1a2ced937a5900b2bfeb717bad6c9">flattenTo2D</a>();<a name="l00298"></a>00298 <a name="l00299"></a>00299 };<a name="l00300"></a>00300 <a name="l00301"></a>00301 <span class="comment">/************************************************************************/</span><a name="l00302"></a>00302 <span class="comment">/* OGRLinearRing */</span><a name="l00303"></a>00303 <span class="comment">/* */</span><a name="l00304"></a>00304 <span class="comment">/* This is an alias for OGRLineString for now. */</span><a name="l00305"></a>00305 <span class="comment">/************************************************************************/</span><a name="l00306"></a>00306 <a name="l00315"></a><a class="code" href="classOGRLinearRing.html">00315</a> <span class="keyword">class </span>CPL_DLL OGRLinearRing : <span class="keyword">public</span> OGRLineString<a name="l00316"></a>00316 {<a name="l00317"></a>00317 <span class="keyword">private</span>:<a name="l00318"></a>00318 <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classOGRPolygon.html">OGRPolygon</a>; <a name="l00319"></a>00319 <a name="l00320"></a>00320 <span class="comment">// These are not IWks compatible ... just a convenience for OGRPolygon.</span><a name="l00321"></a>00321 <span class="keyword">virtual</span> <span class="keywordtype">int</span> _WkbSize( <span class="keywordtype">int</span> b3D ) <span class="keyword">const</span>;<a name="l00322"></a>00322 <span class="keyword">virtual</span> OGRErr _importFromWkb( OGRwkbByteOrder, <span class="keywordtype">int</span> b3D,<a name="l00323"></a>00323 <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> *, <span class="keywordtype">int</span>=-1 );
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -