[python] towards python3 compat: division, map

This commit is contained in:
Felix Ruess
2013-04-04 00:19:52 +02:00
parent 5aef6a7e5b
commit bf9e273974
4 changed files with 25 additions and 17 deletions
@@ -32,7 +32,7 @@ class OnboardLogTransformTool():
def ProcessLine(self, line): def ProcessLine(self, line):
fields = line.strip().split(' ') fields = line.strip().split(' ')
[timestamp, pprz_tstamp, ac_id, msg_id] = fields[0:4] [timestamp, pprz_tstamp, ac_id, msg_id] = fields[0:4]
data_fields = map(lambda x: chr(int(x, 16)), fields[5:]) data_fields = list(map(lambda x: chr(int(x, 16)), fields[5:]))
ac_id = int(ac_id) ac_id = int(ac_id)
timestamp = float(pprz_tstamp) timestamp = float(pprz_tstamp)
msg_id = int(msg_id) msg_id = int(msg_id)
@@ -1,5 +1,7 @@
#Boa:Frame:PlotFrame #Boa:Frame:PlotFrame
from __future__ import division
import wx import wx
import plotpanel import plotpanel
@@ -190,41 +192,41 @@ class PlotFrame(wx.Frame):
self.dynamic_menus[menu_id] = self.menuCurves.AppendSubMenu(submenu=curveMenu, text=title) self.dynamic_menus[menu_id] = self.menuCurves.AppendSubMenu(submenu=curveMenu, text=title)
def OnMenuDeleteCurve(self, event): def OnMenuDeleteCurve(self, event):
menu_id = event.GetId() / 10 menu_id = event.GetId() // 10
item = self.dynamic_menus[ menu_id] item = self.dynamic_menus[menu_id]
self.canvas.RemovePlot( menu_id) self.canvas.RemovePlot(menu_id)
self.menuCurves.DestroyItem(item) self.menuCurves.DestroyItem(item)
del self.dynamic_menus[menu_id] del self.dynamic_menus[menu_id]
def OnMenuOffsetCurve(self, event): def OnMenuOffsetCurve(self, event):
menu_id = (event.GetId()-1) / 10 menu_id = (event.GetId()-1) // 10
default_value = str(self.canvas.FindPlot(menu_id).offset) default_value = str(self.canvas.FindPlot(menu_id).offset)
value = wx.GetTextFromUser("Enter a value to offset the plot", "Offset", default_value) value = wx.GetTextFromUser("Enter a value to offset the plot", "Offset", default_value)
try: try:
value = float(value) value = float(value)
self.canvas.OffsetPlot( menu_id, value) self.canvas.OffsetPlot(menu_id, value)
except: except:
pass pass
def OnMenuScaleCurve(self, event): def OnMenuScaleCurve(self, event):
menu_id = (event.GetId()-2) / 10 menu_id = (event.GetId()-2) // 10
default_value = str(self.canvas.FindPlot(menu_id).scale) default_value = str(self.canvas.FindPlot(menu_id).scale)
value = wx.GetTextFromUser("Enter a factor to scale the plot", "Scale", default_value) value = wx.GetTextFromUser("Enter a factor to scale the plot", "Scale", default_value)
try: try:
value = float(value) value = float(value)
self.canvas.ScalePlot( menu_id, value) self.canvas.ScalePlot(menu_id, value)
except: except:
pass pass
def OnMenuRealTime(self,event): def OnMenuRealTime(self,event):
menu_id = (event.GetId()-3) / 10 menu_id = (event.GetId()-3) // 10
self.canvas.SetRealTime( menu_id, event.IsChecked()) self.canvas.SetRealTime(menu_id, event.IsChecked())
def OnMenuUseAsXAxis(self,event): def OnMenuUseAsXAxis(self,event):
event_id = event.GetId() event_id = event.GetId()
menu_id = (event_id-4) / 10 menu_id = (event_id-4) // 10
value = event.IsChecked() value = event.IsChecked()
if value: if value:
@@ -1,4 +1,4 @@
from __future__ import absolute_import, print_function from __future__ import absolute_import, print_function, division
import wx import wx
from ivy.std_api import * from ivy.std_api import *
@@ -85,8 +85,10 @@ class plot_data:
(x_min, x_max) = x_axis.GetXMinMax() (x_min, x_max) = x_axis.GetXMinMax()
dc.SetPen(wx.Pen(self.color,1)) dc.SetPen(wx.Pen(self.color,1))
if _max_ < _min_: (_min_, _max_) = (-1,1) #prevent divide by zero or inversion if _max_ < _min_:
if _max_ == _min_: (_min_, _max_) = (_max_-0.5, _max_+0.5) (_min_, _max_) = (-1,1) #prevent divide by zero or inversion
if _max_ == _min_:
(_min_, _max_) = (_max_-0.5, _max_+0.5)
delta = _max_-_min_ delta = _max_-_min_
dy = (height - margin*2) / delta dy = (height - margin*2) / delta
@@ -98,14 +100,16 @@ class plot_data:
for i in range(self.size): for i in range(self.size):
ix = (i+self.index) % self.size ix = (i+self.index) % self.size
point = self.data[ix] point = self.data[ix]
if point == None: continue if point == None:
continue
n += 1 n += 1
sums = sums + point sums = sums + point
sum_squares = sum_squares + (point*point) sum_squares = sum_squares + (point*point)
if x_axis != None: if x_axis != None:
x = x_axis.data[ix] x = x_axis.data[ix]
if x == None: continue if x == None:
continue
dx = (width-1) / (x_max-x_min) dx = (width-1) / (x_max-x_min)
x = int((x-x_min) * dx) x = int((x-x_min) * dx)
@@ -1,5 +1,7 @@
#Boa:Frame:PlotFrame #Boa:Frame:PlotFrame
from __future__ import division
import wx import wx
import sys import sys
import os import os
@@ -92,7 +94,7 @@ class SettingCtrl(wx.Slider):
if (self.setting.step < 1): if (self.setting.step < 1):
return float(self.GetValue()) / SLIDER_FACTOR return float(self.GetValue()) / SLIDER_FACTOR
else: else:
return int(self.GetValue()) / SLIDER_FACTOR return int(self.GetValue()) // SLIDER_FACTOR
class SettingsFrame(wx.Frame): class SettingsFrame(wx.Frame):
edits = [] edits = []