2017-06-08 13:31:51 +00:00
|
|
|
/*
|
|
|
|
* Author: commy2
|
|
|
|
*
|
|
|
|
*
|
|
|
|
* Arguments:
|
|
|
|
* None
|
|
|
|
*
|
|
|
|
* Return Value:
|
|
|
|
* Array <ARRAY>
|
|
|
|
*
|
|
|
|
* Example:
|
|
|
|
* call ace_vector_fnc_getDirection
|
|
|
|
*
|
|
|
|
* Public: No
|
|
|
|
*/
|
|
|
|
|
2015-01-11 16:42:31 +00:00
|
|
|
// by commy2
|
2015-01-14 06:24:17 +00:00
|
|
|
#include "script_component.hpp"
|
2015-01-11 16:42:31 +00:00
|
|
|
|
2015-01-15 06:18:57 +00:00
|
|
|
/*
|
2015-01-14 19:38:59 +00:00
|
|
|
private "_dlgVector";
|
2015-01-11 16:42:31 +00:00
|
|
|
|
|
|
|
disableSerialization;
|
2015-01-15 06:18:57 +00:00
|
|
|
_dlgVector = GETUVAR(ACE_dlgVector, displayNull);
|
2015-01-11 16:42:31 +00:00
|
|
|
|
|
|
|
[
|
2015-01-15 06:18:57 +00:00
|
|
|
round parseNumber ctrlText (_dlgVector displayCtrl 156),
|
|
|
|
round parseNumber ctrlText (_dlgVector displayCtrl 182)
|
2015-01-11 16:42:31 +00:00
|
|
|
]
|
2015-01-15 06:18:57 +00:00
|
|
|
*/
|
|
|
|
|
2015-01-15 16:24:19 +00:00
|
|
|
#define MAX_ABSINCLINATION 45
|
|
|
|
|
2016-09-04 14:44:22 +00:00
|
|
|
private _position = ATLToASL positionCameraToWorld [0,0,0];
|
|
|
|
private _direction = ATLToASL positionCameraToWorld [0,0,1];
|
2015-01-15 06:18:57 +00:00
|
|
|
|
2016-09-04 14:44:22 +00:00
|
|
|
private _azimuth = ((_direction select 0) - (_position select 0)) atan2 ((_direction select 1) - (_position select 1));
|
|
|
|
private _inclination = asin ((_direction select 2) - (_position select 2));
|
2015-01-15 06:18:57 +00:00
|
|
|
|
|
|
|
if (_azimuth < 0) then {_azimuth = _azimuth + 360};
|
2015-01-15 16:24:19 +00:00
|
|
|
if (abs _inclination > MAX_ABSINCLINATION) then {_inclination = -1000};
|
2015-01-15 06:18:57 +00:00
|
|
|
|
|
|
|
[_azimuth, _inclination]
|