Java Line Intersect intersectClip(final Graphics2D g2d, final Shape clip)

Here you can find the source of intersectClip(final Graphics2D g2d, final Shape clip)

Description

Setting clip Shape by taking old clip Shape into account

License

Open Source License

Declaration


public static Shape intersectClip(final Graphics2D g2d, final Shape clip) 

Method Source Code


//package com.java2s;
/*//from w  w w. j a v a  2 s.c  o  m
 * This file is part of WebLookAndFeel library.
 *
 * WebLookAndFeel library is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation, either version 3 of the License, or
 * (at your option) any later version.
 *
 * WebLookAndFeel library is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with WebLookAndFeel library.  If not, see <http://www.gnu.org/licenses/>.
 */

import java.awt.*;

public class Main {
    /**
     * Setting clip Shape by taking old clip Shape into account
     */

    public static Shape intersectClip(final Graphics2D g2d, final Shape clip) {
        return intersectClip(g2d, clip, true);
    }

    public static Shape intersectClip(final Graphics2D g2d, final Shape clip, final boolean shouldSetup) {
        if (shouldSetup && clip != null) {
            final Shape oldClip = g2d.getClip();

            // Optimized by Graphics2D clip intersection
            g2d.clip(clip);

            return oldClip;
        } else {
            return null;
        }
    }
}

Related

  1. intersect(int xa, int ya, int xb, int yb, int xc, int yc, int xd, int yd)
  2. intersect(Point a, Point b, Point c, Point d)
  3. intersect(Shape shape1, Shape shape2)
  4. intersection(Line2D a, Line2D b)
  5. intersection(Line2D lineA, Line2D lineB)
  6. intersection(Point2D p1, Point2D p2, Point2D p3, Point2D p4)
  7. intersectionPoint(final Line2D l1, final Line2D l2)