by yuzawa-san
This is a macOS screensaver with various convex polyhedra bouncing across the screen. It is inspired by X11's ico and mxico.
Dozens of common polyhedra are included:
- Regular Polyhedra (R)
- Semi-Regular Polyhedra (S)
- Johnson Solids (J) source uses
N
designation - Prisms (P) - first ten (of infinite)
- Antiprisms (A) - first ten (of infinite)
- [ja] 小林光夫, 鈴木卓治: 正多角形を面にもつすべての凸多面体の頂点座標の計算, 電気通信大学紀要 編 5(2) 1992.12 p.p147~184
[en] Kobayashi, M., Suzuki, T., "Calculation of Coordinates of Vertices of All Convex Polyhedra with Regular Faces", Bulletin of the University of Electro-Communications, vol. 5, no. 2, pp.147-184, Dec. 1992.
The original paper describing an algorithm to calculate vertex coordinates. The authors later published coordinate data to thefj.sources
newsgroup on 1994-06-22 in multiple pieces with the subjectData of coordinates of all regular-faced convex polyhedra
. The newsgroup data is not accessible at this time. - [ja] 中田真秀: 正多面体、準正多面体、ザルガラー多面体、mxico
[en] Nakata, Maho: Regular polyhedron, quasi-regular polyhedron, Zalgaller polyhedron, mxico
This source downloaded the coordinate data from the newsgroup. This project imported the coordinate data. archive - [ja] 三谷純: 多面体データ
[en] Mitani, Jun: Polyhedral data
This source is a mirror of the previous source. The coordinate data was converted to OBJ file format. archive
The original data from Kobayashi and Suzuki lacks an SPDX license, but states that the original README files be included in this project. Here are their README files: English and Japanese
The minimum build target is macOS 10.15 (Catalina) for technical reasons. Manual installation or Homebrew installation is available.
- Download a release ZIP archive.
- Open
Polyhedra.saver.zip
to uncompress. - Due to the lack of code signing (that costs money), it is necessary to tell the system to trust this download by running
xattr -d "com.apple.quarantine" /path/to/your/Polyhedra.saver
- Open
Polyhedra.saver
which will load the screen saver System Preferences pane. This will install the screensaver. - Configure the screensaver.
Alternative shell version:
# Download a tagged version (see shield above)
curl -OL https://github.com/yuzawa-san/PolyhedraSaver/releases/download/TAG/Polyhedra.saver.zip
# Decompress
unzip Polyhedra.saver.zip
# Load screensaver into System Preferences
open Polyhedra.saver
# Clean up
rm -rf Polyhedra.saver.zip Polyhedra.saver
Ideally, this project would be distributed via Homebrew main repo, however that is not possible at this point in time. Please star this project if you want a homebrew distribution as they require projects to have a certain provenance to be added.
A self-maintained tap is available for use. To install tap:
brew tap yuzawa-san/tap
To install:
brew update
brew install --no-quarantine --cask polyhedrasaver
The code is not signed, so the --no-quarantine
flag will be needed to have your system trust it.
To update:
brew update
# upgrade all Homebrew software
brew upgrade
# update just this
brew upgrade --no-quarantine --cask polyhedrasaver
Open the Xcode project and build using the IDE or by running xcodebuild clean build -configuration Debug
Open the Polyhedra.saver
product, which will open the screensaver in the System Preferences.