Ejemplo n.º 1
0
            IList<ILine> GetClosingLines( ICurve AttachedCurve)
            {
                //if (!Option.IsArc())
                //    return null;

                IList<ILine> lines, closingLines = null;
                ILine arcLine = null;

                if (AttachedCurve != null)
                {
                    closingLines = AttachedCurve.GetClosingLines();
                    arcLine = AttachedCurve.ArcLine;
                }

                if (Option.IsPie())
                {
                    lines = new ILine[] { Line1, Line2 };
                    if (AttachedCurve == null)
                        return lines;

                    return lines.AppendItems(closingLines).ToArray();
                }
                else if (Option.IsClosedArc())
                {
                    lines = new ILine[] { ArcLine };
                    if (AttachedCurve == null)
                        return lines;
                    return lines.AppendItems(closingLines).ToArray();
                }
                else if (Option.IsArc())
                {
                    if (AttachedCurve == null)
                        return null;
                    if (arcLine != null)
                    {
                        return new ILine[]
                        {
                        Factory.newLine(ArcLine.Start, arcLine.Start),
                        Factory.newLine(ArcLine.End, arcLine.End)
                        };
                    }
                }
                return null;
            }