Auxiliares

Jambas y umbral

Arco de herradura visigodo

radio

ANG

Segmento

all

Ancho

n = 3 (slider from 2 to 5, step 1)
frac: 1 / n
vx: (1, 0, 0)
vy: (0, 1, 0)
O: (0, 0, 0)
r1 = Line(O, vx)
luz = 5 (slider from 0 to 5)
radio: luz / 2
A: (0, 0, ((-frac) * radio))
r2 = Line(A, r1)
c1 = Circle(O, radio, vy)
B, C = Intersect(r2, c1)
ancho = 1.1 (slider from 0 to 2)
radio2: radio + ancho
c2 = Circle(O, radio2, vy)
D, E = Intersect(r1, c2)
αα = Angle(B, O, D)
vz: (0, 0, 1)
DD: (x(D), 0, ((-frac) * radio))
DDD: DD - ((frac * radio) * vz)
BB: B + (frac * Vector[DD, B])
BBB: B - ((frac * radio) * vz)
dis = Distance(BBB, DDD)
α = 3.194803891684794 rad (slider from (-αα) to 180° + αα, step 0.01°)
β = If(α < 0°, 0°, If[α > 180°, 180°, α])
pizca: 0.001°
P: ((radio * cos(α + pizca)), 0, (radio * sin(α + pizca)))
R: ((radio2 * cos(β + pizca)), 0, (radio2 * sin(β + pizca)))
u: (0, 0, (-2 * radio))
a = true
b = false
vimposta: (0.5, 0, 0)
f = Segment(O, R)
l = Segment(A, O)
g = Segment(B, C)
h = Segment(O, P)
i = Segment(D, E)
PD: (x(D), 0, If[α < 0°, (radio * sin(α)), z(D)])
j = Segment(PD, DD)
Paux: ((radio * cos(α + pizca / 2)), 0, (radio * sin(α + pizca / 2)))
k = CircumcircleArc(B, Paux, P)
Raux: ((radio2 * cos(β + pizca / 2)), 0, (radio2 * sin(β + pizca / 2)))
c = CircumcircleArc(D, Raux, R)
EE: (x(E), 0, ((-frac) * radio))
PI: (x(E), 0, If[α > 180°, (radio * sin(α)), z(E)])
n_{1} = Segment(E, PI)
A2: 0°
A3: 23°
A4: 43°
A5: 63°
B2: ((radio * cos(A2)), 0, (radio * sin(A2)))
C2: ((radio2 * cos(A2)), 0, (radio2 * sin(A2)))
D2 = Segment(B2, C2)
B3: ((radio * cos(A3)), 0, (radio * sin(A3)))
C3: ((radio2 * cos(A3)), 0, (radio2 * sin(A3)))
D3 = Segment(B3, C3)
B4: ((radio * cos(A4)), 0, (radio * sin(A4)))
C4: ((radio2 * cos(A4)), 0, (radio2 * sin(A4)))
D4 = Segment(B4, C4)
B5: ((radio * cos(A5)), 0, (radio * sin(A5)))
C5: ((radio2 * cos(A5)), 0, (radio2 * sin(A5)))
D5 = Segment(B5, C5)
A6: 78°
A7: 90°
A8: 102°
B6: ((radio * cos(A6)), 0, (radio * sin(A6)))
C6: ((radio2 * cos(A6)), 0, (radio2 * sin(A6)))
D6 = Segment(B6, C6)
B7: ((radio * cos(A7)), 0, (radio * sin(A7)))
C7: ((radio2 * cos(A7)), 0, (radio2 * sin(A7)))
D7 = Segment(B7, C7)
B8: ((radio * cos(A8)), 0, (radio * sin(A8)))
C8: ((radio2 * cos(A8)), 0, (radio2 * sin(A8)))
D8 = Segment(B8, C8)
c3, dd, bb, bbb, ddd = Polygon(DD, BB, BBB, DDD)
c3' = Mirror(c3, zAxis)
BB' = Mirror(BB, zAxis)
BB'' = Mirror(BB', zAxis)
BBB' = Mirror(BBB, zAxis)
DD' = Mirror(DD, zAxis)
DDD' = Mirror(DDD, zAxis)
BB''' = Mirror(BB'', zAxis)
BBBB: BBB - ((2 * radio) * vz)
BBBB' = Mirror(BBBB, zAxis)
DDDD: DDD - ((2 * radio) * vz) - (dis * vz)
DDDD' = Mirror(DDDD, zAxis)
polígono1, m, p, dddd, dddd', ddd', bbb', bbbb', bbbb = Polygon(BBB, DDD, DDDD, DDDD', DDD', BBB', BBBB', BBBB)
d = If(α > 179°, true, false)
texto1: "Frac = \frac{1}{" + (LaTeX[n]) + ""
A9: 117°
B9: ((radio * cos(A9)), 0, (radio * sin(A9)))
C9: ((radio2 * cos(A9)), 0, (radio2 * sin(A9)))
D9 = Segment(B9, C9)
A10: 135°
B10: ((radio * cos(A10)), 0, (radio * sin(A10)))
C10: ((radio2 * cos(A10)), 0, (radio2 * sin(A10)))
D10 = Segment(B10, C10)
A11: 155°
B11: ((radio * cos(A11)), 0, (radio * sin(A11)))
C11: ((radio2 * cos(A11)), 0, (radio2 * sin(A11)))
D11 = Segment(B11, C11)
A12: 180°
B12: ((radio * cos(A12)), 0, (radio * sin(A12)))
C12: ((radio2 * cos(A12)), 0, (radio2 * sin(A12)))
D12 = Segment(B12, C12)
A13: 102°
B13: ((radio * cos(A13)), 0, (radio * sin(A13)))
C13: ((radio2 * cos(A13)), 0, (radio2 * sin(A13)))
D13 = Segment(B13, C13)