- Сообщения
- 5,379
- Репутация
- 2,724
Функция возвращает значение угла (в градусах) относительно центра координат [$XC;$YC] для точки с координатами [$X;$Y]. Все координаты задаются относительно левого верхнего угла окна. В случае возникновения ошибки функция возвращает (-1) и устанавливает @error в 1.
![Angle.png](/proxy.php?image=http%3A%2F%2Fyashied.narod2.ru%2FProjectFiles%2FMiscellaneous%2FAngle.png&hash=a154df19fa5e1b5a4719e2f3df2823a9)
Код:
MsgBox(0, '', _Angle(@DesktopWidth / 2 - 100, @DesktopHeight / 2 - 100, @DesktopWidth / 2, @DesktopHeight / 2))
Func _Angle($X, $Y, $XC, $YC)
If ($X = $XC) And ($Y = $YC) Then
Return SetError(1, 0, -1)
EndIf
Local $Grad = ($Y > $YC) * 180 - ATan(($XC - $X) / ($YC - $Y)) * 180 / 3.1415926535897932384626 + 90
If $Grad = 360 Then
$Grad = 0
EndIf
Return $Grad
EndFunc ;==>_Angle