閉じた線形状を開いた線形状に変換したい

形状情報ウィンドウの線形状属性の「閉じた線形状」チェックボックスをOffにして
閉じた線形状を開いた線形状に変換した場合、
始点と終点は離れた状態になっています。

shade3d_line_close_to_open

パートや線形状を選択し以下のスクリプトを実行すると、
始点と終点が同じ位置になるようにポイントが追加され、
閉じた線形状を開いた線形状に変換することができます。


# 閉じた線形状を開いた線形状に変換.
def closeLineToOpenLine (shape):
  if shape.type == 4:     # line.
    cou = shape.number_of_control_points
    if cou >= 3 and shape.closed == True:
      at = shape.calculate_parameter(0.99999) * cou
      shape.insert_control_point(at)
      shape.closed = False

  if shape.type == 2:		 # part.
    if shape.has_son:
      s = shape.son
      while s != None:
        if s.has_bro == False: break;
        s = s.bro
        closeLineToOpenLine(s)

shape = xshade.scene().active_shape()
closeLineToOpenLine(shape)
Translate »