GetComponent[?, ProjectedExtent]: (? => TilerKeyMethods[K, K2]) 和 SpatialComponent: Boundable 是什么


def fromRdd[
K: GetComponent[?, ProjectedExtent]: (? => TilerKeyMethods[K, K2]),
V <: CellGrid,
K2: SpatialComponent: Boundable
](rdd: RDD[(K, V)],  scheme: ZoomedLayoutScheme):
(Int, TileLayerMetadata[K2]) =
_fromRdd[K, V, K2](rdd, scheme, None)

在FromRdd的定义中,我无法分解K、V和K2。我知道它们都是隐含的参数。但是GetComponent[?,ProjectedExtent]:(?=>TilerKeyMethods[K,K2](和SpatialComponent:Boundable是什么意思?有人能帮我个忙吗?非常感谢。

这样的表达式称为上下文边界。

  • GetComponent只是一个透镜类型类,在这种特殊情况下,这意味着类型K具有一个函数,允许我们从这个K类型的对象中获得ProjectedExtent

  • TilerKeyMethods是一个允许在ProjectedExtent键和布局键之间进行转换的类型类。

  • SpatialComponentTemporalComponent是两种透镜类型的两个类型别名:Component[K, SpatialKey]Component[K, TemporalKey]

  • Boundable是一个具有比较函数的类型类。

如果这对你来说足够了,请告诉我,你也可以随时在我们的GeoTrellis gitter频道上发布问题。我极力建议您浏览GeoTrellis文档,熟悉Scala语言概念,以便更好地理解这段代码。

相关内容

  • 没有找到相关文章

最新更新