R/makeTransparent.R

#' makeTransparent
#'
#' Some function from stack exchange that makes a colour transparent according to a given alpha.
#' @param alpha The alpha required.
#' @name makeTransparent
#' @export

makeTransparent <- function(..., alpha=0.5) {
  if(alpha<0 | alpha>1) {
    stop("alpha must be between 0 and 1")
  }
 
  alpha <- floor(255*alpha) 
  newColor <- col2rgb(col=unlist(list(...)), alpha=FALSE)

  .makeTransparent <- function(col, alpha) {
    rgb(red=col[1], green=col[2], blue=col[3], alpha=alpha, maxColorValue=255)
  }

  newColor <- apply(newColor, 2, .makeTransparent, alpha=alpha)
  return(newColor)
}
hferg/hfgr documentation built on May 17, 2019, 3:56 p.m.