Форум программистов, компьютерный форум, киберфорум
Наши страницы

Хэш код для нормализованного вектора - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Немного про std::string http://www.cyberforum.ru/cpp/thread1777516.html
Привет, читал про std::string на разных сайтах. 1. Там говорят, С++ 11 гарантирует, что std::string будет stored contiguously in memory. В этом я не сомневаюсь, но каким еще образом можно в...
C++ Объединение нескольких png файлов в один png-файл В общем надо написать програмулину, которая объединяет несколько png файлов (ширина и высота одинаковы у изображений) в один png-файл. Пример: Есть пара png-картинок: :p, :D, :(, =-O, :yes:,... http://www.cyberforum.ru/cpp/thread1777427.html
C++ Как операционная система выделяет виртуальную память процессу?
Добрый вечер, хотел уточнить насчёт адресации: создаётся экземпляр win32 программы, выделяет процесс и 1 поток - ОС даёт процессу виртуальное адресное пространство в 4 ГБ - другими словами адрес,...
C++ Ошибка: invalid conversion from "int" to "SDL_RendererFlip"
Скриншот приложен, Вот страница, откуда я брал этот код Подскажите что делать
C++ Icu итератор http://www.cyberforum.ru/cpp/thread1775959.html
Здравствуйте. Подскажите как с помощью icu проитерировать посимвольно UnicodeString и на выходе получить то, что сразу можно в обычный string запихнуть. Нагуглил такой вариант: #include...
C++ Подскажите пожалуйста либу на плюсах для операций с многоугольниками Вообще задача - вычитать друг из друга пересекающиеся многоугольники (как во множествах) и соответственно находить результирующие многоугольники. Нашёл либу такую вещь, как "Clipper" но он работает... подробнее

Показать сообщение отдельно
Lilim
7 / 7 / 0
Регистрация: 24.12.2011
Сообщений: 53

Хэш код для нормализованного вектора - C++

09.07.2016, 20:19. Просмотров 267. Ответов 1
Метки (Все метки)

Мне нужно генерировать 64-разрядный хэш для трехмерных нормализованных векторов (double). Хэши должны быть равны если сгенерированы из одного или равных (поэлементно) векторов.

У кого какие мысли? Может есть стандартный алгоритм?

Да и ещё - после генерации 64-разрядного хэш-кода я увязываю его с 64-разрядным "ключевым сидом" методом XOR и далее сливаю в 32-битное значение применяя XOR к 32-битным частям 64-битного хэш-кода.

Вот код:
C++
1
2
3
4
5
6
7
8
9
10
11
inline UINT32 seed_vertex_generation(const dVector3 vec)
{
    union {
        UINT32 u32[2];
        UINT64 u64;
    } cap;
 
    cap.u64 = hash64(vec) ^ key_seed;
 
    return cap.u32[0] ^ cap.u32[1];
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru