h1. General Program Information

{float:left|border=2px solid black}
!sedts1.bmp!
Northeastern Isometric View
{float}
\\
\\
h3. Input Definitions

h5. Inputs Needed to Call the Sedimentation Tank Slopes Function

origin - a 3 by 1 matrix with x,y,z positions corresponding to the point where the pipe will be drawn
tank{~}dim~ \- a 3 by 1 matrix with x,y,z positions specifying the inside dimensions of the sedimentation tank
angle - angle specifying the slope of the sedimentation tank walls

h5. Inputs Defined within the Sedimentation Tank Slopes Function

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

mirror{~}point~ =
* x : origin{~}0~ 
* y : origin{~}1~ + tank.dim{~}1~/2
* z : origin{~}2~

tank{~}length~ = tank.dim{~}0~

slope{~}width~ = tank.dim{~}1~/2

slope{~}height~ = (tank.dim{~}1~*tan(angle))/2

win1 =
* x = origin{~}0~ - tank.dim{~}1~/2
* y = origin{~}1~
* z = origin{~}2~

win2 =
* x = origin{~}0~
* y = origin{~}1~ + (tank.dim{~}1~*tan(angle))/2
* z = origin{~}2~

*Note:* the slope function draws the sloped sides in one sedimentation tank. The sedtank function copies the one tank as many times as needed in the design.

h1. Technical Program Outline

*zoom{~}win{~}* \- zooms on a window space directly around where the slope is to be drawn (as shown above - actual window size relative to slope that is to be drawn).
zoom1 <-- zoom{~}win~(win1,win2)

win1 =
* x = origin{~}0~ - tank.dim{~}1~/2
* y = origin{~}1~
* z = origin{~}2~

win2 =
* x = origin{~}0~
* y = origin{~}1~ + (tank.dim{~}1~*tan(angle))/2
* z = origin{~}2~

{float:left|border=2px solid black}
!sel slope triangle.JPG!
Top View
{float}

*pline1* \- creates a two-dimensional triangle.
pline1 <-- pline(pline1,pline2,pline3)

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

pline2 =
* x = origin{~}0~
* y = origin{~}1~

pline3 =
* x = origin{~}0~ - slope{~}width~
* y = origin{~}1~
\\
\\

{float:left|border=2px solid black}
!sed slope length.JPG!
Free Rotation used to show extrusion
{float}

*extrude1* \- extrudes the triangle creating a three-dimensional wedge.
extrude1 <-- extrude(origin,tank{~}length~)

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

tank{~}length~ = tank.dim{~}0~
\\
\\

{float:left|border=2px solid black}
[!1.bmp|width=200px!|AutoCAD Sedimentation Tank Slopes Program]
Northwest Isometric View, Before rotate3d1
[!2.bmp|width=400px!|AutoCAD Sedimentation Tank Slopes Program]
Northwest Isometric View, After rotate 3d1
{float}

*rotate3d1* \- rotates the wedge 90 degrees around the x axis, using the origin to select the wedge, and the origin to specify where on the x axis to rotate.
rotate3d <-- rotate{~}3d~(origin,origin,"x",90)

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

"x" - specifies which axis to rotate in

90 - specifies how many degrees to rotate

\\


{float:left|border=2px solid black}
[!3.bmp|width=400px!|AutoCAD Sedimentation Tank Slopes Program]
Northwest Isometric View, Before rotate3d1
{float}


*rotate3d2* \- rotates the wedge 270 degrees around the z axis, using the origin to select the wedge, and the origin to specify where on the z axis to rotate. The wedge is now aligned with the lower right hand corner of the sedimentation tank.
rotate3d2 <-- rotate{~}3d~(origin,origin,"z",270)

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

"z" - specifies which axis to rotate in

270 - specifies how many degrees to rotate
\\
\\

{float:left|border=2px solid black}
[!4.bmp|width=400px!|AutoCAD Sedimentation Tank Slopes Program]
Northwest Isometric View, Before rotate3d1
{float}

*mirror3d1* \- creates a mirror image of the wedge, using the origin to select the original wedge, and using the mirror{~}point~ to select the point to mirror the wedge about. 

mirror3d1 <-- mirror3d(origin,mirror{~}point~)

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

mirror{~}point~ =
* x : origin{~}0~ 
* y : origin{~}1~ + tank.dim{~}1~/2
* z : origin{~}2~

*unionall* - unites the two separate wedges to act as one unit

unionall <-- union{~}allA~