|
Тема |
sin и cos проблем |
|
Автор | MiG467 (Нерегистриран) | |
Публикувано | 25.08.06 18:47 |
|
|
значи направил сам си процедура която като въведа център ,радиус и ъгъл да ми изчисли каде ще са и крайните кординати обаче има проблем и излиза че кръга е 400 градуса а не 360 процедурата изглежда така:
procedure ArcRadAngle(center:TPoint;radius,angle:integer;var ArcPoint:TPoint);
var
c:integer;
wax,way : real;
begin
if (angle > 0) and (angle <401) then
begin
ArcPoint.X := round(cos(gradtorad(angle))*radius + center.X);
ArcPoint.Y := round(sin(gradtorad(angle))*radius + center.Y);
ArcPoint.Y := center.Y - (ArcPoint.Y - center.Y);
end
else
begin
arcpoint.X := center.X;
arcpoint.Y := center.y;
end;
end;
мисла че проблема идва от gradtorad но ако имате идея как да гооправа ще сам ви благодарен
|
| |
|
|
|