当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Rust f64.atan2用法及代码示例


本文简要介绍rust语言中 f64.atan2 的用法。

用法

pub fn atan2(self, other: f64) -> f64

以弧度计算self (y) 和other (x) 的四象限反正切。

  • x = 0y = 00
  • x >= 0 : arctan(y/x) -> [-pi/2, pi/2]
  • y >= 0 : arctan(y/x) + pi -> (pi/2, pi]
  • y < 0 : arctan(y/x) - pi -> (-pi, -pi/2)

例子

// Positive angles measured counter-clockwise
// from positive x axis
// -pi/4 radians (45 deg clockwise)
let x1 = 3.0_f64;
let y1 = -3.0_f64;

// 3pi/4 radians (135 deg counter-clockwise)
let x2 = -3.0_f64;
let y2 = 3.0_f64;

let abs_difference_1 = (y1.atan2(x1) - (-std::f64::consts::FRAC_PI_4)).abs();
let abs_difference_2 = (y2.atan2(x2) - (3.0 * std::f64::consts::FRAC_PI_4)).abs();

assert!(abs_difference_1 < 1e-10);
assert!(abs_difference_2 < 1e-10);

相关用法


注:本文由纯净天空筛选整理自rust-lang.org大神的英文原创作品 f64.atan2。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。