タグ別アーカイブ: 数式

ラインやポリラインを滑らかな形に補正する。

※元のshapeファイルを上書きしてしまうため、スムージング用にファイルをコピーしてから実行してください。

エディタツールバーから、その他の編集ツール>高度な編集とすすみ、出てきたボタン群のうち右から3番目をポチッとクリック。

これだけ。

スムージング処理方法はスプライン補正っぽいので、ラインの構成点が少ないと、思った以上にグニャグニャに補正されてしまいます。用途に応じて使ってください。
—–

上記手順のようにボタンをクリックする方が簡単ですが、フィールド演算(高度な設定)を使って、同様の処理を行うことも可能です。
○上の式入力欄
 Dim pPolycurve As IPolycurve
 Set pPolycurve = [Shape]
 pPolycurve.Generalize 1
○下の答え入力欄
 pPolycurve

pPolycurve.Generalize 1は、値を適切に変更して、スムージングの処理をコントロールしてください。

数字を変えると、スプライン処理後の形が変わります。

ArcGIS9.2は、ジオメトリ演算が便利

例えば、従来であればpointの座標を求めようとした場合、フィールド演算で以下のような式を入力する必要がありました。

■ポイントのX座標
Dim dblX As Double
Dim pPoint As IPoint
Set pPoint = [Shape]
dblX = pPoint.X

→ dblX

ジオメトリ演算という機能が付いたので、上記の面倒な式を入力しなくても一発で面積や座標などをフィールドに入力することが出来るようになりました。
※機能が増えたというよりも、今まであった隠し機能が簡単に使えるようになった、という感じです。

条件分岐を使って数値を集計したい

GIS上の位置関係を利用して、標高+水深=水位などの計算をする事が出来ます。

・ テーブルを開き、フィールド追加
・ 高度なフィールド計算で、
  Dim water as double
  if [水深] > 0
  then water = [標高] + [水深]
  end if
 下のボックスに
  water
 を入力すれば、水位が作れる(水深が0の時は水深も0となる)

平均地盤高より50cm以上高い道路を探す

以下の基本的な探し方を知っていれば、色々と応用できます。

・ まず、高さをもったメッシュと道路のデータを用意する。
・ テーブル結合で道路と重なるメッシュの平均値からshpをつくる。
・ 属性検索で、elevation-標高>0.5 とすれば選択される。

ArcGISでは、欲しいデータを取得するために、様々な方法を駆使しますので、属性検索等の基本は覚えておくと良いでしょう。