diff --git a/resources/.gitignore b/resources/.gitignore new file mode 100644 index 0000000..c3405b6 --- /dev/null +++ b/resources/.gitignore @@ -0,0 +1,3 @@ +*.png +*.ico +*.svg diff --git a/resources/Makefile b/resources/Makefile new file mode 100644 index 0000000..372524e --- /dev/null +++ b/resources/Makefile @@ -0,0 +1,22 @@ +density := 600 + +icons := transbeam.svg favicon.ico transbeam-192.png transbeam-512.png transbeam-apple.png + +icons: $(icons) + +%.svg: %.asy transbeam-common.asy + asy -f svg $< + +transbeam-apple.png: transbeam.svg + convert -density $(density) -background white $< -resize 192x192 -extent 192x192 $@ + +transbeam-%.png: transbeam-%.svg + convert -density $(density) -background transparent $< -resize $*x$* -extent $*x$* $@ + +favicon.ico: transbeam-16.png transbeam-32.png transbeam-48.png transbeam-64.png + convert -background transparent $^ $@ + +install: icons + cp $(icons) ../static/ +clean: + rm *.svg *.png *.ico diff --git a/resources/transbeam-16.asy b/resources/transbeam-16.asy new file mode 100644 index 0000000..0bc25a4 --- /dev/null +++ b/resources/transbeam-16.asy @@ -0,0 +1,16 @@ +import "transbeam-common.asy" as transbeam; + +transbeamPrefs prefs; +prefs.triangleRadius = 100; +prefs.borderInset = 25; +prefs.circleRadius = 20; +prefs.beamCount = 0; +prefs.starterBeamAngle = 180; +// Not relevant with beamCount 0 +prefs.bigBeamRadius = 36; +prefs.smallBeamRadius = 36; +prefs.beamAngle = 40; + +drawTransbeam(prefs); + +fill(circle((0,0), prefs.circleRadius), transPink); diff --git a/resources/transbeam-192.asy b/resources/transbeam-192.asy new file mode 120000 index 0000000..cbbcb9c --- /dev/null +++ b/resources/transbeam-192.asy @@ -0,0 +1 @@ +transbeam.asy \ No newline at end of file diff --git a/resources/transbeam-favicon.asy b/resources/transbeam-32.asy similarity index 82% rename from resources/transbeam-favicon.asy rename to resources/transbeam-32.asy index 526b182..29ade49 100644 --- a/resources/transbeam-favicon.asy +++ b/resources/transbeam-32.asy @@ -5,9 +5,9 @@ prefs.triangleRadius = 100; prefs.borderInset = 14; prefs.circleRadius = 12; prefs.bigBeamRadius = 36; -prefs.smallBeamRadius = 36; +prefs.smallBeamRadius = 30; prefs.beamCount = 3; -prefs.beamAngle = 40; +prefs.beamAngle = 32; prefs.starterBeamAngle = 80; drawTransbeam(prefs); diff --git a/resources/transbeam-48.asy b/resources/transbeam-48.asy new file mode 100644 index 0000000..698ed23 --- /dev/null +++ b/resources/transbeam-48.asy @@ -0,0 +1,13 @@ +import "transbeam-common.asy" as transbeam; + +transbeamPrefs prefs; +prefs.triangleRadius = 100; +prefs.borderInset = 12; +prefs.circleRadius = 12; +prefs.bigBeamRadius = 36; +prefs.smallBeamRadius = 30; +prefs.beamCount = 7; +prefs.beamAngle = 15; +prefs.starterBeamAngle = 36; + +drawTransbeam(prefs); diff --git a/resources/transbeam-512.asy b/resources/transbeam-512.asy new file mode 120000 index 0000000..cbbcb9c --- /dev/null +++ b/resources/transbeam-512.asy @@ -0,0 +1 @@ +transbeam.asy \ No newline at end of file diff --git a/resources/transbeam-64.asy b/resources/transbeam-64.asy new file mode 100644 index 0000000..09725da --- /dev/null +++ b/resources/transbeam-64.asy @@ -0,0 +1,13 @@ +import "transbeam-common.asy" as transbeam; + +transbeamPrefs prefs; +prefs.triangleRadius = 100; +prefs.borderInset = 9; +prefs.circleRadius = 12; +prefs.bigBeamRadius = 33; +prefs.smallBeamRadius = 25; +prefs.beamCount = 9; +prefs.beamAngle = 10; +prefs.starterBeamAngle = 24; + +drawTransbeam(prefs); diff --git a/resources/transbeam-common.asy b/resources/transbeam-common.asy index 5e218a6..f657a7f 100644 --- a/resources/transbeam-common.asy +++ b/resources/transbeam-common.asy @@ -4,21 +4,22 @@ struct transbeamPrefs { real circleRadius; real bigBeamRadius; real smallBeamRadius; - real beamCount; + int beamCount; real beamAngle; real starterBeamAngle; } +pen transBlue = rgb("55cdfc"); +pen transPink = rgb("f7a8b8"); + +pen bigBeamColor = transPink; +pen smallBeamColor = transBlue; + +path borderTriangle = dir(90)--dir(210)--dir(330)--cycle; + void drawTransbeam(transbeamPrefs prefs) { unravel prefs; - pen transBlue = rgb("55cdfc"); - pen transPink = rgb("f7a8b8"); - - pen bigBeamColor = transPink; - pen smallBeamColor = transBlue; - - path borderTriangle = dir(90)--dir(210)--dir(330)--cycle; path outerBorder = scale(triangleRadius)*borderTriangle; fill(outerBorder, white); diff --git a/static/favicon.ico b/static/favicon.ico index 4cd2d19..daf05d5 100644 Binary files a/static/favicon.ico and b/static/favicon.ico differ diff --git a/static/index.html b/static/index.html index 2c2e053..d70d060 100644 --- a/static/index.html +++ b/static/index.html @@ -4,6 +4,8 @@ + + transbeam diff --git a/static/manifest.json b/static/manifest.json new file mode 100644 index 0000000..ef9b318 --- /dev/null +++ b/static/manifest.json @@ -0,0 +1,22 @@ +{ + "name": "transbeam", + "icons": [ + { + "src": "transbeam.svg", + "type": "image/svg+xml", + "sizes": "512x512" + }, + { + "src": "transbeam-192.png", + "type": "image/png", + "sizes": "192x192" + }, + { + "src": "transbeam-512.png", + "type": "image/png", + "sizes": "512x512" + } + ], + "start_url": "./", + "background_color": "white" +} diff --git a/static/transbeam-192.png b/static/transbeam-192.png new file mode 100644 index 0000000..04564d9 Binary files /dev/null and b/static/transbeam-192.png differ diff --git a/static/transbeam-512.png b/static/transbeam-512.png new file mode 100644 index 0000000..3be191e Binary files /dev/null and b/static/transbeam-512.png differ diff --git a/static/transbeam-apple.png b/static/transbeam-apple.png new file mode 100644 index 0000000..d5d822f Binary files /dev/null and b/static/transbeam-apple.png differ