remove duplicate geojson reader code

master
Oliver Tonnhofer 2013-12-02 14:13:53 +01:00
parent e8f4098e18
commit fdb34b7b4c
2 changed files with 1 additions and 44 deletions

View File

@ -163,45 +163,6 @@ func constructPolygons(obj *object) ([]polygon, error) {
}
}
type GeoJson struct {
object object
}
func NewGeoJson(r io.Reader) (*GeoJson, error) {
result := &GeoJson{}
decoder := json.NewDecoder(r)
err := decoder.Decode(&result.object)
if err != nil {
return nil, err
}
return result, nil
}
func (gj *GeoJson) Geoms() ([]*geos.Geom, error) {
polygons, err := constructPolygons(&gj.object)
if err != nil {
return nil, err
}
g := geos.NewGeos()
defer g.Finish()
result := []*geos.Geom{}
for _, p := range polygons {
geom, err := geosPolygon(g, p)
if err != nil {
return nil, err
}
result = append(result, geom)
}
return result, err
}
func geosRing(g *geos.Geos, ls lineString) (*geos.Geom, error) {
coordSeq, err := g.CreateCoordSeq(uint32(len(ls)), 2)
if err != nil {

View File

@ -140,11 +140,7 @@ func NewFromGeoJsonWithBuffered(source string, buffer float64) (*Limiter, error)
}
defer f.Close()
gj, err := geojson.NewGeoJson(f)
if err != nil {
return nil, err
}
geoms, err := gj.Geoms()
geoms, err := geojson.ParseGeoJson(f)
if err != nil {
return nil, err
}