AddPipe History?


#1

Is there a way to create a pipe around a curve that maintains history?


(Dale Fugier) #2

Have you tried scripting the Pipe command?


#3

The only thing I have tried is Rhino.AddPipe() in a vbscript file.


History directive "#" is ignored in "Python Script"
#4

Try it using _Pipe and Rhino.Command eg. in vb using 1.0 as radius:

Rhino.Command("Pipe 1.0 1.0 Enter Thick=No Cap=None")

the curve must be selected before. To use history, you can enable it via Rhino.Command too, or rs.Command in python:

import rhinoscriptsyntax as rs

def PipeWithHistory(r=1.0):

    curve = rs.GetObject("Select curve", rs.filter.curve, True, True)
    if not curve: return None

    cmd = "_History _Record=_Yes _Update=_Yes _Lock=_No _Enter"
    rs.Command(cmd, False)

    cmd = "_Pipe " + str(r) + " " + str(r) + " _Enter _Thick=_No _Cap=_None"
    rs.Command(cmd, False)

    cmd = "_History _Record=_No _Enter"
    rs.Command(cmd, False)

if __name__=="__main__":
    PipeWithHistory(1.0)

c.