Geometric Shadow Calculations

Functions for calculating: (1) shadow height, (2) logical shadow flag, (3) shadow footprint, (4) Sky View Factor and (5) radiation load. Basic required inputs include a polygonal layer of obstacle outlines along with their heights (i.e. "extruded polygons"), sun azimuth and sun elevation. The package also provides functions for related preliminary calculations: breaking polygons into line segments, determining azimuth of line segments, shifting segments by azimuth and distance, constructing the footprint of a line-of-sight between an observer and the sun, and creating a 3D grid covering the surface area of extruded polygons.


shadow 0.3.0 (2017-03-31)

  • Initial complete release

shadow 0.3.2 (2017-05-29)

  • Fixed 'toSeg' behavior when 'x' has single attribute
  • Fixed 'shiftAz' behavior when 'object' is 'SpatialPoints*'
  • 'parallel' support in functions 'shadowHeight' and 'SVF'

shadow 0.3.3 (2017-06-14)

  • Fixed missing drawing in vignette

shadow 0.3.5 (2017-08-17)

  • Minor documentation update
  • SVF also works for 3D points (above ground)

shadow 0.4.0

  • Correction in SVF calculation
  • Updated SVF tests and documentation
  • Expanded SVF example based on Erell et al. (2012)

shadow 0.4.5

  • Added 'surfaceGrid' function
  • Added 'plotGrid3D' function
  • Added 'inShadow' function
  • Corrections in documentation

Reference manual

It appears you don't have a PDF plugin for this browser. You can click here to download the reference manual.


0.5.3 by Michael Dorman, 6 days ago

Report a bug at

Browse source code at

Authors: Michael Dorman [aut, cre], Evyatar Erell [ctb], Itai Kloog [ctb], Adi Vulkan [ctb]

Documentation:   PDF Manual  

MIT + file LICENSE license

Imports rgeos, raster, methods, parallel, plyr

Depends on sp

Suggests R.rsp, maptools, testthat, reshape2, threejs, rgdal

See at CRAN