/// <inheritdoc />
        public ICollection <ISelectable> GetElements(SKRect rect)
        {
            var comparerSelectable = new ComparerSelectable();

            return(_selectableObjects
                   .SelectMany(v => v.Intersect(rect))
                   .Distinct()
                   .OrderBy(v => v, comparerSelectable)
                   .ToArray());
        }
        /// <inheritdoc />
        public ICollection <ISelectable> GetElements(SKPoint point, float radius)
        {
            var comparerSelectable = new ComparerSelectable();

            return(_selectableObjects
                   .SelectMany(v => v.Intersect(point, radius))
                   .Distinct()
                   .OrderBy(v => v, comparerSelectable)
                   .ToArray());
        }