自由に河床地形を作成できるようになることが、流況シミュレーションの第一歩です。iRICにはいろいろな河床地形の作成方法がありますが、ここでは、最も使い勝手が良い点群データを使うノウハウを教えます。(平面図、断面図を使う方法はこちら)
iRICはフリーの河川数値シミュレーションプラットフォームです。
点群データってなに?
河川の地形データをイチから作るとすれば、専門家ならいろいろな方法で測量します。(素人・個人の方ならどう測量するかは別途議論します。)どんな方法を使うにせよ、結果として得られるのは、基本的に測量した点の3次元座標(X, Y, Z)です。入門編ではポリゴンをiRIC上で直接作成しましたが、点群データは直接作成できません。Excelやメモ帳、あるいはUAVによる写真測量などで別途作成してインポートすることになります。一旦インポートした後は、点の追加、削除、移動などが可能です。
点群データをつくる
ここではExcelで簡単な点群データを作ってみましょう。
これをCSVファイルtest02.csvとして保存します。
点群データをインポートする
iRICをRiver2Dをソルバーとして起動し、プリプロセッサ―のオブジェクトブラウザー内の地理情報-Elevationを右ボタンクリックして「インポート」ー「点群データ」を選びます。そして、test02.csvを選び、「読み飛ばすヘッダ行数」などを適切に設定してOKします。
すると、8点がプロットされます。凡例は、Elevationの上で右クリックし、「凡例の設定…」から表示させることができます。またオブジェクトブラウザーでElevationが選択されている状態で、凡例の位置や形をマウスで変えることもできます。(iRICの操作は、基本的にオブジェクトブラウザーで選択したものに対して行います。プリプロセッサ―ウインドウの中でオブジェクトブラウザーで選択していないものを操作したり動かしたりはできません。見えているのに選択できないので少し直感的ではない部分があります。逆に、思わぬものを動かしてしまい、びっくりすることもあります。とにかく慣れてくださいね!)
さて、このたった8点のデータだけで地形ができているわけがないと思うかもしれませんが、実はこれで水路の形はできています。
Elevationの表示形式を変更する
今度は、今インポートした「点群データ1」を右ボタンクリックして、プロパティを開きましょう。現在の表示方法が「点」になっていることがわかります。
表示方法を「補間された面」にしてみましょう。すると、先ほどの8点の間が塗りつぶされ、面ができていることがわかります。この面がある範囲には、地形データが存在しているのです。台形断面で勾配1/100の直線水路です。
表示方法をワイヤーフレームにしてみましょう。点の間が線で結ばれ、細長い三角形が形成されています。TIN (Triangulated irregular network)という3Dサーフェスの表現型式です。色のグラデーションを見ると、右端は高く、左端は低くなり、その間は直線的に色が変わっているように見えます。ワイヤーフレームの三角形の内部に、三角形がなす平面があると仮定して標高値が補間されているのです。
点群から面的な標高値がつくられる基本的な考え方がおわかりいただけたでしょうか。
点群を編集して水制をつくる
水路の真ん中に左岸から水路の中央まで突き出た水制を作ってみます。複数の方法がありますが、ここでは点群を編集して作ります。編集するには、編集対象の点群データをオブジェクトブラウザーで選択した状態で、ツールバーか、プリプロセッサ―のマップ上での右クリックから機能を選びます。
ここでは「新しい点の追加」を使ってみましょう。すると、下図のダイアログが開きます。通常のグラフィックソフトなどとは異なり、まず既存の点を選択して、その点と同じ標高を持つ点を新設していく、という機能です。もちろん座標や標高は後で変更・編集もできます。ちなみに、この編集の際にはプロパティで点表示にしておかないと、新設した点が見えませんので注意してください。
下図は、左側の点を選んで、水路の中央付近に水制の頂部の端点を作成した状態です。点を置いてEnterを押すと、図のように最初に選んだ点の標高値(ここでは0)が表示されるので、1.5に書き換えてOKします。
次に、新設した点を選択し、右ボタンクリックして「選択した点の編集」を選びます。そして座標を下図のように書き換えましょう。1:1の傾斜を持った護岸の中央部の正確な座標です。(この水路の形についてのイメージをしっかり持っておく必要があります。)
さて、これではまだ水制の形が完成していないのは明らかですが、地形にどのような影響を与えたのか見てみましょう。点を追加しただけではまだTINに影響を与えていませんので、右ボタンクリックして「TINの再生成」を選びます。その上で、ワイヤーフレームや補間された面表示にしてみましょう。
右岸(上辺)の護岸の最上部と水路中央の水制の頂点を結ぶ三角形が形成され、もともと意図していた右岸の護岸基部の上流下流のつながりが失われています。単に新点を打ち、TINを再生成するだけでは、どうしてもどこかにこのような意図しない三角形が形成されてしまいます。
分割線を活用する
分割線は既に設置した点と点をつなぐことができる線で、その線をまたいだ三角形が形成されないようにする働きがあります。例えば、右岸護岸下部の2点を「分割線の追加」ツールでつないでから、TINを再生成し、ワイヤーフレームや補間された面表示にしてみてください。図中の黒太線が分割線です。少なくとも右岸の護岸の形は期待したものになりましたね。
いくつか点と分割線を追加し、水制の形を完成させたものが下図です。「点の補間追加」を活用し、標高の手計算をしなくても正しい標高の点が作成できるように考えて作りました。(そういえばそもそも最初の水制の頂点も、座標や標高を手入力しなくても「点の補間追加」で作成できますね。パズルです。HELPも見ながらご自身で考えてみてください。)
どうすれば工数少なく正しい地形ができるか考えながら作業するのは楽しいものです。分割線をどう使うかが鍵になりますよ!
なお、不要な点を削除する時は右クリックメニューの中ほどにある「選択された点の削除」を使うように注意してください。どうしても、右クリックメニュー最下部で目立っている「削除」を選んでしまいそうになりますが、点群データ全体が消えてしまいますよ!
その他のヒント
ここまでの作業では、Elevationに単一の「点群データ1」をつくり、それを編集することで地形をつくりました。でも、Elevationには他の点群データやポリゴンなど、複数のパーツを追加することができます。オブジェクトブラウザで上位にあるものが上に重なります。点群データどうしを重ねると、全体が一つの点群データとして扱われるのではなく、上の点群データで構成されるTINが下の点群データのTINを覆い隠して重なる形になります。ポリゴンなども同様です。今回の事例だと、水制だけを別の点群やポリゴンで作成して、水路の上に重ねることもできるわけです。(なお、2つの点群データを1つにしたいなら、右クリックで「マージ」を使います。)
最後に身もふたもないことを言うようですが、実をいうといくら頑張って正確な地形を作り上げても、次の格子生成の段階でその地形がうまく生かされるとは限らないのです。今回作った水制の形は、格子生成するのはちょっと難しい地形と言えます。次は格子生成を教えますので、それを理解した上で格子生成しやすい地形が作成できるようになれば、あなたもiRIC/River2Dマスターですね。
Have fun!
コメント