mageo 0.0.0 → 0.0.1

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.
@@ -6,142 +6,141 @@ require 'mageo/vector3d.rb'
6
6
  require 'mageo/vector3dinternal.rb'
7
7
 
8
8
  class TC_Array < Test::Unit::TestCase
9
- $tolerance = 10.0**(-10)
10
-
11
- def setup
12
- @a = [1.0, 2.0, 3.0]
13
- end
14
-
15
- def test_to_v3di
16
- assert_equal( Vector3DInternal, @a.to_v3di.class )
17
- assert_in_delta( 1.0, @a.to_v3di[0], $tolerance )
18
- assert_in_delta( 2.0, @a.to_v3di[1], $tolerance )
19
- assert_in_delta( 3.0, @a.to_v3di[2], $tolerance )
20
- assert_raise( Vector3DInternal::RangeError ){ [1.0].to_v3di }
21
- assert_raise( Vector3DInternal::RangeError ){ [0.0, 1.0, 2.0, 3.0].to_v3di }
22
- end
23
-
9
+ $tolerance = 10.0**(-10)
10
+
11
+ def setup
12
+ @a = [1.0, 2.0, 3.0]
13
+ end
14
+
15
+ def test_to_v3di
16
+ assert_equal( Vector3DInternal, @a.to_v3di.class )
17
+ assert_in_delta( 1.0, @a.to_v3di[0], $tolerance )
18
+ assert_in_delta( 2.0, @a.to_v3di[1], $tolerance )
19
+ assert_in_delta( 3.0, @a.to_v3di[2], $tolerance )
20
+ assert_raise( Vector3DInternal::RangeError ){ [1.0].to_v3di }
21
+ assert_raise( Vector3DInternal::RangeError ){ [0.0, 1.0, 2.0, 3.0].to_v3di }
22
+ end
24
23
  end
25
24
 
26
25
  class TC_Vector3DInternal < Test::Unit::TestCase
27
- $tolerance = 10.0**(-10)
28
- include Math
29
-
30
- def setup
31
- @v0 = Vector3DInternal[1.0, 2.0, 3.0]
32
- @v1 = Vector3DInternal[2.0, 4.0, 6.0]
33
- end
34
-
35
- def test_size
36
- assert_equal( 3, @v0.size )
37
- assert_equal( 3, @v1.size )
38
- end
39
-
40
- def test_to_v3di
41
- assert_equal( @v0, @v0.to_v3di )
42
- assert_equal( @v1, @v1.to_v3di )
43
- end
44
-
45
- def test_equal
46
- assert_equal( true , @v0 == Vector3DInternal[1.0, 2.0, 3.0] )
47
- assert_equal( true , @v1 == Vector3DInternal[2.0, 4.0, 6.0] )
48
- assert_equal( false, @v0 == Vector3DInternal[2.0, 4.0, 6.0] )
49
- assert_equal( false, @v1 == Vector3DInternal[1.0, 2.0, 3.0] )
50
- end
51
-
52
- def test_class
53
- assert_equal( Vector3DInternal, @v0.class )
54
- assert_equal( Vector3DInternal, ( @v0 * 3.0 ).class )
55
- assert_equal( Vector3DInternal, ( @v0 + @v1 ).class )
56
- assert_equal( Vector3DInternal, ( @v0 - @v1 ).class )
57
- #assert_equal( Vector3DInternal, @v0.clone.class )
58
- #assert_equal( Vector3DInternal, @v0.dup.class )
59
- end
60
-
61
- def test_access
62
- assert_equal( 1.0, @v0[0] )
63
- assert_equal( 2.0, @v0[1] )
64
- assert_equal( 3.0, @v0[2] )
65
- assert_raise( Vector3DInternal::RangeError ){ @v0[3] }
66
- assert_raise( Vector3DInternal::RangeError ){ @v0[-1] }
67
-
68
- @v0[0] = 0.0
69
- @v0[1] = 0.0
70
- @v0[2] = 0.0
71
- assert_equal( 0.0, @v0[0] )
72
- assert_equal( 0.0, @v0[1] )
73
- assert_equal( 0.0, @v0[2] )
74
- assert_raise( Vector3DInternal::RangeError ){ @v0[3] = 0.0 }
75
- assert_raise( Vector3DInternal::RangeError ){ @v0[-1] = 0.0 }
76
- end
77
-
78
- def test_plus
79
- assert_raise(Vector3DInternal::TypeError){ @v0 + [0.1, 0.2, 0.3] }
80
- assert_raise(Vector3DInternal::TypeError){ @v0 + Vector[0.1, 0.2, 0.3] }
81
- assert_raise(Vector3DInternal::TypeError){ @v0 + Vector3D[0.1, 0.2, 0.3] }
82
-
83
- t = @v0 + Vector3DInternal[0.1, 0.2, 0.3]
84
- assert_in_delta( 1.1, t[0], $tolerance )
85
- assert_in_delta( 2.2, t[1], $tolerance )
86
- assert_in_delta( 3.3, t[2], $tolerance )
87
- end
88
-
89
- def test_minus
90
- assert_raise(Vector3DInternal::TypeError){ @v0 - [0.1, 0.2, 0.3] }
91
- assert_raise(Vector3DInternal::TypeError){ @v0 - Vector[0.1, 0.2, 0.3] }
92
- assert_raise(Vector3DInternal::TypeError){ @v0 - Vector3D[0.3, 0.2, 0.3] }
93
-
94
- t = @v0 - Vector3DInternal[0.1, 0.2, 0.3]
95
- assert_in_delta( 0.9, t[0], $tolerance )
96
- assert_in_delta( 1.8, t[1], $tolerance )
97
- assert_in_delta( 2.7, t[2], $tolerance )
98
- end
99
-
100
- def test_multiply
101
- t = @v0 * 2
102
- assert_in_delta( 2.0, t[0], $tolerance )
103
- assert_in_delta( 4.0, t[1], $tolerance )
104
- assert_in_delta( 6.0, t[2], $tolerance )
105
-
106
- t = @v0 * 3.0
107
- assert_in_delta( 3.0, t[0], $tolerance )
108
- assert_in_delta( 6.0, t[1], $tolerance )
109
- assert_in_delta( 9.0, t[2], $tolerance )
110
-
111
- end
112
-
113
- #def test_equal
114
- # assert_equal( )
115
- #end
116
-
117
- def test_to_a
118
- assert_equal( [1.0, 2.0, 3.0], @v0.to_a )
119
- assert_equal( [2.0, 4.0, 6.0], @v1.to_a )
120
- end
121
-
122
- def test_to_v3d
123
- t = Vector3DInternal[ 2.0, 3.0, 4.0 ].to_v3d( [ [1.0, 1.0, 1.0], [0.0, 1.0, 1.0], [0.0, 0.0, 1.0] ] )
124
- assert_in_delta( 2.0, t[0], $tolerance )
125
- assert_in_delta( 5.0, t[1], $tolerance )
126
- assert_in_delta( 9.0, t[2], $tolerance )
127
-
128
- t = Vector3DInternal[ 2.0, 3.0, 4.0 ].to_v3d(
129
- [ Vector3D[1.0, 1.0, 1.0], Vector3D[0.0, 1.0, 1.0], Vector3D[0.0, 0.0, 1.0] ]
130
- )
131
- assert_in_delta( 2.0, t[0], $tolerance )
132
- assert_in_delta( 5.0, t[1], $tolerance )
133
- assert_in_delta( 9.0, t[2], $tolerance )
134
- end
135
-
136
- def test_each
137
- i = 0
138
- @v0.each { |coord|
139
- assert_equal( @v0[i], coord )
140
- i += 1
141
- }
142
-
143
- # map method.
144
- assert_equal( @v0 * 2.0, @v0.map { |coord| coord * 2.0 } )
145
- end
26
+ $tolerance = 10.0**(-10)
27
+ include Math
28
+
29
+ def setup
30
+ @v0 = Vector3DInternal[1.0, 2.0, 3.0]
31
+ @v1 = Vector3DInternal[2.0, 4.0, 6.0]
32
+ end
33
+
34
+ def test_size
35
+ assert_equal( 3, @v0.size )
36
+ assert_equal( 3, @v1.size )
37
+ end
38
+
39
+ def test_to_v3di
40
+ assert_equal( @v0, @v0.to_v3di )
41
+ assert_equal( @v1, @v1.to_v3di )
42
+ end
43
+
44
+ def test_equal
45
+ assert_equal( true , @v0 == Vector3DInternal[1.0, 2.0, 3.0] )
46
+ assert_equal( true , @v1 == Vector3DInternal[2.0, 4.0, 6.0] )
47
+ assert_equal( false, @v0 == Vector3DInternal[2.0, 4.0, 6.0] )
48
+ assert_equal( false, @v1 == Vector3DInternal[1.0, 2.0, 3.0] )
49
+ end
50
+
51
+ def test_class
52
+ assert_equal( Vector3DInternal, @v0.class )
53
+ assert_equal( Vector3DInternal, ( @v0 * 3.0 ).class )
54
+ assert_equal( Vector3DInternal, ( @v0 + @v1 ).class )
55
+ assert_equal( Vector3DInternal, ( @v0 - @v1 ).class )
56
+ #assert_equal( Vector3DInternal, @v0.clone.class )
57
+ #assert_equal( Vector3DInternal, @v0.dup.class )
58
+ end
59
+
60
+ def test_access
61
+ assert_equal( 1.0, @v0[0] )
62
+ assert_equal( 2.0, @v0[1] )
63
+ assert_equal( 3.0, @v0[2] )
64
+ assert_raise( Vector3DInternal::RangeError ){ @v0[3] }
65
+ assert_raise( Vector3DInternal::RangeError ){ @v0[-1] }
66
+
67
+ @v0[0] = 0.0
68
+ @v0[1] = 0.0
69
+ @v0[2] = 0.0
70
+ assert_equal( 0.0, @v0[0] )
71
+ assert_equal( 0.0, @v0[1] )
72
+ assert_equal( 0.0, @v0[2] )
73
+ assert_raise( Vector3DInternal::RangeError ){ @v0[3] = 0.0 }
74
+ assert_raise( Vector3DInternal::RangeError ){ @v0[-1] = 0.0 }
75
+ end
76
+
77
+ def test_plus
78
+ assert_raise(Vector3DInternal::TypeError){ @v0 + [0.1, 0.2, 0.3] }
79
+ assert_raise(Vector3DInternal::TypeError){ @v0 + Vector[0.1, 0.2, 0.3] }
80
+ assert_raise(Vector3DInternal::TypeError){ @v0 + Vector3D[0.1, 0.2, 0.3] }
81
+
82
+ t = @v0 + Vector3DInternal[0.1, 0.2, 0.3]
83
+ assert_in_delta( 1.1, t[0], $tolerance )
84
+ assert_in_delta( 2.2, t[1], $tolerance )
85
+ assert_in_delta( 3.3, t[2], $tolerance )
86
+ end
87
+
88
+ def test_minus
89
+ assert_raise(Vector3DInternal::TypeError){ @v0 - [0.1, 0.2, 0.3] }
90
+ assert_raise(Vector3DInternal::TypeError){ @v0 - Vector[0.1, 0.2, 0.3] }
91
+ assert_raise(Vector3DInternal::TypeError){ @v0 - Vector3D[0.3, 0.2, 0.3] }
92
+
93
+ t = @v0 - Vector3DInternal[0.1, 0.2, 0.3]
94
+ assert_in_delta( 0.9, t[0], $tolerance )
95
+ assert_in_delta( 1.8, t[1], $tolerance )
96
+ assert_in_delta( 2.7, t[2], $tolerance )
97
+ end
98
+
99
+ def test_multiply
100
+ t = @v0 * 2
101
+ assert_in_delta( 2.0, t[0], $tolerance )
102
+ assert_in_delta( 4.0, t[1], $tolerance )
103
+ assert_in_delta( 6.0, t[2], $tolerance )
104
+
105
+ t = @v0 * 3.0
106
+ assert_in_delta( 3.0, t[0], $tolerance )
107
+ assert_in_delta( 6.0, t[1], $tolerance )
108
+ assert_in_delta( 9.0, t[2], $tolerance )
109
+
110
+ end
111
+
112
+ #def test_equal
113
+ # assert_equal( )
114
+ #end
115
+
116
+ def test_to_a
117
+ assert_equal( [1.0, 2.0, 3.0], @v0.to_a )
118
+ assert_equal( [2.0, 4.0, 6.0], @v1.to_a )
119
+ end
120
+
121
+ def test_to_v3d
122
+ t = Vector3DInternal[ 2.0, 3.0, 4.0 ].to_v3d( [ [1.0, 1.0, 1.0], [0.0, 1.0, 1.0], [0.0, 0.0, 1.0] ] )
123
+ assert_in_delta( 2.0, t[0], $tolerance )
124
+ assert_in_delta( 5.0, t[1], $tolerance )
125
+ assert_in_delta( 9.0, t[2], $tolerance )
126
+
127
+ t = Vector3DInternal[ 2.0, 3.0, 4.0 ].to_v3d(
128
+ [ Vector3D[1.0, 1.0, 1.0], Vector3D[0.0, 1.0, 1.0], Vector3D[0.0, 0.0, 1.0] ]
129
+ )
130
+ assert_in_delta( 2.0, t[0], $tolerance )
131
+ assert_in_delta( 5.0, t[1], $tolerance )
132
+ assert_in_delta( 9.0, t[2], $tolerance )
133
+ end
134
+
135
+ def test_each
136
+ i = 0
137
+ @v0.each { |coord|
138
+ assert_equal( @v0[i], coord )
139
+ i += 1
140
+ }
141
+
142
+ # map method.
143
+ assert_equal( @v0 * 2.0, @v0.map { |coord| coord * 2.0 } )
144
+ end
146
145
  end
147
146
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mageo
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.0
4
+ version: 0.0.1
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,43 +9,33 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-04-04 00:00:00.000000000 Z
12
+ date: 2013-02-02 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
- name: rdoc
16
- requirement: !ruby/object:Gem::Requirement
15
+ name: builtinextension
16
+ requirement: &81653590 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
- - - ~>
19
+ - - ! '>='
20
20
  - !ruby/object:Gem::Version
21
- version: '3.12'
21
+ version: '0'
22
22
  type: :development
23
23
  prerelease: false
24
- version_requirements: !ruby/object:Gem::Requirement
25
- none: false
26
- requirements:
27
- - - ~>
28
- - !ruby/object:Gem::Version
29
- version: '3.12'
24
+ version_requirements: *81653590
30
25
  - !ruby/object:Gem::Dependency
31
26
  name: bundler
32
- requirement: !ruby/object:Gem::Requirement
27
+ requirement: &81653320 !ruby/object:Gem::Requirement
33
28
  none: false
34
29
  requirements:
35
30
  - - ~>
36
31
  - !ruby/object:Gem::Version
37
- version: 1.1.3
32
+ version: 1.2.2
38
33
  type: :development
39
34
  prerelease: false
40
- version_requirements: !ruby/object:Gem::Requirement
41
- none: false
42
- requirements:
43
- - - ~>
44
- - !ruby/object:Gem::Version
45
- version: 1.1.3
35
+ version_requirements: *81653320
46
36
  - !ruby/object:Gem::Dependency
47
37
  name: jeweler
48
- requirement: !ruby/object:Gem::Requirement
38
+ requirement: &81653060 !ruby/object:Gem::Requirement
49
39
  none: false
50
40
  requirements:
51
41
  - - ~>
@@ -53,31 +43,21 @@ dependencies:
53
43
  version: 1.8.3
54
44
  type: :development
55
45
  prerelease: false
56
- version_requirements: !ruby/object:Gem::Requirement
57
- none: false
58
- requirements:
59
- - - ~>
60
- - !ruby/object:Gem::Version
61
- version: 1.8.3
46
+ version_requirements: *81653060
62
47
  - !ruby/object:Gem::Dependency
63
- name: simplecov
64
- requirement: !ruby/object:Gem::Requirement
48
+ name: malge
49
+ requirement: &81652730 !ruby/object:Gem::Requirement
65
50
  none: false
66
51
  requirements:
67
52
  - - ! '>='
68
53
  - !ruby/object:Gem::Version
69
- version: '0'
54
+ version: 0.0.2
70
55
  type: :development
71
56
  prerelease: false
72
- version_requirements: !ruby/object:Gem::Requirement
73
- none: false
74
- requirements:
75
- - - ! '>='
76
- - !ruby/object:Gem::Version
77
- version: '0'
57
+ version_requirements: *81652730
78
58
  - !ruby/object:Gem::Dependency
79
- name: builtinextension
80
- requirement: !ruby/object:Gem::Requirement
59
+ name: psych
60
+ requirement: &81652460 !ruby/object:Gem::Requirement
81
61
  none: false
82
62
  requirements:
83
63
  - - ! '>='
@@ -85,28 +65,29 @@ dependencies:
85
65
  version: '0'
86
66
  type: :development
87
67
  prerelease: false
88
- version_requirements: !ruby/object:Gem::Requirement
89
- none: false
90
- requirements:
91
- - - ! '>='
92
- - !ruby/object:Gem::Version
93
- version: '0'
68
+ version_requirements: *81652460
94
69
  - !ruby/object:Gem::Dependency
95
- name: malge
96
- requirement: !ruby/object:Gem::Requirement
70
+ name: rdoc
71
+ requirement: &81652220 !ruby/object:Gem::Requirement
97
72
  none: false
98
73
  requirements:
99
- - - ! '>='
74
+ - - ~>
100
75
  - !ruby/object:Gem::Version
101
- version: 0.0.1
76
+ version: '3.12'
102
77
  type: :development
103
78
  prerelease: false
104
- version_requirements: !ruby/object:Gem::Requirement
79
+ version_requirements: *81652220
80
+ - !ruby/object:Gem::Dependency
81
+ name: simplecov
82
+ requirement: &81651980 !ruby/object:Gem::Requirement
105
83
  none: false
106
84
  requirements:
107
85
  - - ! '>='
108
86
  - !ruby/object:Gem::Version
109
- version: 0.0.1
87
+ version: '0'
88
+ type: :development
89
+ prerelease: false
90
+ version_requirements: *81651980
110
91
  description: ! "MAth GEOmetry library to deal with 2 and 3 dimension space.\n Cartesian
111
92
  and internal coordinate systems can be used.\n This includes besic objects in
112
93
  3 dimensional space.\n "
@@ -118,6 +99,7 @@ extra_rdoc_files:
118
99
  - README.rdoc
119
100
  files:
120
101
  - .document
102
+ - CHANGES
121
103
  - Gemfile
122
104
  - LICENSE.txt
123
105
  - README.rdoc
@@ -167,7 +149,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
167
149
  version: '0'
168
150
  segments:
169
151
  - 0
170
- hash: -984763203
152
+ hash: -292765907
171
153
  required_rubygems_version: !ruby/object:Gem::Requirement
172
154
  none: false
173
155
  requirements:
@@ -176,7 +158,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
176
158
  version: '0'
177
159
  requirements: []
178
160
  rubyforge_project:
179
- rubygems_version: 1.8.21
161
+ rubygems_version: 1.8.11
180
162
  signing_key:
181
163
  specification_version: 3
182
164
  summary: MAth GEOmetry library to deal with 2 and 3 dimension space.