Mercurial > repos > public > sbplib
annotate Color.m @ 577:e45c9b56d50d feature/grids
Add an Empty grid class
The need turned up for the flexural code when we may or may not have a grid for the open water and want to plot that solution.
In case there is no open water we need an empty grid to plot the empty gridfunction against to avoid errors.
author | Jonatan Werpers <jonatan@werpers.com> |
---|---|
date | Thu, 07 Sep 2017 09:16:12 +0200 |
parents | 283bdea202d2 |
children | ff745028d6bd |
rev | line source |
---|---|
0 | 1 classdef Color |
2 properties(Constant) | |
3 blue = [0.000 0.447 0.741]; | |
4 red = [0.850 0.325 0.098]; | |
5 yellow = [0.929 0.694 0.125]; | |
6 purple = [0.494 0.184 0.556]; | |
7 green = [0.466 0.674 0.188]; | |
8 lightblue = [0.301 0.745 0.933]; | |
9 darkred = [0.635 0.078 0.184]; | |
37
1770689d6c31
Added black and white to Color.m
Jonatan Werpers <jonatan@werpers.com>
parents:
0
diff
changeset
|
10 black = [0.000 0.000 0.000]; |
1770689d6c31
Added black and white to Color.m
Jonatan Werpers <jonatan@werpers.com>
parents:
0
diff
changeset
|
11 white = [1.000 1.000 1.000]; |
436
51d818bc8915
Add a vector of all colors to Color
Jonatan Werpers <jonatan@werpers.com>
parents:
122
diff
changeset
|
12 colors = { Color.blue, Color.red, Color.yellow, Color.green, Color.purple, Color.lightblue, Color.darkred, Color.black, Color.white}; |
458
283bdea202d2
Add notability colors to the Color class
Jonatan Werpers <jonatan@werpers.com>
parents:
436
diff
changeset
|
13 |
283bdea202d2
Add notability colors to the Color class
Jonatan Werpers <jonatan@werpers.com>
parents:
436
diff
changeset
|
14 notabilityYellow = [100.0 99.0 22.0 ]/100; |
283bdea202d2
Add notability colors to the Color class
Jonatan Werpers <jonatan@werpers.com>
parents:
436
diff
changeset
|
15 notabilityOrange = [97.0 61.0 15.0 ]/100; |
283bdea202d2
Add notability colors to the Color class
Jonatan Werpers <jonatan@werpers.com>
parents:
436
diff
changeset
|
16 notabilityRed = [92.0 22.0 18.0 ]/100; |
283bdea202d2
Add notability colors to the Color class
Jonatan Werpers <jonatan@werpers.com>
parents:
436
diff
changeset
|
17 |
283bdea202d2
Add notability colors to the Color class
Jonatan Werpers <jonatan@werpers.com>
parents:
436
diff
changeset
|
18 notabilityLightGreen = [67.0 99.0 22.0 ]/100; |
283bdea202d2
Add notability colors to the Color class
Jonatan Werpers <jonatan@werpers.com>
parents:
436
diff
changeset
|
19 notabilityGreen = [39.0 72.0 30.0 ]/100; |
283bdea202d2
Add notability colors to the Color class
Jonatan Werpers <jonatan@werpers.com>
parents:
436
diff
changeset
|
20 notabilityDarkGreen = [5.0 45.0 24.0 ]/100; |
283bdea202d2
Add notability colors to the Color class
Jonatan Werpers <jonatan@werpers.com>
parents:
436
diff
changeset
|
21 |
283bdea202d2
Add notability colors to the Color class
Jonatan Werpers <jonatan@werpers.com>
parents:
436
diff
changeset
|
22 notabilityLightBlue = [8.0 45.0 98.0 ]/100; |
283bdea202d2
Add notability colors to the Color class
Jonatan Werpers <jonatan@werpers.com>
parents:
436
diff
changeset
|
23 notabilityBlue = [11.0 30.0 69.0 ]/100; |
283bdea202d2
Add notability colors to the Color class
Jonatan Werpers <jonatan@werpers.com>
parents:
436
diff
changeset
|
24 notabilityDarkBlue = [7.0 5.0 46.0 ]/100; |
283bdea202d2
Add notability colors to the Color class
Jonatan Werpers <jonatan@werpers.com>
parents:
436
diff
changeset
|
25 |
283bdea202d2
Add notability colors to the Color class
Jonatan Werpers <jonatan@werpers.com>
parents:
436
diff
changeset
|
26 notabilityPink = [99.0 13.0 82.0 ]/100; |
283bdea202d2
Add notability colors to the Color class
Jonatan Werpers <jonatan@werpers.com>
parents:
436
diff
changeset
|
27 notabilityPurple = [64.0 11.0 77.0 ]/100; |
283bdea202d2
Add notability colors to the Color class
Jonatan Werpers <jonatan@werpers.com>
parents:
436
diff
changeset
|
28 notabilityDarkPurple = [38.0 19.0 56.0 ]/100; |
283bdea202d2
Add notability colors to the Color class
Jonatan Werpers <jonatan@werpers.com>
parents:
436
diff
changeset
|
29 |
283bdea202d2
Add notability colors to the Color class
Jonatan Werpers <jonatan@werpers.com>
parents:
436
diff
changeset
|
30 notabilityBrown = [58.0 40.0 22.0 ]/100; |
283bdea202d2
Add notability colors to the Color class
Jonatan Werpers <jonatan@werpers.com>
parents:
436
diff
changeset
|
31 notabilityGrey = [59.0 59.0 59.0 ]/100; |
283bdea202d2
Add notability colors to the Color class
Jonatan Werpers <jonatan@werpers.com>
parents:
436
diff
changeset
|
32 notabilityBlack = [0.0 0.0 0.0 ]/100; |
0 | 33 end |
122
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
34 |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
35 methods(Static) |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
36 function sample() |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
37 markers ={'+', 'o', '*', '.', 'x', 'square', 'diamond', 'v', '^', '>', '<', 'pentagram', 'hexagram'}; |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
38 % Filled and non-filled markers? |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
39 lineStyles = {'-', '--', ':', '-.'}; |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
40 |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
41 |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
42 function showMarkers(x0, y0, lx, ly, color, filled) |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
43 n = length(markers); |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
44 s = ceil(sqrt(n)); |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
45 |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
46 x = linspace(x0, x0 + lx, s); |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
47 y = linspace(y0, y0 + ly, s); |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
48 |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
49 [X,Y] = meshgrid(x,y); |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
50 |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
51 for i = 1:n |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
52 lh = line(X(i),Y(i)); |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
53 lh.Marker = markers{i}; |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
54 lh.MarkerSize = 12; |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
55 lh.Color = color; |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
56 |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
57 if filled |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
58 lh.MarkerFaceColor = color; |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
59 end |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
60 end |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
61 end |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
62 |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
63 function showColors(x0, y0, lx, ly) |
436
51d818bc8915
Add a vector of all colors to Color
Jonatan Werpers <jonatan@werpers.com>
parents:
122
diff
changeset
|
64 n = length(Color.colors); |
122
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
65 s = ceil(sqrt(n)); |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
66 |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
67 x = linspace(x0, x0 + lx, s); |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
68 y = linspace(y0, y0 + ly, s); |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
69 |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
70 [X,Y] = meshgrid(x,y); |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
71 |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
72 for i = 1:n |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
73 lh = line(X(i),Y(i)); |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
74 lh.Marker = 'o'; |
436
51d818bc8915
Add a vector of all colors to Color
Jonatan Werpers <jonatan@werpers.com>
parents:
122
diff
changeset
|
75 lh.MarkerFaceColor = Color.colors{i}; |
51d818bc8915
Add a vector of all colors to Color
Jonatan Werpers <jonatan@werpers.com>
parents:
122
diff
changeset
|
76 lh.Color = Color.colors{i}; |
122
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
77 lh.MarkerSize = 12; |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
78 end |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
79 end |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
80 |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
81 function showLines(y0, ly, A, w) |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
82 n = length(lineStyles); |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
83 x = linspace(0,1,100); |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
84 y = linspace(y0, y0+ ly, n); |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
85 for i = 1:n |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
86 lh = line(x, y(i) + A*sin(pi*x*w)); |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
87 lh.LineWidth = 2; |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
88 lh.LineStyle = lineStyles{i}; |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
89 end |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
90 end |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
91 |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
92 |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
93 fh = figure(); |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
94 |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
95 y0 = 0.1; |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
96 dl = 0.15; |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
97 margin = 0.07; |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
98 showMarkers( 0.1, y0, dl, dl, Color.blue, false); |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
99 showMarkers( 0.9-dl, y0, dl, dl, Color.blue, true); |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
100 showColors( 0.5-dl/2, y0, dl, dl); |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
101 |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
102 showLines(0.6, 0.2, 0.1, 5); |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
103 |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
104 xlim([0 1]) |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
105 ylim([0 1]) |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
106 axis square |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
107 |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
108 end |
54cf593d6643
Added method for showing plotting samples in Color.
Jonatan Werpers <jonatan@werpers.com>
parents:
37
diff
changeset
|
109 end |
0 | 110 end |