Sida 2 av 2
SV: Rita cirklar som man ska "klippa" i när de överlappar varandra
Postat: 05 jul 2007, 15:04
av Victor
Istället för att sitta och vänta på ett svar på de ställen jag frågat så var jag lite produktiv och gjorde en bild som jag hoppas kan hjälpa er att hjälpa mig, för mig hjälper den inte speciellt mycket just nu..
[img width=393 height=377]
http://img263.imageshack.us/img263/9308 ... ordsb1.gif[/img]
SV: Rita cirklar som man ska "klippa" i när de överlappar varandra
Postat: 06 jul 2007, 16:10
av Victor
Var inte bilden till hjälp för någon, så de kan hjälpa mig?

SV: Rita cirklar som man ska "klippa" i när de överlappar varandra
Postat: 12 jul 2007, 12:01
av Victor
Jag har nu löst det. Eller rättare sagt en annan på ett annat forum och han skriver såhär:
Om 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.)
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 det
Jag länkar till bilden som jag genererat genom dessa tillämpningar så ni alla ser hur snyggt det blir, men också ett problem som jag hoppas kunna lösa.
http://img101.imageshack.us/my.php?imag ... ectze3.jpg
Just nu när tre stycken cirklar korsar varandra så blir det som ni ser. Att måla upp dem i annan ordningsföljd hjälper inte så jag hoppas på hjälp/tips här.
SV: Rita cirklar som man ska "klippa" i när de överlappar varandra
Postat: 16 jul 2007, 10:29
av Victor
Alla tips är välkomna för att hjälpa mig!

SV: Rita cirklar som man ska "klippa" i när de överlappar varandra
Postat: 16 jul 2007, 11:43
av upnorth
Victor skrev:
Alla tips är välkomna för att hjälpa mig!
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.
SV: Rita cirklar som man ska "klippa" i när de överlappar varandra
Postat: 16 jul 2007, 12:29
av Victor
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?
SV: Rita cirklar som man ska "klippa" i när de överlappar varandra
Postat: 16 jul 2007, 12:34
av upnorth
Mjo, men hur ska det senare gå till?
Hur fungerade koden nu igen, målas cirklarna över för varje som ritas eller målas allt när de alla är uppritade?
SV: Rita cirklar som man ska "klippa" i när de överlappar varandra
Postat: 16 jul 2007, 13:13
av Victor
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..
SV: Rita cirklar som man ska "klippa" i när de överlappar varandra
Postat: 16 jul 2007, 15:44
av upnorth
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..
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.
SV: Rita cirklar som man ska "klippa" i när de överlappar varandra
Postat: 16 jul 2007, 16:19
av Victor
hmm.. njae, jag förstår inte riktigt vad du menar.. Menar du att jag skapat denna begränsning eller att den finns som standard? Ja tror inte jag har skapat den, och jag vet att programmet/funktionen kollar _alla_ cirklar och om de skär varandra på något sätt så "sparas" den cirkeln i en tuple som sedan utökas allt eftersom om det är fler som skär med denna cirkel.