Changelog
Source:NEWS.md
laridae (development version)
lari_tables()andlari_triangulate()returnedge_sources(mesh spec v0.2), andlari_edge_sources()returns it alone: one row per constraint edge and covering input segment (edge,segment,forward), from CGAL’s constraint contexts, so every coincident or collinear input is listed with its direction.segments$segmentandsegments$countare the lowest and the number of these rows.Meshed text:
lari_text()shapes a string in any installed font and meshes its glyphs as polygons with holes;lari_text_outline()returns the glyph rings (via ‘textshaping’ and ‘systemfonts’, both in Suggests) andlari_glyphs()meshes rings from any source, including the output of the ‘string2path’ package. New article “Meshed text”.
laridae 0.1.0
- Rebuilt from scratch on CGAL 6 (
Constrained_triangulation_plus_2with exact predicates andDelaunay_mesher_2) behind a persistent cpp11 handle:lari_new(),lari_add_points(),lari_add_segments(),lari_remove_points(),lari_remove_segments(),lari_refine(),lari_step(), and the contract tableslari_vertices(),lari_triangles(),lari_segments(),lari_depth(),lari_counts(). - Sizing fields:
lari_refine(size = )takes a function of position or a grid giving the local maximum triangle area. The default edge-length floor now accounts for the sizing field, so asizeargument is honoured instead of being capped at the coarse input-edge scale whenmin_edge_lengthis left at its default. - Hull-edge Steiner points created during refinement now get attributes interpolated along the nearest hull edge, rather than copied from the single nearest vertex (fixes attribute error at map scale).
-
lari_triangles()(andlari_tables()) gain adepth_distinctcolumn: the constraint depth with a doubled boundary counted once, matchingcdtr’sdepth_distinct. -
lari_tables()andlari_triangulate()now return a one-rowreportwith the backend, laridae and CGAL versions, the erase region, the edge floor, and the last refinement’s unrefined counts. - Licence is now GPL (>= 3), as required by CGAL’s Mesh_2.
- CGAL (>= 6.0) and Boost headers are supplied by the CRAN packages
RcppCGALandBHviaLinkingTo, so no system CGAL is required and the compiled code passesR CMD check --as-cran. For development, setCGAL_INCLUDE_DIRto build against stock CGAL headers instead (see README; that route is not CRAN-clean). - Builds on macOS and Windows: CGAL 6’s
Constrained_triangulation_plus_2includesboost/stl_interfaces/iterator_interface.hpp, which BH does not ship, so the three Boost.STLInterfaces headers it needs are vendored insrc/boost-extra(Boost Software License). Linux only built before because the system Boost filled the gap. Windows also gets asrc/Makevars.win. - The previous Rcpp/cgalh code is preserved on the
legacy-rcppbranch.