B
beyondair
Unregistered / Unconfirmed
GUEST, unregistred user!
1)求出你曲线上的点
从起点沿曲线再回到起点开始做如下循环:
begin
2)为每相邻的两个点创建一个TFastLineSeries对象,并加了TCHAT中
3)将所有的TFastLineSeries对象属性设为相同的
4)将这个每相邻两个点都加到所对应的TFastLineSeries对象中
end;
不会吧,
光不光滑只取决于你点的密度,只要你有足够的点,用计算机画图的原理都是
一样的,最终都是象素点的着色,我上面的算法是每相邻两点之点都连线,只要你的
点足够的近,肯定是能达到你的光滑要求,对计算机而言,最大的精度也就是象素点吧。
我上面说的即然是每相邻两点连线,就可以用于任意复杂图形,而且是可编程实现的,如
果象你说的那种标准图形,最多两根线就搞定,难道你用TCANVAS不是这样画的么?
当然你需要考虑开销,这个我没有试,但你非要用TCHAT 还要画很复杂的封闭曲线,又
不进行人工分割,又没找到能直接实现的方法,又不去找别的控件,那还有什么办法呢?
最后给你一个建议:象你说的这种情况,去找一个免费的画数学函数那种控件吧。
从起点沿曲线再回到起点开始做如下循环:
begin
2)为每相邻的两个点创建一个TFastLineSeries对象,并加了TCHAT中
3)将所有的TFastLineSeries对象属性设为相同的
4)将这个每相邻两个点都加到所对应的TFastLineSeries对象中
end;
不会吧,
光不光滑只取决于你点的密度,只要你有足够的点,用计算机画图的原理都是
一样的,最终都是象素点的着色,我上面的算法是每相邻两点之点都连线,只要你的
点足够的近,肯定是能达到你的光滑要求,对计算机而言,最大的精度也就是象素点吧。
我上面说的即然是每相邻两点连线,就可以用于任意复杂图形,而且是可编程实现的,如
果象你说的那种标准图形,最多两根线就搞定,难道你用TCANVAS不是这样画的么?
当然你需要考虑开销,这个我没有试,但你非要用TCHAT 还要画很复杂的封闭曲线,又
不进行人工分割,又没找到能直接实现的方法,又不去找别的控件,那还有什么办法呢?
最后给你一个建议:象你说的这种情况,去找一个免费的画数学函数那种控件吧。