Вернуться   CoderX :: Forums > Lineage II > L2PacketHack > Пакеты
Войти через OpenID

Пакеты Форум о форматах отдельных пакетов или групп пакетов

Чат (Новых сообщений с момента вашего последнего визита нет)
Загрузка...
Задавайте ваши вопросы на форуме. Чат предназначен для небольших разговоров.
 
Ответ
 
Опции темы Опции просмотра
Старый 07.02.2012, 02:18   #1
Местный
 
Регистрация: 10.08.2010
Сообщений: 634
Сказал Спасибо: 22
Имеет 95 спасибок в 70 сообщенях
mira пока неопределено
По умолчанию

Цитата:
Сообщение от supernewbie Посмотреть сообщение
mira, как у тебя после возведения в квадрат получается отрицательное число?)
function L2VectorDist(const v1,v2: TL2Vector):single;
var
fx,fy,fz:double;
summ : double;
begin
fx:=(v1.x-v2.x)*(v1.x-v2.x);
fy:=(v1.y-v2.y)*(v1.y-v2.y);
fz:=(v1.z-v2.z)*(v1.z-v2.z);
summ:=abs(fx+fy+fz);
result:=sqrt(summ);
end;

у меня дистанция считаетса вот так. без abs иногда получаетса непонятная уета с summ<0

Добавлено через 4 минуты
если ктото мне объяснит в чем тут чудо я буду тока рад)
пока поставил абс как костыль вроде норм...
__________________
читернуть бы ништяг

Последний раз редактировалось mira, 07.02.2012 в 02:18. Причина: Добавлено сообщение
mira вне форума   Ответить с цитированием
Старый 07.02.2012, 04:31   #2
Местный
 
Аватар для supernewbie
 
Регистрация: 23.09.2009
Сообщений: 1,232
Сказал Спасибо: 119
Имеет 172 спасибок в 134 сообщенях
supernewbie пока неопределено
По умолчанию

mira, точно уверен что < 0 получается?
пробывал проверять что приходит в функцию вообще?
__________________
Начало.
supernewbie вне форума   Ответить с цитированием
Старый 07.02.2012, 09:57   #3
Местный
 
Регистрация: 10.08.2010
Сообщений: 634
Сказал Спасибо: 22
Имеет 95 спасибок в 70 сообщенях
mira пока неопределено
По умолчанию

Цитата:
Сообщение от supernewbie Посмотреть сообщение
mira, точно уверен что < 0 получается?
пробывал проверять что приходит в функцию вообще?
проверял. Норм все в функцию приходит.
Я функцию выносил в тестовый апликейшн и при больших цифрах возникала ошибка ариф.процессора типа отрицательное число под корнем. Проверил степ-степ отладкой так и оказалось. Хз в чем дело, мб какоето переполнение.
__________________
читернуть бы ништяг
mira вне форума   Ответить с цитированием
Старый 07.02.2012, 10:01   #4
Местный
 
Аватар для supernewbie
 
Регистрация: 23.09.2009
Сообщений: 1,232
Сказал Спасибо: 119
Имеет 172 спасибок в 134 сообщенях
supernewbie пока неопределено
По умолчанию

Цитата:
Сообщение от mira Посмотреть сообщение
Норм все в функцию приходит.
а как именно ты это узнал?
__________________
Начало.
supernewbie вне форума   Ответить с цитированием
Старый 07.02.2012, 13:39   #5
Местный
 
Регистрация: 10.08.2010
Сообщений: 634
Сказал Спасибо: 22
Имеет 95 спасибок в 70 сообщенях
mira пока неопределено
По умолчанию

Цитата:
Сообщение от supernewbie Посмотреть сообщение
а как именно ты это узнал?
да просто.
Как тока у меня вышла наепка я сразуже запомнил координаты персов м/у которыми считалось.
Потом засунул их в тестовую прогу с копией функции - баг повторилса.
да. Растояние был довольно большое
__________________
читернуть бы ништяг
mira вне форума   Ответить с цитированием
Старый 07.02.2012, 10:02   #6
Местный
 
Регистрация: 10.08.2010
Сообщений: 634
Сказал Спасибо: 22
Имеет 95 спасибок в 70 сообщенях
mira пока неопределено
По умолчанию

Цитата:
Сообщение от mira Посмотреть сообщение
Код:
  fx:=(v1.x-v2.x)*(v1.x-v2.x);
вот если делфи видит это как
Код:
  fx:=integer((v1.x-v2.x)*(v1.x-v2.x));
тогда в принципе все обьяснимо
__________________
читернуть бы ништяг
mira вне форума   Ответить с цитированием
Старый 07.02.2012, 13:25   #7
Местный
 
Аватар для Aries
 
Регистрация: 19.01.2011
Сообщений: 241
Сказал Спасибо: 7
Имеет 26 спасибок в 22 сообщенях
Aries пока неопределено
По умолчанию

Цитата:
Сообщение от mira Посмотреть сообщение
вот если делфи видит это как
Код:
  fx:=integer((v1.x-v2.x)*(v1.x-v2.x));
тогда в принципе все обьяснимо
очень сомневаюсь...
и кстати замени double на int64 (мб и на LongInt, хотя туда вряд ли влезет квадрат слишком отдаленных координат), один хрен координаты не имеют десятичных точек.
Aries вне форума   Ответить с цитированием
Ответ

  CoderX :: Forums > Lineage II > L2PacketHack > Пакеты



Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Часовой пояс GMT +4, время: 03:04.

vBulletin style designed by MSC Team.
Powered by vBulletin® Version 3.6.11
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Locations of visitors to this page
Rambler's Top100

Вы хотите чувствовать себя в безопасности? чоп Белган обеспечит её!