def get_orientation_constraints_and_matrix(cls, rv3d):
view_rotation = rv3d.view_rotation.to_matrix()
view_dir = view_rotation * Z
M = workplane.data.get_matrix().to_3x3()
x = math.fabs((M*X).dot(view_dir))
y = math.fabs((M*Y).dot(view_dir))
z = math.fabs((M*Z).dot(view_dir))
#print("-------------")
#print("x: " + str(x))
#print("y: " + str(y))
#print("z: " + str(z))
#print("-------------")
enable_x = x < y or x < z
enable_y = y < x or y < z
enable_z = z < x or z < y
constraints = (enable_x,enable_y,enable_z)
return (constraints, M.to_4x4())
评论列表
文章目录