이 모두이 작업을 수행하는 가장 쉬운 방법을 사용하여 회전 할 필요가 없습니다 있는지 확인하는 것입니다 귀하의 중심점 (즉, 다른 색상이 만나는 지점) 가 [0,0]
에 위치합니다. 그런 다음 그림의 회전 (90 °의 배수)은 윤곽의 값인 x
및/또는 y
의 부호를 변경하는 것으로 귀결됩니다.
그림이 [0 0]
과 다른 점에 있어야하는 경우 회전을 한 후에이 좌표를 추가하십시오.
그래서 코드에서 시작, 당신은이 작업을 수행 할 수 있습니다
x = [1 4 1 4 1 6.5 7 7]-7;
y = [3 4 5.5 5 8 7 8 3]-3;
c = [5 6];
col = [0 0 0;
rand(2,3);
1 1 1];
fill(x+c(1), y+c(2),col(1,:)); hold on;
fill(-x+c(1), y+c(2),col(2,:));
fill(x+c(1),-y+c(2),col(3,:));
fill(-x+c(1),-y+c(2),col(4,:)); hold off;
편집 : col
및 c
변수 대한 설명을.
변수 col
에는 rgb 스타일로 사용되는 색상이 포함되어 있습니다. 각 행은 색상입니다. rand
은 [0,1]
범위의 균일하게 난수를 생성합니다.이 값은 색상 값이 예상되는 곳이기도합니다. 위의 코드에서 2x3
임의의 행렬이 생성되므로 col
행렬 내에서 완벽하게 맞는 2 개의 임의의 색상을 의미합니다.
변수 c
에는 그림의 중심이 포함됩니다. 플롯을 보면 중심은 [5 6]
(x 축은 5, y 축은 6)입니다. 대신에 두 개의 변수를 사용할 수는 있지만 두 변수를 모두 변수에 유지하는 것이 더 쉽게 처리 할 수 있다고 생각합니다. x
과 y
변수에 대해 개인적으로 동일한 작업을 수행합니다. 이는 rotation matrices을보다 쉽게 사용할 수 있도록하기위한 것이지만 선택의 문제 일뿐입니다.
대단히 감사합니다. 매우 간단합니다. 그러나 몇 가지 명령을 이해하고 도와 주시겠습니까? C 변수가 어떻게 작동하는지 이해하려고합니다. 검정색으로 먼저 색상을 설정 한 다음 임의의 색상을 설정 한 다음 (검정색으로 2,3 가지 값을 이해하지 못함) 흰색으로 설정했는지 확인하십시오. –