Einzelnen Beitrag anzeigen

Benutzerbild von Mithrandir
Mithrandir
(CodeLib-Manager)

Registriert seit: 27. Nov 2008
Ort: Delmenhorst
2.379 Beiträge
 
#1

Vom zwei-dimensionalen ins ein-dimensionale...

  Alt 23. Mai 2009, 12:40
Hi ihr,

so lange Firebird noch keine zwei-dimensionalen Indizes unterstützt (ist das überhaupt geplant?), muss ich zwei-dimensionale Werte in einen ein-dimensionalen Wert umwandeln. Nur wie erledigt man das am Besten, wenn man folgende Rahmenbedingungen hat:
  • Das Koordinatensystem hat als höchsten Wert (39136/39136), keine Nachkommastellen und keine negativen Werte
  • Es sollten von...bis Abfragen möglich sein. ("Gib mir alles von (3/4) bis (4/5)*")

Meine Idee wäre gewesen, einen ausreichend großen Datentyp (wohl Integer in diesem Falle) zu nehmen, und die X-Koordinaten z.B. in den oberen 2 Byte zu speichern und die Y-Koordinaten in den unteren 2 Byte.

Allerdings funktioniert dann Punkt 2 nicht mehr.

Hat jemand eine andere Idee?

*Die X und Y Werte sind mit anderen Eigenschaften verknüpft. Daher ist so eine Abfrage möglich. So stehen X und Y eigentlich nicht für Punkte, sondern für einen Bereich mit einer Größe von 512*512 Punkten.
米斯蘭迪爾
"In einer Zeit universellen Betruges wird das Aussprechen der Wahrheit zu einem revolutionären Akt." -- 1984, George Orwell
  Mit Zitat antworten Zitat