Afstand tussen coordinaten

Wiskunde is niet alleen een vak op school. Kom je ergens in de praktijk (bijvoorbeeld tijdens je werk) een wiskundig probleem tegen dan kun je hier om hulp vragen.
Plaats reactie
eensteen_emc2
Nieuw lid
Nieuw lid
Berichten: 2
Lid geworden op: 27 mar 2012, 15:10

Afstand tussen coordinaten

Bericht door eensteen_emc2 » 27 mar 2012, 15:38

Hallo forum leden,

Ik zit met het volgende probleem:

Ik speel een spelletje op mijn Iphone waarin ik de afstand tussen 2 coordinaten wil bereken. Ik ben bezig met een excel bestand waarin ik de coordinaten invul en zo kan zien hoelang het duurt voor a bij b aan komt.

Het werkt als volgt; ik moet iets versturen van a,b,c, etc. naar punt x. Ik kan zien hoe lang ik er over doe maar dit duur erg lang en ik kom met de standaard berekeningen niet goed uit √((X-X)*(X-X)+(Y-Y)*(Y-Y)).

Hier een voorbeeld:
Locatie 1: 16476 - 16434
Locatie 2: 16383 - 16410

de afstand is 105 'velden'.

Heeft iemand een idee hoe ik formule kan krijgen waarbij de uitkomst hier dus 105 is?

Alvast bedankt!

Eensteen

arie
Moderator
Moderator
Berichten: 3917
Lid geworden op: 09 mei 2008, 09:19

Re: Afstand tussen coordinaten

Bericht door arie » 27 mar 2012, 16:01

Dat kan van alles zijn, bijvoorbeeld:
bereken de afstanden alleen in horizontale, verticale en zuiver diagonale veldrichting (45 graden schuin op/neer/links/rechts).

In jouw voorbeeld:
dx = 93
dy = 24
kortste afstand op bovenstaande manier:
24 velden diagonaal
blijft over voor dx: 93 - 24 = 69 eenheden

Neem nu voor horizontale en verticale afstand 1 veldeenheid, voor diagonale veldeenheid (game programmeurs nemen wel vaker enige vrijheid in benaderen).

Je totale afstand wordt dan 69 + 1.5*24 = 69 + 36 = 105 veldeenheden.

Klopt deze methode als je dit controleert met andere voorbeelden uit je spel?

eensteen_emc2
Nieuw lid
Nieuw lid
Berichten: 2
Lid geworden op: 27 mar 2012, 15:10

Re: Afstand tussen coordinaten

Bericht door eensteen_emc2 » 27 mar 2012, 17:12

Het klopt, bedankt voor je snelle reactie. Heb er nog een afronding naar beneden aan toe moeten voegen om het kloppend te maken (ivm de decimalen bij een oneven getal)

Heb er inmiddels een stuk of 10 getest en alle getallen komen overeen.

Case solved

Plaats reactie