Package org.eclipse.swt.graphics

Examples of org.eclipse.swt.graphics.Transform


          .getSystemColor(SWT.COLOR_MAGENTA) });
    }

    for (int j = 0; j < bc.length; j++)
      for (int i = 0; i < bc[j].prevx.size(); i++) {
        Transform transform = new Transform(device);
        transform.translate(((Float) bc[j].prevx.get(bc[j].prevx.size() - (i + 1))).floatValue(),
            ((Float) bc[j].prevy.get(bc[j].prevy.size() - (i + 1))).floatValue());
        gc.setTransform(transform);
        transform.dispose();

        Path path = new Path(device);
        path.addArc(0, 0, bc[j].ball_size, bc[j].ball_size, 0, 360);
        gc.setAlpha(255 - i * 255 / bc[j].capacity);
        gc.setBackground(bc[j].colors[0]);
View Full Code Here


    if (drawButton.getSelection())
      gc.drawPath(path);
    path.dispose();

    // shape on left
    Transform transform = new Transform(device);
    transform.translate((width - 250) / 4, height / 2 - 150);
    gc.setTransform(transform);
    transform.dispose();
    path = new Path(device);
    path.cubicTo(-150, 100, 150, 200, 0, 300);
    if (closeButton.getSelection())
      path.close();
    if (fillButton.getSelection())
View Full Code Here

    if (!example.checkAdvancedGraphics())
      return;
    Device device = gc.getDevice();

    // horizontal rectangle
    Transform transform = new Transform(device);
    transform.translate(0, translateY);
    gc.setTransform(transform);
    transform.dispose();

    Path path = new Path(device);
    path.addRectangle(0, 0, width, 50);
    Pattern pattern = new Pattern(device, 0, 0, width, 50, device.getSystemColor(SWT.COLOR_BLUE), 0x7f, device
        .getSystemColor(SWT.COLOR_RED), 0x7f);
    gc.setBackgroundPattern(pattern);
    gc.fillPath(path);
    gc.drawPath(path);
    path.dispose();

    // vertical rectangle
    transform = new Transform(device);
    transform.translate(translateX, 0);
    gc.setTransform(transform);
    transform.dispose();

    path = new Path(device);
    path.addRectangle(0, 0, 50, height);
    pattern.dispose();
    pattern = new Pattern(device, 0, 0, 50, height, device.getSystemColor(SWT.COLOR_DARK_CYAN), 0x7f, device
        .getSystemColor(SWT.COLOR_WHITE), 0x7f);
    gc.setBackgroundPattern(pattern);
    gc.fillPath(path);
    gc.drawPath(path);
    path.dispose();

    // diagonal rectangle from bottom right corner
    Rectangle rect = new Rectangle(0, 0, 50, height);
    transform = new Transform(device);
    transform.translate(width - diagTranslateX1, height / 2 - diagTranslateY1);

    // rotate on center of rectangle
    transform.translate(rect.width / 2, rect.height / 2);
    transform.rotate(45);
    transform.translate(-rect.width / 2, -rect.height / 2);
    gc.setTransform(transform);
    transform.dispose();

    path = new Path(device);
    path.addRectangle(rect.x, rect.y, rect.width, rect.height);
    pattern.dispose();
    pattern = new Pattern(device, rect.x, rect.y, rect.width, rect.height, device
        .getSystemColor(SWT.COLOR_DARK_GREEN), 0x7f, device.getSystemColor(SWT.COLOR_DARK_MAGENTA), 0x7f);
    gc.setBackgroundPattern(pattern);
    gc.fillPath(path);
    gc.drawPath(path);
    path.dispose();

    // diagonal rectangle from top right corner
    transform = new Transform(device);
    transform.translate(width - diagTranslateX2, height / 2 - diagTranslateY2);

    // rotate on center of rectangle
    transform.translate(rect.width / 2, rect.height / 2);
    transform.rotate(-45);
    transform.translate(-rect.width / 2, -rect.height / 2);
    gc.setTransform(transform);
    transform.dispose();

    path = new Path(device);
    path.addRectangle(rect.x, rect.y, rect.width, rect.height);
    pattern.dispose();
    pattern = new Pattern(device, rect.x, rect.y, rect.width, rect.height, device
View Full Code Here

                    Object[] currCacheKey = new Object[] { document.getModificationStamp(), size.x, size.y,
                            styledText.getForeground(), styledText.getBackground(), marginCols, marginRgb };

                    double scaleX = size.x / (double) imageWidth;
                    double scaleY = size.y / (double) imageHeight;
                    final Transform transform = new Transform(Display.getCurrent());
                    transform.scale((float) scaleX, (float) scaleY);

                    if (baseImage == null || !Arrays.equals(this.cacheKey, currCacheKey)) {
                        this.cacheKey = currCacheKey;

                        Image tmpImage = new Image(Display.getCurrent(), size.x, size.y);
                        final GC gc = new GC(tmpImage);
                        gc.setAdvanced(true);
                        gc.setAntialias(SWT.ON);
                        gc.setBackground(styledText.getBackground());
                        gc.setForeground(styledText.getBackground());
                        gc.fillRectangle(0, 0, size.x, size.y);

                        final Color styledTextForeground = styledText.getForeground();
                        final Color marginColor2 = new Color(Display.getCurrent(), marginRgb);
                        redrawJob.cancel();
                        redrawJob.setParameters(gc, styledTextForeground, size, content, lineCount, marginCols,
                                marginColor2, spacing, imageHeight, transform, tmpImage);

                        redrawJob.schedule();
                    }

                    try {
                        if (baseImage != null && !baseImage.isDisposed()) {
                            if (lastImage != null && !lastImage.isDisposed()) {
                                lastImage.dispose();
                            }

                            Image image = new Image(Display.getCurrent(), size.x, size.y);
                            GC gc2 = new GC(image);
                            try {
                                gc2.drawImage(baseImage, 0, 0);

                                Rectangle clientArea = styledText.getClientArea();
                                int top = styledText.getLineIndex(0);
                                int bottom = styledText.getLineIndex(clientArea.height) + 1;

                                float rect[] = new float[] { 0, top * spacing, imageWidth,
                                        (bottom * spacing) - (top * spacing) };
                                transform.transform(rect);

                                gc2.setLineWidth(3);
                                gc2.setAlpha(150);
                                gc2.fillRectangle(Math.round(rect[0]), Math.round(rect[1]), Math.round(rect[2]),
                                        Math.round(rect[3]));
View Full Code Here

            int lineCount = (Integer) parameters[4];
            int marginCols = (Integer) parameters[5];
            Color marginColor = (Color) parameters[6];
            int spacing = (Integer) parameters[7];
            int imageHeight = (Integer) parameters[8];
            Transform transform = (Transform) parameters[9];
            final Image image = (Image) parameters[10];

            try {
                redrawBaseImage(gc, styledTextForeground, size, content, lineCount, marginCols, marginColor, spacing,
                        imageHeight, transform, monitor);
View Full Code Here

                Tile tile = layer.getTileAt(x, y);
                if (tile != null) {
                    if (layer instanceof SelectionLayer) {
                      if (shouldPaintBrushTile())
                        RenderingUtil.drawTile(gc, tile, gx, gy, zoom);
                        Transform transform = new Transform(getDisplay());
                        transform.translate(gx,gy);
                    gc.setTransform(transform);
                    gc.setAlpha(SEL_HOVER_ALPHA);
                        gc.fillPolygon(Converter.getPolygonArray(gridPoly));
                        gc.setAlpha(OPAQUE);
                        gc.setTransform(null);
                        transform.dispose();
                        //paintEdge(g, layer, gx, gy);
                    }
                    else {
                      RenderingUtil.drawTile(gc, tile, gx, gy, zoom);
                    }
View Full Code Here

  protected void paintObjectGroup(GC gc, ObjectGroup og) {
        final Point tsize = getTileSize();
        final Rectangle bounds = og.getBounds();
        Iterator<MapObject> itr = og.getObjects();
        Transform transform = new Transform(getDisplay());
        transform.translate(bounds.x * tsize.x,bounds.y * tsize.y);
    gc.setTransform(transform);
//        gc.translate(
//                bounds.x * tsize.x,
//                bounds.y * tsize.y);

        while (itr.hasNext()) {
            MapObject mo = itr.next();
            double ox = mo.getX() * zoom;
            double oy = mo.getY() * zoom;

            Image objectImage = mo.getImage(zoom);
            if (objectImage != null) {
                gc.drawImage(objectImage, (int) ox, (int) oy);
            }

            int objWidth = mo.getWidth();
      int objHeight = mo.getHeight();
      if (objWidth == 0 || objHeight == 0) {
                gc.setAntialias(SWT.ON);
                gc.setBackground(getDisplay().getSystemColor(SWT.COLOR_BLACK));
                gc.fillOval((int) ox + 1, (int) oy + 1,
                        (int) (10 * zoom), (int) (10 * zoom));
                gc.setBackground(getDisplay().getSystemColor(OBJECT_FOREGROUND));
                gc.fillOval((int) ox, (int) oy,
                        (int) (10 * zoom), (int) (10 * zoom));
                gc.setAntialias(SWT.OFF);
            } else {
                gc.setForeground(getDisplay().getSystemColor(SWT.COLOR_BLACK));
                gc.drawRectangle((int) ox + 1, (int) oy + 1,
                    (int) (objWidth * zoom),
                    (int) (objHeight * zoom));
                gc.setForeground(getDisplay().getSystemColor(OBJECT_FOREGROUND));
                gc.drawRectangle((int) ox, (int) oy,
                    (int) (objWidth * zoom),
                    (int) (objHeight * zoom));
            }
            if (zoom > 0.0625) {
              if (drawResizeAnchors) {
                drawAnchors(gc, ox, oy, objWidth, objHeight);
              }
                final String s = mo.getName() != null ? mo.getName() : "(null)";
                gc.setForeground(getDisplay().getSystemColor(SWT.COLOR_BLACK));
                gc.drawString(s, (int) (ox - 5) + 1, (int) (oy - 5) + 1);
                gc.setForeground(getDisplay().getSystemColor(OBJECT_FOREGROUND));
                gc.drawString(s, (int) (ox - 5), (int) (oy - 5));
               
            }
        }

//        gc.translate(
//                -bounds.x * tsize.x,
//                -bounds.y * tsize.y);
        gc.setTransform(null);
        transform.dispose();
    }
View Full Code Here

                try {
                    Properties p = layer.getTileInstancePropertiesAt(i, j);
                    if (p != null && !p.isEmpty()) {
                        //gc.drawString( "PROP", x, y );
                        //gc.drawImage(MapView.propertyFlagImage, x + (tsize.width - 12), y, null);
                      Transform transform = new Transform(getDisplay());
                        transform.translate(x + (tsize.x - 13), y+1);
                    gc.setTransform(transform);
                        gc.drawPolygon(Converter.getPolygonArray(propPoly));
                        gc.setTransform(null);
                        transform.dispose();
                    }
                }
                catch (Exception e) {
                    System.out.print("Exception\n");
                }
View Full Code Here

    gc.dispose();
    shell.addListener(SWT.Paint, new Listener() {
      @Override
      public void handleEvent(Event event) {
        GC gc = event.gc;
        Transform tr = new Transform(display);
        tr.translate(50, 120);
        tr.rotate(-30);
        gc.drawImage(image, 0, 0, rect.width, rect.height, 0, 0, rect.width / 2, rect.height / 2);
        gc.setAlpha(100);
        gc.setTransform(tr);
        Path path = new Path(display);
        path.addString("SWT", 0, 0, font);
        gc.setBackground(display.getSystemColor(SWT.COLOR_GREEN));
        gc.setForeground(display.getSystemColor(SWT.COLOR_BLUE));
        gc.fillPath(path);
        gc.drawPath(path);
        tr.dispose();
        path.dispose();
      }
    });
    shell.setSize(shell.computeSize(rect.width / 2, rect.height / 2));
    shell.open();
View Full Code Here

        if (ps != null && !ps.isDelivered()) {
          if (rotation == 0f) {
            gc.drawImage(image, offsetX, offsetY);
          } else {
            final Transform oldTransform = new Transform(gc.getDevice());
            gc.getTransform(oldTransform);

            final Transform transform = new Transform(gc.getDevice());
            transform.translate(offsetX + image.getBounds().width / 2, offsetY
                + image.getBounds().height / 2);
            transform.rotate(rotation);
            transform.translate(-(offsetX + image.getBounds().width / 2),
                -(offsetY + image.getBounds().height / 2));
            gc.setTransform(transform);
            gc.drawImage(image, offsetX, offsetY);
            gc.setTransform(oldTransform);
            transform.dispose();
            oldTransform.dispose();
          }
        }
      }
    }
View Full Code Here

TOP

Related Classes of org.eclipse.swt.graphics.Transform

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.