Wiki Markup |
---|
h3. General Program |
...
Input Definitions
Inputs Needed to Call the Inlet Slope Trapezoid Function
...
Information {float:left|border=2px solid black} [!1.bmp|width=280px!|AutoCAD Sedimentation Tank Inlet Slopes Program][!1b.bmp|width=280px!|AutoCAD Sedimentation Tank Inlet Slopes Program] Free Rotation Used {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 |
...
WSed - width of the sedimentation tank
lorifice - length of the opening that will allow inlet flow
horifice - height of the opening that will allow inlet flow
borifice -
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 -
HTrapezoid -
Inputs Defined within the Inlet Slope Trapezoid Function
verticalorigin =
- x: origin0
- y: origin1 - borifice - thick
- z: origin2
verticaldim =
- x: length/n
- y: thick
- z: HTrapezoid + thick*cos(bigslope)
slopeorigin =
- x: origin0
- y: origin1 - borifice - thick
- z: origin2 + HTrapezoid + thick*cos(bigslope)
dim =
...
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)) |
...
verticalorigindim = verticalorigin + verticaldim
boxdim = slopeorigin + dim
sideorigin =
- x: slopeorigin1 + thick
- y: slopeorigin2 + dim2
- z: slopeorigin0
sideoriginrotate =
- x: slopeorigin1 + thick
- y: slopeorigin2
- z: slopeorigin0
orificeorigin =
- x: verticalorigin0 + verticaldim0/2 - lorifice/2
- y: verticalorigin1
- z: verticalorigin2
orificedim =
- x: verticalorigin0 + verticaldim0/2 + lorifice/2
- y: verticalorigin1 + verticaldim1
- z: verticalorigin2 + horifice + (borifice*tan(littleslope))
nrow = l
ncol = n
dist = length/2
mirrorpoint1 =
- x: origin0
- y: origin1
mirrorpoint2 =
- x: origin0 + zc
- y: origin1
win1 =
- x: origin0 - zc
- y: origin1 - zc
- z: origin2 - zc
win2 =
- x: origin0 + dim0 - zc
- y: origin1 + dim1 - zc
- z: origin2 + dim2 - zc
Technical Program Outline
viewtop - sets the workspace so that the user is viewing the top of the object.
viewtop <-- viewtop1
zoomwin - zooms on a window space directly around where the inlet slope is to be drawn.
zoomwin <-- zoomwin(win1, win2)
win1 =
- x: origin0 - zc
- y: origin1 - zc
- z: origin2 - zc
win2 =
- x: origin0 + dim0 - zc
- y: origin1 + dim1 - zc
- z: origin2 + dim2 - zc
verticalbox -
verticalbox <-- box(verticalorigin, verticalorigindim)
verticalorigin =
- x: origin0
- y: origin1 - borifice - thick
- z: origin2
verticaldim =
- x: length/n
- y: thick
- z: HTrapezoid + thick*cos(bigslope)
bigslopebox -
bigslopebox <-- box(slopeorigin, boxdim)
slopeorigin =
- x: origin0
- y: origin1 - borifice - thick
- z: origin2 + HTrapezoid + thick*cos(bigslope)
boxdim = slopeorigin + dim
sideview -
sideview <-- viewrightside1
rotate -
rotate <-- rotate3d(sideorigin, sideoriginrotate, "z", 90 - bigslope*(180/pi))
sideorigin =
- x: slopeorigin1 + thick
- y: slopeorigin2 + dim2
- z: slopeorigin0
sideoriginrotate =
- x: slopeorigin1 + thick
- y: slopeorigin2
- z: slopeorigin0
"z" =
90 - bigslope*(180/pi) =
orificebox -
orificebox <-- box(orificeorigin, orificedim)
orificeorigin =
- x: verticalorigin0 + verticaldim0/2 - lorifice/2
- y: verticalorigin1
- z: verticalorigin2
orificedim =
- x: verticalorigin0 + verticaldim0/2 + lorifice/2
- y: verticalorigin1 + verticaldim1
- z: verticalorigin2 + horifice + (borifice*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: origin0
- y: origin1 - borifice - thick
- z: origin2
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: origin0
- y: origin1 - borifice - thick
- z: origin2
nrow = l
ncol = n
dist = length/2
union - Unites all the individual components of the inlet slope to act as a single unit
union <-- unionallA
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 mirrorpoint1 and mirrorpoint2.
mirror <-- mirrorall(mirrorpoint1, mirrorpoint2)
win1 =
- x: origin0 - zc
- y: origin1 - zc
- z: origin2 - zc
win2 =
- x: origin0 + dim0 - zc
- y: origin1 + dim1 - zc
- z: origin2 + dim2 - zc
bigunion -
...
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
*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
*verticalbox* -
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)
*bigslopebox* -
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
*sideview* -
sideview <-- viewrightside1
*rotate* -
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~
|