在我的标记中,我有一个这样的块:
<svg width="0" height="0" style="display:none" id="dummy-wedge">
<g class="dummy" transform="translate(100, 100)">
<defs>
<clipPath id="clip1">
<polygon id="clip1Shape" points="-100,-100 0,-100 0,0 -100,-20" />
</clipPath>
</defs>
<circle id="" cx="0" cy="0" r="52" fill-opacity="0"
stroke="#ffffff" stroke-opacity="0.6" stroke-width="50"
pointer-events="visiblePainted" clip-path="url(#clip1)" />
</g>
</svg>
我想要做的是抓取该块并将其克隆到不同的 svg 根元素中以创建一堆楔子,每个楔子都有不同的位置和剪辑段。这部分很酷,但令人沮丧的是,每个克隆的 clipPath 元素都需要接收一个新 ID,然后必须将其插入到匹配元素的 clip-path 属性中。
我知道如果所有弧的长度相同,我可以有一个共同的剪辑并使用旋转变换,但它们不一定是相同的长度。
是否可以使用拓扑关系而不是通过显式命名来声明剪辑多边形?或者,在使用路径之外,是否有更好的方法来定义这样的弧?
谢谢。