Package: affiner 0.4.0-4

affiner: A Finer Way to Render 3D Illustrated Objects in 'grid' Using Affine Transformations

Dilate, permute, project, reflect, rotate, shear, and translate 2D and 3D points. Supports parallel projections including oblique projections such as the cabinet projection as well as axonometric projections such as the isometric projection. Use 'grid's "affine transformation" feature to render illustrated flat surfaces.

Authors:Trevor L. Davis [aut, cre]

affiner_0.4.0-4.tar.gz
affiner_0.4.0-4.zip(r-4.7)affiner_0.4.0-4.zip(r-4.6)affiner_0.4.0-4.zip(r-4.5)
affiner_0.4.0-4.tgz(r-4.6-any)affiner_0.4.0-4.tgz(r-4.5-any)
affiner_0.4.0-4.tar.gz(r-4.7-any)affiner_0.4.0-4.tar.gz(r-4.6-any)
affiner_0.4.0-4.tgz(r-4.6-emscripten)
manual.pdf |manual.html
card.svg |card.png
affiner/json (API)
NEWS

# Install 'affiner' in R:
install.packages('affiner', repos = c('https://trevorld.r-universe.dev', 'https://cloud.r-project.org'))

Bug tracker:https://github.com/trevorld/affiner/issues

Pkgdown/docs site:https://trevorldavis.com

On CRAN:

Conda:

7.32 score 10 stars 7 packages 4 scripts 763 downloads 109 exports 1 dependencies

Last updated from:dffadb8bfa. Checks:9 OK. Indexed: yes.

TargetResultTimeFilesSyslog
linux-devel-x86_64OK152
source / vignettesOK214
linux-release-x86_64OK154
macos-release-arm64OK100
macos-oldrel-arm64OK111
windows-develOK108
windows-releaseOK216
windows-oldrelOK141
wasm-releaseOK116

Exports:aabb_polygon2daffine_settingsaffineGrobaffiner_optionsangleangular_unitangular_unit<-arccosecantarccosinearccotangentarcsecantarcsinearctangentas_angleas_coord1das_coord2das_coord3das_ellipse2das_line2das_plane3das_point1das_polygon2das_segment2das_transform1das_transform2das_transform3dconvex_hull2dCoord1DCoord2DCoord3Dcosecantcosinecotangentcross_product2dcross_product3ddegreesdistance1ddistance2ddistance3ddot_product1ddot_product2ddot_product3dEllipse2Dgradiansgrid.affinegrid.isocubehas_intersectionhas_overlap2dintersectionis_angleis_congruentis_coord1dis_coord2dis_coord3dis_ellipse2dis_equivalentis_line2dis_parallelis_plane3dis_point1dis_polygon2dis_segment2dis_transform1dis_transform2dis_transform3disocubeGrobisotoxal_2ngon_inner_radiusisotoxal_2ngon_polygon2dLine2Dnormal2dnormal3dpainter_depthpainter_orderpermute2dpermute3dpi_radiansPlane3DPoint1DPolygon2Dproject1dproject2dproject3dradiansrectangle_polygon2dreflect1dreflect2dreflect3dregular_ngon_polygon2drotate2drotate3drotate3d_to_AAscale1dscale2dscale3dsecantSegment2Dshear2dshear3dsinestar_inner_radiusstar_polygon2dtangenttransform1dtransform2dtransform3dtranslate1dtranslate2dtranslate3dturns

Dependencies:R6

Geometry in affiner

Rendered fromgeometry.Rmdusingknitr::rmarkdownon May 17 2026.

Last update: 2026-04-02
Started: 2024-07-11

Introduction to affiner

Rendered fromaffiner.Rmdusingknitr::rmarkdownon May 17 2026.

Last update: 2024-12-11
Started: 2024-07-11

Readme and manuals

Help Manual

Help pageTopics
affiner: A Finer Way to Render 3D Illustrated Objects in 'grid' Using Affine Transformationsaffiner-package affiner
Axis-aligned bounding box polygonaabb_polygon2d
Compute Euclidean normabs.Coord1D abs.Coord2D abs.Coord3D
Compute 'grid' affine transformation feature viewports and transformation functionsaffine_settings
Affine transformation grobaffineGrob grid.affine
Get affiner optionsaffiner_options
Angle vectorsangle degrees gradians pi_radians radians turns
Implemented base methods for angle vectorsabs.angle angle-methods as.complex.angle as.double.angle format.angle print.angle
Get/set angular unit of angle vectorsangular_unit angular_unit<-
Cast to angle vectoras_angle as_angle.angle as_angle.character as_angle.complex as_angle.Coord2D as_angle.Coord3D as_angle.Line2D as_angle.numeric as_angle.Plane3D
Cast to coord1d objectas_coord1d as_coord1d.character as_coord1d.Coord1D as_coord1d.Coord2D as_coord1d.data.frame as_coord1d.list as_coord1d.matrix as_coord1d.numeric as_coord1d.Point1D
Cast to coord2d objectas_coord2d as_coord2d.angle as_coord2d.character as_coord2d.complex as_coord2d.Coord2D as_coord2d.Coord3D as_coord2d.data.frame as_coord2d.list as_coord2d.matrix as_coord2d.numeric
Cast to coord3d objectas_coord3d as_coord3d.angle as_coord3d.character as_coord3d.Coord2D as_coord3d.Coord3D as_coord3d.data.frame as_coord3d.list as_coord3d.matrix as_coord3d.numeric
Cast to Ellipse2D objectas_ellipse2d as_ellipse2d.Coord2D as_ellipse2d.numeric
Cast to Line2D objectas_line2d as_line2d.angle as_line2d.character as_line2d.Coord2D as_line2d.Line2D as_line2d.numeric as_line2d.Point1D
Cast to Plane3D objectas_plane3d as_plane3d.character as_plane3d.Coord3D as_plane3d.Line2D as_plane3d.numeric as_plane3d.Plane3D as_plane3d.Point1D
Cast to Point1D objectas_point1d as_point1d.character as_point1d.Coord1D as_point1d.numeric as_point1d.Point1D
Cast to Polygon2D objectas_polygon2d as_polygon2d.Coord2D as_polygon2d.Ellipse2D as_polygon2d.numeric as_polygon2d.Polygon2D
Cast to Segment2D objectas_segment2d as_segment2d.Coord2D as_segment2d.Polygon2D
Cast to 1D affine transformation matrixas_transform1d as_transform1d.default as_transform1d.transform1d
Cast to 2D affine transformation matrixas_transform2d as_transform2d.default as_transform2d.transform2d
Cast to 3D affine transformation matrixas_transform3d as_transform3d.default as_transform3d.transform3d
Compute axis-aligned rangesbounding_ranges range.Coord1D range.Coord2D range.Coord3D range.Ellipse2D range.Line2D range.Plane3D range.Point1D range.Segment2D
Compute centroids of coordinatescentroid mean.Coord1D mean.Coord2D mean.Coord3D
Compute 2D convex hullsconvex_hull2d convex_hull2d.Coord2D convex_hull2d.Polygon2D
1D coordinate vector R6 ClassCoord1D
2D coordinate vector R6 ClassCoord2D
3D coordinate vector R6 ClassCoord3D
Compute 2D vector cross productcross_product2d
Compute 3D vector cross productcross_product3d
1D Euclidean distancesdistance1d
2D Euclidean distancesdistance2d
3D Euclidean distancesdistance3d
Compute dot (inner) productsdot_product dot_product1d dot_product2d dot_product3d
2D ellipse R6 ClassEllipse2D
Plot coordinates, points, lines, polygons, ellipses, and segmentsgraphics lines.Coord2D lines.Ellipse2D lines.Line2D lines.Point1D lines.Polygon2D lines.Segment2D plot.Coord1D plot.Coord2D plot.Ellipse2D plot.Polygon2D plot.Segment2D points.Coord1D points.Coord2D
Whether two objects intersecthas_intersection has_intersection.default has_intersection.Line2D has_intersection.Plane3D has_intersection.Point1D
Whether two 2D shapes overlaphas_overlap2d has_overlap2d.Ellipse2D has_overlap2d.Polygon2D
The intersection of two objects.intersection intersection.Coord1D intersection.Coord2D intersection.Coord3D intersection.Ellipse2D intersection.Line2D intersection.Plane3D intersection.Point1D
Angle vector aware inverse trigonometric functionsarccosecant arccosine arccotangent arcsecant arcsine arctangent inverse-trigonometric-functions
Test whether an object is an angle vectoris_angle
Test whether two objects are congruentis_congruent is_congruent.angle is_congruent.numeric
Test whether an object has a Coord1D classis_coord1d
Test whether an object has a Coord2D classis_coord2d
Test whether an object has a Coord3D classis_coord3d
Test whether an object has an Ellipse2D classis_ellipse2d
Test whether two objects are equivalentis_equivalent is_equivalent.angle is_equivalent.Coord1D is_equivalent.Coord2D is_equivalent.Coord3D is_equivalent.Line2D is_equivalent.numeric is_equivalent.Plane3D is_equivalent.Point1D
Test whether an object has a Line2D classis_line2d
Whether two objects are parallelis_parallel is_parallel.Line2D is_parallel.Plane3D
Test whether an object has a Plane3D classis_plane3d
Test whether an object has a Point1D classis_point1d
Test whether an object has a Polygon2D classis_polygon2d
Test whether an object has a Segment2D classis_segment2d
Test if 1D affine transformation matrixis_transform1d
Test if 2D affine transformation matrixis_transform2d
Test if 3D affine transformation matrixis_transform3d
Isometric cube grobgrid.isocube isocubeGrob
Isotoxal 2n-gon inner radiusisotoxal_2ngon_inner_radius star_inner_radius
Isotoxal 2n-gon and star polygonisotoxal_2ngon_polygon2d star_polygon2d
2D lines R6 ClassLine2D
2D normal vectorsnormal2d normal2d.Coord2D normal2d.Line2D
3D normal vectorsnormal3d normal3d.character normal3d.Coord3D normal3d.Plane3D
Painter's depth, order, and sort methodspainter_depth painter_depth.Coord2D painter_depth.Coord3D painter_depth.Polygon2D painter_depth.Segment2D painter_order painter_order.Coord2D painter_order.Coord3D painter_order.Polygon2D sort.Coord2D sort.Coord3D
3D planes R6 ClassPlane3D
1D points R6 ClassPoint1D
2D polygon R6 ClassPolygon2D
Rectangle polygonrectangle_polygon2d
Regular n-gon polygonregular_ngon_polygon2d
Convert from 3D rotation matrix to axis-angle representation.rotate3d_to_AA
2D line segment R6 ClassSegment2D
1D affine transformation matricesproject1d reflect1d scale1d transform1d translate1d
2D affine transformation matricespermute2d project2d reflect2d rotate2d scale2d shear2d transform2d translate2d
3D affine transformation matricespermute3d project3d reflect3d rotate3d scale3d shear3d transform3d translate3d
Angle vector aware trigonometric functionscosecant cosine cotangent secant sine tangent trigonometric-functions