Math :: Curve :: Hilbert

PERL-implementatie van Hilberts Space Vulcurve
Download nu

Math :: Curve :: Hilbert Rangschikking & Samenvatting

Advertentie

  • Rating:
  • Vergunning:
  • Perl Artistic License
  • Prijs:
  • FREE
  • Naam uitgever:
  • Aaron James Trevena
  • Uitgever website:
  • http://search.cpan.org/~teejay/

Math :: Curve :: Hilbert Tags


Math :: Curve :: Hilbert Beschrijving

PERL-implementatie van Hilberts Space Vulcurve Math :: Curve :: Hilbert is een Perl-module die bruikbare functies biedt met behulp van Hilberts Space-Filling Curve. Dit is handig voor dingen zoals dieheren, afvlakkende N-dimensionale gegevens, fractals - allerlei dingen echt. "Een ruimtevulcurve is een speciale fractale curve die de volgende basiskenmerken heeft:  Het dekt volledig een gebied, een volume of een Hyper-volume in respectievelijk 2-D-, 3-D- of ND-ruimte,  elk punt wordt eenmaal bezocht en slechts één keer (de curve is niet oversteken), en  buurpunten in de inheemse ruimte zullen waarschijnlijk buren zijn ruimte vulcurve. " Definitie van meerdere bereik-queryoptimalisatie in ruimtelijke databases, Apostolos N. Papadopoulos en Yannis Manolopoulosera-ruimtevulverencurven omvatten de peano- en morton of z-order curves. Er is ook de Hilbert II-curve die een 's' vorm heeft in plaats van een 'U' -vorm. De Hilbert-curve kan ook worden toegepast op 3 dimensies, maar deze module ondersteunt slechts 2 dimensies. Like de meeste ruimte vulcurven, het gebied moet worden verdeeld in 2 tot de kracht van n-delen, zoals 8, 16, 32, etc.Synopsis Gebruik Math :: Curve :: Hilbert; # Get object vertegenwoordigen 8x8 curve met een stap van 10 (dwz trek 80x80 pixels) My $ Hilbert = Math :: Curve :: Hilbert-> Nieuw (richting => 'omhoog', max => 3, met de klok mee => 1, stap => 10); # Krijg een punt van coördinaten My $ Point = $ Hilbert-> Pointfromkeninaten (20,60); # Krijg coördinaten van een punt mijn ($ x, $ y) = $ Hilbert-> coördinatenFrompoint ($ punt); # Krijg bereik (en) van box My @RANGES = $ HILBERT-> RANGEFROMBORDENINATEN ($ X1, $ Y1, $ X2, $ Y2); # # tekenafbeelding vertegenwoordigen van curve gebruik GD; # Maak een nieuwe afbeelding Mijn $ IM = NIEUWE GD :: Afbeelding (300.300); My $ Black = $ im-> ColorAllocate (0,0,0); My $ Blue = $ im-> ColorAllocate (0,0.255); mijn $ Count = 0; My ($ x1, $ y1) = $ Hilbert-> CoordinatesFompoint ($ Count ++); while (($ Hilbert-> CoordinatesFompoint ($ Count)) ) {My ($ x2, $ Y2) = $ Hilbert-> CoordinatesFompoint ($ Count ++); $ IM-> LINE ($ X1, $ Y1, $ X2, $ Y2, $ BLACK); ($ x1, $ y1) = ($ x2, $ y2); } Vereisten: · Perl


Math :: Curve :: Hilbert Gerelateerde software