Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > pl.comp.programming > #29379

Indeksowanie 2D

Path csiph.com!2.us.feeder.erje.net!feeder.erje.net!1.eu.feeder.erje.net!news.unit0.net!news.nask.pl!news.nask.org.pl!newsfeed2.atman.pl!newsfeed.atman.pl!.POSTED!not-for-mail
From Borneq <borneq@antyspam.hidden.pl>
Newsgroups pl.comp.programming
Subject Indeksowanie 2D
Date Fri, 3 Feb 2017 08:52:16 +0100
Organization ATMAN - ATM S.A.
Lines 15
Message-ID <o71crd$b35$1@node1.news.atman.pl> (permalink)
NNTP-Posting-Host 91.239.205.105
Mime-Version 1.0
Content-Type text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding 8bit
X-Trace node1.news.atman.pl 1486108333 11365 91.239.205.105 (3 Feb 2017 07:52:13 GMT)
X-Complaints-To usenet@atman.pl
NNTP-Posting-Date Fri, 3 Feb 2017 07:52:13 +0000 (UTC)
User-Agent Mozilla/5.0 (Windows NT 10.0; WOW64; rv:45.0) Gecko/20100101 Thunderbird/45.7.0
X-Mozilla-News-Host news://news.atman.pl:119
Xref csiph.com pl.comp.programming:29379

Show key headers only | View raw


Mam punkty 2D na płaszczyźnie 256x256, może być większa 1000x1000 a 
nawet 10 tys x 10 tys. Chciałbym mieć indeks taki, by od razu znaleźć 
punkty odległe we wszystkich kierunkach o 10 od wskazanego punktu.
Wybieram powiedzmy 137,168
Jest rozwiązanie polegające na tym że liczbom x i y mającym bity 
x0x1x2..x7 i y0y1y2..y7 daje się bity wstawione jedne w drugie 
x0y0x1y1..x7y7.
Potem porządkujemy po tych bitach otrzymując 0..65535.
To jest jakieś rozwiązanie, ale dla jakiejś liczby np. 30'000 gdy 
zaczniemy od liczba-100 do liczba+100 to zarówno otrzymamy dalsze niż 10 
jak i bliższe wszystkie niż 10 nie będą.
Co do dalszych, to możemy dodatkowo filtrować po odległości. Drugi 
przypadek - należy wystartować z inną pozycją indeksu. Jak to można zrobić?
Testowy program:
https://gist.github.com/borneq/36808830520c059ae474061c46c282f5

Back to pl.comp.programming | Previous | Next — Next in thread | Find similar | Unroll thread


Thread

Indeksowanie 2D Borneq <borneq@antyspam.hidden.pl> - 2017-02-03 08:52 +0100
  Re: Indeksowanie 2D slawek <fake@fakeemail.com> - 2017-02-03 10:47 +0100
    Re: Indeksowanie 2D Borneq <borneq@antyspam.hidden.pl> - 2017-02-03 10:58 +0100
      Re: Indeksowanie 2D slawek <fake@fakeemail.com> - 2017-02-03 16:24 +0100
        Re: Indeksowanie 2D Borneq <borneq@antyspam.hidden.pl> - 2017-02-03 16:51 +0100
  Re: Indeksowanie 2D "M.M." <mmarszik@gmail.com> - 2017-02-04 07:16 -0800

csiph-web