우즈베키스탄에서 본 테셀레이션
정다각형을 이용한 테셀레이션 조합 찾기
정다각형을 이용하여 테셀레이션을 만들 때 필요한 조건!
[조건1] 한 꼭짓점에서 3개 이상의 정다각형이 모여야 함.
[조건2] 한 꼭짓점에 모인 정다각형 내각의 합이 360°이어야 함.
[조건3] 정다각형 한 내각의 크기가 150°을 넘어서는 안됨.
[조건4] 정다각형 한 내각의 크기가 자연수로 나타나지 않으면 사용할 수 없음.
(그 합이 360°가 되도록 통분하여 정리되는 경우가 존재하지 않음.)
위에서 사용할 수 있는 정다각형의 한 내각은 60°, 90°, 108°, 120°, 135°, 140°, 144°, 150°이다. ChatGPT와 파이썬을 이용하여 가능한 조합을 찾아보자.
[프롬프트] 60, 90, 108, 120, 135, 140, 144, 150을 조합하여 더했을 때, 360이 만들어지는 경우를 모두 찾아줘. 같은 수를 여러 번 사용해도 돼.
※ '정삼각형(60°) + 정십각형(144°) + 정십오각형(156°)=360°'이나 조건3을 만족하지 않음.
[프롬프트] 60, 90, 108, 120, 135, 140, 144, 150을 조합하여 더했을 때, 360이 만들어지는 경우를 모두 찾아줘. 같은 수를 여러 번 사용해도 돼. 파이썬 코드로 만들어 줘.
from itertools import combinations_with_replacement
# 주어진 각도 리스트
angles = [60, 90, 108, 120, 135, 140, 144, 150]
# 합이 360이 되는 조합을 찾는 함수
def find_combinations(angles, target=360):
valid_combinations = []
# 2개에서 6개까지의 조합을 시도
for r in range(2, 7):
for comb in combinations_with_replacement(angles, r):
if sum(comb) == target:
valid_combinations.append(comb)
return valid_combinations
# 결과 출력
combinations_360 = find_combinations(angles)
for comb in combinations_360:
print(comb)
위에서 만든 파이썬 코드를 myCompiler에서 실행해보자.
위의 과정을 통해 가능한 조합은 다음의 12가자리는 사실을 확인할 수 있다.
12가지 조합을 영상으로 확인해보자.
60°+60°+60°+60°+60°+60°=360°
60°+60°+60°+90°+90°=360°
60°+60°+60°+60°+120°=360°
90°+90°+90°+90°=360°
60°+60°+120°+120°=360°
60°+90°+90°+120°=360°
60°+60°+90°+150°=360°
120°+120°+120°=360°
108°+108°+144°=360°
90°+135°+135°=360°
90°+120°+150°=360°
60°+150°+150°=360°
정다각형을 이용한 테셀레이션 (1) 정규 테셀레이션_3가지 조합
정규 테셀레이션: 한 변의 길이가 같은 한 가지 정다각형 타일만 사용하여 평면을 빈틈이나 겹침없이 채우는 것
정다각형을 이용한 테셀레이션 (2) 반정규 테셀레이션_7가지 조합(8가지 패턴)
반정규 테셀레이션: 한 변의 길이가 같은 두 가지 이상의 정다각형을 조합하여 평면을 빈틈이나 겹침없이 채우는 것
정다각형을 이용한 테셀레이션 (3) 테셀레이션이 아닌 경우_2가지 조합
폴리패드로 정다각형 테셀레이션 만들기