Class S2ShapeIndexCoder
java.lang.Object
com.google.common.geometry.S2ShapeIndexCoder
- All Implemented Interfaces:
S2Coder<S2ShapeIndex>
@GwtIncompatible("S2LaxPolylineShape and S2LaxPolygonShape")
public class S2ShapeIndexCoder
extends Object
implements S2Coder<S2ShapeIndex>
An encoder/decoder of
S2ShapeIndexs.
Values from the S2ShapeIndex returned by decode(Bytes, Cursor) are decoded
only when they are accessed. This allows for very fast initialization and no additional memory
use beyond the encoded data, and a cache of the clipped shapes that have been accessed. When
accessing the entire index, this uses slightly more memory than S2ShapeIndex, but uses
dramatically less memory when accessing only a few cells of the index.
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final S2ShapeIndexCoderAn instance of aS2ShapeIndexCoderwhich can encode anS2ShapeIndexbut will throw anIllegalArgumentExceptionif used to decode anS2ShapeIndex. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptiondecode(PrimitiveArrays.Bytes data, PrimitiveArrays.Cursor cursor) voidencode(S2ShapeIndex value, OutputStream output) Encodesvaluetooutput.
-
Field Details
-
INSTANCE
An instance of aS2ShapeIndexCoderwhich can encode anS2ShapeIndexbut will throw anIllegalArgumentExceptionif used to decode anS2ShapeIndex.
-
-
Constructor Details
-
S2ShapeIndexCoder
Constructs aS2ShapeIndexCoder.- Parameters:
shapes- the list of shapes, used only bydecode(PrimitiveArrays.Bytes, PrimitiveArrays.Cursor), commonly the result of invalid input: '{@link VectorCoder#FAST_SHAPE#decode(Bytes, Cursor)'}.
-
-
Method Details
-
encode
Description copied from interface:S2CoderEncodesvaluetooutput.- Specified by:
encodein interfaceS2Coder<S2ShapeIndex>- Throws:
IOException
-
decode
Description copied from interface:S2CoderDecodes a value of typeTfromdatastarting atcursor.position.cursor.positionis updated to the position of the first byte indatafollowing the encoded value.- Specified by:
decodein interfaceS2Coder<S2ShapeIndex>
-