Skip to content

Commit 87ac641

Browse files
authored
Add Logo (#113)
* Add Logo * Add Logo to readme * fix max size of logo in readme * fix max size of logo in readme * fix max size of logo in readme * fix width in readme
1 parent ad16dab commit 87ac641

File tree

3 files changed

+112
-0
lines changed

3 files changed

+112
-0
lines changed

README.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
<img src="docs/src/assets/logo.svg" width="256"/>
2+
13
# ChainRules
24

35
[![Travis](https://travis-ci.org/JuliaDiff/ChainRules.jl.svg?branch=master)](https://travis-ci.org/JuliaDiff/ChainRules.jl)

docs/src/assets/logo.svg

Lines changed: 27 additions & 0 deletions
Loading

docs/src/assets/make_logo.jl

Lines changed: 83 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,83 @@
1+
using Pkg: @pkg_str
2+
# For reproducability only dependency this has is Luxor,
3+
# and it was created with Luxor v1.6.0
4+
pkg"add Luxor@v1.6"
5+
6+
using Luxor
7+
using Random
8+
9+
const bridge_len = 50
10+
11+
function chain(jiggle=0)
12+
shaky_rotate(θ) = rotate+ jiggle*(rand()-0.5))
13+
14+
### 1
15+
shaky_rotate(0)
16+
sethue(Luxor.julia_red)
17+
link()
18+
m1 = getmatrix()
19+
20+
21+
### 2
22+
sethue(Luxor.julia_green)
23+
translate(-50, 130);
24+
shaky_rotate/3);
25+
link()
26+
m2 = getmatrix()
27+
28+
setmatrix(m1)
29+
sethue(Luxor.julia_red)
30+
overlap(-1.3π)
31+
setmatrix(m2)
32+
33+
### 3
34+
shaky_rotate(-π/3);
35+
translate(-120,80);
36+
sethue(Luxor.julia_purple)
37+
link()
38+
39+
setmatrix(m2)
40+
setcolor(Luxor.julia_green)
41+
overlap(-1.5π)
42+
end
43+
44+
45+
function link()
46+
sector(50, 90, π, 0, :fill)
47+
sector(Point(0, bridge_len), 50, 90, 0, -π, :fill)
48+
49+
50+
rect(50,-3,40, bridge_len+6, :fill)
51+
rect(-50-40,-3,40, bridge_len+6, :fill)
52+
53+
sethue("black")
54+
move(Point(-50, bridge_len))
55+
arc(Point(0,0), 50, π, 0, :stoke)
56+
arc(Point(0, bridge_len), 50, 0, -π, :stroke)
57+
58+
move(Point(-90, bridge_len))
59+
arc(Point(0,0), 90, π, 0, :stoke)
60+
arc(Point(0, bridge_len), 90, 0, -π, :stroke)
61+
strokepath()
62+
end
63+
64+
function overlap(ang_end)
65+
sector(Point(0, bridge_len), 50, 90, -0., ang_end, :fill)
66+
sethue("black")
67+
arc(Point(0, bridge_len), 50, 0, ang_end, :stoke)
68+
move(Point(90, bridge_len))
69+
arc(Point(0, bridge_len), 90, 0, ang_end, :stoke)
70+
71+
strokepath()
72+
end
73+
74+
####################
75+
# Actually draw it
76+
77+
Random.seed!(16)
78+
Drawing(450,450, "logo.svg")
79+
origin()
80+
translate(50, -130);
81+
chain(0.5)
82+
finish()
83+
preview()

0 commit comments

Comments
 (0)