eine Linie zu einem Ring Drehen ist eine einfache Aufgabe in Grafikprogrammen wie GIMP:Polare Transformation in CSS3?
Filter ⇒ Distorts ⇒ Polar Coordinates http://adamhaskell.net/img/transform.png
Ich versuche zu arbeiten, wenn es möglich ist, den gleichen Effekt in CSS zu erzeugen.
So arbeitete ich Sie folgendes:
- Der obige Algorithmus ordnet
x
zur
undy
zuθ
- Um dies zu tun,
x
auf den Bereich von[0,w/2]
skaliert wird, mitw
wobei die Breite das Bild - Auch
y
wird auf den Bereich von[0,2π]
- skaliert, um t Polarkoordinaten zurück in kartesische Koordinaten transformieren:
xc = rp*cos(θp)
undyc = rp*sin(θp)
- Das Ergebnis wird dann so übersetzt, dass der Ursprung in der Mitte des Bildes liegt. So
- haben wir:
x' = (x/2)*cos(y/h*2π) + w/2;
y' = (x/2)*sin(y/h*2π) + h/2;
Dies alles schön und gut, aber wie kann ich produzieren eine solche in CSS verwandeln? Vermutlich ist keines der Schlüsselwörter nützlich, also muss es eine Matrix-Transformation sein. Nun, ich habe keine Ahnung, wie man aus den beiden obigen Gleichungen eine Matrix zusammensetzt, geschweige denn, wie man sie in einer CSS-Transformation darstellt.
Kann mir jemand bei diesem letzten Schritt helfen?
+1 für diese interessante Frage – dajood