Ejemplo n.º 1
0
    def __init__(self, parent=None, autofit=False):
        App.__init__(self)
        wx.Frame.__init__(self,
                          parent,
                          id=wx.ID_ANY,
                          title='CanvasFrame',
                          pos=wx.DefaultPosition,
                          size=wx.Size(800, 600),
                          style=wx.DEFAULT_FRAME_STYLE | wx.TAB_TRAVERSAL)
        sizer = wx.BoxSizer(wx.VERTICAL)
        self.canvas = MCanvas(self, autofit=autofit)
        sizer.Add(self.canvas, 1, wx.EXPAND | wx.ALL, 0)
        self.SetSizer(sizer)

        self.set_rg = self.canvas.set_rg
        self.set_lut = self.canvas.set_rg
        self.set_log = self.canvas.set_log
        self.set_mode = self.canvas.set_mode
        self.set_tool = self.canvas.set_tool
        self.set_imgs = self.canvas.set_imgs
        self.set_img = self.canvas.set_img
        self.set_cn = self.canvas.set_cn

        self.Bind(wx.EVT_IDLE, self.on_idle)
        self.Bind(wx.EVT_ACTIVATE, self.on_valid)
        self.Bind(wx.EVT_CLOSE, self.on_close)
Ejemplo n.º 2
0
    def __init__( self, parent ):
        wx.Frame.__init__ ( self, parent, id = wx.ID_ANY, title = 'ImageApp', 
                            size = wx.Size(800,600), pos = wx.DefaultPosition, 
                            style = wx.RESIZE_BORDER|wx.DEFAULT_FRAME_STYLE|wx.TAB_TRAVERSAL )
        App.__init__(self)
        self.SetSizeHints( wx.Size(600,-1) )

        sizer = wx.BoxSizer(wx.VERTICAL)
        self.toolbar = ToolBar(self)
        self.toolbar.Fit()
        sizer.Add(self.toolbar, 0, wx.EXPAND |wx.ALL, 0)

        self.canvasnb = CanvasNoteBook(self)
        self.canvasnb.Bind( wx.lib.agw.aui.EVT_AUINOTEBOOK_PAGE_CHANGED, self.on_new_img)
        self.canvasnb.Bind( wx.lib.agw.aui.EVT_AUINOTEBOOK_PAGE_CLOSE, self.on_close_img)
        sizer.Add(self.canvasnb, 1, wx.EXPAND |wx.ALL, 0)

        self.stapanel = stapanel = wx.Panel( self, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.TAB_TRAVERSAL )
        sizersta = wx.BoxSizer( wx.HORIZONTAL )
        self.txt_info = wx.StaticText( stapanel, wx.ID_ANY, "ImageApp", wx.DefaultPosition, wx.DefaultSize, 0 )
        sizersta.Add( self.txt_info, 1, wx.ALIGN_BOTTOM|wx.BOTTOM|wx.LEFT|wx.RIGHT, 2 )
        self.pro_bar = ProgressBar(stapanel)
        sizersta.Add( self.pro_bar, 0, wx.ALL, 2 )
        stapanel.SetSizer(sizersta)
        sizer.Add(self.stapanel, 0, wx.EXPAND | wx.ALL, 0)
        self.SetSizer(sizer)
        self.Layout()
        self.Centre( wx.BOTH )
        self.Bind(wx.EVT_CLOSE, self.on_close)
Ejemplo n.º 3
0
    def __init__(self, parent):
        wx.Frame.__init__(self,
                          parent,
                          id=wx.ID_ANY,
                          title='ImagePy',
                          size=wx.Size(800, 600),
                          pos=wx.DefaultPosition,
                          style=wx.RESIZE_BORDER | wx.DEFAULT_FRAME_STYLE
                          | wx.TAB_TRAVERSAL)
        App.__init__(self)
        self.SetSizeHints(wx.Size(600, -1))

        self.init_menu()
        sizer = wx.BoxSizer()
        self.canvasnb = CanvasNoteBook(self)
        self.canvasnb.Bind(wx.lib.agw.aui.EVT_AUINOTEBOOK_PAGE_CHANGED,
                           self.on_new_img)
        self.canvasnb.Bind(wx.lib.agw.aui.EVT_AUINOTEBOOK_PAGE_CLOSE,
                           self.on_close_img)
        sizer.Add(self.canvasnb, 1, wx.EXPAND | wx.ALL, 0)

        self.toolbar = ToolBar(self, False)
        self.toolbar.Fit()
        sizer.Add(self.toolbar, 0, wx.EXPAND | wx.ALL, 0)

        self.SetSizer(sizer)
        self.Layout()
        self.Centre(wx.BOTH)

        self.Bind(wx.EVT_CLOSE, self.on_close)
Ejemplo n.º 4
0
    def __init__( self, parent ):
        wx.Frame.__init__ ( self, parent, id = wx.ID_ANY, title = 'ImagePy', 
                            size = wx.Size(-1,-1), pos = wx.DefaultPosition, 
                            style = wx.RESIZE_BORDER|wx.DEFAULT_FRAME_STYLE|wx.TAB_TRAVERSAL )
        App.__init__(self)
        self.auimgr = aui.AuiManager()
        self.auimgr.SetManagedWindow( self )
        self.SetSizeHints( wx.Size(600,-1) )
        
        logopath = os.path.join(root_dir, 'data/logo.ico')
        self.SetIcon(wx.Icon(logopath, wx.BITMAP_TYPE_ICO))

        self.init_menu()
        self.init_tool()
        self.init_widgets()
        self.init_text()
        self.init_status()
        self._load_all()
        self.Fit()

        self.Layout()
        self.auimgr.Update()
        self.Fit()
        self.Centre( wx.BOTH )

        self.Bind(wx.EVT_CLOSE, self.on_close)
        self.Bind(aui.EVT_AUI_PANE_CLOSE, self.on_pan_close)
        self.source()
Ejemplo n.º 5
0
    def __init__(self, parent):
        wx.Frame.__init__(self,
                          parent,
                          id=wx.ID_ANY,
                          title='ImagePy',
                          size=wx.Size(800, 600),
                          pos=wx.DefaultPosition,
                          style=wx.RESIZE_BORDER | wx.DEFAULT_FRAME_STYLE
                          | wx.TAB_TRAVERSAL)
        App.__init__(self)
        self.auimgr = aui.AuiManager()
        self.auimgr.SetManagedWindow(self)
        self.SetSizeHints(wx.Size(800, 600))

        self.init_menu()
        self.init_canvas()
        self.init_table()
        self.init_status()

        self.Layout()
        self.auimgr.Update()
        self.Fit()
        self.Centre(wx.BOTH)

        self.Bind(wx.EVT_CLOSE, self.on_close)
        self.Bind(aui.EVT_AUI_PANE_CLOSE, self.on_pan_close)
Ejemplo n.º 6
0
 def _show_img(self, img, title=None):
     print(img)
     canvas = self.canvasnb.add_canvas()
     if not isinstance(img, Image):
         img = Image(img, title)
     App.show_img(self, img, img.title)
     canvas.set_img(img)
Ejemplo n.º 7
0
def action_demo5():
    app = App()
    image = Image([camera()], 'camera')
    app.show_img(image, 'camera')
    Gaussian().start(app)

    plt.subplot(121).imshow(camera())
    plt.subplot(122).imshow(image.img)
    plt.show()
Ejemplo n.º 8
0
 def _show_table(self, tab, title):
     grid = self.tablenb.add_grid()
     if not isinstance(tab, Table): 
         tab = Table(tab, title)
     App.show_table(self, tab, tab.title)
     grid.set_data(tab)
     info = self.auimgr.GetPane(self.tablenbwrap)
     info.Show(True)
     self.auimgr.Update()
Ejemplo n.º 9
0
def para_test():
    app = App()
    para = {'name': '', 'age': 5}
    view = [(str, 'name', 'your', 'name'),
            (int, 'age', (0, 120), 0, 'your', 'age')]
    rst = app.show_para('Personal Information', para, view)
    # >>> your: ? name <str> yxdragon
    # >>> your: ? age <int> 32
    print(rst)
Ejemplo n.º 10
0
 def _show_table(self, tab, title):
     cframe = GridFrame(self)
     grid = cframe.grid
     if not isinstance(tab, Table): 
         tab = Table(tab, title)
     App.show_table(self, tab, tab.title)
     grid.set_data(tab)
     cframe.Bind(wx.EVT_ACTIVATE, self.on_active_table)
     cframe.Bind(wx.EVT_CLOSE, self.on_close_table)
     cframe.SetIcon(self.GetIcon())
     cframe.Show()
Ejemplo n.º 11
0
 def _show_img(self, img, title=None):
     cframe = CanvasFrame(self, True)
     canvas = cframe.canvas
     if not isinstance(img, Image): 
         img = Image(img, title)
     App.show_img(self, img, img.title)
     cframe.Bind(wx.EVT_ACTIVATE, self.on_active_img)
     cframe.Bind(wx.EVT_CLOSE, self.on_close_img)
     canvas.set_img(img)
     cframe.SetIcon(self.GetIcon())
     cframe.Show()
Ejemplo n.º 12
0
def basic_test():
    app = App()
    # alert a message
    app.alert('Hello!', title='SciApp')
    # show a text, here just print it
    app.show_txt('Hello', title='SciApp')
    # show a markdown text, here just print it
    app.show_md('Hello', title='SciApp')
    # yes or no
    rst = app.yes_no('Are you ok?', 'SciApp')
    print(rst)
Ejemplo n.º 13
0
 def __init__(self, parent):
     App.__init__(self)
     wx.Frame.__init__(self,
                       parent,
                       id=wx.ID_ANY,
                       title='CanvasNoteFrame',
                       pos=wx.DefaultPosition,
                       size=wx.Size(800, 600),
                       style=wx.DEFAULT_FRAME_STYLE | wx.TAB_TRAVERSAL)
     sizer = wx.BoxSizer(wx.VERTICAL)
     self.notebook = CanvasNoteBook(self)
     self.canvas = self.notebook.canvas
     sizer.Add(self.notebook, 1, wx.EXPAND | wx.ALL, 0)
     self.SetSizer(sizer)
     self.add_canvas = self.notebook.add_canvas
     self.Layout()
     self.Bind(wx.EVT_CLOSE, self.on_close)
Ejemplo n.º 14
0
def macros_with_para():
    app = App(asyn=False)
    for i in [OpenFile, SaveImage, Gaussian]:
        app.add_plugin(i.title, i)
        
    app.run_macros([('Open', {'path':'camera.png'}),
                    ('Gaussian', {'sigma':2}),
                    ('Save Image', {'path':'blur.png'})])
Ejemplo n.º 15
0
def macros_test():
    app = App(asyn=False)
    for i in [OpenFile, SaveImage, Gaussian]:
        app.add_plugin(i.title, i)
        
    app.run_macros([('Open', None),
                    ('Gaussian', None),
                    ('Save Image', None)])
Ejemplo n.º 16
0
def object_test():
    '''
    there is a manager for every type of object.
    such as img_manager, we can call app's:
    show_img, close_img, active_img, get_img
    '''
    from sciapp.object import Image
    from skimage.data import camera

    app = App()
    image = Image([camera()], 'camera')
    app.show_img(image, 'camera')
    # >>> UINT8  512x512  S:1/1  C:0/1  0.25M
    print(app.get_img())
    # >>> <sciapp.object.image.Image object at 0x000002076A025780>
    print(app.img_names())
    # >>> ['camera']
    app.close_img('camera')
    # >>> close image: camera
    print(app.img_names())
Ejemplo n.º 17
0
 def on_close_table(self, event):
     App.close_table(self, event.GetEventObject().grid.table.title)
     event.Skip()
Ejemplo n.º 18
0
 def on_close_img(self, event):
     #event.GetEventObject().Bind(wx.EVT_ACTIVATE, None)
     App.close_img(self, event.GetEventObject().canvas.image.title)
     event.Skip()
Ejemplo n.º 19
0
 def close_table(self, name=None):
     App.close_tab(self, name)
     for i in range(self.tablenb.GetPageCount()):
         if self.tablenb.GetPageText(i) == name:
             return self.tablenb.DeletePage(i)
Ejemplo n.º 20
0
def read_gaussian_write():
    app = App()
    ImageReader().start(app)
    Gaussian().start(app)
    ImageWriter().start(app)
Ejemplo n.º 21
0
def img_write_demo4():
    app = App()
    FileReader().start(app)
    ImageWriter().start(app)
Ejemplo n.º 22
0
def image_read_demo3():
    app = App()
    FileReader().start(app)
    print('images:', app.img_names(), 'tables:', app.table_names())
Ejemplo n.º 23
0
def image_read_demo2():
    app = App()
    ImageReader().start(app)
Ejemplo n.º 24
0
def image_read_demo1():
    app = App()
    ImageReader1().start(app)
    print(app.img_names())
Ejemplo n.º 25
0
 def close_img(self, name):
     App.close_img(self, name)
     for i in range(self.canvasnb.GetPageCount()):
         if self.canvasnb.GetPageText(i) == name:
             return self.canvasnb.DeletePage(i)
Ejemplo n.º 26
0
def io_process_test():
    app = App(asyn=False)
    OpenFile().start(app)
    Gaussian().start(app)
    SaveImage().start(app)
Ejemplo n.º 27
0
 def on_close_img(self, event):
     canvas = event.GetEventObject().GetPage(event.GetSelection())
     #self.remove_img_win(canvas)
     App.close_img(self, canvas.image.title)
Ejemplo n.º 28
0
 def on_close_table(self, event):
     grid = event.GetEventObject().GetPage(event.GetSelection())
     App.close_table(self, grid.table.title)
Ejemplo n.º 29
0
def action_demo1():
    app = App()
    SciAction().start(app)
Ejemplo n.º 30
0
 def __init__(self):
     App.__init__(self, False)