Hey, that's pretty good. Tried it out. VPython is cool too. --- "Jacob S." <[EMAIL PROTECTED]> wrote:
> > > I was wondering were can I find some Vpython > graphics program codes that > are readily available. > > I have 2 that I am proud of. > > A simple function grapher > Usage: > >0.125*x**2 > > Graphs y = 1/8*x**2 > > >y = 1/x > > Graphs y = 1/x > > >clear > > Clears display window > > >r = t**2 > > Graphs polar function r = t**2 > > >remove lines > > Removes all axes, including polar axes, should a > polar function be graphed > after > > >return lines > > Returns all lines, so that they appear when > appropriate. > > >x = sin(x**2)+log(x**2) > > Graphs the function... > > > ------------------------------------------------------ > > from __future__ import division > from visual import * > import os > from math import * > ja = 0 > > def start(): > for objects in scene.objects: > objects.visible = 0 > scene.title = "Function Grapher by Jacob, Inc." > tem = raw_input('Are you on a desktop, or a > notebook? ') > if tem == 'desktop': > scene.x = 365 > if tem == 'notebook': > scene.x = 574 > scene.visible=1 > scene.exit=0 > scene.userspin = 0 > scene.range=(10,10,1) > scene.background=(1,1,1) > global xaxis > global yaxis > xaxis = curve(color=color.black) > xaxis.append(pos=(100,0,0)) > xaxis.append(pos=(-100,0,0)) > yaxis = curve(color=color.black) > yaxis.append(pos=(0,100,0)) > yaxis.append(pos=(0,-100,0)) > global radiusaxis > global radiusaxis2 > radiusaxis = > curve(pos=[(-100,-100),(100,100)],color=color.black) > radiusaxis2 = > curve(pos=[(-100,100),(100,-100)],color=color.black) > radiusaxis.visible = 0 > radiusaxis2.visible = 0 > > start() > y = 3 > m = 0 > t = 0 > d = 1 > print """\ > List of Commands: > clear > quit > remove lines > return lines > > Function Syntax: > var = funct a,b > where var = what > and funct = f(what) > and a,b = range > """ > > print 'Please type in functions in below. ' > while y != "": > lists=[] > y = raw_input('>') > if y == 'clear': > scene.visible=0 > start() > print "-"*36 > continue > elif y == 'quit': > scene.visible = 0 > del scene > break > elif y == 'remove lines': > a = [radiusaxis,radiusaxis2,xaxis,yaxis] > for x in a: > x.visible = 0 > d = 0 > continue > elif y == 'return lines': > a = [radiusaxis,radiusaxis2,xaxis,yaxis] > for x in a: > x.visible = 1 > d = 1 > continue > if y.count('=') == 1: > y = y.split(' = ') > type = y[0].lower() > y = y[1] > y = y.replace("y","x") > if type == 'r': > y = y.replace('x','t') > if d == 1: > radiusaxis.visible = 1 > radiusaxis2.visible = 1 > else: > type = 'y' > y = y.split(" ") > if len(y) > 1: > pass > else: > if type == 'r': > y.append('0,5*pi') > else: > y.append('-10,10') > range = y[1] > y = y[0] > range = range.split(",") > min = float(eval(range[0])) > max = float(eval(range[1])) > lists.append(curve(color=(1,0,1))) > x = min > if type == 'y' or type == 'x': > radiusaxis.visible = 0 > radiusaxis2.visible = 0 > while x >= min and x <= max: > x = x+0.005 > try: > if eval(y) <= 15 and eval(y) >= -15: > if type == 'y': > > lists[-1].append(pos=(x,eval(y),0)) > elif type == 'x': > > lists[-1].append(pos=(eval(y),x,0)) > else: > > lists.append(curve(color=(1,0,1))) > except: > pass > elif type == 'r': > m = 'eval(y)*cos(t)' > n = 'eval(y)*sin(t)' > t = min > while t >= min and t <= max: > try: > > lists[-1].append(pos=(eval(m),eval(n),0)) > except: > lists.append(curve(color=(1,0,1))) > t = t+0.005 > > > _______________________________________________ > Tutor maillist - [EMAIL PROTECTED] > http://mail.python.org/mailman/listinfo/tutor > __________________________________ Do you Yahoo!? Send holiday email and support a worthy cause. Do good. http://celebrity.mail.yahoo.com _______________________________________________ Tutor maillist - [EMAIL PROTECTED] http://mail.python.org/mailman/listinfo/tutor