目次

基本コード

rs.AddPipe(curve_id, parameters, radii, blend_type=0, cap=0, fit=False)

API AddPipe

サンプルコード1

直線を与えて、半径20のパイプを生成

import rhinoscriptsyntax as rs
 
a=[]
line = rs.AddLine([0,0,0],[200,200,200])
a.extend(rs.AddPipe(line, 0, 20))

実行結果

次のように cap=2 とすると、端が半球になる

a.extend(rs.AddPipe(line, 0, 20, 0, 2))

実行結果

サンプルコード2

傾いたパイプを回転させると一葉双曲面が現れる

import rhinoscriptsyntax as rs
import math
 
a=[]
theta = math.radians(120)
r = 100
h = 100
line = rs.AddLine([r,0,-h],[r * math.cos(theta), r * math.sin(theta),h])
pipe = rs.AddPipe(line, 0, 5, 0, 2)
 
DIV_NUM = 24
for i in range(DIV_NUM):
    angle = i * 360 / DIV_NUM
    a.extend(rs.RotateObjects(pipe, [0,0,0], angle, [0,0,1], True))

参考: オブジェクトの回転

実行結果

※ おまけ:この形は、綿棒が少なくなってきたときに観察される 外部リンク