马黑黑 发表于 2025-8-29 20:22

花飞飞 发表于 2025-8-29 20:20
你真会设计切的公式,怎么用都好用,还是万能的。

也不是万能,多个能吧

花飞飞 发表于 2025-8-29 21:05

马黑黑 发表于 2025-8-29 20:21


没有黑的,只有灰的{:4_170:}

花飞飞 发表于 2025-8-29 21:06

马黑黑 发表于 2025-8-29 20:22
也不是万能,多个能吧

多能就是大能,也是万能{:4_173:}

杨帆 发表于 2025-8-29 21:12

<img id="girl" width="400" height="400" src="https://pic.imgdb.cn/item/65a377bd871b83018ac3682a.gif" alt="" />
<script type="module">
        var path = createStartPath(50, 180, .5);
        girl.style.setProperty('clip-path',`path('${path}')`);

        // 创建星形函数,参数:
        // lines 边的总数
        // r1 外圆半径(确定顶角,取值依据为正方形边长)
        // r2 内圆半径(确定控制点,取值依据为曲线曲率期望值)
        // 注意 :r1 > r2 是设计初衷
        function createStartPath(lines, r1, r2=0) {
                var a = 360 / lines, path = 'M', bx1, by1, bx2, by2;
                Array.from({length: lines}).forEach((_,k) => {
                        var a1 = a * k,
                                a2 = a1 - a / 2,
                                x1 = (r1 + r1 * Math.cos(Math.PI / 180 * a1)).toFixed(2),
                                y1 = (r1 + r1 * Math.sin(Math.PI / 180 * a1)).toFixed(2),
                                x2 = (r1 + r2 * Math.cos(Math.PI / 180 * a2)).toFixed(2),
                                y2 = (r1 +r2 * Math.sin(Math.PI / 180 * a2)).toFixed(2);
                        if (k === 0) {
                                bx1 = x1;
                                by1 = y1;
                                bx2 = x2;
                                by2 = y2;
                                path += `${x1} ${y1} `;
                        } else {
                                path += `Q${x2} ${y2},${x1} ${y1} `;
                        }
                        if (k === lines - 1) path += `Q${bx2} ${by2},${bx1} ${by1}`;
                });
                return path;
        }
</script>

马黑黑 发表于 2025-8-29 21:51

杨帆 发表于 2025-8-29 21:12
var path = createStartPath(50, 180, .5);
        girl.style.setProperty('clip-path',`path('${path}')` ...

漂亮

马黑黑 发表于 2025-8-29 21:55

花飞飞 发表于 2025-8-29 21:06
多能就是大能,也是万能

万能没有人可以达到

马黑黑 发表于 2025-8-29 21:55

花飞飞 发表于 2025-8-29 21:05
没有黑的,只有灰的

灰黑是近亲

红影 发表于 2025-8-29 23:42

马黑黑 发表于 2025-8-29 19:44
只能试试,毕竟不专门作处理

嗯嗯,现在这个好看{:4_187:}

红影 发表于 2025-8-29 23:42

马黑黑 发表于 2025-8-29 19:44
这是划线外凸的效果

是的,把数字调了一下{:4_173:}

红影 发表于 2025-8-29 23:44

马黑黑 发表于 2025-8-29 19:45
就一个小函数,也许可以做些改动,还能做出更多的效果

这个函数很漂亮了,还能有一些变化,就更好了。{:4_187:}

马黑黑 发表于 2025-8-30 08:39

红影 发表于 2025-8-29 23:44
这个函数很漂亮了,还能有一些变化,就更好了。

这个函数可以脱离svg,就是说,使用的是svg的路径,却可以木有svg标签

马黑黑 发表于 2025-8-30 08:39

红影 发表于 2025-8-29 23:42
是的,把数字调了一下

需要调整的

马黑黑 发表于 2025-8-30 08:39

红影 发表于 2025-8-29 23:42
嗯嗯,现在这个好看

{:4_191:}

花飞飞 发表于 2025-8-30 11:45

马黑黑 发表于 2025-8-29 21:55
万能没有人可以达到

万万不能我可以{:4_170:}

花飞飞 发表于 2025-8-30 11:45

马黑黑 发表于 2025-8-29 21:55
灰黑是近亲

黑就是灰灰就是黑

马黑黑 发表于 2025-8-30 12:05

花飞飞 发表于 2025-8-30 11:45
黑就是灰灰就是黑

反正也差不多

马黑黑 发表于 2025-8-30 12:05

花飞飞 发表于 2025-8-30 11:45
万万不能我可以

万万能力不行

红影 发表于 2025-8-30 14:35

马黑黑 发表于 2025-8-30 08:39
这个函数可以脱离svg,就是说,使用的是svg的路径,却可以木有svg标签

具体是怎么实现的呢?

红影 发表于 2025-8-30 14:37

马黑黑 发表于 2025-8-30 08:39
需要调整的

这个很神奇,图片这样切一下很漂亮{:4_187:}

红影 发表于 2025-8-30 14:38

马黑黑 发表于 2025-8-30 08:39


神奇的星形切图路径。
页: 1 [2] 3 4 5 6 7
查看完整版本: 我切(动态生成svg星形切图路径)