| 6 | | 翻訳中・・・ |
| | 6 | 以上で、zcfg メタデータファイルの記述方法と、 C言語またはPython言語の選択によって、{{{service.c}}} または {{{ogr_service_provider.py}}} の短いコードが得られました。 |
| | 7 | この演習のゴールは、次のような複合ジオメトリサービスを実装することです : |
| | 8 | |
| | 9 | * Intersection |
| | 10 | * Union |
| | 11 | * Difference |
| | 12 | * !SymDifference |
| | 13 | |
| | 14 | == C バージョン == |
| | 15 | |
| | 16 | {{{source.c}}} ファイルの編集を選択された方は、このワークショップ演習を通して、追加した複合ジオメトリは、次のOGR C-API 関数を使用しています: |
| | 17 | |
| | 18 | * [http://www.gdal.org/ogr/ogr__api_8h.html#5a271b5c7b72994120e7a6bbc7e7e5cb OGR_G_Intersection](OGRGeometryH, OGRGeometryH) |
| | 19 | * [http://www.gdal.org/ogr/ogr__api_8h.html#f58f2cfbdb2497659d2eabea73d3b8a0 OGR_G_Union](OGRGeometryH, OGRGeometryH) |
| | 20 | * [http://www.gdal.org/ogr/ogr__api_8h.html#497977bec6ecd9dade7a9694f776be64 OGR_G_Difference](OGRGeometryH, OGRGeometryH) |
| | 21 | * [http://www.gdal.org/ogr/ogr__api_8h.html#d6dacf495617a230c6f19950bc415f17 OGR_G_SymmetricDifference](OGRGeometryH, OGRGeometryH) |
| | 22 | |
| | 23 | {{{Boundary.zcfg}}} ファイルを例に、 {{{InputPolygon}}} を {{{InputEntity1}}} にして、同様に {{{IntputEntity2}}} を追加することができます。ZOOメタデータファイルのそのほかの値についても、適当なメタデータ情報を設定してください。 |
| | 24 | |
| | 25 | |
| | 26 | == Python バージョン== |
| | 27 | |
| | 28 | {{{ogr_ws_service_provider.py}}} ファイルの編集を選択された方は、このワークショップ演習を通して、追加した複合ジオメトリは、次の {{{Geometry}}} インスタンスに適用された {{{osgeo.ogr}}} {{{Geometry}}} 関数を使用しています: |
| | 29 | |
| | 30 | * Intersection(Geometry) |
| | 31 | * Union(Geometry) |
| | 32 | * Difference(Geometry) |
| | 33 | * !SymmetricDifference(Geometry) |
| | 34 | |
| | 35 | {{{Boundary.zcfg}}} ファイルを例に、 {{{InputPolygon}}} を {{{InputEntity1}}} にして、同様に {{{IntputEntity2}}} を追加することができます。ZOOメタデータファイルのそのほかの値についても、適当なメタデータ情報を設定してください。 |
| | 36 | |
| | 37 | == サービスのテスト == |
| | 38 | |
| | 39 | ここで、複合ジオメトリサービスは、ローカル環境の上に配置されました。ブラウザ上から、前のセクションで作成した {{{zoo-ogr.html}}} をリロードしてください。そして新しいZOOサービスをテストしてください。 |
| | 40 | [[BR]] |
| | 41 | [wiki:ZooWorkshop/FOSS4GJapan WorkShop table of content] |