sgl 0.4.0 → 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (94) hide show
  1. data/ChangeLog +254 -234
  2. data/History.txt +6 -0
  3. data/Manifest.txt +10 -0
  4. data/Rakefile +27 -7
  5. data/examples/cocoa1-basic.rb +14 -14
  6. data/examples/cocoa10-transparent.rb +26 -26
  7. data/examples/cocoa11-application.rb +13 -13
  8. data/examples/cocoa2-draw.rb +23 -23
  9. data/examples/cocoa3-affine.rb +29 -29
  10. data/examples/cocoa4-font.rb +24 -24
  11. data/examples/cocoa5-image.rb +22 -22
  12. data/examples/cocoa6-sound.rb +24 -24
  13. data/examples/cocoa7-movie.rb +40 -40
  14. data/examples/cocoa8-movieoverlay.rb +42 -42
  15. data/examples/cocoa9-streaming.rb +40 -40
  16. data/examples/opengl1-basic.rb +14 -14
  17. data/examples/opengl11-application.rb +13 -13
  18. data/examples/opengl2-draw.rb +23 -23
  19. data/examples/opengl3-affine.rb +29 -29
  20. data/examples/sample1.rb +11 -11
  21. data/examples/sample10.rb +16 -16
  22. data/examples/sample11.rb +22 -22
  23. data/examples/sample11a.rb +33 -33
  24. data/examples/sample12.rb +30 -30
  25. data/examples/sample12a.rb +35 -35
  26. data/examples/sample13.rb +116 -116
  27. data/examples/sample15.rb +24 -24
  28. data/examples/sample16.rb +31 -31
  29. data/examples/sample16a.rb +35 -35
  30. data/examples/sample6.rb +18 -18
  31. data/examples/sample7.rb +16 -16
  32. data/examples/sample9.rb +20 -20
  33. data/examples/testgl.rb +169 -169
  34. data/lib/sgl/bass.rb +46 -46
  35. data/lib/sgl/cocoa-app.rb +43 -43
  36. data/lib/sgl/cocoa-color.rb +65 -65
  37. data/lib/sgl/cocoa-draw.rb +72 -72
  38. data/lib/sgl/cocoa-event.rb +229 -229
  39. data/lib/sgl/cocoa-media.rb +144 -144
  40. data/lib/sgl/cocoa-notuse.rb +493 -493
  41. data/lib/sgl/cocoa-window.rb +203 -203
  42. data/lib/sgl/cocoa.rb +8 -8
  43. data/lib/sgl/opengl-app.rb +38 -38
  44. data/lib/sgl/opengl-color.rb +44 -44
  45. data/lib/sgl/opengl-draw.rb +260 -260
  46. data/lib/sgl/opengl-event.rb +325 -325
  47. data/lib/sgl/opengl-modules.rb +22 -22
  48. data/lib/sgl/opengl-window.rb +224 -224
  49. data/lib/sgl/opengl.rb +7 -7
  50. data/lib/sgl/sgl-button.rb +135 -135
  51. data/lib/sgl/sgl-client.rb +21 -21
  52. data/lib/sgl/sgl-color.rb +68 -82
  53. data/lib/sgl/sgl-connect.rb +9 -9
  54. data/lib/sgl/sgl-server.rb +58 -58
  55. data/lib/sgl/sgl-spring.rb +216 -216
  56. data/lib/sgl/version.rb +2 -2
  57. data/scripts/lib-txt2html.rb +130 -0
  58. data/scripts/txt2html +2 -63
  59. data/spec/sgl_spec.rb +13 -0
  60. data/spec/spec.opts +1 -0
  61. data/spec/spec_helper.rb +1 -0
  62. data/test/test_cocoa_app.rb +291 -291
  63. data/test/test_module_ruby16.rb +30 -30
  64. data/test/test_opengl_app.rb +147 -147
  65. data/test/test_opengl_basic.rb +22 -22
  66. data/test/test_opengl_fullscreen.rb +23 -23
  67. data/test/test_opengl_novice.rb +35 -35
  68. data/website/challenge1.html +91 -91
  69. data/website/challenge1.txt +3 -3
  70. data/website/challenge2.html +143 -144
  71. data/website/challenge2.txt +13 -14
  72. data/website/challenge3.html +66 -63
  73. data/website/challenge3.txt +7 -7
  74. data/website/cocoa.html +85 -88
  75. data/website/cocoa.txt +2 -4
  76. data/website/description.html +138 -138
  77. data/website/description.txt +1 -1
  78. data/website/exercise1.html +262 -264
  79. data/website/exercise1.txt +58 -53
  80. data/website/exercise2.html +241 -683
  81. data/website/exercise2.txt +11 -427
  82. data/website/exercise3.html +206 -0
  83. data/website/exercise3.txt +155 -0
  84. data/website/exercise4.html +198 -0
  85. data/website/exercise4.txt +151 -0
  86. data/website/exercise5.html +162 -0
  87. data/website/exercise5.txt +113 -0
  88. data/website/exhibition.html +84 -84
  89. data/website/howto.html +146 -134
  90. data/website/howto.txt +9 -0
  91. data/website/index.html +178 -178
  92. data/website/index.txt +20 -19
  93. data/website/sound.html +141 -141
  94. metadata +16 -3
data/website/index.txt CHANGED
@@ -14,7 +14,7 @@ h3. Windows
14
14
  * Ruby/SDL
15
15
 
16
16
  You can see "Ruby/SDL on Windows":http://eto.com/d/RubySDLonWindows.html
17
- to install these libraries.
17
+ install documnet.
18
18
 
19
19
  h3. Mac OS X
20
20
 
@@ -28,18 +28,16 @@ h2. Installing
28
28
 
29
29
  h2. The basics
30
30
 
31
- Save this progarm as @test1.rb@.
32
31
  <pre syntax="ruby">
32
+ # test1.rb
33
33
  require "sgl"
34
34
  window 100, 100
35
35
  line 0, 0, 100, 100
36
36
  wait
37
37
  </pre>
38
38
 
39
- Run the program with @ruby test1.rb@.
40
-
41
- @test2.rb@.
42
39
  <pre syntax="ruby">
40
+ # test2.rb
43
41
  require "sgl"
44
42
  window 100, 100
45
43
  background 0
@@ -48,8 +46,8 @@ line 0, 0, 100, 100
48
46
  wait
49
47
  </pre>
50
48
 
51
- @test3.rb@.
52
49
  <pre syntax="ruby">
50
+ # test3.rb
53
51
  require "sgl"
54
52
 
55
53
  def setup
@@ -63,27 +61,30 @@ end
63
61
  mainloop
64
62
  </pre>
65
63
 
66
- h2. Pages
64
+ h2. Documents
67
65
 
68
- * "API Documnet (Rdoc)":../doc/index.html
69
- * "cocoa version":cocoa.html
66
+ * "API Reference":rdoc/
67
+ * "Description of sgl-cocoa":cocoa.html
70
68
 
71
69
  * Pages below are in Japanese
72
- ** "description":description.html
73
- ** "How to for beginner":howto.html
70
+ ** "Description":description.html
71
+ ** "How to for Beginner":howto.html
74
72
  ** "How to use Sound function":sound.html
75
73
 
76
74
  h2. Classes
77
75
 
78
- We did some classes using sgl in art schools.
79
- You'll see the materials for the classes.
76
+ We did some classes using sgl in some art schools.
77
+ You can see some materials for the classes.
80
78
 
81
79
  * Pages below are in Japanese
82
- ** "exercise 1 to 10":exercise1.html
83
- ** "exercise 11 to 21":exercise2.html
84
- ** "special exercise 1":challenge1.html
85
- ** "special exercise 2":challenge2.html
86
- ** "final exercise":challenge3.html
80
+ ** "Exercise 1":exercise1.html
81
+ ** "Exercise 2":exercise2.html
82
+ ** "Exercise 3":exercise3.html
83
+ ** "Exercise 4":exercise4.html
84
+ ** "Exercise 5":exercise5.html
85
+ ** "Special Exercise 1":challenge1.html
86
+ ** "Special Exercise 2":challenge2.html
87
+ ** "Final Exercise":challenge3.html
87
88
 
88
89
  h2. Repositry
89
90
 
@@ -95,4 +96,4 @@ Ruby License.
95
96
 
96
97
  h2. Contact
97
98
 
98
- Comments are welcome. Send an email to "Kouichirou Eto" <eto at rubyforge dot org>.
99
+ Comments are welcome. Send an email to Kouichirou Eto "eto at rubyforge dot org".
data/website/sound.html CHANGED
@@ -1,141 +1,141 @@
1
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
2
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
3
- <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
4
- <head>
5
- <link rel="stylesheet" href="stylesheets/screen.css" type="text/css" media="screen" />
6
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
7
- <title>
8
- サウンド機能
9
- </title>
10
- <script src="javascripts/rounded_corners_lite.inc.js" type="text/javascript"></script>
11
- <style>
12
-
13
- </style>
14
- <script type="text/javascript">
15
- window.onload = function() {
16
- settings = {
17
- tl: { radius: 10 },
18
- tr: { radius: 10 },
19
- bl: { radius: 10 },
20
- br: { radius: 10 },
21
- antiAlias: true,
22
- autoPad: true,
23
- validTags: ["div"]
24
- }
25
- var versionBox = new curvyCorners(settings, document.getElementById("version"));
26
- versionBox.applyCornersToAll();
27
- }
28
- </script>
29
- </head>
30
- <body>
31
- <div id="main">
32
-
33
- <h1>サウンド機能</h1>
34
- <div id="version" class="clickable" onclick='document.location = "http://rubyforge.org/projects/sgl"; return false'>
35
- <p>Get Version</p>
36
- <a href="http://rubyforge.org/projects/sgl" class="numbers">0.4.0</a>
37
- </div>
38
- <h2>使い方</h2>
39
-
40
-
41
- <p>サウンド機能の使い方について解説する.</p>
42
-
43
-
44
- <pre syntax="ruby">
45
- require 'sgl'
46
-
47
- useSound # soundを使うことを宣言する.
48
-
49
- sound = loadSound('sine.wav') # サンプル音をファイルから読みこむ.
50
- # 同じディレクトリーにsine.wavというファイルを置いておく.
51
-
52
- sound.play # そのサンプル音を再生する.
53
-
54
- wait # プログラムがすぐ終了するのをふせぐために待つ.
55
- # Ctrl+Cで,プログラムが終了する.
56
- </pre>
57
-
58
- <p>元となるサンプル音は,マイクからサンプリングしたり,インターネットから
59
- フリーの音源をダウンロードする.波形編集ソフトを使ってMP3ファイルから
60
- 切り出したりする方法もある.</p>
61
-
62
-
63
- <pre syntax="ruby">
64
- require 'sgl'
65
-
66
- def setup
67
- useSound
68
- window -200, -200, 200, 200
69
- $y = 0
70
- $sound = loadSound('sine.wav')
71
- end
72
-
73
- def onMouseDown(x, y)
74
- $y = y
75
- $sound.play(y / 10 + 60)
76
- end
77
-
78
- def display
79
- line -200, $y, 200, $y
80
- end
81
-
82
- mainloop
83
- </pre>
84
-
85
- <p>マウスが押されると,その高さに応じた音を再生する.音量も変化する.</p>
86
-
87
-
88
- <pre syntax="ruby">
89
- require 'sgl'
90
-
91
- def setup
92
- useSound
93
- window -200, -200, 200, 200
94
- $x = 0
95
- $y = 0
96
- $sound = loadSound('sine.wav')
97
- end
98
-
99
- def onMouseDown(x, y)
100
- $x = x
101
- $y = y
102
- $sound.play(y / 10 + 60, x / 4 + 50)
103
- end
104
-
105
- def display
106
- circle($x, $y, 10)
107
- end
108
-
109
- mainloop
110
- </pre>
111
-
112
- <h2>注意点</h2>
113
-
114
-
115
- <p>音を同時にたくさん出すと,システム全体が固まる.プログラムが止まるだけ
116
- でなく,マシン全体が固まる.あまりたくさん音を同時に出しすぎないように
117
- プログラム側で調整する.</p>
118
-
119
-
120
- <h2>波形編集ソフト</h2>
121
-
122
-
123
- <p>AudacityやWave Editor <span class="caps">TWE</span>などのフリーの波形編集ソフトを使ってサンプル
124
- 音を編集できる.自分が持っているMP3ファイルを元に編集することもできる.
125
- AudacityなどでMP3ファイルを開き,該当個所のみを切り出して保存しなおす
126
- とよい.</p>
127
-
128
-
129
- <ul>
130
- <li><a href="http://audacity.sourceforge.net/">Audacity</a></li>
131
- <li><a href="http://www.yamaha.co.jp/product/syndtm/dl/utility/twe/">Wave Editor <span class="caps">TWE</span></a></li>
132
- </ul>
133
- <p class="coda">
134
- 20th June 2007<br>
135
- </p>
136
- </div>
137
-
138
- <!-- insert site tracking codes here, like Google Urchin -->
139
-
140
- </body>
141
- </html>
1
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
2
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
3
+ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
4
+ <head>
5
+ <link rel="stylesheet" href="stylesheets/screen.css" type="text/css" media="screen" />
6
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
7
+ <title>
8
+ サウンド機能
9
+ </title>
10
+ <script src="javascripts/rounded_corners_lite.inc.js" type="text/javascript"></script>
11
+ <style>
12
+
13
+ </style>
14
+ <script type="text/javascript">
15
+ window.onload = function() {
16
+ settings = {
17
+ tl: { radius: 10 },
18
+ tr: { radius: 10 },
19
+ bl: { radius: 10 },
20
+ br: { radius: 10 },
21
+ antiAlias: true,
22
+ autoPad: true,
23
+ validTags: ["div"]
24
+ }
25
+ var versionBox = new curvyCorners(settings, document.getElementById("version"));
26
+ versionBox.applyCornersToAll();
27
+ }
28
+ </script>
29
+ </head>
30
+ <body>
31
+ <div id="main">
32
+
33
+ <h1>サウンド機能</h1>
34
+ <div id="version" class="clickable" onclick='document.location = "http://rubyforge.org/projects/sgl"; return false'>
35
+ <p>Get Version</p>
36
+ <a href="http://rubyforge.org/projects/sgl" class="numbers">1.0.0</a>
37
+ </div>
38
+ <h2>使い方</h2>
39
+
40
+
41
+ <p>サウンド機能の使い方について解説する.</p>
42
+
43
+
44
+ <pre syntax="ruby">
45
+ require 'sgl'
46
+
47
+ useSound # soundを使うことを宣言する.
48
+
49
+ sound = loadSound('sine.wav') # サンプル音をファイルから読みこむ.
50
+ # 同じディレクトリーにsine.wavというファイルを置いておく.
51
+
52
+ sound.play # そのサンプル音を再生する.
53
+
54
+ wait # プログラムがすぐ終了するのをふせぐために待つ.
55
+ # Ctrl+Cで,プログラムが終了する.
56
+ </pre>
57
+
58
+ <p>元となるサンプル音は,マイクからサンプリングしたり,インターネットから
59
+ フリーの音源をダウンロードする.波形編集ソフトを使ってMP3ファイルから
60
+ 切り出したりする方法もある.</p>
61
+
62
+
63
+ <pre syntax="ruby">
64
+ require 'sgl'
65
+
66
+ def setup
67
+ useSound
68
+ window -200, -200, 200, 200
69
+ $y = 0
70
+ $sound = loadSound('sine.wav')
71
+ end
72
+
73
+ def onMouseDown(x, y)
74
+ $y = y
75
+ $sound.play(y / 10 + 60)
76
+ end
77
+
78
+ def display
79
+ line -200, $y, 200, $y
80
+ end
81
+
82
+ mainloop
83
+ </pre>
84
+
85
+ <p>マウスが押されると,その高さに応じた音を再生する.音量も変化する.</p>
86
+
87
+
88
+ <pre syntax="ruby">
89
+ require 'sgl'
90
+
91
+ def setup
92
+ useSound
93
+ window -200, -200, 200, 200
94
+ $x = 0
95
+ $y = 0
96
+ $sound = loadSound('sine.wav')
97
+ end
98
+
99
+ def onMouseDown(x, y)
100
+ $x = x
101
+ $y = y
102
+ $sound.play(y / 10 + 60, x / 4 + 50)
103
+ end
104
+
105
+ def display
106
+ circle($x, $y, 10)
107
+ end
108
+
109
+ mainloop
110
+ </pre>
111
+
112
+ <h2>注意点</h2>
113
+
114
+
115
+ <p>音を同時にたくさん出すと,システム全体が固まる.プログラムが止まるだけ
116
+ でなく,マシン全体が固まる.あまりたくさん音を同時に出しすぎないように
117
+ プログラム側で調整する.</p>
118
+
119
+
120
+ <h2>波形編集ソフト</h2>
121
+
122
+
123
+ <p>AudacityやWave Editor <span class="caps">TWE</span>などのフリーの波形編集ソフトを使ってサンプル
124
+ 音を編集できる.自分が持っているMP3ファイルを元に編集することもできる.
125
+ AudacityなどでMP3ファイルを開き,該当個所のみを切り出して保存しなおす
126
+ とよい.</p>
127
+
128
+
129
+ <ul>
130
+ <li><a href="http://audacity.sourceforge.net/">Audacity</a></li>
131
+ <li><a href="http://www.yamaha.co.jp/product/syndtm/dl/utility/twe/">Wave Editor <span class="caps">TWE</span></a></li>
132
+ </ul>
133
+ <p class="coda">
134
+ 30th June 2007<br>
135
+ </p>
136
+ </div>
137
+
138
+ <!-- insert site tracking codes here, like Google Urchin -->
139
+
140
+ </body>
141
+ </html>
metadata CHANGED
@@ -3,12 +3,12 @@ rubygems_version: 0.9.2
3
3
  specification_version: 1
4
4
  name: sgl
5
5
  version: !ruby/object:Gem::Version
6
- version: 0.4.0
7
- date: 2007-06-25 00:00:00 +09:00
6
+ version: 1.0.0
7
+ date: 2007-07-01 00:00:00 +09:00
8
8
  summary: "\"sgl: simple generic library\" enables you to create a program with graphics and sound easily."
9
9
  require_paths:
10
10
  - lib
11
- email: eto at rubyforge dot org
11
+ email: eto _at_ rubyforge _dot_ org
12
12
  homepage: http://sgl.rubyforge.org
13
13
  rubyforge_project: sgl
14
14
  description: "\"sgl: simple generic library\" enables you to create a program with graphics and sound easily."
@@ -100,9 +100,13 @@ files:
100
100
  - lib/sgl/sgl-timer.rb
101
101
  - lib/sgl/sgl.rb
102
102
  - lib/sgl/version.rb
103
+ - scripts/lib-txt2html.rb
103
104
  - scripts/makemanifest.rb
104
105
  - scripts/txt2html
105
106
  - setup.rb
107
+ - spec/sgl_spec.rb
108
+ - spec/spec.opts
109
+ - spec/spec_helper.rb
106
110
  - test/test_bass.rb
107
111
  - test/test_cocoa_app.rb
108
112
  - test/test_helper.rb
@@ -127,6 +131,12 @@ files:
127
131
  - website/exercise1.txt
128
132
  - website/exercise2.html
129
133
  - website/exercise2.txt
134
+ - website/exercise3.html
135
+ - website/exercise3.txt
136
+ - website/exercise4.html
137
+ - website/exercise4.txt
138
+ - website/exercise5.html
139
+ - website/exercise5.txt
130
140
  - website/exhibition.html
131
141
  - website/exhibition.txt
132
142
  - website/howto.html
@@ -165,6 +175,9 @@ extra_rdoc_files:
165
175
  - website/description.txt
166
176
  - website/exercise1.txt
167
177
  - website/exercise2.txt
178
+ - website/exercise3.txt
179
+ - website/exercise4.txt
180
+ - website/exercise5.txt
168
181
  - website/exhibition.txt
169
182
  - website/howto.txt
170
183
  - website/index.txt