Ejemplo n.º 1
0
        public void Case4(Sink sink, Edge edge, Trapezoid[] tList)
        {
            var yNode = new YNode(edge, Sink.Isink(tList[0]), Sink.Isink(tList[1]));
            var qNode = new XNode(edge.Q, yNode, Sink.Isink(tList[2]));

            Replace(sink, qNode);
        }
Ejemplo n.º 2
0
        public void Case2(Sink sink, Edge edge, Trapezoid[] tList)
        {
            YNode yNode = new YNode(edge, Sink.Isink(tList[1]), Sink.Isink(tList[2]));
            XNode pNode = new XNode(edge.P, Sink.Isink(tList[0]), yNode);

            Replace(sink, pNode);
        }
Ejemplo n.º 3
0
        public Triangulator(List <Point> polyLine, float sheer)
        {
            _sheer          = sheer;
            Triangles       = new List <List <Point> >();
            Trapezoids      = new List <Trapezoid>();
            _xMonoPoly      = new List <MonotoneMountain>();
            _edgeList       = InitEdges(polyLine);
            _trapezoidalMap = new TrapezoidalMap();
            _boundingBox    = _trapezoidalMap.BoundingBox(_edgeList);
            _queryGraph     = new QueryGraph(Sink.Isink(_boundingBox));

            Process();
        }
Ejemplo n.º 4
0
        public void Case3(Sink sink, Edge edge, Trapezoid[] tList)
        {
            var yNode = new YNode(edge, Sink.Isink(tList[0]), Sink.Isink(tList[1]));

            Replace(sink, yNode);
        }