Commit 9f0e500fd579367e46e0e5e3c1f27ede10d58a2d
Exists in
master
and in
31 other branches
Merge done
Showing
38 changed files
with
2533 additions
and
157 deletions
Show diff stats
generic_data/Functions/functions.xml
... | ... | @@ -7,13 +7,6 @@ |
7 | 7 | <info_brief>average</info_brief> |
8 | 8 | <new_kernel>#sampling_classic</new_kernel> |
9 | 9 | </function> |
10 | - <function name="isinside_(,)" args="1" kind="time" group="stat"> | |
11 | - <prompts> | |
12 | - <prompt>ahahah</prompt> | |
13 | - </prompts> | |
14 | - <info_brief>average</info_brief> | |
15 | - <new_kernel>#ttcat_to_param</new_kernel> | |
16 | - </function> | |
17 | 10 | <function name="median_(,)" args="1" kind="time" group="stat"> |
18 | 11 | <prompts> |
19 | 12 | <prompt>input averaging time in secs</prompt> |
... | ... | @@ -290,7 +283,18 @@ |
290 | 283 | <info_brief>Magnitude</info_brief> |
291 | 284 | <new_kernel>magnitude</new_kernel> |
292 | 285 | </function> |
293 | - | |
286 | + <function name="planarity(,,,)" args="4" kind="tetrahedron" group="math"> | |
287 | + <info_brief>Planarity calculation from tetrahedron</info_brief> | |
288 | + <new_kernel>planarity</new_kernel> | |
289 | + </function> | |
290 | + <function name="elongation(,,,)" args="4" kind="tetrahedron" group="math"> | |
291 | + <info_brief>Elongation calculation from tetrahedron</info_brief> | |
292 | + <new_kernel>elongation</new_kernel> | |
293 | + </function> | |
294 | + <function name="characteristic(,,,)" args="4" kind="tetrahedron" group="math"> | |
295 | + <info_brief>Characteristic calculation from tetrahedron</info_brief> | |
296 | + <new_kernel>characteristic</new_kernel> | |
297 | + </function> | |
294 | 298 | <function name="abs()" kind="math" group="math"> |
295 | 299 | <info_brief>Absolute value</info_brief> |
296 | 300 | <new_kernel>abs</new_kernel> |
... | ... |
... | ... | @@ -0,0 +1,169 @@ |
1 | +<?xml version="1.0" encoding="UTF-8"?> | |
2 | +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" | |
3 | + "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"> | |
4 | +<svg | |
5 | + xmlns="http://www.w3.org/2000/svg" | |
6 | + xmlns:xlink="http://www.w3.org/1999/xlink" | |
7 | + version="1.1" | |
8 | + width="300pt" | |
9 | + height="45pt" | |
10 | + viewBox="0 0 300 45" | |
11 | + > | |
12 | + <rect | |
13 | + x="0" | |
14 | + y="0" | |
15 | + width="300" | |
16 | + height="45" | |
17 | + stroke="none" | |
18 | + fill="#000000" | |
19 | + fill-opacity="1.000000" | |
20 | + /> | |
21 | + <g | |
22 | + transform="matrix(1 0 0 -1 0 45)" | |
23 | + > | |
24 | + <g> | |
25 | + <defs> | |
26 | + <linearGradient | |
27 | + id="MyGradient0000000000" | |
28 | + gradientUnits="userSpaceOnUse" | |
29 | + x1="0.00" | |
30 | + y1="0.00" | |
31 | + x2="299.99" | |
32 | + y2="0.00" | |
33 | + > | |
34 | + <stop offset="0.000" stop-color="#000066" stop-opacity="1.000"/> | |
35 | + <stop offset="0.008" stop-color="#00006B" stop-opacity="1.000"/> | |
36 | + <stop offset="0.016" stop-color="#00006F" stop-opacity="1.000"/> | |
37 | + <stop offset="0.024" stop-color="#000074" stop-opacity="1.000"/> | |
38 | + <stop offset="0.031" stop-color="#000079" stop-opacity="1.000"/> | |
39 | + <stop offset="0.039" stop-color="#00007D" stop-opacity="1.000"/> | |
40 | + <stop offset="0.047" stop-color="#000082" stop-opacity="1.000"/> | |
41 | + <stop offset="0.055" stop-color="#000087" stop-opacity="1.000"/> | |
42 | + <stop offset="0.063" stop-color="#00008C" stop-opacity="1.000"/> | |
43 | + <stop offset="0.071" stop-color="#000090" stop-opacity="1.000"/> | |
44 | + <stop offset="0.079" stop-color="#000095" stop-opacity="1.000"/> | |
45 | + <stop offset="0.087" stop-color="#00009A" stop-opacity="1.000"/> | |
46 | + <stop offset="0.094" stop-color="#00009E" stop-opacity="1.000"/> | |
47 | + <stop offset="0.102" stop-color="#0000A3" stop-opacity="1.000"/> | |
48 | + <stop offset="0.110" stop-color="#0000A8" stop-opacity="1.000"/> | |
49 | + <stop offset="0.118" stop-color="#0000AC" stop-opacity="1.000"/> | |
50 | + <stop offset="0.126" stop-color="#0000B1" stop-opacity="1.000"/> | |
51 | + <stop offset="0.134" stop-color="#0000B6" stop-opacity="1.000"/> | |
52 | + <stop offset="0.142" stop-color="#0000BB" stop-opacity="1.000"/> | |
53 | + <stop offset="0.150" stop-color="#0000BF" stop-opacity="1.000"/> | |
54 | + <stop offset="0.157" stop-color="#0005C1" stop-opacity="1.000"/> | |
55 | + <stop offset="0.165" stop-color="#000AC2" stop-opacity="1.000"/> | |
56 | + <stop offset="0.173" stop-color="#000FC3" stop-opacity="1.000"/> | |
57 | + <stop offset="0.181" stop-color="#0015C5" stop-opacity="1.000"/> | |
58 | + <stop offset="0.189" stop-color="#001AC6" stop-opacity="1.000"/> | |
59 | + <stop offset="0.197" stop-color="#001FC7" stop-opacity="1.000"/> | |
60 | + <stop offset="0.205" stop-color="#0025C9" stop-opacity="1.000"/> | |
61 | + <stop offset="0.213" stop-color="#002ACA" stop-opacity="1.000"/> | |
62 | + <stop offset="0.220" stop-color="#0030CC" stop-opacity="1.000"/> | |
63 | + <stop offset="0.228" stop-color="#0035CD" stop-opacity="1.000"/> | |
64 | + <stop offset="0.236" stop-color="#003ACE" stop-opacity="1.000"/> | |
65 | + <stop offset="0.244" stop-color="#0040D0" stop-opacity="1.000"/> | |
66 | + <stop offset="0.252" stop-color="#0045D1" stop-opacity="1.000"/> | |
67 | + <stop offset="0.260" stop-color="#004AD2" stop-opacity="1.000"/> | |
68 | + <stop offset="0.268" stop-color="#0050D4" stop-opacity="1.000"/> | |
69 | + <stop offset="0.276" stop-color="#0055D5" stop-opacity="1.000"/> | |
70 | + <stop offset="0.283" stop-color="#005BD6" stop-opacity="1.000"/> | |
71 | + <stop offset="0.291" stop-color="#0060D8" stop-opacity="1.000"/> | |
72 | + <stop offset="0.299" stop-color="#0065D9" stop-opacity="1.000"/> | |
73 | + <stop offset="0.307" stop-color="#006ACF" stop-opacity="1.000"/> | |
74 | + <stop offset="0.315" stop-color="#006EC3" stop-opacity="1.000"/> | |
75 | + <stop offset="0.323" stop-color="#0072B8" stop-opacity="1.000"/> | |
76 | + <stop offset="0.331" stop-color="#0076AD" stop-opacity="1.000"/> | |
77 | + <stop offset="0.339" stop-color="#007AA1" stop-opacity="1.000"/> | |
78 | + <stop offset="0.346" stop-color="#007E96" stop-opacity="1.000"/> | |
79 | + <stop offset="0.354" stop-color="#00828A" stop-opacity="1.000"/> | |
80 | + <stop offset="0.362" stop-color="#00867F" stop-opacity="1.000"/> | |
81 | + <stop offset="0.370" stop-color="#008A73" stop-opacity="1.000"/> | |
82 | + <stop offset="0.378" stop-color="#008E68" stop-opacity="1.000"/> | |
83 | + <stop offset="0.386" stop-color="#00925D" stop-opacity="1.000"/> | |
84 | + <stop offset="0.394" stop-color="#009651" stop-opacity="1.000"/> | |
85 | + <stop offset="0.402" stop-color="#009A46" stop-opacity="1.000"/> | |
86 | + <stop offset="0.409" stop-color="#009E3A" stop-opacity="1.000"/> | |
87 | + <stop offset="0.417" stop-color="#00A22F" stop-opacity="1.000"/> | |
88 | + <stop offset="0.425" stop-color="#00A623" stop-opacity="1.000"/> | |
89 | + <stop offset="0.433" stop-color="#00AA18" stop-opacity="1.000"/> | |
90 | + <stop offset="0.441" stop-color="#00AE0D" stop-opacity="1.000"/> | |
91 | + <stop offset="0.449" stop-color="#00B201" stop-opacity="1.000"/> | |
92 | + <stop offset="0.457" stop-color="#06B400" stop-opacity="1.000"/> | |
93 | + <stop offset="0.465" stop-color="#0EB400" stop-opacity="1.000"/> | |
94 | + <stop offset="0.472" stop-color="#15B500" stop-opacity="1.000"/> | |
95 | + <stop offset="0.480" stop-color="#1DB600" stop-opacity="1.000"/> | |
96 | + <stop offset="0.488" stop-color="#25B700" stop-opacity="1.000"/> | |
97 | + <stop offset="0.496" stop-color="#2CB800" stop-opacity="1.000"/> | |
98 | + <stop offset="0.504" stop-color="#34B900" stop-opacity="1.000"/> | |
99 | + <stop offset="0.512" stop-color="#3CBA00" stop-opacity="1.000"/> | |
100 | + <stop offset="0.520" stop-color="#43BB00" stop-opacity="1.000"/> | |
101 | + <stop offset="0.528" stop-color="#4BBC00" stop-opacity="1.000"/> | |
102 | + <stop offset="0.535" stop-color="#53BD00" stop-opacity="1.000"/> | |
103 | + <stop offset="0.543" stop-color="#5ABE00" stop-opacity="1.000"/> | |
104 | + <stop offset="0.551" stop-color="#62BF00" stop-opacity="1.000"/> | |
105 | + <stop offset="0.559" stop-color="#6AC000" stop-opacity="1.000"/> | |
106 | + <stop offset="0.567" stop-color="#72C100" stop-opacity="1.000"/> | |
107 | + <stop offset="0.575" stop-color="#79C200" stop-opacity="1.000"/> | |
108 | + <stop offset="0.583" stop-color="#81C300" stop-opacity="1.000"/> | |
109 | + <stop offset="0.591" stop-color="#89C400" stop-opacity="1.000"/> | |
110 | + <stop offset="0.598" stop-color="#90C500" stop-opacity="1.000"/> | |
111 | + <stop offset="0.606" stop-color="#98C600" stop-opacity="1.000"/> | |
112 | + <stop offset="0.614" stop-color="#A0C700" stop-opacity="1.000"/> | |
113 | + <stop offset="0.622" stop-color="#A7C800" stop-opacity="1.000"/> | |
114 | + <stop offset="0.630" stop-color="#AFC900" stop-opacity="1.000"/> | |
115 | + <stop offset="0.638" stop-color="#B7CA00" stop-opacity="1.000"/> | |
116 | + <stop offset="0.646" stop-color="#BECB00" stop-opacity="1.000"/> | |
117 | + <stop offset="0.654" stop-color="#C6CC00" stop-opacity="1.000"/> | |
118 | + <stop offset="0.661" stop-color="#CDCC00" stop-opacity="1.000"/> | |
119 | + <stop offset="0.669" stop-color="#CFC800" stop-opacity="1.000"/> | |
120 | + <stop offset="0.677" stop-color="#D0C500" stop-opacity="1.000"/> | |
121 | + <stop offset="0.685" stop-color="#D2C200" stop-opacity="1.000"/> | |
122 | + <stop offset="0.693" stop-color="#D4BE00" stop-opacity="1.000"/> | |
123 | + <stop offset="0.701" stop-color="#D6BB00" stop-opacity="1.000"/> | |
124 | + <stop offset="0.709" stop-color="#D8B800" stop-opacity="1.000"/> | |
125 | + <stop offset="0.717" stop-color="#DAB400" stop-opacity="1.000"/> | |
126 | + <stop offset="0.724" stop-color="#DCB100" stop-opacity="1.000"/> | |
127 | + <stop offset="0.732" stop-color="#DEAD00" stop-opacity="1.000"/> | |
128 | + <stop offset="0.740" stop-color="#E0AA00" stop-opacity="1.000"/> | |
129 | + <stop offset="0.748" stop-color="#E2A700" stop-opacity="1.000"/> | |
130 | + <stop offset="0.756" stop-color="#E4A300" stop-opacity="1.000"/> | |
131 | + <stop offset="0.764" stop-color="#E6A000" stop-opacity="1.000"/> | |
132 | + <stop offset="0.772" stop-color="#E89D00" stop-opacity="1.000"/> | |
133 | + <stop offset="0.780" stop-color="#E99900" stop-opacity="1.000"/> | |
134 | + <stop offset="0.787" stop-color="#EB9600" stop-opacity="1.000"/> | |
135 | + <stop offset="0.795" stop-color="#ED9300" stop-opacity="1.000"/> | |
136 | + <stop offset="0.803" stop-color="#EF8F00" stop-opacity="1.000"/> | |
137 | + <stop offset="0.811" stop-color="#F18C00" stop-opacity="1.000"/> | |
138 | + <stop offset="0.819" stop-color="#F38900" stop-opacity="1.000"/> | |
139 | + <stop offset="0.827" stop-color="#F58500" stop-opacity="1.000"/> | |
140 | + <stop offset="0.835" stop-color="#F78200" stop-opacity="1.000"/> | |
141 | + <stop offset="0.843" stop-color="#F97E00" stop-opacity="1.000"/> | |
142 | + <stop offset="0.850" stop-color="#FB7B00" stop-opacity="1.000"/> | |
143 | + <stop offset="0.858" stop-color="#FD7800" stop-opacity="1.000"/> | |
144 | + <stop offset="0.866" stop-color="#FF7400" stop-opacity="1.000"/> | |
145 | + <stop offset="0.874" stop-color="#FE6F00" stop-opacity="1.000"/> | |
146 | + <stop offset="0.882" stop-color="#FB6800" stop-opacity="1.000"/> | |
147 | + <stop offset="0.890" stop-color="#F86100" stop-opacity="1.000"/> | |
148 | + <stop offset="0.898" stop-color="#F55A00" stop-opacity="1.000"/> | |
149 | + <stop offset="0.906" stop-color="#F25300" stop-opacity="1.000"/> | |
150 | + <stop offset="0.913" stop-color="#EE4C00" stop-opacity="1.000"/> | |
151 | + <stop offset="0.921" stop-color="#EB4500" stop-opacity="1.000"/> | |
152 | + <stop offset="0.929" stop-color="#E83E00" stop-opacity="1.000"/> | |
153 | + <stop offset="0.937" stop-color="#E53700" stop-opacity="1.000"/> | |
154 | + <stop offset="0.945" stop-color="#E23000" stop-opacity="1.000"/> | |
155 | + <stop offset="0.953" stop-color="#DF2900" stop-opacity="1.000"/> | |
156 | + <stop offset="0.961" stop-color="#DC2200" stop-opacity="1.000"/> | |
157 | + <stop offset="0.969" stop-color="#D91B00" stop-opacity="1.000"/> | |
158 | + <stop offset="0.976" stop-color="#D61400" stop-opacity="1.000"/> | |
159 | + <stop offset="0.984" stop-color="#D30D00" stop-opacity="1.000"/> | |
160 | + <stop offset="0.992" stop-color="#CF0600" stop-opacity="1.000"/> | |
161 | + <stop offset="1.000" stop-color="#CC0000" stop-opacity="1.000"/> | |
162 | + </linearGradient> | |
163 | + </defs> | |
164 | + <polyline | |
165 | + fill="url(#MyGradient0000000000)" | |
166 | + points="0.00,0.00 299.99,0.00 299.99,45.00 0.00,45.00 0.00,0.00 0.00,0.00 "/> | |
167 | + </g> | |
168 | + </g> | |
169 | +</svg> | |
... | ... |
... | ... | @@ -0,0 +1,169 @@ |
1 | +<?xml version="1.0" encoding="UTF-8"?> | |
2 | +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" | |
3 | + "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"> | |
4 | +<svg | |
5 | + xmlns="http://www.w3.org/2000/svg" | |
6 | + xmlns:xlink="http://www.w3.org/1999/xlink" | |
7 | + version="1.1" | |
8 | + width="300pt" | |
9 | + height="45pt" | |
10 | + viewBox="0 0 300 45" | |
11 | + > | |
12 | + <rect | |
13 | + x="0" | |
14 | + y="0" | |
15 | + width="300" | |
16 | + height="45" | |
17 | + stroke="none" | |
18 | + fill="#000000" | |
19 | + fill-opacity="1.000000" | |
20 | + /> | |
21 | + <g | |
22 | + transform="matrix(1 0 0 -1 0 45)" | |
23 | + > | |
24 | + <g> | |
25 | + <defs> | |
26 | + <linearGradient | |
27 | + id="MyGradient0000000000" | |
28 | + gradientUnits="userSpaceOnUse" | |
29 | + x1="0.00" | |
30 | + y1="0.00" | |
31 | + x2="299.99" | |
32 | + y2="0.00" | |
33 | + > | |
34 | + <stop offset="0.000" stop-color="#5500FF" stop-opacity="1.000"/> | |
35 | + <stop offset="0.008" stop-color="#5400FC" stop-opacity="1.000"/> | |
36 | + <stop offset="0.016" stop-color="#5200F8" stop-opacity="1.000"/> | |
37 | + <stop offset="0.024" stop-color="#5100F5" stop-opacity="1.000"/> | |
38 | + <stop offset="0.031" stop-color="#5000F1" stop-opacity="1.000"/> | |
39 | + <stop offset="0.039" stop-color="#4F00ED" stop-opacity="1.000"/> | |
40 | + <stop offset="0.047" stop-color="#4E00EA" stop-opacity="1.000"/> | |
41 | + <stop offset="0.055" stop-color="#4C00E6" stop-opacity="1.000"/> | |
42 | + <stop offset="0.063" stop-color="#4B00E2" stop-opacity="1.000"/> | |
43 | + <stop offset="0.071" stop-color="#4A00DF" stop-opacity="1.000"/> | |
44 | + <stop offset="0.079" stop-color="#4900DB" stop-opacity="1.000"/> | |
45 | + <stop offset="0.087" stop-color="#4700D7" stop-opacity="1.000"/> | |
46 | + <stop offset="0.094" stop-color="#4600D4" stop-opacity="1.000"/> | |
47 | + <stop offset="0.102" stop-color="#4500D0" stop-opacity="1.000"/> | |
48 | + <stop offset="0.110" stop-color="#4400CC" stop-opacity="1.000"/> | |
49 | + <stop offset="0.118" stop-color="#4300C9" stop-opacity="1.000"/> | |
50 | + <stop offset="0.126" stop-color="#4100C5" stop-opacity="1.000"/> | |
51 | + <stop offset="0.134" stop-color="#4000C1" stop-opacity="1.000"/> | |
52 | + <stop offset="0.142" stop-color="#3F00BE" stop-opacity="1.000"/> | |
53 | + <stop offset="0.150" stop-color="#3E00BA" stop-opacity="1.000"/> | |
54 | + <stop offset="0.157" stop-color="#3C00B6" stop-opacity="1.000"/> | |
55 | + <stop offset="0.165" stop-color="#3B00B3" stop-opacity="1.000"/> | |
56 | + <stop offset="0.173" stop-color="#3A00AF" stop-opacity="1.000"/> | |
57 | + <stop offset="0.181" stop-color="#3900AB" stop-opacity="1.000"/> | |
58 | + <stop offset="0.189" stop-color="#3800A8" stop-opacity="1.000"/> | |
59 | + <stop offset="0.197" stop-color="#3600A4" stop-opacity="1.000"/> | |
60 | + <stop offset="0.205" stop-color="#3500A0" stop-opacity="1.000"/> | |
61 | + <stop offset="0.213" stop-color="#34009D" stop-opacity="1.000"/> | |
62 | + <stop offset="0.220" stop-color="#330099" stop-opacity="1.000"/> | |
63 | + <stop offset="0.228" stop-color="#310095" stop-opacity="1.000"/> | |
64 | + <stop offset="0.236" stop-color="#300092" stop-opacity="1.000"/> | |
65 | + <stop offset="0.244" stop-color="#2F008E" stop-opacity="1.000"/> | |
66 | + <stop offset="0.252" stop-color="#2E008A" stop-opacity="1.000"/> | |
67 | + <stop offset="0.260" stop-color="#2D0087" stop-opacity="1.000"/> | |
68 | + <stop offset="0.268" stop-color="#2B0083" stop-opacity="1.000"/> | |
69 | + <stop offset="0.276" stop-color="#2A007F" stop-opacity="1.000"/> | |
70 | + <stop offset="0.283" stop-color="#29007C" stop-opacity="1.000"/> | |
71 | + <stop offset="0.291" stop-color="#280078" stop-opacity="1.000"/> | |
72 | + <stop offset="0.299" stop-color="#260074" stop-opacity="1.000"/> | |
73 | + <stop offset="0.307" stop-color="#250071" stop-opacity="1.000"/> | |
74 | + <stop offset="0.315" stop-color="#24006D" stop-opacity="1.000"/> | |
75 | + <stop offset="0.323" stop-color="#230069" stop-opacity="1.000"/> | |
76 | + <stop offset="0.331" stop-color="#220066" stop-opacity="1.000"/> | |
77 | + <stop offset="0.339" stop-color="#200062" stop-opacity="1.000"/> | |
78 | + <stop offset="0.346" stop-color="#1F005E" stop-opacity="1.000"/> | |
79 | + <stop offset="0.354" stop-color="#1E005B" stop-opacity="1.000"/> | |
80 | + <stop offset="0.362" stop-color="#1D0057" stop-opacity="1.000"/> | |
81 | + <stop offset="0.370" stop-color="#1B0053" stop-opacity="1.000"/> | |
82 | + <stop offset="0.378" stop-color="#1A0050" stop-opacity="1.000"/> | |
83 | + <stop offset="0.386" stop-color="#19004C" stop-opacity="1.000"/> | |
84 | + <stop offset="0.394" stop-color="#180048" stop-opacity="1.000"/> | |
85 | + <stop offset="0.402" stop-color="#170045" stop-opacity="1.000"/> | |
86 | + <stop offset="0.409" stop-color="#150041" stop-opacity="1.000"/> | |
87 | + <stop offset="0.417" stop-color="#14003D" stop-opacity="1.000"/> | |
88 | + <stop offset="0.425" stop-color="#13003A" stop-opacity="1.000"/> | |
89 | + <stop offset="0.433" stop-color="#120036" stop-opacity="1.000"/> | |
90 | + <stop offset="0.441" stop-color="#100032" stop-opacity="1.000"/> | |
91 | + <stop offset="0.449" stop-color="#0E002C" stop-opacity="1.000"/> | |
92 | + <stop offset="0.457" stop-color="#0C0026" stop-opacity="1.000"/> | |
93 | + <stop offset="0.465" stop-color="#0A0020" stop-opacity="1.000"/> | |
94 | + <stop offset="0.472" stop-color="#08001A" stop-opacity="1.000"/> | |
95 | + <stop offset="0.480" stop-color="#060014" stop-opacity="1.000"/> | |
96 | + <stop offset="0.488" stop-color="#04000E" stop-opacity="1.000"/> | |
97 | + <stop offset="0.496" stop-color="#020008" stop-opacity="1.000"/> | |
98 | + <stop offset="0.504" stop-color="#080000" stop-opacity="1.000"/> | |
99 | + <stop offset="0.512" stop-color="#0E0000" stop-opacity="1.000"/> | |
100 | + <stop offset="0.520" stop-color="#140000" stop-opacity="1.000"/> | |
101 | + <stop offset="0.528" stop-color="#1A0000" stop-opacity="1.000"/> | |
102 | + <stop offset="0.535" stop-color="#200000" stop-opacity="1.000"/> | |
103 | + <stop offset="0.543" stop-color="#260000" stop-opacity="1.000"/> | |
104 | + <stop offset="0.551" stop-color="#2C0000" stop-opacity="1.000"/> | |
105 | + <stop offset="0.559" stop-color="#320000" stop-opacity="1.000"/> | |
106 | + <stop offset="0.567" stop-color="#360000" stop-opacity="1.000"/> | |
107 | + <stop offset="0.575" stop-color="#3A0000" stop-opacity="1.000"/> | |
108 | + <stop offset="0.583" stop-color="#3D0000" stop-opacity="1.000"/> | |
109 | + <stop offset="0.591" stop-color="#410000" stop-opacity="1.000"/> | |
110 | + <stop offset="0.598" stop-color="#450000" stop-opacity="1.000"/> | |
111 | + <stop offset="0.606" stop-color="#480000" stop-opacity="1.000"/> | |
112 | + <stop offset="0.614" stop-color="#4C0000" stop-opacity="1.000"/> | |
113 | + <stop offset="0.622" stop-color="#500000" stop-opacity="1.000"/> | |
114 | + <stop offset="0.630" stop-color="#530000" stop-opacity="1.000"/> | |
115 | + <stop offset="0.638" stop-color="#570000" stop-opacity="1.000"/> | |
116 | + <stop offset="0.646" stop-color="#5B0000" stop-opacity="1.000"/> | |
117 | + <stop offset="0.654" stop-color="#5E0000" stop-opacity="1.000"/> | |
118 | + <stop offset="0.661" stop-color="#620000" stop-opacity="1.000"/> | |
119 | + <stop offset="0.669" stop-color="#660000" stop-opacity="1.000"/> | |
120 | + <stop offset="0.677" stop-color="#690000" stop-opacity="1.000"/> | |
121 | + <stop offset="0.685" stop-color="#6D0000" stop-opacity="1.000"/> | |
122 | + <stop offset="0.693" stop-color="#710000" stop-opacity="1.000"/> | |
123 | + <stop offset="0.701" stop-color="#740000" stop-opacity="1.000"/> | |
124 | + <stop offset="0.709" stop-color="#780000" stop-opacity="1.000"/> | |
125 | + <stop offset="0.717" stop-color="#7C0000" stop-opacity="1.000"/> | |
126 | + <stop offset="0.724" stop-color="#7F0000" stop-opacity="1.000"/> | |
127 | + <stop offset="0.732" stop-color="#830000" stop-opacity="1.000"/> | |
128 | + <stop offset="0.740" stop-color="#870000" stop-opacity="1.000"/> | |
129 | + <stop offset="0.748" stop-color="#8A0000" stop-opacity="1.000"/> | |
130 | + <stop offset="0.756" stop-color="#8E0000" stop-opacity="1.000"/> | |
131 | + <stop offset="0.764" stop-color="#920000" stop-opacity="1.000"/> | |
132 | + <stop offset="0.772" stop-color="#950000" stop-opacity="1.000"/> | |
133 | + <stop offset="0.780" stop-color="#990000" stop-opacity="1.000"/> | |
134 | + <stop offset="0.787" stop-color="#9D0000" stop-opacity="1.000"/> | |
135 | + <stop offset="0.795" stop-color="#A00000" stop-opacity="1.000"/> | |
136 | + <stop offset="0.803" stop-color="#A40000" stop-opacity="1.000"/> | |
137 | + <stop offset="0.811" stop-color="#A80000" stop-opacity="1.000"/> | |
138 | + <stop offset="0.819" stop-color="#AB0000" stop-opacity="1.000"/> | |
139 | + <stop offset="0.827" stop-color="#AF0000" stop-opacity="1.000"/> | |
140 | + <stop offset="0.835" stop-color="#B30000" stop-opacity="1.000"/> | |
141 | + <stop offset="0.843" stop-color="#B60000" stop-opacity="1.000"/> | |
142 | + <stop offset="0.850" stop-color="#BA0000" stop-opacity="1.000"/> | |
143 | + <stop offset="0.858" stop-color="#BE0000" stop-opacity="1.000"/> | |
144 | + <stop offset="0.866" stop-color="#C10000" stop-opacity="1.000"/> | |
145 | + <stop offset="0.874" stop-color="#C50000" stop-opacity="1.000"/> | |
146 | + <stop offset="0.882" stop-color="#C90000" stop-opacity="1.000"/> | |
147 | + <stop offset="0.890" stop-color="#CC0000" stop-opacity="1.000"/> | |
148 | + <stop offset="0.898" stop-color="#D00000" stop-opacity="1.000"/> | |
149 | + <stop offset="0.906" stop-color="#D40000" stop-opacity="1.000"/> | |
150 | + <stop offset="0.913" stop-color="#D70000" stop-opacity="1.000"/> | |
151 | + <stop offset="0.921" stop-color="#DB0000" stop-opacity="1.000"/> | |
152 | + <stop offset="0.929" stop-color="#DF0000" stop-opacity="1.000"/> | |
153 | + <stop offset="0.937" stop-color="#E20000" stop-opacity="1.000"/> | |
154 | + <stop offset="0.945" stop-color="#E60000" stop-opacity="1.000"/> | |
155 | + <stop offset="0.953" stop-color="#EA0000" stop-opacity="1.000"/> | |
156 | + <stop offset="0.961" stop-color="#ED0000" stop-opacity="1.000"/> | |
157 | + <stop offset="0.969" stop-color="#F10000" stop-opacity="1.000"/> | |
158 | + <stop offset="0.976" stop-color="#F50000" stop-opacity="1.000"/> | |
159 | + <stop offset="0.984" stop-color="#F80000" stop-opacity="1.000"/> | |
160 | + <stop offset="0.992" stop-color="#FC0000" stop-opacity="1.000"/> | |
161 | + <stop offset="1.000" stop-color="#FF0000" stop-opacity="1.000"/> | |
162 | + </linearGradient> | |
163 | + </defs> | |
164 | + <polyline | |
165 | + fill="url(#MyGradient0000000000)" | |
166 | + points="0.00,0.00 299.99,0.00 299.99,45.00 0.00,45.00 0.00,0.00 0.00,0.00 "/> | |
167 | + </g> | |
168 | + </g> | |
169 | +</svg> | |
... | ... |
... | ... | @@ -0,0 +1,169 @@ |
1 | +<?xml version="1.0" encoding="UTF-8"?> | |
2 | +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" | |
3 | + "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"> | |
4 | +<svg | |
5 | + xmlns="http://www.w3.org/2000/svg" | |
6 | + xmlns:xlink="http://www.w3.org/1999/xlink" | |
7 | + version="1.1" | |
8 | + width="300pt" | |
9 | + height="45pt" | |
10 | + viewBox="0 0 300 45" | |
11 | + > | |
12 | + <rect | |
13 | + x="0" | |
14 | + y="0" | |
15 | + width="300" | |
16 | + height="45" | |
17 | + stroke="none" | |
18 | + fill="#000000" | |
19 | + fill-opacity="1.000000" | |
20 | + /> | |
21 | + <g | |
22 | + transform="matrix(1 0 0 -1 0 45)" | |
23 | + > | |
24 | + <g> | |
25 | + <defs> | |
26 | + <linearGradient | |
27 | + id="MyGradient0000000000" | |
28 | + gradientUnits="userSpaceOnUse" | |
29 | + x1="0.00" | |
30 | + y1="0.00" | |
31 | + x2="299.99" | |
32 | + y2="0.00" | |
33 | + > | |
34 | + <stop offset="0.000" stop-color="#FFFFFF" stop-opacity="1.000"/> | |
35 | + <stop offset="0.008" stop-color="#02FBFF" stop-opacity="1.000"/> | |
36 | + <stop offset="0.016" stop-color="#04F7FF" stop-opacity="1.000"/> | |
37 | + <stop offset="0.024" stop-color="#06F3FF" stop-opacity="1.000"/> | |
38 | + <stop offset="0.031" stop-color="#08EFFF" stop-opacity="1.000"/> | |
39 | + <stop offset="0.039" stop-color="#0AEBFF" stop-opacity="1.000"/> | |
40 | + <stop offset="0.047" stop-color="#0CE7FF" stop-opacity="1.000"/> | |
41 | + <stop offset="0.055" stop-color="#0EE3FF" stop-opacity="1.000"/> | |
42 | + <stop offset="0.063" stop-color="#10DFFF" stop-opacity="1.000"/> | |
43 | + <stop offset="0.071" stop-color="#12DBFF" stop-opacity="1.000"/> | |
44 | + <stop offset="0.079" stop-color="#14D7FF" stop-opacity="1.000"/> | |
45 | + <stop offset="0.087" stop-color="#16D3FF" stop-opacity="1.000"/> | |
46 | + <stop offset="0.094" stop-color="#18CFFF" stop-opacity="1.000"/> | |
47 | + <stop offset="0.102" stop-color="#1ACBFF" stop-opacity="1.000"/> | |
48 | + <stop offset="0.110" stop-color="#1CC7FF" stop-opacity="1.000"/> | |
49 | + <stop offset="0.118" stop-color="#1EC3FF" stop-opacity="1.000"/> | |
50 | + <stop offset="0.126" stop-color="#20BFFF" stop-opacity="1.000"/> | |
51 | + <stop offset="0.134" stop-color="#22BBFF" stop-opacity="1.000"/> | |
52 | + <stop offset="0.142" stop-color="#24B7FF" stop-opacity="1.000"/> | |
53 | + <stop offset="0.150" stop-color="#26B3FF" stop-opacity="1.000"/> | |
54 | + <stop offset="0.157" stop-color="#28AFFF" stop-opacity="1.000"/> | |
55 | + <stop offset="0.165" stop-color="#2AABFF" stop-opacity="1.000"/> | |
56 | + <stop offset="0.173" stop-color="#2CA7FF" stop-opacity="1.000"/> | |
57 | + <stop offset="0.181" stop-color="#2EA3FF" stop-opacity="1.000"/> | |
58 | + <stop offset="0.189" stop-color="#309FFF" stop-opacity="1.000"/> | |
59 | + <stop offset="0.197" stop-color="#329BFF" stop-opacity="1.000"/> | |
60 | + <stop offset="0.205" stop-color="#3497FF" stop-opacity="1.000"/> | |
61 | + <stop offset="0.213" stop-color="#3693FF" stop-opacity="1.000"/> | |
62 | + <stop offset="0.220" stop-color="#388FFF" stop-opacity="1.000"/> | |
63 | + <stop offset="0.228" stop-color="#3A8BFF" stop-opacity="1.000"/> | |
64 | + <stop offset="0.236" stop-color="#3C87FF" stop-opacity="1.000"/> | |
65 | + <stop offset="0.244" stop-color="#3E83FF" stop-opacity="1.000"/> | |
66 | + <stop offset="0.252" stop-color="#4080FE" stop-opacity="1.000"/> | |
67 | + <stop offset="0.260" stop-color="#4280FA" stop-opacity="1.000"/> | |
68 | + <stop offset="0.268" stop-color="#4480F6" stop-opacity="1.000"/> | |
69 | + <stop offset="0.276" stop-color="#4680F2" stop-opacity="1.000"/> | |
70 | + <stop offset="0.283" stop-color="#4880EE" stop-opacity="1.000"/> | |
71 | + <stop offset="0.291" stop-color="#4A80EA" stop-opacity="1.000"/> | |
72 | + <stop offset="0.299" stop-color="#4C80E6" stop-opacity="1.000"/> | |
73 | + <stop offset="0.307" stop-color="#4E80E2" stop-opacity="1.000"/> | |
74 | + <stop offset="0.315" stop-color="#5080DE" stop-opacity="1.000"/> | |
75 | + <stop offset="0.323" stop-color="#5280DA" stop-opacity="1.000"/> | |
76 | + <stop offset="0.331" stop-color="#5480D6" stop-opacity="1.000"/> | |
77 | + <stop offset="0.339" stop-color="#5680D2" stop-opacity="1.000"/> | |
78 | + <stop offset="0.346" stop-color="#5880CE" stop-opacity="1.000"/> | |
79 | + <stop offset="0.354" stop-color="#5A80CA" stop-opacity="1.000"/> | |
80 | + <stop offset="0.362" stop-color="#5C80C6" stop-opacity="1.000"/> | |
81 | + <stop offset="0.370" stop-color="#5E80C2" stop-opacity="1.000"/> | |
82 | + <stop offset="0.378" stop-color="#6080BE" stop-opacity="1.000"/> | |
83 | + <stop offset="0.386" stop-color="#6280BA" stop-opacity="1.000"/> | |
84 | + <stop offset="0.394" stop-color="#6480B6" stop-opacity="1.000"/> | |
85 | + <stop offset="0.402" stop-color="#6680B2" stop-opacity="1.000"/> | |
86 | + <stop offset="0.409" stop-color="#6880AE" stop-opacity="1.000"/> | |
87 | + <stop offset="0.417" stop-color="#6A80AA" stop-opacity="1.000"/> | |
88 | + <stop offset="0.425" stop-color="#6C80A6" stop-opacity="1.000"/> | |
89 | + <stop offset="0.433" stop-color="#6E80A2" stop-opacity="1.000"/> | |
90 | + <stop offset="0.441" stop-color="#70809E" stop-opacity="1.000"/> | |
91 | + <stop offset="0.449" stop-color="#72809A" stop-opacity="1.000"/> | |
92 | + <stop offset="0.457" stop-color="#748096" stop-opacity="1.000"/> | |
93 | + <stop offset="0.465" stop-color="#768092" stop-opacity="1.000"/> | |
94 | + <stop offset="0.472" stop-color="#78808E" stop-opacity="1.000"/> | |
95 | + <stop offset="0.480" stop-color="#7A808A" stop-opacity="1.000"/> | |
96 | + <stop offset="0.488" stop-color="#7C8086" stop-opacity="1.000"/> | |
97 | + <stop offset="0.496" stop-color="#7E8082" stop-opacity="1.000"/> | |
98 | + <stop offset="0.504" stop-color="#82807E" stop-opacity="1.000"/> | |
99 | + <stop offset="0.512" stop-color="#86807C" stop-opacity="1.000"/> | |
100 | + <stop offset="0.520" stop-color="#8A807A" stop-opacity="1.000"/> | |
101 | + <stop offset="0.528" stop-color="#8E8078" stop-opacity="1.000"/> | |
102 | + <stop offset="0.535" stop-color="#928076" stop-opacity="1.000"/> | |
103 | + <stop offset="0.543" stop-color="#968074" stop-opacity="1.000"/> | |
104 | + <stop offset="0.551" stop-color="#9A8072" stop-opacity="1.000"/> | |
105 | + <stop offset="0.559" stop-color="#9E8070" stop-opacity="1.000"/> | |
106 | + <stop offset="0.567" stop-color="#A2806E" stop-opacity="1.000"/> | |
107 | + <stop offset="0.575" stop-color="#A6806C" stop-opacity="1.000"/> | |
108 | + <stop offset="0.583" stop-color="#AA806A" stop-opacity="1.000"/> | |
109 | + <stop offset="0.591" stop-color="#AE8068" stop-opacity="1.000"/> | |
110 | + <stop offset="0.598" stop-color="#B28066" stop-opacity="1.000"/> | |
111 | + <stop offset="0.606" stop-color="#B68064" stop-opacity="1.000"/> | |
112 | + <stop offset="0.614" stop-color="#BA8062" stop-opacity="1.000"/> | |
113 | + <stop offset="0.622" stop-color="#BE8060" stop-opacity="1.000"/> | |
114 | + <stop offset="0.630" stop-color="#C2805E" stop-opacity="1.000"/> | |
115 | + <stop offset="0.638" stop-color="#C6805C" stop-opacity="1.000"/> | |
116 | + <stop offset="0.646" stop-color="#CA805A" stop-opacity="1.000"/> | |
117 | + <stop offset="0.654" stop-color="#CE8058" stop-opacity="1.000"/> | |
118 | + <stop offset="0.661" stop-color="#D28056" stop-opacity="1.000"/> | |
119 | + <stop offset="0.669" stop-color="#D68054" stop-opacity="1.000"/> | |
120 | + <stop offset="0.677" stop-color="#DA8052" stop-opacity="1.000"/> | |
121 | + <stop offset="0.685" stop-color="#DE8050" stop-opacity="1.000"/> | |
122 | + <stop offset="0.693" stop-color="#E2804E" stop-opacity="1.000"/> | |
123 | + <stop offset="0.701" stop-color="#E6804C" stop-opacity="1.000"/> | |
124 | + <stop offset="0.709" stop-color="#EA804A" stop-opacity="1.000"/> | |
125 | + <stop offset="0.717" stop-color="#EE8048" stop-opacity="1.000"/> | |
126 | + <stop offset="0.724" stop-color="#F28046" stop-opacity="1.000"/> | |
127 | + <stop offset="0.732" stop-color="#F68044" stop-opacity="1.000"/> | |
128 | + <stop offset="0.740" stop-color="#FA8042" stop-opacity="1.000"/> | |
129 | + <stop offset="0.748" stop-color="#FE8040" stop-opacity="1.000"/> | |
130 | + <stop offset="0.756" stop-color="#FF833E" stop-opacity="1.000"/> | |
131 | + <stop offset="0.764" stop-color="#FF873C" stop-opacity="1.000"/> | |
132 | + <stop offset="0.772" stop-color="#FF8B3A" stop-opacity="1.000"/> | |
133 | + <stop offset="0.780" stop-color="#FF8F38" stop-opacity="1.000"/> | |
134 | + <stop offset="0.787" stop-color="#FF9336" stop-opacity="1.000"/> | |
135 | + <stop offset="0.795" stop-color="#FF9734" stop-opacity="1.000"/> | |
136 | + <stop offset="0.803" stop-color="#FF9B32" stop-opacity="1.000"/> | |
137 | + <stop offset="0.811" stop-color="#FF9F30" stop-opacity="1.000"/> | |
138 | + <stop offset="0.819" stop-color="#FFA32E" stop-opacity="1.000"/> | |
139 | + <stop offset="0.827" stop-color="#FFA72C" stop-opacity="1.000"/> | |
140 | + <stop offset="0.835" stop-color="#FFAB2A" stop-opacity="1.000"/> | |
141 | + <stop offset="0.843" stop-color="#FFAF28" stop-opacity="1.000"/> | |
142 | + <stop offset="0.850" stop-color="#FFB326" stop-opacity="1.000"/> | |
143 | + <stop offset="0.858" stop-color="#FFB724" stop-opacity="1.000"/> | |
144 | + <stop offset="0.866" stop-color="#FFBB22" stop-opacity="1.000"/> | |
145 | + <stop offset="0.874" stop-color="#FFBF20" stop-opacity="1.000"/> | |
146 | + <stop offset="0.882" stop-color="#FFC31E" stop-opacity="1.000"/> | |
147 | + <stop offset="0.890" stop-color="#FFC71C" stop-opacity="1.000"/> | |
148 | + <stop offset="0.898" stop-color="#FFCB1A" stop-opacity="1.000"/> | |
149 | + <stop offset="0.906" stop-color="#FFCF18" stop-opacity="1.000"/> | |
150 | + <stop offset="0.913" stop-color="#FFD316" stop-opacity="1.000"/> | |
151 | + <stop offset="0.921" stop-color="#FFD714" stop-opacity="1.000"/> | |
152 | + <stop offset="0.929" stop-color="#FFDB12" stop-opacity="1.000"/> | |
153 | + <stop offset="0.937" stop-color="#FFDF10" stop-opacity="1.000"/> | |
154 | + <stop offset="0.945" stop-color="#FFE30E" stop-opacity="1.000"/> | |
155 | + <stop offset="0.953" stop-color="#FFE70C" stop-opacity="1.000"/> | |
156 | + <stop offset="0.961" stop-color="#FFEB0A" stop-opacity="1.000"/> | |
157 | + <stop offset="0.969" stop-color="#FFEF08" stop-opacity="1.000"/> | |
158 | + <stop offset="0.976" stop-color="#FFF306" stop-opacity="1.000"/> | |
159 | + <stop offset="0.984" stop-color="#FFF704" stop-opacity="1.000"/> | |
160 | + <stop offset="0.992" stop-color="#FFFB02" stop-opacity="1.000"/> | |
161 | + <stop offset="1.000" stop-color="#000000" stop-opacity="1.000"/> | |
162 | + </linearGradient> | |
163 | + </defs> | |
164 | + <polyline | |
165 | + fill="url(#MyGradient0000000000)" | |
166 | + points="0.00,0.00 299.99,0.00 299.99,45.00 0.00,45.00 0.00,0.00 0.00,0.00 "/> | |
167 | + </g> | |
168 | + </g> | |
169 | +</svg> | |
... | ... |
... | ... | @@ -0,0 +1,169 @@ |
1 | +<?xml version="1.0" encoding="UTF-8"?> | |
2 | +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" | |
3 | + "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"> | |
4 | +<svg | |
5 | + xmlns="http://www.w3.org/2000/svg" | |
6 | + xmlns:xlink="http://www.w3.org/1999/xlink" | |
7 | + version="1.1" | |
8 | + width="300pt" | |
9 | + height="45pt" | |
10 | + viewBox="0 0 300 45" | |
11 | + > | |
12 | + <rect | |
13 | + x="0" | |
14 | + y="0" | |
15 | + width="300" | |
16 | + height="45" | |
17 | + stroke="none" | |
18 | + fill="#000000" | |
19 | + fill-opacity="1.000000" | |
20 | + /> | |
21 | + <g | |
22 | + transform="matrix(1 0 0 -1 0 45)" | |
23 | + > | |
24 | + <g> | |
25 | + <defs> | |
26 | + <linearGradient | |
27 | + id="MyGradient0000000000" | |
28 | + gradientUnits="userSpaceOnUse" | |
29 | + x1="0.00" | |
30 | + y1="0.00" | |
31 | + x2="299.99" | |
32 | + y2="0.00" | |
33 | + > | |
34 | + <stop offset="0.000" stop-color="#00004C" stop-opacity="1.000"/> | |
35 | + <stop offset="0.008" stop-color="#000053" stop-opacity="1.000"/> | |
36 | + <stop offset="0.016" stop-color="#00005A" stop-opacity="1.000"/> | |
37 | + <stop offset="0.024" stop-color="#000061" stop-opacity="1.000"/> | |
38 | + <stop offset="0.031" stop-color="#000069" stop-opacity="1.000"/> | |
39 | + <stop offset="0.039" stop-color="#000070" stop-opacity="1.000"/> | |
40 | + <stop offset="0.047" stop-color="#000077" stop-opacity="1.000"/> | |
41 | + <stop offset="0.055" stop-color="#00007E" stop-opacity="1.000"/> | |
42 | + <stop offset="0.063" stop-color="#000085" stop-opacity="1.000"/> | |
43 | + <stop offset="0.071" stop-color="#00008C" stop-opacity="1.000"/> | |
44 | + <stop offset="0.079" stop-color="#000093" stop-opacity="1.000"/> | |
45 | + <stop offset="0.087" stop-color="#00009A" stop-opacity="1.000"/> | |
46 | + <stop offset="0.094" stop-color="#0000A1" stop-opacity="1.000"/> | |
47 | + <stop offset="0.102" stop-color="#0000A8" stop-opacity="1.000"/> | |
48 | + <stop offset="0.110" stop-color="#0000AF" stop-opacity="1.000"/> | |
49 | + <stop offset="0.118" stop-color="#0000B6" stop-opacity="1.000"/> | |
50 | + <stop offset="0.126" stop-color="#0000BD" stop-opacity="1.000"/> | |
51 | + <stop offset="0.134" stop-color="#0000C4" stop-opacity="1.000"/> | |
52 | + <stop offset="0.142" stop-color="#0000CB" stop-opacity="1.000"/> | |
53 | + <stop offset="0.150" stop-color="#0000D2" stop-opacity="1.000"/> | |
54 | + <stop offset="0.157" stop-color="#0000D9" stop-opacity="1.000"/> | |
55 | + <stop offset="0.165" stop-color="#0000E0" stop-opacity="1.000"/> | |
56 | + <stop offset="0.173" stop-color="#0000E8" stop-opacity="1.000"/> | |
57 | + <stop offset="0.181" stop-color="#0000EF" stop-opacity="1.000"/> | |
58 | + <stop offset="0.189" stop-color="#0000F6" stop-opacity="1.000"/> | |
59 | + <stop offset="0.197" stop-color="#0000FD" stop-opacity="1.000"/> | |
60 | + <stop offset="0.205" stop-color="#0500FF" stop-opacity="1.000"/> | |
61 | + <stop offset="0.213" stop-color="#0D00FF" stop-opacity="1.000"/> | |
62 | + <stop offset="0.220" stop-color="#1600FF" stop-opacity="1.000"/> | |
63 | + <stop offset="0.228" stop-color="#1E00FF" stop-opacity="1.000"/> | |
64 | + <stop offset="0.236" stop-color="#2700FF" stop-opacity="1.000"/> | |
65 | + <stop offset="0.244" stop-color="#2F00FF" stop-opacity="1.000"/> | |
66 | + <stop offset="0.252" stop-color="#3800FF" stop-opacity="1.000"/> | |
67 | + <stop offset="0.260" stop-color="#4100FF" stop-opacity="1.000"/> | |
68 | + <stop offset="0.268" stop-color="#4900FF" stop-opacity="1.000"/> | |
69 | + <stop offset="0.276" stop-color="#5200FF" stop-opacity="1.000"/> | |
70 | + <stop offset="0.283" stop-color="#5A00FF" stop-opacity="1.000"/> | |
71 | + <stop offset="0.291" stop-color="#6300FF" stop-opacity="1.000"/> | |
72 | + <stop offset="0.299" stop-color="#6B00FF" stop-opacity="1.000"/> | |
73 | + <stop offset="0.307" stop-color="#7400FF" stop-opacity="1.000"/> | |
74 | + <stop offset="0.315" stop-color="#7D00FF" stop-opacity="1.000"/> | |
75 | + <stop offset="0.323" stop-color="#8500FF" stop-opacity="1.000"/> | |
76 | + <stop offset="0.331" stop-color="#8E00FF" stop-opacity="1.000"/> | |
77 | + <stop offset="0.339" stop-color="#9600FF" stop-opacity="1.000"/> | |
78 | + <stop offset="0.346" stop-color="#9F00FF" stop-opacity="1.000"/> | |
79 | + <stop offset="0.354" stop-color="#A700FF" stop-opacity="1.000"/> | |
80 | + <stop offset="0.362" stop-color="#B000FF" stop-opacity="1.000"/> | |
81 | + <stop offset="0.370" stop-color="#B900FF" stop-opacity="1.000"/> | |
82 | + <stop offset="0.378" stop-color="#C100FF" stop-opacity="1.000"/> | |
83 | + <stop offset="0.386" stop-color="#CA00FF" stop-opacity="1.000"/> | |
84 | + <stop offset="0.394" stop-color="#D200FF" stop-opacity="1.000"/> | |
85 | + <stop offset="0.402" stop-color="#D901FD" stop-opacity="1.000"/> | |
86 | + <stop offset="0.409" stop-color="#DB06F3" stop-opacity="1.000"/> | |
87 | + <stop offset="0.417" stop-color="#DC0BE9" stop-opacity="1.000"/> | |
88 | + <stop offset="0.425" stop-color="#DE10DF" stop-opacity="1.000"/> | |
89 | + <stop offset="0.433" stop-color="#DF15D5" stop-opacity="1.000"/> | |
90 | + <stop offset="0.441" stop-color="#E11ACB" stop-opacity="1.000"/> | |
91 | + <stop offset="0.449" stop-color="#E21FC1" stop-opacity="1.000"/> | |
92 | + <stop offset="0.457" stop-color="#E424B7" stop-opacity="1.000"/> | |
93 | + <stop offset="0.465" stop-color="#E529AD" stop-opacity="1.000"/> | |
94 | + <stop offset="0.472" stop-color="#E72EA3" stop-opacity="1.000"/> | |
95 | + <stop offset="0.480" stop-color="#E93399" stop-opacity="1.000"/> | |
96 | + <stop offset="0.488" stop-color="#EA388F" stop-opacity="1.000"/> | |
97 | + <stop offset="0.496" stop-color="#EC3D85" stop-opacity="1.000"/> | |
98 | + <stop offset="0.504" stop-color="#ED427A" stop-opacity="1.000"/> | |
99 | + <stop offset="0.512" stop-color="#EF4770" stop-opacity="1.000"/> | |
100 | + <stop offset="0.520" stop-color="#F04C66" stop-opacity="1.000"/> | |
101 | + <stop offset="0.528" stop-color="#F2515C" stop-opacity="1.000"/> | |
102 | + <stop offset="0.535" stop-color="#F35652" stop-opacity="1.000"/> | |
103 | + <stop offset="0.543" stop-color="#F55B48" stop-opacity="1.000"/> | |
104 | + <stop offset="0.551" stop-color="#F6603E" stop-opacity="1.000"/> | |
105 | + <stop offset="0.559" stop-color="#F86534" stop-opacity="1.000"/> | |
106 | + <stop offset="0.567" stop-color="#F96A2A" stop-opacity="1.000"/> | |
107 | + <stop offset="0.575" stop-color="#FB6F20" stop-opacity="1.000"/> | |
108 | + <stop offset="0.583" stop-color="#FC7416" stop-opacity="1.000"/> | |
109 | + <stop offset="0.591" stop-color="#FE790C" stop-opacity="1.000"/> | |
110 | + <stop offset="0.598" stop-color="#FF7E02" stop-opacity="1.000"/> | |
111 | + <stop offset="0.606" stop-color="#FF8300" stop-opacity="1.000"/> | |
112 | + <stop offset="0.614" stop-color="#FF8700" stop-opacity="1.000"/> | |
113 | + <stop offset="0.622" stop-color="#FF8B00" stop-opacity="1.000"/> | |
114 | + <stop offset="0.630" stop-color="#FF8F00" stop-opacity="1.000"/> | |
115 | + <stop offset="0.638" stop-color="#FF9300" stop-opacity="1.000"/> | |
116 | + <stop offset="0.646" stop-color="#FF9700" stop-opacity="1.000"/> | |
117 | + <stop offset="0.654" stop-color="#FF9B00" stop-opacity="1.000"/> | |
118 | + <stop offset="0.661" stop-color="#FF9F00" stop-opacity="1.000"/> | |
119 | + <stop offset="0.669" stop-color="#FFA300" stop-opacity="1.000"/> | |
120 | + <stop offset="0.677" stop-color="#FFA700" stop-opacity="1.000"/> | |
121 | + <stop offset="0.685" stop-color="#FFAB00" stop-opacity="1.000"/> | |
122 | + <stop offset="0.693" stop-color="#FFAF00" stop-opacity="1.000"/> | |
123 | + <stop offset="0.701" stop-color="#FFB300" stop-opacity="1.000"/> | |
124 | + <stop offset="0.709" stop-color="#FFB700" stop-opacity="1.000"/> | |
125 | + <stop offset="0.717" stop-color="#FFBB00" stop-opacity="1.000"/> | |
126 | + <stop offset="0.724" stop-color="#FFBF00" stop-opacity="1.000"/> | |
127 | + <stop offset="0.732" stop-color="#FFC300" stop-opacity="1.000"/> | |
128 | + <stop offset="0.740" stop-color="#FFC700" stop-opacity="1.000"/> | |
129 | + <stop offset="0.748" stop-color="#FFCB00" stop-opacity="1.000"/> | |
130 | + <stop offset="0.756" stop-color="#FFCF00" stop-opacity="1.000"/> | |
131 | + <stop offset="0.764" stop-color="#FFD300" stop-opacity="1.000"/> | |
132 | + <stop offset="0.772" stop-color="#FFD700" stop-opacity="1.000"/> | |
133 | + <stop offset="0.780" stop-color="#FFDB00" stop-opacity="1.000"/> | |
134 | + <stop offset="0.787" stop-color="#FFDF00" stop-opacity="1.000"/> | |
135 | + <stop offset="0.795" stop-color="#FFE300" stop-opacity="1.000"/> | |
136 | + <stop offset="0.803" stop-color="#FFE603" stop-opacity="1.000"/> | |
137 | + <stop offset="0.811" stop-color="#FFE70C" stop-opacity="1.000"/> | |
138 | + <stop offset="0.819" stop-color="#FFE815" stop-opacity="1.000"/> | |
139 | + <stop offset="0.827" stop-color="#FFE91E" stop-opacity="1.000"/> | |
140 | + <stop offset="0.835" stop-color="#FFEA27" stop-opacity="1.000"/> | |
141 | + <stop offset="0.843" stop-color="#FFEB30" stop-opacity="1.000"/> | |
142 | + <stop offset="0.850" stop-color="#FFEC3A" stop-opacity="1.000"/> | |
143 | + <stop offset="0.858" stop-color="#FFED43" stop-opacity="1.000"/> | |
144 | + <stop offset="0.866" stop-color="#FFEE4C" stop-opacity="1.000"/> | |
145 | + <stop offset="0.874" stop-color="#FFEF55" stop-opacity="1.000"/> | |
146 | + <stop offset="0.882" stop-color="#FFF05E" stop-opacity="1.000"/> | |
147 | + <stop offset="0.890" stop-color="#FFF167" stop-opacity="1.000"/> | |
148 | + <stop offset="0.898" stop-color="#FFF270" stop-opacity="1.000"/> | |
149 | + <stop offset="0.906" stop-color="#FFF379" stop-opacity="1.000"/> | |
150 | + <stop offset="0.913" stop-color="#FFF482" stop-opacity="1.000"/> | |
151 | + <stop offset="0.921" stop-color="#FFF58B" stop-opacity="1.000"/> | |
152 | + <stop offset="0.929" stop-color="#FFF694" stop-opacity="1.000"/> | |
153 | + <stop offset="0.937" stop-color="#FFF79D" stop-opacity="1.000"/> | |
154 | + <stop offset="0.945" stop-color="#FFF8A6" stop-opacity="1.000"/> | |
155 | + <stop offset="0.953" stop-color="#FFF9AF" stop-opacity="1.000"/> | |
156 | + <stop offset="0.961" stop-color="#FFFAB9" stop-opacity="1.000"/> | |
157 | + <stop offset="0.969" stop-color="#FFFBC2" stop-opacity="1.000"/> | |
158 | + <stop offset="0.976" stop-color="#FFFCCB" stop-opacity="1.000"/> | |
159 | + <stop offset="0.984" stop-color="#FFFDD4" stop-opacity="1.000"/> | |
160 | + <stop offset="0.992" stop-color="#FFFEDD" stop-opacity="1.000"/> | |
161 | + <stop offset="1.000" stop-color="#FFFFE6" stop-opacity="1.000"/> | |
162 | + </linearGradient> | |
163 | + </defs> | |
164 | + <polyline | |
165 | + fill="url(#MyGradient0000000000)" | |
166 | + points="0.00,0.00 299.99,0.00 299.99,45.00 0.00,45.00 0.00,0.00 0.00,0.00 "/> | |
167 | + </g> | |
168 | + </g> | |
169 | +</svg> | |
... | ... |
... | ... | @@ -0,0 +1,169 @@ |
1 | +<?xml version="1.0" encoding="UTF-8"?> | |
2 | +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" | |
3 | + "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"> | |
4 | +<svg | |
5 | + xmlns="http://www.w3.org/2000/svg" | |
6 | + xmlns:xlink="http://www.w3.org/1999/xlink" | |
7 | + version="1.1" | |
8 | + width="300pt" | |
9 | + height="45pt" | |
10 | + viewBox="0 0 300 45" | |
11 | + > | |
12 | + <rect | |
13 | + x="0" | |
14 | + y="0" | |
15 | + width="300" | |
16 | + height="45" | |
17 | + stroke="none" | |
18 | + fill="#000000" | |
19 | + fill-opacity="1.000000" | |
20 | + /> | |
21 | + <g | |
22 | + transform="matrix(1 0 0 -1 0 45)" | |
23 | + > | |
24 | + <g> | |
25 | + <defs> | |
26 | + <linearGradient | |
27 | + id="MyGradient0000000000" | |
28 | + gradientUnits="userSpaceOnUse" | |
29 | + x1="0.00" | |
30 | + y1="0.00" | |
31 | + x2="299.99" | |
32 | + y2="0.00" | |
33 | + > | |
34 | + <stop offset="0.000" stop-color="#0000FF" stop-opacity="1.000"/> | |
35 | + <stop offset="0.008" stop-color="#0008FF" stop-opacity="1.000"/> | |
36 | + <stop offset="0.016" stop-color="#0010FF" stop-opacity="1.000"/> | |
37 | + <stop offset="0.024" stop-color="#0018FF" stop-opacity="1.000"/> | |
38 | + <stop offset="0.031" stop-color="#0020FF" stop-opacity="1.000"/> | |
39 | + <stop offset="0.039" stop-color="#0028FF" stop-opacity="1.000"/> | |
40 | + <stop offset="0.047" stop-color="#0030FF" stop-opacity="1.000"/> | |
41 | + <stop offset="0.055" stop-color="#0038FF" stop-opacity="1.000"/> | |
42 | + <stop offset="0.063" stop-color="#0040FF" stop-opacity="1.000"/> | |
43 | + <stop offset="0.071" stop-color="#0048FF" stop-opacity="1.000"/> | |
44 | + <stop offset="0.079" stop-color="#0050FF" stop-opacity="1.000"/> | |
45 | + <stop offset="0.087" stop-color="#0058FF" stop-opacity="1.000"/> | |
46 | + <stop offset="0.094" stop-color="#0060FF" stop-opacity="1.000"/> | |
47 | + <stop offset="0.102" stop-color="#0068FF" stop-opacity="1.000"/> | |
48 | + <stop offset="0.110" stop-color="#0070FF" stop-opacity="1.000"/> | |
49 | + <stop offset="0.118" stop-color="#0078FF" stop-opacity="1.000"/> | |
50 | + <stop offset="0.126" stop-color="#0081FF" stop-opacity="1.000"/> | |
51 | + <stop offset="0.134" stop-color="#0089FF" stop-opacity="1.000"/> | |
52 | + <stop offset="0.142" stop-color="#0091FF" stop-opacity="1.000"/> | |
53 | + <stop offset="0.150" stop-color="#0099FF" stop-opacity="1.000"/> | |
54 | + <stop offset="0.157" stop-color="#00A1FF" stop-opacity="1.000"/> | |
55 | + <stop offset="0.165" stop-color="#00A9FF" stop-opacity="1.000"/> | |
56 | + <stop offset="0.173" stop-color="#00B1FF" stop-opacity="1.000"/> | |
57 | + <stop offset="0.181" stop-color="#00B9FF" stop-opacity="1.000"/> | |
58 | + <stop offset="0.189" stop-color="#00C1FF" stop-opacity="1.000"/> | |
59 | + <stop offset="0.197" stop-color="#00C9FF" stop-opacity="1.000"/> | |
60 | + <stop offset="0.205" stop-color="#00D1FF" stop-opacity="1.000"/> | |
61 | + <stop offset="0.213" stop-color="#00D9FF" stop-opacity="1.000"/> | |
62 | + <stop offset="0.220" stop-color="#00E1FF" stop-opacity="1.000"/> | |
63 | + <stop offset="0.228" stop-color="#00E9FF" stop-opacity="1.000"/> | |
64 | + <stop offset="0.236" stop-color="#00F1FF" stop-opacity="1.000"/> | |
65 | + <stop offset="0.244" stop-color="#00F9FF" stop-opacity="1.000"/> | |
66 | + <stop offset="0.252" stop-color="#00FFFD" stop-opacity="1.000"/> | |
67 | + <stop offset="0.260" stop-color="#00FFF5" stop-opacity="1.000"/> | |
68 | + <stop offset="0.268" stop-color="#00FFED" stop-opacity="1.000"/> | |
69 | + <stop offset="0.276" stop-color="#00FFE5" stop-opacity="1.000"/> | |
70 | + <stop offset="0.283" stop-color="#00FFDD" stop-opacity="1.000"/> | |
71 | + <stop offset="0.291" stop-color="#00FFD5" stop-opacity="1.000"/> | |
72 | + <stop offset="0.299" stop-color="#00FFCD" stop-opacity="1.000"/> | |
73 | + <stop offset="0.307" stop-color="#00FFC5" stop-opacity="1.000"/> | |
74 | + <stop offset="0.315" stop-color="#00FFBD" stop-opacity="1.000"/> | |
75 | + <stop offset="0.323" stop-color="#00FFB5" stop-opacity="1.000"/> | |
76 | + <stop offset="0.331" stop-color="#00FFAD" stop-opacity="1.000"/> | |
77 | + <stop offset="0.339" stop-color="#00FFA5" stop-opacity="1.000"/> | |
78 | + <stop offset="0.346" stop-color="#00FF9D" stop-opacity="1.000"/> | |
79 | + <stop offset="0.354" stop-color="#00FF95" stop-opacity="1.000"/> | |
80 | + <stop offset="0.362" stop-color="#00FF8D" stop-opacity="1.000"/> | |
81 | + <stop offset="0.370" stop-color="#00FF85" stop-opacity="1.000"/> | |
82 | + <stop offset="0.378" stop-color="#00FF7C" stop-opacity="1.000"/> | |
83 | + <stop offset="0.386" stop-color="#00FF74" stop-opacity="1.000"/> | |
84 | + <stop offset="0.394" stop-color="#00FF6C" stop-opacity="1.000"/> | |
85 | + <stop offset="0.402" stop-color="#00FF64" stop-opacity="1.000"/> | |
86 | + <stop offset="0.409" stop-color="#00FF5C" stop-opacity="1.000"/> | |
87 | + <stop offset="0.417" stop-color="#00FF54" stop-opacity="1.000"/> | |
88 | + <stop offset="0.425" stop-color="#00FF4C" stop-opacity="1.000"/> | |
89 | + <stop offset="0.433" stop-color="#00FF44" stop-opacity="1.000"/> | |
90 | + <stop offset="0.441" stop-color="#00FF3C" stop-opacity="1.000"/> | |
91 | + <stop offset="0.449" stop-color="#00FF34" stop-opacity="1.000"/> | |
92 | + <stop offset="0.457" stop-color="#00FF2C" stop-opacity="1.000"/> | |
93 | + <stop offset="0.465" stop-color="#00FF24" stop-opacity="1.000"/> | |
94 | + <stop offset="0.472" stop-color="#00FF1C" stop-opacity="1.000"/> | |
95 | + <stop offset="0.480" stop-color="#00FF14" stop-opacity="1.000"/> | |
96 | + <stop offset="0.488" stop-color="#00FF0C" stop-opacity="1.000"/> | |
97 | + <stop offset="0.496" stop-color="#00FF04" stop-opacity="1.000"/> | |
98 | + <stop offset="0.504" stop-color="#04FF00" stop-opacity="1.000"/> | |
99 | + <stop offset="0.512" stop-color="#0CFF00" stop-opacity="1.000"/> | |
100 | + <stop offset="0.520" stop-color="#14FF00" stop-opacity="1.000"/> | |
101 | + <stop offset="0.528" stop-color="#1CFF00" stop-opacity="1.000"/> | |
102 | + <stop offset="0.535" stop-color="#24FF00" stop-opacity="1.000"/> | |
103 | + <stop offset="0.543" stop-color="#2CFF00" stop-opacity="1.000"/> | |
104 | + <stop offset="0.551" stop-color="#34FF00" stop-opacity="1.000"/> | |
105 | + <stop offset="0.559" stop-color="#3CFF00" stop-opacity="1.000"/> | |
106 | + <stop offset="0.567" stop-color="#44FF00" stop-opacity="1.000"/> | |
107 | + <stop offset="0.575" stop-color="#4CFF00" stop-opacity="1.000"/> | |
108 | + <stop offset="0.583" stop-color="#54FF00" stop-opacity="1.000"/> | |
109 | + <stop offset="0.591" stop-color="#5CFF00" stop-opacity="1.000"/> | |
110 | + <stop offset="0.598" stop-color="#64FF00" stop-opacity="1.000"/> | |
111 | + <stop offset="0.606" stop-color="#6CFF00" stop-opacity="1.000"/> | |
112 | + <stop offset="0.614" stop-color="#74FF00" stop-opacity="1.000"/> | |
113 | + <stop offset="0.622" stop-color="#7CFF00" stop-opacity="1.000"/> | |
114 | + <stop offset="0.630" stop-color="#85FF00" stop-opacity="1.000"/> | |
115 | + <stop offset="0.638" stop-color="#8DFF00" stop-opacity="1.000"/> | |
116 | + <stop offset="0.646" stop-color="#95FF00" stop-opacity="1.000"/> | |
117 | + <stop offset="0.654" stop-color="#9DFF00" stop-opacity="1.000"/> | |
118 | + <stop offset="0.661" stop-color="#A5FF00" stop-opacity="1.000"/> | |
119 | + <stop offset="0.669" stop-color="#ADFF00" stop-opacity="1.000"/> | |
120 | + <stop offset="0.677" stop-color="#B5FF00" stop-opacity="1.000"/> | |
121 | + <stop offset="0.685" stop-color="#BDFF00" stop-opacity="1.000"/> | |
122 | + <stop offset="0.693" stop-color="#C5FF00" stop-opacity="1.000"/> | |
123 | + <stop offset="0.701" stop-color="#CDFF00" stop-opacity="1.000"/> | |
124 | + <stop offset="0.709" stop-color="#D5FF00" stop-opacity="1.000"/> | |
125 | + <stop offset="0.717" stop-color="#DDFF00" stop-opacity="1.000"/> | |
126 | + <stop offset="0.724" stop-color="#E5FF00" stop-opacity="1.000"/> | |
127 | + <stop offset="0.732" stop-color="#EDFF00" stop-opacity="1.000"/> | |
128 | + <stop offset="0.740" stop-color="#F5FF00" stop-opacity="1.000"/> | |
129 | + <stop offset="0.748" stop-color="#FDFF00" stop-opacity="1.000"/> | |
130 | + <stop offset="0.756" stop-color="#FFF900" stop-opacity="1.000"/> | |
131 | + <stop offset="0.764" stop-color="#FFF100" stop-opacity="1.000"/> | |
132 | + <stop offset="0.772" stop-color="#FFE900" stop-opacity="1.000"/> | |
133 | + <stop offset="0.780" stop-color="#FFE100" stop-opacity="1.000"/> | |
134 | + <stop offset="0.787" stop-color="#FFD900" stop-opacity="1.000"/> | |
135 | + <stop offset="0.795" stop-color="#FFD100" stop-opacity="1.000"/> | |
136 | + <stop offset="0.803" stop-color="#FFC900" stop-opacity="1.000"/> | |
137 | + <stop offset="0.811" stop-color="#FFC100" stop-opacity="1.000"/> | |
138 | + <stop offset="0.819" stop-color="#FFB900" stop-opacity="1.000"/> | |
139 | + <stop offset="0.827" stop-color="#FFB100" stop-opacity="1.000"/> | |
140 | + <stop offset="0.835" stop-color="#FFA900" stop-opacity="1.000"/> | |
141 | + <stop offset="0.843" stop-color="#FFA100" stop-opacity="1.000"/> | |
142 | + <stop offset="0.850" stop-color="#FF9900" stop-opacity="1.000"/> | |
143 | + <stop offset="0.858" stop-color="#FF9100" stop-opacity="1.000"/> | |
144 | + <stop offset="0.866" stop-color="#FF8900" stop-opacity="1.000"/> | |
145 | + <stop offset="0.874" stop-color="#FF8100" stop-opacity="1.000"/> | |
146 | + <stop offset="0.882" stop-color="#FF7800" stop-opacity="1.000"/> | |
147 | + <stop offset="0.890" stop-color="#FF7000" stop-opacity="1.000"/> | |
148 | + <stop offset="0.898" stop-color="#FF6800" stop-opacity="1.000"/> | |
149 | + <stop offset="0.906" stop-color="#FF6000" stop-opacity="1.000"/> | |
150 | + <stop offset="0.913" stop-color="#FF5800" stop-opacity="1.000"/> | |
151 | + <stop offset="0.921" stop-color="#FF5000" stop-opacity="1.000"/> | |
152 | + <stop offset="0.929" stop-color="#FF4800" stop-opacity="1.000"/> | |
153 | + <stop offset="0.937" stop-color="#FF4000" stop-opacity="1.000"/> | |
154 | + <stop offset="0.945" stop-color="#FF3800" stop-opacity="1.000"/> | |
155 | + <stop offset="0.953" stop-color="#FF3000" stop-opacity="1.000"/> | |
156 | + <stop offset="0.961" stop-color="#FF2800" stop-opacity="1.000"/> | |
157 | + <stop offset="0.969" stop-color="#FF2000" stop-opacity="1.000"/> | |
158 | + <stop offset="0.976" stop-color="#FF1800" stop-opacity="1.000"/> | |
159 | + <stop offset="0.984" stop-color="#FF1000" stop-opacity="1.000"/> | |
160 | + <stop offset="0.992" stop-color="#FF0800" stop-opacity="1.000"/> | |
161 | + <stop offset="1.000" stop-color="#FF0000" stop-opacity="1.000"/> | |
162 | + </linearGradient> | |
163 | + </defs> | |
164 | + <polyline | |
165 | + fill="url(#MyGradient0000000000)" | |
166 | + points="0.00,0.00 299.99,0.00 299.99,45.00 0.00,45.00 0.00,0.00 0.00,0.00 "/> | |
167 | + </g> | |
168 | + </g> | |
169 | +</svg> | |
... | ... |
... | ... | @@ -0,0 +1,169 @@ |
1 | +<?xml version="1.0" encoding="UTF-8"?> | |
2 | +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" | |
3 | + "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"> | |
4 | +<svg | |
5 | + xmlns="http://www.w3.org/2000/svg" | |
6 | + xmlns:xlink="http://www.w3.org/1999/xlink" | |
7 | + version="1.1" | |
8 | + width="300pt" | |
9 | + height="45pt" | |
10 | + viewBox="0 0 300 45" | |
11 | + > | |
12 | + <rect | |
13 | + x="0" | |
14 | + y="0" | |
15 | + width="300" | |
16 | + height="45" | |
17 | + stroke="none" | |
18 | + fill="#000000" | |
19 | + fill-opacity="1.000000" | |
20 | + /> | |
21 | + <g | |
22 | + transform="matrix(1 0 0 -1 0 45)" | |
23 | + > | |
24 | + <g> | |
25 | + <defs> | |
26 | + <linearGradient | |
27 | + id="MyGradient0000000000" | |
28 | + gradientUnits="userSpaceOnUse" | |
29 | + x1="0.00" | |
30 | + y1="0.00" | |
31 | + x2="299.99" | |
32 | + y2="0.00" | |
33 | + > | |
34 | + <stop offset="0.000" stop-color="#000000" stop-opacity="1.000"/> | |
35 | + <stop offset="0.008" stop-color="#F2C3FF" stop-opacity="1.000"/> | |
36 | + <stop offset="0.016" stop-color="#EBBEFF" stop-opacity="1.000"/> | |
37 | + <stop offset="0.024" stop-color="#E5B9FF" stop-opacity="1.000"/> | |
38 | + <stop offset="0.031" stop-color="#DEB4FF" stop-opacity="1.000"/> | |
39 | + <stop offset="0.039" stop-color="#D7AFFF" stop-opacity="1.000"/> | |
40 | + <stop offset="0.047" stop-color="#D1AAFF" stop-opacity="1.000"/> | |
41 | + <stop offset="0.055" stop-color="#CAA5FF" stop-opacity="1.000"/> | |
42 | + <stop offset="0.063" stop-color="#C3A0FF" stop-opacity="1.000"/> | |
43 | + <stop offset="0.071" stop-color="#BD9BFF" stop-opacity="1.000"/> | |
44 | + <stop offset="0.079" stop-color="#B696FF" stop-opacity="1.000"/> | |
45 | + <stop offset="0.087" stop-color="#AF91FF" stop-opacity="1.000"/> | |
46 | + <stop offset="0.094" stop-color="#A88CFF" stop-opacity="1.000"/> | |
47 | + <stop offset="0.102" stop-color="#A287FF" stop-opacity="1.000"/> | |
48 | + <stop offset="0.110" stop-color="#9B82FF" stop-opacity="1.000"/> | |
49 | + <stop offset="0.118" stop-color="#947DFF" stop-opacity="1.000"/> | |
50 | + <stop offset="0.126" stop-color="#8E78FF" stop-opacity="1.000"/> | |
51 | + <stop offset="0.134" stop-color="#8773FF" stop-opacity="1.000"/> | |
52 | + <stop offset="0.142" stop-color="#806EFF" stop-opacity="1.000"/> | |
53 | + <stop offset="0.150" stop-color="#7A69FF" stop-opacity="1.000"/> | |
54 | + <stop offset="0.157" stop-color="#7364FF" stop-opacity="1.000"/> | |
55 | + <stop offset="0.165" stop-color="#6C5FFF" stop-opacity="1.000"/> | |
56 | + <stop offset="0.173" stop-color="#665AFF" stop-opacity="1.000"/> | |
57 | + <stop offset="0.181" stop-color="#5F55FF" stop-opacity="1.000"/> | |
58 | + <stop offset="0.189" stop-color="#5850FF" stop-opacity="1.000"/> | |
59 | + <stop offset="0.197" stop-color="#524BFF" stop-opacity="1.000"/> | |
60 | + <stop offset="0.205" stop-color="#4B46FF" stop-opacity="1.000"/> | |
61 | + <stop offset="0.213" stop-color="#4441FF" stop-opacity="1.000"/> | |
62 | + <stop offset="0.220" stop-color="#3D3CFF" stop-opacity="1.000"/> | |
63 | + <stop offset="0.228" stop-color="#3737FF" stop-opacity="1.000"/> | |
64 | + <stop offset="0.236" stop-color="#3134FF" stop-opacity="1.000"/> | |
65 | + <stop offset="0.244" stop-color="#2F3EFF" stop-opacity="1.000"/> | |
66 | + <stop offset="0.252" stop-color="#2E47FF" stop-opacity="1.000"/> | |
67 | + <stop offset="0.260" stop-color="#2C50FF" stop-opacity="1.000"/> | |
68 | + <stop offset="0.268" stop-color="#2B5AFF" stop-opacity="1.000"/> | |
69 | + <stop offset="0.276" stop-color="#2963FF" stop-opacity="1.000"/> | |
70 | + <stop offset="0.283" stop-color="#276DFF" stop-opacity="1.000"/> | |
71 | + <stop offset="0.291" stop-color="#2676FF" stop-opacity="1.000"/> | |
72 | + <stop offset="0.299" stop-color="#2480FF" stop-opacity="1.000"/> | |
73 | + <stop offset="0.307" stop-color="#2389FF" stop-opacity="1.000"/> | |
74 | + <stop offset="0.315" stop-color="#2193FF" stop-opacity="1.000"/> | |
75 | + <stop offset="0.323" stop-color="#209CFF" stop-opacity="1.000"/> | |
76 | + <stop offset="0.331" stop-color="#1EA6FF" stop-opacity="1.000"/> | |
77 | + <stop offset="0.339" stop-color="#1DAFFF" stop-opacity="1.000"/> | |
78 | + <stop offset="0.346" stop-color="#1BB9FF" stop-opacity="1.000"/> | |
79 | + <stop offset="0.354" stop-color="#1AC2FF" stop-opacity="1.000"/> | |
80 | + <stop offset="0.362" stop-color="#18CCFF" stop-opacity="1.000"/> | |
81 | + <stop offset="0.370" stop-color="#16D5FF" stop-opacity="1.000"/> | |
82 | + <stop offset="0.378" stop-color="#15DFFF" stop-opacity="1.000"/> | |
83 | + <stop offset="0.386" stop-color="#13E8FF" stop-opacity="1.000"/> | |
84 | + <stop offset="0.394" stop-color="#12F2FF" stop-opacity="1.000"/> | |
85 | + <stop offset="0.402" stop-color="#10FAFD" stop-opacity="1.000"/> | |
86 | + <stop offset="0.409" stop-color="#0FFAF2" stop-opacity="1.000"/> | |
87 | + <stop offset="0.417" stop-color="#0DFBE7" stop-opacity="1.000"/> | |
88 | + <stop offset="0.425" stop-color="#0CFBDB" stop-opacity="1.000"/> | |
89 | + <stop offset="0.433" stop-color="#0AFCD0" stop-opacity="1.000"/> | |
90 | + <stop offset="0.441" stop-color="#09FCC5" stop-opacity="1.000"/> | |
91 | + <stop offset="0.449" stop-color="#07FDB9" stop-opacity="1.000"/> | |
92 | + <stop offset="0.457" stop-color="#05FDAE" stop-opacity="1.000"/> | |
93 | + <stop offset="0.465" stop-color="#04FEA3" stop-opacity="1.000"/> | |
94 | + <stop offset="0.472" stop-color="#02FF97" stop-opacity="1.000"/> | |
95 | + <stop offset="0.480" stop-color="#01FF8C" stop-opacity="1.000"/> | |
96 | + <stop offset="0.488" stop-color="#00FF81" stop-opacity="1.000"/> | |
97 | + <stop offset="0.496" stop-color="#00FF76" stop-opacity="1.000"/> | |
98 | + <stop offset="0.504" stop-color="#01FF6A" stop-opacity="1.000"/> | |
99 | + <stop offset="0.512" stop-color="#01FF5F" stop-opacity="1.000"/> | |
100 | + <stop offset="0.520" stop-color="#02FF54" stop-opacity="1.000"/> | |
101 | + <stop offset="0.528" stop-color="#02FF49" stop-opacity="1.000"/> | |
102 | + <stop offset="0.535" stop-color="#03FF3E" stop-opacity="1.000"/> | |
103 | + <stop offset="0.543" stop-color="#03FF33" stop-opacity="1.000"/> | |
104 | + <stop offset="0.551" stop-color="#04FF27" stop-opacity="1.000"/> | |
105 | + <stop offset="0.559" stop-color="#04FF1C" stop-opacity="1.000"/> | |
106 | + <stop offset="0.567" stop-color="#05FF11" stop-opacity="1.000"/> | |
107 | + <stop offset="0.575" stop-color="#05FF06" stop-opacity="1.000"/> | |
108 | + <stop offset="0.583" stop-color="#13FF04" stop-opacity="1.000"/> | |
109 | + <stop offset="0.591" stop-color="#25FF04" stop-opacity="1.000"/> | |
110 | + <stop offset="0.598" stop-color="#36FF04" stop-opacity="1.000"/> | |
111 | + <stop offset="0.606" stop-color="#47FF04" stop-opacity="1.000"/> | |
112 | + <stop offset="0.614" stop-color="#59FF04" stop-opacity="1.000"/> | |
113 | + <stop offset="0.622" stop-color="#6AFF04" stop-opacity="1.000"/> | |
114 | + <stop offset="0.630" stop-color="#7CFF04" stop-opacity="1.000"/> | |
115 | + <stop offset="0.638" stop-color="#8DFF04" stop-opacity="1.000"/> | |
116 | + <stop offset="0.646" stop-color="#9FFF04" stop-opacity="1.000"/> | |
117 | + <stop offset="0.654" stop-color="#B0FF04" stop-opacity="1.000"/> | |
118 | + <stop offset="0.661" stop-color="#C1FF04" stop-opacity="1.000"/> | |
119 | + <stop offset="0.669" stop-color="#D3FF04" stop-opacity="1.000"/> | |
120 | + <stop offset="0.677" stop-color="#E0FF04" stop-opacity="1.000"/> | |
121 | + <stop offset="0.685" stop-color="#E4FF04" stop-opacity="1.000"/> | |
122 | + <stop offset="0.693" stop-color="#E7FF05" stop-opacity="1.000"/> | |
123 | + <stop offset="0.701" stop-color="#EAFF06" stop-opacity="1.000"/> | |
124 | + <stop offset="0.709" stop-color="#EDFF06" stop-opacity="1.000"/> | |
125 | + <stop offset="0.717" stop-color="#F1FE07" stop-opacity="1.000"/> | |
126 | + <stop offset="0.724" stop-color="#F4FE07" stop-opacity="1.000"/> | |
127 | + <stop offset="0.732" stop-color="#F7FE08" stop-opacity="1.000"/> | |
128 | + <stop offset="0.740" stop-color="#FAFE09" stop-opacity="1.000"/> | |
129 | + <stop offset="0.748" stop-color="#FEFE09" stop-opacity="1.000"/> | |
130 | + <stop offset="0.756" stop-color="#FFFA0A" stop-opacity="1.000"/> | |
131 | + <stop offset="0.764" stop-color="#FFF20A" stop-opacity="1.000"/> | |
132 | + <stop offset="0.772" stop-color="#FFEA0A" stop-opacity="1.000"/> | |
133 | + <stop offset="0.780" stop-color="#FFE209" stop-opacity="1.000"/> | |
134 | + <stop offset="0.787" stop-color="#FFDA09" stop-opacity="1.000"/> | |
135 | + <stop offset="0.795" stop-color="#FFD209" stop-opacity="1.000"/> | |
136 | + <stop offset="0.803" stop-color="#FFCA09" stop-opacity="1.000"/> | |
137 | + <stop offset="0.811" stop-color="#FFC209" stop-opacity="1.000"/> | |
138 | + <stop offset="0.819" stop-color="#FFBA09" stop-opacity="1.000"/> | |
139 | + <stop offset="0.827" stop-color="#FFB209" stop-opacity="1.000"/> | |
140 | + <stop offset="0.835" stop-color="#FFA909" stop-opacity="1.000"/> | |
141 | + <stop offset="0.843" stop-color="#FFA109" stop-opacity="1.000"/> | |
142 | + <stop offset="0.850" stop-color="#FF9909" stop-opacity="1.000"/> | |
143 | + <stop offset="0.858" stop-color="#FF9109" stop-opacity="1.000"/> | |
144 | + <stop offset="0.866" stop-color="#FF8909" stop-opacity="1.000"/> | |
145 | + <stop offset="0.874" stop-color="#FF8109" stop-opacity="1.000"/> | |
146 | + <stop offset="0.882" stop-color="#FF7909" stop-opacity="1.000"/> | |
147 | + <stop offset="0.890" stop-color="#FF7109" stop-opacity="1.000"/> | |
148 | + <stop offset="0.898" stop-color="#FF6909" stop-opacity="1.000"/> | |
149 | + <stop offset="0.906" stop-color="#FF6109" stop-opacity="1.000"/> | |
150 | + <stop offset="0.913" stop-color="#FF5909" stop-opacity="1.000"/> | |
151 | + <stop offset="0.921" stop-color="#FF5009" stop-opacity="1.000"/> | |
152 | + <stop offset="0.929" stop-color="#FF4809" stop-opacity="1.000"/> | |
153 | + <stop offset="0.937" stop-color="#FF4009" stop-opacity="1.000"/> | |
154 | + <stop offset="0.945" stop-color="#FF3809" stop-opacity="1.000"/> | |
155 | + <stop offset="0.953" stop-color="#FF3009" stop-opacity="1.000"/> | |
156 | + <stop offset="0.961" stop-color="#FF2809" stop-opacity="1.000"/> | |
157 | + <stop offset="0.969" stop-color="#FF2009" stop-opacity="1.000"/> | |
158 | + <stop offset="0.976" stop-color="#FF1809" stop-opacity="1.000"/> | |
159 | + <stop offset="0.984" stop-color="#FF1009" stop-opacity="1.000"/> | |
160 | + <stop offset="0.992" stop-color="#FF0809" stop-opacity="1.000"/> | |
161 | + <stop offset="1.000" stop-color="#FF0009" stop-opacity="1.000"/> | |
162 | + </linearGradient> | |
163 | + </defs> | |
164 | + <polyline | |
165 | + fill="url(#MyGradient0000000000)" | |
166 | + points="0.00,0.00 299.99,0.00 299.99,45.00 0.00,45.00 0.00,0.00 0.00,0.00 "/> | |
167 | + </g> | |
168 | + </g> | |
169 | +</svg> | |
... | ... |
... | ... | @@ -0,0 +1,169 @@ |
1 | +<?xml version="1.0" encoding="UTF-8"?> | |
2 | +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" | |
3 | + "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"> | |
4 | +<svg | |
5 | + xmlns="http://www.w3.org/2000/svg" | |
6 | + xmlns:xlink="http://www.w3.org/1999/xlink" | |
7 | + version="1.1" | |
8 | + width="300pt" | |
9 | + height="45pt" | |
10 | + viewBox="0 0 300 45" | |
11 | + > | |
12 | + <rect | |
13 | + x="0" | |
14 | + y="0" | |
15 | + width="300" | |
16 | + height="45" | |
17 | + stroke="none" | |
18 | + fill="#000000" | |
19 | + fill-opacity="1.000000" | |
20 | + /> | |
21 | + <g | |
22 | + transform="matrix(1 0 0 -1 0 45)" | |
23 | + > | |
24 | + <g> | |
25 | + <defs> | |
26 | + <linearGradient | |
27 | + id="MyGradient0000000000" | |
28 | + gradientUnits="userSpaceOnUse" | |
29 | + x1="0.00" | |
30 | + y1="0.00" | |
31 | + x2="299.99" | |
32 | + y2="0.00" | |
33 | + > | |
34 | + <stop offset="0.000" stop-color="#FFFFFF" stop-opacity="1.000"/> | |
35 | + <stop offset="0.008" stop-color="#F2C3FF" stop-opacity="1.000"/> | |
36 | + <stop offset="0.016" stop-color="#EBBEFF" stop-opacity="1.000"/> | |
37 | + <stop offset="0.024" stop-color="#E5B9FF" stop-opacity="1.000"/> | |
38 | + <stop offset="0.031" stop-color="#DEB4FF" stop-opacity="1.000"/> | |
39 | + <stop offset="0.039" stop-color="#D7AFFF" stop-opacity="1.000"/> | |
40 | + <stop offset="0.047" stop-color="#D1AAFF" stop-opacity="1.000"/> | |
41 | + <stop offset="0.055" stop-color="#CAA5FF" stop-opacity="1.000"/> | |
42 | + <stop offset="0.063" stop-color="#C3A0FF" stop-opacity="1.000"/> | |
43 | + <stop offset="0.071" stop-color="#BD9BFF" stop-opacity="1.000"/> | |
44 | + <stop offset="0.079" stop-color="#B696FF" stop-opacity="1.000"/> | |
45 | + <stop offset="0.087" stop-color="#AF91FF" stop-opacity="1.000"/> | |
46 | + <stop offset="0.094" stop-color="#A88CFF" stop-opacity="1.000"/> | |
47 | + <stop offset="0.102" stop-color="#A287FF" stop-opacity="1.000"/> | |
48 | + <stop offset="0.110" stop-color="#9B82FF" stop-opacity="1.000"/> | |
49 | + <stop offset="0.118" stop-color="#947DFF" stop-opacity="1.000"/> | |
50 | + <stop offset="0.126" stop-color="#8E78FF" stop-opacity="1.000"/> | |
51 | + <stop offset="0.134" stop-color="#8773FF" stop-opacity="1.000"/> | |
52 | + <stop offset="0.142" stop-color="#806EFF" stop-opacity="1.000"/> | |
53 | + <stop offset="0.150" stop-color="#7A69FF" stop-opacity="1.000"/> | |
54 | + <stop offset="0.157" stop-color="#7364FF" stop-opacity="1.000"/> | |
55 | + <stop offset="0.165" stop-color="#6C5FFF" stop-opacity="1.000"/> | |
56 | + <stop offset="0.173" stop-color="#665AFF" stop-opacity="1.000"/> | |
57 | + <stop offset="0.181" stop-color="#5F55FF" stop-opacity="1.000"/> | |
58 | + <stop offset="0.189" stop-color="#5850FF" stop-opacity="1.000"/> | |
59 | + <stop offset="0.197" stop-color="#524BFF" stop-opacity="1.000"/> | |
60 | + <stop offset="0.205" stop-color="#4B46FF" stop-opacity="1.000"/> | |
61 | + <stop offset="0.213" stop-color="#4441FF" stop-opacity="1.000"/> | |
62 | + <stop offset="0.220" stop-color="#3D3CFF" stop-opacity="1.000"/> | |
63 | + <stop offset="0.228" stop-color="#3737FF" stop-opacity="1.000"/> | |
64 | + <stop offset="0.236" stop-color="#3134FF" stop-opacity="1.000"/> | |
65 | + <stop offset="0.244" stop-color="#2F3EFF" stop-opacity="1.000"/> | |
66 | + <stop offset="0.252" stop-color="#2E47FF" stop-opacity="1.000"/> | |
67 | + <stop offset="0.260" stop-color="#2C50FF" stop-opacity="1.000"/> | |
68 | + <stop offset="0.268" stop-color="#2B5AFF" stop-opacity="1.000"/> | |
69 | + <stop offset="0.276" stop-color="#2963FF" stop-opacity="1.000"/> | |
70 | + <stop offset="0.283" stop-color="#276DFF" stop-opacity="1.000"/> | |
71 | + <stop offset="0.291" stop-color="#2676FF" stop-opacity="1.000"/> | |
72 | + <stop offset="0.299" stop-color="#2480FF" stop-opacity="1.000"/> | |
73 | + <stop offset="0.307" stop-color="#2389FF" stop-opacity="1.000"/> | |
74 | + <stop offset="0.315" stop-color="#2193FF" stop-opacity="1.000"/> | |
75 | + <stop offset="0.323" stop-color="#209CFF" stop-opacity="1.000"/> | |
76 | + <stop offset="0.331" stop-color="#1EA6FF" stop-opacity="1.000"/> | |
77 | + <stop offset="0.339" stop-color="#1DAFFF" stop-opacity="1.000"/> | |
78 | + <stop offset="0.346" stop-color="#1BB9FF" stop-opacity="1.000"/> | |
79 | + <stop offset="0.354" stop-color="#1AC2FF" stop-opacity="1.000"/> | |
80 | + <stop offset="0.362" stop-color="#18CCFF" stop-opacity="1.000"/> | |
81 | + <stop offset="0.370" stop-color="#16D5FF" stop-opacity="1.000"/> | |
82 | + <stop offset="0.378" stop-color="#15DFFF" stop-opacity="1.000"/> | |
83 | + <stop offset="0.386" stop-color="#13E8FF" stop-opacity="1.000"/> | |
84 | + <stop offset="0.394" stop-color="#12F2FF" stop-opacity="1.000"/> | |
85 | + <stop offset="0.402" stop-color="#10FAFD" stop-opacity="1.000"/> | |
86 | + <stop offset="0.409" stop-color="#0FFAF2" stop-opacity="1.000"/> | |
87 | + <stop offset="0.417" stop-color="#0DFBE7" stop-opacity="1.000"/> | |
88 | + <stop offset="0.425" stop-color="#0CFBDB" stop-opacity="1.000"/> | |
89 | + <stop offset="0.433" stop-color="#0AFCD0" stop-opacity="1.000"/> | |
90 | + <stop offset="0.441" stop-color="#09FCC5" stop-opacity="1.000"/> | |
91 | + <stop offset="0.449" stop-color="#07FDB9" stop-opacity="1.000"/> | |
92 | + <stop offset="0.457" stop-color="#05FDAE" stop-opacity="1.000"/> | |
93 | + <stop offset="0.465" stop-color="#04FEA3" stop-opacity="1.000"/> | |
94 | + <stop offset="0.472" stop-color="#02FF97" stop-opacity="1.000"/> | |
95 | + <stop offset="0.480" stop-color="#01FF8C" stop-opacity="1.000"/> | |
96 | + <stop offset="0.488" stop-color="#00FF81" stop-opacity="1.000"/> | |
97 | + <stop offset="0.496" stop-color="#00FF76" stop-opacity="1.000"/> | |
98 | + <stop offset="0.504" stop-color="#01FF6A" stop-opacity="1.000"/> | |
99 | + <stop offset="0.512" stop-color="#01FF5F" stop-opacity="1.000"/> | |
100 | + <stop offset="0.520" stop-color="#02FF54" stop-opacity="1.000"/> | |
101 | + <stop offset="0.528" stop-color="#02FF49" stop-opacity="1.000"/> | |
102 | + <stop offset="0.535" stop-color="#03FF3E" stop-opacity="1.000"/> | |
103 | + <stop offset="0.543" stop-color="#03FF33" stop-opacity="1.000"/> | |
104 | + <stop offset="0.551" stop-color="#04FF27" stop-opacity="1.000"/> | |
105 | + <stop offset="0.559" stop-color="#04FF1C" stop-opacity="1.000"/> | |
106 | + <stop offset="0.567" stop-color="#05FF11" stop-opacity="1.000"/> | |
107 | + <stop offset="0.575" stop-color="#05FF06" stop-opacity="1.000"/> | |
108 | + <stop offset="0.583" stop-color="#13FF04" stop-opacity="1.000"/> | |
109 | + <stop offset="0.591" stop-color="#25FF04" stop-opacity="1.000"/> | |
110 | + <stop offset="0.598" stop-color="#36FF04" stop-opacity="1.000"/> | |
111 | + <stop offset="0.606" stop-color="#47FF04" stop-opacity="1.000"/> | |
112 | + <stop offset="0.614" stop-color="#59FF04" stop-opacity="1.000"/> | |
113 | + <stop offset="0.622" stop-color="#6AFF04" stop-opacity="1.000"/> | |
114 | + <stop offset="0.630" stop-color="#7CFF04" stop-opacity="1.000"/> | |
115 | + <stop offset="0.638" stop-color="#8DFF04" stop-opacity="1.000"/> | |
116 | + <stop offset="0.646" stop-color="#9FFF04" stop-opacity="1.000"/> | |
117 | + <stop offset="0.654" stop-color="#B0FF04" stop-opacity="1.000"/> | |
118 | + <stop offset="0.661" stop-color="#C1FF04" stop-opacity="1.000"/> | |
119 | + <stop offset="0.669" stop-color="#D3FF04" stop-opacity="1.000"/> | |
120 | + <stop offset="0.677" stop-color="#E0FF04" stop-opacity="1.000"/> | |
121 | + <stop offset="0.685" stop-color="#E4FF04" stop-opacity="1.000"/> | |
122 | + <stop offset="0.693" stop-color="#E7FF05" stop-opacity="1.000"/> | |
123 | + <stop offset="0.701" stop-color="#EAFF06" stop-opacity="1.000"/> | |
124 | + <stop offset="0.709" stop-color="#EDFF06" stop-opacity="1.000"/> | |
125 | + <stop offset="0.717" stop-color="#F1FE07" stop-opacity="1.000"/> | |
126 | + <stop offset="0.724" stop-color="#F4FE07" stop-opacity="1.000"/> | |
127 | + <stop offset="0.732" stop-color="#F7FE08" stop-opacity="1.000"/> | |
128 | + <stop offset="0.740" stop-color="#FAFE09" stop-opacity="1.000"/> | |
129 | + <stop offset="0.748" stop-color="#FEFE09" stop-opacity="1.000"/> | |
130 | + <stop offset="0.756" stop-color="#FFFA0A" stop-opacity="1.000"/> | |
131 | + <stop offset="0.764" stop-color="#FFF20A" stop-opacity="1.000"/> | |
132 | + <stop offset="0.772" stop-color="#FFEA0A" stop-opacity="1.000"/> | |
133 | + <stop offset="0.780" stop-color="#FFE209" stop-opacity="1.000"/> | |
134 | + <stop offset="0.787" stop-color="#FFDA09" stop-opacity="1.000"/> | |
135 | + <stop offset="0.795" stop-color="#FFD209" stop-opacity="1.000"/> | |
136 | + <stop offset="0.803" stop-color="#FFCA09" stop-opacity="1.000"/> | |
137 | + <stop offset="0.811" stop-color="#FFC209" stop-opacity="1.000"/> | |
138 | + <stop offset="0.819" stop-color="#FFBA09" stop-opacity="1.000"/> | |
139 | + <stop offset="0.827" stop-color="#FFB209" stop-opacity="1.000"/> | |
140 | + <stop offset="0.835" stop-color="#FFA909" stop-opacity="1.000"/> | |
141 | + <stop offset="0.843" stop-color="#FFA109" stop-opacity="1.000"/> | |
142 | + <stop offset="0.850" stop-color="#FF9909" stop-opacity="1.000"/> | |
143 | + <stop offset="0.858" stop-color="#FF9109" stop-opacity="1.000"/> | |
144 | + <stop offset="0.866" stop-color="#FF8909" stop-opacity="1.000"/> | |
145 | + <stop offset="0.874" stop-color="#FF8109" stop-opacity="1.000"/> | |
146 | + <stop offset="0.882" stop-color="#FF7909" stop-opacity="1.000"/> | |
147 | + <stop offset="0.890" stop-color="#FF7109" stop-opacity="1.000"/> | |
148 | + <stop offset="0.898" stop-color="#FF6909" stop-opacity="1.000"/> | |
149 | + <stop offset="0.906" stop-color="#FF6109" stop-opacity="1.000"/> | |
150 | + <stop offset="0.913" stop-color="#FF5909" stop-opacity="1.000"/> | |
151 | + <stop offset="0.921" stop-color="#FF5009" stop-opacity="1.000"/> | |
152 | + <stop offset="0.929" stop-color="#FF4809" stop-opacity="1.000"/> | |
153 | + <stop offset="0.937" stop-color="#FF4009" stop-opacity="1.000"/> | |
154 | + <stop offset="0.945" stop-color="#FF3809" stop-opacity="1.000"/> | |
155 | + <stop offset="0.953" stop-color="#FF3009" stop-opacity="1.000"/> | |
156 | + <stop offset="0.961" stop-color="#FF2809" stop-opacity="1.000"/> | |
157 | + <stop offset="0.969" stop-color="#FF2009" stop-opacity="1.000"/> | |
158 | + <stop offset="0.976" stop-color="#FF1809" stop-opacity="1.000"/> | |
159 | + <stop offset="0.984" stop-color="#FF1009" stop-opacity="1.000"/> | |
160 | + <stop offset="0.992" stop-color="#FF0809" stop-opacity="1.000"/> | |
161 | + <stop offset="1.000" stop-color="#FF0009" stop-opacity="1.000"/> | |
162 | + </linearGradient> | |
163 | + </defs> | |
164 | + <polyline | |
165 | + fill="url(#MyGradient0000000000)" | |
166 | + points="0.00,0.00 299.99,0.00 299.99,45.00 0.00,45.00 0.00,0.00 0.00,0.00 "/> | |
167 | + </g> | |
168 | + </g> | |
169 | +</svg> | |
... | ... |
... | ... | @@ -0,0 +1,169 @@ |
1 | +<?xml version="1.0" encoding="UTF-8"?> | |
2 | +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" | |
3 | + "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"> | |
4 | +<svg | |
5 | + xmlns="http://www.w3.org/2000/svg" | |
6 | + xmlns:xlink="http://www.w3.org/1999/xlink" | |
7 | + version="1.1" | |
8 | + width="300pt" | |
9 | + height="45pt" | |
10 | + viewBox="0 0 300 45" | |
11 | + > | |
12 | + <rect | |
13 | + x="0" | |
14 | + y="0" | |
15 | + width="300" | |
16 | + height="45" | |
17 | + stroke="none" | |
18 | + fill="#000000" | |
19 | + fill-opacity="1.000000" | |
20 | + /> | |
21 | + <g | |
22 | + transform="matrix(1 0 0 -1 0 45)" | |
23 | + > | |
24 | + <g> | |
25 | + <defs> | |
26 | + <linearGradient | |
27 | + id="MyGradient0000000000" | |
28 | + gradientUnits="userSpaceOnUse" | |
29 | + x1="0.00" | |
30 | + y1="0.00" | |
31 | + x2="299.99" | |
32 | + y2="0.00" | |
33 | + > | |
34 | + <stop offset="0.000" stop-color="#000000" stop-opacity="1.000"/> | |
35 | + <stop offset="0.008" stop-color="#020202" stop-opacity="1.000"/> | |
36 | + <stop offset="0.016" stop-color="#040404" stop-opacity="1.000"/> | |
37 | + <stop offset="0.024" stop-color="#060606" stop-opacity="1.000"/> | |
38 | + <stop offset="0.031" stop-color="#080808" stop-opacity="1.000"/> | |
39 | + <stop offset="0.039" stop-color="#0A0A0A" stop-opacity="1.000"/> | |
40 | + <stop offset="0.047" stop-color="#0C0C0C" stop-opacity="1.000"/> | |
41 | + <stop offset="0.055" stop-color="#0E0E0E" stop-opacity="1.000"/> | |
42 | + <stop offset="0.063" stop-color="#101010" stop-opacity="1.000"/> | |
43 | + <stop offset="0.071" stop-color="#121212" stop-opacity="1.000"/> | |
44 | + <stop offset="0.079" stop-color="#141414" stop-opacity="1.000"/> | |
45 | + <stop offset="0.087" stop-color="#161616" stop-opacity="1.000"/> | |
46 | + <stop offset="0.094" stop-color="#181818" stop-opacity="1.000"/> | |
47 | + <stop offset="0.102" stop-color="#1A1A1A" stop-opacity="1.000"/> | |
48 | + <stop offset="0.110" stop-color="#1C1C1C" stop-opacity="1.000"/> | |
49 | + <stop offset="0.118" stop-color="#1E1E1E" stop-opacity="1.000"/> | |
50 | + <stop offset="0.126" stop-color="#202020" stop-opacity="1.000"/> | |
51 | + <stop offset="0.134" stop-color="#222222" stop-opacity="1.000"/> | |
52 | + <stop offset="0.142" stop-color="#242424" stop-opacity="1.000"/> | |
53 | + <stop offset="0.150" stop-color="#262626" stop-opacity="1.000"/> | |
54 | + <stop offset="0.157" stop-color="#282828" stop-opacity="1.000"/> | |
55 | + <stop offset="0.165" stop-color="#2A2A2A" stop-opacity="1.000"/> | |
56 | + <stop offset="0.173" stop-color="#2C2C2C" stop-opacity="1.000"/> | |
57 | + <stop offset="0.181" stop-color="#2E2E2E" stop-opacity="1.000"/> | |
58 | + <stop offset="0.189" stop-color="#303030" stop-opacity="1.000"/> | |
59 | + <stop offset="0.197" stop-color="#323232" stop-opacity="1.000"/> | |
60 | + <stop offset="0.205" stop-color="#343434" stop-opacity="1.000"/> | |
61 | + <stop offset="0.213" stop-color="#363636" stop-opacity="1.000"/> | |
62 | + <stop offset="0.220" stop-color="#383838" stop-opacity="1.000"/> | |
63 | + <stop offset="0.228" stop-color="#3A3A3A" stop-opacity="1.000"/> | |
64 | + <stop offset="0.236" stop-color="#3C3C3C" stop-opacity="1.000"/> | |
65 | + <stop offset="0.244" stop-color="#3E3E3E" stop-opacity="1.000"/> | |
66 | + <stop offset="0.252" stop-color="#404040" stop-opacity="1.000"/> | |
67 | + <stop offset="0.260" stop-color="#424242" stop-opacity="1.000"/> | |
68 | + <stop offset="0.268" stop-color="#444444" stop-opacity="1.000"/> | |
69 | + <stop offset="0.276" stop-color="#464646" stop-opacity="1.000"/> | |
70 | + <stop offset="0.283" stop-color="#484848" stop-opacity="1.000"/> | |
71 | + <stop offset="0.291" stop-color="#4A4A4A" stop-opacity="1.000"/> | |
72 | + <stop offset="0.299" stop-color="#4C4C4C" stop-opacity="1.000"/> | |
73 | + <stop offset="0.307" stop-color="#4E4E4E" stop-opacity="1.000"/> | |
74 | + <stop offset="0.315" stop-color="#505050" stop-opacity="1.000"/> | |
75 | + <stop offset="0.323" stop-color="#525252" stop-opacity="1.000"/> | |
76 | + <stop offset="0.331" stop-color="#545454" stop-opacity="1.000"/> | |
77 | + <stop offset="0.339" stop-color="#565656" stop-opacity="1.000"/> | |
78 | + <stop offset="0.346" stop-color="#585858" stop-opacity="1.000"/> | |
79 | + <stop offset="0.354" stop-color="#5A5A5A" stop-opacity="1.000"/> | |
80 | + <stop offset="0.362" stop-color="#5C5C5C" stop-opacity="1.000"/> | |
81 | + <stop offset="0.370" stop-color="#5E5E5E" stop-opacity="1.000"/> | |
82 | + <stop offset="0.378" stop-color="#606060" stop-opacity="1.000"/> | |
83 | + <stop offset="0.386" stop-color="#626262" stop-opacity="1.000"/> | |
84 | + <stop offset="0.394" stop-color="#646464" stop-opacity="1.000"/> | |
85 | + <stop offset="0.402" stop-color="#666666" stop-opacity="1.000"/> | |
86 | + <stop offset="0.409" stop-color="#686868" stop-opacity="1.000"/> | |
87 | + <stop offset="0.417" stop-color="#6A6A6A" stop-opacity="1.000"/> | |
88 | + <stop offset="0.425" stop-color="#6C6C6C" stop-opacity="1.000"/> | |
89 | + <stop offset="0.433" stop-color="#6E6E6E" stop-opacity="1.000"/> | |
90 | + <stop offset="0.441" stop-color="#707070" stop-opacity="1.000"/> | |
91 | + <stop offset="0.449" stop-color="#727272" stop-opacity="1.000"/> | |
92 | + <stop offset="0.457" stop-color="#747474" stop-opacity="1.000"/> | |
93 | + <stop offset="0.465" stop-color="#767676" stop-opacity="1.000"/> | |
94 | + <stop offset="0.472" stop-color="#787878" stop-opacity="1.000"/> | |
95 | + <stop offset="0.480" stop-color="#7A7A7A" stop-opacity="1.000"/> | |
96 | + <stop offset="0.488" stop-color="#7C7C7C" stop-opacity="1.000"/> | |
97 | + <stop offset="0.496" stop-color="#7E7E7E" stop-opacity="1.000"/> | |
98 | + <stop offset="0.504" stop-color="#818181" stop-opacity="1.000"/> | |
99 | + <stop offset="0.512" stop-color="#838383" stop-opacity="1.000"/> | |
100 | + <stop offset="0.520" stop-color="#858585" stop-opacity="1.000"/> | |
101 | + <stop offset="0.528" stop-color="#878787" stop-opacity="1.000"/> | |
102 | + <stop offset="0.535" stop-color="#898989" stop-opacity="1.000"/> | |
103 | + <stop offset="0.543" stop-color="#8B8B8B" stop-opacity="1.000"/> | |
104 | + <stop offset="0.551" stop-color="#8D8D8D" stop-opacity="1.000"/> | |
105 | + <stop offset="0.559" stop-color="#8F8F8F" stop-opacity="1.000"/> | |
106 | + <stop offset="0.567" stop-color="#919191" stop-opacity="1.000"/> | |
107 | + <stop offset="0.575" stop-color="#939393" stop-opacity="1.000"/> | |
108 | + <stop offset="0.583" stop-color="#959595" stop-opacity="1.000"/> | |
109 | + <stop offset="0.591" stop-color="#979797" stop-opacity="1.000"/> | |
110 | + <stop offset="0.598" stop-color="#999999" stop-opacity="1.000"/> | |
111 | + <stop offset="0.606" stop-color="#9B9B9B" stop-opacity="1.000"/> | |
112 | + <stop offset="0.614" stop-color="#9D9D9D" stop-opacity="1.000"/> | |
113 | + <stop offset="0.622" stop-color="#9F9F9F" stop-opacity="1.000"/> | |
114 | + <stop offset="0.630" stop-color="#A1A1A1" stop-opacity="1.000"/> | |
115 | + <stop offset="0.638" stop-color="#A3A3A3" stop-opacity="1.000"/> | |
116 | + <stop offset="0.646" stop-color="#A5A5A5" stop-opacity="1.000"/> | |
117 | + <stop offset="0.654" stop-color="#A7A7A7" stop-opacity="1.000"/> | |
118 | + <stop offset="0.661" stop-color="#A9A9A9" stop-opacity="1.000"/> | |
119 | + <stop offset="0.669" stop-color="#ABABAB" stop-opacity="1.000"/> | |
120 | + <stop offset="0.677" stop-color="#ADADAD" stop-opacity="1.000"/> | |
121 | + <stop offset="0.685" stop-color="#AFAFAF" stop-opacity="1.000"/> | |
122 | + <stop offset="0.693" stop-color="#B1B1B1" stop-opacity="1.000"/> | |
123 | + <stop offset="0.701" stop-color="#B3B3B3" stop-opacity="1.000"/> | |
124 | + <stop offset="0.709" stop-color="#B5B5B5" stop-opacity="1.000"/> | |
125 | + <stop offset="0.717" stop-color="#B7B7B7" stop-opacity="1.000"/> | |
126 | + <stop offset="0.724" stop-color="#B9B9B9" stop-opacity="1.000"/> | |
127 | + <stop offset="0.732" stop-color="#BBBBBB" stop-opacity="1.000"/> | |
128 | + <stop offset="0.740" stop-color="#BDBDBD" stop-opacity="1.000"/> | |
129 | + <stop offset="0.748" stop-color="#BFBFBF" stop-opacity="1.000"/> | |
130 | + <stop offset="0.756" stop-color="#C1C1C1" stop-opacity="1.000"/> | |
131 | + <stop offset="0.764" stop-color="#C3C3C3" stop-opacity="1.000"/> | |
132 | + <stop offset="0.772" stop-color="#C5C5C5" stop-opacity="1.000"/> | |
133 | + <stop offset="0.780" stop-color="#C7C7C7" stop-opacity="1.000"/> | |
134 | + <stop offset="0.787" stop-color="#C9C9C9" stop-opacity="1.000"/> | |
135 | + <stop offset="0.795" stop-color="#CBCBCB" stop-opacity="1.000"/> | |
136 | + <stop offset="0.803" stop-color="#CDCDCD" stop-opacity="1.000"/> | |
137 | + <stop offset="0.811" stop-color="#CFCFCF" stop-opacity="1.000"/> | |
138 | + <stop offset="0.819" stop-color="#D1D1D1" stop-opacity="1.000"/> | |
139 | + <stop offset="0.827" stop-color="#D3D3D3" stop-opacity="1.000"/> | |
140 | + <stop offset="0.835" stop-color="#D5D5D5" stop-opacity="1.000"/> | |
141 | + <stop offset="0.843" stop-color="#D7D7D7" stop-opacity="1.000"/> | |
142 | + <stop offset="0.850" stop-color="#D9D9D9" stop-opacity="1.000"/> | |
143 | + <stop offset="0.858" stop-color="#DBDBDB" stop-opacity="1.000"/> | |
144 | + <stop offset="0.866" stop-color="#DDDDDD" stop-opacity="1.000"/> | |
145 | + <stop offset="0.874" stop-color="#DFDFDF" stop-opacity="1.000"/> | |
146 | + <stop offset="0.882" stop-color="#E1E1E1" stop-opacity="1.000"/> | |
147 | + <stop offset="0.890" stop-color="#E3E3E3" stop-opacity="1.000"/> | |
148 | + <stop offset="0.898" stop-color="#E5E5E5" stop-opacity="1.000"/> | |
149 | + <stop offset="0.906" stop-color="#E7E7E7" stop-opacity="1.000"/> | |
150 | + <stop offset="0.913" stop-color="#E9E9E9" stop-opacity="1.000"/> | |
151 | + <stop offset="0.921" stop-color="#EBEBEB" stop-opacity="1.000"/> | |
152 | + <stop offset="0.929" stop-color="#EDEDED" stop-opacity="1.000"/> | |
153 | + <stop offset="0.937" stop-color="#EFEFEF" stop-opacity="1.000"/> | |
154 | + <stop offset="0.945" stop-color="#F1F1F1" stop-opacity="1.000"/> | |
155 | + <stop offset="0.953" stop-color="#F3F3F3" stop-opacity="1.000"/> | |
156 | + <stop offset="0.961" stop-color="#F5F5F5" stop-opacity="1.000"/> | |
157 | + <stop offset="0.969" stop-color="#F7F7F7" stop-opacity="1.000"/> | |
158 | + <stop offset="0.976" stop-color="#F9F9F9" stop-opacity="1.000"/> | |
159 | + <stop offset="0.984" stop-color="#FBFBFB" stop-opacity="1.000"/> | |
160 | + <stop offset="0.992" stop-color="#FDFDFD" stop-opacity="1.000"/> | |
161 | + <stop offset="1.000" stop-color="#FFFFFF" stop-opacity="1.000"/> | |
162 | + </linearGradient> | |
163 | + </defs> | |
164 | + <polyline | |
165 | + fill="url(#MyGradient0000000000)" | |
166 | + points="0.00,0.00 299.99,0.00 299.99,45.00 0.00,45.00 0.00,0.00 0.00,0.00 "/> | |
167 | + </g> | |
168 | + </g> | |
169 | +</svg> | |
... | ... |
... | ... | @@ -0,0 +1,169 @@ |
1 | +<?xml version="1.0" encoding="UTF-8"?> | |
2 | +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" | |
3 | + "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"> | |
4 | +<svg | |
5 | + xmlns="http://www.w3.org/2000/svg" | |
6 | + xmlns:xlink="http://www.w3.org/1999/xlink" | |
7 | + version="1.1" | |
8 | + width="300pt" | |
9 | + height="45pt" | |
10 | + viewBox="0 0 300 45" | |
11 | + > | |
12 | + <rect | |
13 | + x="0" | |
14 | + y="0" | |
15 | + width="300" | |
16 | + height="45" | |
17 | + stroke="none" | |
18 | + fill="#000000" | |
19 | + fill-opacity="1.000000" | |
20 | + /> | |
21 | + <g | |
22 | + transform="matrix(1 0 0 -1 0 45)" | |
23 | + > | |
24 | + <g> | |
25 | + <defs> | |
26 | + <linearGradient | |
27 | + id="MyGradient0000000000" | |
28 | + gradientUnits="userSpaceOnUse" | |
29 | + x1="0.00" | |
30 | + y1="0.00" | |
31 | + x2="299.99" | |
32 | + y2="0.00" | |
33 | + > | |
34 | + <stop offset="0.000" stop-color="#0000FF" stop-opacity="1.000"/> | |
35 | + <stop offset="0.008" stop-color="#0004FF" stop-opacity="1.000"/> | |
36 | + <stop offset="0.016" stop-color="#0008FF" stop-opacity="1.000"/> | |
37 | + <stop offset="0.024" stop-color="#000CFF" stop-opacity="1.000"/> | |
38 | + <stop offset="0.031" stop-color="#0010FF" stop-opacity="1.000"/> | |
39 | + <stop offset="0.039" stop-color="#0014FF" stop-opacity="1.000"/> | |
40 | + <stop offset="0.047" stop-color="#0018FF" stop-opacity="1.000"/> | |
41 | + <stop offset="0.055" stop-color="#001CFF" stop-opacity="1.000"/> | |
42 | + <stop offset="0.063" stop-color="#0020FF" stop-opacity="1.000"/> | |
43 | + <stop offset="0.071" stop-color="#0024FF" stop-opacity="1.000"/> | |
44 | + <stop offset="0.079" stop-color="#0028FF" stop-opacity="1.000"/> | |
45 | + <stop offset="0.087" stop-color="#002CFF" stop-opacity="1.000"/> | |
46 | + <stop offset="0.094" stop-color="#0030FF" stop-opacity="1.000"/> | |
47 | + <stop offset="0.102" stop-color="#0034FF" stop-opacity="1.000"/> | |
48 | + <stop offset="0.110" stop-color="#0039FF" stop-opacity="1.000"/> | |
49 | + <stop offset="0.118" stop-color="#003DFF" stop-opacity="1.000"/> | |
50 | + <stop offset="0.126" stop-color="#0041FF" stop-opacity="1.000"/> | |
51 | + <stop offset="0.134" stop-color="#0045FF" stop-opacity="1.000"/> | |
52 | + <stop offset="0.142" stop-color="#0049FF" stop-opacity="1.000"/> | |
53 | + <stop offset="0.150" stop-color="#004DFF" stop-opacity="1.000"/> | |
54 | + <stop offset="0.157" stop-color="#0051FF" stop-opacity="1.000"/> | |
55 | + <stop offset="0.165" stop-color="#0055FF" stop-opacity="1.000"/> | |
56 | + <stop offset="0.173" stop-color="#0059FF" stop-opacity="1.000"/> | |
57 | + <stop offset="0.181" stop-color="#005DFF" stop-opacity="1.000"/> | |
58 | + <stop offset="0.189" stop-color="#0061FF" stop-opacity="1.000"/> | |
59 | + <stop offset="0.197" stop-color="#0065FF" stop-opacity="1.000"/> | |
60 | + <stop offset="0.205" stop-color="#0069FF" stop-opacity="1.000"/> | |
61 | + <stop offset="0.213" stop-color="#006DFF" stop-opacity="1.000"/> | |
62 | + <stop offset="0.220" stop-color="#0072FF" stop-opacity="1.000"/> | |
63 | + <stop offset="0.228" stop-color="#0076FF" stop-opacity="1.000"/> | |
64 | + <stop offset="0.236" stop-color="#007AFF" stop-opacity="1.000"/> | |
65 | + <stop offset="0.244" stop-color="#007EFF" stop-opacity="1.000"/> | |
66 | + <stop offset="0.252" stop-color="#0082FF" stop-opacity="1.000"/> | |
67 | + <stop offset="0.260" stop-color="#0086FF" stop-opacity="1.000"/> | |
68 | + <stop offset="0.268" stop-color="#008AFF" stop-opacity="1.000"/> | |
69 | + <stop offset="0.276" stop-color="#008EFF" stop-opacity="1.000"/> | |
70 | + <stop offset="0.283" stop-color="#0092FF" stop-opacity="1.000"/> | |
71 | + <stop offset="0.291" stop-color="#0096FF" stop-opacity="1.000"/> | |
72 | + <stop offset="0.299" stop-color="#009AFF" stop-opacity="1.000"/> | |
73 | + <stop offset="0.307" stop-color="#009EFF" stop-opacity="1.000"/> | |
74 | + <stop offset="0.315" stop-color="#00A2FF" stop-opacity="1.000"/> | |
75 | + <stop offset="0.323" stop-color="#00A6FF" stop-opacity="1.000"/> | |
76 | + <stop offset="0.331" stop-color="#00ABFF" stop-opacity="1.000"/> | |
77 | + <stop offset="0.339" stop-color="#00AFFF" stop-opacity="1.000"/> | |
78 | + <stop offset="0.346" stop-color="#00B3FF" stop-opacity="1.000"/> | |
79 | + <stop offset="0.354" stop-color="#00B7FF" stop-opacity="1.000"/> | |
80 | + <stop offset="0.362" stop-color="#00BBFF" stop-opacity="1.000"/> | |
81 | + <stop offset="0.370" stop-color="#00BFFF" stop-opacity="1.000"/> | |
82 | + <stop offset="0.378" stop-color="#00C3FF" stop-opacity="1.000"/> | |
83 | + <stop offset="0.386" stop-color="#00C7FF" stop-opacity="1.000"/> | |
84 | + <stop offset="0.394" stop-color="#00CBFF" stop-opacity="1.000"/> | |
85 | + <stop offset="0.402" stop-color="#00CFFF" stop-opacity="1.000"/> | |
86 | + <stop offset="0.409" stop-color="#00D3FF" stop-opacity="1.000"/> | |
87 | + <stop offset="0.417" stop-color="#00D7FF" stop-opacity="1.000"/> | |
88 | + <stop offset="0.425" stop-color="#00DBFF" stop-opacity="1.000"/> | |
89 | + <stop offset="0.433" stop-color="#00DFFF" stop-opacity="1.000"/> | |
90 | + <stop offset="0.441" stop-color="#00E4FF" stop-opacity="1.000"/> | |
91 | + <stop offset="0.449" stop-color="#00E8FF" stop-opacity="1.000"/> | |
92 | + <stop offset="0.457" stop-color="#00ECFF" stop-opacity="1.000"/> | |
93 | + <stop offset="0.465" stop-color="#00F0FF" stop-opacity="1.000"/> | |
94 | + <stop offset="0.472" stop-color="#00F4FF" stop-opacity="1.000"/> | |
95 | + <stop offset="0.480" stop-color="#00F8FF" stop-opacity="1.000"/> | |
96 | + <stop offset="0.488" stop-color="#00FCFF" stop-opacity="1.000"/> | |
97 | + <stop offset="0.496" stop-color="#1BFFE4" stop-opacity="1.000"/> | |
98 | + <stop offset="0.504" stop-color="#E4FF1B" stop-opacity="1.000"/> | |
99 | + <stop offset="0.512" stop-color="#FFFC00" stop-opacity="1.000"/> | |
100 | + <stop offset="0.520" stop-color="#FFF800" stop-opacity="1.000"/> | |
101 | + <stop offset="0.528" stop-color="#FFF400" stop-opacity="1.000"/> | |
102 | + <stop offset="0.535" stop-color="#FFF000" stop-opacity="1.000"/> | |
103 | + <stop offset="0.543" stop-color="#FFEC00" stop-opacity="1.000"/> | |
104 | + <stop offset="0.551" stop-color="#FFE800" stop-opacity="1.000"/> | |
105 | + <stop offset="0.559" stop-color="#FFE400" stop-opacity="1.000"/> | |
106 | + <stop offset="0.567" stop-color="#FFDF00" stop-opacity="1.000"/> | |
107 | + <stop offset="0.575" stop-color="#FFDB00" stop-opacity="1.000"/> | |
108 | + <stop offset="0.583" stop-color="#FFD700" stop-opacity="1.000"/> | |
109 | + <stop offset="0.591" stop-color="#FFD300" stop-opacity="1.000"/> | |
110 | + <stop offset="0.598" stop-color="#FFCF00" stop-opacity="1.000"/> | |
111 | + <stop offset="0.606" stop-color="#FFCB00" stop-opacity="1.000"/> | |
112 | + <stop offset="0.614" stop-color="#FFC700" stop-opacity="1.000"/> | |
113 | + <stop offset="0.622" stop-color="#FFC300" stop-opacity="1.000"/> | |
114 | + <stop offset="0.630" stop-color="#FFBF00" stop-opacity="1.000"/> | |
115 | + <stop offset="0.638" stop-color="#FFBB00" stop-opacity="1.000"/> | |
116 | + <stop offset="0.646" stop-color="#FFB700" stop-opacity="1.000"/> | |
117 | + <stop offset="0.654" stop-color="#FFB300" stop-opacity="1.000"/> | |
118 | + <stop offset="0.661" stop-color="#FFAF00" stop-opacity="1.000"/> | |
119 | + <stop offset="0.669" stop-color="#FFAB00" stop-opacity="1.000"/> | |
120 | + <stop offset="0.677" stop-color="#FFA600" stop-opacity="1.000"/> | |
121 | + <stop offset="0.685" stop-color="#FFA200" stop-opacity="1.000"/> | |
122 | + <stop offset="0.693" stop-color="#FF9E00" stop-opacity="1.000"/> | |
123 | + <stop offset="0.701" stop-color="#FF9A00" stop-opacity="1.000"/> | |
124 | + <stop offset="0.709" stop-color="#FF9600" stop-opacity="1.000"/> | |
125 | + <stop offset="0.717" stop-color="#FF9200" stop-opacity="1.000"/> | |
126 | + <stop offset="0.724" stop-color="#FF8E00" stop-opacity="1.000"/> | |
127 | + <stop offset="0.732" stop-color="#FF8A00" stop-opacity="1.000"/> | |
128 | + <stop offset="0.740" stop-color="#FF8600" stop-opacity="1.000"/> | |
129 | + <stop offset="0.748" stop-color="#FF8200" stop-opacity="1.000"/> | |
130 | + <stop offset="0.756" stop-color="#FF7E00" stop-opacity="1.000"/> | |
131 | + <stop offset="0.764" stop-color="#FF7A00" stop-opacity="1.000"/> | |
132 | + <stop offset="0.772" stop-color="#FF7600" stop-opacity="1.000"/> | |
133 | + <stop offset="0.780" stop-color="#FF7200" stop-opacity="1.000"/> | |
134 | + <stop offset="0.787" stop-color="#FF6D00" stop-opacity="1.000"/> | |
135 | + <stop offset="0.795" stop-color="#FF6900" stop-opacity="1.000"/> | |
136 | + <stop offset="0.803" stop-color="#FF6500" stop-opacity="1.000"/> | |
137 | + <stop offset="0.811" stop-color="#FF6100" stop-opacity="1.000"/> | |
138 | + <stop offset="0.819" stop-color="#FF5D00" stop-opacity="1.000"/> | |
139 | + <stop offset="0.827" stop-color="#FF5900" stop-opacity="1.000"/> | |
140 | + <stop offset="0.835" stop-color="#FF5500" stop-opacity="1.000"/> | |
141 | + <stop offset="0.843" stop-color="#FF5100" stop-opacity="1.000"/> | |
142 | + <stop offset="0.850" stop-color="#FF4D00" stop-opacity="1.000"/> | |
143 | + <stop offset="0.858" stop-color="#FF4900" stop-opacity="1.000"/> | |
144 | + <stop offset="0.866" stop-color="#FF4500" stop-opacity="1.000"/> | |
145 | + <stop offset="0.874" stop-color="#FF4100" stop-opacity="1.000"/> | |
146 | + <stop offset="0.882" stop-color="#FF3D00" stop-opacity="1.000"/> | |
147 | + <stop offset="0.890" stop-color="#FF3900" stop-opacity="1.000"/> | |
148 | + <stop offset="0.898" stop-color="#FF3400" stop-opacity="1.000"/> | |
149 | + <stop offset="0.906" stop-color="#FF3000" stop-opacity="1.000"/> | |
150 | + <stop offset="0.913" stop-color="#FF2C00" stop-opacity="1.000"/> | |
151 | + <stop offset="0.921" stop-color="#FF2800" stop-opacity="1.000"/> | |
152 | + <stop offset="0.929" stop-color="#FF2400" stop-opacity="1.000"/> | |
153 | + <stop offset="0.937" stop-color="#FF2000" stop-opacity="1.000"/> | |
154 | + <stop offset="0.945" stop-color="#FF1C00" stop-opacity="1.000"/> | |
155 | + <stop offset="0.953" stop-color="#FF1800" stop-opacity="1.000"/> | |
156 | + <stop offset="0.961" stop-color="#FF1400" stop-opacity="1.000"/> | |
157 | + <stop offset="0.969" stop-color="#FF1000" stop-opacity="1.000"/> | |
158 | + <stop offset="0.976" stop-color="#FF0C00" stop-opacity="1.000"/> | |
159 | + <stop offset="0.984" stop-color="#FF0800" stop-opacity="1.000"/> | |
160 | + <stop offset="0.992" stop-color="#FF0400" stop-opacity="1.000"/> | |
161 | + <stop offset="1.000" stop-color="#FF0000" stop-opacity="1.000"/> | |
162 | + </linearGradient> | |
163 | + </defs> | |
164 | + <polyline | |
165 | + fill="url(#MyGradient0000000000)" | |
166 | + points="0.00,0.00 299.99,0.00 299.99,45.00 0.00,45.00 0.00,0.00 0.00,0.00 "/> | |
167 | + </g> | |
168 | + </g> | |
169 | +</svg> | |
... | ... |
... | ... | @@ -0,0 +1,7 @@ |
1 | +<h2>VESPA</h2><br/> | |
2 | + | |
3 | +VESPA (Virtual European Solar and Planetary Access, <a href="http://www.europlanet-vespa.eu/">http://www.europlanet-vespa.eu/</a>) aims at building a Virtual Observatory for Planetary Science, connecting all sorts of data in the field, allowing for rapid data search and providing modern tools to retrieve, cross-correlate, and display data and results of scientific analyses. | |
4 | +<br/> | |
5 | +<br/> | |
6 | +VESPA is an activity initially developed by the Europlanet 2020 Research Infrastructure project has received funding from the European Union's Horizon 2020 research and innovation programme under grant agreement No 654208, and extended for the Europlanet 2024 Research Infrastructure project funded by the European Union's Horizon 2020 research and innovation programme under grant agreement No 871149. | |
7 | +<br/> | |
... | ... |
js/app/models/AmdaNode.js
... | ... | @@ -21,7 +21,8 @@ Ext.define('amdaModel.AmdaNode', { |
21 | 21 | {name:'rootNode', persist: false}, |
22 | 22 | {name: 'ownerTreeId', persist: false}, |
23 | 23 | {name: 'ownerTree', persist: false}, |
24 | - {name: 'checked', defaultValue: null, persist: false} | |
24 | + {name: 'checked', defaultValue: null, persist: false}, | |
25 | + {name: 'visible', type: 'boolean', defaultValue: true}, | |
25 | 26 | ], |
26 | 27 | |
27 | 28 | statics : { |
... | ... |
js/app/models/Download.js
... | ... | @@ -32,7 +32,8 @@ Ext.define('amdaModel.DownloadConfig', { |
32 | 32 | fileformatData: [ |
33 | 33 | ['ASCII', 'ASCII'], |
34 | 34 | ['vot', 'VOTable'], |
35 | - ['cdf', 'CDF'], | |
35 | + ['cdf-istp', 'CDF/ISTP'], | |
36 | + ['cdf', 'CDF (deprecated)'], | |
36 | 37 | ['json', 'JSON'] |
37 | 38 | ], |
38 | 39 | fileformatTTData: [ |
... | ... |
js/app/models/PlotObjects/PlotHistogram2DSerieObject.js
0 โ 100644
... | ... | @@ -0,0 +1,61 @@ |
1 | +/** | |
2 | + * Project : TMA-AMDA | |
3 | + * Name : PlotHistogram2DSerieObject.js | |
4 | + * @class amdaPlotObj.PlotHistogram2DSerieObject | |
5 | + * @extends amdaPlotObj.PlotBaseSerieObject | |
6 | + * @brief Plot Histogram2D Business Object Definition | |
7 | + * @author Furkan Erdogan | |
8 | + * @version $Id: PlotHistogram2DSerieObject.js furkan $ | |
9 | + ****************************************************************************** | |
10 | + * FT Id : Date : Name - Description | |
11 | + ****************************************************************************** | |
12 | + * : :08/02/2023: FER - file creation | |
13 | + */ | |
14 | + | |
15 | + | |
16 | +Ext.define('amdaPlotObj.PlotHistogram2DSerieObject', { | |
17 | + extend: 'amdaPlotObj.PlotBaseSerieObject', | |
18 | + requires: ['amdaPlotObj.PlotAxisObject'], | |
19 | + fields : [ | |
20 | + {name: 'serie-xaxis-param', type: 'string'}, | |
21 | + {name: 'serie-resampling-mode', type: 'string'}, | |
22 | + {name: 'histo2d-function', type: 'string'}, | |
23 | + {name: 'histotype-param', type: 'string' }, | |
24 | + {name: 'histo2d-xbinnumber', type: 'int'}, | |
25 | + {name: 'histo2d-ybinnumber', type: 'int'}, | |
26 | + {name: 'histo2d-smoothfactor', type: 'int'} | |
27 | + | |
28 | + ], | |
29 | + | |
30 | + constructor: function(){ | |
31 | + var me = this; | |
32 | + me.callParent(arguments); | |
33 | + }, | |
34 | + | |
35 | + setDefaultValues: function() | |
36 | + { | |
37 | + this.set('serie-xaxis-param', ''); | |
38 | + this.set('serie-resampling-mode', amdaPlotObj.PlotObjectConfig.defaultValues.serie.resamplingMode); | |
39 | + this.set('histo2d-function', 'density'); | |
40 | + this.set('histotype-param', ''); | |
41 | + this.set('histo2d-xbinnumber', amdaPlotObj.PlotObjectConfig.defaultValues.histogram2D.xbinnumber); | |
42 | + this.set('histo2d-ybinnumber', amdaPlotObj.PlotObjectConfig.defaultValues.histogram2D.ybinnumber); | |
43 | + this.set('histo2d-smoothfactor', amdaPlotObj.PlotObjectConfig.defaultValues.histogram2D.smoothfactor) | |
44 | + | |
45 | + this.callParent(arguments); | |
46 | + }, | |
47 | + | |
48 | + getJsonValues : function() | |
49 | + { | |
50 | + var serieValues = this.callParent(arguments); | |
51 | + serieValues['serie-xaxis-param'] = this.get('serie-xaxis-param'); | |
52 | + serieValues['serie-resampling-mode'] = this.get('serie-resampling-mode'); | |
53 | + serieValues['histo2d-function'] = this.get('histo2d-function'); | |
54 | + serieValues['histotype-param'] = this.get('histotype-param'); | |
55 | + serieValues['histo2d-xbinnumber'] = this.get('histo2d-xbinnumber'); | |
56 | + serieValues['histo2d-ybinnumber'] = this.get('histo2d-ybinnumber'); | |
57 | + serieValues['histo2d-smoothfactor'] = this.get('histo2d-smoothfactor'); | |
58 | + | |
59 | + return serieValues; | |
60 | + } | |
61 | +}); | |
... | ... |
js/app/models/PlotObjects/PlotObjectConfig.js
... | ... | @@ -143,6 +143,12 @@ Ext.define('amdaPlotObj.PlotObjectConfig', { |
143 | 143 | yAxis: 'y-left', |
144 | 144 | resolution: 3000 |
145 | 145 | }, |
146 | + histogram2D:{ | |
147 | + histo2DFunction: 'density', | |
148 | + xbinnumber: 100, | |
149 | + ybinnumber: 100, | |
150 | + smoothfactor: 1, | |
151 | + }, | |
146 | 152 | sauvaud: { |
147 | 153 | yAxis: 'y-right', |
148 | 154 | resolution: 3000 |
... | ... | @@ -343,42 +349,43 @@ Ext.define('amdaPlotObj.PlotObjectConfig', { |
343 | 349 | ], |
344 | 350 | |
345 | 351 | availableColorMaps: [ |
346 | - { 'key': '0', 'value': 'Blue Red' }, | |
347 | - { 'key': '1', 'value': 'Default' }, | |
348 | - { 'key': '2', 'value': 'Blue Yellow' }, | |
349 | - { 'key': '3', 'value': 'Grayscale' }, | |
350 | - { 'key': '4', 'value': 'AMDA Default' }, | |
351 | - { 'key': '5', 'value': 'GeoWhite' }, | |
352 | - { 'key': '6', 'value': 'GeoBlack' }, | |
353 | - { 'key': '7', 'value': 'Violet Yellow' }, | |
354 | - { 'key': '8', 'value': 'Red Blue 4' }, | |
355 | - { 'key': '9', 'value': 'Acton' }, | |
356 | - { 'key': '11', 'value': 'Bamako' }, | |
357 | - { 'key': '12', 'value': 'Batlow' }, | |
358 | - { 'key': '13', 'value': 'BatlowK' }, | |
359 | - { 'key': '14', 'value': 'BatlowW' }, | |
360 | - { 'key': '15', 'value': 'Bilbao' }, | |
361 | - { 'key': '16', 'value': 'Buda' }, | |
362 | - { 'key': '17', 'value': 'Davos' }, | |
363 | - { 'key': '18', 'value': 'Devon' }, | |
364 | - { 'key': '19', 'value': 'GrayC' }, | |
365 | - { 'key': '20', 'value': 'Hawaii' }, | |
366 | - { 'key': '21', 'value': 'Imola' }, | |
367 | - { 'key': '22', 'value': 'Lajolla' }, | |
368 | - { 'key': '23', 'value': 'Lapaz' }, | |
369 | - { 'key': '24', 'value': 'Nuuk' }, | |
370 | - { 'key': '25', 'value': 'Oslo' }, | |
371 | - { 'key': '26', 'value': 'Tokyo' }, | |
372 | - { 'key': '27', 'value': 'Turku' }, | |
373 | - { 'key': '28', 'value': 'Bam' }, | |
374 | - { 'key': '29', 'value': 'Berlin' }, | |
375 | - { 'key': '30', 'value': 'Broc' }, | |
376 | - { 'key': '31', 'value': 'Cork' }, | |
377 | - { 'key': '32', 'value': 'Lisbon' }, | |
378 | - { 'key': '33', 'value': 'Roma' }, | |
379 | - { 'key': '34', 'value': 'Tofino' }, | |
380 | - { 'key': '35', 'value': 'Vanimo' }, | |
381 | - { 'key': '36', 'value': 'vik' } | |
352 | + { 'key': '0', 'value': 'Blue Red', 'svgFile':'cmap1_blue_red.svg' }, | |
353 | + { 'key': '1', 'value': 'Default', 'svgFile':'cmap1_default.svg'}, | |
354 | + { 'key': '2', 'value': 'Blue Yellow', 'svgFile':'cmap1_blue_yellow.svg' }, | |
355 | + { 'key': '3', 'value': 'Grayscale', 'svgFile':'cmap1_gray.svg' }, | |
356 | + { 'key': '4', 'value': 'AMDA Default', 'svgFile':'cmap1_amda_default.svg' }, | |
357 | + { 'key': '5', 'value': 'GeoWhite', 'svgFile':'cmap1_geowhite.svg' }, | |
358 | + { 'key': '6', 'value': 'GeoBlack', 'svgFile':'cmap1_geoblack.svg' }, | |
359 | + { 'key': '7', 'value': 'Violet Yellow', 'svgFile':'cmap1_dark_violet_yellow.svg' }, | |
360 | + { 'key': '8', 'value': 'Red Blue 4', 'svgFile':'cmap1_red_blue.svg' }, | |
361 | + { 'key': '9', 'value': 'Acton', 'svgFile':'' }, | |
362 | + { 'key': '11', 'value': 'Bamako', 'svgFile':'' }, | |
363 | + { 'key': '12', 'value': 'Batlow', 'svgFile':'' }, | |
364 | + { 'key': '13', 'value': 'BatlowK', 'svgFile':'' }, | |
365 | + { 'key': '14', 'value': 'BatlowW', 'svgFile':'' }, | |
366 | + { 'key': '15', 'value': 'Bilbao', 'svgFile':'' }, | |
367 | + { 'key': '16', 'value': 'Buda', 'svgFile':'' }, | |
368 | + { 'key': '17', 'value': 'Davos', 'svgFile':'' }, | |
369 | + { 'key': '18', 'value': 'Devon', 'svgFile':'' }, | |
370 | + { 'key': '19', 'value': 'GrayC', 'svgFile':'' }, | |
371 | + { 'key': '20', 'value': 'Hawaii', 'svgFile':'' }, | |
372 | + { 'key': '21', 'value': 'Imola', 'svgFile':'' }, | |
373 | + { 'key': '22', 'value': 'Lajolla', 'svgFile':'' }, | |
374 | + { 'key': '23', 'value': 'Lapaz', 'svgFile':'' }, | |
375 | + { 'key': '24', 'value': 'Nuuk', 'svgFile':'' }, | |
376 | + { 'key': '25', 'value': 'Oslo', 'svgFile':'' }, | |
377 | + { 'key': '26', 'value': 'Tokyo', 'svgFile':'' }, | |
378 | + { 'key': '27', 'value': 'Turku', 'svgFile':'' }, | |
379 | + { 'key': '28', 'value': 'Bam', 'svgFile':'' }, | |
380 | + { 'key': '29', 'value': 'Berlin', 'svgFile':'' }, | |
381 | + { 'key': '30', 'value': 'Broc', 'svgFile':'' }, | |
382 | + { 'key': '31', 'value': 'Cork', 'svgFile':'' }, | |
383 | + { 'key': '32', 'value': 'Lisbon', 'svgFile':'' }, | |
384 | + { 'key': '33', 'value': 'Roma', 'svgFile':'' }, | |
385 | + { 'key': '34', 'value': 'Tofino', 'svgFile':'' }, | |
386 | + { 'key': '35', 'value': 'Vanimo', 'svgFile':'' }, | |
387 | + { 'key': '36', 'value': 'vik', 'svgFile':'' } | |
388 | + | |
382 | 389 | ], |
383 | 390 | |
384 | 391 | availableColors: [ |
... | ... | @@ -471,6 +478,15 @@ Ext.define('amdaPlotObj.PlotObjectConfig', { |
471 | 478 | { 'key': 'ZR', 'value': 'ZR' } |
472 | 479 | ], |
473 | 480 | |
481 | + availableHistogram2DFunctions: [ | |
482 | + { 'key': 'density', 'value': 'Density' }, | |
483 | + { 'key': 'mean', 'value': 'Mean' }, | |
484 | + { 'key': 'min', 'value': 'Minimum' }, | |
485 | + { 'key': 'max', 'value': 'Maximum' }, | |
486 | + { 'key': 'median', 'value': 'Median' }, | |
487 | + { 'key': 'stadev', 'value': 'Standard Deviation' } | |
488 | + ], | |
489 | + | |
474 | 490 | availableDimsOnXAxis: [ |
475 | 491 | { 'key': '0', 'value': 'First dimension' }, |
476 | 492 | { 'key': '1', 'value': 'Second dimension' } |
... | ... |
js/app/models/PlotObjects/PlotParamObject.js
... | ... | @@ -20,6 +20,7 @@ Ext.define('amdaPlotObj.PlotParamObject', { |
20 | 20 | 'amdaPlotObj.PlotObjectConfig', |
21 | 21 | 'amdaPlotObj.PlotSerieObject', |
22 | 22 | 'amdaPlotObj.PlotOrbitSerieObject', |
23 | + 'amdaPlotObj.PlotHistogram2DSerieObject', | |
23 | 24 | 'amdaPlotObj.PlotSpectroObject', |
24 | 25 | 'amdaPlotObj.PlotSauvaudObject', |
25 | 26 | 'amdaPlotObj.PlotStatusBarObject', |
... | ... | @@ -72,8 +73,10 @@ Ext.define('amdaPlotObj.PlotParamObject', { |
72 | 73 | { |
73 | 74 | case 'serie' : |
74 | 75 | return new amdaPlotObj.PlotSerieObject(data); |
75 | - case 'orbit-serie' : | |
76 | - return new amdaPlotObj.PlotOrbitSerieObject(data); | |
76 | + case 'histogram2d' : | |
77 | + return new amdaPlotObj.PlotHistogram2DSerieObject(data); | |
78 | + case 'orbit-serie' : | |
79 | + return new amdaPlotObj.PlotOrbitSerieObject(data); | |
77 | 80 | case 'spectro' : |
78 | 81 | return new amdaPlotObj.PlotSpectroObject(data); |
79 | 82 | case 'status-bar' : |
... | ... | @@ -129,7 +132,8 @@ Ext.define('amdaPlotObj.PlotParamObject', { |
129 | 132 | case 'xyPlot' : |
130 | 133 | return [ |
131 | 134 | {'key' : 'serie', 'value' : 'Serie'}, |
132 | - {'key' : 'orbit-serie', 'value' : 'Orbit Serie'} | |
135 | + {'key' : 'orbit-serie', 'value' : 'Orbit Serie'}, | |
136 | + {'key' : 'histogram2d', 'value' : '2D Histogram'} | |
133 | 137 | ]; |
134 | 138 | case 'instantPlot' : |
135 | 139 | return [ |
... | ... |
js/app/models/PlotObjects/PlotTreeNode.js
js/app/views/CalculatorUI.js
... | ... | @@ -584,6 +584,7 @@ Ext.define('amdaUI.CalculatorUI', { |
584 | 584 | amdaUI.CalculatorUI.functionStore.filter('group', 'math'); |
585 | 585 | this.createFunctionBtns('MathFunctions', 'Simple Maths','#calc_tab_math_id'); |
586 | 586 | this.createFunctionBtns('VectorFunctions', 'Vector Functions', '#calc_tab_math_id'); |
587 | + this.createFunctionBtns('Tetrahedron', 'Tetrahedron', '#calc_tab_math_id'); | |
587 | 588 | amdaUI.CalculatorUI.functionStore.clearFilter(); |
588 | 589 | |
589 | 590 | // group space |
... | ... | @@ -690,6 +691,9 @@ Ext.define('amdaUI.CalculatorUI', { |
690 | 691 | case 'VectorFunctions' : |
691 | 692 | amdaUI.CalculatorUI.functionStore.filter('kind', 'vector'); |
692 | 693 | break; |
694 | + case 'Tetrahedron' : | |
695 | + amdaUI.CalculatorUI.functionStore.filter('kind', 'tetrahedron'); | |
696 | + break; | |
693 | 697 | case 'ModelFunctions' : |
694 | 698 | amdaUI.CalculatorUI.functionStore.filter('kind', 'model'); |
695 | 699 | width = .45; |
... | ... |
js/app/views/EpnTapUI.js
... | ... | @@ -416,7 +416,24 @@ Ext.define('amdaUI.EpnTapUI', { |
416 | 416 | init: function (config) { |
417 | 417 | const myConf = { |
418 | 418 | id: 'epntapTab', |
419 | - title: 'EPN-TAP', | |
419 | + tabConfig: { | |
420 | + title: 'EPN-TAP <img amda_clicktip="vespaHelp" src="js/resources/images/16x16/info_mini.png"', | |
421 | + listeners: { | |
422 | + click: { | |
423 | + element: 'el', | |
424 | + fn: function (e, t) { | |
425 | + var me = t, | |
426 | + text = me.getAttribute('amda_clicktip'); | |
427 | + if (text) { | |
428 | + e.preventDefault(); | |
429 | + AmdaAction.getInfo({ name: text }, function (res, e) { | |
430 | + if (res.success) myDesktopApp.infoMsg(res.result); | |
431 | + }); | |
432 | + } | |
433 | + } | |
434 | + } | |
435 | + } | |
436 | + }, | |
420 | 437 | items: [{ |
421 | 438 | xtype: 'container', |
422 | 439 | layout: {type: 'vbox', pack: 'start', align: 'stretch'}, |
... | ... |
js/app/views/PlotComponents/PlotBaseSerieForm.js
... | ... | @@ -16,34 +16,36 @@ Ext.define('amdaPlotComp.PlotBaseSerieForm', { |
16 | 16 | this.loadRecord(this.object); |
17 | 17 | this.updateOptions(this.crtTree.getSelectedPlotType()); |
18 | 18 | }, |
19 | - | |
19 | + | |
20 | 20 | updateOptions: function(plotType) { |
21 | 21 | var isScatter = (plotType == 'xyPlot'); |
22 | 22 | |
23 | 23 | var timeTickTypeField = this.getForm().findField('serie-timetick-type'); |
24 | - var timeTickFieldSet = timeTickTypeField.findParentByType('fieldset'); | |
25 | - | |
26 | - timeTickFieldSet.setVisible(isScatter); | |
24 | + if (timeTickTypeField != null){ | |
25 | + var timeTickFieldSet = timeTickTypeField.findParentByType('fieldset'); | |
27 | 26 | |
28 | - if (isScatter) | |
29 | - { | |
30 | - //Update Time Tick field | |
31 | - var timeTickStepField = this.getForm().findField('serie-timetick-step'); | |
32 | - var timeTickNbMajorField = this.getForm().findField('serie-timetick-nbmajor'); | |
33 | - switch (timeTickTypeField.getValue()) | |
27 | + timeTickFieldSet.setVisible(isScatter); | |
28 | + | |
29 | + if (isScatter) | |
34 | 30 | { |
35 | - case 'time-step' : | |
36 | - timeTickStepField.setVisible(true); | |
37 | - timeTickNbMajorField.setVisible(false); | |
38 | - break; | |
39 | - case 'nb-major' : | |
40 | - timeTickStepField.setVisible(false); | |
41 | - timeTickNbMajorField.setVisible(true); | |
42 | - break; | |
43 | - case 'auto' : | |
44 | - default : | |
45 | - timeTickStepField.setVisible(false); | |
46 | - timeTickNbMajorField.setVisible(false); | |
31 | + //Update Time Tick field | |
32 | + var timeTickStepField = this.getForm().findField('serie-timetick-step'); | |
33 | + var timeTickNbMajorField = this.getForm().findField('serie-timetick-nbmajor'); | |
34 | + switch (timeTickTypeField.getValue()) | |
35 | + { | |
36 | + case 'time-step' : | |
37 | + timeTickStepField.setVisible(true); | |
38 | + timeTickNbMajorField.setVisible(false); | |
39 | + break; | |
40 | + case 'nb-major' : | |
41 | + timeTickStepField.setVisible(false); | |
42 | + timeTickNbMajorField.setVisible(true); | |
43 | + break; | |
44 | + case 'auto' : | |
45 | + default : | |
46 | + timeTickStepField.setVisible(false); | |
47 | + timeTickNbMajorField.setVisible(false); | |
48 | + } | |
47 | 49 | } |
48 | 50 | } |
49 | 51 | }, |
... | ... |
js/app/views/PlotComponents/PlotColorAxisForm.js
... | ... | @@ -15,8 +15,49 @@ Ext.define('amdaPlotComp.PlotColorAxisForm', { |
15 | 15 | showTickGridOptions : false, |
16 | 16 | |
17 | 17 | getFormItems: function() { |
18 | - var timeItems = [ | |
19 | - this.addStandardCombo('axis-color-map', 'Color Map', amdaPlotObj.PlotObjectConfig.availableColorMaps), | |
18 | + var data = []; | |
19 | + amdaPlotObj.PlotObjectConfig.availableColorMaps.forEach(function(color){ | |
20 | + data.push({key:color.key,name:color.value, iconUrl:'generic_data/colormaps/'+ color.svgFile}) | |
21 | + }); | |
22 | + | |
23 | + var combo = new Ext.form.ComboBox({ | |
24 | + name: 'axis-color-map', | |
25 | + fieldLabel: 'Color Map', | |
26 | + store: new Ext.data.Store({ | |
27 | + fields: ['key','name', 'iconUrl'], | |
28 | + data: data | |
29 | + }), | |
30 | + displayField: 'name', | |
31 | + valueField: 'key', | |
32 | + tpl: '<tpl for="."><div class="x-boundlist-item"><span data-qtip="{name}"> \ | |
33 | + <img src="{iconUrl}" class="svg-icon" style="height: 26px;"> \ | |
34 | + </span>\ | |
35 | + </div></tpl>', | |
36 | + editable: false, | |
37 | + queryMode: 'local', | |
38 | + listeners: { | |
39 | + change: function (combo, newValue, oldValue, eOpts) { | |
40 | + var iconUrl=""; | |
41 | + data.forEach(function(colorData){ | |
42 | + if(colorData.key == newValue ){ | |
43 | + iconUrl= colorData.iconUrl; | |
44 | + } | |
45 | + }); | |
46 | + combo.inputEl.setStyle('background-image', 'url(' + iconUrl + ')'); | |
47 | + combo.inputEl.setStyle('background-size', '100%'); | |
48 | + combo.inputEl.setStyle('background-repeat', 'no-repeat'); | |
49 | + combo.inputEl.setStyle('background-position', 'center'); | |
50 | + combo.inputEl.setStyle('font-size', '0'); | |
51 | + | |
52 | + this.object.set('axis-color-map', newValue); | |
53 | + }, | |
54 | + scope:this | |
55 | + }, | |
56 | + }); | |
57 | + | |
58 | + | |
59 | + | |
60 | + var timeItems = [combo, | |
20 | 61 | this.addColorsPicker('axis-color-minval', 'Min. Val. Color', amdaPlotObj.PlotObjectConfig.availableColorsNew, 'none'), |
21 | 62 | this.addColorsPicker('axis-color-maxval', 'Max. Val. Color', amdaPlotObj.PlotObjectConfig.availableColorsNew, 'none') |
22 | 63 | ]; |
... | ... |
js/app/views/PlotComponents/PlotElementPanel.js
... | ... | @@ -29,7 +29,7 @@ Ext.define('amdaPlotComp.PlotElementPanel', { |
29 | 29 | this.callParent(); |
30 | 30 | }, |
31 | 31 | |
32 | - setElement: function(type, object, tree) { | |
32 | + setElement: function(type, object, tree, parentObject) { | |
33 | 33 | this.removeAll(false); |
34 | 34 | |
35 | 35 | this.crtTree = tree; |
... | ... | @@ -40,11 +40,13 @@ Ext.define('amdaPlotComp.PlotElementPanel', { |
40 | 40 | elementForm.crtTree = tree; |
41 | 41 | if (elementForm.setObject) |
42 | 42 | elementForm.setObject(object); |
43 | + if (elementForm.setParentObject) | |
44 | + elementForm.setParentObject(parentObject); | |
43 | 45 | }); |
44 | 46 | }, |
45 | 47 | |
46 | 48 | resetElement: function() { |
47 | - this.setElement('',null,null); | |
49 | + this.setElement('',null,null, null); | |
48 | 50 | }, |
49 | 51 | |
50 | 52 | getElementForm: function(type, onFormReady) { |
... | ... |
js/app/views/PlotComponents/PlotHistogram2DSerieForm.js
0 โ 100644
... | ... | @@ -0,0 +1,112 @@ |
1 | +/** | |
2 | + * Project : TMA-AMDA | |
3 | + * Name : PlotHistogram2DSerieForm.js | |
4 | + * @class amdaPlotComp.PlotHistogram2DSerieForm | |
5 | + * @extends amdaPlotComp.PlotBaseSerieForm | |
6 | + * @brief Form to define specifics histogram2d serie options | |
7 | + * @author Furkan Erdogan | |
8 | + * @version $Id: PlotHistogram2DSerieForm.js furkan $ | |
9 | + */ | |
10 | + | |
11 | +Ext.define('amdaPlotComp.PlotHistogram2DSerieForm', { | |
12 | + extend: 'amdaPlotComp.PlotBaseSerieForm', | |
13 | + | |
14 | + setObject: function (object) { | |
15 | + this.callParent(arguments); | |
16 | + this.updateOptions(this.object.get('histo2d-function')); | |
17 | + }, | |
18 | + | |
19 | + setParentObject: function (parentObject) { | |
20 | + this.callParent(arguments); | |
21 | + this.updateAxesRanges(); | |
22 | + }, | |
23 | + | |
24 | + updateOptions: function(functionType) { | |
25 | + var isDensity = (functionType == 'density'); | |
26 | + | |
27 | + var zParamField = this.getForm().findField('histotype-param'); | |
28 | + zParamField.setVisible(!isDensity) | |
29 | + }, | |
30 | + | |
31 | + updateAxesRanges: function() { | |
32 | + var xAxisObj = this.parentObject.axes().getById('xaxis_id'); | |
33 | + var yAxisObj = this.parentObject.axes().getById('y-left'); | |
34 | + this.getForm().findField('histo2d-xmin').setValue(xAxisObj.get('axis-range-min')); | |
35 | + this.getForm().findField('histo2d-xmax').setValue(xAxisObj.get('axis-range-max')); | |
36 | + this.getForm().findField('histo2d-ymin').setValue(yAxisObj.get('axis-range-min')); | |
37 | + this.getForm().findField('histo2d-ymax').setValue(yAxisObj.get('axis-range-max')); | |
38 | + }, | |
39 | + | |
40 | + getRangeForms: function(){ | |
41 | + var me = this; | |
42 | + return { | |
43 | + xtype: 'fieldset', | |
44 | + bodyStyle: { background: '#dfe8f6' }, | |
45 | + title: 'X & Y ranges', | |
46 | + name: 'histo2d-ranges', | |
47 | + renderTo: Ext.getBody(), | |
48 | + fieldDefaults: { | |
49 | + labelAlign: 'right', | |
50 | + msgTarget: 'side', | |
51 | + labelWidth: 40, | |
52 | + }, | |
53 | + defaults: { | |
54 | + xtype: 'panel', | |
55 | + bodyStyle: {background: '#dfe8f6'}, | |
56 | + flex: 1, | |
57 | + border:false, | |
58 | + layout: 'anchor', | |
59 | + }, | |
60 | + layout:'hbox', | |
61 | + frame: true, | |
62 | + //bodyPadding: '5 5 5 5', | |
63 | + items: | |
64 | + [{ | |
65 | + items:[ | |
66 | + me.addStandardFloat2('histo2d-xmin', 'X Min', -Number.MAX_VALUE, Number.MAX_VALUE, false, false, function(name, newValue, oldValue){ | |
67 | + me.parentObject.axes().getById('xaxis_id').set('axis-range-min', newValue); | |
68 | + }), | |
69 | + me.addStandardFloat2('histo2d-xmax', 'X Max', -Number.MAX_VALUE, Number.MAX_VALUE, false, false, function(name, newValue, oldValue){ | |
70 | + me.parentObject.axes().getById('xaxis_id').set('axis-range-max', newValue); | |
71 | + }), | |
72 | + ] | |
73 | + }, | |
74 | + { | |
75 | + items:[ | |
76 | + me.addStandardFloat2('histo2d-ymin', 'Y Min', -Number.MAX_VALUE, Number.MAX_VALUE, false, false, function(name, newValue, oldValue){ | |
77 | + me.parentObject.axes().getById('y-left').set('axis-range-min', newValue); | |
78 | + }), | |
79 | + me.addStandardFloat2('histo2d-ymax', 'Y Max', -Number.MAX_VALUE, Number.MAX_VALUE, false, false, function(name, newValue, oldValue){ | |
80 | + me.parentObject.axes().getById('y-left').set('axis-range-max', newValue); | |
81 | + }), | |
82 | + ], | |
83 | + }] | |
84 | + }; | |
85 | + | |
86 | + }, | |
87 | + getFormItems: function() { | |
88 | + var me = this; | |
89 | + | |
90 | + var histogram2DItems = [ | |
91 | + this.addStandardParamDropTarget('serie-xaxis-param', 'X Parameter', function(name, value, oldValue) { | |
92 | + me.object.set('serie-xaxis-param', value); | |
93 | + me.crtTree.refresh(); | |
94 | + }), | |
95 | + me.getRangeForms(), | |
96 | + this.addStandardCombo('serie-resampling-mode', 'Reference parameter for resampling', amdaPlotObj.PlotObjectConfig.availableResamplingModes), | |
97 | + this.addStandardCombo('histo2d-function', 'Function to apply', amdaPlotObj.PlotObjectConfig.availableHistogram2DFunctions, function(name, value, oldValue) { | |
98 | + me.object.set('histo2d-function', value); | |
99 | + me.updateOptions(value); | |
100 | + }), | |
101 | + this.addStandardParamDropTarget('histotype-param', 'Z Parameter', function(name, value, oldValue) { | |
102 | + me.object.set('histotype-param', value); | |
103 | + me.crtTree.refresh(); | |
104 | + }), | |
105 | + this.addStandardInteger('histo2d-xbinnumber', 'X - Nb. of bins'), | |
106 | + this.addStandardInteger('histo2d-ybinnumber', 'Y - Nb. of bins'), | |
107 | + this.addStandardInteger('histo2d-smoothfactor', 'Smooth factor') | |
108 | + | |
109 | + ]; | |
110 | + return histogram2DItems; | |
111 | + } | |
112 | +}); | |
... | ... |
js/app/views/PlotComponents/PlotParamForm.js
... | ... | @@ -14,6 +14,7 @@ Ext.define('amdaPlotComp.PlotParamForm', { |
14 | 14 | requires: [ |
15 | 15 | 'amdaPlotComp.PlotSerieForm', |
16 | 16 | 'amdaPlotComp.PlotOrbitSerieForm', |
17 | + 'amdaPlotComp.PlotHistogram2DSerieForm', | |
17 | 18 | 'amdaPlotComp.PlotSpectroForm', |
18 | 19 | 'amdaPlotComp.PlotSauvaudForm', |
19 | 20 | 'amdaPlotComp.PlotStatusBarForm', |
... | ... | @@ -63,6 +64,9 @@ Ext.define('amdaPlotComp.PlotParamForm', { |
63 | 64 | case 'orbit-serie': |
64 | 65 | this.drawingOptionsFormsManager.register(new amdaPlotComp.PlotOrbitSerieForm({ id: formId })); |
65 | 66 | break; |
67 | + case 'histogram2d': | |
68 | + this.drawingOptionsFormsManager.register(new amdaPlotComp.PlotHistogram2DSerieForm({ id: formId })); | |
69 | + break; | |
66 | 70 | case 'sauvaud': |
67 | 71 | if(this.object.get('type') !=2){ |
68 | 72 | myDesktopApp.warningMsg('Sauvaud Plot requires <b>2D Parameter</b> '); |
... | ... | @@ -114,6 +118,8 @@ Ext.define('amdaPlotComp.PlotParamForm', { |
114 | 118 | drawingOptionsForm.crtTree = this.crtTree; |
115 | 119 | if (drawingOptionsForm.setObject) |
116 | 120 | drawingOptionsForm.setObject(this.object); |
121 | + if (drawingOptionsForm.setParentObject) | |
122 | + drawingOptionsForm.setParentObject(this.parentObject); | |
117 | 123 | if (this.paramArgs && paramId) |
118 | 124 | this.paramArgs.editParameter(this.object, this, function (uiScope) { |
119 | 125 | uiScope.crtTree.refresh(); |
... | ... |
js/app/views/PlotComponents/PlotPreviewUI.js
... | ... | @@ -187,57 +187,67 @@ Ext.define('amdaPlotComp.PlotPreviewUI', { |
187 | 187 | } |
188 | 188 | } |
189 | 189 | }); |
190 | - var topToolbar = | |
191 | - { | |
192 | - xtype: 'toolbar', | |
193 | - dock: 'top', | |
194 | - items: [{ | |
195 | - xtype: 'datefield', | |
196 | - allowBlank: true, | |
197 | - format: 'Y-m-d\\TH:i:s.u', | |
198 | - id: 'plotPreview-goto-Date' + this.interactiveId, | |
199 | - value: this.time, | |
200 | - width: 175, | |
201 | - renderer: function (value) { | |
202 | - if (value != null) { | |
203 | - if (Ext.isDate(value)) { | |
204 | - return Ext.Date.format(value, 'Y-m-d\\TH:i:s.u'); | |
190 | + | |
191 | + var childrenOfTopToolBar = []; | |
192 | + | |
193 | + if (!me.isPlotFunction) { | |
194 | + childrenOfTopToolBar = [ | |
195 | + { | |
196 | + xtype: 'datefield', | |
197 | + allowBlank: true, | |
198 | + format: 'Y-m-d\\TH:i:s.u', | |
199 | + id: 'plotPreview-goto-Date' + this.interactiveId, | |
200 | + value: this.time, | |
201 | + width: 175, | |
202 | + renderer: function (value) { | |
203 | + if (value != null) { | |
204 | + if (Ext.isDate(value)) { | |
205 | + return Ext.Date.format(value, 'Y-m-d\\TH:i:s.u'); | |
206 | + } else { | |
207 | + return Ext.Date.format(new Date(value), 'Y-m-d\\TH:i:s.u'); | |
208 | + } | |
205 | 209 | } else { |
206 | - return Ext.Date.format(new Date(value), 'Y-m-d\\TH:i:s.u'); | |
210 | + return value; | |
207 | 211 | } |
208 | - } else { | |
209 | - return value; | |
210 | 212 | } |
211 | - } | |
212 | - | |
213 | - }, '-', | |
214 | - { | |
215 | - text: 'Change cut time', | |
216 | - scope: this, | |
217 | - handler: function (bt) { | |
218 | - var newTime = Ext.getCmp('plotPreview-goto-Date' + me.interactiveId).getValue(); | |
219 | - newTime = Ext.Date.add(newTime, Ext.Date.MINUTE, -newTime.getTimezoneOffset()); | |
220 | - me.panelResultInstance.callInteractivePlot({ 'action': 'instant', 'interactiveId': me.panelResultInstance.interactiveId, 'panelId': me.panelId, 'time': newTime.toISOString() }); | |
221 | - } | |
222 | - }, | |
213 | + | |
214 | + }, '-', | |
215 | + { | |
216 | + text: 'Change cut time', | |
217 | + scope: this, | |
218 | + handler: function (bt) { | |
219 | + var newTime = Ext.getCmp('plotPreview-goto-Date' + me.interactiveId).getValue(); | |
220 | + newTime = Ext.Date.add(newTime, Ext.Date.MINUTE, -newTime.getTimezoneOffset()); | |
221 | + me.panelResultInstance.callInteractivePlot({ 'action': 'instant', 'interactiveId': me.panelResultInstance.interactiveId, 'panelId': me.panelId, 'time': newTime.toISOString() }); | |
222 | + } | |
223 | + }, | |
223 | 224 | '-', |
224 | - { | |
225 | - xtype: 'button', | |
226 | - text: 'Previous', | |
227 | - handler: function () { | |
228 | - var newTime = new Date(amdaPlotComp.PlotContextManager.getInstantTimePrev(me.crtContext) * 1000); | |
229 | - me.panelResultInstance.callInteractivePlot({ 'action': 'instant', 'interactiveId': me.panelResultInstance.interactiveId, 'panelId': me.panelId, 'time': newTime.toISOString() }); | |
230 | - } | |
231 | - }, | |
232 | - { | |
233 | - xtype: 'button', | |
234 | - text: 'Next', | |
235 | - handler: function () { | |
236 | - var newTime = new Date(amdaPlotComp.PlotContextManager.getInstantTimeNext(me.crtContext) * 1000); | |
237 | - me.panelResultInstance.callInteractivePlot({ 'action': 'instant', 'interactiveId': me.panelResultInstance.interactiveId, 'panelId': me.panelId, 'time': newTime.toISOString() }); | |
225 | + { | |
226 | + xtype: 'button', | |
227 | + text: 'Previous', | |
228 | + handler: function () { | |
229 | + var newTime = new Date(amdaPlotComp.PlotContextManager.getInstantTimePrev(me.crtContext) * 1000); | |
230 | + me.panelResultInstance.callInteractivePlot({ 'action': 'instant', 'interactiveId': me.panelResultInstance.interactiveId, 'panelId': me.panelId, 'time': newTime.toISOString() }); | |
231 | + } | |
232 | + }, | |
233 | + { | |
234 | + xtype: 'button', | |
235 | + text: 'Next', | |
236 | + handler: function () { | |
237 | + var newTime = new Date(amdaPlotComp.PlotContextManager.getInstantTimeNext(me.crtContext) * 1000); | |
238 | + me.panelResultInstance.callInteractivePlot({ 'action': 'instant', 'interactiveId': me.panelResultInstance.interactiveId, 'panelId': me.panelId, 'time': newTime.toISOString() }); | |
239 | + } | |
238 | 240 | } |
239 | - } | |
240 | - ] | |
241 | + ]; | |
242 | + }; | |
243 | + | |
244 | + childrenOfTopToolBar.push(me.createDownloadButton(configResult)); | |
245 | + | |
246 | + var topToolbar = | |
247 | + { | |
248 | + xtype: 'toolbar', | |
249 | + dock: 'top', | |
250 | + items: childrenOfTopToolBar | |
241 | 251 | } |
242 | 252 | var mouseToolbar = { |
243 | 253 | xtype: 'toolbar', |
... | ... | @@ -290,9 +300,23 @@ Ext.define('amdaPlotComp.PlotPreviewUI', { |
290 | 300 | items: [ |
291 | 301 | this.createPlotImage(configResult.folder, configResult.plotFile) |
292 | 302 | ], |
293 | - dockedItems: me.isPlotFunction ? [mouseToolbar] : [topToolbar, mouseToolbar] | |
303 | + dockedItems:[topToolbar, mouseToolbar] | |
294 | 304 | }; |
295 | 305 | |
296 | 306 | Ext.apply(this, plotPreviewPanelConfig); |
307 | + }, | |
308 | + | |
309 | + | |
310 | + createDownloadButton: function (configResult) { | |
311 | + const me = this; | |
312 | + return { | |
313 | + xtype: 'button', | |
314 | + text: 'Download Data', | |
315 | + handler: function () { | |
316 | + var path = me.getImageUrl(configResult.folder, configResult.plotFile.replace(".png", "")); | |
317 | + path += "_data.txt"; | |
318 | + window.open(path, "_blank"); | |
319 | + } | |
320 | + }; | |
297 | 321 | } |
298 | 322 | }); |
... | ... |
js/app/views/PlotComponents/PlotStandardForm.js
... | ... | @@ -20,6 +20,8 @@ Ext.define('amdaPlotComp.PlotStandardForm', { |
20 | 20 | //Object associated to this form |
21 | 21 | object: null, |
22 | 22 | |
23 | + parentObject: null, | |
24 | + | |
23 | 25 | //Link to the tree |
24 | 26 | crtTree: null, |
25 | 27 | desableTickNumber: true, |
... | ... | @@ -35,6 +37,10 @@ Ext.define('amdaPlotComp.PlotStandardForm', { |
35 | 37 | this.loadRecord(this.object); |
36 | 38 | }, |
37 | 39 | |
40 | + setParentObject: function (parentObject) { | |
41 | + this.parentObject = parentObject; | |
42 | + }, | |
43 | + | |
38 | 44 | //To override to add form components |
39 | 45 | getFormItems: function () { |
40 | 46 | return []; |
... | ... | @@ -109,7 +115,7 @@ Ext.define('amdaPlotComp.PlotStandardForm', { |
109 | 115 | }, |
110 | 116 | |
111 | 117 | addStandardFloat2: function (name, label, min, max, allowBlank, hidden, onChange) { |
112 | - allowBlank = (typeof allowBlank !== 'undefined') ? allowBlank : false; | |
118 | + allowBlank = (typeof allowBlank !== 'undefined' || allowBlank == null) ? allowBlank : false; | |
113 | 119 | |
114 | 120 | return { |
115 | 121 | xtype: 'textfield', |
... | ... | @@ -122,10 +128,10 @@ Ext.define('amdaPlotComp.PlotStandardForm', { |
122 | 128 | if (!allowBlank && Ext.isEmpty(val)) { |
123 | 129 | errMsg = 'Blank value not allowed'; |
124 | 130 | } |
125 | - else if ((typeof min !== 'undefined') && (parseFloat(val) < min)) { | |
131 | + else if ((typeof min !== 'undefined' && min !== null) && (parseFloat(val) < min)) { | |
126 | 132 | errMsg = 'Min. allowed value is ' + min; |
127 | 133 | } |
128 | - else if ((typeof max !== 'undefined') && (parseFloat(val) > max)) { | |
134 | + else if ((typeof max !== 'undefined' && max !== null) && (parseFloat(val) > max)) { | |
129 | 135 | errMsg = 'Max. allowed value is ' + max; |
130 | 136 | } |
131 | 137 | |
... | ... |
js/app/views/PlotComponents/PlotTabPanel.js
... | ... | @@ -271,7 +271,10 @@ Ext.define('amdaPlotComp.PlotTabPanel', { |
271 | 271 | if (newTree.plotElementPanel != null) { |
272 | 272 | var selectedNode = newTree.getSelectedNode(); |
273 | 273 | if (selectedNode != null) { |
274 | - newTree.plotElementPanel.setElement(selectedNode.type, selectedNode.object, newTree); | |
274 | + var parentObject = null; | |
275 | + if (selectedNode.parentNode != null) | |
276 | + parentObject = selectedNode.parentNode.object; | |
277 | + newTree.plotElementPanel.setElement(selectedNode.type, selectedNode.object, newTree, parentObject); | |
275 | 278 | } |
276 | 279 | } |
277 | 280 | } |
... | ... |
js/app/views/PlotComponents/PlotTree.js
... | ... | @@ -430,8 +430,12 @@ Ext.define('amdaPlotComp.PlotTree', { |
430 | 430 | onNodeSelect: function(tree, record, index, eOpts) { |
431 | 431 | if (index == -1) |
432 | 432 | return; |
433 | - if (this.plotElementPanel != null) | |
434 | - this.plotElementPanel.setElement(record.type, record.object, this); | |
433 | + if (this.plotElementPanel != null) { | |
434 | + var parentObject = null; | |
435 | + if (record.parentNode != null) | |
436 | + parentObject = record.parentNode.object; | |
437 | + this.plotElementPanel.setElement(record.type, record.object, this, parentObject); | |
438 | + } | |
435 | 439 | }, |
436 | 440 | |
437 | 441 | onNodeDeselect: function(tree, record, index, eOpts) { |
... | ... |
js/app/views/PlotComponents/PlotZoomPlug.js
... | ... | @@ -30,7 +30,6 @@ Ext.define('amdaPlotComp.PlotZoomPlug', { |
30 | 30 | zoomType: '', |
31 | 31 | interactiveId: '', |
32 | 32 | panelId: -1, |
33 | - path_context_file: "", | |
34 | 33 | |
35 | 34 | linkedTTCatNode: null, |
36 | 35 | /** |
... | ... | @@ -132,7 +131,7 @@ Ext.define('amdaPlotComp.PlotZoomPlug', { |
132 | 131 | */ |
133 | 132 | show: function (interactiveId, zoomType, panelId, isPlotFunction_ = false) { |
134 | 133 | this.isPlotFunction = isPlotFunction_; |
135 | - if (!this.win) { | |
134 | + if (this.win) { this.close() }; | |
136 | 135 | this.win = new Ext.Window({ |
137 | 136 | id: 'plot-zoom-win-' + this.hostCmp.ownerCt.getId(), // Plot window ID |
138 | 137 | width: 250, |
... | ... | @@ -164,7 +163,7 @@ Ext.define('amdaPlotComp.PlotZoomPlug', { |
164 | 163 | this.win.on('destroy', this.onDestroy, this); |
165 | 164 | |
166 | 165 | Ext.PluginManager.register(this); |
167 | - } | |
166 | + | |
168 | 167 | this.interactiveId = interactiveId; |
169 | 168 | this.updateWinByType(zoomType, panelId); |
170 | 169 | this.win.show(); |
... | ... | @@ -187,7 +186,7 @@ Ext.define('amdaPlotComp.PlotZoomPlug', { |
187 | 186 | switch (zoomType) { |
188 | 187 | case 'timeAxis': |
189 | 188 | if (this.isPlotFunction) { |
190 | - const title = "Apply a Function on Interval"; | |
189 | + const title = "Apply a Fct on Interval"; | |
191 | 190 | this.win.setTitle(title + '-Panel Id: ' + panelId); |
192 | 191 | } else { |
193 | 192 | this.win.setTitle('Zoom on time axis & Interval selection - Panel Id : ' + panelId); |
... | ... | @@ -438,8 +437,8 @@ Ext.define('amdaPlotComp.PlotZoomPlug', { |
438 | 437 | ], |
439 | 438 | fbar: [ |
440 | 439 | { |
441 | - text: me.isPlotFunction ? "Apply" : 'Apply Zoom', | |
442 | - width: 100, | |
440 | + text: me.isPlotFunction ? "Apply The Function" : 'Apply Zoom', | |
441 | + width: me.isPlotFunction ? 200 : 100, | |
443 | 442 | scope: this, |
444 | 443 | handler: function () { |
445 | 444 | if (this.zoomType == 'timeAxis') { |
... | ... | @@ -461,6 +460,13 @@ Ext.define('amdaPlotComp.PlotZoomPlug', { |
461 | 460 | const stop_time = this.form.getForm().findField('zoom-max-time').getValue(); |
462 | 461 | |
463 | 462 | let request_to_send = {}; |
463 | + | |
464 | + if (!me.plotFunctionType || !me.plotFunctionType.parent) { | |
465 | + console.log("The component of Function Type is undefined"); | |
466 | + myDesktopApp.warningMsg('Error, please tryto reopen the plot function window'); | |
467 | + me.win.close(); | |
468 | + return; | |
469 | + } | |
464 | 470 | request_to_send = Object.assign({}, me.plotFunctionType.getValues()/*, me.plotFunctionParamField.getValues()*/); |
465 | 471 | request_to_send = Object.assign({}, request_to_send, { |
466 | 472 | 'action': 'plotFunction', |
... | ... | @@ -470,22 +476,7 @@ Ext.define('amdaPlotComp.PlotZoomPlug', { |
470 | 476 | 'stoptime': stop_time |
471 | 477 | }); |
472 | 478 | |
473 | - // const parent = this; | |
474 | - this.hostCmp.callInteractivePlot(request_to_send);/*, function () { | |
475 | - Ext.Ajax.request({ | |
476 | - url: parent.path_context_file, | |
477 | - success: function (response, options) { | |
478 | - var xmlDoc = response.responseXML; | |
479 | - const wind = new amdaPlotComp.plotFunction.CreatePlot({ | |
480 | - xmlDoc: xmlDoc, plotFunctionType: me.plotFunctionType, | |
481 | - plotFunctionParamField: me.plotFunctionParamField | |
482 | - }); | |
483 | - wind.show(); | |
484 | - wind.plot(); | |
485 | - } | |
486 | - }); | |
487 | - });*/ | |
488 | - | |
479 | + this.hostCmp.callInteractivePlot(request_to_send); | |
489 | 480 | } else { |
490 | 481 | this.hostCmp.callInteractivePlot({ |
491 | 482 | 'action': 'zoom', |
... | ... | @@ -500,6 +491,7 @@ Ext.define('amdaPlotComp.PlotZoomPlug', { |
500 | 491 | this.hostCmp.panelImage.resetZoom(); |
501 | 492 | } |
502 | 493 | }, |
494 | + me.isPlotFunction ? null : | |
503 | 495 | { |
504 | 496 | text: 'Undo Zoom', |
505 | 497 | width: 100, |
... | ... |
js/app/views/PlotTabResultUI.js
... | ... | @@ -80,7 +80,6 @@ Ext.define('amdaUI.PlotTabResultUI', { |
80 | 80 | var size = this.getImageSize(); |
81 | 81 | // We need a list of parameters to compute the number of points needed to apply FFT |
82 | 82 | this.listParams = panelContext["parameters"]; |
83 | - zoomPlugin.path_context_file = 'data/' + sessionID + '/RES/' + this.configResult.folder + '/' + "plotFunction0_context.xml"; | |
84 | 83 | zoomPlugin.setParameters(this.listParams); |
85 | 84 | |
86 | 85 | |
... | ... | @@ -323,9 +322,9 @@ Ext.define('amdaUI.PlotTabResultUI', { |
323 | 322 | var sourceYPos = me.toPixelOnSourceImage(imageY); |
324 | 323 | var panel = amdaPlotComp.PlotContextManager.getPanel(me.crtContext, sourceXPos, sourceYPos); |
325 | 324 | var timeAxisContext = amdaPlotComp.PlotContextManager.getPanelAxisById(panel, 'timeAxis'); |
326 | - if (timeAxisContext == null) | |
327 | - return; | |
328 | - var crtTimestamp = amdaPlotComp.PlotContextManager.toAxisValue(timeAxisContext, panel.plotArea.x, panel.plotArea.x + panel.plotArea.width, sourceXPos); | |
325 | + var crtTimestamp = null; | |
326 | + if (timeAxisContext != null) | |
327 | + crtTimestamp = amdaPlotComp.PlotContextManager.toAxisValue(timeAxisContext, panel.plotArea.x, panel.plotArea.x + panel.plotArea.width, sourceXPos); | |
329 | 328 | |
330 | 329 | if (panel != null) { |
331 | 330 | if (panel.plotArea.hasSpectro) { |
... | ... | @@ -391,7 +390,7 @@ Ext.define('amdaUI.PlotTabResultUI', { |
391 | 390 | } |
392 | 391 | ]); |
393 | 392 | |
394 | - if (amdaPlotComp.PlotContextManager.isInterval(me.crtContext, panel, crtTimestamp)) { | |
393 | + if (timeAxisContext && amdaPlotComp.PlotContextManager.isInterval(me.crtContext, panel, crtTimestamp)) { | |
395 | 394 | var allintervalParams = amdaPlotComp.PlotContextManager.getAllIntervalParams(me.crtContext, panel, crtTimestamp); |
396 | 395 | if (allintervalParams.length > 0) { |
397 | 396 | |
... | ... |
php/WebServices/WebServer.php
... | ... | @@ -623,6 +623,33 @@ class WebServer |
623 | 623 | |
624 | 624 | $this->throwError("serverError", $res['message']); |
625 | 625 | } |
626 | + | |
627 | +/* | |
628 | +* get EPN-TAP granule | |
629 | +*/ | |
630 | + public function getGranule($data) | |
631 | + { | |
632 | + if (!array_key_exists('obs_id', $data) || !array_key_exists('start', $data) || !array_key_exists('stop', $data)) { | |
633 | + $this->throwError("serverError", "Missing obs_id, start or stop definition"); | |
634 | + } | |
635 | + $data['datasetID'] = $data['obs_id']; | |
636 | + $data['startTime'] = $data['start']; | |
637 | + $data['stopTime'] = $data['stop']; | |
638 | + $data['outputFormat'] = "CDF_ISTP"; | |
639 | + if (array_key_exists('format', $data)) { | |
640 | + $data['outputFormat'] = $data["format"]; | |
641 | + } | |
642 | + $res = $this->getDataset($data); | |
643 | + if (!$res['success']) { | |
644 | + return $res; | |
645 | + } | |
646 | + if (array_key_exists('dataFileURLs', $res)) { | |
647 | + $data = file_get_contents($res['dataFileURLs']); | |
648 | + header("Location: ".$res['dataFileURLs']); | |
649 | + die(); | |
650 | + } | |
651 | + $this->throwError("serverError", "Unknown error"); | |
652 | + } | |
626 | 653 | |
627 | 654 | /* |
628 | 655 | * get status for jobs in batch |
... | ... |
php/classes/AmdaAction.php
... | ... | @@ -362,6 +362,11 @@ class AmdaAction |
362 | 362 | } |
363 | 363 | $disable = TRUE; |
364 | 364 | |
365 | + $hideIfRestricted = FALSE; | |
366 | + if ($child->hasAttribute("hideIfRestricted") && ($child->getAttribute("hideIfRestricted") == "1")) { | |
367 | + $hideIfRestricted = TRUE; | |
368 | + } | |
369 | + | |
365 | 370 | if ($child->hasAttribute('group')) { |
366 | 371 | if ($child->getAttribute("group") === "TBD") { |
367 | 372 | $info .= "<br/><b>Under Testing</b>"; |
... | ... | @@ -382,9 +387,10 @@ class AmdaAction |
382 | 387 | if ($child->hasAttribute('restriction') && $child->getAttribute('restriction') == 'plotOnly') |
383 | 388 | $info .= "<br/><b>Plot Only!!!</b>"; |
384 | 389 | } |
390 | + $visible = !($disable && $hideIfRestricted); | |
385 | 391 | |
386 | 392 | $childrenToReturn[] = array('text' => $name, 'id' => $id,'nodeType' => $nodeType, 'info' => $info, 'last_update' => $last_update, |
387 | - 'leaf' => false, 'help' => $help, 'disable' => $disable, 'rank' => $rank, 'timeRestriction' => $timeRestriction); | |
393 | + 'leaf' => false, 'help' => $help, 'disable' => $disable, 'visible' => $visible, 'rank' => $rank, 'timeRestriction' => $timeRestriction); | |
388 | 394 | } |
389 | 395 | break; |
390 | 396 | |
... | ... |
php/config.php
... | ... | @@ -120,6 +120,9 @@ define('XMLPATH', IHM_SRC_DIR.'/php/XML/'); |
120 | 120 | define('HAPIData', DATAPATH.'/HAPI/'); |
121 | 121 | define('HAPISERVER_PATH', '/opt/tools/hapi-server/'); |
122 | 122 | |
123 | +// EPNTAP dirs | |
124 | +define('EPNTAPData', DATAPATH.'/EPN-TAP/'); | |
125 | + | |
123 | 126 | require_once(INTEGRATION_BASE_PATH.'/src/amdaintegration_autoload.php'); |
124 | 127 | |
125 | 128 | |
... | ... |
php/getEnv.php
... | ... | @@ -0,0 +1,44 @@ |
1 | +<?php | |
2 | + | |
3 | +/** | |
4 | + * @api {get} getDataset.php getDataset | |
5 | + * @apiDescription Provides data corresponding to a dataset chosen by the user among those available in AMDA | |
6 | + * @apiName getDataset | |
7 | + * @apiGroup webservices | |
8 | + * | |
9 | + * @apiParam {String} token The API token. | |
10 | + * @apiParam {String} startTime Beginning of the time interval (ISO 8601 or UNIXTIME format). | |
11 | + * @apiParam {String} stopTime End of the time interval (ISO 8601 or UNIXTIME format). | |
12 | + * @apiParam {String} datasetID Identifier of the dataset, as defined in the file returned by the *getObsDataTree* web-services. | |
13 | + * @apiParam {String} [sampling] Sampling of data (*in seconds*). | |
14 | + * @apiParam {String} [userID] Identifier of the user in AMDA (*mandatory for user owned data*) | |
15 | + * @apiParam {String} [password] Password of the user in AMDA (*mandatory for user owned data*) | |
16 | + * @apiParam {String} [outputFormat] Format of the returned file. Two options: `VOTable` and `ASCII`. | |
17 | + * @apiParam {String} [timeFormat] Format of time in the data files. Two options: `ISO8601` and `UNIXTIME`. | |
18 | + * @apiParam {Boolean} [gzip] `1` if the file must be compressed before delivery. | |
19 | + * | |
20 | + * @apiSuccess {String} success `true` | |
21 | + * @apiSuccess {String} dataFileURLs URL of the files matching the criteria. If the file is empty, there is no data | |
22 | + * matching these criteria. | |
23 | + * @apiSuccess {String} status status of the job ( done | in_progress ) | |
24 | + * | |
25 | + * @apiSuccessExample Success-Response: | |
26 | + * HTTP/1.1 200 OK | |
27 | + * [success] => 1 | |
28 | + * http://amda.irap.omp.eu/AMDA/data/WSRESULT/getdataset_ace-imf-all_20130923T090000_20130924T130000.txt | |
29 | + * [status] => done | |
30 | + * | |
31 | + * @apiErrorExample Error-Response: | |
32 | + * {"error":"Cannot find info file for dataset ace-imf-any"} | |
33 | + | |
34 | + */ | |
35 | + | |
36 | +//ini_set("allow_url_fopen", true); | |
37 | + require_once '../config.php'; | |
38 | + | |
39 | + $amda_ws = new WebServer(); | |
40 | + | |
41 | + $result = $amda_ws->getGranule($_GET); | |
42 | + | |
43 | + echo json_encode($result); | |
44 | +?> | |
... | ... |
... | ... | @@ -0,0 +1,445 @@ |
1 | +<?php | |
2 | + | |
3 | +//error_reporting(E_ERROR); | |
4 | + | |
5 | +date_default_timezone_set("UTC"); | |
6 | + | |
7 | +$localparams_tree = getenv('LocalData')."/LocalParams.xml"; | |
8 | +$output_file = getenv('EPNTAPData')."/amda-granules.csv"; | |
9 | +$ddservice_wsdl = getenv('DD_WSDL'); | |
10 | +$amda_rest_api = getenv('REST_API_URL'); | |
11 | + | |
12 | +$mapping = array( | |
13 | + 'granule_uid' => '@@dataset_id@@-@@granule_index@@', | |
14 | + 'granule_gid' => 'data', | |
15 | + 'obs_id' => '@@dataset_id@@', | |
16 | + 'dataproduct_type' => 'ts', | |
17 | + 'target_name' => '@@target_name@@', | |
18 | + 'target_class' => '@@target_class@@', | |
19 | + 'time_min' => '@@granule_start_time@@', | |
20 | + 'time_max' => '@@granule_stop_time@@', | |
21 | + 'time_sampling_step_min' => '@@min_sampling@@', | |
22 | + 'time_sampling_step_max' => '@@max_sampling@@', | |
23 | + 'time_exp_min' => '', | |
24 | + 'time_exp_max' => '', | |
25 | + 'spectral_range_min' => '', | |
26 | + 'spectral_range_max' => '', | |
27 | + 'spectral_sampling_step_min' => '', | |
28 | + 'spectral_sampling_step_max' => '', | |
29 | + 'spectral_resolution_min' => '', | |
30 | + 'spectral_resolution_max' => '', | |
31 | + 'c1min' => '', | |
32 | + 'c1max' => '', | |
33 | + 'c2min' => '', | |
34 | + 'c2max' => '', | |
35 | + 'c3min' => '', | |
36 | + 'c3max' => '', | |
37 | + 's_region' => '', | |
38 | + 'c1_resol_min' => '', | |
39 | + 'c1_resol_max' => '', | |
40 | + 'c2_resol_min' => '', | |
41 | + 'c2_resol_max' => '', | |
42 | + 'c3_resol_min' => '', | |
43 | + 'c3_resol_max' => '', | |
44 | + 'spatial_frame_type' => '', | |
45 | + 'incidence_min' => '', | |
46 | + 'incidence_max' => '', | |
47 | + 'emergence_min' => '', | |
48 | + 'emergence_max' => '', | |
49 | + 'phase_min' => '', | |
50 | + 'phase_max' => '', | |
51 | + 'instrument_host_name' => '@@mission_name@@', | |
52 | + 'instrument_name' => '@@instrument_name@@', | |
53 | + 'measurement_type' => '@@measurement_type@@', | |
54 | + 'processing_level' => '@@processing_level@@', | |
55 | + 'creation_date' => '@@creation_date@@', | |
56 | + 'modification_date' => '@@modification_date@@', | |
57 | + 'release_date' => '@@release_date@@', | |
58 | + 'service_title' => 'AMDADB', | |
59 | + 'access_url' => '@@amda_rest_api_entry_point@@getGranule.php?obs_id=@@dataset_id@@&start=@@granule_start_time_timestamp@@&stop=@@granule_stop_time_timestamp@@', | |
60 | + 'access_format' => 'application/x-cdf-istp', | |
61 | + 'target_region' => '@@target_region@@', | |
62 | + 'publisher' => 'CDPP', | |
63 | + 'time_scale' => 'UTC', | |
64 | + 'spase_resource_id' => '@@spase_resource_id@@', | |
65 | + 'spase_region' => '@@spase_region@@', | |
66 | + 'spase_measurement_type' => '@@spase_measurement_type@@', | |
67 | +); | |
68 | + | |
69 | +function parseSampling($sampling) { | |
70 | + if (empty($sampling)) | |
71 | + return ""; | |
72 | + $unit = substr($sampling, -1); | |
73 | + $value = floatval(substr($sampling, 0, -1)); | |
74 | + switch ($unit) { | |
75 | + case "S": | |
76 | + return strval($value); | |
77 | + case "M": | |
78 | + return strval(60.*$value); | |
79 | + case "H": | |
80 | + return strval(3600.*$value); | |
81 | + case "D": | |
82 | + return strval(86400.*$value); | |
83 | + default: | |
84 | + echo "[WARNING] Sampling - Unknown unit: ".$sampling.PHP_EOL; | |
85 | + return $sampling; | |
86 | + } | |
87 | +} | |
88 | + | |
89 | +function parseProcessingLevel($info) { | |
90 | + if (strpos($info, 'L1') !== FALSE) { | |
91 | + return '2'; | |
92 | + } | |
93 | + if (strpos($info, 'L3') !== FALSE) { | |
94 | + return '5'; | |
95 | + } | |
96 | + return '3'; | |
97 | +} | |
98 | + | |
99 | +function getEpnTapMeasurementType($measurement_type, $UCDs) { | |
100 | + $generic_ucd = ''; | |
101 | + switch ($measurement_type) { | |
102 | + case 'ThermalPlasma': | |
103 | + $generic_ucd = 'phys.flux'; | |
104 | + break; | |
105 | + case 'IonComposition': | |
106 | + case 'NeutralGas': | |
107 | + $generic_ucd = 'phys.composition'; | |
108 | + break; | |
109 | + case 'EnergeticParticles': | |
110 | + $generic_ucd = 'phys.particle'; | |
111 | + break; | |
112 | + case 'Waves': | |
113 | + case 'Waves.Passive': | |
114 | + $generic_ucd = 'em.pw'; | |
115 | + break; | |
116 | + case 'Ephemeris': | |
117 | + $generic_ucd = 'pos.ephem'; | |
118 | + break; | |
119 | + case 'ElectricField': | |
120 | + $generic_ucd = 'phys.electField'; | |
121 | + break; | |
122 | + case 'MagneticField': | |
123 | + $generic_ucd = 'phys.magField'; | |
124 | + break; | |
125 | + case 'Spectrum': | |
126 | + $generic_ucd = 'spect'; | |
127 | + break; | |
128 | + case 'InstrumentStatus': | |
129 | + $generic_ucd = 'instr'; | |
130 | + break; | |
131 | + case 'Irradiance': | |
132 | + $generic_ucd = 'phot.flux'; | |
133 | + break; | |
134 | + case 'Radiance': | |
135 | + $generic_ucd = 'phot.radiance'; | |
136 | + break; | |
137 | + default: | |
138 | + echo "[WARNING] UCD - Unknown measurement type: ".$measurement_type.PHP_EOL; | |
139 | + break; | |
140 | + } | |
141 | + if (!empty($generic_ucd) && !in_array($generic_ucd, $UCDs)) | |
142 | + array_unshift($UCDs, $generic_ucd); | |
143 | + return implode(';', $UCDs); | |
144 | +} | |
145 | + | |
146 | +function timestampToJulianDay($timestamp) { | |
147 | + return intval($timestamp) / 86400 + 2440587.5; | |
148 | +} | |
149 | + | |
150 | +function timestampToISO($timestamp) { | |
151 | + return date("Y-m-d\TH:i:s\Z", $timestamp); | |
152 | +} | |
153 | + | |
154 | +function getTargetClass($spaseRegion) { | |
155 | + $parts = explode(".", $spaseRegion); | |
156 | + if (count($parts) < 1) { | |
157 | + echo "[WARNING] Error in ObservatoryRegion definition : ".$spaseRegion.PHP_EOL; | |
158 | + return "planet"; | |
159 | + } | |
160 | + switch ($parts[0]) { | |
161 | + case "Asteroid": | |
162 | + return "asteroid"; | |
163 | + case "Comet": | |
164 | + return "comet"; | |
165 | + case "Earth": | |
166 | + case "Jupiter": | |
167 | + case "Mars": | |
168 | + case "Mercury": | |
169 | + case "Neptune": | |
170 | + case "Pluto": | |
171 | + case "Saturn": | |
172 | + case "Uranus": | |
173 | + case "Venus": | |
174 | + if ((count($parts) > 1) && !in_array($parts[1], array("Magnetosheath", "Magnetosphere", "NearSurface", "Surface"))) { | |
175 | + return "satellite"; | |
176 | + } | |
177 | + return "planet"; | |
178 | + case "Heliosphere": | |
179 | + case "Interstellar": | |
180 | + return "interplanetary_medium"; | |
181 | + case "Sun": | |
182 | + return "star"; | |
183 | + } | |
184 | + echo "[WARNING] Error in ObservatoryRegion definition : ".$spaseRegion.PHP_EOL; | |
185 | + return "planet"; | |
186 | +} | |
187 | + | |
188 | +function getTargetName($targetClass, $spaseRegion, $missionName, $dataset_id) { | |
189 | + $parts = explode(".", $spaseRegion); | |
190 | + if (count($parts) < 1) { | |
191 | + return ""; | |
192 | + } | |
193 | + switch ($targetClass) { | |
194 | + case "planet": | |
195 | + case "satellite": | |
196 | + if ((count($parts) > 1) && !in_array($parts[1], array("Magnetosheath", "Magnetosphere", "NearSurface", "Surface"))) { | |
197 | + return $parts[1]; | |
198 | + } | |
199 | + return $parts[0]; | |
200 | + case "star": | |
201 | + case "interplanetary_medium": | |
202 | + return "Sun"; | |
203 | + case "comet": | |
204 | + switch ($missionName) { | |
205 | + case "Rosetta": | |
206 | + return "67P"; | |
207 | + case "Giotto": | |
208 | + return "1P"; | |
209 | + case "Astronomical Objects Ephemerides": | |
210 | + if ($dataset_id == "p67-orb-all") | |
211 | + return "67P"; | |
212 | + break; | |
213 | + case "ICE": | |
214 | + if ($dataset_id == "ice-mag-p21") | |
215 | + return "21P"; | |
216 | + } | |
217 | + echo "[WARNING] Comet Id not defined for mission : ".$missionName.PHP_EOL; | |
218 | + return ""; | |
219 | + } | |
220 | + echo "[WARNING] Cannot retrieve target name from target class : ".$targetClass.PHP_EOL; | |
221 | + return ""; | |
222 | +} | |
223 | + | |
224 | +function getTargetRegion($targetClass, $spaseRegion) { | |
225 | + $parts = explode(".", $spaseRegion); | |
226 | + if (count($parts) < 1) { | |
227 | + return ""; | |
228 | + } | |
229 | + switch ($targetClass) { | |
230 | + case "planet": | |
231 | + if (count($parts) > 1) { | |
232 | + switch ($parts[1]) { | |
233 | + case "Magnetosheath": | |
234 | + case "Magnetosphere": | |
235 | + return "planetary-magnetosphere"; | |
236 | + case "NearSurface": | |
237 | + if (count($parts) > 2) { | |
238 | + switch ($parts[2]) { | |
239 | + case "Atmosphere": | |
240 | + return "planetary-atmospheres"; | |
241 | + case "Ionosphere": | |
242 | + return "planetary-ionospheres"; | |
243 | + } | |
244 | + } | |
245 | + return "planetary-atmospheres"; | |
246 | + case "Surface": | |
247 | + return "planetary-surfaces"; | |
248 | + } | |
249 | + } | |
250 | + break; | |
251 | + case "star": | |
252 | + case "interplanetary_medium": | |
253 | + return "solar-wind"; | |
254 | + } | |
255 | + return ""; | |
256 | +} | |
257 | + | |
258 | +ini_set("soap.wsdl_cache_enabled", 0); | |
259 | +try { | |
260 | + $client = new SoapClient($ddservice_wsdl, array('trace' => 1)); | |
261 | +} | |
262 | +catch (SoapFault $exception) { | |
263 | + echo "[ERROR] Cannot retrieve DDService - ".$ddservice_wsdl.PHP_EOL; | |
264 | + return; | |
265 | +} | |
266 | + | |
267 | +$amda_place_holders = array( | |
268 | + 'amda_rest_api_entry_point' => $amda_rest_api, | |
269 | +); | |
270 | + | |
271 | +$doc = new DOMDocument(); | |
272 | +@$doc->load($localparams_tree); | |
273 | + | |
274 | +$xpath = new DOMXpath($doc); | |
275 | + | |
276 | +$output_file_handle = fopen($output_file, 'w'); | |
277 | +fputcsv($output_file_handle, array_keys($mapping)); | |
278 | + | |
279 | +$dataset_nodes = $xpath->query("/dataRoot/dataCenter/mission/instrument/dataset | /dataRoot/dataCenter/mission/observatory/instrument/dataset | /dataRoot/dataCenter/mission/instrument/datasetGroup/dataset"); | |
280 | +$datasets = array(); | |
281 | +foreach ($dataset_nodes as $dataset_node) { | |
282 | + $dataset_place_holders = array(); | |
283 | + //Dataset id | |
284 | + $datasetId = $dataset_node->getAttribute("xml:id"); | |
285 | + //if ($datasetId != 'psp-het-1hr') | |
286 | + // continue; | |
287 | + if (empty($datasetId)) { | |
288 | + echo "[WARNING] Cannot retrieve dataset id".PHP_EOL; | |
289 | + continue; | |
290 | + } | |
291 | + $dataset_place_holders['dataset_id'] = $datasetId; | |
292 | + | |
293 | + //Exclude dataset with group | |
294 | + $to_exclude = FALSE; | |
295 | + $crt_node = $dataset_node; | |
296 | + while (($crt_node != NULL) && !$to_exclude) { | |
297 | + if ($crt_node->nodeType == XML_ELEMENT_NODE) { | |
298 | + $group = $crt_node->getAttribute("group"); | |
299 | + if (!empty($group)) { | |
300 | + $to_exclude = TRUE; | |
301 | + } | |
302 | + } | |
303 | + $crt_node = $crt_node->parentNode; | |
304 | + } | |
305 | + if ($to_exclude) { | |
306 | + echo "[WARNING] Exclude dataset ".$datasetId." (group restriction)".PHP_EOL; | |
307 | + continue; | |
308 | + } | |
309 | + | |
310 | + $UCDs = array(); | |
311 | + $parameter_nodes = $dataset_node->getElementsByTagName("parameter"); | |
312 | + foreach ($parameter_nodes as $parameter_node) { | |
313 | + $ucd = trim($parameter_node->getAttribute('ucd')); | |
314 | + if (empty($ucd)) | |
315 | + continue; | |
316 | + $ucd_list = explode(';', $ucd); | |
317 | + foreach ($ucd_list as $u) { | |
318 | + $u = trim($u); | |
319 | + if (empty($u)) | |
320 | + continue; | |
321 | + if (!in_array($u, $UCDs)) | |
322 | + $UCDs[] = $u; | |
323 | + } | |
324 | + } | |
325 | + | |
326 | + $dataset_place_holders['min_sampling'] = parseSampling($dataset_node->getAttribute("sampling")); | |
327 | + $dataset_place_holders['max_sampling'] = parseSampling($dataset_node->getAttribute("maxSampling")); | |
328 | + $dataset_place_holders['spase_resource_id'] = $dataset_node->getAttribute("spaseId"); | |
329 | + $dataset_place_holders['spase_measurement_type'] = $dataset_node->getAttribute("measurement_type"); | |
330 | + $dataset_place_holders['measurement_type'] = getEpnTapMeasurementType($dataset_place_holders['spase_measurement_type'], $UCDs); | |
331 | + $dataset_place_holders['processing_level'] = parseProcessingLevel($dataset_node->getAttribute("xml:id")); | |
332 | + $target = $dataset_node->getAttribute("target"); | |
333 | + | |
334 | + | |
335 | + $instrument_node = NULL; | |
336 | + $mission_node = NULL; | |
337 | + $observatory_node = NULL; | |
338 | + $dataset_group_node = NULL; | |
339 | + | |
340 | + $crt_node = $dataset_node; | |
341 | + while ($crt_node = $crt_node->parentNode) { | |
342 | + switch ($crt_node->nodeName) { | |
343 | + case 'instrument': | |
344 | + $instrument_node = $crt_node; | |
345 | + break; | |
346 | + case 'mission': | |
347 | + $mission_node = $crt_node; | |
348 | + break; | |
349 | + case 'observatory': | |
350 | + $observatory_node = $crt_node; | |
351 | + break; | |
352 | + case 'datasetGroup': | |
353 | + $dataset_group_node = $crt_node; | |
354 | + break; | |
355 | + } | |
356 | + } | |
357 | + | |
358 | + if (empty($instrument_node) || empty($mission_node)) { | |
359 | + echo "[ERROR] Cannot retrieve Mission or Instrument info for dataset ".$datasetId.PHP_EOL; | |
360 | + continue; | |
361 | + } | |
362 | + | |
363 | + $mission_name = $mission_node->getAttribute('name'); | |
364 | + $instrument_name = $instrument_node->getAttribute('name'); | |
365 | + if (empty($target)) { | |
366 | + $target = $instrument_node->getAttribute('target'); | |
367 | + if (empty($target)) { | |
368 | + if (!empty($observatory_node)) { | |
369 | + $target = $observatory_node->getAttribute('target'); | |
370 | + } | |
371 | + if (empty($target)) { | |
372 | + $target = $mission_node->getAttribute('target'); | |
373 | + } | |
374 | + } | |
375 | + } | |
376 | + if (empty($target)) { | |
377 | + echo "[WARNING] No target defined for ".$datasetId.PHP_EOL; | |
378 | + } | |
379 | + $dataset_place_holders['spase_region'] = $target; | |
380 | + $dataset_place_holders['target_class'] = getTargetClass($target); | |
381 | + $dataset_place_holders['target_name'] = getTargetName($dataset_place_holders['target_class'], $target, $mission_name, $datasetId); | |
382 | + $dataset_place_holders['target_region'] = getTargetRegion($dataset_place_holders['target_class'], $target); | |
383 | + if (!empty($observatory_node)) { | |
384 | + $mission_name = $observatory_node->getAttribute('name'); | |
385 | + } | |
386 | + $dataset_place_holders['mission_name'] = utf8_encode($mission_name); | |
387 | + $dataset_place_holders['instrument_name'] = preg_replace('/[^:\/\(\) \w-]/', ' ', $instrument_name); | |
388 | + if ($dataset_place_holders['instrument_name'] != $instrument_name) { | |
389 | + echo "=================> ".$dataset_place_holders['instrument_name'].PHP_EOL; | |
390 | + } | |
391 | + if (!empty($dataset_group_node)) { | |
392 | + if ($dataset_place_holders['processing_level'] == 'L2') { | |
393 | + $dataset_place_holders['processing_level'] = parseProcessingLevel($dataset_group_node->getAttribute("xml:id")); | |
394 | + } | |
395 | + } | |
396 | + | |
397 | + try { | |
398 | + $prior_id = trim($dataset_node->getAttribute('PriorID')); | |
399 | + if (!empty($prior_id)) { | |
400 | + $vi = str_replace("-","_",$prior_id); | |
401 | + } | |
402 | + else { | |
403 | + $vi = str_replace("-","_",$datasetId); | |
404 | + } | |
405 | + $res = $client->getGranules($vi); | |
406 | + } | |
407 | + catch (SoapFault $exception) { | |
408 | + echo "[ERROR] Cannot retrieve granules for ".$datasetId." - ".$exception->faultstring.PHP_EOL; | |
409 | + continue; | |
410 | + } | |
411 | + | |
412 | + if (empty($res)) { | |
413 | + echo "[ERROR] No granules for ".$datasetId.PHP_EOL; | |
414 | + continue; | |
415 | + } | |
416 | + | |
417 | + $granules = explode(PHP_EOL, $res); | |
418 | + foreach ($granules as $granule) { | |
419 | + $granule_info = explode(" ", $granule); | |
420 | + if (empty($granule_info) || (count($granule_info) != 4)) { | |
421 | + echo "[ERROR] Bad granule info in ".$datasetId.PHP_EOL; | |
422 | + continue; | |
423 | + } | |
424 | + $granule_place_holders['granule_index'] = str_replace(".nc", "", $granule_info[2]); | |
425 | + $granule_place_holders['granule_start_time'] = timestampToJulianDay($granule_info[0]); | |
426 | + $granule_place_holders['granule_stop_time'] = timestampToJulianDay($granule_info[1]); | |
427 | + $granule_place_holders['modification_date'] = timestampToISO($granule_info[3]); | |
428 | + $granule_place_holders['granule_start_time_timestamp'] = $granule_info[0]; | |
429 | + $granule_place_holders['granule_stop_time_timestamp'] = $granule_info[1]; | |
430 | + $granule_place_holders['creation_date'] = $granule_place_holders['modification_date']; | |
431 | + $granule_place_holders['release_date'] = $granule_place_holders['modification_date']; | |
432 | + | |
433 | + $fields = array_values($mapping); | |
434 | + $all_place_holders = $amda_place_holders + $dataset_place_holders + $granule_place_holders; | |
435 | + foreach ($all_place_holders as $place_holder => $value) { | |
436 | + foreach ($fields as &$field) { | |
437 | + $field = str_replace('@@'.$place_holder.'@@', $value, $field); | |
438 | + } | |
439 | + } | |
440 | + fputcsv($output_file_handle, $fields); | |
441 | + } | |
442 | +} | |
443 | + | |
444 | +fclose($output_file_handle); | |
445 | +?> | |
... | ... |
update_amda/mvTemplates.php
... | ... | @@ -45,5 +45,18 @@ |
45 | 45 | $to = "$PARAMTEMPLATEDIR/$fileName.xml"; |
46 | 46 | copy($from,$to); |
47 | 47 | } |
48 | + // for predefined params | |
49 | + $predefinedNodes = $template->getElementsByTagName('predefined'); | |
50 | + if ($predefinedNodes->length > 0) { | |
51 | + $paramPredefinedNodes = $predefinedNodes->item(0)->getElementsByTagName('param'); | |
52 | + if ($paramPredefinedNodes->length > 0) { | |
53 | + if (file_exists("$AMDAINTERNALDIR/PARAM_DEF/$paramId.xml")) { | |
54 | + echo "Template ".$paramId.PHP_EOL; | |
55 | + $from = "$AMDAINTERNALDIR/PARAM_DEF/$paramId.xml"; | |
56 | + $to = "$PARAMTEMPLATEDIR/$fileName.xml"; | |
57 | + copy($from,$to); | |
58 | + } | |
59 | + } | |
60 | + } | |
48 | 61 | } |
49 | 62 | ?> |
... | ... |