Class DefaultClipper

    • Constructor Detail

      • DefaultClipper

        public DefaultClipper()
      • DefaultClipper

        public DefaultClipper​(int InitOptions)
    • Method Detail

      • getHorzDirection

        private static void getHorzDirection​(Edge HorzEdge,
                                             Clipper.Direction[] Dir,
                                             long[] Left,
                                             long[] Right)
      • getOverlap

        private static boolean getOverlap​(long a1,
                                          long a2,
                                          long b1,
                                          long b2,
                                          long[] Left,
                                          long[] Right)
      • isParam1RightOfParam2

        private static boolean isParam1RightOfParam2​(Path.OutRec outRec1,
                                                     Path.OutRec outRec2)
      • minkowski

        private static Paths minkowski​(Path pattern,
                                       Path path,
                                       boolean IsSum,
                                       boolean IsClosed)
      • minkowskiDiff

        public static Paths minkowskiDiff​(Path poly1,
                                          Path poly2)
      • minkowskiSum

        public static Paths minkowskiSum​(Path pattern,
                                         Path path,
                                         boolean pathIsClosed)
      • minkowskiSum

        public static Paths minkowskiSum​(Path pattern,
                                         Paths paths,
                                         boolean pathIsClosed)
      • poly2ContainsPoly1

        private static boolean poly2ContainsPoly1​(Path.OutPt outPt1,
                                                  Path.OutPt outPt2)
      • simplifyPolygon

        public static Paths simplifyPolygon​(Path poly)
      • simplifyPolygons

        public static Paths simplifyPolygons​(Paths polys)
      • insertScanbeam

        private void insertScanbeam​(long Y)
      • InsertMaxima

        private void InsertMaxima​(long X)
      • addEdgeToSEL

        private void addEdgeToSEL​(Edge edge)
      • appendPolygon

        private void appendPolygon​(Edge e1,
                                   Edge e2)
      • buildIntersectList

        private void buildIntersectList​(long topY)
      • buildResult

        private void buildResult​(Paths polyg)
      • buildResult2

        private void buildResult2​(PolyTree polytree)
      • copyAELToSEL

        private void copyAELToSEL()
      • deleteFromAEL

        private void deleteFromAEL​(Edge e)
      • deleteFromSEL

        private void deleteFromSEL​(Edge e)
      • doHorzSegmentsOverlap

        private boolean doHorzSegmentsOverlap​(long seg1a,
                                              long seg1b,
                                              long seg2a,
                                              long seg2b)
      • doMaxima

        private void doMaxima​(Edge e)
      • doSimplePolygons

        private void doSimplePolygons()
      • executeInternal

        private boolean executeInternal()
      • fixupIntersectionOrder

        private boolean fixupIntersectionOrder()
      • fixupOutPolyline

        private void fixupOutPolyline​(Path.OutRec outrec)
      • fixupOutPolygon

        private void fixupOutPolygon​(Path.OutRec outRec)
      • getOutRec

        private Path.OutRec getOutRec​(int idx)
      • insertEdgeIntoAEL

        private void insertEdgeIntoAEL​(Edge edge,
                                       Edge startEdge)
      • insertLocalMinimaIntoAEL

        private void insertLocalMinimaIntoAEL​(long botY)
      • joinCommonEdges

        private void joinCommonEdges()
      • popScanbeam

        private long popScanbeam()
      • processEdgesAtTopOfScanbeam

        private void processEdgesAtTopOfScanbeam​(long topY)
      • processHorizontal

        private void processHorizontal​(Edge horzEdge)
      • processHorizontals

        private void processHorizontals()
      • processIntersections

        private boolean processIntersections​(long topY)
      • processIntersectList

        private void processIntersectList()
      • setHoleState

        private void setHoleState​(Edge e,
                                  Path.OutRec outRec)
      • swapPositionsInAEL

        private void swapPositionsInAEL​(Edge edge1,
                                        Edge edge2)
      • swapPositionsInSEL

        private void swapPositionsInSEL​(Edge edge1,
                                        Edge edge2)
      • updateEdgeIntoAEL

        private void updateEdgeIntoAEL​(Edge[] eV)
      • updateOutPtIdxs

        private void updateOutPtIdxs​(Path.OutRec outrec)
      • updateWindingCount

        private void updateWindingCount​(Edge edge)