Mercurial > repos > public > sbplib
annotate +multiblock/Line.m @ 542:febd750965c4 feature/grids
Add classes for easy plotting of functions on a multi block grid
author | Jonatan Werpers <jonatan@werpers.com> |
---|---|
date | Mon, 14 Aug 2017 16:46:58 +0200 |
parents | |
children | 19951684588e |
rev | line source |
---|---|
542
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
1 classdef Line < handle |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
2 properties |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
3 grid |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
4 lines |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
5 |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
6 YData |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
7 end |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
8 |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
9 methods |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
10 function obj = Line(g, gf) |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
11 obj.grid = g; |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
12 |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
13 X = obj.grid.splitFunc(obj.grid.points()); |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
14 Y = obj.grid.splitFunc(gf); |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
15 |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
16 holdState = ishold(); |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
17 hold on |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
18 |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
19 lines = {1, obj.grid.nBlocks}; |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
20 for i = 1:obj.grid.nBlocks |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
21 lines{i} = plot(X{i}, Y{i}); |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
22 end |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
23 |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
24 if holdState == false |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
25 hold off |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
26 end |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
27 |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
28 obj.lines = [lines{:}]; |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
29 |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
30 obj.YData = gf; |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
31 end |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
32 |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
33 function set(obj, propertyName, propertyValue) |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
34 set(obj.lines, propertyName, propertyValue); |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
35 end |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
36 |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
37 function obj = set.YData(obj, gf) |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
38 obj.YData = gf; |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
39 |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
40 Y = obj.grid.funcToPlotMatrices(gf); |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
41 for i = 1:obj.grid.nBlocks |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
42 obj.lines(i).YData = Y{i}; |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
43 end |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
44 end |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
45 end |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
46 end |