Flash Curvet动态查找曲线点

Flash Curvet动态查找曲线点,flash,actionscript-3,math,drawing,curve,Flash,Actionscript 3,Math,Drawing,Curve,我的数学知识从来都不是很广泛,所以这可能是一个简单的问题,但我不是很确定 基本上,我使用curveTo函数为飞行路径绘制一些直线,但我不确定如何动态地找到曲线点,例如,如果您查看ryan air站点:所有直线都很好地弯曲 current_line.graphics.curveTo(curveX, curveY, map.mouseX, map.mouseY); 我需要找到curveX和curveY 如果您需要更多信息,请留言,我会回答您的任何问题 提前感谢 威尔如果我理解正确,我可以给你一个可

我的数学知识从来都不是很广泛,所以这可能是一个简单的问题,但我不是很确定

基本上,我使用curveTo函数为飞行路径绘制一些直线,但我不确定如何动态地找到曲线点,例如,如果您查看ryan air站点:所有直线都很好地弯曲

current_line.graphics.curveTo(curveX, curveY, map.mouseX, map.mouseY);
我需要找到curveX和curveY

如果您需要更多信息,请留言,我会回答您的任何问题

提前感谢

威尔

如果我理解正确,我可以给你一个可能的答案,尽管它非常简单。我假设您想知道如何在两点之间自动绘制曲线,以避免在两点之间只得到一条直线。因此,您需要计算控制点的位置

一种简单的方法是,只需使用起点和终点的y位置,在y轴上找到正好位于两者之间的点,然后向其添加一些任意值,并将其用作curveTo函数中的控制点。您可以通过获取直线长度的百分比来计算要添加的值,以便每条曲线看起来都类似于曲线

这对于flight path type应用程序来说是有意义的,因为所有曲线都会向上弯曲,模仿飞机航线的飞行路径绘制方式。如果你不明白我的意思,让我知道,我会给你一个简单的实数例子。这可能根本不是你要问的

编辑x4:

似乎直接在答案框中编码不是一个好主意:p下面是一个有效的、正确的方法:

CS4版本:

CS3版本:

如果你还有问题,请告诉我


德布

如果我理解正确,我可以给你一个可能的答案,尽管它非常简单。我假设您想知道如何在两点之间自动绘制曲线,以避免在两点之间只得到一条直线。因此,您需要计算控制点的位置

一种简单的方法是,只需使用起点和终点的y位置,在y轴上找到正好位于两者之间的点,然后向其添加一些任意值,并将其用作curveTo函数中的控制点。您可以通过获取直线长度的百分比来计算要添加的值,以便每条曲线看起来都类似于曲线

这对于flight path type应用程序来说是有意义的,因为所有曲线都会向上弯曲,模仿飞机航线的飞行路径绘制方式。如果你不明白我的意思,让我知道,我会给你一个简单的实数例子。这可能根本不是你要问的

编辑x4:

似乎直接在答案框中编码不是一个好主意:p下面是一个有效的、正确的方法:

CS4版本:

CS3版本:

如果你还有问题,请告诉我


德布

嗨,德布,这正是我要找的。是的,如果这不是个太大的问题,你能给我举个例子说明你的意思吗?我有一个基本的版本,但它并不完美。我想看看你会怎么做。感谢lotI dunno,如果它通知您对答案的编辑,那么我将添加一条评论,以确保您收到我添加内容的通知:)嗨,德布,谢谢您的回复。这是一种享受,然而,任何指向起点右侧的点都是直线的吗;在其中一个计算中,我遗漏了一个关键的除以2的值,而且我认为您所指的问题可能是由于没有使用绝对值,所以请尝试我在上面的答案中将其更改为的值。嗨,德布,谢谢您的时间。我试着把除法加上2,然后把它们改成绝对值,但这似乎对起点右侧的点没有任何影响,并且使左侧的曲线有点像一个循环!嗨,德布,这正是我要找的。是的,如果这不是个太大的问题,你能给我举个例子说明你的意思吗?我有一个基本的版本,但它并不完美。我想看看你会怎么做。感谢lotI dunno,如果它通知您对答案的编辑,那么我将添加一条评论,以确保您收到我添加内容的通知:)嗨,德布,谢谢您的回复。这是一种享受,然而,任何指向起点右侧的点都是直线的吗;在其中一个计算中,我遗漏了一个关键的除以2的值,而且我认为您所指的问题可能是由于没有使用绝对值,所以请尝试我在上面的答案中将其更改为的值。嗨,德布,谢谢您的时间。我试着把除法加上2,然后把它们改成绝对值,但这似乎对起点右侧的点没有任何影响,并且使左侧的曲线有点像一个循环!