p_{base}

A_{base}

A_{base}

A_{laterale}

p_{base} 

h

A_{totale}

t = 1 (slider from 0 to 1, step 0.1)
N = 5 (slider from 3 to 30, step 1)
l: 15.0 / N
a: 2.0 * 3.141592653589793 / N
z: (a - 2.0 * 3.14) t
R_z: {{cos(z), sin(z), 0.0}, {-1.0 * 1.0 * 1.0 * 1.0 * 1.0 * 1.0 sin(z), cos(z), 0.0}, {0.0, 0.0, 1.0}}
LiRa = Sequence({{cos(k a t), -1.0 * 1.0 * 1.0 * 1.0 * 1.0 * 1.0 sin(k a t), 0.0}, {sin(k a t), cos(k a t), 0.0}, {0.0, 0.0, 1.0}}, k, 0.0, N)
LiR = Sequence({{cos(k a), sin(k a), 0.0}, {-1.0 * 1.0 * 1.0 * 1.0 * 1.0 * 1.0 sin(k a), cos(k a), 0.0}, {0.0, 0.0, 1.0}}, k, 0.0, N)
V_0 = Sequence(Element[{{l, 0.0, 0.0}} Element[LiR, k], 1.0], k, 1.0, N + 1.0)
RV_0: V_0 Element[LiRa, 1.0]
RV_x = Sequence(Element[Element[RV_0, k], 1.0], k, 1.0, N + 1.0)
RV_y = Sequence(Element[Element[RV_0, k], 2.0], k, 1.0, N + 1.0)
SumRV = Sequence({Sum[RV_x, k], Sum[RV_y, k], 0.0}, k, 1.0, N + 1.0)
s = 1.5707963267948966 (slider from 0 to 1.5707963267948966, step 0.1)
R_x: {{1.0, 0.0, 0.0}, {0.0, cos(s), sin(s)}, {0.0, -1.0 * 1.0 * 1.0 * 1.0 * 1.0 * 1.0 sin(s), cos(s)}}
α = 0.7853981633974483 rad (slider from 0 to 6.283185307179586, step 0.017453292519943295)
f = -0.5 (slider from -1 to 1, step 0.05)
Cav: {{1.0, 0.0}, {f cos(α), f sin(α)}, {0.0, 1.0}}
altezza = 5
S_R: SumRV Transpose[Element[LiR, N]] Transpose[R_x] Element[LiR, N] R_z
VQ = Sequence(Element[{Element[V_0, k]} Element[LiRa, k], 1.0], k, 1.0, N)
VQ_x = Sequence(Element[Element[VQ, k], 1.0], k, 1.0, N)
VQ_y = Sequence(Element[Element[VQ, k], 2.0], k, 1.0, N)
SumVQ = Sequence({Sum[VQ_x, k], Sum[VQ_y, k], 0.0}, k, 1.0, N)
R = Sequence(Element[SumVQ, k] + {0.0, 0.0, -1.0 * 1.0 * 1.0 * 1.0 * 1.0 * 1.0 altezza}, k, 1.0, N)
V_{0y} = Sequence(Element[Element[V_0, k], 2.0], k, 1.0, N + 1.0)
V_{0x} = Sequence(Element[Element[V_0, k], 1.0], k, 1.0, N + 1.0)
SumV_0 = Sequence({Sum[V_{0x}, k], Sum[V_{0y}, k], 0.0}, k, 1.0, N + 1.0)
P = Sequence(Element[SumV_0, k], k, 1.0, N + 1.0)
Q = Insert({Element[P, N]}, SumVQ, 1.0)
M = Div(N, 2.0)
R1 = Insert({Element[P, N] + {0.0, 0.0, -1.0 * 1.0 * 1.0 * 1.0 * 1.0 * 1.0 altezza}}, R, 1.0)
b: 3.141592653589793 - a
Rb: {{cos(t a), sin(t a), 0.0}, {-1.0 * 1.0 * 1.0 * 1.0 * 1.0 * 1.0 sin(t a), cos(t a), 0.0}, {0.0, 0.0, 1.0}}
RP: P R_x
p = 15
PQ = Sequence((Element[Element[Q Cav, k], 1.0], Element[Element[Q Cav, k], 2.0]), k, 1.0, N + 1.0)
PP = Sequence((Element[Element[RP Cav, k], 1.0], Element[Element[RP Cav, k], 2.0]), k, 1.0, N + 1.0)
lista1: Element[P, N] + {0.0, 0.0, -1.0 * 1.0 * 1.0 * 1.0 * 1.0 * 1.0 altezza}
S = Sequence(Element[R, N] + Element[S_R, k], k, 1.0, N + 1.0)
PR = Sequence((Element[Element[R1 Cav, k], 1.0], Element[Element[R1 Cav, k], 2.0]), k, 1.0, N + 1.0)
PS = Sequence((Element[Element[S Cav, k], 1.0], Element[Element[S Cav, k], 2.0]), k, 1.0, N + 1.0)
SpigoliSotto = Sequence(Segment[Element[PS, k], Element[PS, k + 1.0]], k, 1.0, N)
SpigoliSopra = Sequence(Segment[Element[PP, k], Element[PP, k + 1.0]], k, 1.0, N)
FacceLat = Sequence(Polygon[Element[PQ, k], Element[PQ, k + 1.0], Element[PR, k + 1.0], Element[PR, k]], k, 1.0, N)
SpigoliLat = Sequence(Segment[Element[PQ, k], Element[PR, k]], k, 1.0, N + 1.0)
p_{base} = Sequence(Segment[Element[PS, k], Element[PS, k + 1.0]], k, 1.0, N)
c = false
SpigoliLatSotto = Sequence(Segment[Element[PR, k], Element[PR, k + 1.0]], k, 1.0, N + 1.0)
h = Segment(Element[PQ, 1.0], Element[PR, 1.0])
d = false

Tool: Rz
Input: t
Output: rotz

rotz: {{cos(t), sin(t), 0.0}, {-1.0 * 1.0 * 1.0 * 1.0 * 1.0 * 1.0 * 1.0 * 1.0 * 1.0 * 1.0 * 1.0 * 1.0 * 1.0 * 1.0 * 1.0 sin(t), cos(t), 0.0}, {0.0, 0.0, 1.0}}

Tool: Rx
Rotazione intorno all'asse x
Input: t
Output: rotx

rotx: {{1.0, 0.0, 0.0}, {0.0, cos(t), sin(t)}, {0.0, -1.0 * 1.0 * 1.0 * 1.0 * 1.0 * 1.0 * 1.0 * 1.0 * 1.0 * 1.0 * 1.0 sin(t), cos(t)}}

Tool: Cav
Proiezione Cavaliera (angolo e fattore)
Input: a, f
Output: Cav

Cav: {{1.0, 0.0}, {f cos(a), f sin(a)}, {0.0, 1.0}}

Tool: PP
Crea punti da lista di 2-vettori
Input: D
Output: D'

D: {{{1.0, 0.0}}, {{0.5972906806161636, 0.1664348903516518}}, {{-0.63, 0.1}}, {{-0.99, -0.1}}, {{0.02, -0.17}}, {{1.0, 0.0}}}
D' = Sequence((Element[Element[Element[D, k], 1.0], 1.0], Element[Element[Element[D, k], 1.0], 2.0]), k, 1.0, Length[D])

Tool: CX
Coordinata x
Input: E
Output: C_x

E: {{0.2051423187457533, 0.4093554777201233, -2.2358217632667}}
C_x = Element(Element[E, 1.0], 1.0)

Tool: CY
Coordinata y
Input: E
Output: C_y

E: {{0.2051423187457533, 0.4093554777201233, -2.2358217632667}}
C_y = Element(Element[E, 1.0], 2.0)

Tool: CZ
Coordinata z
Input: E
Output: C_z

E: {{0.2051423187457533, 0.4093554777201233, -2.2358217632667}}
C_z = Element(Element[E, 1.0], 3.0)

Tool: Assegna
Input: lista
Output: togli

lista: {{{4.990791389699066, 6.160139071075733, -2.92648046798742}}, {{4.369158108252163, 5.931579335429786, -3.486517521031252}}, {{4.42, 5.85, -4.35}}, {{5.11, 5.97, -4.86}}, {{5.91, 6.21, -4.64}}, {{6.23, 6.38, -3.86}}, {{5.82, 6.36, -3.09}}, {{4.99, 6.16, -2.93}}}
togli = Sequence(Element[Element[lista, k], 1.0], k, 1.0, Length[lista])

Tool: Copia
Input: lista
Output: copia

lista: {{{3.749399456654644E-33, 6.123233995736766E-17, -1.0}}, {{-6.123233995736766E-17, 7.498798913309288E-33, -1.0}}, {{-1.124819836996393E-32, -6.123233995736766E-17, -1.0}}, {{6.123233995736766E-17, -1.499759782661858E-32, -1.0}}, {{-6.123233995736766E-17, -1.0, -1.224646799147353E-16}}, {{1.0, -1.224646799147353E-16, -1.224646799147353E-16}}, {{1.83697019872103E-16, 1.0, -1.224646799147353E-16}}, {{-1.0, 2.449293598294706E-16, -1.224646799147353E-16}}, {{-1.124819836996393E-32, -1.83697019872103E-16, 1.0}}, {{1.83697019872103E-16, -2.249639673992786E-32, 1.0}}, {{3.374459510989179E-32, 1.83697019872103E-16, 1.0}}, {{-1.83697019872103E-16, 4.499279347985573E-32, 1.0}}, {{6.123233995736766E-17, 1.0, 2.449293598294706E-16}}, {{-1.0, 1.224646799147353E-16, 2.449293598294706E-16}}, {{-1.83697019872103E-16, -1.0, 2.449293598294706E-16}}, {{1.0, -2.449293598294706E-16, 2.449293598294706E-16}}}
copia = Sequence(Element[lista, k], k, 1.0, Length[lista])