コード例 #1
0
        private void DetermineControlPointDirections()
        {
            var firstRow = ControlPoints.Where(c => c.V == 0).ToArray();

            var firstCol = ControlPoints.Where(c => c.U == 0).ToArray();

            ControlPoints.ToList().ForEach(c => c.AllowAllDirections());
            firstRow.ToList().ForEach(c => c.ControlPointDirections &= ~ControlPointDirections.Up);
            firstCol.ToList().ForEach(c => c.ControlPointDirections &= ~ControlPointDirections.Left);
            ControlPoints.Where(c => c.V == _resolution.Height - 1).ToList().ForEach(c => c.ControlPointDirections &= ~ControlPointDirections.Down);
            ControlPoints.Where(c => c.U == _resolution.Width - 1).ToList().ForEach(c => c.ControlPointDirections  &= ~ControlPointDirections.Right);
        }