Exemplo n.º 1
0
def create_paraxial_design_view_v2(opt_model, dgm_type, gui_parent=None):
    refresh_gui, is_dark = get_defaults_from_gui_parent(gui_parent)
    fig = dgm.InteractiveDiagram(opt_model,
                                 dgm_type,
                                 refresh_gui=refresh_gui,
                                 do_draw_frame=True,
                                 do_draw_axes=True,
                                 aspect='auto',
                                 is_dark=is_dark)
    panel_fcts = [
        create_2d_figure_toolbar,
    ]
    if dgm_type == 'ht':
        # cmds = diagram.create_parax_design_commands(fig)
        cmds = None
        panel_fcts.append(create_diagram_controls_groupbox)
        panel_fcts.append(create_diagram_edge_actions_groupbox)
        panel_fcts.append(create_diagram_layers_groupbox)
    else:
        cmds = None
    view_width = 880
    view_ht = 660
    title = "Paraxial Design View"
    # panel_fcts = [create_2d_figure_toolbar,
    #               create_diagram_controls_groupbox,
    #               ]
    plotview.create_plot_view(gui_parent,
                              fig,
                              title,
                              view_width,
                              view_ht,
                              add_panel_fcts=panel_fcts,
                              commands=cmds,
                              drop_action=diagram.GlassDropAction())
Exemplo n.º 2
0
def create_live_layout_view(opt_model, gui_parent=None):
    refresh_gui, is_dark = get_defaults_from_gui_parent(gui_parent)
    fig = InteractiveLayout(opt_model,
                            refresh_gui=refresh_gui,
                            do_draw_frame=True,
                            do_draw_axes=False,
                            do_draw_rays=True,
                            do_paraxial_layout=False,
                            is_dark=is_dark)
    # cmds = create_live_layout_commands(fig)
    cmds = None
    view_width = 880
    view_ht = 660
    title = "Optical Layout"
    panel_fcts = [
        create_2d_figure_toolbar,
        create_draw_rays_groupbox,
    ]
    plotview.create_plot_view(gui_parent,
                              fig,
                              title,
                              view_width,
                              view_ht,
                              add_panel_fcts=panel_fcts,
                              commands=cmds,
                              drop_action=layout.GlassDropAction())
Exemplo n.º 3
0
def create_3rd_order_bar_chart(opt_model, gui_parent=None):
    refresh_gui, is_dark = get_defaults_from_gui_parent(gui_parent)
    fig = ThirdOrderBarChart(opt_model, dpi=100, is_dark=is_dark)
    view_width = 600
    view_ht = 600
    title = "3rd Order Aberrations"
    panel_fcts = [create_plot_scale_panel]
    plotview.create_plot_view(gui_parent, fig, title, view_width, view_ht,
                              add_panel_fcts=panel_fcts)
Exemplo n.º 4
0
def create_field_curves(opt_model, gui_parent=None):
    refresh_gui, is_dark = get_defaults_from_gui_parent(gui_parent)
    fig = FieldCurveFigure(opt_model, dpi=100, is_dark=is_dark)
    view_width = 600
    view_ht = 600
    title = "Field Curves"
    panel_fcts = [create_plot_scale_panel]
    plotview.create_plot_view(gui_parent, fig, title, view_width, view_ht,
                              add_panel_fcts=panel_fcts)
Exemplo n.º 5
0
def create_paraxial_design_view(opt_model, dgm_type, gui_parent=None):
    fig = ParaxialDesignFigure(opt_model, gui_parent.refresh_gui, dgm_type,
                               figsize=(5, 4))
    cmds = diagram.create_parax_design_commands(fig)
    view_width = 650
    view_ht = 500
    title = "Paraxial Design View"
    plotview.create_plot_view(gui_parent, fig, title, view_width, view_ht,
                              commands=cmds)
Exemplo n.º 6
0
def create_3rd_order_bar_chart(opt_model, gui_parent=None):
    fig = ThirdOrderBarChart(opt_model, dpi=100)
    view_width = 600
    view_ht = 600
    title = "3rd Order Aberrations"
    panel_fcts = [create_plot_scale_panel]
    plotview.create_plot_view(gui_parent,
                              fig,
                              title,
                              view_width,
                              view_ht,
                              add_panel_fcts=panel_fcts)
Exemplo n.º 7
0
def create_field_curves(opt_model, gui_parent=None):
    fig = FieldCurveFigure(opt_model, dpi=100)
    view_width = 600
    view_ht = 600
    title = "Field Curves"
    panel_fcts = [create_plot_scale_panel]
    plotview.create_plot_view(gui_parent,
                              fig,
                              title,
                              view_width,
                              view_ht,
                              add_panel_fcts=panel_fcts)
Exemplo n.º 8
0
def create_ray_grid_view(opt_model, gui_parent=None):
    refresh_gui, is_dark = get_defaults_from_gui_parent(gui_parent)
    num_flds = len(opt_model.optical_spec.field_of_view.fields)

    fig = SpotDiagramFigure(opt_model, scale_type=Fit.All_Same,
                            dpi=100, is_dark=is_dark)
    view_box = 300
    view_width = view_box
    view_ht = num_flds * view_box
    title = "Spot Diagram"
    panel_fcts = [create_plot_scale_panel]
    plotview.create_plot_view(gui_parent, fig, title, view_width, view_ht,
                              add_panel_fcts=panel_fcts)
Exemplo n.º 9
0
def create_wavefront_view(opt_model, gui_parent=None):
    refresh_gui, is_dark = get_defaults_from_gui_parent(gui_parent)
    num_flds = len(opt_model.optical_spec.field_of_view.fields)
    num_wvls = len(opt_model.optical_spec.spectral_region.wavelengths)

    fig = WavefrontFigure(opt_model, scale_type=Fit.All_Same,
                          num_rays=32, dpi=100, is_dark=is_dark)
#                                 figsize=(2*num_wvls, 2*num_flds))
    view_box = 300
    view_width = num_wvls * view_box
    view_ht = num_flds * view_box
    title = "Wavefront Map"
    panel_fcts = [create_plot_scale_panel]
    plotview.create_plot_view(gui_parent, fig, title, view_width, view_ht,
                              add_panel_fcts=panel_fcts)
Exemplo n.º 10
0
def create_ray_fan_view(opt_model, data_type, gui_parent=None):
    refresh_gui, is_dark = get_defaults_from_gui_parent(gui_parent)
    fig = RayFanFigure(opt_model, data_type,
                       scale_type=Fit.All_Same,
                       figsize=(5, 4), dpi=100, is_dark=is_dark)
    view_width = 600
    view_ht = 600
    if data_type == "Ray":
        title = "Ray Fan View"
    elif data_type == "OPD":
        title = "OPD Fan View"
    else:
        title = "bad data_type argument"
    panel_fcts = [create_plot_scale_panel]
    plotview.create_plot_view(gui_parent, fig, title, view_width, view_ht,
                              add_panel_fcts=panel_fcts)
Exemplo n.º 11
0
def create_ray_grid_view(opt_model, gui_parent=None):
    num_flds = len(opt_model.optical_spec.field_of_view.fields)

    fig = SpotDiagramFigure(opt_model,
                            scale_type=Fit.All_Same,
                            num_rays=11,
                            dpi=100)
    view_box = 300
    view_width = view_box
    view_ht = num_flds * view_box
    title = "Spot Diagram"
    panel_fcts = [create_plot_scale_panel]
    plotview.create_plot_view(gui_parent,
                              fig,
                              title,
                              view_width,
                              view_ht,
                              add_panel_fcts=panel_fcts)
Exemplo n.º 12
0
def create_live_layout_view(opt_model, gui_parent=None):
    refresh_gui = None
    if gui_parent:
        refresh_gui = gui_parent.refresh_gui
    fig = InteractiveLayout(opt_model, refresh_gui)
    cmds = create_live_layout_commands(fig)
    view_width = 880
    view_ht = 660
    title = "Optical Layout"
    panel_fcts = [create_draw_rays_groupbox]
    plotview.create_plot_view(gui_parent,
                              fig,
                              title,
                              view_width,
                              view_ht,
                              add_panel_fcts=panel_fcts,
                              add_nav_toolbar=True,
                              commands=cmds)
Exemplo n.º 13
0
def create_paraxial_design_view_v2(opt_model, dgm_type, gui_parent=None):
    fig = dgm.InteractiveDiagram(opt_model,
                                 gui_parent.refresh_gui,
                                 dgm_type,
                                 do_draw_frame=True,
                                 do_draw_axes=True,
                                 aspect='auto',
                                 figsize=(5, 4))
    cmds = dgm.create_parax_design_commands(fig)
    view_width = 650
    view_ht = 500
    title = "Paraxial Design View V2"
    plotview.create_plot_view(gui_parent,
                              fig,
                              title,
                              view_width,
                              view_ht,
                              commands=cmds,
                              add_nav_toolbar=True)
Exemplo n.º 14
0
def create_lens_layout_view(opt_model, gui_parent=None):
    fig = LensLayoutFigure(opt_model)
    view_width = 660
    view_ht = 440
    title = "Lens Layout View"
    plotview.create_plot_view(gui_parent, fig, title, view_width, view_ht)