From Squares and Cubes to Surfaces (bidimensional Manifolds) and tridimensional Manifolds

Jean-François COLONNA

[Contact me]

[

[

[

(CMAP28 WWW site: this page was created on 01/03/2023 and last updated on 06/13/2024 13:29:23 -CEST-)

Contents:

- 1-The bidimensional Peano Surjection:
- 2-The tridimensional Peano Surjection:
- 3-The bidimensional Hilbert Curves:
- 4-The tridimensional Hilbert Curves:
- 5-Tridimensional Surfaces (Bidimensional Manifolds):
- 6-Tridimensional Manifolds:
- 7-Beyond:

[0,1] --> [0,1]x[0,1]Let's

T = 0.ALet's_{1}A_{2}A_{3}... ∈ [0,1] with A_{i}∈ {0,1,2}

X(T) = 0.B_{1}B_{2}B_{3}... ∈ [0,1] with B_{i}∈ {0,1,2}

Y(T) = 0.Cwith :_{1}C_{2}C_{3}... ∈ [0,1] with C_{i}∈ {0,1,2}

B_{n}= A_{2n-1}if A_{2}+A_{4}+...+A_{2n-0}is even

B_{n}= 2-A_{2n-1}otherwise

C_{n}= A_{2n}if A_{1}+A_{3}+...+A_{2n-1}is even

C_{n}= 2-A_{2n}otherwise

These two functions X(T) and Y(T) are the coordinates of a point P(T) inside the [0,1]x[0,1] square. The displayed "curve" -as little spheres- is the trajectory of P(T) when T varies from 0 (lower left corner) to 1-epsilon (upper right corner).

Here are the four first bidimensional Peano curves with an increasing number of digits {2,4,6,8}:

[See the used color set to display the parameter T]

[0,1] --> [0,1]x[0,1]x[0,1]as a generalization of the bidimensional one.

Let's

T = 0.ALet's_{1}A_{2}A_{3}... ∈ [0,1] with A_{i}∈ {0,1,2}

X(T) = 0.B_{1}B_{2}B_{3}... ∈ [0,1] with B_{i}∈ {0,1,2}

Y(T) = 0.C_{1}C_{2}C_{3}... ∈ [0,1] with C_{i}∈ {0,1,2}

Y(T) = 0.Dwith :_{1}D_{2}D_{3}... ∈ [0,1] with D_{i}∈ {0,1,2}

B_{n}= A_{3n-2}if A_{3}+A_{6}+...+A_{3n-0}is even

B_{n}= 2-A_{3n-2}otherwise

C_{n}= A_{3n-1}if A_{2}+A_{5}+...+A_{3n-1}is even

C_{n}= 2-A_{3n-1}otherwise

D_{n}= A_{3n}if A_{1}+A_{4}+...+A_{3n-2}is even

D_{n}= 2-A_{3n}otherwise

These three functions X(T), Y(T) and Z(T) are the coordinates of a point P(T) inside the [0,1]x[0,1]x[0,1] cube. The displayed "curve" is the trajectory of P(T) -displayed as little spheres- when T varies from 0 (lower left corner) to 1-epsilon (upper right corner).

Here are the three first tridimensional Peano curves with an increasing number of digits {3,6,9}:

[See the used color set to display the parameter T]

X_{1}(T=0)=0 Y_{1}(T=0)=0 (lower left corner)

X_{1}(T=1)=1 Y_{1}(T=1)=0 (lower right corner)

Then one defines a sequence of curves

C_{i}(T) = {X_{i}(T),Y_{i}(T)} ∈ [0,1]x[0,1] --> C_{i+1}(T) = {X_{i+1}(T),Y_{i+1}(T)} ∈ [0,1]x[0,1]

if T ∈ [0,1/4[: X_{i+1}(T) = Y_{i}(4T-0) Y_{i+1}(T) = X_{i}(4T-0)Transformation 1

if T ∈ [1/4,2/4[: X_{i+1}(T) = X_{i}(4T-1) Y_{i+1}(T) = 1+Y_{i}(4T-1)Transformation 2

if T ∈ [2/4,3/4[: X_{i+1}(T) = 1+X_{i}(4T-2) Y_{i+1}(T) = 1+Y_{i}(4T-2)Transformation 3

if T ∈ [3/4,1]: X_{i+1}(T) = 2-Y_{i}(4T-3) Y_{i+1}(T) = 1-X_{i}(4T-3)Transformation 4

Please note that 4=2

See a special

Here are the five first bidimensional Hilbert curves with an increasing number of iterations :

[See the used color set to display the parameter T]

Here are some examples of Hilbert-like bidimensional curves using different generating curves :

X_{1}(T=0)=0 Y_{1}(T=0)=0 Z_{1}(T=0)=0 (lower left foreground corner)

X_{1}(T=1)=1 Y_{1}(T=1)=0 Z_{1}(T=1)=0 (lower right foreground corner)

Then one defines a sequence of curves

C_{i}(T) = {X_{i}(T),Y_{i}(T),Z_{i}(T)} ∈ [0,1]x[0,1]x[0,1] --> C_{i+1}(T) = {X_{i+1}(T),Y_{i+1}(T),Z_{i+1}(T)} ∈ [0,1]x[0,1]x[0,1]

if T ∈ [0,1/8[: X_{i+1}(T) = X_{i}(8T-0) Y_{i+1}(T) = Z_{i}(8T-0) Z_{i+1}(T) = Y_{i}(8T-0)Transformation 1

if T ∈ [1/8,2/8[: X_{i+1}(T) = Z_{i}(8T-1) Y_{i+1}(T) = 1+Y_{i}(8T-1) Z_{i+1}(T) = X_{i}(8T-1)Transformation 2

if T ∈ [2/8,3/8[: X_{i+1}(T) = 1+X_{i}(8T-2) Y_{i+1}(T) = 1+Y_{i}(8T-2) Z_{i+1}(T) = Z_{i}(8T-2)Transformation 3

if T ∈ [3/8,4/8[: X_{i+1}(T) = 1+Z_{i}(8T-3) Y_{i+1}(T) = 1-X_{i}(8T-3) Z_{i+1}(T) = 1-Y_{i}(8T-3)Transformation 4

if T ∈ [4/8,5/8[: X_{i+1}(T) = 2-Z_{i}(8T-4) Y_{i+1}(T) = 1-X_{i}(8T-4) Z_{i+1}(T) = 1+Y_{i}(8T-4)Transformation 5

if T ∈ [5/8,6/8[: X_{i+1}(T) = 1+X_{i}(8T-5) Y_{i+1}(T) = 1+Y_{i}(8T-5) Z_{i+1}(T) = 1+Z_{i}(8T-5)Transformation 6

if T ∈ [6/8,7/8[: X_{i+1}(T) = 1-Z_{i}(8T-6) Y_{i+1}(T) = 1+Y_{i}(8T-6) Z_{i+1}(T) = 2-X_{i}(8T-6)Transformation 7

if T ∈ [7/8,1]: X_{i+1}(T) = X_{i}(8T-7) Y_{i+1}(T) = 1-Z_{i}(8T-7) Z_{i+1}(T) = 2-Y_{i}(8T-7)Transformation 8

Please note that 8=2

See a special

Here are the four first tridimensional Hilbert curves with an increasing number of iterations :

[See the used color set to display the parameter T]

Here are some examples of Hilbert-like tridimensional curves using different generating curves and in particular "open" knots :

[More information about Peano Curves and Infinite Knots -in english/en anglais-]

[Plus d'informations à propos des Courbes de Peano et des Nœuds Infinis -en français/in french-]

X = F_{x}(u,v)

Y = F_{y}(u,v)

Z = Fwith:_{z}(u,v)

u ∈ [U_{min},U_{max}]

v ∈ [VFor example:_{min},V_{max}]

F_{x}(u,v) = R.sin(u).cos(v)

F_{y}(u,v) = R.sin(u).sin(v)

Fwith:_{z}(u,v) = R.cos(u)

u ∈ [0,pi]

v ∈ [0,2.pi]defines a sphere with R as the radius and the origin of the coordinates as the center.

[U

v ^ | V |...... --------------------------- max | |+++++++++++++++++++++++++++| | |+++++++++++++++++++++++++++| | |+++++++++++++++++++++++++++| | |+++++++++++++++++++++++++++| | |+++++++++++++++++++++++++++| | |+++++++++++++++++++++++++++| | |+++++++++++++++++++++++++++| | |+++++++++++++++++++++++++++| | |+++++++++++++++++++++++++++| V |...... --------------------------- min | : : | : : O-------------------------------------------------> U U u min max

Let's define a curve that fills the [0,1]x[0,1] square :

^ | 1 |--------------- | +++++ +++++ | | + + + + | | + +++++ + | | + + | | +++++ +++++ | | + + | | +++++ +++++ | 0 O------------------------> 0 1

Obviously one can define a mapping between the [0,1]x[0,1] square and the [U

v ^ | V |...... --------------------------- max | | ++++++++ ++++++++ | | | + + + + | | | + + + + | | | + +++++++++++ + | | | + C + | | | ++++++++ ++++++++ | | | + + | | | + + | | | ++++++++ ++++++++ | V |...... --------------------------- min | : : | : : O-------------------------------------------------> U U u min maxThen it suffices to display only the points {F

Here are some examples of this process :

Surface | ==> | C Curve | ==> | Surface filling Curve |

==> | ==> | |||

==> | ==> | |||

==> | ==> |

==> | ==> |

==> | ==> | |||

==> | ==> | |||

==> | ==> |

==> | ==> | |||

==> | ==> | |||

==> | ==> |

==> | ==> | |||

==> | ==> | |||

==> | ==> | |||

==> | ==> | |||

==> | ==> | |||

==> | ==> | |||

==> | ==> | |||

==> | ==> |

==> | ==> | |||

==> | ==> | |||

==> | ==> |

==> | ==> |

==> | ==> |

==> | ==> |

==> | ==> |

X = F_{x}(u,v,w)

Y = F_{y}(u,v,w)

Z = Fwith:_{z}(u,v,w)

u ∈ [U_{min},U_{max}]

v ∈ [V_{min},V_{max}]

w ∈ [W[U_{min},W_{max}]

It is obvious to generalize the preceding bidimensional process in the tridimensional space...

Here are some examples of this process :

Tridimensional Manifold | ==> | C Curve | ==> | Tridimensional Manifold filling Curve |

==> | ==> |

==> | ==> |

==> | ==> |

==> | ==> |

==> | ==> |

==> | ==> |

==> | ==> |

==> | ==> |

==> | ==> |

==> | ==> |

==> | ==> |

==> | ==> |

==> | ==> |

==> | ==> |

==> | ==> |

==> | ==> |

==> | ==> |

==> | ==> |

==> | ==> |

==> | ==> |

Here are some examples of these extended processes :

Copyright © CMAP (Centre de Mathématiques APpliquées) UMR CNRS 7641 / École polytechnique, Institut Polytechnique de Paris, 2023-2024.