本文整理汇总了C++中vec3::distance方法的典型用法代码示例。如果您正苦于以下问题:C++ vec3::distance方法的具体用法?C++ vec3::distance怎么用?C++ vec3::distance使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类vec3
的用法示例。
在下文中一共展示了vec3::distance方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: get_pitch_by_eye
//--------------------------------------------------------------------------------
// get pitch by eye for follow mode
//--------------------------------------------------------------------------------
float zz_camera_follow::get_pitch_by_eye (const vec3& eye_pos)
{
// [MIN_PITCH_RADIAN, MIN_PITCH_RADIAN + PITCH_RADIAN_RANGE]
vec3 eye_pos_z = eye_pos;
eye_pos_z.z = final_.target_pos.z; // projected eye on the [target_pos.z] plane.
float pitch_angle; // in radian
pitch_angle = cosf(eye_pos_z.distance(final_.target_pos) / eye_pos.distance(final_.target_pos));
if (eye_pos.z < eye_pos_z.z) {
// invert angle
pitch_angle = -pitch_angle;
}
float new_pitch = (pitch_angle - MIN_PITCH_RADIAN) / PITCH_RADIAN_RANGE;
return new_pitch;
}
示例2: get_distance_by_eye
//--------------------------------------------------------------------------------
// get distance by eye for follow mode
//--------------------------------------------------------------------------------
float zz_camera_follow::get_distance_by_eye (const vec3& eye_pos)
{
// assumes target_pos already be set
return eye_pos.distance(final_.target_pos);
}