【发布时间】:2019-08-19 11:30:12
【问题描述】:
在图形程序(如 GIMP)中,将一条线变成一个环是一项简单的任务:
(来源:adamhaskell.net)
我正在尝试确定是否可以在 CSS 中产生相同的效果。
所以我想出了以下内容:
- 上述算法将
x映射到r和y映射到θ - 为此,
x被缩放到[0,w/2]的范围,w是图像的宽度 - 另外,
y被缩放到[0,2π]的范围 - 要将极坐标转换回笛卡尔坐标:
xc = rp*cos(θp)和yc = rp*sin(θp) - 然后翻译结果,使原点位于图像的中心。
- 所以我们有:
x' = (x/2)*cos(y/h*2π) + w/2;
y' = (x/2)*sin(y/h*2π) + h/2;
这一切都很好,但我怎样才能在 CSS 中产生这样的转换呢?大概没有一个关键字是有用的,所以它必须是矩阵变换。好吧,我不知道如何从上面的两个方程构建一个矩阵,更不用说如何在 CSS 变换中表示它了。
谁能帮我完成这最后一步?
【问题讨论】:
-
+1 回答这个有趣的问题
标签: css css-transforms