Mercurial > repos > public > sbplib
comparison +multiblock/Surface.m @ 886:8894e9c49e40 feature/timesteppers
Merge with default for latest changes
author | Vidar Stiernström <vidar.stiernstrom@it.uu.se> |
---|---|
date | Thu, 15 Nov 2018 16:36:21 -0800 |
parents | 24b2487b01c2 |
children |
comparison
equal
deleted
inserted
replaced
816:b5e5b195da1e | 886:8894e9c49e40 |
---|---|
1 classdef Surface < handle | |
2 properties | |
3 grid | |
4 surfs | |
5 | |
6 ZData | |
7 CData | |
8 | |
9 end | |
10 | |
11 methods | |
12 function obj = Surface(g, gf) | |
13 obj.grid = g; | |
14 | |
15 coords = obj.grid.points(); | |
16 X = obj.grid.funcToPlotMatrices(coords(:,1)); | |
17 Y = obj.grid.funcToPlotMatrices(coords(:,2)); | |
18 | |
19 V = obj.grid.funcToPlotMatrices(gf); | |
20 | |
21 | |
22 holdState = ishold(); | |
23 hold on | |
24 | |
25 surfs = cell(1, obj.grid.nBlocks); | |
26 for i = 1:obj.grid.nBlocks | |
27 surfs{i} = surf(X{i}, Y{i}, V{i}); | |
28 end | |
29 | |
30 if holdState == false | |
31 hold off | |
32 end | |
33 | |
34 obj.surfs = [surfs{:}]; | |
35 | |
36 obj.ZData = gf; | |
37 obj.CData = gf; | |
38 end | |
39 | |
40 function set(obj, propertyName, propertyValue) | |
41 set(obj.surfs, propertyName, propertyValue); | |
42 end | |
43 | |
44 function obj = set.ZData(obj, gf) | |
45 obj.ZData = gf; | |
46 | |
47 V = obj.grid.funcToPlotMatrices(gf); | |
48 for i = 1:obj.grid.nBlocks | |
49 obj.surfs(i).ZData = V{i}; | |
50 end | |
51 end | |
52 | |
53 function obj = set.CData(obj, gf) | |
54 obj.CData = gf; | |
55 | |
56 V = obj.grid.funcToPlotMatrices(gf); | |
57 for i = 1:obj.grid.nBlocks | |
58 obj.surfs(i).CData = V{i}; | |
59 end | |
60 end | |
61 end | |
62 end |