Просто преобразуйте ваш Vector3 в Vector3D, так как Vector3D - это просто структура с переменными-членами X, Y, Z для представления компонентов x, y, z, функция, подобная этой, должна нормально работать:
public static Vector3D ToVector3D(Vector3 input)
{
return new Vector3D( (float)input.X, (float)input.Y, (float)input.Z );
}
Возможно, вы могли бы реализовать его как расширение для Vector3 (т.е. Vector3.ToVector3D ()), но, во всяком случае, преобразование вашего Vector3 в Vector3D очень тривиально, и приведенный выше код должен помочь:)