We're a community of 1077K IT Pros here for help, advice, solutions, professional growth and fun. Join us!
1,076,194 Members — Technology Publication meets Social Media
Username:
Password:
Lost login information?
Start New Discussion Reply to this Discussion

How to draw a rectangle in jython

Hi, I am given this assignment that should be run in Jython. The assignment says that the program consists of a Java application with a canvas and a textarea for turtle code. I need to create a Jython application that takes turtle code from the Java application, parses it with regular expressions and calls setPixel(x,y)
in the Java application to draw a rectangle. the Java program ,setPixel(x, y) is used to control the painting and getCode() to get the code entered in to the turtle code textarea. These methods are both defined in the DYPL Java class.

import Translater

class Jtrans(Translater):

    def __init__(self):
        pass

    def actionPerformed(self, event):
        print("Button clicked. Got event:")
        self.obj.setPixel(100,10)
        self.obj.setPixel(101,10)
        self.obj.setPixel(102,10)

    def move(self, x,y):
        move(50, 90) 
        move(100, 90)
        move(50, 90)
        move(100, 90)

    def put(self, x,y,a):
        put(150, 150, 0)
        for x in range(0,4): 
            move(50, 90)
        end


        eval("self."+self.obj.getCode()+"()")#why do we need this?

    def setDYPL( self, obj ):
        print("Got a DYPL instance: ")
        print(obj)

if __name__ == '__main__':
    import DYPL
    DYPL(Jtrans())

I also attach a zip file containing classes like Translater.class,DYPLCanvas.java etc if you need it. so does anyone know how I should start?

3
Contributors
8
Replies
7 Hours
Discussion Span
3 Months Ago
Last Updated
29
Views
siga
Newbie Poster
5 posts since Feb 2013
Reputation Points: 0
Solved Threads: 0
Skill Endorsements: 0

You are not using the parameters to methods of JTrans, but you are using magic constants instead. You can not use module as function like you are trying in line 35.

pyTony
pyMod
Moderator
6,308 posts since Apr 2010
Reputation Points: 879
Solved Threads: 986
Skill Endorsements: 26

It is provided by my lecturer to create the canvas to draw on. When I run it , the cmd window does not give any error. and it also draw a line.

siga
Newbie Poster
5 posts since Feb 2013
Reputation Points: 0
Solved Threads: 0
Skill Endorsements: 0

My assignment is to draw a face not a rectangle. the rectangle is just so that I can see an example of how the coding should be done because I am not used to programming using java application

siga
Newbie Poster
5 posts since Feb 2013
Reputation Points: 0
Solved Threads: 0
Skill Endorsements: 0
vegaseat
DaniWeb's Hypocrite
Moderator
6,476 posts since Oct 2004
Reputation Points: 1,447
Solved Threads: 1,611
Skill Endorsements: 36

yes I wrote it there. but as you can see no one responded

siga
Newbie Poster
5 posts since Feb 2013
Reputation Points: 0
Solved Threads: 0
Skill Endorsements: 0
vegaseat
DaniWeb's Hypocrite
Moderator
6,476 posts since Oct 2004
Reputation Points: 1,447
Solved Threads: 1,611
Skill Endorsements: 36

Thank you for the reply. The link above shows how an object use the method created in turtle classs. My assignment requires me to create my own Turtle class.

siga
Newbie Poster
5 posts since Feb 2013
Reputation Points: 0
Solved Threads: 0
Skill Endorsements: 0

Hint ...
Your turtle class will use the Jython canvas, just like the Python module turtle uses the Tkinter canvas.

vegaseat
DaniWeb's Hypocrite
Moderator
6,476 posts since Oct 2004
Reputation Points: 1,447
Solved Threads: 1,611
Skill Endorsements: 36

This article has been dead for over three months: Start a new discussion instead

Post: Markdown Syntax: Formatting Help
 
You
View similar articles that have also been tagged:
 
© 2013 DaniWeb® LLC
Page rendered in 0.0855 seconds using 2.78MB