General Program Information
Input Definitions
Inputs needed to call the tank function
tank.origin - a 3 by 1 matrix with x,y,z positions corresponding to the point where the tank will be drawn
tank.dim=
*x: tank.dim0 = length
*y: tank.dim1 = width
*z: tank.dim2 = height
thick - the thickness of the wall of the tank
Inputs defined with the tank function
p1=
- x : tank.origin0 - tank.dim0
- y : tank.origin1 + tank.dim1
- z : tank.origin2 + tank.dim2
p2=
- x : tank.origin0 + thick
- y : tank.origin1 - thick
- z : tank.origin2 - thick
p3=
- x : tank.origin0 - tank.dim0 - thick
- y : tank.origin1 + tank.dim1 + thick
- z : tank.origin2 + tank.dim2
win1=
- x : tank.origin0 + thick + zc
- y : tank.origin1 - thick - zc
- z : tank.origin2
win2=
- x : tank.origin0 - tank.dim0 - zc
- y : tank.origin1 + tank.dim1 + zc
- z : tank.origin2 + tank.dim2
Note: zc corresponds to a zoom constant used within Autocad. It is defined in the basics file.
Technical Program Outline
Note: All coordinates are referenced in top view in the program unless otherwise specified
zoomwin- zooms on a window space directly around where the tank is to be drawn
zoomwin <-- zoomwina(win1,win2)
win1=
- x : tank.origin0 + thick + zc
- y : tank.origin1 - thick - zc
- z : tank.origin2
win2=
- x : tank.origin0 - tank.dim0 - zc
- y : tank.origin1 + tank.dim1 + zc
- z : tank.origin2 + tank.dim2
box1 - Draws the smaller of the two boxes to create the tank
box1 <-- boxA(tankorigin,p1)
tankorigin : tankorigin
p1=
- x : tank.origin0 - tank.dim0
- y : tank.origin1 + tank.dim1
- z : tank.origin2 + tank.dim2
box2 - Draws the larger of the two boxes to create the tank
box2 <-- boxA(p2,p3)
p2=
- x : tank.origin0 + thick
- y : tank.origin1 - thick
- z : tank.origin2 - thick
p3=
- x : tank.origin0 - tank.dim0 - thick
- y : tank.origin1 + tank.dim1 + thick
- z : tank.origin2 + tank.dim2
subtract - In order to make the tank hollow, the inner box must be subtracted from the outer box
subtract <-- subtractD(p2,tankorigin)
p2=
- x : tank.origin0 + thick
- y : tank.origin1 - thick
- z : tank.origin2 - thick
tankorigin : tankorigin