フェースを対象に、プリテンションボルトを作成します

未分類

例題説明

円筒パートのフェースを対象に、プリテンションボルトを作成します。

サンプルコード


# 円筒パートを作成します。
Geometry.Part.Cylinder(dHeight=0.04)

# 円筒パートの任意の位置を指定して、断面Faceを作成します。
Geometry.BodyCut.XXYYOnOnePoint(crPart=Part(1), posCutPoint=[0.009999611595521596, 0.01988272090416369, 4.439483502834303e-06], iCuttingPlane=1, bSplitOnly=True, bMakeSectionFace=False, bSeparateFace=True)

# 円筒パートのFaceを指定し、プリテンションボルトを作成します。
Connections.Pretension.General(crlFaces=[Face(4, 3)], dForceValue=10.0, iForceDirection=1, bFixedLength=True)

# パート表面のメッシュ表示を表示状態に、表面表示を非表示状態に切り替えます。
JPT.Exec('ViewShowMesh(1)')
JPT.Exec('ViewShowSurface(0)')

サンプルコードの説明

円筒パート作成

まず、高さが40mmの円筒パートを作成します。その他の設定値はデフォルトで実行します。


Geometry.Part.Cylinder(dHeight=0.04)
断面Face作成

円筒パートの任意の位置に断面となるFaceを作成します。
断面Faceの作成位置の座標値として、posCutPoint=[0.009999611595521596, 0.01988272090416369, 4.439483502834303e-06]を指定し、その位置にJupiter上の座標系におけるXZ平面iCuttingPlane=1で断面Faceを作成します。


Geometry.BodyCut.XXYYOnOnePoint(crPart=Part(1), posCutPoint=[0.009999611595521596, 0.01988272090416369, 4.439483502834303e-06], iCuttingPlane=1, bSplitOnly=True, bMakeSectionFace=False, bSeparateFace=True)
プリテンションボルト作成

円筒パートの2つのFace(ID: 4, 3)を指定します。その後、軸力として10NdForceValue=10.0を、締め付け方向としてUY方向iForceDirection=1を指定し、プリテンションボルトを作成します、

モデルのメッシュ表示および表面非表示切り替え

モデルの表示状態を切り替えて、作成されたプリテンションボルトを確認します。
Jupiter上でモデルのメッシュ表示を有効にした際に出力されるマクロViewShowMesh(1)と、モデル表面の表示を無効にした際に出力されるマクロViewShowSurface(0)を、マクロをPSJコマンドとして使用する関数JPT.Exec()をと組み合わせて使用します。


JPT.Exec('ViewShowMesh(1)')
JPT.Exec('ViewShowSurface(0)')

利用しているAPI

Geometry.Part.Cylinder()

Geometry.BodyCut.XXYYOnOnePoint()

Connections.Pretension.General()

JPT.Exec()

関連記事