h3. General Program Information

{float:left|border=2px solid black}
[!1a.bmp|width=480px!|AutoCAD Tee Program][!1b.bmp|width=480px!|AutoCAD Tee Program]
Southeast Isometric View
{float}
\\
\\

h3. Input Definitions


h5. Inputs Needed to Call the Tee Function

origin - A 3*1 matrix with x,y,z positions corresponding to the point where the tee will be drawn.
ND - The nominal diameter of the pipe.  This value along with the pipe schedule is used to determine other actual dimensions of the tee.
R1 - The inner radius of the main pipe.
R2 - The outer radius of the main pipe.
R3 - The outer radius of the sockets of the tee.
L - The length of the main pipe of the tee.
H - The length (or depth) of the sockets of the tee.
EN\- The enumerated pipe schedule type.  Each schedule of pipe is represented by a specific number within our code.

h5. Inputs Defined within Pipe Database

origin-A 3*1 matrix with x,y,z positions corresponding to the point where the tee will be drawn.
ND-The nominal diameter of the pipe.  This value along with the pipe schedule is used to determine other actual dimensions of the tee.
outerradius(ND)\-
innerD(ND,EN)/2\-
ConRadius(ND)\-
ShortTeeLength(ND)*2\-
SocketDepth(ND)\-
EN-The enumerated pipe schedule type.  Each schedule of pipe is represented by a specific number within our code.

h5. Inputs Defined within the Tee Function

p1 =
* x : origin{~}0~
* y : origin{~}1~
* z : origin{~}2~

p2 =
* x : origin{~}0~
* y : origin{~}1~
* z : origin{~}2~ + L/2

p3 =
* x : origin{~}0~ + innerD(ND, EN)/2
* y : origin{~}1~
* z : origin{~}2~ + L/2

p4 =
* x : origin{~}0~ \- R1
* y : origin{~}1~
* z : origin{~}2~

p5 =
* x : origin{~}0~ + L/2
* y : origin{~}1~ + R1
* z : origin{~}2~ + L/2

p7 =
* x : origin{~}0~ \- R3
* y : origin{~}1~
* z : origin{~}2~

p8 =
* x : origin{~}0~ \- R1
* y : origin{~}1~
* z : origin{~}2~ \

p9 =
* x : origin{~}0~
* y : origin{~}1~ \- H
* z : \-origin{~}1~ \- R3

p10 =
* x : origin{~}0~
* y : origin{~}2~ + L/2

p11 =
* x : origin{~}0~ + zc
* y : origin{~}2~ + L/2 - zc

p12 =
* x : origin{~}0~ + zc
* y : origin{~}2~ + L/2

ND - The nominal diameter of the pipe.  This value along with the pipe schedule is used to determine other actual dimensions of the tee.
R1 - The inner radius of the main pipe.

R2 - The outer radius of the main pipe.

R3 - The outer radius of the sockets of the tee.

L - The length of the main pipe of the tee.

H - The length (or depth) of the sockets of the tee.

win1 =
* x : origin{~}0~ \- (L/2 + H)
* y : origin{~}1~ \- R3
* z : origin{~}2~

win2 =
* x : origin{~}0~ + (L/2 + H)
* y : origin{~}1~ + R3
* z : origin{~}2~

EN-The enumerated pipe schedule type.  Each schedule of pipe is represented by a specific number within our code.

*Note:* zc corresponds to the zoom constant used within AutoCAD, defined by the basics file.

h3. Technical Program Outline

*Note:* All coordinates are referenced in top view in the program unless otherwise specified
{float:left|border=2px solid black}
[!2.bmp|width=680px!|AutoCAD Tee Program]
{float}
*zoom{*}{*}{~}win{~}*\- zooms on a window space directly around where the tee is to be drawn.  The points win1 and win2 are used to select this window size, based on including the space of the tee and a zoom constant (zc) to ensure the entire drawing will be within the frame.

zoom{~}win~ <-\- zoom{~}wina~(win1,win2)

win1 =
* x : origin{~}0~ \- (L/2 + H)
* y : origin{~}1~ \- R3
* z : origin{~}2~

win2 =
* x : origin{~}0~ + (L/2 + H)
* y : origin{~}1~ + R3
* z : origin{~}2~

\\
\\
{float:left|border=2px solid black}
[!3.bmp|width=280px!|AutoCAD Tee Program]
Southeast Isometric View
{float}
*[*pipe1*|AutoCAD Pipe Program]*\- Draws a pipe of length L, with origin at p1.

pipe1 <-\- Pipe(p1,ND,L,EN)

p1 = origin

ND = The nominal diameter of the pipe.  This value along with the pipe schedule is used to determine other actual dimensions of the tee.

L = The length of the main pipe of the tee.

EN = The enumerated pipe schedule type.  Each schedule of pipe is represented by a specific number within our code.

\\
\\
{float:left|border=2px solid black}
[!4a.bmp|width=280px!|AutoCAD Tee Program]
Southeast Isometric View
{float}
*[*pipe2*|AutoCAD Pipe Program]* \-  Draws a pipe of half the length of pipe1, with it's origin starting at L/2, the middle of pipe1. All other dimensions are the same as pipe1.

pipe2 <-\- Pipe(p2,ND,L/2,EN)

p2 =
* x : origin{~}0~
* y : origin{~}1~
* z : origin{~}2~ + L/2

ND = The nominal diameter of the pipe.  This value along with the pipe schedule is used to determine other actual dimensions of the tee.

L/2 = half the length of the main pipe

EN = The enumerated pipe schedule type.  Each schedule of pipe is represented by a specific number within our code.

\\
\\
{float:left|border=2px solid black}
[!5a.bmp|width=680px!|AutoCAD Tee Program]
[!5b.bmp|width=280px!|AutoCAD Tee Program]
Southeast Isometric View
{float}
*rotate1*\- rotates pipe2 90 degrees using p2 to select pipe2, then using p3 to specify where on the y-axis to rotate.

rotate1 <-\- rotate(~)3d~(p3,p2,"y",90)

p3 =
* x : origin{~}0~ + innerD(ND, EN)/2
* y : origin{~}1~
* z : origin{~}2~ + L/2

p2 =
* x : origin{~}0~
* y : origin{~}1~
* z : origin{~}2~ + L/2

"y" - specifies which dimension to rotate in

90 - specifies how many degrees to rotate
\\
\\
{float:left|border=2px solid black}
[!6.bmp|width=280px!|AutoCAD Tee Program]
Southeast Isometric View
{float}
*union1* \- unites pipe1 and pipe2 to act as one solid unit, instead of 2 separate pieces, using p4 to select pipe1 and p5 to select pipe2.
union1 <-\- unionA(p4,p5)

p4 =
* x : origin{~}0~ \- R1
* y : origin{~}1~
* z : origin{~}2~

p5 =
* x : origin{~}0~ + L/2
* y : origin{~}1~ + R1
* z : origin{~}2~ + L/2

\\
\\
{float:left|border=2px solid black}
[!7.bmp|width=280px!|AutoCAD Tee Program]
Southeast Isometric View
{float}
*cylinder1* \- Draws a cylinder of length L and a radius of R2 at the origin

cylinder1 <-\- cylinderA(p1,R2,L)

p1 = origin

R2 = The outer radius of the main pipe.

L = The length of the main pipe of the tee.

\\
\\
{float:left|border=2px solid black}
[!8.bmp|width=680px!|AutoCAD Tee Program]
{float}
*subtract1*\- subtracts cylinder1 from the tee using p4 to select cylinder1 as the object to be subtracted, and using p3 to select the tee as the object to be subtracted from.

subtract1 <-\- subtractA(p4,p3)

p4 =
* x : origin{~}0~ \- R1
* y : origin{~}1~
* z : origin{~}2~

p3 =
* x : origin{~}0~ + innerD(ND, EN)/2
* y : origin{~}1~
* z : origin{~}2~ + L/2

\\
\\

{float:left|border=2px solid black}
[!9.bmp|width=280px!|AutoCAD Tee Program]
Southeast Isometric View
{float}

*cylinder5*- creates a cylinder of depth -H and radius R3 positioned at the origin, forming the outer surface for the socket of the tee.

cylinder5 <-\- cylinderC(p1,R3,-H)

p1 = origin

R3 = The outer radius of the&nbsp;sockets of the tee.

H = The depth of the sockets of the tee.
\\
\\
{float:left|border=2px solid black}
[!10.bmp|width=680px!|AutoCAD Tee Program]
{float}

*cylinder6*- creates a cylinder of depth H and radius R3 positioned at the origin, forming the inner surface for the socket of the tee.

cylinder6 <-\- cylinderA(p1,R1,-H)
\\
\\
{float:left|border=2px solid black}
[!11.bmp|width=680px!|AutoCAD Tee Program]
Free Rotation used to show the socket is now hollow
{float}
*subtract3*- subtracts cylinder6 from cylinder5 by using p to select cylinder6 as the object to be subtracted from, and using p to select cylinder5 as the object to be subtracted.

subtract3 <-- subtractA(p7,p8)

p7 =
* x : origin{~}0~ \- R3
* y : origin{~}1~
* z : origin{~}2~

p8 =
* x : origin{~}0~ \- R1
* y : origin{~}1~
* z : origin{~}2~ \