Yoko

All sides of Injection
It is currently 2024-04-18 14:21:24

All times are UTC+02:00




Post new topic  Reply to topic  [ 10 posts ] 
Author Message
PostPosted: 2004-05-22 21:17:11 
Offline

Joined: 2004-05-22 21:10:12
Posts: 15
Plz Yoko, include a function that evaluates distance between 2 points, coords based. UO.Distance("546 128","548 128") returns "2"

It's extremely necessary, and cannot do with math functions of injection, since it's impossible to calculate x^y (exponential) (a²=b²+c², it's possible, but a=(b²+c²)^1/2 it's impossible with injection)


Sorry by english..


Top
   
 Post subject:
PostPosted: 2004-05-23 22:13:14 
Offline
Expert!

Joined: 2004-04-25 11:11:07
Posts: 359
i'm using C^2 = A^2 + B^2 instead C=sqr(A^2+B^2), because i can't obtain square root. I don't think, what using of C will change something.

_________________
Без труда не выловишь и рыбку из пруда,
А без пруда не выловишь её и с трудом...


Top
   
 Post subject:
PostPosted: 2004-05-24 00:19:01 
Offline
Site Admin
User avatar

Joined: 2004-04-03 16:49:38
Posts: 1964
uo.getdistance use maximal proximity, D=Max(DX,DY)=Max(abs(x1-x2),abs(y1-y2)) which is absolutely enough for almost any imaginated script.

precise optimal distance for cellular 8-directed surface (UO and most isometric games world) will be D=Max(DX,DY)+r, where r is 1 or 0 depending on is character turn needed between start and stop position or no.

next time use paper, pen and brains equiating UO geometry, both of you


Top
   
 Post subject:
PostPosted: 2004-05-25 22:41:37 
Offline
Expert!

Joined: 2004-04-25 11:11:07
Posts: 359
uo.getdistance() требует объект. А если надо просто узнать дистанцию до какого-то места (есть там объект или нет - не должно ни на что влиять) - то что прикажешь делать, кроме как брать c^2?

_________________
Без труда не выловишь и рыбку из пруда,

А без пруда не выловишь её и с трудом...


Top
   
 Post subject:
PostPosted: 2004-05-26 00:06:18 
Offline
Site Admin
User avatar

Joined: 2004-04-03 16:49:38
Posts: 1964
Lord Ruslan Nightmare wrote:
uo.getdistance() требует объект. А если надо просто узнать дистанцию до какого-то места (есть там объект или нет - не должно ни на что влиять) - то что прикажешь делать, кроме как брать c^2?


тормоз
я же написал выше формулу
прочти снова


Top
   
 Post subject:
PostPosted: 2004-05-26 20:18:43 
Offline
Expert!

Joined: 2004-04-25 11:11:07
Posts: 359
Согласен, тормоз.
А теперь объясняй. Как можно принимать максимальное смещение по оси за расстояние?

_________________
Без труда не выловишь и рыбку из пруда,

А без пруда не выловишь её и с трудом...


Top
   
 Post subject:
PostPosted: 2004-05-26 23:30:14 
Offline
Site Admin
User avatar

Joined: 2004-04-03 16:49:38
Posts: 1964
Элементарно, Ватсон.
Я вообще то полагал что привёл исчерпывающий ответ выше, на английском.

Но если тебе не ясны элементарные начальные выкладки, которые были опущены для краткости, то попробую нарисовать.
НАПОМИНАЮ что пространство УО дискретно, то есть нет дробных расстояний и нет смысла мучать формулы из эвклидова пространства.
Code:
   XXXXXXB    обозначен кратчайший путь из A в B 
   XXXXX*X    (их много но все одной и той же длины)
   XXXX*XX    X-клетка  *-точка пути  о-точка пути и поворота
   A**oXXX   


элементарные вычисления на пальцах показывают что длина оптимального (кратчайшего) пути всегда Max(DX,DY)

так как в ультиме поворот тоже шаг, то для совсем умных скриптов можно добавлять и его как дополнительній шаг, о чём я ТОЖЕ писал выше.

можно считать очередное заседание клуба любителей линейной алгебры закрытым?


Top
   
 Post subject:
PostPosted: 2004-05-27 10:05:46 
Offline

Joined: 2004-04-04 21:04:43
Posts: 76
В учебнике линейной алгебры все это действительно написано :)


Top
   
 Post subject:
PostPosted: 2004-07-30 08:47:25 
Offline

Joined: 2004-05-22 21:10:12
Posts: 15
But UO.GetDistance needs a object..
I need to know distance between point A and B...
A can be my character X,Y and B any point not marked with a object.

Need a new function?


Top
   
 Post subject:
PostPosted: 2004-07-31 21:05:08 
Offline
Site Admin
User avatar

Joined: 2004-04-03 16:49:38
Posts: 1964
D=Max(DX,DY)


Top
   
Display posts from previous:  Sort by  
Post new topic  Reply to topic  [ 10 posts ] 

All times are UTC+02:00


Who is online

Users browsing this forum: No registered users and 11 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
cron
Powered by phpBB® Forum Software © phpBB Limited