Corba de Moore
La corba de Moore és una corba fractal contínua que recobreix el pla. Concretament, es tracta d'una variant cíclica de la corba de Hilbert.[1] Va ser descrita pel matemàtic Eliakim Hastings Moore l'any 1900.[2]
Com que tendeix al recobriment de tot el pla, la seva dimensió de Hausdorff-Bezikóvitx és 2.
Procediment
Cada iteració de la corba de Moore s'obté a partir de la corba de Hilbert d'ordre anterior, col·locant-ne quatre còpies de manera que formen una línia contínua. Es tracta per tant d'una modificació només en l'últim nivell de la corba de Hilbert en cada cas, la qual permet tancar el cicle ja que els dos extrems de la línia queden adjacents.
En pseudocodi es pot definir de la següent manera:
FUNCIÓ generar_punts(order) n = order ** 2 // Ordre elevat a 2 total = n ** 2 // N elevat a 2 points = [] // Definir la array os s'emmagatzemen els punts len = 2 ** (order - 1) // Distància entre quadrants for n in 0..3 // Cadascuna de les còpies de la funció de Hilbert for i in 0...total point = hilbert(i, order) // Obtenir el punt actual a partir de la funció de Hilbert case n when 0 // Quadrant esquerra-avall nx = (len - 1 - point.y / 2) ny = (len - 1 - point.x / 2) + len when 1 // Quadrant esquerra-amunt nx = (len - 1 - point.y / 2) ny = (len - 1 - point.x / 2) when 2 // Quadrant dreta-amunt nx = (point.y / 2) + len ny = (point.x / 2) when 3 // Quadrant dreta-avall nx = (point.y / 2) + len ny = (point.x / 2) + len end point.x = nx point.y = ny points.push(point) // Emmagatzemar el punt end end end
Generalització per qualsevol dimensió
Hi ha una generalització elegant de la corba de Hilbert a més dimensions. Si es llegeixen els vèrtex d'un hipercub de n dimensions en ordre determinat pel codi Gray es pot generar una corba de Hilbert de n dimensions.[3]
Per construir una corba de Moore d'ordre i en n dimensions, utilitzes 2n còpies de la corba de Hilbert d'ordre i-1 i n dimensions a cada cantonada de l'hipercub n-dimensional, les gires i les connectes amb segments de línia. Els segments afegits segueixen la ruta d'una corba de Hilbert d'ordre 1. Aquesta construcció funciona fins i tot per la corba de Moore d'ordre 1, si defineixes l'ordre 0 de la corba de Hilbert com un únic punt.[4]
Vegeu també
- Corba de Hilbert
- Corba de Peano
Referències
- ↑ A. Bogomolny, «Plane Filling Curves from Interactive Mathematics Miscellany and Puzzles». [Consulta: 17 de març de 2020]
- ↑ Moore, E. H. «On Certain Crinkly Curves». Transactions of the American Mathematical Society, 1, 1, 1900, pàg. 72-90. DOI: 10.2307/1986405. JSTOR: 1986405.
- ↑ Weisstein, Eric W. «Hilbert Curve». A Wolfram Web Resource. MathWord. [Consulta: 17 març 2020].
- ↑ Dickau, Robert. «Hilbert and Moore 3D Fractal Curves». Wolfram Demonstrations Project, 07-03-2011. [Consulta: 17 març 2020].
Enllaços externs
- Animated Moore curve, a space-filling curve (anglès)