General Program Information
Input Definitions
Inputs Needed to Call the Pipe Function
Origin - a 3*1 matrix with x,y,z positions corresponding to the point where the pipe will be drawn, it correponds to the lower center of the pipe
Pipeinr - the inner radius of the pipe
Pipelength - the length of the pipe
Inputs Defined within the Pipe Function
p2 =
- x : origin0 + outerradius(2*pipeinr)
- y : origin1
- z : origin2
p3 =
- x : origin0 + pipeinr
- y : origin1
- z : origin2
win1 =
- x : origin0 - outerradius(2*pipeinr) - zc
- y : origin1 - outerradius(2*pipeinr) - zc
- z : origin2
win2 =
- x : origin0 + outerradius(2*pipeinr) + zc
- y : origin1 + outerradius(2*pipeinr) + zc
- z : origin2
Pipeoutr = outerradius(2*Pipeinr)
the outer radius of the pipe, found from the pipe database using the outerradius function
Note: zc corresponds to the zoom constant used within AutoCAD and created in the basics file that is referenced by the pipe program.
Technical Program Outline
Note: All coordinates are referenced in top view in the program unless otherwise specified
zoomwin- zooms on a window space directly around where the pipe is to be draw (as shown above - actual window size relative to pipe that is to be drawn). The points win1 and win2 are used to select this window size, based on including the space of the pipe (the outer radius) and a zoom constant (zc) to ensure the entire drawing will be within the frame.
zoomwin <-- zoomwin(win1,win2)
win1 =
- x : origin0 - outerradius(2*pipeinr)
- y : origin1 - outerradius(2*pipeinr)
- z : origin2
win2 =
- x : origin0 + outerradius(2*pipeinr)
- y : origin1 + outerradius(2*pipeinr)
- z : origin2
cylinder1 - Draws the larger of the two cylinders needed to create a pipe. The cylinder has pipeoutr as the radius. From topview, the cylinder draws up towards the viewer with the pipe origin at the bottom base.
cylinder1 <-- cylinder(origin,pipeoutr,pipelength)
origin =
- x : origin0
- y : origin1
- z : origin2
pipeoutr = outerradius(2*pipeinr)
pipelength = pipelength
cylinder2 - Draws the smaller of the two cylinders needed to create the pipe. The cylinder has pipeinr as the radius. From topview, the cylinder draws up towards the viewer with the pipe origin at the bottom base. This inner cylinder will then be subtracted to create the hollow pipe, with the inner radius as specified.
cylinder2 <-- cylinder(origin,pipeinr,pipelength)
origin =
- x : origin0
- y : origin1
- z : origin2
pipeinr : pipeinr
pipelength : pipelength
subtract1 - In order to create the hollow pipe, the inner cylinder must be subtracted from the outer cylinder. The subtract function selects p2, on the edge of the inner cylinder, to select the inner cylinder as the piece to be subtracted. The subtract function then selects p3, on the edge of the outer cylinder, to select the outer cylinder to subtract from.
subtract <-- subtract(p2,p3)
p2 =
- x : origin0 + pipeinr
- y : origin1
- z : origin2
p3 =
- x : origin0 + outerradius(2*pipeinr)
- y : origin1
- z : origin2