Grasshopperで作成した3DジオメトリをGISソフトで活用する際、Heronプラグインは非常に便利です。特に、道路網や河川など、順序が重要なポリラインデータをSHPファイルとしてエクスポートしたいケースは多いでしょう。今回は、そのHeronを使って順序付き曲線を3D SHPファイルとして出力する際に遭遇する可能性のある問題と、その対処法について深掘りします。

HeronでのSHPエクスポート、まさかのエラー?

あるユーザーが、Grasshopperで作成した順序付けされたポリラインのリストをHeronExport SHPコンポーネントで出力しようとしたところ、エラーが発生しました。リストを直接接続するとエラーになるのですが、不思議なことに、そのリストをFlatten Treeコンポーネントで平坦化すると問題なくエクスポートできるとのこと。しかし、これではせっかくの順序情報が失われてしまいます。GISで分析を行う上で、データの順序は非常に重要です。

HeronとGrasshopperのデータツリー構造のギャップ

この問題の根源は、Grasshopperのデータツリー構造Heronコンポーネントの入力要件の間にギャップがあると考えられます。Grasshopperではデータはツリー構造で管理されますが、外部連携系のプラグインは、入力として特定の形式(例えば完全にフラットなリストや、特定の深さのツリー構造)を期待することがあります。HeronExport SHPコンポーネントも、順序付きリストをそのまま受け入れる際に、内部的な処理で不整合を起こしている可能性があります。

順序を保ちつつエクスポートする工夫

では、順序を保ったままエクスポートするにはどうすれば良いでしょうか。一つのアプローチは、エクスポートしたい曲線のリストをSift PatternPartition Listなどのコンポーネントで、Heronが一度に処理できるような小さなチャンクに分割し、それぞれを順番にエクスポートする方法です。あるいは、リストの各アイテムにSeriesコンポーネントで生成した一意のIDを割り当て、HeronでSHPファイルに出力する際に属性情報として含めることで、QGISなどのGISソフトウェアで再度順序を復元することも有効です。

まとめ:Heronを使いこなすために

Heronは非常に強力なツールですが、Grasshopperの複雑なデータツリー構造との連携には工夫が必要です。今回のケースのように、リストの順序を維持しつつSHPファイルとしてエクスポートする際には、Heronの入力要件を理解し、必要に応じてリスト構造を適切に加工するスキルが求められます。このTipsを活用し、GrasshopperとGISの連携をよりスムーズに進めていきましょう。