Konstruktion SoFi-Box_Geogebra
Author: Gero Stoffels

Maße

Maße der Modellsonne

Eingabefeld der Maße (>0)

r_s

Maße der Modellerde

d_{ES}

b_{SoFi-Box}

h_{SoFi-Box}

d_{L_{12}}

d_{L_{23}}

Maße des Modellmondes

r_M

d_{MS}

Erklärung der Größen

Radius der Modellsonne/Halber Abstand beider LEDs

Erklärung der Größen

Abstand Modellerde zu Modellsonne

Breite der SoFi-Box

Höhe der Sofi-Box

Abstand Beobachtungsloch 1 und 2

Abstand Beobachtungsloch 2 und 3

Erklärung der Größen

Radius Modellmond

Abstand Modellmond-Modellsonne

Eingabefeld der Maße (>0)

Eingabefeld der Maße (>0)

d_{MS}

Prüfung der Eingabe

Prüfung der Eingabe

Prüfung der Eingabe

Konstruierte Objekte

Modellsonne

GeoGebra-Objekt

D_{1}

(0,r_{s},0)

D_{2}

(0,-r_{s},0)

Modellerde

GeoGebra-Objekt

E_

Vieleck\;mit\;den\;Eckpunkten: (0.5b_{SoFi-Box},d_{ES},0.5h_{SoFi-Box}),(-0.5b_{SoFi-Box},d_{ES},0.5h_{SoFi-Box}),(-0.5b_{SoFi-Box},d_{ES},-0.5h_{SoFi-Box}),(0.5b_{SoFi-Box},d_{ES},-0.5h_{SoFi-Box})

L_1

(0,d_{ES},0)

L_2

(-d_{L_{12}},d_{ES},0)

L_3

(-(d_{L_{12}}+d_{L_{23}}),d_{ES},0)

Modellmond

GeoGebra-Objekt

M_M

(0,d_{MS},0)

M_

x^2+(y-d_{MS})^2+z^2=r_M

Schattenkegel

M_{K1}

(k_l*x(D_1)+(1-k_l)x(L),(y(F)-y(D_1)/(x(F)-x(D_1))*k_l*x(D_1)+(1-k_l)x(L)+)y(M_M)))

r_{Kl1}

r_M/Abstand(M_M,D_1)*Abstand(M_Kl,D_1)

M_{K1}

(k_l*x(D_2)+(1-k_l)x(L),(y(F)-y(D_2)/(x(F)-x(D_2))*k_l*x(D_2)+(1-k_l)x(L)+)y(M_M)))

r_{Kl1}

r_M/Abstand(M_M,D_2)*Abstand(M_Kl,D_2)

B3 = 0.5 (slider from -5 to 5, step 1)
B6: 5
B7: 27
B8: 16.5
B9: 2
B10: 12
B13: 0.7
d_{MINMS}: (-B13)
t = 0.49 (slider from 0 to 1, step 0.001)
B14 = If(Defined[B6], If[Defined[B6 > 0], If[B6 > 0, ((B6 - (2 * B13)) * t) + B13, "?"], "?"], "?")
C3 = If(Defined[B3], If[Defined[B3 > 0], If[B3 > 0, "Prima!", "Geben Sie eine Zahl>0 ein."], "Geben Sie eine Zahl>0 ein."], "Geben Sie eine Zahl>0 ein.")
C6 = If(Defined[B6], If[Defined[B6 > 0], If[B6 > 0, "Prima!", "Geben Sie eine Zahl>0 ein."], "Geben Sie eine Zahl>0 ein."], "Geben Sie eine Zahl>0 ein.")
C7 = If(Defined[B7], If[Defined[B7 > 0], If[B7 > 0, "Prima!", "Geben Sie eine Zahl>0 ein."], "Geben Sie eine Zahl>0 ein."], "Geben Sie eine Zahl>0 ein.")
C8 = If(Defined[B8], If[Defined[B8 > 0], If[B8 > 0, "Prima!", "Geben Sie eine Zahl>0 ein."], "Geben Sie eine Zahl>0 ein."], "Geben Sie eine Zahl>0 ein.")
C9 = If(Defined[B9], If[Defined[B9 > 0], If[B9 > 0, If[B9 ≤ (0.5 * B7), "Prima!", "Geben\;Sie\;eine\;Zahl\;≤ 0.5\cdot b_{SoFi-Box}\;ein."], "Geben Sie eine Zahl>0 ein."], "Geben Sie eine Zahl>0 ein."], "Geben Sie eine Zahl>0 ein.")
C10 = If(Defined[B10], If[Defined[B10 > 0], If[B10 > 0, If[B10 ≤ (0.5 * B7), "Prima!", "Geben\;Sie\;eine\;Zahl\;≤ 0.5\cdot b_{SoFi-Box}\;ein."], "Geben Sie eine Zahl>0 ein."], "Geben Sie eine Zahl>0 ein."], "Geben Sie eine Zahl>0 ein.")
C13 = If(Defined[B13], If[Defined[B13 > 0], If[B13 > 0, "Prima!", "Geben Sie eine Zahl>0 ein."], "Geben Sie eine Zahl>0 ein."], "Geben Sie eine Zahl>0 ein.")
C14 = If(Defined[B14], If[Defined[B14 > 0], If[B14 > 0, "Prima!", "Geben Sie eine Zahl>0 ein."], "Geben Sie eine Zahl>0 ein."], "Geben Sie eine Zahl>0 ein.")
D_1: (B3, 0, 0)
D_2: ((-B3), 0, 0)
E, a, c, d, e = Polygon(((0.5 * B7), B6, (0.5 * B8)), ((-0.5 * B7), B6, (0.5 * B8)), ((-0.5 * B7), B6, (-0.5 * B8)), ((0.5 * B7), B6, (-0.5 * B8)))
L_1: (0, B6, 0)
L_2: ((-B9), B6, 0)
L_3: ((-(B9 + B10)), B6, 0)
M_M: (0, B14, 0)
M = Sphere(M_M, B13)
j = Ray(D_1, M_M)
F = Intersect(j, E)
d_{D_1F} = Distance(D_1, F)
l = Ray(D_2, M_M)
r_F: (B13 / Distance[D_1, M_M] * d_{D_1F})
q = Circle(M_M, B13, xOyPlane)
r = Circle(D_1, M_M, xOyPlane)
G, H = Intersect(r, q)
o = Plane((1, 0, 0), (2, 0, 0), (0, 1, 0))
s = IntersectPath(o, E)
I, J = Intersect(o, E)
a_1 = Ray(D_1, H)
b_1 = Ray(D_1, G)
c_1 = OrthogonalLine(F, s, xOyPlane)
K = Intersect(c_1, b_1)
L = Intersect(s, b_1)
d_1 = OrthogonalLine(L, j, xOyPlane)
e_1 = OrthogonalLine(F, j, xOyPlane)
k_l = 0.48 (slider from 0 to 1, step 0.001)
M_{Kl1}: ((k_l * x(D_1)) + ((1 - k_l) * x(L)), ((y(F) - y(D_1)) / (x(F) - x(D_1)) * ((k_l * x(D_1)) + ((1 - k_l) * x(L)))) + y(M_M), 0)
r_{Kl1}: (B13 / Distance[M_M, D_1] * Distance[M_{Kl1}, D_1])
u, f_1, v = Cone(M_{Kl1}, D_1, r_{Kl1})
g_1 = Circle(D_2, M_M, xOyPlane)
N, O = Intersect(q, g_1)
h_1 = Ray(D_2, O)
i_1 = Ray(D_2, M_M)
j_1 = Ray(D_2, N)
P = Intersect(i_1, s)
Q = Intersect(j_1, s)
M_{Kl2}: ((k_l * x(D_2)) + ((1 - k_l) * x(Q)), ((y(P) - y(D_2)) / (x(P) - x(D_2)) * ((k_l * x(D_2)) + ((1 - k_l) * x(Q)))) + y(M_M), 0)
r_{Kl2}: (B13 / Distance[M_M, D_2] * Distance[M_{Kl2}, D_2])
w, k_1, l_1 = Cone(M_{Kl2}, D_2, r_{Kl2})
p_1 = IntersectPath(o, w)
R, S, T, U = Corner(p_1)
q_1 = IntersectPath(o, u)
V, W, Z, A_1 = Corner(q_1)
m_1 = Plane(L_1, E)
s_1 = IntersectPath(m_1, u)
B_1, C_1 = Corner(s_1)
t_1 = IntersectPath(m_1, w)
E_1, F_1 = Corner(t_1)