C#ATIA

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

方向反転判断しながら平行曲線作成

"GSDのサポートを指定した平行曲線マクロが上手く行かない" とご相談頂きました。
こんな感じでしょうか?
f:id:kandennti:20180808185054p:plain

まず、実際にマクロの記録を取ってみます。

'catvba
Sub CATMain()

Dim partDocument1 As PartDocument
Set partDocument1 = CATIA.ActiveDocument

Dim part1 As Part
Set part1 = partDocument1.Part

Dim hybridShapeFactory1 As HybridShapeFactory
Set hybridShapeFactory1 = part1.HybridShapeFactory

Dim hybridBodies1 As hybridBodies
Set hybridBodies1 = part1.hybridBodies

Dim hybridBody1 As HybridBody
Set hybridBody1 = hybridBodies1.Item("形状セット.1")

Dim hybridShapes1 As HybridShapes
Set hybridShapes1 = hybridBody1.HybridShapes

Dim hybridShapeExtract1 As HybridShapeExtract
Set hybridShapeExtract1 = hybridShapes1.Item("抽出.1")

Dim reference1 As Reference
Set reference1 = part1.CreateReferenceFromBRepName("BorderREdge:(BEdge:(Brp:(FeatureRSUR.1;(Brp:(Pad.1;0:(Brp:(Sketch.1;3)));Brp:(Pad.1;2)));None:(Limits1:();Limits2:();-1);Cf11:());WithPermanentBody;WithoutBuildError;WithSelectingFeatureSupport;MFBRepVersion_CXR15)", hybridShapeExtract1)

Dim reference2 As Reference
Set reference2 = part1.CreateReferenceFromObject(hybridShapeExtract1)

Dim hybridShapeCurvePar1 As HybridShapeCurvePar
Set hybridShapeCurvePar1 = hybridShapeFactory1.AddNewCurvePar(reference1, reference2, 7#, False, False)

hybridShapeCurvePar1.SmoothingType = 0

hybridBody1.AppendHybridShape hybridShapeCurvePar1

part1.InWorkObject = hybridShapeCurvePar1

part1.Update

End Sub

細かくチェックしているのが面倒な為、個人的には記録をとったマクロを再実行します。
同様の結果になれば、全て記録されている目安になります。

これ全てが欲しい訳ではなく、実際に欲しい部分は、こちらの3行です。

Dim hybridShapeCurvePar1 As HybridShapeCurvePar
Set hybridShapeCurvePar1 = hybridShapeFactory1.AddNewCurvePar(reference1, reference2, 7#, False, False)

hybridShapeCurvePar1.SmoothingType = 0

個人的には問題を切り分けたい為、この平行曲線を作成するだけの関数を作成します。

Private Function InitCurvePar(xxxx) As HybridShapeCurvePar
    Dim hybridShapeCurvePar1 As HybridShapeCurvePar
    Set hybridShapeCurvePar1 = hybridShapeFactory1.AddNewCurvePar(reference1, reference2, 7#, False, False)
    
    hybridShapeCurvePar1.SmoothingType = 0
    
    Set InitCurvePar = hybridShapeCurvePar1
End Function

出来上がった平行曲線のリファレンスを取得し戻り値とするのも方法ですが、とりあえず
オブジェクトそのものを返すことにしました。
xxxx部分は必要となる引数です。必要となるものは "Set hybridShapeCurvePar1~"
の行に比較的有ります。
・hybridShapeFactory1
・reference1
・reference2
・7#(距離)
この辺でしょうか。

これらを引数としますが、"reference1" の名称ではあまりにも意味がわかりにくいため
それなりの名称に変更します。

Private Function InitCurvePar(ByVal part1 As Part, _
                              ByVal edgeRef As Reference, _
                              ByVal supportRef As Reference, _
                              ByVal leng As Double) As HybridShapeCurvePar
    Dim hybridShapeFactory1 As HybridShapeFactory
    Set hybridShapeFactory1 = part1.HybridShapeFactory

    Dim hybridShapeCurvePar1 As HybridShapeCurvePar
    Set hybridShapeCurvePar1 = hybridShapeFactory1.AddNewCurvePar(edgeRef, supportRef, leng, False, False)
    
    hybridShapeCurvePar1.SmoothingType = 0
    
    part1.UpdateObject hybridShapeCurvePar1
    
    Set InitCurvePar = hybridShapeCurvePar1
End Function

マクロの記録をとった場合は、"part1.Update" で記録されますが、
"part1.UpdateObject" の方が処理も軽いですし、他のエラーの影響も受けません。
(手動のローカル更新と同等です)

質問者さんが悩まれているのは、ここからです。
実際はオフセット方向がサポート上にならない場合があります。
そのような場合、手動であれば "方向を反転" を押す事になりますよね?
f:id:kandennti:20180808185111p:plain

HybridShapeCurveParオブジェクトを調べてみると、それっぽいプロパティが有ります。
f:id:kandennti:20180808185122p:plain

英語わからないのですが、それっぽい事には気が付きます。

これを "On Error Resume Next" を利用しながら判断し処理するように
書き換えました。

Private Function InitCurvePar(ByVal part1 As Part, _
                              ByVal edgeRef As Reference, _
                              ByVal supportRef As Reference, _
                              ByVal leng As Double) As HybridShapeCurvePar
    Dim hybridShapeFactory1 As HybridShapeFactory
    Set hybridShapeFactory1 = part1.HybridShapeFactory

    Dim hybridShapeCurvePar1 As HybridShapeCurvePar
    Set hybridShapeCurvePar1 = hybridShapeFactory1.AddNewCurvePar(edgeRef, supportRef, leng, False, False)
    
    hybridShapeCurvePar1.SmoothingType = 0
    
    On Error Resume Next
        err.Number = 0
        part1.UpdateObject hybridShapeCurvePar1
        
        '反転
        If Not err.Number = 0 Then
            err.Number = 0
            hybridShapeCurvePar1.InvertDirection = True
            part1.UpdateObject hybridShapeCurvePar1
        End If
        
        '反転してもエラーの為、そもそも無理
        If Not err.Number = 0 Then
             Set hybridShapeCurvePar1 = Nothing
        End If
    On Error GoTo 0
    
    Set InitCurvePar = hybridShapeCurvePar1
End Function

同じ事を複数書いたりしてますが、わかりやすくする為にこのようにしました。
(個人的にはもっと書き直したいです)


この自作関数を呼び出す為に、最初に記録したマクロをこんな感じで
書き換えます。

    ・・・

    Dim hybridShapeCurvePar1 As HybridShapeCurvePar
    'Set hybridShapeCurvePar1 = hybridShapeFactory1.AddNewCurvePar(reference1, reference2, 7#, False, False)
    
    'hybridShapeCurvePar1.SmoothingType = 0
    
    '自作関数処理
    Set hybridShapeCurvePar1 = InitCurvePar(part1, reference1, reference2, 7#)
    
    '両側失敗
    If hybridShapeCurvePar1 Is Nothing Then
        MsgBox "オフセット距離が思わしく有りません!"
        Exit Sub
    End If
    
    hybridBody1.AppendHybridShape hybridShapeCurvePar1
    
    part1.InWorkObject = hybridShapeCurvePar1
    
    part1.Update

End Sub

InitCurveParの4番目の引数を "-7#" "1000#" 等試して頂ければ、それなりの
処理をしてくれます。

変数名もイマイチなのですが、とりあえず僕が進める手順はこの様な感じです。

Vortex-ストックから2

こちらの続きです。
Vortex-ストックから - C#ATIA

先日、ver2019.0.4のHotFixが出たので再計算が出来ない不具合を確認した所、
やっと直ってきました。2や3では放置されていたのでしょう。
(もっと重大なバグがあるっぽかったので)

少し前に(僕じゃないのですが)お断りした薄肉で背の高いもののテストカットを
行っていた最中だったので、早速 Vortex-ストック を利用してみました。
テストカットと言う全くプレッシャーのかからない状況だったので、うっかり
切り込み量をUp!切削スピードもUp!! で挑んだら、材料が根元から
ポッキリ折れちゃいました・・・。 調子に乗り過ぎました。

真面目にやれば動き自体は旧Vortexより遥かに良いので、ソロソロ PMill2019への
移行も考えてはいるのですが、フォーラムを見ると
'これはバグ?' '処理が終わりません' ’遅い’ 等の書き込みが相変わらず
目に付きます。

でも、この不具合修正待ちだったので移行しようかな?

選択面の抽出

「抽出を行いたいが、選択面のみにならずに全体の面になってしまう」
と、ご相談を頂きました。

面の選択の際のフィルターの問題かと思ったのですが、どうやら違うようです。
こちらで確認した所、これであれば選択面のみの抽出が出来ています。

'vba
Sub CATMain()
    'ドキュメント等
    Dim doc As PartDocument
    Set doc = CATIA.ActiveDocument
    
    Dim pt As part
    Set pt = doc.part
    
    '選択
    Dim msg As String
    msg = "面選択"
    
    Dim filter As Variant
    filter = Array("Face")
    
    Dim sel As Variant ' Selection
    Set sel = doc.Selection
    Select Case sel.SelectElement2(filter, msg, False)
        Case "Cancel", "Undo", "Redo"
            Exit Sub
    End Select
    
    'リファレンス取得
    Dim selectFace As AnyObject
    Set selectFace = sel.Item(1).Reference
    
    '抽出
    Dim face As AnyObject
    Set face = InitExtract(pt, selectFace)
    
    '形状セット作成・挿入
    Dim hb As HybridBody
    Set hb = pt.hybridBodies.Add()
    
    hb.AppendHybridShape face
    
    MsgBox "Done"
End Sub

'抽出
Private Function InitExtract(ByVal pt As part, ByVal ref As Reference) _
                    As HybridShapeExtract
    Dim fact As HybridShapeFactory
    Set fact = pt.HybridShapeFactory
    
    Dim hybridShapeExtract1 As HybridShapeExtract
    Set hybridShapeExtract1 = fact.AddNewExtract(ref)
    
    hybridShapeExtract1.PropagationType = 3
    hybridShapeExtract1.ComplementaryExtract = False
    hybridShapeExtract1.IsFederated = False
    
    pt.UpdateObject hybridShapeExtract1
    Set InitExtract = hybridShapeExtract1
End Function

今回はSelectionからReferenceを取得してそのまま抽出する際の
Referenceとして使えましたが、場合によってはBrapネームから
Referenceを取得しなければならない場合もあるかも知れません。

CAM-TOOL

少し前に、工作機メーカーOKK,OKUMAさんのプライベートショーに行ってきました。
もちろん導入予定は全く無く、こちらも営業さんのノルマもあるようなので・・・。

C&Gシステムズさんの出展がありました。CAM-TOOLは金型業界では
非常に有名なCAMソフトです。

こちらのサイト中段辺りにある "ピンホルダー" のサンプルも展示して
有りました。
C&G SYSTEMS INC.
思わず "これはすごい" と呟いてしまい、少しお話をして頂きました。

CAM-TOOLの仕上がりの良さは、"高精度かつ均一なパス" に、よるもの
ものだそうです。
f:id:kandennti:20180725185624p:plain
一部なので許してください。

実はこんな感じの機能は、PowerMillにもあるんです。
左は通常の状態で作成し、右が制御点を均一に作ったものです。
f:id:kandennti:20180725185634p:plain
黄色の部分を見ると、不均一な状態がわかりやすいと思います。
が、正直な所 普段はこんな事を気にしてません。
(尚、評判の悪いCATIA V5 CAMにも、制御点を散らす機能は有りました)


重荷だった試験も終わったので、挑戦してみました。
形状のデータが無いのですが、お話した際Φ0.4mmで高さ20mm
と聞いており、頂いた資料のパスから6mmだろうと思い
こんな形状にして見ました。
f:id:kandennti:20180725185645p:plain
弱気な為、根元にR2.5を付けさせてもらいました。
(なので正確には高さ17.5mmです。)

又、あちらのサンプルはNAK材でR2ボールエンドミル仕上でしたが、手元にあった
グラファイトの端材と、社内で破棄されていたR1(ダイアモンドコート)と言う
力の抜き具合での挑戦です。

結果はこちら
f:id:kandennti:20180725185659p:plain
正直に書くと、4回目でやっと出来ました。
全てを検査するのも手間だったので、数本チェックしたうちの1個の結果です。
f:id:kandennti:20180725185714p:plain
Φ0.411mmで真円度0.013mmです。十分でしょうか?

一番の敵は、エアーでした。ドライ切削なのでエアーブローしているのですが
最初は加工後の部分がエアーで揺らされいる事に気が付かず、それが原因で
折れてしまっていたようです。(最初は5/15本途中で折れてました)

又、送りを吹っ飛ばしていた為、X軸Y軸(テーブル)の動きで
やはり揺れてしまっていた事も原因だったようで、程々の送りに
しました。(その後4個ほど加工しましたが、1本も折れませんでした)

R2での加工は惨敗。何度か修正しながら挑戦しましたが全て折れました。
グラファイトは粘らないので・・・と自分に言い訳し諦めました。恐るべしCAM-TOOL。

CAD利用技術者試験3

3次元CAD利用技術者試験を受けなければならない方に向け
個人的にFusion360で練習した際のコツのようなもの、
当日心掛けたことを記載しておきます。

念のため2級ですが、Web上で練習出来そうなのはこちらのサイトの
クイズぐらいかと思います。
CAD利用技術者試験
ちょっと内容が古めの為、ガイドブックを購入し勉強するしか
方法は無さそうです。

1級ですが、こちらの一番下のPDFファイルのサンプルを元にご説明。
3次元CAD 使用できるソフトについて – CAD利用技術者試験
(余談ですが、Shade3DってCGソフトだと思っているのですが
 推奨ソフトになっているんですね。)

○[問1]
文章からの問題ですが、普段ありえない作業なので最初の頃は苦手でした。
1個づつ読みながらモデリングしないで、2・3個先まで目を通して
取り掛かると良いと思います。

②の3点指定の平面を作成する方法ですが、Fusion360には
座標値(XYZ)を指定して点を作成するコマンドがありません。
僕の場合は構成平面とスケッチの端点を利用し、3点指定の平面を
作りました。
確かに、座標値を指定し構成点を作るスプリクトが公開されていますが、
後で調整できないため、スケッチを利用する方法にしました。

⑤⑥は、Fusion360では無理ですが、CATIAの場合は円形パターンで
一発で出来ちゃいますね。

逆に⑨⑩は、Fusion360だと一発で出来ます。2・3個先まで目を通して
おくと、球体を新規ボディで作成しないで交差で作成すれば良い事に
気が付くはずです。

○[問2]
非現実的な形状のモデリング問題です。
表示スタイルは「シェーディング、隠線エッジ表示」にしました。
f:id:kandennti:20180723194516p:plain
場合によっては隠れ線が邪魔になりますが、問題図面に近い表示になり、
目視で形状を確認する為です。

相変わらず、こちらの形状が直ぐに脳みそが気が付いてくれないです。
ロフトのプロファイル - C#ATIA
僕の場合、立体認識出来ない部分はスケッチを書きまくりました。
悩んでいるより手を動かした方が解答が得られそうなので。

こちらの問題は、小原さんのテルえもんクエストが練習になります。
テルえもんクエスト - C#ATIA
過去の問題を意識したものもあるはずです。

○[問3]
4個モデリングしAssyする問題です。モデリングに関しては、まぁそれ程
悩むことも無いと思います。
以前、受験された方の記述を見つけた際「時間が無いのでAssyは捨てた方が良い」
と書かれていたので、僕もそうするつもりでいました。
が、Fusion360であれば捨てる必要が無さそうです。

僕の場合は、コンポーネントを新作しそれぞれをモデリングしました。
(履歴の管理が行いやすかったからです)
q-8,q-9の2個をモデリングし終わった状態です。
f:id:kandennti:20180723194601p:plain
形状の特徴的な部分を考えれば、何となく組み付け方がわかるはずです。
問題はどうやったら早く組み付いた状態にするか?です。

本来であれば、アセンブリのジョイント類で組み付けるのが正しい
Assyだと思います。
f:id:kandennti:20180723194611p:plain
でも、試験の際は答えが導き出せれば良いだけなので、組み付いた
状態さえ再現できれば良いんです。(要は立体パズルなんです)

まずは、ルートコンポーネントをアクティブにして作業し、基準となるq-8の
コンポーネントを固定します。
f:id:kandennti:20180723194659p:plain

こちらで記載しましたが、Fusion360であればマウスのドラッグでコンポーネント
移動が可能です。操作の邪魔にならない位置に移動しましょう。
SolidWorks2018体験セミナー - C#ATIA

向きを合わせる時は、コンテキストメニューの「移動/コピー」を使用しました。
f:id:kandennti:20180723194722p:plain
これはコンテキストメニューで必ず表示されるのでコマンドに入るのが早いです。
注意したいのはボディの指定時です。指定する際にクリックした位置に
マニピュレータが表示されます。
f:id:kandennti:20180723194735p:plain
表現が上手くないのですが、素直な平面を指定します。
向きを合わせる際、回転させる角度は各軸で90・180・270(-90)度の
どれかに必ずなります。(半端な角度にさせる問題は無いはずです)
後の位置合わせを考えて、半端な回転にはさせないほうが良いと思います。

続いて位置を合わせるのですが、合せたいお互いのCtrl又はShiftを
利用しながら2面選択します。続いて「コンポーネントを位置合わせ」を行うと
f:id:kandennti:20180723194745p:plain
任意の位置に移動します。これは単なる移動でジョイントではありません。
(ドラッグすると移動します)
実はこのコマンドの存在を知り、Assyを捨てるのを止めました。
位置が決まれば、アセンブリの「剛性グループ」を行えばOK。
文句の一つも言われますが、「位置をキャプチャ」すれば大丈夫です。

但し、q-8,q-9だけでは組み付けが判断できない場合があります。
その際は設問10は後回しにしq-11,q-12に進みます。

設問13の重心ですが、ルートコンポーネントのプロパティで確認できます。
f:id:kandennti:20180723194825p:plain

問題は後から設問10の調べ方です。
実は必要なコンポーネントだけを選択しプロパティを表示させても、正しい
重心位置は得られません。
f:id:kandennti:20180723194834p:plain
恐らく最初に選択したコンポーネントのプロパティが表示されています。
その為、思い切って不要なq-11,q-12のコンポーネントを除去し、
ルートコンポーネントのプロパティで確認します。
(q-8,q-9を結合の和を行い、ボディのプロパティでも同じです)
f:id:kandennti:20180723194858p:plain
元の状態にしたければ、タイムラインで先程の操作を削除しれば
良いだけです。

同様の理由で、「ボディを分割」等で出来上がった不要なボディも
重心に影響があると思われる為(非表示にしても影響あるはず)
必ず除去するように心掛けた方が良いと思います。


言葉だと長々しいのですが、慣れるとモデル1個作るより短時間で
答えを導き出せます。Fusion360であればAssyを捨てない方が良いです。
(CATIAであれば捨てるかも…)

○[問4][問5]
問4が1級で、問5は準1級を想定しているのではないかと思います。
僕の場合は、ここが一番時間が足りないです…。
ガイドブックにも記載されていますが、モデルが完成している必要が無く
設問に答えられれば良いだけです。そこの為、先に設問を見ます。

それぞれ最後の設問を無視すれば、印を付けた部分はモデリング
しなくても答えを導き出せます。
f:id:kandennti:20180723194929p:plain
まぁ結果的にそうなるだけの話なのですが、設問を答えられる部分を
優先的に進めれば良いのだろうと思ってます。


その他全般的に細かな事を
・こんな形状、業務じゃ作らない と思わない。
 業務で3DCADを使用している方は、皆さんそう感じるはずです。
 モチベーション下がるので、それは考えないことにしました。

・とにかく答えを導き出せれば良いモデリングに徹する。
 業務では修正・変更に耐えられるように心掛けると思いますが、
 そんな事を気にしていたら時間が足りないので。
 と考えると、この試験の価値に疑問が残るのも事実です。

・スケッチは基本的にトリムはしない。
 時間節約の為です。
 プロファイルの考え方の違い - C#ATIA

・モデリング後のチェックは一切しない。
 こちらも時間節約の為です。
 基本的に間違っていた場合、答えの選択肢がありません。
 それを目安に合っているかどうか判断しました。

・スケッチの拘束は行う。
 例えば切りの良い数値の場合、グリッドで目的の線を描けるのですが
 完全拘束を目指しました。
 時間節約の為省きたかったのですが、答えの選択肢が無い
 状態(要は間違っている)の場合、ミスを短時間で見つけ出す為の
 コストと割り切りました。
 但し、問題側の寸法にチェックを入れたりする確認作業は省きました。
 (マウス等を操作していない手で、チェックを入れる作業が苦痛でない方は
 行った方が良いと思います)

・出来るだけショートカットキーを利用する。
 大して覚えていないのですが、スケッチ関連のR,C,L,Dは覚えました。
 3Dの作業中でも、これらのキーを利用するとスケッチに入れます。
 (平面を指定する必要はあります)
 よく見たら、E,M辺りも覚えておけばよかったなぁ。

・出来る限り拘束した状態でスケッチ要素を描く。
 ちょっと言葉にしにくいのですが、例えば「2点指定の長方形」であれば
 f:id:kandennti:20180723195021p:plain
 左上を指定した場合がこのようになるのですが、この際青色の数値を
 キー入力し、TABキーでフォーカスを移し残りも入力するようにしました。
 SWユーザー等は普通なことかも知れませんが、CATIAユーザーにはなじみの無い
 操作なんです・・・。

・スケッチから抜ける際、「スケッチ停止」を使わない。
 「スケッチ停止」を押せば向けられるのですが、Fusion360の場合は
 メニューのボタンを押すと次のコマンドに入れます。
 f:id:kandennti:20180723195032p:plain
 コンテキストメニューでも同様に出来ます。
 極僅かな時間節約ですが、マウスの移動量が減るので楽です。

・中間位置の点の作成にスケッチを利用する。
 例えばサンプル問題の問2の設問4の場合、稜線の中点間の測定が
 あります。Fusion360の場合、中間点を作成するコマンドがありません。
 その為スケッチを作り点を作りました。
 (スケッチの点を作るショートカットキーが無い為、線分の端点を利用しました)
 一度線分を適当に描き、中点拘束するのも良いのですが、
 線分コマンドの状態で、任意の稜線上の中点付近ににマウスカーソルを移動させると
 f:id:kandennti:20180723195049p:plain
 三角マーク(中点拘束)が出現するので、その位置でクリックすればOKです。

・表面積測定(特に複数面)にスプリクトを利用する。
 こちらの最初の方に、tomo1230さんが測定手法を記載しています。
https://forums.autodesk.com/t5/fusion-360-ri-ben-yu/zhong-yaona-qing-bao-soriddomoderudeno-fu-shu-mianno-biao-mian-jino-he-jino-ceri-fang-dai-ti-fang-fa/m-p/6690831【重要な情報】 ソリッドモデルでの複数面の表面積の合計の測り方(代替方法) - Autodesk Community
 最後の方に、作成したスプリクトを記載しました。

 試験の制約としてマクロやスプリクトの制限は記載されていなかった為、
 遠慮無く使わせてもらいました。
 作りかけのスプリクトやテスト的なスプリクトが多数あり、必要なものを
 呼び出すのに手間取る為、不要なものはフォルダを作り移動させ、
 この面積取得用のスプリクトだけ表示されるようにしておきました。

 実はスプリクト的にはあまり正しい処理では無いのですが、結果は
 正しいものを返しています。 (正しい処理を調べる暇も無く、
 とにかく機能するものを試験前に欲しかった為)
 
・答えの選択を最低限にした。
 例えば、サンプル問題の問1の設問3の場合、
 f:id:kandennti:20180723195152p:plain
 体積と重心のXの値だけで答えを選びました。(指数も見てないです)
 大体、体積を見た時点で2択になります。

・体積の選択肢はあるが、重心の選択肢が無い。
 練習中に一度ありましたが、恐らくドラッグでボディをほんの少し
 移動していました。
 焦りますが、原点付近を拡大し正しい原点となる位置に
 移動すれば正しい重心が得られるはずです。
 (体積があっていればモデリング自体は間違っていないです)
 又、原点を間違えてモデリングを始めてしまった場合でも、
 最後まで行い移動してしまえば答えを導けれます。
 ・・・実は本番でも1個間違えてたんですけど、これで対応しました。

・事前にオフラインにしておく。
 フォーラムでよく「オフラインではXXが機能しません」のような質問が
 あるのですが個人的にFusion360はオンラインで使用するソフトだと
 思っています。
 試験時はオフラインにして行う必要があるため、そうしておきました。
 自宅では無線LANなのですが、オフラインでも無線が届く位置と
 届かない位置ではサインイン名が異なった為、設定が通常時と
 異なる可能性があります。(僕の場合違いました)
 重心の指数表記が異なりましたが、上記の答えの選択方法なので
 上から4桁の数値だけ見ていたので、まぁ何とかなりました。

・事前に一度コマンド類を呼び出しておく。
 PC起動後CADを立ち上げ作業に入れる状態で待機するように
 言われましたが、それでも少し時間があります。
 恐らくどのCADでも同じだろうと思うのですが、コマンドを
 一度目に使用する際、ソフトが必要なライブラリを読み込むのでは
 ないかと思うのですが、ちょっと間があります。
 ストレス無く作業に入る為、事前に少し操作しておきました。
 スプリクトについても同様です。

・試験前に電池交換
 念のため、ワイヤレスマウスの電池を新品に交換しました。

・和トリムの代用
 モデリング中、CATIAの和トリムのような処理を行いたい時が有りましたが、
 Fusion360には有りません。(恐らく殆どのCADには無い機能かと思います)
 仕方ないので、押出し・面削除で代用しました。

マークシートの塗りつぶしに案外時間をとられる。
 練習中は裏紙に答えの数字か書き出して済ませていたのですが、本番は
 塗りつぶしなので練習より時間をとられました。っかと言って
 練習する人もいないと思いますが…。
 本番では、〇を(楕円でもないです)塗りつぶすものでした。

こうして書き出すと、結構細かいことまで気にして挑んだようですw
これで不合格だったら説得力が無いので、これは削除するかも。
(2級が危ない・・・)

CAD利用技術者試験2

先日、3次元CAD利用技術者試験1・2級(H30前期)を受けてきました。
以前探した際、あまり情報が無かった為覚書として記載しておきます。

〇申し込み
事前に、こちらのサイトでユーザー登録しておく必要が有ります。
CAD利用技術者試験

・申込期間になれば実際に試験の申込が可能になります。
・1級/準1級の場合、実技(モデリング)となりますが、PC持込と会場設置のPCで
 会場を選択することになります。 ・・・と書くと聞こえが良いのですが。

 僕の場合、Fusion360の持込にしましたが、会場に埼玉が無かった為
 "東京23区" として申込をしました。 申込期間(5/9~6/7)が終わっても
 会場が何処になるのか? の連絡がしばらく無く、7月に入ってから
 決まりました。 申し込む時点で会場を選べないのは、良心的とは思えないです。
 
 又、会場設置のPCの場合は、会場によって使用するソフトが決まっており
 会場の場所と使用するソフトが一致する確立が低い事を考えると
 最初から持込で考えた方が良さそうです。

 そもそも、業務で使用しているPCを全くの部外者に貸し出すと言うことは
 考えられない為、恐らく専門学校・スクール等が会場になるのではないかな?と
 思います。そうなると自校の生徒に優先的に座席が割り当てられ、
 一般受験の席はかなり少ないような気もしてます。
 (CATIAの会場もありましたが、R17かR19辺りの古いリリースでした。
  昨今、そんな古いリリースをしている企業は無いはずです)

・支払いはカードかコンビニ決済でしたが、カードの場合は申し込んでから
 "30分以内に決済" (コンビニは3日以内っぽいです)と、恐喝じみた印象です。
 "振り込め詐欺か?" と疑われても仕方が無いとさえ思えます。
 (普通なんですかね?)


〇試験当日
・10~20名程度かな?と思っていたのですが、2級で50~60名
 1級/準1級で40~50名ぐらいはいました。

・1級の際の使用されているCADは、僕の見える範囲では、
 CATIA 2名 SoledWorks 3名 図脳RAPID3D 1名 後は知らないCADの
 有りましたが、Fusion360で受けている方が一番多いように感じました。

・問題の流出にはかなり気を使っている印象です。
 欠席者の席にも問題・解答用紙は配布され、試験中に回収。
 試験終了後も全員分を回収し、数量のチェックが終わるまでは
 退出出来ませんでした。
 (本人の意思で試験中に退出が可能ですが、再入席は不可)

 まぁ最近のノートPCにはカメラが付いているので、その気になれば
 問題を撮影出来ない事は無いですが。(僕はしませんでしたよ)

・持込PCのチェックは一切ないです。

・ノートPC用の電源ですが、6座席につき4個しか有りませんでした。
 3DCADが動くノートPCを2時間動かせるようなバッテリーって有るのでしょうか?
 やりくりして準備していましたが、受験者としては、それなりの
 金額を支払い、年2回のチャンスの為に準備を行ってきたのですから
 もう少し配慮が欲しい所。

・2級と1級/準1級を併願する場合、昼食をはさむ事になりますが
 試験会場から追い出される為、昼食をとる場所がありませんでした。
 素直に外食にした方が無難です。

・個人的に一番の敵は睡魔だったのですが、案外大丈夫でした。
 (それ以上に冷房が利き過ぎ)


〇その後
まだ結果が出ていないので推測です。
・試験はマークシートで機械による採点なのですが、合否結果が2ヶ月ぐらい
 待たされるようです。どんな機械を使ったらそんなに時間かかるのでしょうか?
 子供のベネッセのテスト結果なんて 即、出ますよ 確か。

・合否は登録したサイトでのみ伝えられるようです。

・合格した際、それを示す為の何らかの証明書のようなものが欲しい所です。
 一応こちらにそんなサービスが有ります。
証書類のご購入について – CAD利用技術者試験
 全て有料です。 ・・・本気?おかしいでしょ?
 しかも発行に1ヶ月って。

 最低1個は無料で郵送、Web上でDL出来るような形式の物を
 用意してもらいたいのが本音です。



問題の流出に気を使っている理由ですが、恐らくガイドブックの売り上げに直結する事も
要因に思えます。(もちろん試験の信憑性が一番でしょうが)
特に2級に関しては、ガイドブックが無いと合格は難しいように感じます。

こちらに昨年度決算書がありました。
http://www.acsp.jp/pdf/2017_kessan.pdf
ガイドブック等による収入が全収入の6%程あり、それなりに影響は大きいと思います。
(Web上で過去問題がナカナカ見つからないのはその為でしょう)
・・・上記に記載した、証明書類の収入が200万って、ボロ儲けですね。

ブログのネタにする為とは言え、お金が掛かり過ぎました・・・。

LAI4D

こちら、何だか楽しそうです。
Laboratory of Artificial Intelligence for Design

www.youtube.com

前半のコードでモデリングしている辺りは、「まぁ別に・・・」と言うより
むしろ不便にさえ感じるのですが、後半の手書きの絵から作り出す辺りから
面白いです。
残念なのは、エクスポート出来るフォーマットがポリゴンぽいものばかり・・・。

昔、Autodeskが手書きで3D空間にラインを描けるようなテスト的なソフト?を
作ったみたいで(3DExのナチュラルスケッチのような感じ)、
色々な人達が宇宙船を描いてIgesがUpされていたサイトが有ったんですが・・・。
その後、あの技術は何かの製品になったのかな?