Firefox Browser (mainly from piphi)

by sonone, Apr 29, 2020, 1:01 PM

It was mainly piphi's idea (I just helped with the shading) and I thought it would make a good addition to the browsers. Here it is:[asy]
/**
* Firefox
*
* Made by piphi and sonone
* 
* For more information go to the link below.
* https://artofproblemsolving.com/wiki/index.php/User_talk:Piphi#Firefox_Logo
*/
path circ = Circle((64,64),30)--cycle;

path upper = (111,81)..(102,98)..(95,106)..(87,115)..(81,124);
path q = (81,124)..(68,112)..(62,94);
path i = (76,82)..(96,70)..(96,49);
path ll = (111,81)..(106,61)..(96,49);

picture highest_tail_shade;
path two=upper--q--i--ll--cycle;
pen[][] firefox2={{rgb(255,242,77),rgb(255,219,63),rgb(251,122,83)}};
latticeshade(highest_tail_shade,rotate(110)*two,firefox2);
add(rotate(-110)*highest_tail_shade);

void fillmyway(picture pic=currentpicture,pair C,path P,real[] r,pen[] p,int n=100)
{
int m=r.length;
for(int k=n;k>0;--k)
{
real[] g(real rr)
{
real qq=70,ss=0; real[] col={0,0,0};
for(int kk=0;kk<r.length-1;++kk)
{
real h=r[kk+1]-r[kk];
for (real t=0.05;t<1;t+=0.1)
{
real rt=r[kk]+t*h;
col+=exp(-qq*(rr-rt)^2)*h*((1-t)*colors(rgb(p[kk]))+t*colors(rgb(p[kk+1])));
ss+=exp(-qq*(rr-rt)^2)*h;
}
}
return col/ss;
}
real[] col=g(k/n);
unfill(shift(C)*scale(k/n)*shift(-C)*P);
fill(shift(C)*scale(k/n)*shift(-C)*P,rgb(col[0],col[1],col[2]));
}
}

pen[] p={rgb(109,93,228),rgb(104,88,218),rgb(167,66,233),rgb(188,59,231),rgb(170,51,216)};
real[] r={0,0.45,0.8,0.9,1};

fillmyway((50,45),circ,r,p);

//fox belly
path a = (76,82)..(66,38)..(35,66);

//fox lower mouth
path b = (35,66)..(27,69)..(23,75);

//fox upper mouth
path c = (23,75)..(32,79)..(44,76);

//fox middle nose
path d = (44,76)..(54,74)..(63,75);

//fox upper nose
path e = (63,75)..(53,79.5)..(46,84)..(41,89)..(32,92);

//fox left ear
path f = (32,92)..(29,99)..(29,106);

//fox left back
path g = (29,106)..(14,38)..(64,9);

//fox right back
path h = (64,9)..(113,35)..(105,100);
path hh = (105,100)..(113,35)..(64,9);

// fox outer part of inner tail
path i = (76,82)..(96,70)..(96,49);

// fox upper belly
path j = (39,59)..(63,38)..(96,49)..(111,81);

// fox middle belly extra
path k = (105,100)..(108,92)..(111,81);

path kk = (111,81)..(108,92)..(105,100);

// fox lower chin
path l = (58,70)..(45,67)..(39,59);

// fox snout
path m = (63,75)..(60,71)..(58,70);

//fox outer right ear
path n = (32,92)..(37,98)..(45,102);

//fox inner right ear
path o = (45,102)..(44,95)..(46,84);

// fox middle belly
path p = (8,64)..(39,17)..(111,81)..(102,98)..(95,106)..(87,115)..(81,124);
path upper = (111,81)..(102,98)..(95,106)..(87,115)..(81,124);

// fox upper left tail
path q = (81,124)..(68,112)..(62,94);

// updated belly
path aA=(39,59)..(65,40)..(76,82);

//updated fox upper belly
path jJ=(111,81)..(96,49)..(47,43)..(35,66);

path ll = (111,81)..(106,61)..(96,49);

// updated fox upper belly extra
path jJ1=(96,49)..(46.5,43.5)..(35,66);

path g1=(29,106)..(9.3,72)..(14,38);

path p1=(8,64)..(39,17)..(111,81);

picture ms;
path one=aA--i--jJ1--b--c--d--m--l--cycle;
pen[][] firefox1={{yellow+orange,rgb(255,172,28),orange+.5*red}};
latticeshade(ms,rotate(90)*one,firefox1);
add(rotate(-90)*ms);

picture bs;
path two=jJ--b--c--d--e--f--g1--p1--cycle;
pen[][] firefox1={{rgb(255,227,67),rgb(255,149,19),rgb(255,92,50),rgb(255,48,82)}};
latticeshade(bs,rotate(130)*two,firefox1);
add(rotate(-130)*bs);

picture right_ear_shade;
path two=n--o--(46,84)..(41,89)..(32,92)--cycle;
pen[][] firefox2={{rgb(255,189,70),rgb(255,155,59),rgb(255,80,56)}};
latticeshade(right_ear_shade,rotate(130)*two,firefox2);
add(rotate(-130)*right_ear_shade);


picture lowest_tail_shade;
path two=p1--kk--hh--(64,9)..(25,24)..(8,64)--cycle;
pen[][] firefox2={{rgb(254,228,78),rgb(250,129,85),rgb(229,11,113)}};
latticeshade(lowest_tail_shade,rotate(110)*two,firefox2);
add(rotate(-110)*lowest_tail_shade);

clip(currentpicture, g--h--(81,124)--cycle);

shipout(bbox(lightgrey+3mm,FillDraw(lightgrey)));
[/asy]
code highlights

Comment

1 Comment

The post below has been deleted. Click to close.
This post has been deleted. Click here to see post.
Looks good.

by Catoptrics, Apr 29, 2020, 11:50 PM

Old material is mostly Asymptote, new material is calculator programming

avatar

sonone
Archives
+ April 2023
+ August 2022
+ April 2021
+ August 2020
Shouts
Submit
  • I still exist as well.

    by G.G.Otto, Aug 11, 2023, 2:44 AM

  • hello I'm still here lol

    by player01, Aug 6, 2022, 6:24 PM

  • [REVIVAL] I will start posting more calculator relating posts very soon. Even though school has been busy, I have been programming my calculators a decent amount, so I have a lot to share...

    by sonone, Feb 18, 2022, 10:29 PM

  • wow its been like 2.5 years since geo class

    by pieMax2713, Feb 4, 2022, 8:38 PM

  • @violin21, I've been very busy with school lately and haven't been able to add another lesson. I will when i get a free moment

    by sonone, Aug 19, 2021, 12:45 AM

  • ORZ CODER

    by samrocksnature, Aug 9, 2021, 9:57 PM

  • Could you make more Asymptote lessons on your "How to do Asymptote" blog?

    by violin21, Aug 9, 2021, 7:26 PM

  • You can take it, just C&P the CSS into your CSS area

    by sonone, Apr 17, 2021, 10:08 PM

  • how can we take the CSS if we have permission to not take it?

    by GoogleNebula, Apr 17, 2021, 5:22 PM

  • That is awesome!

    by sonone, Apr 15, 2021, 10:09 PM

  • I modified your dodecahedron and got:
    [asy]
    import three;
    import solids;
    size(300);
    currentprojection=orthographic(0,1.3,1.2);
    light(0,5,10);

    real phi=(sqrt(6)+1)/3;
    real g=(phi-1)/2;
    real s=1/2;
    real a=sqrt(1-phi*phi/4-g*g)+phi/2;

    triple[] d;
    d[0]=(phi

    by Andrew2019, Mar 26, 2021, 12:15 AM

  • Not too many, just changing the color here and there. I really like your CSS!

    by sonone, Feb 2, 2021, 10:35 AM

  • Nice!

    I see you're making changes to the CSS. :)

    by G.G.Otto, Feb 1, 2021, 9:26 PM

  • I'm learning Java now!

    by sonone, Feb 1, 2021, 5:56 PM

  • And I took part of it from CaptainFlint and then added a ton of modifications. ;)

    by G.G.Otto, Dec 1, 2020, 8:56 AM

98 shouts
Tags
About Owner
  • Posts: 2106
  • Joined: Aug 20, 2016
Blog Stats
  • Blog created: Mar 28, 2020
  • Total entries: 61
  • Total visits: 4959
  • Total comments: 146
Search Blog
a