Spirograph는 hypotrochoids와 epitrochoids를 그리는 장난감입니다. 이 도전을 위해, 우리는 hypotrochoids에 초점을 맞출 것입니다.
에서 위키 백과 :
hypotrochoid는 반경 R 의 고정 원 내부를 중심으로 회전 하는 반경 r 의 원에 연결된 점에 의해 추적되는 룰렛 이며 , 여기서 점은 내부 원의 중심으로부터 거리 d 입니다.
이에 대한 파라 메트릭 방정식은 다음과 같이 정의 할 수 있습니다.
여기서 θ 는 회전 원의 수평과 중심에 의해 형성된 각도입니다.
당신의 임무는 위에 정의 된 지점에 의해 추적 경로를 그릴 프로그램을 작성하는 것입니다. 입력으로 R , r , d 가 주어집니다 1과 200 사이의 모든 정수인 됩니다.
stdin, arguments 또는 user input에서이 입력을받을 수 있지만 프로그램으로 하드 코딩 할 수는 없습니다. 가장 편리한 형태로 받아 들일 수 있습니다. 문자열, 정수 등으로
취하다:
- 입력 단위는 픽셀 단위로 제공됩니다.
- R > = r
출력은 입력에 의해 정의 된 hypotrochoid의 그래픽 표현이어야합니다. ASCII 또는 기타 텍스트 기반 출력은 허용되지 않습니다. 이 이미지는 파일로 저장하거나 화면에 표시 할 수 있습니다. 선택한 입력에 대한 스크린 샷 또는 출력 이미지를 포함하십시오.
대비 제한에 따라 경로 / 배경에 대해 원하는 색상을 선택할 수 있습니다. 두 가지 색상은 스케일의 절반 이상에 HSV 'Value'구성 요소가 있어야합니다. 예를 들어에서 HSV를 측정하는 경우 [0...1]
최소한 0.5
차이 가 있어야합니다 . 사이 [0...255]
에는 최소한의 128
차이 가 있어야합니다 .
이것은 코드 골프이며 바이트 단위의 최소 소스 코드 크기입니다.
R>=r
되지만 1-200 범위의 어느 곳에 나있을 수 있습니다. d
r
R=200, r=1, d=200
. 원하는 경우 이미지를 입력 크기로 조정하거나 모두 보이는 한 일정한 크기로 유지할 수 있습니다.
R > r
또는R ≥ r
? (동일에r
와d
.)