ctioga2 0.4 → 0.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (43) hide show
  1. data/Changelog +16 -0
  2. data/lib/ctioga2/commands/arguments.rb +5 -2
  3. data/lib/ctioga2/commands/commands.rb +45 -13
  4. data/lib/ctioga2/commands/context.rb +9 -1
  5. data/lib/ctioga2/commands/doc/help.rb +2 -2
  6. data/lib/ctioga2/commands/doc/html.rb +8 -8
  7. data/lib/ctioga2/commands/doc/introspection.rb +7 -5
  8. data/lib/ctioga2/commands/parsers/file.rb +123 -120
  9. data/lib/ctioga2/commands/parsers/old-file.rb +191 -0
  10. data/lib/ctioga2/commands/strings.rb +2 -2
  11. data/lib/ctioga2/data/datacolumn.rb +5 -2
  12. data/lib/ctioga2/data/dataset.rb +3 -13
  13. data/lib/ctioga2/data/indexed-dtable.rb +43 -11
  14. data/lib/ctioga2/data/stack.rb +65 -8
  15. data/lib/ctioga2/graphics/elements.rb +2 -1
  16. data/lib/ctioga2/graphics/elements/containers.rb +22 -3
  17. data/lib/ctioga2/graphics/elements/primitive.rb +5 -5
  18. data/lib/ctioga2/graphics/elements/xyz-contour.rb +123 -0
  19. data/lib/ctioga2/graphics/generator.rb +31 -5
  20. data/lib/ctioga2/graphics/legends.rb +44 -3
  21. data/lib/ctioga2/graphics/legends/area.rb +28 -9
  22. data/lib/ctioga2/graphics/legends/items.rb +34 -23
  23. data/lib/ctioga2/graphics/legends/multicols.rb +132 -0
  24. data/lib/ctioga2/graphics/styles.rb +3 -1
  25. data/lib/ctioga2/graphics/styles/axes.rb +10 -4
  26. data/lib/ctioga2/graphics/styles/base.rb +65 -11
  27. data/lib/ctioga2/graphics/styles/colormap.rb +2 -1
  28. data/lib/ctioga2/graphics/styles/contour.rb +141 -0
  29. data/lib/ctioga2/graphics/styles/curve.rb +49 -67
  30. data/lib/ctioga2/graphics/styles/drawable.rb +17 -8
  31. data/lib/ctioga2/graphics/styles/factory.rb +79 -38
  32. data/lib/ctioga2/graphics/styles/legend.rb +49 -6
  33. data/lib/ctioga2/graphics/styles/plot.rb +10 -9
  34. data/lib/ctioga2/graphics/styles/sheet.rb +11 -11
  35. data/lib/ctioga2/graphics/styles/texts.rb +38 -9
  36. data/lib/ctioga2/graphics/types.rb +20 -1
  37. data/lib/ctioga2/graphics/types/dimensions.rb +7 -1
  38. data/lib/ctioga2/metabuilder/types/lists.rb +4 -4
  39. data/lib/ctioga2/metabuilder/types/numbers.rb +3 -3
  40. data/lib/ctioga2/metabuilder/types/styles.rb +2 -2
  41. data/lib/ctioga2/plotmaker.rb +12 -1
  42. data/lib/ctioga2/utils.rb +27 -3
  43. metadata +8 -4
data/lib/ctioga2/utils.rb CHANGED
@@ -34,7 +34,7 @@ module CTioga2
34
34
  # arguments and have the Date and Revision svn:keyword:. Use this
35
35
  # way:
36
36
  #
37
- # Version::register_svn_info('$Revision: 354 $', '$Date: 2012-12-25 23:39:59 +0100 (Tue, 25 Dec 2012) $')
37
+ # Version::register_svn_info('$Revision: 424 $', '$Date: 2013-08-23 10:16:34 +0200 (Fri, 23 Aug 2013) $')
38
38
  #
39
39
  # To set the correct properties, the following command-line can be
40
40
  # used:
@@ -74,7 +74,7 @@ module CTioga2
74
74
  }
75
75
 
76
76
  # The position of the URL, used for getting the version
77
- SVN_URL = '$HeadURL: svn+ssh://rubyforge.org/var/svn/ctioga2/releases/ctioga2-0.4/lib/ctioga2/utils.rb $'
77
+ SVN_URL = '$HeadURL: svn+ssh://rubyforge.org/var/svn/ctioga2/releases/ctioga2-0.5/lib/ctioga2/utils.rb $'
78
78
 
79
79
  # The version of ctioga2
80
80
  CTIOGA_VERSION = if SVN_URL =~ /releases\/ctioga2-([^\/]+)/
@@ -83,7 +83,7 @@ module CTioga2
83
83
  "SVN version"
84
84
  end
85
85
 
86
- register_svn_info('$Revision: 354 $', '$Date: 2012-12-25 23:39:59 +0100 (Tue, 25 Dec 2012) $')
86
+ register_svn_info('$Revision: 424 $', '$Date: 2013-08-23 10:16:34 +0200 (Fri, 23 Aug 2013) $')
87
87
 
88
88
  end
89
89
 
@@ -161,6 +161,30 @@ module CTioga2
161
161
  end
162
162
  return formula
163
163
  end
164
+
165
+ NaturalSubdivisions = [1.0, 2.0, 5.0, 10.0]
166
+
167
+ # Returns the closest element of the correct power of ten of
168
+ # NaturalSubdivisions above or below the given number
169
+ def self.closest_subdivision(x, below = true)
170
+ fact = 10**(Math.log10(x).floor)
171
+
172
+ normed_x = x/fact
173
+ (NaturalSubdivisions.size()-1).times do |i|
174
+ if normed_x == NaturalSubdivisions[i]
175
+ return x
176
+ end
177
+ if (normed_x > NaturalSubdivisions[i]) &&
178
+ (normed_x < NaturalSubdivisions[i+1])
179
+ if below
180
+ return NaturalSubdivisions[i]*fact
181
+ else
182
+ return NaturalSubdivisions[i+1]*fact
183
+ end
184
+ end
185
+ end
186
+ raise "Should not reach this !"
187
+ end
164
188
 
165
189
 
166
190
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ctioga2
3
3
  version: !ruby/object:Gem::Version
4
- version: '0.4'
4
+ version: '0.5'
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-12-29 00:00:00.000000000 Z
12
+ date: 2013-08-26 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: tioga
@@ -18,7 +18,7 @@ dependencies:
18
18
  requirements:
19
19
  - - ! '>='
20
20
  - !ruby/object:Gem::Version
21
- version: '1.15'
21
+ version: '1.16'
22
22
  type: :runtime
23
23
  prerelease: false
24
24
  version_requirements: !ruby/object:Gem::Requirement
@@ -26,7 +26,7 @@ dependencies:
26
26
  requirements:
27
27
  - - ! '>='
28
28
  - !ruby/object:Gem::Version
29
- version: '1.15'
29
+ version: '1.16'
30
30
  description: ! 'ctioga2 is a command-driven plotting program that produces
31
31
 
32
32
  high quality PDF files. It can be used both from the command-line
@@ -75,6 +75,7 @@ files:
75
75
  - lib/ctioga2/commands/variables.rb
76
76
  - lib/ctioga2/commands/parsers/file.rb
77
77
  - lib/ctioga2/commands/parsers/command-line.rb
78
+ - lib/ctioga2/commands/parsers/old-file.rb
78
79
  - lib/ctioga2/commands/context.rb
79
80
  - lib/ctioga2/commands/groups.rb
80
81
  - lib/ctioga2/commands/interpreter.rb
@@ -96,6 +97,7 @@ files:
96
97
  - lib/ctioga2/graphics/styles/base.rb
97
98
  - lib/ctioga2/graphics/styles/sets.rb
98
99
  - lib/ctioga2/graphics/styles/plot.rb
100
+ - lib/ctioga2/graphics/styles/contour.rb
99
101
  - lib/ctioga2/graphics/styles/colormap.rb
100
102
  - lib/ctioga2/graphics/styles/texts.rb
101
103
  - lib/ctioga2/graphics/styles/legend.rb
@@ -105,6 +107,7 @@ files:
105
107
  - lib/ctioga2/graphics/legends/area.rb
106
108
  - lib/ctioga2/graphics/legends/items.rb
107
109
  - lib/ctioga2/graphics/legends/storage.rb
110
+ - lib/ctioga2/graphics/legends/multicols.rb
108
111
  - lib/ctioga2/graphics/legends/provider.rb
109
112
  - lib/ctioga2/graphics/types.rb
110
113
  - lib/ctioga2/graphics/elements/subplot.rb
@@ -115,6 +118,7 @@ files:
115
118
  - lib/ctioga2/graphics/elements/curve2d.rb
116
119
  - lib/ctioga2/graphics/elements/containers.rb
117
120
  - lib/ctioga2/graphics/elements/tangent.rb
121
+ - lib/ctioga2/graphics/elements/xyz-contour.rb
118
122
  - lib/ctioga2/graphics/elements/xyz-map.rb
119
123
  - lib/ctioga2/graphics/elements/contour.rb
120
124
  - lib/ctioga2/graphics/elements/gradient-region.rb