明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1744|回复: 5

[几何] [求助]版主关于曲线曲率的问题;.net附件上传了

[复制链接]
发表于 2010-2-8 16:47 | 显示全部楼层 |阅读模式
本帖最后由 作者 于 2010-2-9 8:08:04 编辑

我把vb.net下的代码改写成C#时 double ka = (double)kp(1) / (double)kp(0) - Math.PI / 2;
错误:Error3 'kp' is a 'variable' but is used like a 'method';高手赐教一下,谢谢!!!
                  'vb   
                        Dim p As Point3d = cv.GetPointAtDist(i * len / n)
                        Dim kp As Object = cv.GetFirstDerivative(cv.GetParameterAtDistance(i * len / n))
                        Dim ka As Double = kp(1) / kp(0) - Math.PI / 2
                        'Double  s = kp(1)
                        Call AddText(p, "等分点\" & CStr(i), 3, ka, 1, 1)
////////C#
p =cv.GetPointAtDist (i * len / n);
                        Object kp  =(Object) cv.GetFirstDerivative(cv.GetParameterAtDistance(i * len / n));
                        double ka = (double)kp(1) / (double)kp(0) - Math.PI / 2;
                        AddText(p, "等分点" + i.ToString(), 3, ka, 1, 1);
发表于 2010-2-8 21:18 | 显示全部楼层

Vector3d kp = cv.GetFirstDerivative(cv.GetParameterAtDistance(i * len / n));
double ka = kp[1] / kp[0] - Math.PI / 2;//?奇怪的方式,可以解释下么?

发表于 2010-2-8 23:14 | 显示全部楼层

我也看不明白。

 

 楼主| 发表于 2010-2-9 08:07 | 显示全部楼层

 

我把vb.net放在附件了;版主运行一下看看

在vb.net中;源程序是这样定义的:

Dim kp As Object = cv.GetFirstDerivative(cv.GetParameterAtDistance(i * len / n))

Dim ka As Double = kp(1) / kp(0) - Math.PI / 2

此句在c#中不知怎样表示?

在vb.net中 kp(1)与kp(0)是个double值;

 

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

x
发表于 2010-2-9 10:44 | 显示全部楼层

二楼不是写了?

Curve.GetFirstDerivative Method

返回曲线的切向量

 楼主| 发表于 2010-2-9 13:08 | 显示全部楼层
太感谢lzh741206
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-5-9 17:17 , Processed in 0.155656 second(s), 24 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表