Re: [OSGeoJapan-discuss] Douglas-Peukerなどを用いた簡素化についてのアルゴリズムを教えてください。
Yoichi Kayama
yoichi.kayama @ gmail.com
2010年 6月 27日 (日) 01:56:39 EDT
かやまです
元メールにJavaかJavaScript と書いてあったのを見落としていました
Javaだとここです
http://www.vividsolutions.com/jts/javadoc/com/vividsolutions/jts/simplify/package-summary.html
JTS Topology Suite というやつが FOSS4Gの世界では Javaで空間情報を
あつかう場合の定番です。
2010年6月27日14:27 Yoichi Kayama <yoichi.kayama @ gmail.com>:
> かやまです
>
> ラガワン先生紹介のページみてみると
>
>>Performed by the GEOS module.
>
> とあります
>
> QGISのftoolプラグインにも同様の機能があるのでソース追ってみました
>
>
> doGeometry.py というpythonのモジュールですが
>
> def simplify_geometry( self ): こういう関数がありまして
>
>
> while vprovider.nextFeature( inFeat ):
> nElement += 1
> self.emit( SIGNAL( "runStatus(PyQt_PyObject)" ), nElement )
> inGeom = inFeat.geometry()
> atMap = inFeat.attributeMap()
> outGeom = QgsGeometry(inGeom.simplify(tolerance))
> if outGeom is None:
> return "math_error"
> outFeat.setAttributeMap( atMap )
> outFeat.setGeometry( outGeom )
> writer.addFeature( outFeat )
>
> こんなかんじです
>
> 実際の処理はここなんですが
> outGeom = QgsGeometry(inGeom.simplify(tolerance))
>
> 多分ここも GEOS のライブラリを参照しているので GEOSのライブラリを
> 使うといいのかもしれません
>
> http://trac.osgeo.org/geos/
>
>
>
>
>
> 2010年6月27日13:58 Venkatesh Raghavan <raghavan @ media.osaka-cu.ac.jp>:
>> On 2010/06/27 13:48, wakasa masao wrote:
>>
>>> ではPostGISのST_Simplifyは何をやっているんだろう・・。
>>
>> ST_Simplify also use the same Douglas-Peuker algorithm
>> for line generalization
>> Details at:
>> http://postgis.refractions.net/docs/ST_Simplify.html
>>
>> Best
>>
>> Venka
>>
>
OSGeoJapan-discuss メーリングリストの案内