void CheckConsistency()
        {
            // ReSharper restore UnusedMember.Local
            foreach (var s in rightConeSides)
            {
                coneSideComparer.SetOperand(s);
                if (!leftConeSides.Contains(s.Cone.LeftSide))
                {
                    Debug.WriteLine("bug");
                }
            }
            foreach (var s in leftConeSides)
            {
                coneSideComparer.SetOperand(s);
                if (!rightConeSides.Contains(s.Cone.RightSide))
                {
                    Debug.WriteLine("bug");
                    PrintOutRightSegTree();
                    PrintOutLeftSegTree();

                    //                    ShowLeftTree();
                    //                    ShowRightTree();
                }
            }
        }
 void CheckConsistency()
 {
     // ReSharper restore UnusedMember.Local
     foreach (var s in rightConeSides)
     {
         coneSideComparer.SetOperand(s);
     }
     foreach (var s in leftConeSides)
     {
         coneSideComparer.SetOperand(s);
         if (!rightConeSides.Contains(s.Cone.RightSide))
         {
             PrintOutRightSegTree();
             PrintOutLeftSegTree();
         }
     }
 }
 RBNode <ConeSide> InsertToTree(RbTree <ConeSide> tree, ConeSide coneSide)
 {
     Debug.Assert(coneSide.Direction * SweepDirection > ApproximateComparer.DistanceEpsilon);
     coneSideComparer.SetOperand(coneSide);
     return(tree.Insert(coneSide));
 }