Math atan2 là gì

Sự khác biệt giữa atan và atan2 trong C++ là gì?

std::atan2 cho phép tính arctangent của cả bốn góc phần tư. std::atan chỉ cho phép tính toán từ góc phần tư 1 và 4.

Từ toán học ở trường, chúng ta biết rằng tiếp tuyến có định nghĩa

tan[α] = sin[α] / cos[α]

và chúng tôi phân biệt giữa bốn góc phần tư dựa trên góc mà chúng tôi cung cấp cho các hàm. Dấu hiệu của sin, cos và tan có mối quan hệ sau [trong đó chúng ta bỏ qua bội số chính xác của π/2]:

Quadrant Angle sin cos tan ------------------------------------------------- I 0 < α < π/2 + + + II π/2 < α < π + - - III π < α < 3π/2 - - + IV 3π/2 < α < 2π - + -

Cho rằng giá trị của tan[α] là dương, chúng ta không thể phân biệt được, góc đó là góc phần tư thứ nhất hay thứ ba và nếu nó âm, nó có thể đến từ góc phần tư thứ hai hoặc thứ tư. Vì vậy, theo quy ước, atan[] trả về một góc từ góc phần tư thứ nhất hoặc thứ tư [tức là -π/2

Chủ Đề