From: Clive Crous (ccrous@shoprite.co.za)
Date: Wed 01 Dec 1999 - 10:49:00 IST
ok, last night i went and attempted to get that semicircle algorith of mine
working.
i discovered 3 problems.
1> i need to research type casting ;-)
2> it'll draw a semi circle with the "curve" being 1280 degrees or
LESS
3> Fixed point math doesn't work in c ??????????????
I used to do a lot of graphical type programming using pascal/assembler and
everything i did was *speed* orientated. For this reason I got quite used
to using fixed point math in my calculations instead of relying on the FPU
to do the grunt work.
here's a quick lil snippet of my program, and the results it gave ..
----------------------------------------------------------------
#define FIXED_B 16
#define FIXED_M 1<<FIXED_B
<snip>
int xp,cx;
<snip>
cx=xp/FIXED_M;
fprintf(stdout," %d = %d / %d\n",cx,xp,FIXED_M);
<snip>
----------------------------------------------------------------
output gives:
2808465 = 2808465 / 65536
or
-2808465 = 2808465 / 65536
or
-65536 = 2808465 / 65536
?????????? wtf ?
cx always seems to be ((xp)||(-xp)||(FIXED_M)||(-FIXED_M))
----------------------------------------------------------------
could some1 please tell me what i've done wrong ?
thanks in advance
Clive
This archive was generated by hypermail 2.1.4 : Wed 21 Jan 2004 - 22:10:22 IST