【发布时间】:2012-04-18 04:40:12
【问题描述】:
我的移动对象中的代码:
ObjectX.Location.Add(Velocity * Utils.GetMoveDir(start, destination));
实用功能:
public static PointF GetMoveDir(PointF start, PointF destination)
{
PointF substraction = destination.SubStract(start);
if (substraction == PointF.Empty) // If-statement is needed because normalizing a zero value results in a NaN value
return PointF.Empty;
else
return substraction.Normalize(); // <<<< I need something for this
}
我无法工作的扩展:
public static PointF Normalize(this PointF A)
{
throw new NotImplementedException(); // How do I solve this to make it like: http://msdn.microsoft.com/en-us/library/microsoft.xna.framework.vector2.normalize.aspx
}
请注意,我不使用 XNA 框架。
【问题讨论】:
-
PointF实际上是System.Drawing.PointF还是别的什么?上面提到的PointF没有SubStract非静态方法,但它确实有Subtract静态方法。 -
对不起,我忘了说,这是我在PointF上的扩展方法。但它是一个真正的 PointF,就像在 System.Drawing 中一样。