h3. General Program Information
{float:left|border=2px solid black}
[!1.bmp|width=280px!|AutoCAD Sedimentation Tank Inlet Slopes Trapezoid Program][!1b.bmp|width=380px!|AutoCAD Sedimentation Tank Inlet Slopes Trapezoid Program]
Southwest Isometric View
{float}
\\
\\
h3. Input Definitions
h5. Inputs Needed to Call the Inlet Slope Trapezoid Function
origin - A 3*1 matrix with x,y,z positions corresponding to the point where the inlet slope will be drawn.
Length - length of the slopes, generally the length of the sedimentation tank
W{~}Sed~ - width of the sedimentation tank
l{~}orifice~ - length of the opening that will allow inlet flow
h{~}orifice~ - height of the opening that will allow inlet flow
b{~}orifice~ -
thick - thickness of the slopes
n - number of orifices and sections, one section contains one orifice
bigslope - slope of the inlet in degrees
little slope -
H{~}Trapezoid~ -
h5. Inputs Defined within the Inlet Slope Trapezoid Function
verticalorigin =
* x: origin{~}0~
* y: origin{~}1~ - b{~}orifice~ - thick
* z: origin{~}2~
verticaldim =
* x: length/n
* y: thick
* z: H{~}Trapezoid~ + thick*cos(bigslope)
slopeorigin =
* x: origin{~}0~
* y: origin{~}1~ - b{~}orifice~ - thick
* z: origin{~}2~ + H{~}Trapezoid~ + thick*cos(bigslope)
dim =
* x: length/n
* y: thick
* z: (W{~}Sed~/2 -b{~}orifice~)*(1/cos(bigslope))
verticalorigin{~}dim~ = verticalorigin + verticaldim
box{~}dim~ = slopeorigin + dim
sideorigin =
* x: slopeorigin{~}1~ + thick
* y: slopeorigin{~}2~ + dim{~}2~
* z: slopeorigin{~}0~
sideoriginrotate =
* x: slopeorigin{~}1~ + thick
* y: slopeorigin{~}2~
* z: slopeorigin{~}0~
orifice{~}origin~ =
* x: verticalorigin{~}0~ + verticaldim{~}0~/2 - l{~}orifice~/2
* y: verticalorigin{~}1~
* z: verticalorigin{~}2~
orifice{~}dim~ =
* x: verticalorigin{~}0~ + verticaldim{~}0~/2 + l{~}orifice~/2
* y: verticalorigin{~}1~ + verticaldim{~}1~
* z: verticalorigin{~}2~ + h{~}orifice~ + (b{~}orifice~*tan(littleslope))
nrow = l
ncol = n
dist = length/2
mirror{~}point1~ =
* x: origin{~}0~
* y: origin{~}1~
mirror{~}point2~ =
* x: origin{~}0~ + zc
* y: origin{~}1~
win1 =
* x: origin{~}0~ - zc
* y: origin{~}1~ - zc
* z: origin{~}2~ - zc
win2 =
* x: origin{~}0~ + dim{~}0~ - zc
* y: origin{~}1~ + dim{~}1~ - zc
* z: origin{~}2~ + dim{~}2~ - zc
h3. Technical Program Outline
*viewtop* - sets the workspace so that the user is viewing the top of the object.
viewtop <-- viewtop1
{float:left|border=2px solid black}
[!2.bmp|width=420px!|AutoCAD Sedimentation Tank Inlet Slopes Trapezoid Program]
{float}
*zoomwin* - zooms on a window space directly around where the inlet slope is to be drawn.
zoomwin <-- zoom{~}win~(win1, win2)
win1 =
* x: origin{~}0~ - zc
* y: origin{~}1~ - zc
* z: origin{~}2~ - zc
win2 =
* x: origin{~}0~ + dim{~}0~ - zc
* y: origin{~}1~ + dim{~}1~ - zc
* z: origin{~}2~ + dim{~}2~ - zc
\\
\\
{float:left|border=2px solid black}
[!3.bmp|width=420px!|AutoCAD Sedimentation Tank Inlet Slopes Trapezoid Program]
{float}
*verticalbox* - draws a box using verticalorigin to select the first corner, and verticalorigin{~}dim~ to select the opposite corner. This box will serve as the vertical part of the inlet slopes.
verticalbox <-- box(verticalorigin, verticalorigin{~}dim~)
verticalorigin =
* x: origin{~}0~
* y: origin{~}1~ - b{~}orifice~ - thick
* z: origin{~}2~
verticaldim =
* x: length/n
* y: thick
* z: H{~}Trapezoid~ + thick*cos(bigslope)
\\
\\
{float:left|border=2px solid black}
[!4.bmp|width=280px!|AutoCAD Sedimentation Tank Inlet Slopes Trapezoid Program]
Southwest Isometric View
{float}
*bigslopebox* - draws on top of the vertical box, using slopeorigin to select the first corner, and box{~}dim~ to select the opposite corner. This box will serve as the slope of the inlet slopes.
bigslopebox <-- box(slopeorigin, box{~}dim~)
slopeorigin =
* x: origin{~}0~
* y: origin{~}1~ - b{~}orifice~ - thick
* z: origin{~}2~ + H{~}Trapezoid~ + thick*cos(bigslope)
box{~}dim~ = slopeorigin + dim
\\
\\
{float:left|border=2px solid black}
[!5.bmp|width=180px!|AutoCAD Sedimentation Tank Inlet Slopes Trapezoid Program][!5a.bmp|width=280px!|AutoCAD Sedimentation Tank Inlet Slopes Trapezoid Program]
Before sideview
{float}
*sideview* - changes the view from topview to side view
sideview <-- viewrightside1
\\
\\
{float:left|border=2px solid black}
[!6.bmp|width=280px!|AutoCAD Sedimentation Tank Inlet Slopes Trapezoid Program]
{float}
*rotate* - rotates the bigslopebox by 90 - biglope*(180/pi) degrees along the z-axis.
rotate <-- rotate{~}3d~(sideorigin, sideoriginrotate, "z", 90 - bigslope*(180/pi))
sideorigin =
* x: slopeorigin{~}1~ + thick
* y: slopeorigin{~}2~ + dim{~}2~
* z: slopeorigin{~}0~
sideoriginrotate =
* x: slopeorigin{~}1~ + thick
* y: slopeorigin{~}2~
* z: slopeorigin{~}0~
"z" =
90 - bigslope*(180/pi) =
\\
\\
*orificebox* -
orificebox <-- box(orifice{~}origin~, orifice{~}dim~)
orifice{~}origin~ =
* x: verticalorigin{~}0~ + verticaldim{~}0~/2 - l{~}orifice~/2
* y: verticalorigin{~}1~
* z: verticalorigin{~}2~
orifice{~}dim~ =
* x: verticalorigin{~}0~ + verticaldim{~}0~/2 + l{~}orifice~/2
* y: verticalorigin{~}1~ + verticaldim{~}1~
* z: verticalorigin{~}2~ + h{~}orifice~ + (b{~}orifice~*tan(littleslope))
*subtractorifice* - subtracts orificebox to create an orifice, using the verticalorigin to select orificebox as the object to be subtracted.
subtractorifice <-- subtractDall(verticalorigin)
verticalorigin =
* x: origin{~}0~
* y: origin{~}1~ - b{~}orifice~ - thick
* z: origin{~}2~
*array* - creates an array to replicate the slab n times, by using the origin to select the slab as the item to put into an array, then specifies that a rectangular array with one row and "n" columns with a displacement of "dist" is to be used to place the slabs one next to the other.
array <-- arrayB(verticalorigin, nrow, ncol, dist)
verticalorigin =
* x: origin{~}0~
* y: origin{~}1~ - b{~}orifice~ - thick
* z: origin{~}2~
nrow = l
ncol = n
dist = length/2
*union* - Unites all the individual components of the inlet slope to act as a single unit
union <-- union{~}allA~
*mirror* - replicates the original inlet slope drawn by selecting the original inlet slope using the origin, then reflecting it over a mirror line created using mirror{~}point1~ and mirror{~}point2~.
mirror <-- mirror{~}all~(mirror{~}point1~, mirror{~}point2~)
win1 =
* x: origin{~}0~ - zc
* y: origin{~}1~ - zc
* z: origin{~}2~ - zc
win2 =
* x: origin{~}0~ + dim{~}0~ - zc
* y: origin{~}1~ + dim{~}1~ - zc
* z: origin{~}2~ + dim{~}2~ - zc
*bigunion* -
bigunion <--union{~}allA~
|