루빅스-큐브-솔버
Python으로 코딩된 Rubik's Cube Solver.
Lucas와 Tom Brannan이 코딩한 솔버
솔버를 실행하려면 Cube.py 파일을 실행하세요. GUI가 자동으로 시작됩니다. 오류가 발생하면 tkinter가 설치되어 있지 않을 가능성이 있습니다. GUI를 실행하려면 이것이 필요합니다.
특징
솔버에 포함된 일부 기능을 보려면 지침을 읽으십시오. 포함된 다양한 기능은 다음과 같습니다.
- 사용자 또는 프로그램 생성 스크램블
- 맞춤형 움직임을 만드는 능력
- 해결 버튼을 누르거나 해결의 각 단계를 눌러 단계별로 해결되는 것을 확인할 수 있는 기능
- 사용자가 정의한 해결 양으로 시뮬레이션을 실행하는 기능(너무 많으면 프로그램이 정지될 수 있으므로 주의하세요)
- 스크램블이나 솔루션을 클립보드에 복사하고 외부에서 볼 수 있는 기능.
- 2D 큐브를 클릭하면 일반적으로 보이지 않는 다른 바닥 타일을 볼 수 있습니다.
다양한 명령어
GUI를 사용하지 않으려면 인터프리터에 함수 명령을 입력해도 됩니다. 다음은 유용한 것들 중 일부입니다:
- print_cube() 큐브를 텍스트 형식으로 인쇄합니다.
- scramble() 숫자, 문자열 형식의 스크램블을 제공하거나 25회 기본 스크램블의 경우 아무것도 제공할 수 없습니다.
- get_scramble() 이전 스크램블을 인쇄합니다.
- solve()는 큐브를 해결합니다
- get_moves()solv()를 사용하여 생성된 솔루션을 인쇄합니다.
- Simulation(num) 제공된 숫자는 시뮬레이션하려는 해결의 양입니다. 쟁탈전으로 최고의 해결을 반환할 뿐만 아니라 최악의 해결과 쟁탈전을 반환합니다.
솔버 자체는 CFOP(Fridrich) 해결 방법을 기반으로 합니다. Cross를 해결하고, F2L 단계를 수행하고, 2-look OLL과 2-look PLL을 수행합니다. 표기법은 큐빙 세계에서 사용되는 기본 표기법이 사용되지만 시계 반대 방향 이동은 아포스트로피(표준 방식) 또는 문자 i(i는 역수 표시)를 사용하여 표시할 수 있습니다.