ESBSinCos Procedure |
Unit
QESBPCSMath
Declaration
Procedure ESBSinCos(const Angle: Extended; out SinX, CosX: Extended);
Parameters |
Angle | Angle in Radians. |
Category
Arithmetic Routines for FloatsImplementation
procedure ESBSinCos (const Angle: Extended; out SinX, CosX: Extended); procedure FSinCos (Angle: Extended; var SinX, CosX: Extended); asm fld [Angle] // St(0) <- Angle fsincos fstp tbyte ptr [edx] // St(0) -> CosX fstp tbyte ptr [eax] // St(0) -> SinX fwait end; begin if abs (Angle) >= TwoToPower63 then // must be less then 2^63 raise EMathError.Create (rsAngleTooLarge); FSinCos (Angle, SinX, CosX); End; |
|