move default airfoil generator from gui to generator.py

Commit
67d94c01bd52ef011c4527b39c26a3419f8dd563
Author
Marius Peter <blendoit@gmail.com>
Author date
Committer
Marius Peter <blendoit@gmail.com>
Committer date
Changed files
generator.py
index 6c9d03c0..eb0ef65f 100644..100644
@@ -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
index 3213d0c6..b987e05f 100644..100644
@@ -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()