Exemplo n.º 1
0
        private static Polyline Merge(
            [NotNull] Polyline pl1,
            [NotNull] Polyline pl2,
            [NotNull] PolylineVertex ptInPl1,
            [NotNull] PolylineVertex ptInPl2)
        {
            var indexInPl1 = ptInPl1.Index + 1;
            var indexInPl2 = ptInPl2.Index;
            var pt         = ptInPl2.Pt;
            var plMerged   = AddVertex(pl1, pl2, indexInPl1, indexInPl2, pt);

            if (!plMerged.CheckCross())
            {
                plMerged.Dispose();
                plMerged = AddVertex(pl1, pl2, indexInPl1, indexInPl2, pt, -1);
            }

            return(plMerged);
        }
Exemplo n.º 2
0
 public static List <PolylineVertex> GetVertexes([NotNull] this Polyline pl)
 {
     return(PolylineVertex.GetVertexes(pl, string.Empty));
 }
Exemplo n.º 3
0
 private static Polyline Merge(Polyline pl1, Polyline pl2, PolylineVertex ptInPl1, PolylineVertex ptInPl2)
 {
     Polyline plMerged;
     int indexInPl1 = ptInPl1.Index + 1;
     int indexInPl2 = ptInPl2.Index;
     var pt = ptInPl2.Pt;
     plMerged = AddVertex(pl1, pl2, indexInPl1, indexInPl2, pt, 1);
     if (!plMerged.CheckCross())
     {
         plMerged.Dispose();
         plMerged = AddVertex(pl1, pl2, indexInPl1, indexInPl2, pt, -1);
     }
     return plMerged;
 }