object IterativeViewshed
A Spark-enabled implementation of R2 [1] viewshed.
1. Franklin, Wm Randolph, and Clark Ray. "Higher isn’t necessarily better: Visibility algorithms and experiments." Advances in GIS research: sixth international symposium on spatial data handling. Vol. 2. Taylor & Francis Edinburgh, 1994.
- Alphabetic
- By Inheritance
- IterativeViewshed
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
apply[K, V](elevation: RDD[(K, V)] with Metadata[TileLayerMetadata[K]], ps: Seq[Viewpoint], maxDistance: Double, curvature: Boolean = true, operator: AggregationOperator = Or, epsilon: Double = 1/math.Pi, scatter: Boolean = true)(implicit arg0: (K) ⇒ SpatialKey, arg1: ClassTag[K], arg2: (V) ⇒ Tile): RDD[(K, Tile)] with Metadata[TileLayerMetadata[K]]
The main entry-point for the iterative viewshed implementation.
The main entry-point for the iterative viewshed implementation. Takes a layer, some source points, and other ancillary information and produces a viewshed layer.
Parameters given in units of meters interact with the layer (approximate) layer resolution, which is computed in this function. That approximation is done by reprojecting keys to EPSG:4326, then converting degrees to meters, then dividing the number of meters by the number of pixels.
- elevation
The elevation layer; pixel values are interpreted as being in units of "meters"
- ps
Viewshed source points; their construction and interpretation is described above
- maxDistance
The maximum distance that rays are allowed to travel; a lower number reduces computational cost. This is given in units of meters.
- curvature
Whether or not to take the curvature of the Earth into account
- operator
The aggregation operator to use (e.g. Or)
- epsilon
Rays within this many radians of horizontal (vertical) are considered to be horizontal (vertical)
- scatter
Whether to allow light to move (one pixel) normal to the ray
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()
- implicit def coordinatesToPoints(points: Seq[Coordinate]): Seq[Viewpoint]
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
toString(): String
- Definition Classes
- AnyRef → Any
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()