Documentation
¶
Overview ¶
Package wkbcommon 包含了 WKB and EWKB 编码相关的公共代码
Package wkbcommon 包含了 WKB and EWKB 编码相关的公共代码.
Index ¶
- Constants
- Variables
- func ReadByte(r io.Reader) (byte, error)
- func ReadFlatCoords0(r io.Reader, byteOrder binary.ByteOrder, stride int) ([]float64, error)
- func ReadFlatCoords1(r io.Reader, byteOrder binary.ByteOrder, stride int) ([]float64, error)
- func ReadFlatCoords2(r io.Reader, byteOrder binary.ByteOrder, stride int) ([]float64, []int, error)
- func ReadFloatArray(r io.Reader, byteOrder binary.ByteOrder, array []float64) error
- func ReadUInt32(r io.Reader, byteOrder binary.ByteOrder) (uint32, error)
- func WriteByte(w io.Writer, value byte) error
- func WriteFlatCoords0(w io.Writer, byteOrder binary.ByteOrder, coord []float64) error
- func WriteFlatCoords1(w io.Writer, byteOrder binary.ByteOrder, coords []float64, stride int) error
- func WriteFlatCoords2(w io.Writer, byteOrder binary.ByteOrder, flatCoords []float64, ends []int, ...) error
- func WriteFloatArray(w io.Writer, byteOrder binary.ByteOrder, array []float64) error
- func WriteUInt32(w io.Writer, byteOrder binary.ByteOrder, value uint32) error
- type ErrGeometryTooLarge
- type ErrUnexpectedType
- type ErrUnknownByteOrder
- type ErrUnknownType
- type ErrUnsupportedByteOrder
- type ErrUnsupportedType
- type Type
Constants ¶
const ( XDRID = 0 NDRID = 1 )
Byte order IDs.
const ( PointID = 1 LineStringID = 2 PolygonID = 3 MultiPointID = 4 MultiLineStringID = 5 MultiPolygonID = 6 GeometryCollectionID = 7 PolyhedralSurfaceID = 15 TINID = 16 TriangleID = 17 )
Geometry type IDs.
Variables ¶
var ( XDR = binary.BigEndian NDR = binary.LittleEndian )
Byte orders.
var MaxGeometryElements = [4]uint32{
0,
1 << 20,
1 << 15,
1 << 10,
}
MaxGeometryElements 是在不同级别解码的元素的最大数目.其主要目的是防止错误的输入造成过度的内存分配。 (担心被用作拒绝服务攻击。). FIXME 这个应当是局部的,不是全局的 FIXME 考虑每个几何图形的极限,而不是每一级极限。
Functions ¶
func ReadFlatCoords0 ¶
ReadFlatCoords0函数 读取平面坐标 0.
func ReadFlatCoords1 ¶
ReadFlatCoords1函数 读取平面坐标 1.
func ReadFlatCoords2 ¶
ReadFlatCoords2函数 读取平面坐标 2.
func ReadFloatArray ¶
ReadFloatArray函数 从 r 中读取一个 []float64.
func ReadUInt32 ¶
ReadUInt32函数 从 r 中读取一个 uint32.
func WriteFlatCoords0 ¶
WriteFlatCoords0函数 写入平面坐标 0 .
func WriteFlatCoords1 ¶
WriteFlatCoords1函数 写入平面坐标 1 .
func WriteFlatCoords2 ¶
func WriteFlatCoords2(w io.Writer, byteOrder binary.ByteOrder, flatCoords []float64, ends []int, stride int) error
WriteFlatCoords2函数 写入平面坐标 2 .
func WriteFloatArray ¶
WriteFloatArray函数 向 w 写入 一个[]float64.
Types ¶
type ErrGeometryTooLarge ¶
An ErrGeometryTooLarge 将返回当几何图形过大.
func (ErrGeometryTooLarge) Error ¶
func (e ErrGeometryTooLarge) Error() string
type ErrUnexpectedType ¶
type ErrUnexpectedType struct { Got interface{} Want interface{} }
An ErrUnexpectedType 将返回当遇到不符合要求的类型时..
func (ErrUnexpectedType) Error ¶
func (e ErrUnexpectedType) Error() string
type ErrUnknownByteOrder ¶
type ErrUnknownByteOrder byte
An ErrUnknownByteOrder 将返回当一个位置的 byte顺序是非法的时.
func (ErrUnknownByteOrder) Error ¶
func (e ErrUnknownByteOrder) Error() string
type ErrUnknownType ¶
type ErrUnknownType Type
An ErrUnknownType 将返回当遇到未知类型时
func (ErrUnknownType) Error ¶
func (e ErrUnknownType) Error() string
type ErrUnsupportedByteOrder ¶
type ErrUnsupportedByteOrder struct{}
An ErrUnsupportedByteOrder 将返回当遇到不支持的 byte order
func (ErrUnsupportedByteOrder) Error ¶
func (e ErrUnsupportedByteOrder) Error() string
type ErrUnsupportedType ¶
type ErrUnsupportedType Type
An ErrUnsupportedType 将返回当遇到不支持的类型时.
func (ErrUnsupportedType) Error ¶
func (e ErrUnsupportedType) Error() string