c#中默认不带库三维向量,需要自己安装第三方库,或者可以手动实现一个简易的三维向量。
public struct Vector3D
{
public double X { get; set; }
public double Y { get; set; }
public double Z { get; set; }
public Vector3D(double x, double y, double z)
{
X = x;
Y = y;
Z = z;
}
//--- 运算符重载 ---
// 向量加法
public static Vector3D operator +(Vector3D a, Vector3D b)
{
return new Vector3D(a.X + b.X, a.Y + b.Y, a.Z + b.Z);
}
// 向量减法
public static Vector3D operator -(Vector3D a, Vector3D b)
{
return new Vector3D(a.X - b.X, a.Y - b.Y, a.Z - b.Z);
}
// 向量标量乘法(向量 * 标量)
public static Vector3D operator *(Vector3D v, double scalar)
{
return new Vector3D(v.X * scalar, v.Y * scalar, v.Z * scalar);
}
// 向量标量乘法(标量 * 向量)
public static Vector3D operator *(double scalar, Vector3D v)
{
return v * scalar; // 复用上述实现
}
// 向量标量除法(向量 / 标量)
public static Vector3D oper

最低0.47元/天 解锁文章
1603

被折叠的 条评论
为什么被折叠?



