path弧形参数svg_关于⽮量图形:圆⾓为圆弧的SVG路径我需要创建带有圆⾓的SVG路径,以将其导出到DXF进⾏切割。我的问题是拐⾓应该是圆弧,⽽不是⼀些贝塞尔曲线。
使⽤arc命令以直⾓⽐较容易,因为半径也是从⾓到圆弧开始处的距离。从其他⾓度来看,情况更加复杂。
在给定⾓和半径的情况下,是否存在⽤于计算圆弧的起点和终点的公式?
右上⾓很容易,但左下⾓却⾮常棘⼿,因为我必须出直线必须终⽌的地⽅以及弧线的起点。
我发现带有svg椭圆弧的Calculationg链接了将端点转换为中⼼参数化的公式。这⽆济于事,因为我也不知道圆⼼必须在哪⾥。
如何计算(圆弧)的圆弧的SVG路径,仅计算圆弧,⽽不是两条直线之间的圆弧(代替尖⾓)。
仅当某些边平⾏于坐标系或更改半径时,SVG中三⾓形圆⾓上的解决⽅案才有效。
将圆⾓应⽤于路径/多边形会尝试使⽤⼀些带有线连接或⼏条三次曲线的技巧,我什么也不想。
即使是Inkscape(我⽤来在上⾯绘制图像)也使⽤5条三次曲线⽽不是圆弧,即使我使⽤圆来创建此形状也是如此。
如果您有⼀些建议可以解决这个问题,我将不胜感激。
浏览器通常通过⼀个或多个贝塞尔曲线来实现圆弧绘制,因此即使您计算出正确的圆弧绘制也不会改变任何内容。
它确实改变了我的情况,因为我⽣成的SVG不仅显⽰在浏览器中,⽽且后来导出到DXF以进⾏切割或绘图。 在这⾥重要的是要有⼀个具有恒定拐⾓半径的倒⾓。
如何使⽤贝塞尔曲线定义不直⾓的圆⾓,以免偏离圆弧? 有⽤于计算控制点的算法吗? 我想在拐⾓处只有⼀个弧/曲线,所以路径不会太复杂。
倒⾓的⼏何形状如下所⽰:
⾓度ABC等于θ(斜切⾓的外⾓)。 BD将其⼀分为⼆,因此⾓度DBC等于θ/ 2。 这意味着从拐⾓到点C和A的偏移距离d等于r×tan(θ/ 2)。
对于直⾓,θ= 90°且tan(θ/ 2)= 1,因此d等于r。
正如Robert Longson所说,您将很幸运到⼀个使⽤圆弧段导出倒⾓的SVG应⽤程序。 但是,通过⼀些努⼒,应该可以以编程⽅式检测和转换它们。
svg图形看起来⾮常有前途,谢谢。 稍后,我必须将路径导出到DXF以便剪切或绘制它们,因此这对我来说很重要。 在直⾓下已经可以很好地⼯作了,我也想允许其他⾓度。
更新:效果很好。 Math.abs(radius * Math.tan((180-angle)2)(如果您具有拐⾓和半径)。
@Dehalion,如果您可以从程序中轻松提取SVG路径的倒⾓,我会很好奇。 我有⼀个类似的问题,我需要以编程⽅式为具有⾮直⾓的激光切割图案⽣成圆⾓。
@Hypher Im正在为此准备博客,请稍候:D
博客帖⼦有任何更新吗?
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论