diff --git a/DESCRIPTION b/DESCRIPTION index 8ce1693e..9b611e74 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -1,7 +1,7 @@ Package: rayshader Type: Package Title: Raytraces Elevation Matrices to Produce Global Illumination Relief Maps -Version: 0.3.1 +Version: 0.3.2 Date: 2018-06-30 Author: Tyler Morgan-Wall Maintainer: Tyler Morgan-Wall diff --git a/R/ray_shade.R b/R/ray_shade.R index a84941b3..44d8a50c 100644 --- a/R/ray_shade.R +++ b/R/ray_shade.R @@ -72,8 +72,8 @@ ray_shade = function(heightmap, anglebreaks=seq(40,50,1), sunangle=315, maxsearc } cl = parallel::makeCluster(numbercores, ...) doParallel::registerDoParallel(cl, cores = numbercores) - shadowmatrix = tryCatch({ - foreach::foreach(i=1:nrow(heightmap), .combine="rbind", .packages = c("rayshader")) %dopar% { + shadowmatrixlist = tryCatch({ + foreach::foreach(i=1:nrow(heightmap), .packages = c("rayshader")) %dopar% { rayshade_multicore(sunangle = sunangle_rad, anglebreaks = anglebreaks_rad, heightmap = heightmap, zscale = zscale, maxsearch = maxsearch, row = i-1, cache_mask = cache_mask[i,]) @@ -83,6 +83,7 @@ ray_shade = function(heightmap, anglebreaks=seq(40,50,1), sunangle=315, maxsearc parallel::stopCluster(cl) }, error = function (e) {}) }) + shadowmatrix = do.call(rbind,shadowmatrixlist) shadowmatrix[shadowmatrix<0] = 0 if(remove_edges) { shadowmatrix = shadowmatrix[c(-1,-nrow(shadowmatrix)),c(-1,-ncol(shadowmatrix))]