Example #1
0
 def paintIcon(self, g2):
     rectangleSize = self.size - self.PADDING
     path = GeneralPath()
     path.moveTo(self.PADDING, self.PADDING)
     path.lineTo(rectangleSize, rectangleSize)
     path.moveTo(self.PADDING, rectangleSize)
     path.lineTo(rectangleSize, self.PADDING)
     g2.draw(path)
Example #2
0
    def paintIcon(self, g2):
        rectangleSize = self.size - self.PADDING * 2.0
        path = GeneralPath()
        path.moveTo(self.PADDING, rectangleSize / 2.0 + self.PADDING)
        path.lineTo(rectangleSize + self.PADDING, rectangleSize / 2.0 + self.PADDING)

        # up tick
        path.lineTo(rectangleSize / 1.5 + self.PADDING, self.PADDING * 2)

        # down tick
        path.moveTo(rectangleSize + self.PADDING, rectangleSize / 2.0 + self.PADDING)
        path.lineTo(rectangleSize / 1.5 + self.PADDING, rectangleSize)
        g2.draw(path)
Example #3
0
    def paintIcon(self, g2):
        rectangleSize = self.size - self.PADDING * 2
        ticklen = rectangleSize * 0.3

        g2.drawRect(self.PADDING, self.PADDING, rectangleSize, rectangleSize)

        # Double sided diagonal arrow
        arrowpad = self.PADDING + self.STROKE_WIDTH + 1
        rectangleSize = self.size - arrowpad * 2
        path = GeneralPath()

        # ticks
        path.moveTo(arrowpad, rectangleSize + arrowpad)
        path.lineTo(arrowpad, rectangleSize + arrowpad - ticklen)
        path.moveTo(arrowpad, rectangleSize + arrowpad)
        path.lineTo(arrowpad + ticklen, rectangleSize + arrowpad)

        # line
        path.moveTo(arrowpad, rectangleSize + arrowpad)
        path.lineTo(rectangleSize + arrowpad, arrowpad)

        # ticks
        path.lineTo(rectangleSize + arrowpad, arrowpad + ticklen)
        path.moveTo(rectangleSize + arrowpad, arrowpad)
        path.lineTo(rectangleSize + arrowpad - ticklen, arrowpad)
        g2.draw(path)
Example #4
0
    def paintIcon(self, g2):
        rectangleSize = self.size - self.PADDING * 2

        # Line
        g2.drawLine(self.PADDING, rectangleSize + self.PADDING,
            rectangleSize + self.PADDING, rectangleSize + self.PADDING)

        # Arrow
        path = GeneralPath()
        path.moveTo(rectangleSize / 2.0 + self.PADDING, rectangleSize)
        path.lineTo(rectangleSize / 2.0 + self.PADDING, self.PADDING)

        # left tick
        path.lineTo(self.PADDING * 2, (self.size / 2.0) - 1)

        # right tick
        path.moveTo(rectangleSize / 2.0 + self.PADDING, self.PADDING)
        path.lineTo(rectangleSize, (self.size / 2.0) - 1)
        g2.draw(path)
Example #5
0
def addShapes(ShapeDB):
    from java.awt.geom import GeneralPath
    from java.awt import Polygon
    import jarray

    xpoints = jarray.array((10,5,0,5),'i')
    ypoints = jarray.array((5,10,5,0),'i')
    diamond = Polygon(xpoints,ypoints,4);
    shapeDB.addShape(104,diamond)

    xpoints = jarray.array((55, 67, 109, 73, 83, 55, 27, 37, 1, 43),'i')
    ypoints = jarray.array((0, 36, 36, 54, 96, 72, 96, 54, 36, 36),'i')
    star = Polygon(xpoints,ypoints,10)
    shapeDB.addShape(105,star)
    
    triangle = GeneralPath()
    triangle.moveTo(5,0)
    triangle.lineTo(10,5)
    triangle.lineTo(0,5)
    triangle.lineTo(5,0)
    shapeDB.addShape(106,triangle)
Example #6
0
class Star():
    def __init__(self, radius, color):
        self.color = color
        self.setSize(radius)

    def setSize(self, size):
        # First triangle, size is radius of circumcircle, center at (0,0)
        self.tri1 = GeneralPath()
        self.tri1.moveTo(size, 0)
        self.tri1.lineTo(int(-0.5 * size), int(0.866 * size))
        self.tri1.lineTo(int(-0.5 * size), int(-0.866 * size))
        self.tri1.closePath()

        # Second triangle like first, but rotated 180 degrees
        self.tri2 = self.tri1.clone()
        t = AffineTransform()
        t.rotate(math.pi)
        self.tri2.transform(t)

    def turn(self, angle):
        t = AffineTransform()
        t.rotate(angle)
        self.tri1.transform(t)
        self.tri2.transform(t)

    def showAt(self, mx, my):
        bg.setPaintColor(self.color)
        t = AffineTransform()
        t.translate(mx, -50 + my % 650)  # Restrict to playground
        # Cloning to avoid side effects
        gp1 = self.tri1.clone()
        gp2 = self.tri2.clone()
        gp1.transform(t)
        gp2.transform(t)
        bg.fillGeneralPath(gp1)
        bg.fillGeneralPath(gp2)
Example #7
0
from java.awt.geom import GeneralPath
from java.awt import Polygon
import jarray

xpoints = jarray.array((10,5,0,5),'i')
ypoints = jarray.array((5,10,5,0),'i')
diamond = Polygon(xpoints,ypoints,4);
shapeDB.addShape(104,diamond)

xpoints = jarray.array((55, 67, 109, 73, 83, 55, 27, 37, 1, 43),'i')
ypoints = jarray.array((0, 36, 36, 54, 96, 72, 96, 54, 36, 36),'i')
star = Polygon(xpoints,ypoints,10)
shapeDB.addShape(105,star)
 
triangle = GeneralPath()
triangle.moveTo(5,0)
triangle.lineTo(10,5)
triangle.lineTo(0,5)
triangle.lineTo(5,0)
shapeDB.addShape(106,triangle)