Добавил:
korayakov
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:
//---------------------------------------------------------------------------
#include <vcl.h>
#include <math.h>
#pragma hdrstop
#include "Unit2.h"
//---------------------------------------------------------------------------
// определяет под каким углом видна одна точка из второй
float alpha(int cx,int cy,int rx,int ry)
{ float dx,dy;
dx=rx-cx;dy=ry-cy;
if ((dx==0)&&(dy==0)) return (0);
if ((dx==0)&&(dy>0)) return (M_PI/2);
if ((dx==0)&&(dy<0)) return (3*M_PI/2);
if ((dy==0)&&(dx>0)) return (0);
if ((dy==0)&&(dx<0)) return (M_PI);
if ((dx>0)&&(dy>0)) return ( atan(dy/dx));
if ((dx<0)&&(dy>0)) return ( M_PI/2+atan(-1*dx/dy));
if ((dx<0)&&(dy<0)) return ( M_PI+atan(dy/dx));
if ((dx>0)&&(dy<0)) return ( 2*M_PI-atan(-1*dx/dy));
}
//---------------------------------------------------------------------------
#pragma package(smart_init)