summaryrefslogtreecommitdiff
path: root/gui.py
diff options
context:
space:
mode:
authorMarius Peter <blendoit@gmail.com>2019-06-30 12:32:08 -0700
committerMarius Peter <blendoit@gmail.com>2019-06-30 12:32:08 -0700
commit4d8cb31d1fd94d2414c908aa78fabc5ea5d7d4b7 (patch)
treed214257f9c8c9a4d01ddfb32a389fb58a0c2099d /gui.py
parentd07acde07a51805bf4c5967ca5e3243b4163dc15 (diff)
use subplots in creator.py for tkinter in gui.py
Diffstat (limited to 'gui.py')
-rw-r--r--gui.py78
1 files changed, 52 insertions, 26 deletions
diff --git a/gui.py b/gui.py
index 0a41d8a..3213d0c 100644
--- a/gui.py
+++ b/gui.py
@@ -19,39 +19,65 @@ import tkinter.ttk as ttk
from matplotlib.backends.backend_tkagg import (
FigureCanvasTkAgg, NavigationToolbar2Tk)
-from matplotlib.figure import Figure
-import numpy as np
+def make_airfoil():
+ """Create airfoil instance."""
-root = tk.Tk()
-root.wm_title('MAE 154B - Airfoil Design, Evaluation, Optimization')
-# root.geometry('1000x400')
+ airfoil = creator.Airfoil.from_dimensions(100, 200)
+ airfoil.add_naca(2412)
+ airfoil.add_mass(10)
-# # User inputs
-# l_naca = ttk.Label(root, text='NACA Number')
-# e_naca = ttk.Entry(root)
-# l_chord = ttk.Label(root, text='Chord Length')
-# e_chord = ttk.Entry(root)
-# # Graph window
+ airfoil.spar = creator.Spar()
+ airfoil.spar.add_coord(airfoil, 0.23)
+ airfoil.spar.add_coord(airfoil, 0.57)
+ airfoil.spar.add_spar_caps(0.3)
+ airfoil.spar.add_mass(10)
+ airfoil.spar.add_webs(0.4)
-fig = Figure()
-t = np.arange(0, 3, .01)
-fig.add_subplot(111).plot(t, 2 * np.sin(2 * np.pi * t))
+ airfoil.stringer = creator.Stringer()
+ airfoil.stringer.add_coord(airfoil,
+ 3,
+ 6,
+ 5,
+ 4)
+ airfoil.stringer.add_area(0.1)
+ airfoil.stringer.add_mass(5)
+ airfoil.stringer.add_webs(0.1)
+ return airfoil
-canvas = FigureCanvasTkAgg(fig, master=root) # A tk.DrawingArea.
-canvas.draw()
-canvas.get_tk_widget().pack(side=tk.TOP, fill=tk.BOTH, expand=1)
-toolbar = NavigationToolbar2Tk(canvas, root)
-toolbar.update()
-canvas.get_tk_widget().pack(side=tk.TOP, fill=tk.BOTH, expand=1)
+def main():
+ root = tk.Tk()
+ root.wm_title('MAE 154B - Airfoil Design, Evaluation, Optimization')
+ # root.geometry('1000x400')
+ # # User inputs
+ l_naca = ttk.Label(root, text='NACA Number')
+ e_naca = ttk.Entry(root)
+ l_chord = ttk.Label(root, text='Chord Length')
+ e_chord = ttk.Entry(root)
+ af = make_airfoil()
-# # Layout
-# l_naca.grid(row=0, sticky='W')
-# e_naca.grid(row=0, column=1)
-# l_chord.grid(row=1, sticky='W')
-# e_chord.grid(row=1, column=1)
+ # # Graph window
+ fig, ax = creator.plot_geom(af, False)
-root.mainloop()
+ canvas = FigureCanvasTkAgg(fig, master=root) # A tk.DrawingArea.
+ canvas.draw()
+ canvas.get_tk_widget().pack(side=tk.TOP, fill=tk.BOTH, expand=1)
+
+ toolbar = NavigationToolbar2Tk(canvas, root)
+ toolbar.update()
+ canvas.get_tk_widget().pack(side=tk.TOP, fill=tk.BOTH, expand=1)
+
+ # # Layout
+ l_naca.pack()
+ e_naca.pack()
+ l_chord.pack()
+ e_chord.pack()
+
+ root.mainloop()
+
+
+if __name__ == '__main__':
+ main()
Copyright 2019--2024 Marius PETER