mycad 发表于 2010-2-8 16:47:00

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

我把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
                        'Doubles = 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);

雪山飞狐_lzh 发表于 2010-2-8 21:18:00

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

游天居士 发表于 2010-2-8 23:14:00

我也看不明白。

mycad 发表于 2010-2-9 08:07:00


我把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值;

雪山飞狐_lzh 发表于 2010-2-9 10:44:00

二楼不是写了?
Curve.GetFirstDerivative Method
返回曲线的切向量

mycad 发表于 2010-2-9 13:08:00

太感谢lzh741206
页: [1]
查看完整版本: [求助]版主关于曲线曲率的问题;.net附件上传了