atan2 (<valarray>)
要素が valarrays の定数および要素を組み合わせて指定されたデカルト コンポーネントのアークタンジェントと同じ valarray 返します。
template<class Type>
valarray<Type> atan2(
const valarray<Type>& _Left,
const valarray<Type>& _Right
);
template<class Type>
valarray<Type> atan2(
const valarray<Type> _Left,
const Type& _Right
);
template<class Type>
valarray<Type> atan2(
const Type& _Left,
const valarray<Type>& _Right
);
パラメーター
_Left
valarray 要素がアークタンジェントの引数の y 座標に値を指定する定数または数値型のデータ入力。_Right
valarray 要素がアークタンジェントの引数の x 座標に値を指定する定数または数値型のデータ入力。
戻り値
要素 I のアークタンジェントと等しい場合は。valarray:
_Left [入力]/[ i ] _Right一つ目のテンプレート関数の I の。
[_Left 2 番目のテンプレート関数の i ]/ _Right。
3 番目のテンプレート関数の_Left /[ i ] _Right。
解説
返される要素のラジアン単位はにあります。
この関数は、標準のタンジェント関数が失われる、四角形のこの知識は +pi と –pi 間の一意の角度を割り当てられた戻り値を使用して引数のコンポーネントの署名に関する情報を保持します。
_Left と _Right に要素数である場合、結果は未定義です。
使用例
// valarray_atan2.cpp
// compile with: /EHsc
#include <valarray>
#include <iostream>
#include <iomanip>
int main( )
{
using namespace std;
double pi = 3.14159265359;
int i;
valarray<double> va1y ( 1 , 4 ), va1x ( 1 , 4 );
va1x [ 1 ] = -1;
va1x [ 2 ] = -1;
va1y [ 2 ] = -1;
va1y [ 3 ] = -1;
valarray<double> va2 ( 4 );
cout << "The initial valarray for the x coordinate is: ( ";
for ( i = 0 ; i < 4 ; i++ )
cout << va1x [ i ] << " ";
cout << ")." << endl;
cout << "The initial valarray for the y coordinate is: ( ";
for ( i = 0 ; i < 4 ; i++ )
cout << va1y [ i ] << " ";
cout << ")." << endl;
va2 = atan2 ( va1y , va1x );
cout << "The atan2 ( y / x ) of the initial valarrays is:\n";
for ( i = 0 ; i < 4 ; i++ )
cout << setw( 10 ) << va2 [ i ]
<< " radians, which is "
<< setw( 11 ) << ( 180/pi ) * va2 [ i ]
<< "degrees" << endl;
cout << endl;
}
必要条件
ヘッダー: <valarray>
名前空間: std