Example #1
0
        private static bool LargeHole_DontFill(AdvancingFrontNode node)
        {
            AdvancingFrontNode next = node.Next;
            AdvancingFrontNode prev = node.Prev;
            bool flag = !DTSweep.AngleExceeds90Degrees(node.Point, next.Point, prev.Point);
            bool result;

            if (flag)
            {
                result = false;
            }
            else
            {
                AdvancingFrontNode next2 = next.Next;
                bool flag2 = next2 != null && !DTSweep.AngleExceedsPlus90DegreesOrIsNegative(node.Point, next2.Point, prev.Point);
                if (flag2)
                {
                    result = false;
                }
                else
                {
                    AdvancingFrontNode prev2 = prev.Prev;
                    bool flag3 = prev2 != null && !DTSweep.AngleExceedsPlus90DegreesOrIsNegative(node.Point, next.Point, prev2.Point);
                    result = !flag3;
                }
            }
            return(result);
        }