make favicon version of logo

main
xenofem 2022-04-27 21:27:03 -04:00
parent 71528010d9
commit 9545ceb4f4
4 changed files with 72 additions and 41 deletions

View File

@ -0,0 +1,48 @@
struct transbeamPrefs {
real triangleRadius;
real borderInset;
real circleRadius;
real bigBeamRadius;
real smallBeamRadius;
real beamCount;
real beamAngle;
real starterBeamAngle;
}
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);
path beam(real angle, real innerRadius, real outerRadius) {
return arc((0,0), outerRadius, angle/2, -angle/2)--arc((0,0), innerRadius, -angle/2, angle/2)--cycle;
}
path bigBeam = beam(beamAngle, circleRadius, bigBeamRadius);
path smallBeam = beam(beamAngle, circleRadius, smallBeamRadius);
for (int i = 0; i < beamCount; ++i) {
if (i > 0) {
fill(rotate(360*i/beamCount)*bigBeam, bigBeamColor);
}
fill(rotate(360*(i+0.5)/beamCount)*smallBeam, smallBeamColor);
}
pair starterBeamTrianglePoint(real angle) {
pair circlePoint = circleRadius*dir(angle);
return intersectionpoint(circlePoint--(circlePoint+(triangleRadius,0)), outerBorder);
}
fill(starterBeamTrianglePoint(-starterBeamAngle/2)--arc((0,0), circleRadius, -starterBeamAngle/2, starterBeamAngle/2)--starterBeamTrianglePoint(starterBeamAngle/2)--cycle, bigBeamColor);
draw(outerBorder, transPink+(2*borderInset));
draw(scale(triangleRadius-borderInset)*borderTriangle, transBlue+borderInset);
}

View File

@ -0,0 +1,13 @@
import "transbeam-common.asy" as transbeam;
transbeamPrefs prefs;
prefs.triangleRadius = 100;
prefs.borderInset = 14;
prefs.circleRadius = 12;
prefs.bigBeamRadius = 36;
prefs.smallBeamRadius = 36;
prefs.beamCount = 3;
prefs.beamAngle = 40;
prefs.starterBeamAngle = 80;
drawTransbeam(prefs);

View File

@ -1,43 +1,13 @@
real triangleRadius = 100;
real borderInset = 6;
import "transbeam-common.asy" as transbeam;
real circleRadius = 12;
real bigBeamRadius = 36;
real smallBeamRadius = 25;
real beamCount = 12;
real beamAngle = 7;
real starterBeamAngle = 16;
transbeamPrefs prefs;
prefs.triangleRadius = 100;
prefs.borderInset = 6;
prefs.circleRadius = 12;
prefs.bigBeamRadius = 36;
prefs.smallBeamRadius = 25;
prefs.beamCount = 12;
prefs.beamAngle = 7;
prefs.starterBeamAngle = 16;
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);
path beam(real angle, real innerRadius, real outerRadius) {
return arc((0,0), outerRadius, angle/2, -angle/2)--arc((0,0), innerRadius, -angle/2, angle/2)--cycle;
}
path bigBeam = beam(beamAngle, circleRadius, bigBeamRadius);
path smallBeam = beam(beamAngle, circleRadius, smallBeamRadius);
for (int i = 0; i < beamCount; ++i) {
if (i > 0) {
fill(rotate(360*i/beamCount)*bigBeam, bigBeamColor);
}
fill(rotate(360*(i+0.5)/beamCount)*smallBeam, smallBeamColor);
}
pair starterBeamTrianglePoint(real angle) {
pair circlePoint = circleRadius*dir(angle);
return intersectionpoint(circlePoint--(circlePoint+(triangleRadius,0)), outerBorder);
}
fill(starterBeamTrianglePoint(-starterBeamAngle/2)--arc((0,0), circleRadius, -starterBeamAngle/2, starterBeamAngle/2)--starterBeamTrianglePoint(starterBeamAngle/2)--cycle, bigBeamColor);
draw(outerBorder, transPink+(2*borderInset));
draw(scale(triangleRadius-borderInset)*borderTriangle, transBlue+borderInset);
drawTransbeam(prefs);

BIN
static/favicon.ico Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 31 KiB