diff options
author | Marius Peter <blendoit@gmail.com> | 2019-06-30 12:32:08 -0700 |
---|---|---|
committer | Marius Peter <blendoit@gmail.com> | 2019-06-30 12:32:08 -0700 |
commit | 4d8cb31d1fd94d2414c908aa78fabc5ea5d7d4b7 (patch) | |
tree | d214257f9c8c9a4d01ddfb32a389fb58a0c2099d /gui.py | |
parent | d07acde07a51805bf4c5967ca5e3243b4163dc15 (diff) |
use subplots in creator.py for tkinter in gui.py
Diffstat (limited to 'gui.py')
-rw-r--r-- | gui.py | 78 |
1 files changed, 52 insertions, 26 deletions
@@ -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() |