Mathe :: Kurve :: Hilbert

PERL-Implementierung von Hilberts-Space-Füllkurven
Jetzt downloaden

Mathe :: Kurve :: Hilbert Ranking & Zusammenfassung

Anzeige

  • Rating:
  • Lizenz:
  • Perl Artistic License
  • Preis:
  • FREE
  • Name des Herausgebers:
  • Aaron James Trevena
  • Website des Verlags:
  • http://search.cpan.org/~teejay/

Mathe :: Kurve :: Hilbert Stichworte


Mathe :: Kurve :: Hilbert Beschreibung

Perl-Implementierung von Hackberg-Space-Füllkurven Math :: Kurve :: Hilbert ist ein Perl-Modul, das einige nützliche Funktionen mithilfe von Hilberts-Raumfüllkurven bietet. Dies ist praktisch für Dinge wie Dithering, Abflachung von n-dimensionalen Daten, Fraktalen - alle Dinge wirklich. "Eine Raumfüllkurve ist eine spezielle Fraktalkurve, die die folgenden grundlegenden Eigenschaften aufweist: Â Ist es völlig ein Gebiet, ein Volumen oder a Hypervolumen in einem 2-d-, 3-D- oder ND-Raum, jeder Punkt wird einmal und nur einmal besucht (die Kurve kreuzt sich nicht), und Nachbarstellen im einheimischen Raum sind wahrscheinlich Nachbarn in der Platzfüllkurve. " Definition aus Multiple-Sortiment-Abfrageoptimierung in räumlichen Datenbanken, Apostolen N. Papadopoulos und Yannis ManoloPouloSOUtherAnder-Raum-Füllkurven umfassen die Peano- und Morton- oder Z-Order-Kurven. Es gibt auch die Hilbert-II-Kurve, die eine "S '-Form hat, und nicht als" U "-Form. Die Hilbert-Kurve kann auch auf 3 Abmessungen angewendet werden, aber dieses Modul unterstützt jedoch nur 2 Abmessungen. Wie die meisten Raumfüllkurven, muss der Bereich in 2 auf die Leistung von n Teilen wie 8, 16, 32 usw. unterteilt werden, z. B. 8, 16, 32 usw. Verwenden Sie Mathe :: Kurve :: Hilbert; # Objekte, die 8x8-Kurve mit einem Schritt von 10 darstellen (dh 80x80 Pixel ziehen) Meine $ Hilbert = Mathe :: Kurve :: Hilbert-> Neu (Richtung => 'up', max => 3, im Uhrzeigersinn => 1, Schritt => 10); # Holen Sie sich einen Punkt von der Koordinaten meiner $ Point = $ hilbert-> pointfromcoordinates (20,60); # Holen Sie sich Koordinaten von einem Punkt mein ($ x, $ y) = $ hilbert-> koordinatenfrompoint ($ point); # Reichweite von Box My @ranges = $ hilbert-> rangefromcoordinates ($ x1, $ y1, $ x2, $ y2); # # Bild zeichnen, die Kurven darstellt, verwenden Sie GD; # Neues Bild erstellen Meine $ IM = NEUES GD :: Image (300.300); Mein $ Black = $ IM-> Colorallocate (0,0,0); mein $ blue = $ iM-> colorallocate (0,0255); meine $ count = 0; mein ($ x1, $ y1) = $ hilbert-> koordinatfrompoint ($ count ++); während (($ hilbert-> koordinatfrompoint ($ count)) ) {My ($ x2, $ y2) = $ hilbert-> koordinatfrompoint ($ count ++); $ im-> linie ($ x1, $ y1, $ x2, $ y2, $ schwarz); ($ x1, $ y1) = ($ x2, $ y2); } Anforderungen: · Perl.


Mathe :: Kurve :: Hilbert Zugehörige Software