rmath3d 1.0.1 → 1.0.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 9a700202c9e7eef16d28ce463264f47a59ba3faf
4
- data.tar.gz: d49ce789c770777cf1e326d1e32c50c0d50d8b80
3
+ metadata.gz: 2fa4b132536ee9bcbe0c7da9e51fe53bd566010e
4
+ data.tar.gz: 17eee04a0ac050c85fbc1953d7302ff7f41e1d06
5
5
  SHA512:
6
- metadata.gz: 62d369ef680312199f91933deaea5f6aea82512ed7c075debd74bfa18fd027d2324dc878f29a77cf7f2fc8fa553510999479fbc5d3a98ad01cf64cbff169b1d5
7
- data.tar.gz: 77bf3ebfe50445d49c5cfb6108b2e034a4bcbc414f2aa2ad2ed43c62a918d162697d453af602fb0033e445af1dbf13ba3d364a2261fced89b17e9efffe0cd3ca
6
+ metadata.gz: 9bfefb8f3a0a41f88c8e25fa3074d1b45a05a2be87085c6759029b7566362188c65d41261254b7afacaab22c1fdc221b2e50bccac6097ca36e2e42089cc167d6
7
+ data.tar.gz: ac604ce99ae372569cdf291ae09166dc4c67f8d9e86f970bfe6da7b2967ebe6e57ac652dcd0f1a07f222d9801a348df8d5372c6dc5d6d395ea291dfc9d08ec5c
data/ChangeLog CHANGED
@@ -1,3 +1,11 @@
1
+ 2014-05-17 vaiorabbit <http://twitter.com/vaiorabbit>
2
+
3
+ * ext/rmath3d/rmath3d.c: Fixed memory management
4
+
5
+ 2013-10-26 vaiorabbit <http://twitter.com/vaiorabbit>
6
+
7
+ * rmath3d_plain.gemspec: Packs pure ruby implementation into 'rmath3d_plain-X.Y.Z.gem'.
8
+
1
9
  2013-09-21 vaiorabbit <http://twitter.com/vaiorabbit>
2
10
 
3
11
  * README.txt: Updated tested environment and information about building native extension.
data/LICENSE.txt CHANGED
@@ -1,5 +1,5 @@
1
1
  rmath3d : Ruby math module for 3D Applications
2
- Copyright (c) 2008- vaiorabbit <http://twitter.com/vaiorabbit>
2
+ Copyright (c) 2008-2014 vaiorabbit <http://twitter.com/vaiorabbit>
3
3
 
4
4
  This software is provided 'as-is', without any express or implied
5
5
  warranty. In no event will the authors be held liable for any damages
data/README.md CHANGED
@@ -4,7 +4,7 @@
4
4
 
5
5
  rmath3d is a math module for 3D game programming and computer graphics.
6
6
 
7
- * Last Update: Sep 21, 2013
7
+ * Last Update: May 17, 2014
8
8
  * Since: Jul 20, 2008
9
9
 
10
10
  ## Features ##
@@ -36,9 +36,13 @@ Notice: This library provides native extension. You must setup develop environme
36
36
 
37
37
  ## Building rmath3d.{so|bundle} ##
38
38
 
39
- Via RubyGems ( https://rubygems.org/gems/opengl-bindings ):
39
+ Via RubyGems ( https://rubygems.org/gems/rmath3d ):
40
40
 
41
- $ gem install opengl-bindings
41
+ $ gem install rmath3d
42
+
43
+ for pure ruby version:
44
+
45
+ $ gem install rmath3d_plain
42
46
 
43
47
  ### From source package ###
44
48
 
@@ -163,7 +167,7 @@ Currently, there is no combenient way to convert between matrix.rb's
163
167
  ## Information ##
164
168
 
165
169
  * RubyGems
166
- * https://rubygems.org/gems/opengl-bindings
170
+ * https://rubygems.org/gems/rmath3d
167
171
  * Github
168
172
  * https://github.com/vaiorabbit/rmath3d
169
173
 
File without changes
data/ext/rmath3d/RType.h CHANGED
File without changes
@@ -73,6 +73,12 @@ static VALUE RVec4_from_source( RVec4* src );
73
73
  * * elements are stored in column-major order.
74
74
  */
75
75
 
76
+ static void
77
+ RMtx3_free( void* ptr )
78
+ {
79
+ xfree( ptr );
80
+ }
81
+
76
82
  static VALUE
77
83
  RMtx3_from_source( RMtx3* src )
78
84
  {
@@ -80,7 +86,7 @@ RMtx3_from_source( RMtx3* src )
80
86
 
81
87
  RMtx3Copy( v, src );
82
88
 
83
- return Data_Wrap_Struct( rb_cRMtx3, 0, -1, v );
89
+ return Data_Wrap_Struct( rb_cRMtx3, NULL, RMtx3_free, v );
84
90
  }
85
91
 
86
92
 
@@ -91,7 +97,7 @@ RMtx3_allocate( VALUE klass )
91
97
 
92
98
  memset( v, 0, sizeof(RMtx3) );
93
99
 
94
- return Data_Wrap_Struct( klass, 0, -1, v );
100
+ return Data_Wrap_Struct( klass, NULL, RMtx3_free, v );
95
101
  }
96
102
 
97
103
 
@@ -1190,6 +1196,12 @@ RMtx3_op_assign_mult( VALUE self, VALUE other )
1190
1196
  * * elements are stored in column-major order.
1191
1197
  */
1192
1198
 
1199
+ static void
1200
+ RMtx4_free( void* ptr )
1201
+ {
1202
+ xfree( ptr );
1203
+ }
1204
+
1193
1205
  static VALUE
1194
1206
  RMtx4_from_source( RMtx4* src )
1195
1207
  {
@@ -1197,7 +1209,7 @@ RMtx4_from_source( RMtx4* src )
1197
1209
 
1198
1210
  RMtx4Copy( v, src );
1199
1211
 
1200
- return Data_Wrap_Struct( rb_cRMtx4, 0, -1, v );
1212
+ return Data_Wrap_Struct( rb_cRMtx4, NULL, RMtx4_free, v );
1201
1213
  }
1202
1214
 
1203
1215
 
@@ -1208,7 +1220,7 @@ RMtx4_allocate( VALUE klass )
1208
1220
 
1209
1221
  memset( v, 0, sizeof(RMtx4) );
1210
1222
 
1211
- return Data_Wrap_Struct( klass, 0, -1, v );
1223
+ return Data_Wrap_Struct( klass, NULL, RMtx4_free, v );
1212
1224
  }
1213
1225
 
1214
1226
 
@@ -2735,6 +2747,12 @@ RMtx4_op_assign_mult( VALUE self, VALUE other )
2735
2747
  * provies quaternion arithmetic.
2736
2748
  */
2737
2749
 
2750
+ static void
2751
+ RQuat_free( void* ptr )
2752
+ {
2753
+ xfree( ptr );
2754
+ }
2755
+
2738
2756
  static VALUE
2739
2757
  RQuat_from_source( RQuat* src )
2740
2758
  {
@@ -2742,7 +2760,7 @@ RQuat_from_source( RQuat* src )
2742
2760
 
2743
2761
  RQuatCopy( v, src );
2744
2762
 
2745
- return Data_Wrap_Struct( rb_cRQuat, 0, -1, v );
2763
+ return Data_Wrap_Struct( rb_cRQuat, NULL, RQuat_free, v );
2746
2764
  }
2747
2765
 
2748
2766
 
@@ -2753,7 +2771,7 @@ RQuat_allocate( VALUE klass )
2753
2771
 
2754
2772
  memset( v, 0, sizeof(RQuat) );
2755
2773
 
2756
- return Data_Wrap_Struct( klass, 0, -1, v );
2774
+ return Data_Wrap_Struct( klass, NULL, RQuat_free, v );
2757
2775
  }
2758
2776
 
2759
2777
 
@@ -3732,6 +3750,12 @@ RQuat_toAxisAngle( VALUE self )
3732
3750
  * provies 3 element vector arithmetic.
3733
3751
  */
3734
3752
 
3753
+ static void
3754
+ RVec3_free( void* ptr )
3755
+ {
3756
+ xfree( ptr );
3757
+ }
3758
+
3735
3759
  static VALUE
3736
3760
  RVec3_from_source( RVec3* src )
3737
3761
  {
@@ -3739,7 +3763,7 @@ RVec3_from_source( RVec3* src )
3739
3763
 
3740
3764
  RVec3Copy( v, src );
3741
3765
 
3742
- return Data_Wrap_Struct( rb_cRVec3, 0, -1, v );
3766
+ return Data_Wrap_Struct( rb_cRVec3, NULL, RVec3_free, v );
3743
3767
  }
3744
3768
 
3745
3769
 
@@ -3750,7 +3774,7 @@ RVec3_allocate( VALUE klass )
3750
3774
 
3751
3775
  memset( v, 0, sizeof(RVec3) );
3752
3776
 
3753
- return Data_Wrap_Struct( klass, 0, -1, v );
3777
+ return Data_Wrap_Struct( klass, NULL, RVec3_free, v );
3754
3778
  }
3755
3779
 
3756
3780
 
@@ -4726,6 +4750,12 @@ RVec3_op_assign_mult( VALUE self, VALUE other )
4726
4750
  * provies 4 element vector arithmetic.
4727
4751
  */
4728
4752
 
4753
+ static void
4754
+ RVec4_free( void* ptr )
4755
+ {
4756
+ xfree( ptr );
4757
+ }
4758
+
4729
4759
  static VALUE
4730
4760
  RVec4_from_source( RVec4* src )
4731
4761
  {
@@ -4733,7 +4763,7 @@ RVec4_from_source( RVec4* src )
4733
4763
 
4734
4764
  RVec4Copy( v, src );
4735
4765
 
4736
- return Data_Wrap_Struct( rb_cRVec4, 0, -1, v );
4766
+ return Data_Wrap_Struct( rb_cRVec4, NULL, RVec4_free, v );
4737
4767
  }
4738
4768
 
4739
4769
 
@@ -4744,7 +4774,7 @@ RVec4_allocate( VALUE klass )
4744
4774
 
4745
4775
  memset( v, 0, sizeof(RVec4) );
4746
4776
 
4747
- return Data_Wrap_Struct( klass, 0, -1, v );
4777
+ return Data_Wrap_Struct( klass, NULL, RVec4_free, v );
4748
4778
  }
4749
4779
 
4750
4780
 
data/test/test.rb CHANGED
@@ -1,6 +1,9 @@
1
- require 'rmath3d/rmath3d'
1
+ begin
2
+ require 'rmath3d/rmath3d'
3
+ rescue LoadError
4
+ require 'rmath3d/rmath3d_plain'
5
+ end
2
6
  # require_relative '../ext/rmath3d/rmath3d'
3
- # require 'rmath3d/rmath3d_plain'
4
7
  # require_relative '../lib/rmath3d/rmath3d_plain'
5
8
  include RMath3D
6
9
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rmath3d
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.1
4
+ version: 1.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - vaiorabbit
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2013-09-21 00:00:00.000000000 Z
11
+ date: 2014-05-18 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: |
14
14
  Provides vector3/4, matrix3x3/4x4 and quaternion in C extension library form (and plain Ruby form with the same interface for debugging use).
@@ -20,20 +20,24 @@ extensions:
20
20
  - ext/rmath3d/extconf.rb
21
21
  extra_rdoc_files: []
22
22
  files:
23
- - ext/rmath3d/rmath3d.c
24
- - ext/rmath3d/RMtx3.c
25
- - ext/rmath3d/RMtx4.c
26
- - ext/rmath3d/RQuat.c
27
- - ext/rmath3d/RVec3.c
28
- - ext/rmath3d/RVec4.c
23
+ - ChangeLog
24
+ - LICENSE.txt
25
+ - README.md
26
+ - Rakefile
29
27
  - ext/rmath3d/RMath3D.h
28
+ - ext/rmath3d/RMtx3.c
30
29
  - ext/rmath3d/RMtx3.h
30
+ - ext/rmath3d/RMtx4.c
31
31
  - ext/rmath3d/RMtx4.h
32
+ - ext/rmath3d/RQuat.c
32
33
  - ext/rmath3d/RQuat.h
33
34
  - ext/rmath3d/RType.h
35
+ - ext/rmath3d/RVec3.c
34
36
  - ext/rmath3d/RVec3.h
37
+ - ext/rmath3d/RVec4.c
35
38
  - ext/rmath3d/RVec4.h
36
39
  - ext/rmath3d/extconf.rb
40
+ - ext/rmath3d/rmath3d.c
37
41
  - lib/rmath3d/rmath3d_plain.rb
38
42
  - sample/opengl-bindings/load_matrix.rb
39
43
  - sample/opengl2/load_matrix.rb
@@ -44,11 +48,6 @@ files:
44
48
  - test/test_RQuat.rb
45
49
  - test/test_RVec3.rb
46
50
  - test/test_RVec4.rb
47
- - ChangeLog
48
- - LICENSE.txt
49
- - README.md
50
- - Rakefile
51
- - Gemfile
52
51
  homepage: https://github.com/vaiorabbit/rmath3d
53
52
  licenses:
54
53
  - zlib/libpng
@@ -59,17 +58,17 @@ require_paths:
59
58
  - lib
60
59
  required_ruby_version: !ruby/object:Gem::Requirement
61
60
  requirements:
62
- - - '>='
61
+ - - ">="
63
62
  - !ruby/object:Gem::Version
64
63
  version: '0'
65
64
  required_rubygems_version: !ruby/object:Gem::Requirement
66
65
  requirements:
67
- - - '>='
66
+ - - ">="
68
67
  - !ruby/object:Gem::Version
69
68
  version: '0'
70
69
  requirements: []
71
70
  rubyforge_project:
72
- rubygems_version: 2.1.4
71
+ rubygems_version: 2.2.2
73
72
  signing_key:
74
73
  specification_version: 4
75
74
  summary: Ruby Math Module for 3D Applications
data/Gemfile DELETED
@@ -1,2 +0,0 @@
1
- gemspec
2
- gem "rake"