library(tidyverse)
Kosmisk Floræ
Generativ Kunst
Generative aRt
R
Eller:
- Cosmic Florae
- Flores Cosmiques
- Kosmische Florae
Baseret på sommerfugle kurven, der i polære koordinater er defineret ved:
\[ r = \exp^{\sin\theta} - 2\cos(4\theta) + 5 \sin^5(\frac{2\theta - \pi}{24}) \] Det skriver vi en funktion til:
<- function(theta){
calc exp(sin(theta)) - 2*cos(4*theta) + sin((2*theta - pi ) /24)^5
}
Så prepper vi noget data:
<- seq(0,12*pi, 0.1)
A <- calc(A)
r <- seq(0,12*pi, 2.1*pi)
B <- lapply(B, function(x) A - x) %>% unlist() C
A giver os en række tal fra 0 til 12 gange pi. I r har vi så de matchende koordinater der giver sommerfuglekurven. B giver os også en række tal, men med andre step end vi havde i A. Og i C trækker vi værdierne fra B fra værdierne i A - som i, den første værdi i B trækkes fra alle værdier i A, den anden værdi i B trækkes fra alle værdier i A osv. Det giver os grundlæggende en rotation.
Så plotter vi:
tibble(theta = C, r = rep(r, times = length(C)/length(r))) %>%
ggplot(aes(x=theta, y = r, color = r, alpha = 0.0001)) +
geom_point() +
coord_polar() +
theme_void()+
theme(legend.position = "none",
plot.background = element_rect(fill = "black")) +
scale_color_gradientn(colours = c("red", "blue", "green"))
ggsave("Kosmisk_Florae-1.png")
Nice.