# Difference between revisions of "Polyhedron maps"

Brainsmoke (talk | contribs) (→Example) |
Brainsmoke (talk | contribs) (→Polyhedron Maps) |
||

Line 8: | Line 8: | ||

== Polyhedron Maps == | == Polyhedron Maps == | ||

− | By combining globe projection code (used for the HAR2009 shirt as well as for the Eth0:2012 Summer poster,) with polyhedron math code written for [[polyhedrone]], I was able to create a [https://github.com/brainsmoke/ | + | By combining globe projection code (used for the HAR2009 shirt as well as for the Eth0:2012 Summer poster,) with polyhedron math code written for [[polyhedrone]], I was able to create a [https://github.com/brainsmoke/polymap script] which projects the world map on the surface of a polyhedron. The script generates laser-cuttable polyhedral faces with notches which lock at the correct angle. |

[[File:Eth0_summer_2010_poster.png|160px|Eth0:2012 Summer poster]] | [[File:Eth0_summer_2010_poster.png|160px|Eth0:2012 Summer poster]] |

## Revision as of 02:09, 19 December 2014

Projects
| |
---|---|

Participants | Brainsmoke |

Skills | maths, lasercutting |

Status | Active |

Niche | Mechanics |

Purpose | World domination |

## Contents

## Polyhedron Maps

By combining globe projection code (used for the HAR2009 shirt as well as for the Eth0:2012 Summer poster,) with polyhedron math code written for polyhedrone, I was able to create a script which projects the world map on the surface of a polyhedron. The script generates laser-cuttable polyhedral faces with notches which lock at the correct angle.

## Source

## Example

Generated with:

./polymap.py --type sC --radius 120 --thickness 3 snubcubemap.svg

## Usage

usage: polymap.py [-h] [--type {T,O,C,D,I,tT,tC,bC,tO,tD,bD,tI,aC,aD,eC,eD,sC,sD,kT,kO,mC,kC,kI,mD,kD,jC,jD,oC,oD,gC,gD}] [--map {earth}] [--radius RADIUS] [--thickness THICKNESS] [--overhang OVERHANG] [--overcut OVERCUT] [--padding PADDING] [--sheetwidth SHEETWIDTH] [--cutwidth CUTWIDTH] [--flip] [--dpi DPI] [--invert] [--nonumbers] [--noengraving] filename positional arguments: filename output svg optional arguments: -h, --help show this help message and exit --type {T,O,C,D,I,tT,tC,bC,tO,tD,bD,tI,aC,aD,eC,eD,sC,sD,kT,kO,mC,kC,kI,mD,kD,jC,jD,oC,oD,gC,gD} solid type (Conway name) --map {earth} map engraving --radius RADIUS polyhedron's radius (mm) (default: 100) --thickness THICKNESS material thickness (mm) (default: 3.) --overhang OVERHANG overhang of notches (mm) (default: .3) --overcut OVERCUT overcut in corners to account for cutting width (mm) (default: 0) --padding PADDING padding between faces (mm) (default: 3.) --sheetwidth SHEETWIDTH maximum sheet width (mm) (default: 550) --cutwidth CUTWIDTH cutting width of laser(mm) (default: .15) --flip engrave on the backside --dpi DPI dpi used for svg, (default: 90, as used by inkscape) --invert engrave seas instead of landmass --nonumbers do not plot number hints --noengraving do not plot world map Supported solids: T: Tetrahedron (???) O: Octahedron (???) C: Cube (???) D: Dodecahedron I: Icosahedron tT: Truncated tetrahedron (???) tC: Truncated cube (???) bC: Truncated cuboctahedron tO: Truncated octahedron (???) tD: Truncated dodecahedron bD: Truncated icosidodecahedron tI: Truncated icosahedron aC: Cuboctahedron (???) aD: Icosidodecahedron eC: Rhombicuboctahedron eD: Rhombicosidodecahedron sC: Snub cube sD: Snub dodecahedron kT: Triakis tetrahedron kO: Triakis octahedron mC: Disdyakis dodecahedron kC: Tetrakis hexahedron kI: Triakis icosahedron mD: Disdyakis triacontahedron kD: Pentakis dodecahedron jC: Rhombic dodecahedron jD: Rhombic triacontahedron oC: Deltoidal icositetrahedron oD: Deltoidal hexecontahedron gC: Pentagonal icositetrahedron gD: Pentagonal hexecontahedron Errata: - Solids marked ??? may have too steep dihedral angles (different notches are required) - this script invokes inkscape to do a boolean path intersection operation this seems to fail for the tC solid (Europe's missing.)