# UnitMath Example: ( Pyramids With 4 sides ) Last Modified 12/8/1999

### email Examples FAQ Home Sales \$\$\$ What's New Windows demo

I have tried to make sure the following formulas are correct, but I do not guarantee them.

Regular - Truncated Pyramids

Rectangular - Irregular - Truncated Pyramids

## Regular - Truncated Pyramids TOP

The following drawing shows 3 views of a truncated pyramid with 4 sides.

Starting with the information given above we are to find the information needed to cut each side of the pyramid. The next figures show the information we need. Due to symmetry all four parts have the same dimensions, so we only need to find the information about only one part.

### One side of a Regular - Truncated Pyramid TOP

Following are several example calculations. The calculations assume that angle <= 90 degrees. Example 1, I verified with a CAD program, example 4 is obviously true. ( See angle notes )

### Example1: angle = ( 53.13013 pm 0 ) deg TOP

( 53.13013 pm 0 ) deg is the angle in the above CAD drawing. I built this model and it looks good.

"Define the givens"
angle: ( 53.13013 pm 0 ) deg;
base: 3 in + 7/8 in;
thickness: 3/4 inch;
height: 1 inches;

"Define points T, A, & B"
Tz: height; Ty: Tz/tan(angle); Tx: Ty;
T: Tx `i + Ty `j + Tz `k;

Ax: ft; Ay: 0 ft; Az: 0 ft;
A: Ax `i + Ay `j + Az `k;

By: thickness /sin( angle); Bx: By/tan(45deg); Bz: 0 ft;
B: Bx `i + By `j - Bz `k;

"Define the Normals"
NTOB: T cross B;
NAOT: A cross T;

"Define the remaining"
angle_1: acos( T dot A / ( abs(T) abs(A) ) ) as deg;
angle_2: 180 deg - acos( NTOB dot NAOT / ( abs( NTOB ) abs( NAOT ) ) ) as deg;
width: Tx tan(angle_1) as in & (in/16);
top: base - 2 Tx as ft & in & (in/16);

"Find the results"
angle_1; ~ 59.0 deg
angle_2; ~ 55.6 deg
width as in & (in/8); ~ in + 2.0 (in/8)
top as in & (in/8) ~ 2 in + 3.0 (in/8)

### Example2: angle = 45 deg TOP

"Define the changes from example 1"
angle: 45 deg;
base: 4 in;
thickness: inch/2;
height: 3/2 inches;

"Find the angles and dimensions"
angle_1 ~ 54.7 deg
angle_2; = 60 deg

width as in & (in/16) ~ 2 in + 1.9 (in/16)
top as in = in

### Example3: angle = 60 deg TOP

"Define the changes from example 2"
angle: 60 deg;

"Find the angles and dimensions"
angle_1; ~ 63.4 deg
angle_2 ~ 52.2 deg

width; ~ in + 11.7 (in/16)
top; ~ 2 in + 4.3 (in/16)

### Example4: angle = 90 deg TOP

"Define the changes from example 3"
angle: 90 deg;

"Find the angles and dimensions"
angle_1; = 90 deg
angle_2 = 45 deg

width; = ( 1 + 1/2 ) in
top; = 4 in

### Formula Derivation for the "Regular - Truncated Pyramid" TOP

Motivation:

Given the angles angle1 & angle2 all the other calculations are fairly simple, so I will concentrate on those angles. The three points T, O, & A, define vectors OT & OA, and angleTOA ( angle1 ) can then be found using the formula: "OT dot OA = | OT | | OA | cos( angleTOA )" or "acos( OT dot OA / ( | OT | | OA | ) )". Angle2 can be found from the normals to the two surfaces TOA & TOB. Therefore I need to find points B, T, O, & A

Axis:

Judicious choice of axis simplifies everything, so place O on the left side of Part with coordinants ( 0,0,0 ) . Define the x axis to be parallel to the base of the part, the z axis to be pointing up from the base, the y axis is then given by the right hand rule.

The following points are used in this derivation:
Point O is the origin located on the intersection of front Part & left Part on the outside of the pyramid.
Point T is above point A on the intersection of front Part & left Part on the outside of the pyramid.
Point A is any point on the x axis to the right of point A.
Point B is the intersection of front Part & left Part ( on the inside of the pyramid ) & where z = 0.

With O at the origin vector OA has the same coordinates as A, vector OT as T, and vector OB as B. With this selection of points the angles found are for the sides of the Part. The following figures show the locations of the various points.

The next figure shows how Tz, Ty, & By can be found. Given Ty and By, Tx and Bx can be found using the formula tan ( 45 deg ) = y/x. Bz = 0 by choice of axis.

### Your Own Calculations for a Truncated Pyramid with 4 sides TOP

2. Copy the following text into UnitMath.

"------ Define the Givens CHANGE THESE ------"
angle: ( 53.13013 pm 0 ) deg;
base: 3 in + 7/8 in;
thickness: 3/4 inch;
height: 1 inches;

"------ IN GENERAL DON'T CHANGE THESE ------ "
Tz: height; Ty: Tz/tan(angle); Tx: Ty;
T: Tx `i + Ty `j + Tz `k;

Ax: ft; Ay: 0 ft; Az: 0 ft;
A: Ax `i + Ay `j + Az `k;

By: thickness /sin( angle); Bx: By/tan(45deg); Bz: 0 ft;
B: Bx `i + By `j - Bz `k;

NTOB: T cross B;
NAOT: A cross T;

angle_1: acos( T dot A / ( abs(T) abs(A) ) ) as deg;
angle_2: 180 deg - acos( NTOB dot NAOT / ( abs( NTOB ) abs( NAOT ) ) ) as deg;

angle_1Gauge: 90 deg - angle_1 as deg; angle_2Gauge: 90 deg - angle_2 as deg;
width: Tx tan(angle_1) as in & (in/16);
top: base - 2 Tx as ft & in & (in/16);

"------ The Results will be here after the calculation ------"
angle_1;
angle_1Gauge;
angle_2;
angle_1Gauge;

width;
top;

"------ Stop Copying Here ------"

3. Change the Givens
For example:
angle: 50 deg;
base: 2 feet;
thickness: 1/2 inch;
height: 9 inches;

4. Select all the text that you pasted in Step 2 and evaluate it.
Your results will be at the end of the text. Before building see angle notes.

## Rectangular - Irregular - Truncated Pyramids TOP

The following drawing shows 3 views of a rectangular truncated pyramid with 4 sides.

Starting with the information given above we are to find the information needed to cut each side of the pyramid. The next figures show the information we need.

### Left side of the rectangular truncated pyramid TOP

Following are several example calculations. ( See angle notes )

### Example1: angleF = 90 deg, angleL = 90 deg TOP

"Define the givens"
angleL: 90 deg;
angleF: 90 deg;
thicknessL: inch;
thicknessF: inch;
height: 4 inch;

"Define points T, A, B, & C"
Tz: height; Ty: Tz / tan( angleF ); Tx: Tz / tan( angleL );
T: Tx `i + Ty `j + Tz `k;

A: ft `i + 0 m `j + 0 m `k;

Bz: 0 inch; By: thicknessF / sin( angleF ); Bx: thicknessL / sin( angleL );
B: Bx `i + By `j + Bz `k;

C: 0 m `i + ft `j + 0 m `k;

"Define the Normals"
NF: A cross T;
NC: T cross B;

NL: T cross C;
NC2: B cross T;

"Define the remaining"
angleF1: acos( T dot A / ( abs( T ) abs( A ) ) ) as deg;
angleL1: acos( T dot C / ( abs( T ) abs( C ) ) ) as deg;

angleF2: 180 deg - acos( NF dot NC / ( abs( NF ) abs( NC ) ) ) as deg;
angleL2: 180 deg - acos( NL dot NC2 / ( abs( NL ) abs( NC2 ) ) ) as deg;

widthF: Tx tan( angleF ) as in & in/16;
widthL: Ty tan( angleL ) as in & in/16;

"Find the results"
angleF1; = 90 deg
angleF2; = 45 deg
widthF; = 4 in

angleL1; = 90 deg
angleL2; = 45 deg
widthL; = 4 in

### Example2: angleF = 45 deg, angleL = 45 deg TOP

"Define the changes from example 1"
angleL: 45 deg;
angleF: 45 deg;

"Find the angles and dimensions"
angleF1; ~ 54.7 deg
angleF2; = 60 deg
widthF; ~ 4 in

angleL1; ~ 54.7 deg
angleL2; = 60 deg
widthL; ~ 4 in

### Example3: angleF = 60 deg, angleL = 30 deg TOP

"Define the changes from example 2"
angleL: 30 deg;
angleF: 60 deg;
thicknessL: inch/4;

"Find the angles and dimensions"
angleF1; ~ 33.7 deg
angleF2; ~ 101.5 deg
widthF; = 12 in

angleL1; ~ 73.9 deg
angleL2; ~ 14.2 deg
widthL; = in + ( 5 + 1/3 ) in/16

### Formula Derivation for the "Irregular Rectangular Pyramid" TOP

This derivation is very similar to the derivation for the "Regular - Truncated Pyramid". With the addition of a point C on the Y axis used to find the normal to the left part.

The next figures show how Tz, Ty, Tx, By, & Bx can be found. Bz = 0 by choice of axis.

### Your Own Calculations for a Iregular Pyramid with 4 sides TOP

2. Copy the following text into UnitMath.

"------ Define the Givens CHANGE THESE ------"
angleL: 90 deg;
angleF: 90 deg;
thicknessL: inch;
thicknessF: inch;
height: 4 inch;

"------ IN GENERAL DON'T CHANGE THESE ------ "
Tz: height; Ty: Tz / tan( angleF ); Tx: Tz / tan( angleL );
T: Tx `i + Ty `j + Tz `k;

A: ft `i + 0 m `j + 0 m `k;

Bz: 0 inch; By: thicknessF / sin( angleF ); Bx: thicknessL / sin( angleL );
B: Bx `i + By `j + Bz `k;

C: 0 m `i + ft `j + 0 m `k;

NF: A cross T;
NC: T cross B;

NL: T cross C;
NC2: B cross T;

angleF1: acos( T dot A / ( abs( T ) abs( A ) ) ) as deg;
angleF1Gauge: 90 deg - angleF1 as deg;
angleL1: acos( T dot C / ( abs( T ) abs( C ) ) ) as deg;
angleL1Gauge: 90 deg - angleL1 as deg;

angleF2: 180 deg - acos( NF dot NC / ( abs( NF ) abs( NC ) ) ) as deg;
angleF2Gauge: 90 deg - angleF2 as deg;
angleL2: 180 deg - acos( NL dot NC2 / ( abs( NL ) abs( NC2 ) ) ) as deg;
angleL2Gauge: 90 deg - angleL2 as deg;

widthF: Tx tan( angleF ) as in & in/16;
widthL: Ty tan( angleL ) as in & in/16;

"------ The Results will be here after the calculation ------"
angleF1;
angleF1Gauge;
angleF2;
angleF2Gauge;

widthF;

angleL1;
angleL1Gauge;
angleL2;
angleL2Gauge;

widthL;

"------ Stop Copying Here ------"

3. Change the Givens
For example:
angleL: 45 deg;
angleF: 30 deg;
thicknessL: inch;
thicknessF: inch;
height: 3 inch;

4. Select all the text that you pasted in Step 2 and evaluate it.
Your results will be at the end of the text. Before building see angle notes.