void InsertIntoCollection(List<SharedLine> sharedLines, Point3D pt1, Point3D pt2, Vector3D normal)
        {
            bool foundMatch = false;

            for (int i = 0; i < sharedLines.Count; i++)
            {
                if ((sharedLines[i].Point1 == pt1 && sharedLines[i].Point2 == pt2) ||
                    (sharedLines[i].Point1 == pt2 && sharedLines[i].Point2 == pt1))
                {
                    SharedLine sharedLine = sharedLines[i];
                    sharedLine.Normal2 = normal;
                    sharedLines[i] = sharedLine;
                    foundMatch = true;
                    break;
                }
            }

            if (!foundMatch)
            {
                SharedLine sharedLine = new SharedLine(pt1, pt2, normal, new Vector3D());
                sharedLines.Add(sharedLine);
            }
        }
        void InsertIntoCollection(List <SharedLine> sharedLines, Point3D pt1, Point3D pt2, Vector3D normal)
        {
            bool foundMatch = false;

            for (int i = 0; i < sharedLines.Count; i++)
            {
                if ((sharedLines[i].Point1 == pt1 && sharedLines[i].Point2 == pt2) ||
                    (sharedLines[i].Point1 == pt2 && sharedLines[i].Point2 == pt1))
                {
                    SharedLine sharedLine = sharedLines[i];
                    sharedLine.Normal2 = normal;
                    sharedLines[i]     = sharedLine;
                    foundMatch         = true;
                    break;
                }
            }

            if (!foundMatch)
            {
                SharedLine sharedLine = new SharedLine(pt1, pt2, normal, new Vector3D());
                sharedLines.Add(sharedLine);
            }
        }