お世話になります。質問ばかりですいません。
APIでプログラムを書いています。以前はなかったのですが、いつのころからAdddimension2で寸法の表記をしようと思っているところにダイアログBOXが出てくるようになりました。boolは両方ともTRUEですし、ダイアログボックスの数値も間違ってません。こちらはこれを出さずに流したのですが、何か設定変更をしてしまったのでしょうか。なにとぞお知恵を拝借願います。
下の例では2本のLINEをSelectByID2で選び、そこでaddDimension2を選んでいます。
Set skSegment = part.SketchManager.CreateLine(x_temp, y_temp, 0#, x1_temp, y1_temp, 0#) 'LINE7
Set skSegment = part.SketchManager.CreateCenterLine(x_temp, y_temp, 0#, x_temp, D4_m / 2, 0#) 'line6
'
boolstatus = part.Extension.SelectByID2("Line8", "SKETCHSEGMENT", -1 * Haba_A_m + D7_haba / 2, D4_m / 2 + D7_takasa / 2, 0#, False, 0, Nothing, 0)
boolstatus = part.Extension.SelectByID2("Line9", "SKETCHSEGMENT", x_temp, y_temp, 0#, True, 0, Nothing, 0)
Set myDisplayDim = part.AddDimension2(-1 * Haba_A_m + D7_haba / 2 * 1.8, D4_m / 2 + D7_takasa / 2 * 1.5, 0#) '開先BWを書く
Set mydimension = part.Parameter("D8@スケッチ2") '????
コメント
山本様
どうもありがとうございます。この辺りが普段使わないのでわからないのです。
是非ともこのような情報があればお教えいただけたらと思います。
ちなみにではありますが、その設定項目はSOLIDWORKSのシステムオプションの項目です。
もし、ユーザーがSOLIDWORKSを利用する環境で、そのAPIプログラムを走らせるのであれば、
ユーザーが切り替えることもあると思うので、
コード開始時に、GetUserPreferenceToggleで値をSOLIDWORKS設定を記憶しておいて、
そのあと、SetUserPreferenceToggleでFalseにして、
コード終了時に、SetUserPreferenceToggleで開始時の値に戻してあげると良いと思います。
自己解決です。SWを再セットしてレジストリも大概消しましたが結果は一緒です。なぜだろうと探したら出てきました。
swApp.SetUserPreferenceToggle swInputDimValOnCreate, False
これで寸法のON OFFができるようです。お騒がせしました。