You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用SVG/JavaScript绘制两侧为圆弧的矩形,右侧圆弧无法外凸求助

问题原因

你当前右侧圆弧呈现内凹效果,核心是SVG path 椭圆弧指令(a)的sweep-flag参数设置错误导致的。你之前尝试调整rx、ry参数没有效果,是因为这两个参数仅控制圆弧的曲率半径,不会改变弧的绘制方向,因此无法调整凹凸朝向。

SVG椭圆弧指令的完整语法为:a rx ry x轴旋转角度 大弧标志 扫描标志 终点x 终点y,其中两个标志位的作用为:

  • 大弧标志:取值0/1,0表示选择短弧绘制,1表示选择长弧绘制
  • 扫描标志:取值0/1,0表示逆时针方向绘制弧,1表示顺时针方向绘制弧,该参数直接决定弧的凹凸朝向

解决方案

将代码中第一个圆弧指令的扫描标志从0改为1即可实现右侧外凸的效果,修改后的完整代码如下:

<svg height="200" width="300">
  <g stroke="none" fill="blue">
    <path d="
    M 150 0
    a 1 1 0 0 1 0 100
    l -100 0
    a 1 1 0 0 0 0 -100
    l 100 0
    Z
    "/>
  </g>
</svg>

内容的提问来源于stack exchange,提问作者AndiAna

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.01 16:06:03