Plantilla 3D
Author: Rafael Losada Liste

Cilindro de revolución

v20 = 1
v10 = -1
u10 = 0
p = 3.141592653589793
u20: 2.0 * p
Q4 = (-2.22, 8)
Q3 = (-4.22, 8)
p2 = Segment(Q3, Q4)
P3 = Point(p2)
q3: (x(P3) + 4.22) * 5.0
v1: v10 + q3 * (v20 - v10) / 10.0
p4 = Segment(P3, Q4)
P4 = Point(p4)
q4: (x(P4) + 4.22) * 5.0
v2: v10 + q4 * (v20 - v10) / 10.0
Q2 = (-5.22, 8)
Q1 = (-7.22, 8)
p1 = Segment(Q1, Q2)
P1 = Point(p1)
q1: (x(P1) + 7.22) * 5.0
u1: u10 + q1 * (u20 - u10) / 10.0
p3 = Segment(P1, Q2)
P2 = Point(p3)
q2: (x(P2) + 7.22) * 5.0
u2: u10 + q2 * (u20 - u10) / 10.0
C = (-6, 7)
zz2 = OrthogonalLine(C, xAxis)
zz0 = Circle(C, 0.62)
ZZ4 = Intersect(zz0, zz2, 1.0)
ZZ3 = Intersect(zz0, zz2, 2.0)
zElipse2 = Ellipse(ZZ3, ZZ4, 0.65)
Z = Point(zElipse2)
ZZ7, ZZ8 = Intersect(zElipse2, zz2)
α = Angle(ZZ8, C, Z)
zz1 = OrthogonalLine(C, yAxis)
ZZ2 = Intersect(zz0, zz1, 2.0)
ZZ1 = Intersect(zz0, zz1, 1.0)
zElipse1 = Ellipse(ZZ1, ZZ2, 0.65)
XY = Point(zElipse1)
ZZ5, ZZ6 = Intersect(zElipse1, zz1)
β = Angle(ZZ6, C, XY)
r = 4 (slider from 0 to 6, step 0.1)
Q5 = (-1.22, 8)
Q6 = (-0.22, 8)
p5 = Segment(Q5, Q6)
P5 = Point(p5)
q5: x(P5) + 1.72
paso: 0.08 / q5
α_1 = 0 rad (slider from 0 to 6.283185307179586, step 0.017453292519943295)
nada = 0
zz4 = Segment(ZZ5, ZZ6)
zz3 = Segment(ZZ7, ZZ8)
zPunto1 = Intersect(zElipse2, zElipse1, 1.0)
zPunto2 = Intersect(zElipse2, zElipse1, 4.0)
zSeg2 = Segment(zPunto1, zPunto2)
β_1 = -1 (slider from -1 to 1, step 0.01)
curva2 = CurveCartesian(r * (cos(α_1) * sin(β) + sin(α_1) * cos(β)), r * (-1.0 * cos(α_1) * cos(β) * sin(α) + sin(α_1) * sin(β) * sin(α) + v * cos(α)), v, v1, v2)
A = (-4, 7)
a1 = CurveCartesian(r * (cos(u) * sin(β) + sin(u) * cos(β)), r * (-1.0 * cos(u) * cos(β) * sin(α) + sin(u) * sin(β) * sin(α) + β_1 * cos(α)), u, u1, u2)
curva1A = CurveCartesian(r * (cos(u) * sin(β) + sin(u) * cos(β)), r * (-1.0 * cos(u) * cos(β) * sin(α) + sin(u) * sin(β) * sin(α)), u, u1, u2)
A1: curva1A(α_1)
A2: curva1A(α_1)
A3: curva1A(α_1)
A4: curva1A(α_1)
A5: curva1A(α_1)
A6: curva1A(α_1)
list2 = Sequence(CurveCartesian[r * (cos(u) * sin(β) + sin(u) * cos(β)), r * (-1.0 * cos(u) * cos(β) * sin(α) + sin(u) * sin(β) * sin(α) + v * cos(α)), v, v1, v2], u, u1, u2, paso)
list1 = Sequence(CurveCartesian[r * (cos(u) * sin(β) + sin(u) * cos(β)), r * (-1.0 * cos(u) * cos(β) * sin(α) + sin(u) * sin(β) * sin(α) + v * cos(α)), u, u1, u2], v, v1, v2, paso)