コード例 #1
0
def solid(faces):
    sewing = BRepBuilderAPI_Sewing()
    for face in faces:
        pts = []
        for node in face:
            pts.append(Common.gp_Pnt(node[0], node[1], node[2]))
        try:
            sewing.Add(Construct.make_face(Construct.make_closed_polygon(pts)))
        except AssertionError:
            print pts
            exit(1)
    sewing.Perform()
    sewed_shape = sewing.SewedShape()
    return sewed_shape
コード例 #2
0
ファイル: EngitsPyOcc.py プロジェクト: Nasrollah/engrid
def solid(faces):
  sewing = BRepBuilderAPI_Sewing()
  for face in faces:
    pts = []
    for node in face:
      pts.append(Common.gp_Pnt(node[0], node[1], node[2]))
    try:
      sewing.Add(Construct.make_face(Construct.make_closed_polygon(pts)))
    except AssertionError:
      print pts
      exit(1)
  sewing.Perform()
  sewed_shape = sewing.SewedShape() 
  return sewed_shape
コード例 #3
0
ファイル: EngitsPyOcc.py プロジェクト: Nasrollah/engrid
def rotate(shape, x1, y1, z1, x2, y2, z2, angle):
  L = math.sqrt((x2 - x1)**2 + (y2 - y1)**2 + (z2 - z1)**2)
  direction = Common.gp_Dir((x2 - x1)/L, (y2 - y1)/L, (z2 - z1)/L)
  axis = Common.gp_Ax1(Common.gp_Pnt(x1, y1, z1), direction)
  return Construct.rotate(shape, axis, angle)
コード例 #4
0
ファイル: EngitsPyOcc.py プロジェクト: Nasrollah/engrid
def scale(shape, x, y, z, factor):
  return Construct.scale(shape, Common.gp_Pnt(x,y,z), factor)
コード例 #5
0
ファイル: EngitsPyOcc.py プロジェクト: Nasrollah/engrid
def move_z(shape, dz):
  return Construct.translate_topods_from_vector(shape, Common.gp_Vec(0, 0, dz))
コード例 #6
0
ファイル: EngitsPyOcc.py プロジェクト: Nasrollah/engrid
def move_y(shape, dy):
  return Construct.translate_topods_from_vector(shape, Common.gp_Vec(0, dy, 0))
コード例 #7
0
ファイル: EngitsPyOcc.py プロジェクト: Nasrollah/engrid
def move_x(shape, dx):
  return Construct.translate_topods_from_vector(shape, Common.gp_Vec(dx, 0, 0))
コード例 #8
0
def join(shape1, shape2):
    return Construct.boolean_fuse(shape1, shape2)
コード例 #9
0
def rotate(shape, x1, y1, z1, x2, y2, z2, angle):
    L = math.sqrt((x2 - x1)**2 + (y2 - y1)**2 + (z2 - z1)**2)
    direction = Common.gp_Dir((x2 - x1) / L, (y2 - y1) / L, (z2 - z1) / L)
    axis = Common.gp_Ax1(Common.gp_Pnt(x1, y1, z1), direction)
    return Construct.rotate(shape, axis, angle)
コード例 #10
0
def move_z(shape, dz):
    return Construct.translate_topods_from_vector(shape,
                                                  Common.gp_Vec(0, 0, dz))
コード例 #11
0
def scale(shape, x, y, z, factor):
    return Construct.scale(shape, Common.gp_Pnt(x, y, z), factor)
コード例 #12
0
def move_y(shape, dy):
    return Construct.translate_topods_from_vector(shape,
                                                  Common.gp_Vec(0, dy, 0))
コード例 #13
0
def move_x(shape, dx):
    return Construct.translate_topods_from_vector(shape,
                                                  Common.gp_Vec(dx, 0, 0))
コード例 #14
0
def move(shape, dx, dy, dz):
    return Construct.translate_topods_from_vector(shape,
                                                  Common.gp_Vec(dx, dy, dz))
コード例 #15
0
ファイル: EngitsPyOcc.py プロジェクト: Nasrollah/engrid
def cut(shape1, shape2):
  return Construct.boolean_cut(shape1, shape2)
コード例 #16
0
ファイル: EngitsPyOcc.py プロジェクト: Nasrollah/engrid
def move(shape, dx, dy, dz):
  return Construct.translate_topods_from_vector(shape, Common.gp_Vec(dx, dy, dz))
コード例 #17
0
ファイル: EngitsPyOcc.py プロジェクト: Nasrollah/engrid
def join(shape1, shape2):
  return Construct.boolean_fuse(shape1, shape2)
コード例 #18
0
def cut(shape1, shape2):
    return Construct.boolean_cut(shape1, shape2)