你可從表面當前顏色表(或從ILColormap實例),只是顛倒位置的顏色映射內的各個顏色映射項目。在我的例子的colordata的第一行被覆蓋與其鏡面視圖:
private void ilPanel1_Load(object sender, EventArgs e) {
ILArray<float> A = ILSpecialData.sincf(40, 50);
ilPanel1.Scene.Add(new ILPlotCube(twoDMode: false) {
new ILSurface(A) { new ILColorbar() }
});
// fetch surface
var surface = ilPanel1.Scene.First<ILSurface>();
// fetch current colormap data
ILArray<float> cmdata = surface.Colormap.Data;
// invert their positions
cmdata[":;0"] = cmdata["end:-1:0;:"];
// make new colormap and assign
surface.Colormap = new ILColormap(cmdata);
// configure after all modifications
surface.Configure();
}
的cmdata事後被用來創建一個新的顏色映射,比分配到表面上。
請參閱相關的文檔在這裏:http://ilnumerics.net/managing-colormaps.html
完美正是我一直在尋找謝謝! :d – bolt19