manifoldorigin - a 3 by 1 matrix with x,y,z positions corresponding to the point where the manifold will be drawn
NDManifold - the nominal diameter of the manifold pipe - from this we can find the actual inner diameter and actual outer diameter of the pipe based on the schedule of pipe being used.
orificerad - the radius of the orifice hole
tanklength - the length of the tank
orificedist - the distance between successive orifices
ENPipeSpec - an enumerated pipe schedule which specifies a number which corresponds to a pipe schedule that states the amount of water pressure the pipe can handle before it fails. The pipe schedule affects the inner and outer diameter of the pipe.
radhole - the radius of the orifice hole
manifoldinr is the radius of the inner cylinder defined by innerD(NDManifold,ENPipeSpec)/2
manifoldoutr is the radius of the outer cylinder defined by outerradius(NDManifold)
p1 = manifoldorigin
p2 =
p3 =
p4 =
p5 =
p6 =
p7 =
ND = NDManifold
R3 = radhole
L = tanklength
n1 = floor(tanklength/orificedist)
n2 = 1
d1 = orificedist
win1 =
win2 =
EN = ENPipeSpec
Note: zc corresponds to the zoom constant used within AutoCAD and created in the basics file that is referenced by the pipe program.
Note: All coordinates are referenced in top view in the program unless otherwise specified.
The Manifold program is build on the Sludge Pipe Program.
sludgepipe - creates a sludge pipe
sludgepipe <-- sludgepipe(p1,ND,L,R3,d1,EN)
viewtop - shows an object in top view within AutoCAD
viewtop <-- viewtop
zoomwin - zooms on a window space
zoomwin <-- zoomwin(win1,win2)
cylinder3 - is to draw a cylinder for orifice purpose
cylinder3 <-- cylinderB(p2,R3,p4)
*viewrightside - change view to viewrightside
viewrightside <-- viewrightside
array1 - draw starting at point p5, n1 -- as many rows as the tank length/orifice dist, n2 - 1 and provide orifice distance as the next draw point for the cylinder
array1 <-- arrayB(p5,n1,n2,-d1)
subtract1 - subtract unneeded portion of the cylinders
subtract1 <-- subtractH(p3,p7,p6)