// output of ./demo/comb/string-subst-hilbert3d-demo.cc: // Description: //% 3-dimensional Hilbert curve generated by an L-system. arg 1: 2 == ldn [Number of recursions, will create 8**ldn points] default=2 arg 2: 4160 == cmax [Max length of string] default=4160 1: dir=[ 0, 1, 0 ] ^ pos=[ 0, 1, 0 ] 2: dir=[ 1, 0, 0 ] > pos=[ 1, 1, 0 ] 3: dir=[ 0, -1, 0 ] v pos=[ 1, 0, 0 ] 4: dir=[ 0, 0, 1 ] + pos=[ 1, 0, 1 ] 5: dir=[ 0, 1, 0 ] ^ pos=[ 1, 1, 1 ] 6: dir=[-1, 0, 0 ] < pos=[ 0, 1, 1 ] 7: dir=[ 0, -1, 0 ] v pos=[ 0, 0, 1 ] 8: dir=[ 0, 0, 1 ] + pos=[ 0, 0, 2 ] 9: dir=[ 1, 0, 0 ] > pos=[ 1, 0, 2 ] 10: dir=[ 0, 0, 1 ] + pos=[ 1, 0, 3 ] 11: dir=[-1, 0, 0 ] < pos=[ 0, 0, 3 ] 12: dir=[ 0, 1, 0 ] ^ pos=[ 0, 1, 3 ] 13: dir=[ 1, 0, 0 ] > pos=[ 1, 1, 3 ] 14: dir=[ 0, 0, -1 ] - pos=[ 1, 1, 2 ] 15: dir=[-1, 0, 0 ] < pos=[ 0, 1, 2 ] 16: dir=[ 0, 1, 0 ] ^ pos=[ 0, 2, 2 ] 17: dir=[ 1, 0, 0 ] > pos=[ 1, 2, 2 ] 18: dir=[ 0, 0, 1 ] + pos=[ 1, 2, 3 ] 19: dir=[-1, 0, 0 ] < pos=[ 0, 2, 3 ] 20: dir=[ 0, 1, 0 ] ^ pos=[ 0, 3, 3 ] 21: dir=[ 1, 0, 0 ] > pos=[ 1, 3, 3 ] 22: dir=[ 0, 0, -1 ] - pos=[ 1, 3, 2 ] 23: dir=[-1, 0, 0 ] < pos=[ 0, 3, 2 ] 24: dir=[ 0, 0, -1 ] - pos=[ 0, 3, 1 ] 25: dir=[ 0, 0, -1 ] - pos=[ 0, 3, 0 ] 26: dir=[ 0, -1, 0 ] v pos=[ 0, 2, 0 ] 27: dir=[ 0, 0, 1 ] + pos=[ 0, 2, 1 ] 28: dir=[ 1, 0, 0 ] > pos=[ 1, 2, 1 ] 29: dir=[ 0, 0, -1 ] - pos=[ 1, 2, 0 ] 30: dir=[ 0, 1, 0 ] ^ pos=[ 1, 3, 0 ] 31: dir=[ 0, 0, 1 ] + pos=[ 1, 3, 1 ] 32: dir=[ 1, 0, 0 ] > pos=[ 2, 3, 1 ] 33: dir=[ 0, 0, -1 ] - pos=[ 2, 3, 0 ] 34: dir=[ 0, -1, 0 ] v pos=[ 2, 2, 0 ] 35: dir=[ 0, 0, 1 ] + pos=[ 2, 2, 1 ] 36: dir=[ 1, 0, 0 ] > pos=[ 3, 2, 1 ] 37: dir=[ 0, 0, -1 ] - pos=[ 3, 2, 0 ] 38: dir=[ 0, 1, 0 ] ^ pos=[ 3, 3, 0 ] 39: dir=[ 0, 0, 1 ] + pos=[ 3, 3, 1 ] 40: dir=[ 0, 0, 1 ] + pos=[ 3, 3, 2 ] 41: dir=[-1, 0, 0 ] < pos=[ 2, 3, 2 ] 42: dir=[ 0, 0, 1 ] + pos=[ 2, 3, 3 ] 43: dir=[ 1, 0, 0 ] > pos=[ 3, 3, 3 ] 44: dir=[ 0, -1, 0 ] v pos=[ 3, 2, 3 ] 45: dir=[-1, 0, 0 ] < pos=[ 2, 2, 3 ] 46: dir=[ 0, 0, -1 ] - pos=[ 2, 2, 2 ] 47: dir=[ 1, 0, 0 ] > pos=[ 3, 2, 2 ] 48: dir=[ 0, -1, 0 ] v pos=[ 3, 1, 2 ] 49: dir=[-1, 0, 0 ] < pos=[ 2, 1, 2 ] 50: dir=[ 0, 0, 1 ] + pos=[ 2, 1, 3 ] 51: dir=[ 1, 0, 0 ] > pos=[ 3, 1, 3 ] 52: dir=[ 0, -1, 0 ] v pos=[ 3, 0, 3 ] 53: dir=[-1, 0, 0 ] < pos=[ 2, 0, 3 ] 54: dir=[ 0, 0, -1 ] - pos=[ 2, 0, 2 ] 55: dir=[ 1, 0, 0 ] > pos=[ 3, 0, 2 ] 56: dir=[ 0, 0, -1 ] - pos=[ 3, 0, 1 ] 57: dir=[ 0, 1, 0 ] ^ pos=[ 3, 1, 1 ] 58: dir=[-1, 0, 0 ] < pos=[ 2, 1, 1 ] 59: dir=[ 0, -1, 0 ] v pos=[ 2, 0, 1 ] 60: dir=[ 0, 0, -1 ] - pos=[ 2, 0, 0 ] 61: dir=[ 0, 1, 0 ] ^ pos=[ 2, 1, 0 ] 62: dir=[ 1, 0, 0 ] > pos=[ 3, 1, 0 ] 63: dir=[ 0, -1, 0 ] v pos=[ 3, 0, 0 ]