Documentation ¶
Overview ¶
Package vector_tile provides the go code needed to read and write Mapbox vector tiles (https://github.com/mapbox/vector-tile-spec). Most of the code is autogenerated, but there are a few helpers the make encoded and decoded the tiles a little easier.
Package vector_tile is a generated protocol buffer package.
It is generated from these files:
vector_tile.proto
It has these top-level messages:
Tile
Index ¶
- Constants
- Variables
- func Encode(tile *Tile) ([]byte, error)
- func EncodeGzipped(tile *Tile) ([]byte, error)
- type Tile
- type Tile_Feature
- func (*Tile_Feature) Descriptor() ([]byte, []int)
- func (m *Tile_Feature) GetGeometry() []uint32
- func (m *Tile_Feature) GetId() uint64
- func (m *Tile_Feature) GetTags() []uint32
- func (m *Tile_Feature) GetType() Tile_GeomType
- func (*Tile_Feature) ProtoMessage()
- func (m *Tile_Feature) Reset()
- func (m *Tile_Feature) String() string
- type Tile_GeomType
- type Tile_Layer
- func (*Tile_Layer) Descriptor() ([]byte, []int)
- func (m *Tile_Layer) ExtensionMap() map[int32]proto.Extension
- func (*Tile_Layer) ExtensionRangeArray() []proto.ExtensionRange
- func (m *Tile_Layer) GetExtent() uint32
- func (m *Tile_Layer) GetFeatures() []*Tile_Feature
- func (m *Tile_Layer) GetKeys() []string
- func (m *Tile_Layer) GetName() string
- func (m *Tile_Layer) GetValues() []*Tile_Value
- func (m *Tile_Layer) GetVersion() uint32
- func (*Tile_Layer) ProtoMessage()
- func (m *Tile_Layer) Reset()
- func (m *Tile_Layer) String() string
- type Tile_Value
- func (*Tile_Value) Descriptor() ([]byte, []int)
- func (m *Tile_Value) ExtensionMap() map[int32]proto.Extension
- func (*Tile_Value) ExtensionRangeArray() []proto.ExtensionRange
- func (m *Tile_Value) GetBoolValue() bool
- func (m *Tile_Value) GetDoubleValue() float64
- func (m *Tile_Value) GetFloatValue() float32
- func (m *Tile_Value) GetIntValue() int64
- func (m *Tile_Value) GetSintValue() int64
- func (m *Tile_Value) GetStringValue() string
- func (m *Tile_Value) GetUintValue() uint64
- func (*Tile_Value) ProtoMessage()
- func (m *Tile_Value) Reset()
- func (m *Tile_Value) String() string
Constants ¶
const Default_Tile_Feature_Id uint64 = 0
const Default_Tile_Layer_Extent uint32 = 4096
const Default_Tile_Layer_Version uint32 = 1
Variables ¶
var Tile_GeomType_name = map[int32]string{
0: "UNKNOWN",
1: "POINT",
2: "LINESTRING",
3: "POLYGON",
}
var Tile_GeomType_value = map[string]int32{
"UNKNOWN": 0,
"POINT": 1,
"LINESTRING": 2,
"POLYGON": 3,
}
Functions ¶
func EncodeGzipped ¶
EncodeGzipped gzips the data after encoding the tile via protocol buffers.
Types ¶
type Tile ¶
type Tile struct { Layers []*Tile_Layer `protobuf:"bytes,3,rep,name=layers" json:"layers,omitempty"` XXX_extensions map[int32]proto.Extension `json:"-"` XXX_unrecognized []byte `json:"-"` }
func DecodeGzipped ¶
DecodeGzipped first ungzips the data before having the protobuf library decode the data into a tile.
func (*Tile) Descriptor ¶
func (*Tile) ExtensionRangeArray ¶
func (*Tile) ExtensionRangeArray() []proto.ExtensionRange
func (*Tile) GetLayers ¶
func (m *Tile) GetLayers() []*Tile_Layer
func (*Tile) ProtoMessage ¶
func (*Tile) ProtoMessage()
type Tile_Feature ¶
type Tile_Feature struct { Id *uint64 `protobuf:"varint,1,opt,name=id,def=0" json:"id,omitempty"` // Tags of this feature are encoded as repeated pairs of // integers. // A detailed description of tags is located in sections // 4.2 and 4.4 of the specification Tags []uint32 `protobuf:"varint,2,rep,packed,name=tags" json:"tags,omitempty"` // The type of geometry stored in this feature. Type *Tile_GeomType `protobuf:"varint,3,opt,name=type,enum=vector_tile.Tile_GeomType,def=0" json:"type,omitempty"` // Contains a stream of commands and parameters (vertices). // A detailed description on geometry encoding is located in // section 4.3 of the specification. Geometry []uint32 `protobuf:"varint,4,rep,packed,name=geometry" json:"geometry,omitempty"` XXX_unrecognized []byte `json:"-"` }
Features are described in section 4.2 of the specification
func (*Tile_Feature) Descriptor ¶
func (*Tile_Feature) Descriptor() ([]byte, []int)
func (*Tile_Feature) GetGeometry ¶
func (m *Tile_Feature) GetGeometry() []uint32
func (*Tile_Feature) GetId ¶
func (m *Tile_Feature) GetId() uint64
func (*Tile_Feature) GetTags ¶
func (m *Tile_Feature) GetTags() []uint32
func (*Tile_Feature) GetType ¶
func (m *Tile_Feature) GetType() Tile_GeomType
func (*Tile_Feature) ProtoMessage ¶
func (*Tile_Feature) ProtoMessage()
func (*Tile_Feature) Reset ¶
func (m *Tile_Feature) Reset()
func (*Tile_Feature) String ¶
func (m *Tile_Feature) String() string
type Tile_GeomType ¶
type Tile_GeomType int32
GeomType is described in section 4.3.4 of the specification
const ( Tile_UNKNOWN Tile_GeomType = 0 Tile_POINT Tile_GeomType = 1 Tile_LINESTRING Tile_GeomType = 2 Tile_POLYGON Tile_GeomType = 3 )
const Default_Tile_Feature_Type Tile_GeomType = Tile_UNKNOWN
func (Tile_GeomType) Enum ¶
func (x Tile_GeomType) Enum() *Tile_GeomType
func (Tile_GeomType) EnumDescriptor ¶
func (Tile_GeomType) EnumDescriptor() ([]byte, []int)
func (Tile_GeomType) String ¶
func (x Tile_GeomType) String() string
func (*Tile_GeomType) UnmarshalJSON ¶
func (x *Tile_GeomType) UnmarshalJSON(data []byte) error
type Tile_Layer ¶
type Tile_Layer struct { // Any compliant implementation must first read the version // number encoded in this message and choose the correct // implementation for this version number before proceeding to // decode other parts of this message. Version *uint32 `protobuf:"varint,15,req,name=version,def=1" json:"version,omitempty"` Name *string `protobuf:"bytes,1,req,name=name" json:"name,omitempty"` // The actual features in this tile. Features []*Tile_Feature `protobuf:"bytes,2,rep,name=features" json:"features,omitempty"` // Dictionary encoding for keys Keys []string `protobuf:"bytes,3,rep,name=keys" json:"keys,omitempty"` // Dictionary encoding for values Values []*Tile_Value `protobuf:"bytes,4,rep,name=values" json:"values,omitempty"` // The bounding box in this tile spans from 0..4095 units // Although this is an "optional" field it is required by the specification. // See https://github.com/mapbox/vector-tile-spec/issues/47 Extent *uint32 `protobuf:"varint,5,opt,name=extent,def=4096" json:"extent,omitempty"` XXX_extensions map[int32]proto.Extension `json:"-"` XXX_unrecognized []byte `json:"-"` }
Layers are described in section 4.1 of the specification
func (*Tile_Layer) Descriptor ¶
func (*Tile_Layer) Descriptor() ([]byte, []int)
func (*Tile_Layer) ExtensionMap ¶
func (m *Tile_Layer) ExtensionMap() map[int32]proto.Extension
func (*Tile_Layer) ExtensionRangeArray ¶
func (*Tile_Layer) ExtensionRangeArray() []proto.ExtensionRange
func (*Tile_Layer) GetExtent ¶
func (m *Tile_Layer) GetExtent() uint32
func (*Tile_Layer) GetFeatures ¶
func (m *Tile_Layer) GetFeatures() []*Tile_Feature
func (*Tile_Layer) GetKeys ¶
func (m *Tile_Layer) GetKeys() []string
func (*Tile_Layer) GetName ¶
func (m *Tile_Layer) GetName() string
func (*Tile_Layer) GetValues ¶
func (m *Tile_Layer) GetValues() []*Tile_Value
func (*Tile_Layer) GetVersion ¶
func (m *Tile_Layer) GetVersion() uint32
func (*Tile_Layer) ProtoMessage ¶
func (*Tile_Layer) ProtoMessage()
func (*Tile_Layer) Reset ¶
func (m *Tile_Layer) Reset()
func (*Tile_Layer) String ¶
func (m *Tile_Layer) String() string
type Tile_Value ¶
type Tile_Value struct { // Exactly one of these values must be present in a valid message StringValue *string `protobuf:"bytes,1,opt,name=string_value" json:"string_value,omitempty"` FloatValue *float32 `protobuf:"fixed32,2,opt,name=float_value" json:"float_value,omitempty"` DoubleValue *float64 `protobuf:"fixed64,3,opt,name=double_value" json:"double_value,omitempty"` IntValue *int64 `protobuf:"varint,4,opt,name=int_value" json:"int_value,omitempty"` UintValue *uint64 `protobuf:"varint,5,opt,name=uint_value" json:"uint_value,omitempty"` SintValue *int64 `protobuf:"zigzag64,6,opt,name=sint_value" json:"sint_value,omitempty"` BoolValue *bool `protobuf:"varint,7,opt,name=bool_value" json:"bool_value,omitempty"` XXX_extensions map[int32]proto.Extension `json:"-"` XXX_unrecognized []byte `json:"-"` }
Variant type encoding The use of values is described in section 4.1 of the specification
func (*Tile_Value) Descriptor ¶
func (*Tile_Value) Descriptor() ([]byte, []int)
func (*Tile_Value) ExtensionMap ¶
func (m *Tile_Value) ExtensionMap() map[int32]proto.Extension
func (*Tile_Value) ExtensionRangeArray ¶
func (*Tile_Value) ExtensionRangeArray() []proto.ExtensionRange
func (*Tile_Value) GetBoolValue ¶
func (m *Tile_Value) GetBoolValue() bool
func (*Tile_Value) GetDoubleValue ¶
func (m *Tile_Value) GetDoubleValue() float64
func (*Tile_Value) GetFloatValue ¶
func (m *Tile_Value) GetFloatValue() float32
func (*Tile_Value) GetIntValue ¶
func (m *Tile_Value) GetIntValue() int64
func (*Tile_Value) GetSintValue ¶
func (m *Tile_Value) GetSintValue() int64
func (*Tile_Value) GetStringValue ¶
func (m *Tile_Value) GetStringValue() string
func (*Tile_Value) GetUintValue ¶
func (m *Tile_Value) GetUintValue() uint64
func (*Tile_Value) ProtoMessage ¶
func (*Tile_Value) ProtoMessage()
func (*Tile_Value) Reset ¶
func (m *Tile_Value) Reset()
func (*Tile_Value) String ¶
func (m *Tile_Value) String() string