주요 콘텐츠

cylinder

설명

원통 데이터 생성하기

[X,Y,Z] = cylinder는 원통을 그리지 않고 원통의 x, y, z 좌표를 포함하는 3개의 2×21 행렬을 반환합니다. 원통은 반지름이 1이고 원주에 균일한 간격의 점 20개가 있습니다. 밑면은 xy 평면에 평행합니다.

원통을 그리려면 X, Y, Zsurf 또는 mesh 함수에 전달하십시오.

예제

[X,Y,Z] = cylinder(r)은 지정된 윤곽 곡선이 r이고 균일 간격의 점 20개가 원주에 있는 원통의 x, y, z 좌표를 반환합니다. 함수는 r의 각 요소를 원통의 단위 높이를 기준으로 균일한 간격으로 위치한 각각의 높이에서의 반지름으로 간주합니다. 각 좌표 행렬의 크기는 m×21이며, 여기서 m=numel(r)입니다. 단, r이 스칼라인 경우 m=2입니다.

예제

[X,Y,Z] = cylinder(r,n)은 지정된 윤곽 곡선이 r이고 균일 간격의 점 n개가 원주에 있는 원통의 x, y, z 좌표를 반환합니다. 각 좌표 행렬의 크기는 m×n+1이며, 여기서 m=numel(r)입니다. 단, r이 스칼라인 경우 m=2입니다.

원통 플로팅하기

cylinder(___)는 좌표를 반환하지 않고 원통을 플로팅합니다. 이 구문을 위에 열거된 구문의 입력 인수와 함께 사용하십시오.

예제

cylinder(___,Name=Value)는 하나 이상의 이름-값 인수를 사용하여 원통 플롯의 속성을 설정합니다. 예를 들어, 원통의 색과 투명도를 지정할 수 있습니다. 속성 목록은 Surface 속성 항목을 참조하십시오. (R2024b 이후)

cylinder(ax,___)는 현재 좌표축 대신 ax로 지정된 좌표축에 플로팅합니다. 좌표축을 첫 번째 입력 인수로 지정합니다.

예제

모두 축소

반지름이 1인 원통을 만들고 플로팅합니다.

cylinder

Figure contains an axes object. The axes object contains an object of type surface.

입력값 r을 포함하여 원통의 반지름을 지정합니다. 그런 다음 반환된 Z 좌표를 수정하여 원통의 높이를 지정합니다.

X, Y, Z를 반지름이 4인 원통의 좌표로 정의합니다.

r = 4;
[X,Y,Z] = cylinder(r);

Z 좌표를 수정하여 높이를 20으로 지정합니다. 원통을 플로팅합니다.

h = 20;
Z = Z*h;
surf(X,Y,Z)

Figure contains an axes object. The axes object contains an object of type surface.

원통을 만들고 반환된 좌표를 사용하여 여러 위치에 여러 개의 원통을 플로팅합니다.

윤곽 함수 2 + cos(t)로 정의된 원통을 만듭니다.

t = 0:pi/10:2*pi;
r = 2 + cos(t);
[X,Y,Z] = cylinder(r);

밑면이 원점에 위치하도록 원통을 플로팅합니다.

surf(X,Y,Z)

Figure contains an axes object. The axes object contains an object of type surface.

첫 번째 원통 위에 추가로 2개의 원통을 플로팅합니다.

hold on
surf(X,Y,Z+1)
surf(X,Y,Z+2)

Figure contains an axes object. The axes object contains 3 objects of type surface.

입력 인수

모두 축소

윤곽 곡선으로, 벡터로 지정됩니다. cylinderr의 각 요소를 원통의 단위 높이를 기준으로 균일한 간격으로 위치한 각각의 높이에서의 반지름으로 간주합니다.

원통 원주에 있는 점의 개수로, 양의 정수로 지정됩니다.

대상 좌표축으로, Axes 객체로 지정됩니다. 좌표축을 지정하지 않을 경우 cylinder는 현재 좌표축에 플로팅합니다.

이름-값 인수

모두 축소

선택적 인수 쌍을 Name1=Value1,...,NameN=ValueN으로 지정합니다. 여기서 Name은 인수 이름이고 Value는 대응값입니다. 이름-값 인수는 다른 인수 뒤에 와야 하지만, 인수 쌍의 순서는 상관없습니다.

예: cylinder(4,FaceColor="red")는 빨간색 원통을 플로팅합니다.

참고

여기에 나와 있는 속성은 일부에 불과합니다. 전체 목록을 보려면 Surface 속성 항목을 참조하십시오.

면 색으로, 이 표에 있는 값 중 하나로 지정됩니다.

설명
'flat'

CData 속성의 값에 따라 각 면에 각각 다른 색을 사용합니다. 먼저 CData 속성을 ZData와 크기가 같은 행렬로 지정해야 합니다. 각 면 첫 번째 꼭짓점의 색 값(양의 xy 방향)은 전체 면의 색을 결정합니다. FaceAlpha 속성이 'interp'로 설정된 경우 이 값을 사용할 수 없습니다.

Sample of a surface with each face a different color based on sample values in the CData property

'interp'

CData 속성의 값에 따라 각 면에 보간된 색을 사용합니다. 먼저 CData 속성을 ZData와 크기가 같은 행렬로 지정해야 합니다. 꼭짓점에서 색 값을 보간하므로 면마다 색이 달라집니다. FaceAlpha 속성이 'flat'으로 설정된 경우 이 값을 사용할 수 없습니다.

Sample of a surface with each face showing different interpolated coloring based on sample values in the CData property

RGB 3색, 16진수 색 코드 또는 색 이름

모든 면에 지정된 색을 사용합니다. 이 옵션은 CData 속성의 색 값을 사용하지 않습니다.

Sample of a surface with all faces shown in red

'texturemap'곡면에 맞게 CData의 색 데이터를 변환합니다.
'none'면을 그리지 않습니다.

RGB 3색과 16진수 색 코드는 사용자 지정 색을 지정할 때 유용합니다.

  • RGB 3색은 요소를 3개 가진 행 벡터로, 각 요소는 색을 구성하는 빨간색, 녹색, 파란색의 농도를 지정합니다. 농도의 범위는 [0,1]이어야 합니다(예: [0.4 0.6 0.7]).

  • 16진수 색 코드는 문자형 벡터 또는 string형 스칼라로, 해시 기호(#)로 시작하고 그 뒤에 3자리 또는 6자리의 16진수 숫자(0에서 F 사이일 수 있음)가 옵니다. 이 값은 대/소문자를 구분하지 않습니다. 따라서 색 코드 "#FF8800", "#ff8800", "#F80""#f80"은 모두 동일합니다.

몇몇의 흔한 색은 이름으로 지정할 수도 있습니다. 다음 표에는 명명된 색 옵션과 그에 해당하는 RGB 3색 및 16진수 색 코드가 나와 있습니다.

색 이름짧은 이름RGB 3색16진수 색 코드모양
"red""r"[1 0 0]"#FF0000"

Sample of the color red

"green""g"[0 1 0]"#00FF00"

Sample of the color green

"blue""b"[0 0 1]"#0000FF"

Sample of the color blue

"cyan" "c"[0 1 1]"#00FFFF"

Sample of the color cyan

"magenta""m"[1 0 1]"#FF00FF"

Sample of the color magenta

"yellow""y"[1 1 0]"#FFFF00"

Sample of the color yellow

"black""k"[0 0 0]"#000000"

Sample of the color black

"white""w"[1 1 1]"#FFFFFF"

Sample of the color white

다음 표에는 라이트 테마와 다크 테마에서 플롯의 디폴트 색 팔레트가 나열되어 있습니다.

팔레트팔레트 색

"gem" — 라이트 테마 디폴트 값

R2025a 이전: 대부분의 플롯은 기본적으로 이 색을 사용합니다.

Sample of the "gem" color palette

"glow" — 다크 테마 디폴트 값

Sample of the "glow" color palette

orderedcolors 함수와 rgb2hex 함수를 사용하여 이러한 팔레트의 RGB 3색과 16진수 색 코드를 가져올 수 있습니다. 예를 들어, "gem" 팔레트의 RGB 3색을 가져와서 16진수 색 코드로 변환해 보겠습니다.

RGB = orderedcolors("gem");
H = rgb2hex(RGB);

R2023b 이전: RGB = get(groot,"FactoryAxesColorOrder")를 사용하여 RGB 3색을 가져옵니다.

R2024a 이전: H = compose("#%02X%02X%02X",round(RGB*255))를 사용하여 16진수 색 코드를 가져옵니다.

면 투명도로, 다음 값 중 하나로 지정됩니다.

  • 범위 [0,1] 사이에 있는 스칼라 값 — 모든 면에 균일한 투명도를 사용합니다. 값이 1이면 완전히 불투명하고 0이면 완전히 투명합니다. 01 사이의 값을 지정하면 반투명해집니다. 이 옵션은 AlphaData 속성의 투명도 값을 사용하지 않습니다.

  • 'flat'AlphaData 속성의 값에 따라 각 면에 서로 다른 투명도를 사용합니다. 첫 번째 꼭짓점의 투명도 값에 따라 전체 면의 투명도가 결정됩니다. 먼저 AlphaData 속성을 ZData 속성과 크기가 같은 행렬로 지정해야 합니다. 또한 FaceColor 속성이 'flat'으로 설정되어 있어야 합니다.

  • 'interp'AlphaData 속성의 값에 따라 각 면에 보간된 투명도를 사용합니다. 꼭짓점의 값을 보간하기 때문에 각 면에서 투명도가 다릅니다. 먼저 AlphaData 속성을 ZData 속성과 크기가 같은 행렬로 지정해야 합니다. 또한 FaceColor 속성이 'interp'로 설정되어 있어야 합니다.

  • 'texturemap' — 곡면에 맞게 AlphaData의 데이터를 변환합니다.

모서리 선 색으로, 여기에 나열된 값 중 하나로 지정됩니다. 디폴트 색 [0 0 0]은 검은색 모서리에 해당합니다.

설명
'none'모서리를 그리지 않습니다.
'flat'

CData 속성의 값을 기반으로 하여 각 모서리에 다른 색을 사용합니다. 먼저 CData 속성을 ZData와 크기가 같은 행렬로 지정해야 합니다. 각 면 첫 번째 꼭짓점의 색 값(양의 xy 방향)은 인접 모서리의 색을 결정합니다. EdgeAlpha 속성이 'interp'로 설정된 경우 이 값을 사용할 수 없습니다.

Sample of a surface with each edge a different color based on sample values in the CData property

'interp'

CData 속성의 값을 기반으로 하여 각 모서리에 보간된 색을 사용합니다. 먼저 CData 속성을 ZData와 크기가 같은 행렬로 지정해야 합니다. 꼭짓점에서 색 값을 선형적으로 보간하므로 모서리마다 색이 달라집니다. EdgeAlpha 속성이 'flat'으로 설정된 경우 이 값을 사용할 수 없습니다.

Sample of a surface with each edge showing different interpolated coloring based on sample values in the CData property

RGB 3색, 16진수 색 코드 또는 색 이름

모든 모서리에 지정된 색을 사용합니다. 이 옵션은 CData 속성의 색 값을 사용하지 않습니다.

Sample of a surface with all edges shown in red

RGB 3색과 16진수 색 코드는 사용자 지정 색을 지정할 때 유용합니다.

  • RGB 3색은 요소를 3개 가진 행 벡터로, 각 요소는 색을 구성하는 빨간색, 녹색, 파란색의 농도를 지정합니다. 농도의 범위는 [0,1]이어야 합니다(예: [0.4 0.6 0.7]).

  • 16진수 색 코드는 문자형 벡터 또는 string형 스칼라로, 해시 기호(#)로 시작하고 그 뒤에 3자리 또는 6자리의 16진수 숫자(0에서 F 사이일 수 있음)가 옵니다. 이 값은 대/소문자를 구분하지 않습니다. 따라서 색 코드 "#FF8800", "#ff8800", "#F80""#f80"은 모두 동일합니다.

몇몇의 흔한 색은 이름으로 지정할 수도 있습니다. 다음 표에는 명명된 색 옵션과 그에 해당하는 RGB 3색 및 16진수 색 코드가 나와 있습니다.

색 이름짧은 이름RGB 3색16진수 색 코드모양
"red""r"[1 0 0]"#FF0000"

Sample of the color red

"green""g"[0 1 0]"#00FF00"

Sample of the color green

"blue""b"[0 0 1]"#0000FF"

Sample of the color blue

"cyan" "c"[0 1 1]"#00FFFF"

Sample of the color cyan

"magenta""m"[1 0 1]"#FF00FF"

Sample of the color magenta

"yellow""y"[1 1 0]"#FFFF00"

Sample of the color yellow

"black""k"[0 0 0]"#000000"

Sample of the color black

"white""w"[1 1 1]"#FFFFFF"

Sample of the color white

다음 표에는 라이트 테마와 다크 테마에서 플롯의 디폴트 색 팔레트가 나열되어 있습니다.

팔레트팔레트 색

"gem" — 라이트 테마 디폴트 값

R2025a 이전: 대부분의 플롯은 기본적으로 이 색을 사용합니다.

Sample of the "gem" color palette

"glow" — 다크 테마 디폴트 값

Sample of the "glow" color palette

orderedcolors 함수와 rgb2hex 함수를 사용하여 이러한 팔레트의 RGB 3색과 16진수 색 코드를 가져올 수 있습니다. 예를 들어, "gem" 팔레트의 RGB 3색을 가져와서 16진수 색 코드로 변환해 보겠습니다.

RGB = orderedcolors("gem");
H = rgb2hex(RGB);

R2023b 이전: RGB = get(groot,"FactoryAxesColorOrder")를 사용하여 RGB 3색을 가져옵니다.

R2024a 이전: H = compose("#%02X%02X%02X",round(RGB*255))를 사용하여 16진수 색 코드를 가져옵니다.

모서리 투명도로, 다음 값 중 하나로 지정됩니다.

  • [0,1] 범위의 스칼라 — 모든 모서리에 균일한 투명도를 사용합니다. 값이 1이면 완전히 불투명하고 0이면 완전히 투명합니다. 01 사이의 값을 지정하면 반투명해집니다. 이 옵션은 AlphaData 속성의 투명도 값을 사용하지 않습니다.

  • 'flat'AlphaData 속성의 값에 따라 각 모서리에 서로 다른 투명도를 사용합니다. 먼저 AlphaData 속성을 ZData 속성과 크기가 같은 행렬로 지정해야 합니다. 첫 번째 꼭짓점의 투명도 값에 따라 전체 모서리의 투명도가 결정됩니다. 또한 EdgeColor 속성이 'flat'으로 설정되어 있어야 합니다.

  • 'interp'AlphaData 속성의 값에 따라 각 모서리에 보간된 투명도를 사용합니다. 먼저 AlphaData 속성을 ZData 속성과 크기가 같은 행렬로 지정해야 합니다. 꼭짓점의 값을 보간하기 때문에 각 모서리에서 투명도가 다릅니다. 또한 EdgeColor 속성이 'interp'로 설정되어 있어야 합니다.

버전 내역

R2006a 이전에 개발됨

모두 확장

참고 항목

함수

속성