ベクトルがx軸からなす角度を見つける一般的な方法( x軸が左から右に伸び、y軸が下から上に伸びると仮定) は次のとおりです。
double vector_angle = atan2( y , x )
ただし、x軸が円の端の点から円の中心を通り、y軸がその点で円に接するように、軸の原点を円上の点に配置したい(したがって、x軸に垂直になります)。
コードは同じままであると仮定しますが、距離kと角度thetaによって調整されている可能性があります。
double y_position = ( y + k ) * theta;
double x_position = ( x + k ) * theta;
double vector_angle = atan2( y_position, x_position );
しかし、これについてはよくわかりません。これは、円の中心から常に一定の距離にあるスワイプ モーションを使用して (cocos2d で) スプライトを移動する一般的な方法が必要なタッチ ベースのアプリケーションの一般的な問題です。
ここで、Bは、回転thetaによって変換できるベクトルの原点です。たとえば、円と点Bを 90 度変換すると、Bは (4, 0) になり、線B -> Aは 4 (y = 4) の軸に沿ったものになります。変換中のポイントBのノード空間での角度を取得したいと思います。