--- fract/mandelzoom.cgi 2001/02/24 21:36:47 1.1 +++ fract/mandelzoom.cgi 2001/02/25 22:54:25 1.5 @@ -1,39 +1,54 @@ #!/usr/bin/python -import cgi, Image, ImageDraw, sys -from string import atoi +import cgi, Image, ImageDraw, sys, math +from string import atoi, atof + +# This is to get backtrace output +sys.stderr = sys.stdout + +# Uncomment this to get the backtrace more readable +#print "Content-Type: text/plain" +#print "" form= cgi.FieldStorage() # Image size if form.has_key('width'): - width=atoi(form['width'].value) + width= atoi(form['width'].value) else: - width= 570 + width= 480 if form.has_key('height'): - height=atoi(form['height'].value) + height= atoi(form['height'].value) else: - height= 570 + height= 480 xmax, ymax = width-1, height-1 # Coordinate maximums +# Complex number in center of image is (cx+cy*j) +if form.has_key('cx'): + cx= atof(form['cx'].value) +else: + cx= 0 + +if form.has_key('cy'): + cy= atof(form['cy'].value) +else: + cy= 0 + +if form.has_key('diag'): + diag= atof(form['diag'].value) +else: + diag= math.sqrt(32) # sqrt(4**2 + 4**2) + debug= form.has_key('debug') -if debug: - del form['debug'] if form.has_key('iter'): - maxiter=atoi(form['iter'].value) - del form['iter'] + maxiter= atoi(form['iter'].value) else: maxiter= 270 -sys.stderr = sys.stdout -print "Content-Type: text/plain" -print "" - -# If type==html, then output an HTML page, not an image -if form.has_key('type') and form['type'].value == "html": - del form['type'] +# If type!=image, then output an HTML page, not an image +if not (form.has_key('type') and form['type'].value == "image"): print """Content-Type: text/html @@ -45,20 +60,74 @@