0

多数のシェル面を含む 2D シェル パーツがあります。パーツの面ごとに 1 つの異なるスケッチを抽出したいと考えています。これまでのところ、すべてのシェル面情報を含む単一のスケッチを作成する方法はわかっていますが、これは私が望んでいるものではありません。シェル面ごとに 1 つのスケッチを作成する方法を知りたいです。これは私がやったことです(正しくありません)。

stest= model.ConstrainedSketch(name='__polyTest__',sheetSize=2000.0)
mdb.models['Model-1'].parts['Result'].projectReferencesOntoSketch(filter=
    COPLANAR_EDGES, sketch=mdb.models['Model-1'].sketches['__polyTest__'])

助けてくれて本当にありがとうございます。

4

1 に答える 1

1

現在のビューポートでパーツを開いて、これを試してください:

from part import *
from sketch import *

p=session.viewports[session.currentViewportName].displayedObject
currentModel=mdb.models[p.modelName]

for faceNum,face in enumerate(p.faces):
    try:  # Will only work on valid sketch planes.  Must be a flat face
        t = p.MakeSketchTransform(sketchPlane=face, sketchUpEdge=p.edges[0], 
            sketchPlaneSide=SIDE1, origin=(659.077803, 0.256062, -816.16))
        s = currentModel.ConstrainedSketch(name='__profile__', 
            sheetSize=834.36, gridSpacing=20.85, transform=t)
        edgeList=[p.edges[edgeNum] for edgeNum in face.getEdges()]
        p.projectEdgesOntoSketch(sketch=s, edges=tuple(edgeList))
        currentModel.ConstrainedSketch(name='Sketch-face' + str(edgeNum), objectToCopy=s)
    except:
        pass 
于 2016-03-12T12:54:09.450 に答える