Ejemplo n.º 1
0
        public (Point pMin, Point pMax) ABBA(Polytope parent)
        {
            if (indexes.Length == 0)
            {
                return(new Point(), new Point());
            }

            var points = Points(parent);

            return(points.Skip(1).Aggregate((points[0], points[0]),
                                            (abba, p) => (Point.Min(abba.Item1, p), Point.Max(abba.Item2, p))));
        }
Ejemplo n.º 2
0
        public override (Point pMin, Point pMax) ABBA()
        {
            if (entities.Count == 0)
            {
                return(base.ABBA());
            }
            var result = entities[0].ABBA();

            foreach (Entity entity in entities.Skip(1))
            {
                var current = entity.ABBA();
                result.pMax = Point.Max(current.pMax, result.pMax);
                result.pMin = Point.Min(current.pMin, result.pMin);
            }
            return(result);
        }
Ejemplo n.º 3
0
        public virtual (Point pMin, Point pMax) ABBA()
        {
            var start = Points().FirstOrDefault();

            return(Points().Aggregate((start, start), (abba, p) => (Point.Min(abba.Item1, p), Point.Max(abba.Item2, p))));
        }