Графический модуль Печать
Автор: Administrator   
13.04.2011 12:27

Графический модуль для платформы S60,который существенно сокращает предыдущие скрипты связанные с построением графиков.

 

скачать модуль qrf1.py

В приводимом ниже скрипте с помощью модуля grf1.py осуществляется построение графика функции одного переменного с возможностью прокрутки вдоль оси x (для прокрутки используется джойстик -стрелки "left","right")

import appuifw,e32

from math import*

from key_codes import*

from grf1 import*

list=[(u'\u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u044e y=f(x)','text',u'sin(x)'),(u'\u041b\u0435\u0432\u0430\u044f \u0433\u0440\u0430\u043d\u0438\u0446\u0430 a=','text',u'0'),(u'\u041f\u0440\u0430\u0432\u0430\u044f \u0433\u0440\u0430\u043d\u0438\u0446\u0430 b=','text',u'pi'),(u'\u041a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0442\u043e\u0447\u0435\u043a \u0433\u0440\u0430\u0444\u0438\u043a\u0430 n=','text',u'1500')]

form=appuifw.Form(list, appuifw.FFormDoubleSpaced)

form.execute()

e32.ao_yield()

a1,b1,f1=form[1][2],form[2][2],form[0][2]

n=eval(form[3][2])

a,b=float(eval(a1)),float(eval(b1))

f=lambda x:eval(f1)

appuifw.note(u'enter left or right')

def Lft():

global a,b

c.clear()

Grf(a,b,n,f).run()

a-=(b-a)/5.

#b-=(b-a)/5.

c.text((30,300),u'y='+f1,font=(u'NokiaS60',13,appuifw.STYLE_BOLD))

def Rgt():

global a,b

c.clear()

Grf(a,b,n,f).run()

#a+=(b-a)/3.

b+=(b-a)/5.

c.text((30,300),u'y='+f1,font=(u'NokiaS60',13,appuifw.STYLE_BOLD))

c.bind(EKeyRightArrow,Rgt)

c.bind(EKeyLeftArrow,Lft)

def exit():

app_lock.signal()

appuifw.app.exit_key_handler=exit

app_lock=e32.Ao_lock()

app_lock.wait()


( 0 Votes )
Обновлено 25.04.2011 15:48