예제 #1
0
파일: dx_.py 프로젝트: terjekv/scitools
    def __init__(self, plt, width=640, height=480, depth=24, title='',
                 hw_render_mode='opengl'):
        # create the GUI:
        self.plt = plt
        self.width = width
        self.height = height
        self.master = plt._master
        self.root = Tkinter.Toplevel(self.master)
        self.root.title(title)
        self.root.protocol("WM_DELETE_WINDOW", self.close)
        self.root.bind("<KeyPress-q>", self.close)
        self.root.minsize(200, 200)
        self.root.geometry('%sx%s' % (width,height))
        self.root.withdraw()
        self.frame = Tkinter.Frame(self.root, relief='sunken', bd=2)
        self.frame.pack(side='top', fill='both', expand=1)
        #button = Tkinter.Button(self.root, text="Quit", command=self.close)
        #button.pack()

        # start DX:
        cmd = DX.DXEXEC + ' -execonly -hwrender opengl'
        self.conn = DX.DXLStartDX(cmd, None)

        #DX.DXLLoadMacroDirectory(self.conn, DXMACROS)
        # hack for loading necessary macro files:
        DX.exDXLLoadScript(self.conn,
                           os.path.join(DXMACROS, "ArrangeMemberMacro.net"))
        DX.exDXLLoadScript(self.conn,
                           os.path.join(DXMACROS, "CappedIsoMacro.net"))

        self.script = ''
예제 #2
0
def test_dx():
    import DX
    import Tkinter
    import tempfile

    DXMACROS = '/usr/share/dx/samples/macros'
    DXMACROS = os.environ.get('DXMACROS', DXMACROS)

    master = Tkinter.Tk()
    master.withdraw()
    root = Tkinter.Toplevel(master)
    root.title("Hello OpenDX!")
    def close_window(event=None):
        root.withdraw()
    root.protocol("WM_DELETE_WINDOW", close_window)
    root.bind("<KeyPress-q>", close_window)
    root.geometry('320x240')
    root.withdraw()
    frame = Tkinter.Frame(root, relief='sunken', bd=2)
    frame.pack(side='top', fill='both', expand=1)

    # start DX:
    cmd = DX.DXEXEC + ' -execonly -hwrender opengl'
    conn = DX.DXLStartDX(cmd, None)

    #DX.DXLLoadMacroDirectory(self.conn, DXMACROS)
    # hack for loading necessary macro files:
    DX.exDXLLoadScript(conn, os.path.join(DXMACROS, "ArrangeMemberMacro.net"))
    DX.exDXLLoadScript(conn, os.path.join(DXMACROS, "CappedIsoMacro.net"))


    root.deiconify()
    root.update()
    DX.DXLExecuteOnChange(conn)
    DX.WaitForDXIdle(conn)
예제 #3
0
파일: dx_.py 프로젝트: neok-m4700/scitools
    def __init__(self, plt, width=640, height=480, depth=24, title='',
                 hw_render_mode='opengl'):
        # create the GUI:
        self.plt = plt
        self.width = width
        self.height = height
        self.master = plt._master
        self.root = tkinter.Toplevel(self.master)
        self.root.title(title)
        self.root.protocol("WM_DELETE_WINDOW", self.close)
        self.root.bind("<KeyPress-q>", self.close)
        self.root.minsize(200, 200)
        self.root.geometry('%sx%s' % (width, height))
        self.root.withdraw()
        self.frame = tkinter.Frame(self.root, relief='sunken', bd=2)
        self.frame.pack(side='top', fill='both', expand=1)
        #button = Tkinter.Button(self.root, text="Quit", command=self.close)
        # button.pack()

        # start DX:
        cmd = DX.DXEXEC + ' -execonly -hwrender opengl'
        self.conn = DX.DXLStartDX(cmd, None)

        #DX.DXLLoadMacroDirectory(self.conn, DXMACROS)
        # hack for loading necessary macro files:
        DX.exDXLLoadScript(self.conn,
                           os.path.join(DXMACROS, "ArrangeMemberMacro.net"))
        DX.exDXLLoadScript(self.conn,
                           os.path.join(DXMACROS, "CappedIsoMacro.net"))

        self.script = ''
예제 #4
0
파일: dx_.py 프로젝트: terjekv/scitools
 def send(self, cmd):
     if not isinstance(cmd, str):
         raise ValueError('DX command must be string, not %s' \
                          % type(cmd))
     self.script += cmd + '\n'
     if not cmd.startswith('//'):  # don't send comments to DX
         DX.DXLSend(self.conn, cmd)
예제 #5
0
def test_dx():
    import DX
    import Tkinter
    import tempfile

    DXMACROS = '/usr/share/dx/samples/macros'
    DXMACROS = os.environ.get('DXMACROS', DXMACROS)

    master = Tkinter.Tk()
    master.withdraw()
    root = Tkinter.Toplevel(master)
    root.title("Hello OpenDX!")

    def close_window(event=None):
        root.withdraw()

    root.protocol("WM_DELETE_WINDOW", close_window)
    root.bind("<KeyPress-q>", close_window)
    root.geometry('320x240')
    root.withdraw()
    frame = Tkinter.Frame(root, relief='sunken', bd=2)
    frame.pack(side='top', fill='both', expand=1)

    # start DX:
    cmd = DX.DXEXEC + ' -execonly -hwrender opengl'
    conn = DX.DXLStartDX(cmd, None)

    #DX.DXLLoadMacroDirectory(self.conn, DXMACROS)
    # hack for loading necessary macro files:
    DX.exDXLLoadScript(conn, os.path.join(DXMACROS, "ArrangeMemberMacro.net"))
    DX.exDXLLoadScript(conn, os.path.join(DXMACROS, "CappedIsoMacro.net"))

    root.deiconify()
    root.update()
    DX.DXLExecuteOnChange(conn)
    DX.WaitForDXIdle(conn)
예제 #6
0
파일: dx_.py 프로젝트: terjekv/scitools
 def exit(self):
     self.root.destroy()
     DX.WaitForDXIdle(self.conn)
     DX.DXLExitDX(self.conn)
예제 #7
0
파일: dx_.py 프로젝트: terjekv/scitools
 def display(self, show=True):
     if show:
         self.root.deiconify()
     self.root.update()
     DX.DXLExecuteOnChange(self.conn)
     DX.WaitForDXIdle(self.conn)
예제 #8
0
파일: dx_.py 프로젝트: terjekv/scitools
 def reset(self):
     self.script = ''
     DX.DXLEndExecuteOnChange(self.conn)
     DX.DXLSync(self.conn)