初めてのポスターはこちら。これに固有の答えを長い間探していましたが、運がありません。
ArcMap のマップ インターフェイスの任意の場所に描画された四角形の境界座標を記録するツールを VB.NET で作成しています。「マウスアップ」リリース座標に加えて、「マウスダウン」クリック座標を記録する必要があります。
mapbasic を使用して mapinfo で同じことを行いましたが、これはこれまでで最も簡単なことでした:
' xy where user clicked
x1 = CommandInfo(CMD_INFO_X)
y1 = CommandInfo(CMD_INFO_y)
' xy where user released
x2 = CommandInfo(CMD_INFO_X2)
y2 = CommandInfo(CMD_INFO_y2)
' check and apply correct ordering of max/min x/y values
if x1 > x2 then
maxX = x1
minX = x2
else
maxX = x2
minX = x1
end if
if y1 > y2 then
maxY = y1
minY = y2
else
minY = y2
maxY = y1
end if
残念ながら、VB.NET でこれを単純に行うことはできないようです。これを正しく実行するには、一連のサブ/クラスを作成し、イベントを使用する必要があるという印象を受けますが、どこから始めればよいかわかりません。誰でも私を助けることができますか?マップ インターフェイスのどこでもこれを実行できる必要があることに注意してください (つまり、フォーム/ピクチャ ボックス内などではありません)。Visual Studio 2012 を使用しています。
ありがとう
-L