本文整理汇总了Golang中github.com/whosonfirst/go-whosonfirst-geojson.WOFFeature.Id方法的典型用法代码示例。如果您正苦于以下问题:Golang WOFFeature.Id方法的具体用法?Golang WOFFeature.Id怎么用?Golang WOFFeature.Id使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类github.com/whosonfirst/go-whosonfirst-geojson.WOFFeature
的用法示例。
在下文中一共展示了WOFFeature.Id方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: LoadPolygonsForFeature
func (p WOFPointInPolygon) LoadPolygonsForFeature(feature *geojson.WOFFeature) ([]*geojson.WOFPolygon, error) {
id := feature.Id()
polygons := feature.GeomToPolygons()
var points int
for _, pl := range polygons {
points += pl.CountPoints()
}
p.Logger.Debug("%d has %d points", id, points)
if points >= p.CacheTrigger {
p.Logger.Debug("caching %d because it has E_EXCESSIVE_POINTS (%d)", id, points)
var c metrics.Counter
c = *p.Metrics.CountCacheSet
evicted := p.Cache.Add(id, polygons)
if evicted == true {
cache_size := p.CacheSize
cache_set := c.Count()
p.Logger.Warning("starting to push thing out of the cache %d sets on a cache size of %d", cache_set, cache_size)
}
go c.Inc(1)
}
return polygons, nil
}
示例2: LoadPolygonsForFeature
func (idx *WOFIndex) LoadPolygonsForFeature(feature *geojson.WOFFeature) ([]*geojson.WOFPolygon, error) {
id := feature.Id()
polygons := feature.GeomToPolygons()
var points int
for _, pl := range polygons {
points += pl.CountPoints()
}
idx.Logger.Debug("%d has %d points", id, points)
if points >= idx.CacheTrigger {
idx.Logger.Debug("caching %d because it has E_EXCESSIVE_POINTS (%d)", id, points)
evicted := idx.Cache.Add(id, polygons)
if evicted == true {
idx.Logger.Warning("starting to push thing out of the cache")
}
}
return polygons, nil
}