mirror of
https://github.com/3b1b/manim.git
synced 2025-11-15 05:17:47 +00:00
A pretty map of S5
This commit is contained in:
parent
0231b49850
commit
51f002b3ba
1 changed files with 46 additions and 15 deletions
|
|
@ -32,28 +32,59 @@ def print_permutation(index_list):
|
|||
return "".join(perm_list)
|
||||
|
||||
|
||||
class PermutationGrid(Scene):
|
||||
|
||||
def text_box(self, str):
|
||||
box = TextMobject(str).scale(0.3)
|
||||
box.add(SurroundingRectangle(box, stroke_color = DARK_GREY))
|
||||
return box
|
||||
|
||||
|
||||
def construct(self):
|
||||
|
||||
N = 5
|
||||
|
||||
index_list = []
|
||||
for i in range(1, N + 1):
|
||||
index_list.append(i)
|
||||
for j in range(1, N):
|
||||
index_list.append(j)
|
||||
for k in range(1, N - 1):
|
||||
index_list.append(k)
|
||||
for l in range(1, N - 2):
|
||||
index_list.append(l)
|
||||
for m in range(1, N - 3):
|
||||
index_list.append(m)
|
||||
print print_permutation(index_list)
|
||||
N = 5
|
||||
|
||||
index_list = []
|
||||
perm5_box = VGroup()
|
||||
for i in range(1, N + 1):
|
||||
index_list.append(i)
|
||||
perm4_box = VGroup()
|
||||
for j in range(1, N):
|
||||
index_list.append(j)
|
||||
perm3_box = VGroup()
|
||||
for k in range(1, N - 1):
|
||||
index_list.append(k)
|
||||
perm2_box = VGroup()
|
||||
for l in range(1, N - 2):
|
||||
index_list.append(l)
|
||||
index_list.append(1)
|
||||
perm_box = self.text_box(print_permutation(index_list))
|
||||
if l > 1:
|
||||
perm_box.next_to(perm2_box[-1], DOWN, buff = 0)
|
||||
perm2_box.add(perm_box)
|
||||
index_list.pop()
|
||||
index_list.pop()
|
||||
if k > 1:
|
||||
perm2_box.next_to(perm3_box[-1], RIGHT, buff = 0.08)
|
||||
perm3_box.add(perm2_box)
|
||||
index_list.pop()
|
||||
perm3_box.add(SurroundingRectangle(perm3_box, buff = 0.12, stroke_color = LIGHT_GRAY))
|
||||
if j > 1:
|
||||
perm3_box.next_to(perm4_box[-1], DOWN, buff = 0)
|
||||
perm4_box.add(perm3_box)
|
||||
index_list.pop()
|
||||
if i > 1:
|
||||
perm4_box.next_to(perm5_box[-1], RIGHT, buff = 0.16)
|
||||
perm5_box.add(perm4_box)
|
||||
index_list.pop()
|
||||
index_list.pop()
|
||||
index_list.pop()
|
||||
|
||||
perm5_box.move_to(ORIGIN)
|
||||
self.add(perm5_box)
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue