Package diva.canvas

Examples of diva.canvas.TransformContext


     * be shared by many labels.
     */
    public LabelFigure(String s, Font f) {
        _string = s;
        _font = f;
        _transformContext = new TransformContext(this);
    }
View Full Code Here


         * of circles into a single shape.
         */
        public CloudFigure(double x, double y, double width, double height) {
            // Create the transform context and initialize it
            // so that the figure is drawn at the requested coordinates
            _transformContext = new TransformContext(this);

            AffineTransform at = _transformContext.getTransform();
            at.translate(x, y);
            at.scale(width / 100, height / 100);
            _transformContext.invalidateCache();
View Full Code Here

     * Reposition the grab-handle if necessary
     */
    public void relocate() {
        // Be sure to take into account that the transformContext of the
        // site and the context of the grab handle may be different.
        TransformContext tc = getTransformContext();
        Point2D p = _site.getPoint(tc);
        double x = p.getX();
        double y = p.getY();

        if ((x != _x) || (y != _y)) {
View Full Code Here

    /** Route the given connector, returning a Polyline2D. This
     * method is the same as route(), except that the return
     * type is tighter.
     */
    public Polyline2D routeManhattan(ManhattanConnector c) {
        TransformContext currentContext = c.getTransformContext();

        Site headSite = c.getHeadSite();
        Site tailSite = c.getTailSite();
        Point2D headPt;
        Point2D tailPt;
View Full Code Here

    /** Tell the connector to route itself between the
     * current positions of the head and tail sites.
     */
    public void route() {
        TransformContext currentContext = getTransformContext();
        Site headSite = getHeadSite();
        Site tailSite = getTailSite();
        Point2D headPt;
        Point2D tailPt;

View Full Code Here

     * current positions of the head and tail sites.
     */
    public void route() {
        repaint();

        TransformContext currentContext = getTransformContext();
        Site headSite = getHeadSite();
        Site tailSite = getTailSite();
        Figure tailFigure = tailSite.getFigure();
        Figure headFigure = headSite.getFigure();

View Full Code Here

     * but attempts to alter the shape of the arc so that the
     * midpoint moves by something close to the given amount.
     */
    public void translateMidpoint(double dx, double dy) {
        // Calculate some parameters
        TransformContext currentContext = getTransformContext();
        Site headSite = getHeadSite();
        Site tailSite = getTailSite();
        Figure tailFigure = tailSite.getFigure();
        Figure headFigure = headSite.getFigure();

View Full Code Here

                if (f.getInteractor() == null) {
                    return false;
                }

                TransformContext figureContext = f.getParent()
                        .getTransformContext();
                TransformContext containerContext = container
                        .getTransformContext();
                AffineTransform transform;

                try {
                    transform = figureContext.getTransform(containerContext)
View Full Code Here

        if (_target != null) {
            // set up affine transform between the target
            // and our current transform context, so that
            // all tests { intersects(), findSite() }
            // are done in proper coordinates
            TransformContext manipulatorContext = e.getLayerSource()
                    .getTransformContext();
            TransformContext targetContext = _target.getParent()
                    .getTransformContext();
            AffineTransform transform = targetContext
                    .getTransform(manipulatorContext);
            Rectangle2D bounds = _target.getBounds();
            bounds = ShapeUtilities.transformBounds(bounds, transform);

            if (bounds.intersects(x - h, y - h, 2 * h, 2 * h)) {
View Full Code Here

                    && ((evt.getModifiers() & InputEvent.BUTTON3_MASK) != 0)) {
                setPosition(evt.getX(), evt.getY());
                origin = evt.getPoint();

                JCanvas canvas = ((JCanvas) _target.getView());
                TransformContext context = canvas.getCanvasPane()
                        .getTransformContext();

                // clone the transform that is in the context, so we can
                // avoid a lot of repeated scaling of the same transform.
                transformOrigin = (AffineTransform) context.getTransform()
                        .clone();

                // Take the event and first transform it from the panner
                // coordinates into the view coordinates.
                Dimension viewSize = _target.getView().getSize();
                Rectangle viewRect = new Rectangle(0, 0, viewSize.width,
                        viewSize.height);
                Rectangle myRect = _getInsetBounds();

                AffineTransform forward = CanvasUtilities.computeFitTransform(
                        viewRect, myRect);

                double xScaled = (origin.getX() - myRect.getX())
                        / forward.getScaleX();
                double yScaled = (origin.getY() - myRect.getY())
                        / forward.getScaleY();
                scaled = new Point2D.Double(xScaled, yScaled);

                // Now transform from the view coordinates into the
                // pane coordinates.
                try {
                    context.getInverseTransform().transform(scaled, scaled);
                } catch (Exception ex) {
                    ex.printStackTrace();
                }
            }
        }
View Full Code Here

TOP

Related Classes of diva.canvas.TransformContext

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.