# 将单位法向量转换成四元数
import numpy as np
def unit_vector_to_quaternion(unit_vector):
w = np.sqrt(1 + unit_vector[0] + unit_vector[1] + unit_vector[2]) / 2
x = (unit_vector[2] - unit_vector[1]) / (4 * w)
y = (unit_vector[0] - unit_vector[2]) / (4 * w)
z = (unit_vector[1] - unit_vector[0]) / (4 * w)
return np.array([w, x, y, z])
# Example unit vector (replace with your own values)
unit_vector = np.array([ 0.514385, -0.0318042, 0.856969])
# Convert unit vector to quaternion
quaternion = unit_vector_to_quaternion(unit_vector)
print("Quaternion:", quaternion)
将单位法向量转换成四元数
于 2023-10-21 10:58:26 首次发布