C#ATIA

↑タイトル詐欺 主にCATIA V5 の VBA(最近はPMillマクロとFusion360APIが多い)

マウスカーソルの座標値を取得する5

こちらの続きです。
マウスカーソルの座標値を取得する4 - C#ATIA

前回上手くいかなかった原因が、単にチェックすべきベクトルを間違えていた
と言う、お粗末な内容でした・・・。(Fusion360は正しいです)

現状、ルートコンポーネントのZ軸に対しての角度は望んだ状態で
取得できる様になっているのですが、皆が全てZ軸で調べたいとは思えないので
任意の方向で測定できるようにしたいです。

その為、方向を選択できるように SelectionCommandInput を設置します。
おなじみの矢印のこれです。
f:id:kandennti:20180606191010p:plain
これ、便利なのですがイベントで悩みました。

選択された状態(又は全く選択されていない状態)をイベントで掴みたいのですが
InputChangedEventで行うべきなのか? SelectionEventで行うべきなのか?
が良くわかりませんでした。
わからないと悩んでいても仕方ないので、両方を試したのですが
要らないイベントばかり発生し、肝心なものにたどり着かない状況になり
途方に暮れていたのですが、こちらに答えが記載されていました。
Solved: how to use the SelectionEventHandler - Autodesk Community
InputChangedEventArgsで拾って、inputを SelectionCommandInput に
キャストするんですね。(僕も一ヶ月後これを見ても、何書いているのか理解できない)

もう2個ぐらい機能付ければ、公開したいな。
小原さんがアイデアに記載した、これを解決したい。
検査ー勾配解析、曲率マップ解析等でマウスを乗せたところに詳細な値を表示してほしい。 - Autodesk Community