Example #1
0
 /// <summary>
 /// Initializes a new instance of the <see cref="HilbertRTree"/> class using
 /// the specified <see cref="ISpaceFillingCurveEncoder"/> as a space filling curve implementation
 /// and the specifield limits to children count.
 /// </summary>
 /// <param name="maxChildren">The maximum number of children. Shall be a positive integer which can be divided by 3.</param>
 /// <param name="encoder">The space filling curve implementation used to encode coordinate values to one dimensional integers</param>
 public HilbertRTree(Int32 maxChildren, ISpaceFillingCurveEncoder encoder)
     : base(maxChildren * 2 / 3, maxChildren)
 {
     this.encoder = encoder ?? throw new ArgumentNullException(nameof(encoder) + " cannot be null");
 }
Example #2
0
 /// <summary>
 /// Initializes a new instance of the <see cref="HilbertRTree"/> class using
 /// the specified <see cref="ISpaceFillingCurveEncoder"/> as a space filling curve implementation.
 /// </summary>
 /// <param name="encoder">the space filling curve implementation used to encode coordinate values to one dimensional integers</param>
 public HilbertRTree(ISpaceFillingCurveEncoder encoder)
     : this(DefaultMaxChildren, encoder)
 {
 }