Andrea Amedei
Guest
おはようございます。
私は頭に来ることなく頭を叩いている数日です。 お問い合わせ 様々な穴の下の画像で見ている固体機能を実行する必要がよくありますが、このプロセスを自動化したマクロを創り出すことを考えていました。
ビルドする固体機能は、穴の投影と、その投影よりも直径n倍の大きい円(nパラメータを設定)を持っている基本的なスケッチとして持っている「プリズム」です。 押出高さもパラメータです。
これを行うには、下の図で見ることができるユーザーフォームを作成しました。 ユーザーは、シーケンス(グラウンドセレクション、ホールエッジを選択し、ソリッドを作成します)とd / D比とプロファイル押出高さの2つのテキストボックスを使用する必要があります。
私はかなりよく知っていることを認めます vba エクセルでプログラミング, しかし、彼らは最初に catia で. 私が行った瞬間に、次のものがあります。
「表面を選択」ボタンプライベートサブ select_surface_button_click_click()
私の選択を薄くする
顔としてmyarray(0)を薄暗くして下さい
dim 文字列として strreturn
部分としてdimpart1
dim partdocument1 として partdocument
ハイブリッドボディをハイブリッドボディに
myselection = catia.activedocument.selection を設定する
私の選択.clear
お問い合わせ
strreturn = myselection.eleselectment2(array("face")、"face:"、false" を選択します。
strreturn = "normal" の場合、
'redim は myarray(ubound(myarray) + 1) を保存します。
myarray(ubound(myarray)) = myselection.item2(1).valueを設定
端 もし
textbox1.text = myarray(0).name
私.ショー
エンドサブボタン「端穴を選択」プライベートサブ select_edge_button_click_click()
私の選択を薄くする
dim myarray(0) エッジとして
dim 文字列として strreturn
部分としてdimpart1
dim partdocument1 として partdocument
myselection = catia.activedocument.selection を設定する
私の選択.clear
お問い合わせ
strreturn = myselection.eleselectment2(array("edge")、 "select ge:", false)
strreturn = "normal" の場合、
'redim は myarray(ubound(myarray) + 1) を保存します。
myarray(ubound(myarray)) = myselection.item2(1).valueを設定
端 もし
textbox2.text = myarray(0).name
私.ショー
エンドサブこの時点では、選択した表面とエッジのname(?)が現れます。 "crea Solid" を押すと、ソフトウェアがビルドするのが好きです。
1. 選択した表面上のスケッチプラン(ユーザー名をuserformで使用) )
2. 選択された穴の端から直径および中心を導きます
3。 穴の端をとり、その床にそれをプロジェクトします
4. 投影された端および直径 d=n*d の同じ中心が付いている新しい円を作成します
5。 5。 スケッチから出てくる
6. userformで置かれる押し出しの高さ
7. すべてを点検し、新しい操作のためのすべてのuserformをきれいにして下さい
マクロレコードでも、プログラムの仕組みがわからない人でも助けてくれることを願っています。
ご挨拶,
アンドレア
私は頭に来ることなく頭を叩いている数日です。 お問い合わせ 様々な穴の下の画像で見ている固体機能を実行する必要がよくありますが、このプロセスを自動化したマクロを創り出すことを考えていました。
ビルドする固体機能は、穴の投影と、その投影よりも直径n倍の大きい円(nパラメータを設定)を持っている基本的なスケッチとして持っている「プリズム」です。 押出高さもパラメータです。


「表面を選択」ボタンプライベートサブ select_surface_button_click_click()
私の選択を薄くする
顔としてmyarray(0)を薄暗くして下さい
dim 文字列として strreturn
部分としてdimpart1
dim partdocument1 として partdocument
ハイブリッドボディをハイブリッドボディに
myselection = catia.activedocument.selection を設定する
私の選択.clear
お問い合わせ
strreturn = myselection.eleselectment2(array("face")、"face:"、false" を選択します。
strreturn = "normal" の場合、
'redim は myarray(ubound(myarray) + 1) を保存します。
myarray(ubound(myarray)) = myselection.item2(1).valueを設定
端 もし
textbox1.text = myarray(0).name
私.ショー
エンドサブボタン「端穴を選択」プライベートサブ select_edge_button_click_click()
私の選択を薄くする
dim myarray(0) エッジとして
dim 文字列として strreturn
部分としてdimpart1
dim partdocument1 として partdocument
myselection = catia.activedocument.selection を設定する
私の選択.clear
お問い合わせ
strreturn = myselection.eleselectment2(array("edge")、 "select ge:", false)
strreturn = "normal" の場合、
'redim は myarray(ubound(myarray) + 1) を保存します。
myarray(ubound(myarray)) = myselection.item2(1).valueを設定
端 もし
textbox2.text = myarray(0).name
私.ショー
エンドサブこの時点では、選択した表面とエッジのname(?)が現れます。 "crea Solid" を押すと、ソフトウェアがビルドするのが好きです。
1. 選択した表面上のスケッチプラン(ユーザー名をuserformで使用) )
2. 選択された穴の端から直径および中心を導きます
3。 穴の端をとり、その床にそれをプロジェクトします
4. 投影された端および直径 d=n*d の同じ中心が付いている新しい円を作成します
5。 5。 スケッチから出てくる
6. userformで置かれる押し出しの高さ
7. すべてを点検し、新しい操作のためのすべてのuserformをきれいにして下さい
マクロレコードでも、プログラムの仕組みがわからない人でも助けてくれることを願っています。
ご挨拶,
アンドレア