連日、不慣れなCATIAの2Dをやってきたお陰で、今まで知らなかった
機能に毎日出会ってます。
一度作った断面の位置を、変更する事が出来るなんて知りませんでしたよ・・・。
(SolidWorksやFusion360では、普通に出来て羨ましいと思ってました)
相変わらず不満もあるのですが、その一つがマウスで触ってしまうと
イロイロ動いてしまう事です。
こんな感じの図面を作成したとします。
右と下面図は正面図に依存した位置なのですが、断面図は依存しない
状態です。これってビューの位置をロックすると言う機能は恐らく
無いですよね? ビューをロックしても位置は動いちゃいますよね?
メーカーさんの場合あまりご存じないかも知れませんが、うちのような
孫請け末端にいると図面を位置合わせもせずにコピペで重ねて、
大まかな変更箇所を確認したりするんですよ。原始的ですが。
それを考えると、仮に設計変更が入ったとしてもビューの位置は
ズレて欲しくないんです。(欲を言えば寸法の位置も)
でも、動いちゃうんですよ。(AutoCADとかどうなんだろう?)
腹が立つので、ビューの位置を保存したり再現したりするマクロを
作りました。
※Ver0.0.3に修正した為、こちらをご覧下さい。
ビューの位置を保存・再現2 - C#ATIA
マクロを実行すると、こんなダイアログが出ます。
最初は別のマクロだったのですが、ビュー位置の保存と再現するマクロを一本化
してしまった上、Formを作りたくないと言う苦肉の策です。
はい - アクティブシート上の記録されているビュー位置を再現
いいえ - アクティブシート上全てのビュー位置を保存
キャンセル - 処理中止
です。
〇保存
表示・非表示問わずに全てのビュー位置を保存します。
保存先はCATDrawingのパラメータに
"views_pos_" + シート名
の文字列型のパラメータを作成します。
パラメータ内のフォーマットは
ビューインターナルネーム,X座標,Y座標@ビューインターナルネーム,X座標,Y座標@・・・
の状態です。ビューもインターナルネームが取得出来るのですね。
その為、ビュー名を変更しても大丈夫です!!
又、同一のパラメータ名のものがある場合は、上書きの確認を行います。
〇再現
上記のパラメータ名を探し出し確認ダイアログが出現します。
過去に保存されていない場合は、当然再現は出来ません。
又、過去に保存したのちにビューが増えている際は、警告が出ます。
増えているビューに対しては位置の移動は行いません。
削除により減っているビューに対しても当然、何も行いません。
実行後は、移動の有無を表示します。
確認している限りでのちょっとおかしな部分や問題点です。
〇依存との再現の矛盾
このような状態で位置を保存します。
最初の状態で、断面は依存していない位置です。
ここで依存状態に戻します。
依存しているので、断面は手動の場合はX方向しか動きません。
ここで再現させると
元に戻ります。あくまで記録した位置になります。
但し、メインのビューをちょっとでも動かすと
Y方向が依存した位置に戻ります。
〇結果のログとの矛盾
先程保存した状態からこんな感じでメインビューを動かし、
再現させます。(依存したビューは付いて来ただけです)
依存しているビューは動いているのに、ログはこんな感じで
嘘を付きます。
時間が出来たら直そうかな・・・。
Ver0.0.3で修正しました。
〇シート名を変更する
パラメータ名にシート名が入っている為、シート名を変更すると再現
出来なくなります。
が、上記のルールでパラメータ名を決めている為、パラメータ名を
変更する事で再現出来る様になるはずです。
逆にこれを利用すれば、位置の流用も可能かも。
〇差し替える為の新たなビューが再現されない
何らかの理由でビュー自体を差し替える為、コピーし同一のビュー名に
しても再現はされません。(言葉だと表現しにくいです)
ビュー名の重複(正面図やアイソメ図が複数出来るので)でも再現可能に
する為に、インターナルネームを利用している為です。
事前に「重ねる」等で工夫するしかないです。
〇角度が再現されない
忘れていました・・・スケールも再現しません。
あくまでXY座標だけです。ご要望があればで出来るようにしようかな?
Ver0.0.3で角度の再現は行うように、修正しました。
〇パラメータをロックしなくて良いの?
思ったより困難だったので諦めました。
Macro: Parameter, Remove constant. - DASSAULT: CATIA products - Eng-Tips
ビューの位置ってマクロだとアッサリ取得・設定出来るのですが、
手動だとわかりませんよね? プロパティとか探しても見当たらないんです。
でも、先日知りました。このツールバーで確認も移動も出来るんです。
海外のサイトで教わっていた人も「そんなツールバー見たことない」って
書いてました。これも連日の発見の一つです。