急!如何等分椭圆! 请问:如何把一个椭圆按照弧长等分,利于把一个椭圆等分为8等分,每一等分的弧长都相同! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 /// <summary> /// 获取椭圆上一段弧的等分点集合 /// </summary> /// <param name="r">绘制椭圆的矩形</param> /// <param name="startAngle">起始角度</param> /// <param name="sweetAngle">弧所经过的角度</param> /// <param name="count">等分的个数</param> /// <returns>等分点的集合</returns> private Point[] GetArcPoint(Rectangle r, float startAngle, float sweetAngle, int count) { // // TODO: 如何实现 // } 椭圆方程:x = a * cos(t) t = [0 - PI]y = b * sin(t)ds = sqrt(dx^2 + dy^2) = sqrt[(a*sin(t))^2 + (b*cos(t))^2] * dt这个积分好像没有显式解,用数值解计算吧 (1)首先求得椭圆的外接矩形,外接矩形的四边必有四个正中点,每两个相对点连接起来,即得四条直线,此时椭圆已被平分成四个完全相等的弧了。(2)计算每段弧的长度,即椭圆的周长(公式是....?)除以4。以每段弧的起点为基准计算 2bπ _________ 椭圆周长公式=———— √2a2-b2 a参考链接:http://www.mathchina.com/cgi-bin/topic.cgi?forum=5&topic=588http://www.chinaai.org/Article_Show.asp?ArticleID=409 多次见到讨论椭圆周长的帖子,现将公式抄录如下。有时可以在图上量,有时算起来也很方便。 若是写程序则要用精确的公式: 按标准椭圆方程:长半轴a,短半轴b。设 λ=(a-b)/(a+b),椭圆周长L: L=π(a+b)(1 + λ^2/4 + λ^4/64 + λ^6/256 + 25λ^8/16384 + ......)简化:L≈π[1.5(a+b)- sqrt(ab)]或L≈π(a+b)(64 - 3λ^4)/(64 - 16λ^2)说明:λ^2表示λ的平方,类推。取到级数的前两项足够了。 http://amio.unreal.com.cn/board/attachment.php?attachmentid=359 to johnsuna,要八等分椭圆啊~~~另外那个公式明显错误么,只要看看当椭圆退化时,比方 a = 0或者b = 0时,想想就不对么 好像人家早就证明了椭圆周长是没有初等表达式的,所以怎么都不用考虑了 :)我是指这个公式 2bπ _________ 椭圆周长公式=———— √2a2-b2 a至于那个级数解不大清楚 应该这个:http://amio.unreal.com.cn/board/attachment.php?attachmentid=359 关于UI线程的问题 小问题,速度来拿分 C# 如何自动移去系统托盘失效的图标 关于8皇后的问题 怎样将C盘FATS格式转成NTFS格式呀.. VS2005中文版DVD版镜像,请大家一起加快速度啊 麻烦看看这段简单的代码 button是图片 点击Button以后换图片怎么实现呢 读文本文件的问题 VC++ 7.0 何时有,能到BCB的水平吗?C#是否要128M内存?我要彻底投降MS 在线的帮忙:问 C#如何操作mysql数据库服务器 问个控制台程序好玩的事情
/// 获取椭圆上一段弧的等分点集合
/// </summary>
/// <param name="r">绘制椭圆的矩形</param>
/// <param name="startAngle">起始角度</param>
/// <param name="sweetAngle">弧所经过的角度</param>
/// <param name="count">等分的个数</param>
/// <returns>等分点的集合</returns>
private Point[] GetArcPoint(Rectangle r, float startAngle, float sweetAngle, int count)
{
//
// TODO: 如何实现
//
}
x = a * cos(t) t = [0 - PI]
y = b * sin(t)ds = sqrt(dx^2 + dy^2) = sqrt[(a*sin(t))^2 + (b*cos(t))^2] * dt这个积分好像没有显式解,用数值解计算吧
(2)计算每段弧的长度,即椭圆的周长(公式是....?)除以4。以每段弧的起点为基准计算 2bπ _________
椭圆周长公式=———— √2a2-b2
a参考链接:
http://www.mathchina.com/cgi-bin/topic.cgi?forum=5&topic=588
http://www.chinaai.org/Article_Show.asp?ArticleID=409
设 λ=(a-b)/(a+b),
椭圆周长L: L=π(a+b)(1 + λ^2/4 + λ^4/64 + λ^6/256 + 25λ^8/16384 + ......)简化:
L≈π[1.5(a+b)- sqrt(ab)]或L≈π(a+b)(64 - 3λ^4)/(64 - 16λ^2)说明:
λ^2表示λ的平方,类推。
取到级数的前两项足够了。
2bπ _________
椭圆周长公式=———— √2a2-b2
a至于那个级数解不大清楚