*ARCHIVED* development moved to aircraft-studio.
move default airfoil generator from gui to generator.py
Changed files
generator.py
@@ -20,6 +20,29 @@
20
20
import creator
21
21
22
22
23
Added:
def default_airfoil():
24
Added:
"""Generate the default airfoil."""
25
Added:
26
Added:
airfoil = creator.Airfoil.from_dimensions(100, 200)
27
Added:
airfoil.add_naca(2412)
28
Added:
airfoil.add_mass(10)
29
Added:
30
Added:
airfoil.spar = creator.Spar()
31
Added:
airfoil.spar.add_coord(airfoil, 0.23)
32
Added:
airfoil.spar.add_coord(airfoil, 0.57)
33
Added:
airfoil.spar.add_spar_caps(0.3)
34
Added:
airfoil.spar.add_mass(10)
35
Added:
airfoil.spar.add_webs(0.4)
36
Added:
37
Added:
airfoil.stringer = creator.Stringer()
38
Added:
airfoil.stringer.add_coord(airfoil, 3, 6, 5, 4)
39
Added:
airfoil.stringer.add_area(0.1)
40
Added:
airfoil.stringer.add_mass(5)
41
Added:
airfoil.stringer.add_webs(0.1)
42
Added:
43
Added:
return airfoil
44
Added:
45
Added:
23
46
class Population(creator.Airfoil):
24
47
"""Collection of random airfoils."""
25
48
gui.py
@@ -14,6 +14,8 @@
14
14
# along with this program. If not, see <https://www.gnu.org/licenses/>.
15
15
16
16
import creator
17
Added:
import evaluator
18
Added:
import generator
17
19
import tkinter as tk
18
20
import tkinter.ttk as ttk
19
21
@@ -21,32 +23,6 @@
21
23
FigureCanvasTkAgg, NavigationToolbar2Tk)
22
24
23
25
24
Removed:
def make_airfoil():
25
Removed:
"""Create airfoil instance."""
26
Removed:
27
Removed:
airfoil = creator.Airfoil.from_dimensions(100, 200)
28
Removed:
airfoil.add_naca(2412)
29
Removed:
airfoil.add_mass(10)
30
Removed:
31
Removed:
airfoil.spar = creator.Spar()
32
Removed:
airfoil.spar.add_coord(airfoil, 0.23)
33
Removed:
airfoil.spar.add_coord(airfoil, 0.57)
34
Removed:
airfoil.spar.add_spar_caps(0.3)
35
Removed:
airfoil.spar.add_mass(10)
36
Removed:
airfoil.spar.add_webs(0.4)
37
Removed:
38
Removed:
airfoil.stringer = creator.Stringer()
39
Removed:
airfoil.stringer.add_coord(airfoil,
40
Removed:
3,
41
Removed:
6,
42
Removed:
5,
43
Removed:
4)
44
Removed:
airfoil.stringer.add_area(0.1)
45
Removed:
airfoil.stringer.add_mass(5)
46
Removed:
airfoil.stringer.add_webs(0.1)
47
Removed:
return airfoil
48
Removed:
49
Removed:
50
26
def main():
51
27
root = tk.Tk()
52
28
root.wm_title('MAE 154B - Airfoil Design, Evaluation, Optimization')
@@ -57,18 +33,18 @@
57
33
e_naca = ttk.Entry(root)
58
34
l_chord = ttk.Label(root, text='Chord Length')
59
35
e_chord = ttk.Entry(root)
60
Removed:
af = make_airfoil()
36
Added:
af = generator.default_airfoil()
61
37
62
38
# # Graph window
63
39
fig, ax = creator.plot_geom(af, False)
64
40
65
Removed:
canvas = FigureCanvasTkAgg(fig, master=root) # A tk.DrawingArea.
66
Removed:
canvas.draw()
67
Removed:
canvas.get_tk_widget().pack(side=tk.TOP, fill=tk.BOTH, expand=1)
41
Added:
plot = FigureCanvasTkAgg(fig, master=root)
42
Added:
plot.draw()
43
Added:
plot.get_tk_widget().pack(side=tk.TOP, fill=tk.BOTH, expand=1)
68
44
69
Removed:
toolbar = NavigationToolbar2Tk(canvas, root)
45
Added:
toolbar = NavigationToolbar2Tk(plot, root)
70
46
toolbar.update()
71
Removed:
canvas.get_tk_widget().pack(side=tk.TOP, fill=tk.BOTH, expand=1)
47
Added:
plot.get_tk_widget().pack(side=tk.TOP, fill=tk.BOTH, expand=1)
72
48
73
49
# # Layout
74
50
l_naca.pack()