comparison +multiblock/Contour.m @ 592:4422c4476650 feature/utux2D

Merge with feature/grids
author Martin Almquist <martin.almquist@it.uu.se>
date Mon, 11 Sep 2017 14:17:15 +0200
parents 97b9a0023d38
children
comparison
equal deleted inserted replaced
591:39554f2de783 592:4422c4476650
1 classdef Contour < handle
2 properties
3 grid
4 contours
5 nContours
6
7 ZData
8 CData
9
10 end
11
12 methods
13 function obj = Contour(g, gf, nContours)
14 obj.grid = g;
15 obj.nContours = nContours;
16
17 coords = obj.grid.points();
18 X = obj.grid.funcToPlotMatrices(coords(:,1));
19 Y = obj.grid.funcToPlotMatrices(coords(:,2));
20
21 V = obj.grid.funcToPlotMatrices(gf);
22
23
24 holdState = ishold();
25 hold on
26
27 contours = {1, obj.grid.nBlocks};
28 for i = 1:obj.grid.nBlocks
29 [~, contours{i}] = contour(X{i}, Y{i}, V{i},obj.nContours);
30 contours{i}.LevelList = contours{1}.LevelList;
31 end
32
33 if holdState == false
34 hold off
35 end
36
37 obj.contours = [contours{:}];
38
39 obj.ZData = gf;
40 obj.CData = gf;
41 end
42
43 function set(obj, propertyName, propertyValue)
44 set(obj.contours, propertyName, propertyValue);
45 end
46
47 function obj = set.ZData(obj, gf)
48 obj.ZData = gf;
49
50 V = obj.grid.funcToPlotMatrices(gf);
51 for i = 1:obj.grid.nBlocks
52 obj.contours(i).ZData = V{i};
53 end
54 end
55
56 function obj = set.CData(obj, gf)
57 obj.CData = gf;
58
59 V = obj.grid.funcToPlotMatrices(gf);
60 for i = 1:obj.grid.nBlocks
61 obj.contours(i).CData = V{i};
62 end
63 end
64 end
65 end