AS3如何根据用户使用鼠标绘制线条的位置查找贝塞尔曲线的控制点

问题描述 投票:0回答:1

我试图创建一个Bezier曲线,其中包含首次单击鼠标的起点以及释放它的终点。控制点应该是远离起点和终点的最远点,有没有办法在不将所有鼠标位置存储在数组中的情况下执行此操作。

我试过找到最右边或最左边的点但是已经意识到当从左到右绘制它时不起作用(看到最远的点会上升或下降)我可以尝试将这两者一起实现但是我不能确保这样做会很好,因为终点通常是最远的点

actionscript-3 bezier
1个回答
0
投票

使用这种方法,您肯定需要将鼠标位置存储在数组中。

想象一下,点击屏幕的中间右侧,然后移动鼠标大致向后绘制两个W,然后在屏幕的中间左侧释放鼠标。

显然,控制点应位于W的底点之一,但哪一个?您必须测量每个候选人的起点和终点之间的距离,以便找出真正最远点的位置。

建议:有一个显式声明控制点的机制可能会有所帮助。也许单击一次设置控制点,然后单击并拖动以定义曲线的端点?或者跟踪画布上的点击:第一个是起点,第二个是控制点,第三个是终点。根据项目的限制,可能有很多选项。

© www.soinside.com 2019 - 2024. All rights reserved.