Package org.joshy.sketch.canvas

Source Code of org.joshy.sketch.canvas.PatternResizeHandle

package org.joshy.sketch.canvas;

import org.joshy.gfx.draw.FlatColor;
import org.joshy.gfx.draw.GFX;
import org.joshy.gfx.draw.PatternPaint;
import org.joshy.sketch.model.Handle;
import org.joshy.sketch.model.PatternMoveHandle;
import org.joshy.sketch.model.SShape;
import org.joshy.sketch.modes.vector.VectorDocContext;
import org.joshy.sketch.util.DrawUtils;

import java.awt.geom.Point2D;

/**
* Created by IntelliJ IDEA.
* User: joshmarinacci
* Date: 1/15/11
* Time: 7:16 PM
* To change this template use File | Settings | File Templates.
*/
public class PatternResizeHandle extends Handle {
    private PatternMoveHandle master;
    private SShape shape;
    private VectorDocContext context;

    public PatternResizeHandle(PatternMoveHandle h1, SShape shape, VectorDocContext context) {
        super();
        this.master = h1;
        this.shape = shape;
        this.context = context;
    }

    private PatternPaint getFill() {
        return (PatternPaint) this.shape.getFillPaint();
    }

    @Override
    public double getX() {
        double v = getFill().getStart().getX()
                + getFill().getEnd().getX()/10
                + shape.getBounds().getX();
        return v;
    }

    @Override
    public void setX(double x, boolean constrain) {
        x -= shape.getBounds().getX();
        x -= getFill().getStart().getX();
        PatternPaint pat = getFill().deriveNewEnd(new Point2D.Double(x*10, getFill().getEnd().getY()));
        shape.setFillPaint(pat);
    }

    @Override
    public double getY() {
        double v = getFill().getStart().getY()
                +  getFill().getEnd().getY()/10
                + shape.getBounds().getY();
        return v;
    }

    @Override
    public void setY(double y, boolean constrain) {
        y -= shape.getBounds().getY();
        y -= getFill().getStart().getY();
        PatternPaint pat = getFill().deriveNewEnd(new Point2D.Double(getFill().getEnd().getX(), y*10));
        shape.setFillPaint(pat);
    }

    @Override
    public void draw(GFX g, SketchCanvas canvas) {
        Point2D pt = new Point2D.Double(getX(),getY());
        pt = canvas.transformToDrawing(pt);
        double x = pt.getX();
        double y = pt.getY();
        DrawUtils.drawStandardHandle(g, x, y, FlatColor.PURPLE);
    }
}
TOP

Related Classes of org.joshy.sketch.canvas.PatternResizeHandle

TOP
Copyright © 2018 www.massapi.com. 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.