【发布时间】:2015-07-25 10:06:48
【问题描述】:
很难解释这个问题。但我会尽力而为。 首先我做了2行,一行包含一个起点和一个终点,像这样
line = {
startPoint{x: , y:}
endPoint{x: , y:}
}
然后我在画布上绘制两条线,形成这样的三角形的角。
我现在将线条彼此分开,长度为 Radius*2,如下所示
那么我现在如何使用两个端点作为切点来绘制圆弧,如下所示
我需要使用 arc 还是可以使用 arcto 来做到这一点?如果是弧线;然后我如何给它开始绘图和结束点,以便它像上图中的图像所示那样绘制它。感谢您的宝贵时间,任何输入都会有所帮助。再次抱歉对问题的错误描述
- 更新 - 看来我没有完全解释我的问题。所以这里有一点更新。使用此处给出的示例。我最终得到一个椭圆形的圆圈。我想要得到的是线条之间的圆形。
【问题讨论】:
-
首先 moveTo 然后 lineTo (line1) 然后可能 quadraticCurveTo 使用线的交点作为中点和第 2 行的开始作为结束,最后 lineTo (Line 2 ) 可能是足够好的解决方案?跨度>
-
@TeroTolonen 我试过了,但我认为总是出错的部分是如何计算中间点 X,Y
-
互联网上应该有很多解决方案jsfiddle.net/justin_c_rounds/Gd2S2
-
@TeroTolonen 主要是我想要的,我唯一的问题是控制点离圆心更远,它不应该像半径这样有意义吗?跨度>
-
好吧,你可以移动控制点,但也请检查其他解决方案,它们都有不同的形状,取决于你在看什么是最好的,贝塞尔曲线将保证线条的连续性端点
标签: javascript html canvas html5-canvas trigonometry