pub enum SortStrategy {
Unsorted,
SpatialMorton,
SpatialHilbert,
Id,
}Expand description
Controls how features inside a layer are reordered before encoding.
Reordering features changes their position in every parallel column (geometry, ID, and all properties simultaneously), so the caller must opt in explicitly.
Variants§
Unsorted
Preserve the original feature order — no reordering is applied.
This is the default.
SpatialMorton
Sort features by the Z-order (Morton) curve index of their first vertex.
Fast to compute. Spatially close features end up adjacent in the stream, improving RLE run lengths for location-correlated properties and CPU cache locality during client-side decoding.
Requires the sort-coords-iter feature.
SpatialHilbert
Sort features by the Hilbert curve index of their first vertex.
Slower to compute than Morton but achieves superior spatial locality.
Requires the sort-coords-iter feature.
Id
Sort features by their feature ID in ascending order.
Trait Implementations§
Source§impl Clone for SortStrategy
impl Clone for SortStrategy
Source§fn clone(&self) -> SortStrategy
fn clone(&self) -> SortStrategy
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for SortStrategy
impl Debug for SortStrategy
Source§impl Default for SortStrategy
impl Default for SortStrategy
Source§fn default() -> SortStrategy
fn default() -> SortStrategy
Source§impl IntoEnumIterator for SortStrategy
impl IntoEnumIterator for SortStrategy
Source§impl PartialEq for SortStrategy
impl PartialEq for SortStrategy
impl Copy for SortStrategy
impl Eq for SortStrategy
impl StructuralPartialEq for SortStrategy
Auto Trait Implementations§
impl Freeze for SortStrategy
impl RefUnwindSafe for SortStrategy
impl Send for SortStrategy
impl Sync for SortStrategy
impl Unpin for SortStrategy
impl UnsafeUnpin for SortStrategy
impl UnwindSafe for SortStrategy
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more