How do I change height and colour of cylinder made with SURF?
    조회 수: 8 (최근 30일)
  
       이전 댓글 표시
    
[x,y,z]=cylinder(10);
surf(x,y,z)
the result came out is a blue cylinder with radius 10. how do i change the colour and height in this case?
댓글 수: 0
채택된 답변
추가 답변 (4개)
  Walter Roberson
      
      
 2011년 5월 27일
        The simplest way to plot horizontally might be to change the viewpoint and relabel the axes :)
Otherwise you might need to create an hgtransform() that does a rotation and parent the surface to it using surf(x,y,z,'Parent',TheHGHandle)
댓글 수: 0
  Patrick Kalita
    
      
 2011년 7월 13일
        % Make the hgtransform and the surface; parent the surface to the hgtransform
[x,y,z] = cylinder(10);
h = hgtransform;
surf(x,y,z, 'Parent', h, 'FaceColor', 'r');
view(3)
% Make it taller
set(h, 'Matrix', makehgtform('scale', [1 1 10]))
% Tip it over and make it taller
set(h, 'Matrix', makehgtform('xrotate', pi/2, 'scale', [1 1 10]))
댓글 수: 0
  Álvaro Romero Calvo
 2018년 10월 7일
        
      편집: Walter Roberson
      
      
 2018년 10월 11일
  
      Here you can find an easy way ;)
댓글 수: 0
  Tomasz
 2021년 11월 7일
        
k=0:0.2:1;
[X,Y,Z]=cylinder(k,3);
figure
surf(X(1:2,:),Y(1:2,:),Z(1:2,:),'facecolor',[0,0,1])
hold on
surf(X(2:3,:),Y(2:3,:),Z(2:3,:),'facecolor',[0 ,0.4470, 0.7410])
surf(X(3:4,:),Y(3:4,:),Z(3:4,:),'facecolor',[0,1,1])
surf(X(4:5,:),Y(4:5,:),Z(4:5,:),'facecolor',[1,1,0])
surf(X(5:6,:),Y(5:6,:),Z(5:6,:),'facecolor',[1,0,0])
hold off
댓글 수: 0
참고 항목
카테고리
				Help Center 및 File Exchange에서 Object Containers에 대해 자세히 알아보기
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!






