1、matlab 图形着色1.matlab 中的颜色查找表函数:(1)autumn:从红色向橘黄色、黄色平稳过渡;(2)bone:为含有较高的蓝色组分的 gray 颜色查找表;(3)colorcube:包含 RGB 颜色空间中尽可能多的规则间隔的颜色,它试图提供更多的灰色、纯红、纯绿和纯蓝;(4)cool:由青色和洋红阴影组成的颜色。在青色和洋红间平滑过渡;(5)copper:在黑色和亮铜色间平滑过渡;(6)flag:由红、白、蓝、黑组成。每次索引值增加时,该颜色查找表会完全改变颜色;(7)gray:线性灰阶颜色查找表;(8)hot:在黑、红、橘红、黄、白间平滑过渡;(9)hsv:颜色从红色开始,
2、然后为黄、绿、青、蓝、洋红,最后是红色。特别适合显示周期性函数;(10)jet:在蓝、青、黄、橘红、红色间过渡;(11)lines:生成颜色由坐标系对象的 colororder 属性和灰色阴影确定;(12)pink:包含品红色的柔和阴影。可以对灰度照片进行棕褐色化;(13)prism:重复红、橘红、黄、绿、蓝、紫色;(14)spring:由洋红和黄色阴影组成;(15)summer:由绿色和黄色阴影组成;(16)white:白色;(17)winter:由蓝色和绿色阴影组成。2.用 colormapeditor 可以画出抢眼的图。x,y=meshgrid(-2:0.1:2);z=x.*exp(-x
3、.2-y.2);surf(x,y,z,gradient(z);shading interp;colormapeditor;图 1图 2图 33.利用函数 del2 计算矩阵的拉普拉斯算子,实现表面曲率向颜色映射具有相似曲率的区域用相同的颜色进行描绘。p=peaks(40);c=del2(p);surf(p,c);colormap hsv;%对比figuresurf(p);colormap hsv;图 44.真彩色表面创建一个随机着色表面图z=peaks(25);c(:,:,1)=rand(25);c(:,:,2)=rand(25);c(:,:,3)=rand(25);surf(z,c);fig
4、ure;surf(z,c,FaceColor,interp,FaceLighting,phong);camlight right;图 5图 65.纹理映射纹理映射是通过变换颜色数据将二维图像映射到三维表面上。clear;clc;clf;load earth;x,y,z=sphere(30);h=surface(x,y,z);set(h,CData,X,FaceColor,texturemap);%texturemap 纹理贴图colormap(map);axis equal;set(gca,CameraViewAngleMode,manual);view(3);图 76.多边形模型的着色控制面
5、片着色的属性:CData:用 x,y,z 数据指定每个小面或每个顶点的颜色;CDataMapping:指定是否将颜色数据进行比例化或直接用作颜色映射的索引;FaceVertexCData:用小面和顶点数据指定每个小面或顶点的颜色;EdgeColor:指定边的显示,包括隐藏、单色、顶点颜色确定的刻面颜色或顶点颜色确定的插值颜色;FaceColor:指定小面的显示,包括隐藏、单色、顶点颜色确定的刻面颜色或顶点颜色确定的插值颜色;MarkerEdgeColor:指定闭合图形的边缘色;MarkerFaceColor:指定闭合图形的填充色。%画白色正方体vert=1 1 1;1 2 1;2 2 1;2
6、1 1;1 1 2;1 2 2;2 2 2;2 1 2;fac=1 2 3 4;2 6 7 3;4 3 7 8;1 5 8 4;1 2 6 5;5 6 7 8;patch(Faces,fac,Vertices,vert,FaceColor,w);view(3);axis square;axis equal;%刻面着色patch(Faces,fac,Vertices,vert,FaceVertexCData,hsv(6),FaceColor,flat);%插值着色patch(Faces,fac,Vertices,vert,FaceVertexCData,hsv(6),FaceColor,inte
7、rp);图 77.片面边着色v=0 0 0;1 0 0;1 1 0;0 1 0;f=1 2 3 4;fvc=1 1 0;1 0 0;0 1 0;1 0 1;patch(Vertices,v,Faces,f,FaceVertexCData,fvc,FaceColor,flat,EdgeColor,flat,Marker,o,MarkerFaceColor,flat);set(gcf,color,w);view(-16,76);axis off;text(0,0,0.5,1);text(1,0,0.5,2);text(1,1,0.5,3);text(0,1,0.5,4);图 8修改:f=4 3 2 1;图 9f 的次序改变不仅仅改变边的颜色,还改变了面的颜色,面的颜色是指定的第一个顶点的颜色。