
[img width=393 height=377]http://img263.imageshack.us/img263/9308 ... ordsb1.gif[/img]
Jag har fått modifiera det genom att skriva v = 360 - atan2(y - y0, x - x0) så att det funkar i alla fall. Så nu vet ni detOm cirkelns mittpunkt är (x0, y0) så får du vinkeln v till punkten (x, y) genom att skriva v = atan2(y - y0, x - x0). (Vinkeln ges i radianer.)
Ja du, det verkar som om du måste skriva om koden för att den ska kunna ta hänsyn till att 3 eller fler ringar överlappar varandra. Hur det ska gå till vet jag inte.Victor skrev: Alla tips är välkomna för att hjälpa mig!![]()
Mjo, men hur ska det senare gå till?Victor skrev: mm:(
en grej kan vara att räkna ut var de tre skär varandra/mittpunkten som i denna bild:
[img width=216 height=225]http://img411.imageshack.us/img411/7007/punktks3.png[/img]
och sedan måla över den lilla bit som stycker ut på något sätt?
Jag skulle tro att du har någon inbygg begränsning eller liknande som omöjliggör beräkningar av fler än 2 cirklar samtidigt. Det eftersom ditt program inte tar hänsyn till cirklar längre tillbaka i historien än den förra uppritade.Victor skrev: 1, först ritas en cirkel ut
2, sen räkna ut vilka cirklar som kommer att skära med denna första cirkel
3, därefter målas chorden ut för de cirklar som skär i denna cirkel
Allt detta sker på varje cirkel som finns i en specifierad fil (stdin).
Allt som målas läggs ovanpå varandra, lager på lager..