The goal of visor is to provide a set of tools for visibility analysis.
Installation
You can install the released version of visor fromCRAN with:
install.packages("visor")You can install the development version of visor fromGitHub with:
# install.packages("pak")pak::pak("CityRiverSpaces/visor")Example
This is a basic example which shows you how to use visor to calculate the isovist for view points on an arbitrary geometry (a line) and a set of occluders:
library(visor)library(sf)# Define occluder geoemtriesoccluders<-st_sfc(create_occluder(1,1,1,0.5),create_occluder(4,1,1.5,0.7),create_occluder(7,1,0.8,0.8),create_occluder(2,5,2,1),create_occluder(5,5,1,1.5),create_occluder(1,7,1.2,0.6),create_occluder(7,7,1.8,0.9))# Define the viewpoint source geometryline<-st_sfc(st_linestring(matrix(c(0,3,9,3), ncol=2, byrow=TRUE)))# Generate viewpointsvpoints<-get_viewpoints(line, density=1)# Calculate isovistisovist<-get_isovist(vpoints,occluders, ray_num=160, ray_length=5, remove_holes=FALSE)plot(isovist, col="blue")plot(occluders, col="grey", add=TRUE)plot(line, col="lightblue", add=TRUE)plot(vpoints, col="red", add=TRUE)
