示例#1
0
    def __init__(self, *args, **kwargs):
        wx.Frame.__init__(self, *args, **kwargs)

        self.CreateStatusBar()

        # Add the Canvas
        Canvas = NavCanvas.NavCanvas(
            self,
            -1,
            size=(500, 500),
            ProjectionFun=YScaleFun,
            Debug=0,
            BackgroundColor="DARK SLATE BLUE",
        ).Canvas

        self.Canvas = Canvas

        Point = N.array((50e-6, 0))
        Size = N.array(((2000e-6 - 5e-6), 50000))
        Box = Canvas.AddRectangle(Point, Size, FillColor="blue")

        Canvas.AddText("%s" % (Point, ), Point, Position="cr")
        Canvas.AddPoint(Point, Diameter=3, Color="red")

        Point = Point + Size
        Canvas.AddText("%s" % (Point, ), Point, Position="cl")
        Canvas.AddPoint(Point, Diameter=3, Color="red")

        FloatCanvas.EVT_MOTION(self.Canvas, self.OnMove)

        self.Show()
        Canvas.ZoomToBB()
示例#2
0
    def __init__(self, *args, **kwargs):
        wx.Frame.__init__(self, *args, **kwargs)

        self.CreateStatusBar()            
        # Add the Canvas
        Canvas = NavCanvas.NavCanvas(self,-1,(500,500),
                                          ProjectionFun = None,
                                          Debug = 0,
                                          BackgroundColor = "White",
                                          ).Canvas
        
        self.Canvas = Canvas


        Canvas.Bind(FC.EVT_MOTION, self.OnMove ) 
        Canvas.Bind(FC.EVT_LEFT_UP, self.OnLeftUp ) 

        self.elements = elements
        LayoutTree(self.elements, 0, 0, 3)
        self.AddTree(self.elements)
        
        
        self.Show(True)
        self.Canvas.ZoomToBB()

        self.MoveObject = None
        self.Moving = False

        return None
示例#3
0
    def __init__(self, *args, **kwargs):
        wx.Frame.__init__(self, *args, **kwargs)

        self.CreateStatusBar()

        # Add the Canvas
        Canvas = NavCanvas.NavCanvas(
            self,
            -1,
            size=(500, 500),
            ProjectionFun=None,
            Debug=0,
            BackgroundColor="DARK SLATE BLUE",
        ).Canvas

        self.Canvas = Canvas

        self.Canvas.Bind(FloatCanvas.EVT_MOTION, self.OnMove)

        Pts = ((45, 40), (20, 15), (10, 40), (30, 30))

        Points = Canvas.AddPointSet(Pts, Diameter=3, Color="Red")
        Points.HitLineWidth = 10

        Points.Bind(FloatCanvas.EVT_FC_ENTER_OBJECT, self.OnOverPoints)
        Points.Bind(FloatCanvas.EVT_FC_LEAVE_OBJECT, self.OnLeavePoints)
        Points.Bind(FloatCanvas.EVT_FC_LEFT_DOWN, self.OnLeftDown)

        self.Show()
        Canvas.ZoomToBB()
示例#4
0
    def __init__(self, *args, **kwargs):
        wx.Frame.__init__(self, *args, **kwargs)

        self.CreateStatusBar()

        MenuBar = wx.MenuBar()

        FileMenu = wx.Menu()

        item = FileMenu.Append(wx.ID_EXIT, text="&Exit")
        self.Bind(wx.EVT_MENU, self.OnQuit, item)

        item = FileMenu.Append(wx.ID_ANY, text="&Open")
        self.Bind(wx.EVT_MENU, self.OnOpen, item)

        item = FileMenu.Append(wx.ID_ANY, text="&Save Image")
        self.Bind(wx.EVT_MENU, self.OnSaveImage, item)

        MenuBar.Append(FileMenu, "&File")
        self.SetMenuBar(MenuBar)

        # Add the Canvas
        Canvas = NavCanvas.NavCanvas(self, -1,
                                     size=(500, 500),
                                     ProjectionFun=None,
                                     Debug=0,
                                     BackgroundColor=self.background_color,
                                     ).Canvas

        self.Canvas = Canvas

        FloatCanvas.EVT_MOTION(self.Canvas, self.OnMove)

        self.Show()
        Canvas.ZoomToBB()
示例#5
0
    def __init__(self, *args, **kwargs):
        wx.Frame.__init__(self, *args, **kwargs)

        ## Set up the MenuBar
        MenuBar = wx.MenuBar()

        file_menu = wx.Menu()
        item = file_menu.Append(-1, "&Close", "Close this frame")
        self.Bind(wx.EVT_MENU, self.OnQuit, item)
        MenuBar.Append(file_menu, "&File")

        help_menu = wx.Menu()
        item = help_menu.Append(-1, "&About",
                                "More information About this program")
        self.Bind(wx.EVT_MENU, self.OnAbout, item)
        MenuBar.Append(help_menu, "&Help")

        self.SetMenuBar(MenuBar)
        self.CreateStatusBar()

        # Add the Canvas
        self.Canvas = NavCanvas.NavCanvas(
            self,
            BackgroundColor="White",
        ).Canvas

        self.Canvas.Bind(FC.EVT_MOTION, self.OnMove)

        self.Bind(wx.EVT_CLOSE, self.OnCloseWindow)

        self.DrawTest()
        self.Show()
        self.Canvas.ZoomToBB()
示例#6
0
    def __init__(self, *args, **kwargs):
        wx.Frame.__init__(self, *args, **kwargs)

        self.CreateStatusBar()

        # Add the Canvas
        Canvas = NavCanvas.NavCanvas(
            self,
            -1,
            size=(500, 500),
            ProjectionFun=YDownProjection,
            Debug=0,
            BackgroundColor="DARK SLATE BLUE",
        ).Canvas

        self.Canvas = Canvas

        Point = (0, 0)
        Box = Canvas.AddRectangle(Point, (80, 100), FillColor="blue")

        Canvas.AddText("%s" % (Point, ), Point, Position="cr")
        Canvas.AddPoint(Point, Diameter=3, Color="red")

        Point = (0, 100)
        Canvas.AddText("%s" % (Point, ), Point, Position="cr")
        Canvas.AddPoint(Point, Diameter=3, Color="red")

        self.Canvas.Bind(FloatCanvas.EVT_MOTION, self.OnMove)

        self.Show()
        Canvas.ZoomToBB()
示例#7
0
    def __init__(self, *args, **kwargs):
        wx.Frame.__init__(self, *args, **kwargs)
        self.CreateStatusBar()

        # Add the Canvas
        Canvas = NavCanvas.NavCanvas(self,
                                     ProjectionFun = None,
                                     BackgroundColor = "DARK SLATE BLUE",
                                     ).Canvas
        Canvas.MaxScale=4 # sets the maximum zoom level
        self.Canvas = Canvas

        FloatCanvas.EVT_MOTION(self.Canvas, self.OnMove ) 

        
        # create the image:
        image = wx.Image(ImageFile)
        self.width, self.height = image.GetSize()
        img = Canvas.AddScaledBitmap( image,
                                      (0,0),
                                      Height=image.GetHeight(),
                                      Position = 'tl',
                                      )

        #Box.Bind(FloatCanvas.EVT_FC_LEFT_DOWN, self.Binding)
        
        ## now set up a timer
        self.timer = wx.Timer(self)
        self.Bind(wx.EVT_TIMER, self.AddPoint, self.timer)


        
        self.Show()
        Canvas.ZoomToBB()
        self.timer.Start(20)
示例#8
0
    def __init__(self, *args, **kwargs):
        wx.Frame.__init__(self, *args, **kwargs)
        self.CreateStatusBar()

        # Add the Canvas
        Canvas = NavCanvas.NavCanvas(
            self,
            ProjectionFun=None,
            BackgroundColor="DARK SLATE BLUE",
        ).Canvas
        Canvas.MaxScale = 20  # sets the maximum zoom level
        self.Canvas = Canvas

        self.Canvas.Bind(FloatCanvas.EVT_MOTION, self.OnMove)

        # create the image:
        image = wx.Image(ImageFile)
        self.width, self.height = image.GetSize()
        img = FloatCanvas.ScaledBitmap2(
            image,
            (0, 0),
            Height=image.GetHeight(),
            Position='tl',
        )
        Canvas.AddObject(img)

        self.Show()
        Canvas.ZoomToBB()
示例#9
0
 def __init__(self, *args, **kwargs):
     wx.Frame.__init__(self, *args, **kwargs)
     self.CreateStatusBar()
     self.SetSize(wx.GetDisplaySize())
     self.SetTitle("GDAL Image Processing Environment")
     ico = GipeIcon.getIcon()
     self.SetIcon(ico)
     self.lognull = wx.LogNull()
     self._mgr = wx.aui.AuiManager(self)
     Canvas = NavCanvas.NavCanvas(
         self,
         ProjectionFun=None,
         BackgroundColor="DARK SLATE BLUE",
     ).Canvas
     Canvas.MaxScale = 4
     self.Canvas = Canvas
     FloatCanvas.EVT_MOTION(self.Canvas, self.OnMove)
     self.createMenuBar()
     self.createToolBar()
     self.console = wxConsole(self, -1)
     self.bindEvents()
     self._mgr.AddPane(self.console, wx.BOTTOM,
                       'Python Command Line Interface')
     self._mgr.AddPane(self.Canvas, wx.CENTER, 'Image Processing')
     self._mgr.Update()
示例#10
0
    def __init__(self, *args, **kwargs):
        wx.Frame.__init__(self, *args, **kwargs)

        self.CreateStatusBar()

        # Add the Canvas
        FloatCanvas.FloatCanvas.ScaleWorldToPixel = ScaleWorldToPixel
        NC = NavCanvas.NavCanvas(
            self,
            -1,
            size=(500, 500),
            BackgroundColor="DARK SLATE BLUE",
            ProjectionFun=YScaleFun,
        )

        self.Canvas = Canvas = NC.Canvas
        #self.Canvas.ScaleWorldToPixel = ScaleWorldToPixel

        self.Canvas.Bind(FloatCanvas.EVT_MOTION, self.OnMove)

        self.Values = random.randint(0, MaxValue, (NumChannels, ))

        self.Bars = []
        self.BarWidth = 0.75
        # add an X axis
        Canvas.AddLine(((0, 0), (NumChannels, 0)), )
        for x in N.linspace(1, NumChannels, 11):
            Canvas.AddText("%i" % x, (x - 1 + self.BarWidth / 2, 0),
                           Position="tc")

        for i, Value in enumerate(self.Values):
            bar = Canvas.AddRectangle(
                XY=(i, 0),
                WH=(self.BarWidth, Value),
                LineColor=None,
                LineStyle="Solid",
                LineWidth=1,
                FillColor="Red",
                FillStyle="Solid",
            )
            self.Bars.append(bar)

        # Add a couple a button the Toolbar

        tb = NC.ToolBar
        tb.AddSeparator()

        ResetButton = wx.Button(tb, label="Reset")
        tb.AddControl(ResetButton)
        ResetButton.Bind(wx.EVT_BUTTON, self.ResetData)

        #        PlayButton = wx.Button(tb, wx.ID_ANY, "Run")
        #        tb.AddControl(PlayButton)
        #        PlayButton.Bind(wx.EVT_BUTTON, self.RunTest)
        tb.Realize()

        self.Show()
        Canvas.ZoomToBB()
        Canvas.Draw(True)
示例#11
0
 def init_nc(self, prnt):
     self.nc = nc.NavCanvas(id=wxID_NC, parent=self.panelChart)
     self.canvas = self.nc.Canvas
     self.boxSizerChart.AddWindow(self.nc,
                                  1,
                                  border=1,
                                  flag=wx.ALL | wx.GROW)
     self.panelChart.Layout()
示例#12
0
 def __init__(self, parent, dataPath):
     self.NC = NavCanvas.NavCanvas(parent,
                                   Debug=0,
                                   BackgroundColor="DARK SLATE BLUE")
     self.display = self.NC.Canvas
     #     NC.
     #        self.display = FloatCanvas.FloatCanvas(parent, Debug = 0)#, BackgroundColor = "DARK SLATE BLUE")
     Model.__init__(self, parent, dataPath)
示例#13
0
    def __init__(self,parent, id,title,position,size):
        wx.Frame.__init__(self,parent, id,title,position, size)

        self.CreateStatusBar()
        # Add the Canvas
        NC = NavCanvas.NavCanvas(self,
                                 size= (500,500),
                                 ProjectionFun = None,
                                 Debug = 0,
                                 )

        self.Canvas = NC.Canvas


        self.Show(True)


        # --- draw link between centroids ---

        # build link
        link_pts = get_line_pts([-100,-170],[500,301],order=4, num=100)

        # construct arrow in center of line
        arrow_coords = build_arrow(link_pts, arrow_length=3)

        # plot the link and arrowhead
        self.Canvas.AddObject(FloatCanvas.Polygon(arrow_coords,FillColor='Blue',InForeground=True))
        #self.Canvas.AddObject(FloatCanvas.Line(link_pts,LineWidth=2,InForeground=False))


        cmap = plt.cm.Blues
        num_colors = len(link_pts)
        colors = [cmap(1.*i/num_colors) for i in range(num_colors)]

        # import random
        # r = lambda: random.randint(0,255)
        for i in range(0,len(link_pts)-1):
            #color = '#%02X%02X%02X' % (r(),r(),r())
            color = mcolors.rgb2hex(colors[i])
            #color = colors[i][:-1]
            self.Canvas.AddObject(FloatCanvas.Line((link_pts[i],link_pts[i+1]),LineColor=color,LineWidth=2,InForeground=False))



        # --- draw rounded rectangle objects ---
        # draw some boxes
        draw_rounded_rectangle(self.Canvas,(-100,-170),width=200, height=100)
        draw_rounded_rectangle(self.Canvas,(500,301), width=250, height=150)






        # zoom to bounding box
        self.Canvas.ZoomToBB()

        return None
示例#14
0
    def __init__(self, parent, id, title, position, size):
        wx.Frame.__init__(self, parent, id, title, position, size)

        ## Set up the MenuBar

        MenuBar = wx.MenuBar()

        file_menu = wx.Menu()
        file_menu.Append(ID_EXIT_MENU, "E&xit", "Terminate the program")
        wx.EVT_MENU(self, ID_EXIT_MENU, self.OnQuit)
        MenuBar.Append(file_menu, "&File")

        draw_menu = wx.Menu()
        draw_menu.Append(ID_DRAWTEST_MENU, "&Draw Test",
                         "Run a test of drawing random components")
        wx.EVT_MENU(self, ID_DRAWTEST_MENU, self.DrawTest)
        draw_menu.Append(ID_DRAWMAP_MENU, "Draw &Movie",
                         "Run a test of drawing a map")
        wx.EVT_MENU(self, ID_DRAWMAP_MENU, self.RunMovie)
        draw_menu.Append(ID_CLEAR_MENU, "&Clear", "Clear the Canvas")
        wx.EVT_MENU(self, ID_CLEAR_MENU, self.Clear)
        MenuBar.Append(draw_menu, "&Draw")

        view_menu = wx.Menu()
        view_menu.Append(ID_ZOOM_TO_FIT_MENU, "Zoom to &Fit",
                         "Zoom to fit the window")
        wx.EVT_MENU(self, ID_ZOOM_TO_FIT_MENU, self.ZoomToFit)
        MenuBar.Append(view_menu, "&View")

        help_menu = wx.Menu()
        help_menu.Append(ID_ABOUT_MENU, "&About",
                         "More information About this program")
        wx.EVT_MENU(self, ID_ABOUT_MENU, self.OnAbout)
        MenuBar.Append(help_menu, "&Help")

        self.SetMenuBar(MenuBar)

        self.CreateStatusBar()
        self.SetStatusText("")

        wx.EVT_CLOSE(self, self.OnCloseWindow)

        # Other event handlers:
        wx.EVT_RIGHT_DOWN(self, self.RightButtonEvent)

        # Add the Canvas
        self.Canvas = NavCanvas.NavCanvas(self,
                                          -1, (500, 500),
                                          Debug=False,
                                          BackgroundColor="WHITE").Canvas
        self.Canvas.NumBetweenBlits = 1000
        self.Show(True)

        self.DrawTest(None)
        return None
示例#15
0
    def __init__(self, *args, **kwargs):
        wx.Frame.__init__(self, *args, **kwargs)

        ## Set up the MenuBar

        MenuBar = wx.MenuBar()

        file_menu = wx.Menu()
        item = file_menu.Append(wx.ID_EXIT, "", "Terminate the program")
        self.Bind(wx.EVT_MENU, self.OnQuit, item)
        MenuBar.Append(file_menu, "&File")

        self.SetMenuBar(MenuBar)

        self.CreateStatusBar()
        self.SetStatusText("")

        self.Bind(wx.EVT_CLOSE, self.OnCloseWindow)

        # Add the  buttons
        ResetButton = wx.Button(self, label="Reset")
        ResetButton.Bind(wx.EVT_BUTTON, self.OnReset)

        StartButton = wx.Button(self, label="Start")
        StartButton.Bind(wx.EVT_BUTTON, self.OnStart)

        StopButton = wx.Button(self, label="Stop")
        StopButton.Bind(wx.EVT_BUTTON, self.OnStop)

        butSizer = wx.BoxSizer(wx.HORIZONTAL)
        butSizer.Add(StartButton, 0, wx.RIGHT, 5)
        butSizer.Add(ResetButton, 0, wx.RIGHT, 5)
        butSizer.Add(
            StopButton,
            0,
        )
        # Add the Canvas
        NC = NavCanvas.NavCanvas(self,
                                 -1, (500, 500),
                                 Debug=False,
                                 BackgroundColor="BLUE")

        self.Canvas = NC.Canvas
        self.Initialize(None)

        # lay it out:
        S = wx.BoxSizer(wx.VERTICAL)
        S.Add(butSizer, 0, wx.ALIGN_CENTER | wx.ALL, 5)
        S.Add(NC, 1, wx.EXPAND)
        self.SetSizer(S)

        self.timer = wx.Timer(self)
        self.Bind(wx.EVT_TIMER, self.MoveBall, self.timer)

        self.Show(True)
示例#16
0
    def __init__(self, parent, id, title, position, size):
        wx.Frame.__init__(self, parent, id, title, position, size)

        ## Set up the MenuBar

        MenuBar = wx.MenuBar()

        file_menu = wx.Menu()
        exit = file_menu.Append(wx.ID_EXIT, "", "Terminate the program")
        self.Bind(wx.EVT_MENU, self.OnQuit, exit)
        MenuBar.Append(file_menu, "&File")

        draw_menu = wx.Menu()
        draw = draw_menu.Append(wx.ID_ANY, "&Draw Test",
                                "Run a test of drawing random components")
        self.Bind(wx.EVT_MENU, self.DrawTest, draw)
        amap = draw_menu.Append(wx.ID_ANY, "Draw &Movie",
                                "Run a test of drawing a map")
        self.Bind(wx.EVT_MENU, self.RunMovie, amap)
        clear = draw_menu.Append(wx.ID_ANY, "&Clear", "Clear the Canvas")
        self.Bind(wx.EVT_MENU, self.Clear, clear)
        MenuBar.Append(draw_menu, "&Draw")

        view_menu = wx.Menu()
        zoom = view_menu.Append(wx.ID_ANY, "Zoom to &Fit",
                                "Zoom to fit the window")
        self.Bind(wx.EVT_MENU, self.ZoomToFit, zoom)
        MenuBar.Append(view_menu, "&View")

        help_menu = wx.Menu()
        about = help_menu.Append(wx.ID_ABOUT, "",
                                 "More information About this program")
        self.Bind(wx.EVT_MENU, self.OnAbout, about)
        MenuBar.Append(help_menu, "&Help")

        self.SetMenuBar(MenuBar)

        self.CreateStatusBar()
        self.SetStatusText("")

        self.Bind(wx.EVT_CLOSE, self.OnCloseWindow)

        # Other event handlers:
        self.Bind(wx.EVT_RIGHT_DOWN, self.RightButtonEvent)

        # Add the Canvas
        self.Canvas = NavCanvas.NavCanvas(self,
                                          -1, (500, 500),
                                          Debug=False,
                                          BackgroundColor="WHITE").Canvas
        self.Canvas.NumBetweenBlits = 1000
        self.Show(True)

        self.DrawTest(None)
        return None
示例#17
0
    def __init__(self, *args, **kwargs):
        wx.Frame.__init__(self, *args, **kwargs)

        self.CreateStatusBar()

        # Add the Canvas
        Canvas = NavCanvas.NavCanvas(
            self,
            -1,
            size=(500, 500),
            Debug=0,
            BackgroundColor="DARK SLATE BLUE",
        ).Canvas

        self.Canvas = Canvas

        Values = (10, 10, 10)
        Colors = ('Red', 'Blue', 'Green')
        Pie1 = PieChart(N.array((0, 0)), 10, Values, Colors, Scaled=False)
        Canvas.AddObject(Pie1)

        Values = (10, 5, 5)
        Pie2 = PieChart(N.array((40, 0)), 10, Values, Colors)
        Canvas.AddObject(Pie2)

        # test default colors
        Values = (10, 15, 12, 24, 6, 10, 13, 11, 9, 13, 15, 12)
        Pie3 = PieChart(N.array((20, 20)), 10, Values, LineColor="Black")
        Canvas.AddObject(Pie3)

        # missng slice!
        Values = (10, 15, 12, 24)
        Colors = ('Red', 'Blue', 'Green', None)
        Pie4 = PieChart(N.array((0, -15)),
                        10,
                        Values,
                        Colors,
                        LineColor="Black")
        Canvas.AddObject(Pie4)

        # Test the styles
        Values = (10, 12, 14)
        Styles = ("Solid", "CrossDiagHatch", "CrossHatch")
        Colors = ('Red', 'Blue', 'Green')
        Pie4 = PieChart(N.array((20, -20)), 10, Values, Colors, Styles)
        Canvas.AddObject(Pie2)

        Pie1.Bind(FloatCanvas.EVT_FC_LEFT_DOWN, self.Pie1Hit)
        Pie2.Bind(FloatCanvas.EVT_FC_LEFT_DOWN, self.Pie2Hit)

        self.Canvas.Bind(FloatCanvas.EVT_MOTION, self.OnMove)

        self.Show()
        Canvas.ZoomToBB()
示例#18
0
    def init_nc(self, prnt):

        self.nc = nc.NavCanvas(id=wxID_NC, parent=self.panelPCA)
        #self.nc.Bind(wx.EVT_KEY_DOWN, OnCanvasKeyDown)
        self.canvas = self.nc.Canvas
        #self.canvas.Bind(wx.EVT_KEY_DOWN, OnCanvasKeyDown)

        #self.canvas.Bind(wx.EVT_MOTION, self.OnPanelPictureMotion)

        self.boxSizerPCA.AddWindow(self.nc, 1, border=1, flag=wx.ALL | wx.GROW)

        self.panelPCA.Layout()
示例#19
0
    def __init__(self, parent, id, title, position, size):
        wx.Frame.__init__(self, parent, id, title, position, size)

        ## Set up the MenuBar
        MenuBar = wx.MenuBar()

        FileMenu = wx.Menu()

        OpenMenu = FileMenu.Append(wx.ID_ANY, "&Open", "Open BNA")
        self.Bind(wx.EVT_MENU, self.OpenBNA, OpenMenu)

        SaveMenu = FileMenu.Append(wx.ID_ANY, "&Save", "Save BNA")
        self.Bind(wx.EVT_MENU, self.SaveBNA, SaveMenu)

        CloseMenu = FileMenu.Append(wx.ID_EXIT, "", "Close Application")
        self.Bind(wx.EVT_MENU, self.OnQuit, CloseMenu)

        MenuBar.Append(FileMenu, "&File")

        view_menu = wx.Menu()
        ZoomMenu = view_menu.Append(wx.ID_ANY, "Zoom to &Fit",
                                    "Zoom to fit the window")
        self.Bind(wx.EVT_MENU, self.ZoomToFit, ZoomMenu)
        MenuBar.Append(view_menu, "&View")

        help_menu = wx.Menu()
        AboutMenu = help_menu.Append(wx.ID_ABOUT, "",
                                     "More information About this program")
        self.Bind(wx.EVT_MENU, self.OnAbout, AboutMenu)
        MenuBar.Append(help_menu, "&Help")

        self.SetMenuBar(MenuBar)

        self.CreateStatusBar()
        # Add the Canvas
        self.Canvas = NavCanvas.NavCanvas(
            self, -1, (500, 500), Debug=0,
            BackgroundColor="DARK SLATE BLUE").Canvas

        wx.EVT_CLOSE(self, self.OnCloseWindow)

        FloatCanvas.EVT_MOTION(self.Canvas, self.OnMove)
        FloatCanvas.EVT_LEFT_UP(self.Canvas, self.OnLeftUp)
        FloatCanvas.EVT_LEFT_DOWN(self.Canvas, self.OnLeftDown)

        try:
            self.FileDialog = wx.FileDialog(self, "Pick a BNA file", ".", "",
                                            "*", wx.FD_OPEN)
        except wx._core.PyAssertionError:
            self.FileDialog = None

        self.ResetSelections()
        return None
    def __init__(self, *args, **kwargs):
        wx.Frame.__init__(self, *args, **kwargs)
        self.CreateStatusBar()
        splitter = wx.SplitterWindow(self,
                                     style=wx.SP_LIVE_UPDATE | wx.SP_3DSASH,
                                     size=(1024, 768))

        # Add the Panel
        panel1 = wx.Panel(splitter)
        panel1.BackgroundColour = 'GREY'
        bitmap = wx.Bitmap(
            os.path.join(os.path.dirname(__file__), 'headline.png'))
        bitmap = scale_bitmap(bitmap, 512, 512)
        sb = wx.StaticBitmap(panel1, bitmap=bitmap, pos=(0, 0))

        # Add the Canvas
        panel2 = NavCanvas.NavCanvas(
            splitter,
            ProjectionFun=None,
            Debug=0,
            BackgroundColor="LIGHT GREY",
        )
        Canvas = panel2.Canvas

        # Put stuff on the Canvas
        Point = (15, 10)
        Canvas.AddScaledTextBox("Markdown output \nwill be shown here.",
                                Point,
                                2,
                                Color="DARK GREY",
                                BackgroundColor=None,
                                LineColor="DARK GREY",
                                LineStyle="Solid",
                                LineWidth=2,
                                Width=None,
                                PadSize=5,
                                Family=wx.SWISS,
                                Style=wx.NORMAL,
                                Weight=wx.NORMAL,
                                Underlined=False,
                                Position='br',
                                Alignment="center",
                                InForeground=False)
        wx.CallAfter(Canvas.ZoomToBB)

        # Set up the Splitter
        sash_Position = 512
        splitter.SplitVertically(panel1, panel2, sash_Position)
        min_Pan_size = 0
        splitter.SetMinimumPaneSize(min_Pan_size)
        self.Fit()
示例#21
0
    def __init__(self,
                 hpgldata,
                 title="HPGL preview",
                 size=(1200, 700),
                 dialog=False,
                 *args,
                 **kwargs):
        super(HPGLPreview, self).__init__(parent=None,
                                          title=title,
                                          size=size,
                                          *args,
                                          **kwargs)
        self.checked = False
        self.CreateStatusBar()

        self.sizer = wx.BoxSizer(wx.VERTICAL)

        self.Canvas = NavCanvas.NavCanvas(self,
                                          -1,
                                          ProjectionFun=XYPlotterScale,
                                          BackgroundColor="white")
        self.sizer.Add(self.Canvas, 1, wx.ALL | wx.EXPAND)
        self.bsizer = wx.BoxSizer(wx.HORIZONTAL)
        if dialog:
            self.btn_ok = wx.Button(self, wx.ID_OK, label="OK")
            self.btn_cancel = wx.Button(self, wx.ID_CANCEL, label="Cancel")
            self.bsizer.AddStretchSpacer(1)
            self.bsizer.Add(self.btn_ok, 0, wx.EXPAND | wx.RIGHT, 5)
            self.bsizer.Add(self.btn_cancel, 0, wx.EXPAND | wx.LEFT, 5)
            self.btn_ok.Bind(wx.EVT_BUTTON, self.OnOK)
            self.btn_cancel.Bind(wx.EVT_BUTTON, self.OnCancel)
            self.bsizer.AddStretchSpacer(1)
            self.sizer.Add(self.bsizer, 0, wx.ALL | wx.EXPAND, 2)

        self.SetSizer(self.sizer)

        last = (0, 0)
        for line in hpgldata.getPaths():
            self.Canvas.Canvas.AddLine(line)

            self.Canvas.Canvas.AddLine([last, line[0]], LineColor="blue")
            last = line[-1]
        self.Canvas.Canvas.AddLine([last, (0, 0)], LineColor="green")
        m, mm = hpgldata.getBoundingBox()

        self.Canvas.Canvas.AddRectangle((0, 0), (mm[0] + m[0], mm[1] + m[1]),
                                        LineColor="orange")

        FloatCanvas.EVT_MOTION(self.Canvas.Canvas, self.OnMove)
        self.Bind(wx.EVT_CLOSE, self.OnClose)
示例#22
0
    def __init__(self, *args, **kwargs):
        wx.Frame.__init__(self, *args, **kwargs)

        #Adding the SplitterWindow
        splitter = wx.SplitterWindow(self,
                                     style=wx.SP_LIVE_UPDATE | wx.SP_3D,
                                     size=(800, 400))

        # add the left Panel
        panel1 = wx.Panel(splitter)
        panel1.SetBackgroundColour(wx.RED)

        # add the Canvas
        panel2 = NavCanvas.NavCanvas(
            splitter,
            ProjectionFun=None,
            Debug=0,
            BackgroundColor="DARK SLATE BLUE",
        )
        Canvas = panel2.Canvas

        # put something on the Canvas
        Point = (15, 10)
        Canvas.AddScaledTextBox("A Two Line\nString",
                                Point,
                                2,
                                Color="Black",
                                BackgroundColor=None,
                                LineColor="Red",
                                LineStyle="Solid",
                                LineWidth=1,
                                Width=None,
                                PadSize=5,
                                Family=wx.ROMAN,
                                Style=wx.NORMAL,
                                Weight=wx.NORMAL,
                                Underlined=False,
                                Position='br',
                                Alignment="left",
                                InForeground=False)

        wx.CallAfter(Canvas.ZoomToBB)

        # set up the Splitter
        sash_Position = 300
        splitter.SplitVertically(panel1, panel2, sash_Position)
        min_Pan_size = 40
        splitter.SetMinimumPaneSize(min_Pan_size)

        self.Fit()
示例#23
0
    def __init__(self,parent, id,title,position,size):
        wx.Frame.__init__(self,parent, id,title,position, size)

        self.CreateStatusBar()            
        # Add the Canvas
        Canvas = NavCanvas.NavCanvas(self,-1,(500,500),
                                          ProjectionFun = None,
                                          Debug = 0,
                                          BackgroundColor = "DARK SLATE BLUE",
                                          ).Canvas
        
        self.Canvas = Canvas

        Canvas.Bind(FC.EVT_MOTION, self.OnMove ) 
        Canvas.Bind(FC.EVT_LEFT_UP, self.OnLeftUp ) 

        Canvas.AddRectangle((-5,-5),
                            (10,10),
                            LineColor = "Red",
                            LineStyle = "Solid",
                            LineWidth = 2,
                            FillColor    = "CYAN",
                            FillStyle    = "Solid")

        Points = N.array(((0,0),
                          (1,0),
                          (0.5, 1)),
                         N.float_)
        
        data  = (( (0,0),  1),
                 ( (3,3),  2),
                 ( (-2,3), 2.5 ),
                  )

        for p, L in data:
            Tri = TriangleShape1(p, 1)
            Canvas.AddObject(Tri)
            Tri.Bind(FC.EVT_FC_LEFT_DOWN, self.TriHit)


        self.MoveTri = None

        self.Show(True)
        self.Canvas.ZoomToBB()

        self.Moving = False

        return None
示例#24
0
    def __init__(self, *args, **kwargs):
        wx.Frame.__init__(self, *args, **kwargs)

        self.CreateStatusBar()

        # Add the Canvas
        Canvas = NavCanvas.NavCanvas(
            self,
            -1,
            size=(500, 500),
            ProjectionFun=None,
            Debug=0,
            BackgroundColor="DARK SLATE BLUE",
        ).Canvas

        self.Canvas = Canvas

        self.Canvas.Bind(FloatCanvas.EVT_MOTION, self.OnMove)

        Point = (45, 40)
        Text = Canvas.AddScaledText("A String",
                                    Point,
                                    20,
                                    Color="Black",
                                    BackgroundColor=None,
                                    Family=wx.ROMAN,
                                    Style=wx.NORMAL,
                                    Weight=wx.NORMAL,
                                    Underlined=False,
                                    Position='bl',
                                    InForeground=False)
        Text.MinFontSize = 4  # the default is 1
        Text.DisappearWhenSmall = False  #the default is True

        Rect1 = Canvas.AddRectangle((50, 20), (40, 15),
                                    FillColor="Red",
                                    LineStyle=None)
        Rect1.Bind(FC.EVT_FC_LEFT_DOWN, self.OnLeft)
        Rect1.Name = "red"

        Rect2 = Canvas.AddRectangle((70, 30), (40, 15),
                                    FillColor="Blue",
                                    LineStyle=None)
        Rect2.Bind(FC.EVT_FC_LEFT_DOWN, self.OnLeft)
        Rect2.Name = 'blue'

        self.Show()
        Canvas.ZoomToBB()
示例#25
0
    def __init__(self, *args, **kwargs):
        wx.Frame.__init__(self, *args, **kwargs)

        # Add the Canvas
        self.Canvas = NavCanvas.NavCanvas(self,-1,(500,500),
                                          ProjectionFun = None,
                                          Debug = 1,
                                          BackgroundColor = "DARK SLATE BLUE",
                                          ).Canvas
        self.MakeHexagons()

        self.Show(True)
        print "Drawing the Hexagons"
        self.Canvas.ZoomToBB()

        return None
示例#26
0
    def __init__(self, parent):

        lsu.MyFrame2.__init__(self, parent)
        icon = wx.Icon('logo.png', wx.BITMAP_TYPE_ANY)
        self.SetIcon(icon)
        self.box = wx.BoxSizer(wx.VERTICAL)
        self.m_panel3.SetSizer(self.box)
        self.m_panel3.Layout()
        self.box.Fit(self.m_panel3)
        NC = NavCanvas.NavCanvas(self.m_panel3)
        self.Canvas = NC.Canvas
        self.box.Add(NC, 4, wx.EXPAND)
        self.Canvas.AddScaledBitmap(wx.BitmapFromImage(parent.img), (0, 0),
                                    800,
                                    Position="cc")
        self.Canvas.Draw()
        self.parent = parent
示例#27
0
    def __init__(self, parent, id, title, position, size):
        wx.Frame.__init__(self, parent, id, title, position, size)

        self.Bind(wx.EVT_CLOSE, self.OnRackDesignerClose)
        self.CreateStatusBar()
        self.GetStatusBar().SetFieldsCount(2)
        # Add the Canvas
        self.NavCanvas = NavCanvas.NavCanvas(
            self,
            -1,
            (500, 500),
            ProjectionFun=None,
            Debug=0,
            BackgroundColor="DARK SLATE BLUE",
        )
        self.Canvas = self.NavCanvas.Canvas

        self.Canvas.Bind(FC.EVT_MOTION, self.OnMove)
        self.Canvas.Bind(FC.EVT_LEFT_UP, self.OnLeftUp)

        ##        # add a grid for snap:
        ##        Grid = FC.DotGrid( (10, 10), Size=1, Color="Red")
        ##        self.Canvas.GridUnder = Grid

        self.MoveShape = None
        self.Moving = False
        self.dataToSave = False
        self.shapes = []
        self.Resizing = False
        self.ResizeRect = None
        self.RL = False
        self.UP = False
        self.SelectedObject = None

        self.Show(True)
        self.Canvas.ZoomToBB()

        self.UpdateToolBar()

        self.LoadFromXML()

        self.ResetSelections()

        return None
示例#28
0
    def __init__(self, parent, id, title, position, size):
        wx.Frame.__init__(self, parent, id, title, position, size)

        ## Set up the MenuBar

        MenuBar = wx.MenuBar()

        file_menu = wx.Menu()
        item = file_menu.Append(wx.ID_ANY, "E&xit", "Terminate the program")
        self.Bind(wx.EVT_MENU, self.OnQuit, item)
        MenuBar.Append(file_menu, "&File")

        draw_menu = wx.Menu()
        item = draw_menu.Append(wx.ID_ANY, "&Plot", "Re-do Plot")
        self.Bind(wx.EVT_MENU, self.Plot, item)
        MenuBar.Append(draw_menu, "&Plot")

        help_menu = wx.Menu()
        item = help_menu.Append(wx.ID_ANY, "&About",
                                "More information About this program")
        self.Bind(wx.EVT_MENU, self.OnAbout, item)
        MenuBar.Append(help_menu, "&Help")

        self.SetMenuBar(MenuBar)

        self.CreateStatusBar()
        self.SetStatusText("")

        self.Bind(wx.EVT_CLOSE, self.OnCloseWindow)

        # Add the Canvas
        self.Canvas = NavCanvas.NavCanvas(self,
                                          wx.ID_ANY, (500, 300),
                                          ProjectionFun=None,
                                          Debug=0,
                                          BackgroundColor="WHITE").Canvas

        self.Canvas.NumBetweenBlits = 1000

        self.Show(True)

        self.Plot()
        return None
示例#29
0
    def __init__(self, parent, id, title, position, size):
        wx.Frame.__init__(self, parent, id, title, position, size)

        self.CreateStatusBar()
        # Add the Canvas
        NC = NavCanvas.NavCanvas(
            self,
            size=(500, 500),
            ProjectionFun=None,
            Debug=0,
            BackgroundColor="DARK SLATE BLUE",
        )

        self.Canvas = NC.Canvas

        self.Canvas.Bind(FloatCanvas.EVT_MOTION, self.OnMove)

        # Add some buttons to the Toolbar
        tb = NC.ToolBar
        tb.AddSeparator()

        ClearButton = wx.Button(tb, wx.ID_ANY, "Clear")
        tb.AddControl(ClearButton)
        ClearButton.Bind(wx.EVT_BUTTON, self.Clear)

        DrawButton = wx.Button(tb, wx.ID_ANY, "StopDrawing")
        tb.AddControl(DrawButton)
        DrawButton.Bind(wx.EVT_BUTTON, self.SetDraw)
        self.DrawButton = DrawButton

        tb.Realize()

        # Initialize a few values
        self.Rects = []

        self.RBBoxMode = GUI.RubberBandBox(self.NewRect)
        self.Canvas.SetMode(self.RBBoxMode)

        self.Canvas.ZoomToBB()

        self.Show(True)
        return None
示例#30
0
文件: Map.py 项目: oneApple/Phoenix
    def __init__(self, *args, **kwargs):
        wx.Frame.__init__(self, *args, **kwargs)

        self.CreateStatusBar()            

        # Add the Canvas
        NC = NavCanvas.NavCanvas(self,-1,
                                 size = (500,500),
                                 ProjectionFun = None,
                                 Debug = 0,
                                 BackgroundColor = "White",
                                 )
        self.Canvas = NC.Canvas
        
        self.LoadMap(TestFileName)

        self.Canvas.Bind(FloatCanvas.EVT_MOTION, self.OnMove ) 

        self.Show()
        self.Canvas.ZoomToBB()