Find the Pole of Inaccessibility (Visual Center) of a Polygon

A wrapper around the C++ library 'polylabel' from 'Mapbox', providing an efficient routine for finding the approximate pole of inaccessibility of a polygon, which usually serves as an excellent candidate for labeling of a polygon.


polylabelr

R-CMD-check CRANstatus Codecov testcoverage

polylabelr is an R wrapper for the polylabel package from Mapbox. It currently contains a single function, poi() that finds the pole of inaccessibility of a polygon, which usually makes for a good place to put a label on a polygon—hence the name.

Usage

# a concave polygon
x <- c(0, 4, 1, 6, 7, 7, 0, 0)
y <- c(0, 0, 1, 2, 1, 3, 2, 0)

# locate the pole of inaccessibility
p <- polylabelr::poi(x, y, precision = 0.01)

plot.new()
plot.window(range(x, na.rm = TRUE), range(y, na.rm = TRUE), asp = 1)
polypath(x, y, col = "grey", border = FALSE)
points(p)

Installation

CRAN version

install.packages("polylabelr")

Development version

remotes::install_github("jolars/polylabelr")

Modifications

The source code from geometry.hpp has been modified slightly by removing the use of some GCC diagnostic pragmas that caused warnings in R CMD check.

Versioning

polylabelr uses semantic versioning.

Reference manual

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

install.packages("polylabelr")

1.0.0 by Johan Larsson, 9 months ago


https://github.com/jolars/polylabelr, https://jolars.github.io/polylabelr/


Report a bug at https://github.com/jolars/polylabelr/issues


Browse source code at https://github.com/cran/polylabelr


Authors: Johan Larsson [aut, cre] (ORCID: , Kent Johnson [ctb] , Mapbox [cph] (polylabel , variant , and geometry libraries)


Documentation:   PDF Manual  


MIT + file LICENSE license


Imports Rcpp

Suggests covr, testthat, spelling, sf

Linking to Rcpp


Imported by mascarade.


See at CRAN