アセンブリで補助記号C、切り欠いた寸法を入れる方法

CADをはじめたころは若かったか?このことはちょっとおいておいて———————————& … “アセンブリで補助記号C、切り欠いた寸法を入れる方法” の続きを読む

CADをはじめたころは
若かったか?
このことはちょっとおいておいて
————————————————————————————————–

ソリッドワークスのスマート寸法のCは少し使いにくい。
カットする面(線)を先に指定し、続く面(線)を指定する。
10x45゜となるが、左側にあるプロパティマネージャーの中の「C」ボタンを押すと
C10となる。

1分と30秒間の動画
始めにアセンブリの全体が見えて、そして、その図面を書く。

若かったというのは、
動画のように端面を2つ指定しないといけないが、側面図からだとリブ(補強材、肉のスペアリブのリブは助骨アバラ)の2つの線を指定できない。
何度も以下のアラートを見た。
選択エッジで面取りは作成できません。別の
「選択エッジで面取りは作成できません。別のエッジを選択してください。」
というエラー?アラート?
この意味はわかる。
指定先はリブでないといけない。
しかし、
アセンブリなのでたまたま指定できな所がある。
Ctrlを押しながらとか、マウスをゆっくり近づけて選択した先の色の変化を見たりと何度かしたが
もともと、「スマート寸法のCは面倒」という苦手意識がそうさせたのかな?
以下のことに気がついたのは2日後の風呂の中。
「一度、非表示にすればいい」 

ヒラメキが悪くなったのは年のせいか?
苦手という余計な気持ちまでも含めて考えるのがわるいのか?

最近のコマーシャルで見た
借金返済のことで脳内がいっぱいで他のことが考えられないってなのがあったな~。
考えることを少なくすることがいいのかもね。

マネージャーパネル(ユーザーインターフェース)

文書を書くとき「ウィンド」とか「左横」のとかしか書けない。 同僚と話をする場合は画面を指でさせばいい。ので覚える機会はない。 で、 ユーザー インターフェースと言うらしい。 この言葉はほぼ日本語になっているかな。 使う人 … “マネージャーパネル(ユーザーインターフェース)” の続きを読む

文書を書くとき「ウィンド」とか「左横」のとかしか書けない。

同僚と話をする場合は画面を指でさせばいい。ので覚える機会はない。
で、
ユーザー インターフェースと言うらしい。
この言葉はほぼ日本語になっているかな。
使う人、交差、顔
使う人と出会う顔 
c54ecb9b.png

本来、
名前はその機能を理解する手立てになる。役立つなら覚える。
左のウィンドは、デザインツリー。デザインした順にツリーができる。
PropertyManagerプロパティマネージャー。プロパティのマネージャ。設定を何とかする人。

穴寸法テキスト

寸法を入れる時、スマート寸法を使う。Cもスマート寸法だ。でも穴はスマート寸法ではできない!!!??(できる。最後の「追記」)「穴寸法テキスト」は別のアイコンだ。引き出し線を水平に折り曲げて文字を書きたい場合「穴寸法テキス … “穴寸法テキスト” の続きを読む

寸法を入れる時、
スマート寸法を使う。
Cもスマート寸法だ。
でも穴はスマート寸法ではできない!!!??(できる。最後の「追記」)
「穴寸法テキスト」は別のアイコンだ。
引き出し線を水平に折り曲げて文字を書きたい場合「穴寸法テキスト」。
穴寸法テキスト

Φ20が穴寸法テキスト
Φ25はスマート寸法

ついでに、
スマート寸法は、引出線を水平に折り曲げての設定もできるように思えるのだが?
できない?
Cができるのにね。
ま、このCの使い方も記憶する必要があるのだが、カットした線を選んでから続く線を選ぶと45度の表示になるので「気にせず」左ウィンドウ(マネージャーパネルっていうんだね)の中のCのアイコンを押すとC数値とかになる。
スマート寸法

追記
こんなトコにありました。
「ユーザー定義テキスト位置」ね。覚えとかないと。
「スマート寸法」でできるのね。
ユーザー定義テキスト位置

<<<<<<<

図面の名前がファイル名に自動的に変わるって何で?

新しく図面を作り、名前を付けて保存すると、そのファイル名が図面の表題に入る。これっって?。どんな仕組みなんだろうと思いながらも目の前のしたいことをする。それで、1年以上も経った。たまたま、右クリックメニューの中の「テキス … “図面の名前がファイル名に自動的に変わるって何で?” の続きを読む

新しく図面を作り、名前を付けて保存すると、そのファイル名が図面の表題に入る。
これっって?。どんな仕組みなんだろうと思いながらも目の前のしたいことをする。
それで、1年以上も経った。
たまたま、右クリックメニューの中の「テキスト ウインドウ編集」。
ここに変数を書くとはね~、想像できなかったわ。テキスト ウィンドウでね~。
もうちょっとプロパティ名とか、変数名とか書いてあれば感が働くのであるが。
なんで、このタイトルなんかなな~。
ともかく、
何か変数があるのだろうと思っていたがなかなかみつからなかったが、見つけたということ。 
48c9fbe2.png
これは、テキスト領域を右クリックして「ウインドウでテキストを編集(R)」。これ以外ではわからんというかテキストの単純な編集ではこの変数は出てこない。
20f6ad97.png
編集は、ここでする。プロパティ名というか変数名がわかる。
8efd719d.png

赤丸のアイコン。
何んとあるある。
SWFormatSize
SW-シート名(Sheet Name)
SW-サブタイトル(Subject)
SW-タイトル(Title)
SW-ファイル名(File Name)
SW-フォルダ名(Folder Name)
SW-更新日時(Last Saved Date)
SW-更新者(Last Saved By)
SW-作成者(Author)
SW-作成日時(Created Date)
などなど
ヘルプはココ
2011では、C:\ProgramData\SolidWorks\SolidWorks 2011\lang\japanese\properties.txt
C:\ProgramData\SolidWorks\SolidWorks 2011\lang\japanese\
は、システムオプションの「ファイルの検索」-「ユーザー定義プロパティファイル」のパス。
SolidWorksのヘルプの「インストール_ディレクトリ 」って
C:\ProgramData\SolidWorks\SolidWorks 2011
なんね

ところで、
赤いアイコンだが、
ソフトを作る方もユーザーが分かりやすいように考えて作っている。
プロパティを意味するようなアイコンなのだろうな~。

板金 段曲げ

このブログでは、 ベースフランジを作る方法で部品を作ることが多い。 段曲げ(丸井工業(株))という板厚程度の段差(Z曲げ)をつける場合はフランジの追加をするより側面図を線で描き、板金のベースフランジで 外寸にするか内寸に … “板金 段曲げ” の続きを読む

このブログでは、
ベースフランジを作る方法で部品を作ることが多い。
段曲げ(丸井工業(株))という板厚程度の段差(Z曲げ)をつける場合はフランジの追加をするより側面図を線で描き、板金のベースフランジで

外寸にするか内寸にするかは次のようにする

なお、
押出し薄板フィーチャを使う方もある。シェル化と同じかな。
線を引いて、スケッチのエンティティオフセットで板厚分を作って、押し出し、
板金化すれば、板金のフランジなどが使えるので何とでもなる。

こんな金型があるんです。
便利ですね。
あったら。

フォルダ内の全ファイルを自動的に呼び込んでPDFに保存するマクロ VBA

ソリッドワークスはVBAが使える。VBAはExcelで使ったことがあるのでなんとなくわかるがSolidWorksのオブジェクトの使い方を探さないといけない。使い方よりサンプルだ。 これ、相当以前からやりたかっがやっとでき … “フォルダ内の全ファイルを自動的に呼び込んでPDFに保存するマクロ VBA” の続きを読む

ソリッドワークスはVBAが使える。
VBAはExcelで使ったことがあるのでなんとなくわかるがSolidWorksのオブジェクトの使い方を探さないといけない。使い方よりサンプルだ。

これ、相当以前からやりたかっがやっとできた。
あるフォルダにある全図をPDFにできるようになった。うれしい。

で、
何をしてできたのかというと、googleしたのだが、
・マクロの操作を保存する方法
・ソリッドワークスのライブラリのヘルプ場所、サンプル探し
・ファイル一覧の方法
思い出せないので随時。

準備
ツールのユーザー定義で以下のダイアログを表示し、マクロにチェックを入れる。
1845ce89.png
マクロにチェックを入れると以下が見えるようになる。
99d222fe.png

—————————————————————-
全部自分でプログラムを書くのは面倒なのでやりたいことを操作してプログラムを作れせる。
適当なSLDDRW拡張子のファイルを呼び込んでおく。
Image.pngを押して、同じ名前でPDFファイルを保存する。(余計なこと、関係ないことをマウスで操作しないこと!!!。プログラムが煩雑になる)
以下が出来上がった。bdd88b78.pngを押すとマクロのファイルを指定して呼び出すことができる。
Dim swApp As Object

Dim Part As Object
Dim boolstatus As Boolean
Dim longstatus As Long, longwarnings As Long

Sub main()

Set swApp = _
Application.SldWorks

Set Part = swApp.ActiveDoc
Part.ViewZoomtofit2
longstatus = Part.SaveAs3(“C:\Users\tanaka\Desktop\図面1\maru1.PDF”, 0, 0)
End Sub

!!注意、フォントの関係で\は¥のこと。!!!!!
この中で”C:\Users\tanaka\Desktop\図面1\maru1.PDF”の文字列が作れればほぼ完成している。

ついでに、ツールの参照設定でsolidworks????あたりを参照しておくと、コードを書くときに変数宣言時やイミディエイトでメソッドの使い方を教えてくれたり、メンバを一覧表示してくれたりする。
83ab1822.png
やらなくても動くが、やっておこう。

—————————————————————–
今呼び込んでいる図面をPDFで保存するマクロは以下です。ファイル名の拡張子SLDDRWをPDFに変えるだけ。
Dim swApp As Object

Dim Part As Object
Dim boolstatus As Boolean
Dim longstatus As Long, longwarnings As Long

Sub main()

  Set swApp = _
  Application.SldWorks

  Set Part = swApp.ActiveDoc
  Part.ViewZoomtofit2
  ss = Part.GetPathName’今呼び込んでいる図面のパス名+ファイル名をssに入れる
  kk = Split(ss, “.”)’.文字で区切って、各文字列を配列に入れる。kkは配列になる。UBound(kk)で配列の個数
  ‘拡張子を取り外し。パス+ファイル名(拡張子なし)がssに入る
  ss = Left(ss, Len(ss) – Len(kk(UBound(kk))) – 1)
  longstatus = Part.SaveAs3(ss & “.PDF”, 0, 0)’拡張子はPDFとして保存
End Sub

この中で厄介なので現在の呼び込んでいるファイル名やパス名を取り出す方法。
これはマクロ記憶ではできない。
GetPathNameメソッドを探すのには苦労した。APIのドキュメントで見つけることができたが、使い方がわからず、サンプルを探して
Part.GetPathName がやっと見つかった。
あとは、
文字列の操作/処理。
http://www.geocities.jp/cbc_vbnet/function/mojireyu_function.html#instr
イミディエイトに入れながらすると文字列処理はなんとかなる。VBAの編集でイミディエイトが見えない場合は、Ctrl+d。

—————————————————————-
今、呼び込んでいる図面のパスにある全SLDDRWのファイルを順番に呼び込んでPDFで保存する。
Dim swApp As Object

Dim Part As Object
Dim boolstatus As Boolean
Dim longstatus As Long, longwarnings As Long

Sub main()

    Set swApp = _
    Application.SldWorks
   
    Set Part = swApp.ActiveDoc
    Part.ViewZoomtofit2
    ss = Part.GetPathName ‘今呼び込んでいる図面のパス名+ファイル名をssに入れる
     ‘.文字で区切って、各文字列を配列に入れる。kkは配列になる。UBound(kk)で配列の個数
    kk = Split(ss, “.”) 

     ‘拡張子を取り外し。パス+ファイル名(拡張子なし)がssに入る
    ss = Left(ss, Len(ss) – Len(kk(UBound(kk))) – 1) 
     ‘ssの確認。イミディエイトのウィンドウにssのデータが書かれる。イミディエイトが見えない場合は、Ctrl+d
    Debug.Print ss
    jj = Split(ss, “\”) ‘\文字で区切って、各文字列を配列に入れる。
     ‘ファイル名の取り出し。最後の配列のデータをfnameに入れる。jj(0)が先頭のデータ。
    fname = jj(UBound(jj)) 
    pname = Left(ss, Len(ss) – Len(fname)) ‘パスの文字列、最後の¥も含む
    Debug.Print fname
    Debug.Print pname
    nn = Dir(pname)’1つ目のファイル名を取り出す。nnにファイル名が入る
    Do Until nn = “” ‘Dir()は全ファイルを取り出し終えたら””を返す
        If InStr(nn, “.SLDDRW”) Then ‘ファイル名に.SLDDRWを含む場合
            Debug.Print TypeName(nn), nn ‘TypeName関数はカッコ内のデータの型を返す
             ‘open_savePDF  sub/サブルーチンを呼び出す。サブルーチンにパス名+ファイル名を渡す
             open_savePDF pname & nn  ‘open_savePDFは自作のサブルーチン(関数のようなもの)
        End If
        nn = Dir()’次のファイル名を取り出す。
    Loop
End Sub

‘引数はパス名+ファイル名を受け取る。これは自作サブルーチン。ほとんどがマクロ記憶で
Sub open_savePDF(pf) 

    Set swApp = _
    Application.SldWorks
   
    Set Part = swApp.ActiveDoc
   ‘受け取ったpfパス名+ファイル名で開く
    Set Part = swApp.OpenDoc6(pf, 3, 0, “”, longstatus, longwarnings) 
    Set Part = swApp.ActiveDoc
    Dim myModelView As Object
    Set myModelView = Part.ActiveView
    myModelView.FrameLeft = 0
    myModelView.FrameTop = 21
    Set myModelView = Part.ActiveView
    myModelView.FrameState = swWindowState_e.swWindowMaximized
‘    swApp.ActivateDoc2 “maru3.kotae – シート1”, False, longstatus

    ss = Part.GetPathName ‘今呼び込んでいる図面のパス名+ファイル名をssに入れる
     ‘.文字で区切って、各文字列を配列に入れる。kkは配列になる。UBound(kk)で配列の個数
    kk = Split(ss, “.”) 
    ‘拡張子を取り外し。パス+ファイル名(拡張子なし)がssに入る
    ss = Left(ss, Len(ss) – Len(kk(UBound(kk))) – 1) 

    Debug.Print ss
    longstatus = Part.SaveAs3(ss & “.PDF”, 0, 0)
   
    Set Part = swApp.ActiveDoc
    Set Part = Nothing
    swApp.CloseDoc pf ‘パス名でも終了指定できる
End Sub

dir(パス名)を一度するれば、dir()とカッコ内になにも入れないと次のファイルを得ることができる。
closedocの引数がパスでもいいのが分かったのがこれ。

https://forum.solidworks.com/thread/33487

下がだいたい四角、上が丸の展開図  ロフト ベンド

ロフト ベンドは、シェル化する方法から板金に変換した方が簡単だ。ロフト ベンドは、角を丸くしないとできない。そんな経験。 下は真四角にするとロフトができなかった。四角の角を丸くしないといけません!ヘルプはこちら英語版なら … “下がだいたい四角、上が丸の展開図  ロフト ベンド” の続きを読む

ロフト ベンド
は、シェル化する方法から板金に変換した方が簡単だ。
ロフト ベンドは、角を丸くしないとできない。
そんな経験。

下は真四角にするとロフトができなかった。
四角の角を丸くしないといけません!
ヘルプはこちら
英語版ならいろいろある

直線を使って線をカットしている。
 

英語だけどこんなのもある。
 

相関線

直径の違う管が交差しているとどのような展開図になるのか?手書きなら簡単なことだが。ソリッドワークスでやってみた。 まずは、作成。 展開 両方を一挙に展開はできないようです。  

直径の違う管が交差しているとどのような展開図になるのか?
手書きなら簡単なことだが。
ソリッドワークスでやってみた。

まずは、作成。

展開

両方を一挙に展開はできないようです。