jos 2 ulotteisella kartalla on kohteita x ja y koordinaateissa, niin miten yksinkertaisimmin lasketaan mitkä kohteet on tietyn säteen sisäpuolella x2 y2 pisteestä?
2 ulotteinen kartta
Tyhmä kysyjä
10800
0Äänestä
Muut lukivat myös
Odottaa vastausta
Näihin keskusteluihin ei ole vielä vastattu. Ole ensimmäinen.
Vastaukset 10
Vanhimmat
onko yksinkertaisin tapa verrata jokaisen pisteen välimatkaa säteeseen ja jos se ylittää sen ne kohteet poistetaan?
Vai onko tähän yksinkertaisempi ratkaisu?
... kiekkoa, jonka keskipiste on pisteessä (x_0,y_0) ?
Tasossa 'kahden pisteen välisen etäisyyden neliö' on yhtä kuin 'kordinaattierotusten neliöiden summa' (Pythagoraan lauseesta):
Siispä ympyrä, jonka keskipiste on (x_0,y_0) ja säde on R saa kaavan
(x-x_0)^2 (y-y_0)^2 = R^2
Mutta kaikki R-säteisen kiekon sisältämät pisteet ovat jollakin ympyrällä, jonka säde on korkeintaan R (ja nämä ympyrät täyttävät koko kiekon):
Siispä kiekon sisältämien pisteiden kaavan on oltava
(x-x_0)^2 (y-y_0)^2
... elikä vastaus alkuperäiseen kysymykseen lienee: ota harppi ja piirrä sopivan säteinen ympyrä!
jos noin tietokoneella laskemista ajatellaan?
Eli unohdetaan harpit jne.
Eli on suuri määrä kohteita kartalla ja tietyn säteen sisällä olevat halutaan vain lopputulokseen mukaan?
Peperillahan tämä on simppeliä.
... tulosta se kartta.
Tai siirrä se sellaiseen ohjelmaan, joka osaa piirtää sopivan ympyrän.
no kiitoksia avusta kuitenkin.
Lienee helpointa koneellisesti verrata välimatkaa säteeseen...ellen jotain keksi.
Ei näköjään kelpaa harppi eikä tietokone. Ja sitten "lienee helpointa verrata "koneellisesti" ...".
Äitiiii, tuu pyyhkiin ...
... tätä tehtävää varten vois kirjoittaa heuristisen algoritmin. :)
Tiedät varmaan jo pisteen etäisyyden tasossa. Tutkit sellaisia x- ja y-koordinaatteja, jotka ovat tarpeeksi lähellä ja katsot jokaisesta etäisyyden. Sitten jatkokäsittelet ne, jotka ovat tarpeeksi lähellä.
Jos säde on esim. n ja piste x, y, niin neliöstä, jonka x-koordinaatti vaihtelee x-n ja x n:n välillä, ja y y-n ja y n:n välillä, ne pisteet löytyvät.
Ei siinä mitään niksiä ole. Kysy ohjelmointipalstalla näitä, matemaatikkoa ei sellainen homma aina kiinnosta :D
Valitse keskipiste,pituus -ja leveysasteet,leveys on etelä-pohjoissuuntaista, pituus vastaavasti itä-länsisuunta
Pituusasteen arvo on keskipisteen leveysasteen kosini.
Valitse säde. Säde on hypotenuusa kolmiossa jonka sini on pystysuora kateetti, kosini vaakasuora.
Riittää että lasket 0-90 asteen välit. Loput ovat käänteisiä.