R/dd2dmslat.R

dd2dmslat <-
function (decdeg) 
{
    dd <- floor(abs(decdeg))
    m1 <- (abs(decdeg) - dd) * 60
    mm <- floor(m1)
    ss <- round((m1 - floor(m1)) * 60, 1)
    for (i in 1:length(ss)) {
        if (ss[i] >= 60) {
            mm[i] <- mm[i] + 1
            ss[i] <- 0
        }
    }
    for (i in 1:length(mm)) {
        if (mm[i] >= 60) {
            dd[i] <- dd[i] + 1
            mm[i] <- 0
        }
    }
    ns <- ifelse(abs(decdeg) - decdeg == 0, "N", "S")
    dms <- data.frame(dd, mm, ss, ns)
    names(dms) <- c("ydeg", "ymin", "ysec", "NS")
    return(dms)
}

Try the biogeo package in your browser

Any scripts or data that you put into this service are public.

biogeo documentation built on May 1, 2019, 8:05 p.m.