忍者ブログ

マドノマグラの初心者自作ゲーム制作日誌 迷走モード

プログラミング初心者が自作ゲームを作成してみようとする動きを記す。現在迷走中。

ブログ履歴

2010/11/06: HSP3.22の環境を整えてみる
2009/11/09: Rubyで適当版自分用関連記事リンク作成プログラムを作る
2009/06/04: Visual C++(DXライブラリ使用)の環境を整えてみるも休止状態に
2009/03/17: ActionScript勉強の環境を整えるも結局休止状態に
2006/07/15: とりあえず分岐型ゲームを作る グリーンタワーVer1.2 ダウンロード(zip)
2006/07/02: ブログスタート。NScripterで何かを作ろうとする

[PR]

×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

とりあえずrubyでコマンドプロンプト上に出力

得られたフィードから、関連記事リンクの吐き出す仕組みを作ろうとしてみた。

今回利用するのは、
http://blogsearch.google.co.jp/blogsearch_feeds?hl=ja&scoring=d&q=%E3%83%AC%E3%83%BC%E3%83%AB%E3%82%AC%E3%83%B3+blogurl:http://blog.livedoor.jp/mado2wien/&ie=utf-8&num=5&output=rss

レールガンという文字が変換されている状態のもので、得られる記事が5個で、UTF-8で出力されるっぽいやつだ。

この手のネタはrubyをいじるといい気がしたので、プログラミングRuby 第2版 ライブラリ編やら、たのしいRuby 第2版 Rubyではじめる気軽なプログラミングやら、RSS Parser::Tutorial.jaやらを見て、適当に打ち込んで、コマンドプロンプトで実行してみたら、以下の結果を得た。

(プログラムの中身が何を言わんとしているのかは知らないままやっているというのは内緒だ)



うん、だいたいいい感じ。ただ、検索ワード部分がタグで強調されているというのを除去したいし、最後の...部分の強調もいらない。これを除去する手段を考えていきたい。そのあと、テキストファイルにでも出力できればいいよねえ。

そういえば、途中でUTF-8からShift-JISに変換している部分があると思うけれど、これは、コマンドプロンプトでのコードがShift-JISになっているからやっている。というか、これをイチイチ変更する必要があるのかもよくわからん状態でやっているのだ。

PR

吐き出されるファイルの中身を覗いてみる

とりあえず、呪文の法則性を見てみるの最後に

http://blogsearch.google.co.jp/blogsearch?hl=ja&scoring=d&q=%E3%83%AC%E3%83%BC%E3%83%AB%E3%82%AC%E3%83%B3+blogurl:http://blog.livedoor.jp/mado2wien/&ie=utf-8&num=5

をアドレスバーに唱えた後の結果ページから得られた、フィードだかxmlファイルだか何だかよくわからないものを、terapadで開、続き部分に書かれているような文言が書かれていた。(続き部分に書かれているのは整形後の文)

どうやら、フィードが、http://blogsearch.google.co.jp/blogsearch_feeds?hl=ja&scoring=d&q=%E3%83%AC%E3%83%BC%E3%83%AB%E3%82%AC%E3%83%B3+blogurl:http://blog.livedoor.jp/mado2wien/&ie=utf-8&num=10&output=rss

となっていることから、5件ではなく10件基準で吐き出されるらしい。(今回の結果は8件のみなので8つ分の吐き出し)

ここで着目したいのが、itemタグ内の部分。
itemタグで囲まれた部分を1つの単位として、そこの1つの記事の情報がのっかっているようだった。

ここから、itemで囲まれた部分の中で、titleタグで囲まれた部分とlinkタグで囲まれた部分を5件分抽出すれば、成功の予感がする。

どうすりゃいいのかは知らんけども。

とりあえず、呪文の法則性を見てみる

関連記事がパッと出るようなものが欲しいの巻にて出してみた、フィードなるものを比較してみた。

まず統一されていたのが、呪文の後半の、

+blogurl:http://blog.livedoor.jp/mado2wien/&ie=utf-8&num=10&output=rss

という部分。

ブログのURLがそのまま載っているのだから、多分、赤字の部分が、このブログの範囲内で調べましたというお知らせをしているのだろう。

で、&で繋がったあとの、ie=utf-8。UTF-8っていうのは、文字関係のエンコード(何を意味するのか不明)とかいうやつで、みたことがあるから多分、文字を出力するときに何か関係するものなのだろう。

次の num=10っていうのは、結果を見ていくと、10件の表示をしていることで共通しているから、多分、件数に関係するパラメータなのだろう。

で、output=RSS は多分、オッスオラRSSってことが言いたい盛りなのだろうなあ。


で、次に前半部分を考えてみると、

共通部分の
http://blogsearch.google.co.jp/blogsearch_feeds?hl=ja&lr=lang_ja と

日付け順の時にだけしゃしゃり出てくる
&scoring=d と

検索文字部分によって、「謎の呪文」部分に違いが出る
&q=謎の呪文

の3パーツ部分に分かれていそうに見えた。

多分、共通部分は、グーグルのブログ検索のフィードじゃ、そうジャ、そうジャ、日本語ジャ!って叫んでいる部分で、次が、日付基準で考えてるデーってことで、最後のパーセントで囲まれた部分が、日本語に呪いか何かをかけてパーセンテー人の言葉に変えたってことなのだろう。


ところで、私がパッと出したいのは、アホ理系青年の主張の関連記事のリンクで日付が新しい順で5個分だから。


http://blogsearch.google.co.jp/blogsearch_feeds?hl=ja&lr=lang_ja&scoring=d&q=パーセンテー人の言葉+blogurl:http://blog.livedoor.jp/mado2wien/&ie=utf-8&num=5&output=rss

で構成されるフィードを、ちょっと再構成して吐き出させるようにすればいいのかなあと、ぼんやりと考えてみた。

そういえば、
http://blogsearch.google.co.jp/blogsearch?hl=ja&scoring=d&q=%E3%83%AC%E3%83%BC%E3%83%AB%E3%82%AC%E3%83%B3+blogurl:http://blog.livedoor.jp/mado2wien/&ie=utf-8&num=5

っていう呪文を、アドレスバー(だったっけ?)にぶち込むと、レールガン blogurl:http://blog.livedoor.jp/mado2wien/ の検索結果 約 10 件中 1 - 5 件目 日付順が出た。

だから、何と言われると困るんだけど。

関連記事がパッと出るようなものが欲しいの巻

いきなりゲームと関係ないことを、試行錯誤でやってみることにする。車輪の再発明? 何それ? 食べられるの?

このブログとは遠く離れたブログ、主にテレビ視聴の感想を書いているアホ理系青年の主張における、関連記事項目を、ちょっと、単語を入力することで、パッと出せるプログラムを作りたいと思ったのだ。

いや、他でそういうジェネレーターがあるから別に作る必要ないよねってことだけど、自分専用のシステムで他人なんて知らんがなというものを作りたいじゃないってことで、適度にかんがえていくことにした。

ただ、プログラムのことなんてさっぱり忘れているので、スピードを気にせずにやって行く予定。

ってことで、まずはグーグル先生のブログ検索の結果において、吐き出されるフィード(このフィードというものすら何のことかわからない)なるものを利用して、関連記事が生まれたら素敵だねえってことで、そのフィードなるものを見ていくことにした。


例えば、
レールガン blogurl:http://blog.livedoor.jp/mado2wien/ の検索結果 約 10 件中
関連性の高い順で出てくるのは、以下の呪文

http://blogsearch.google.co.jp/blogsearch_feeds?hl=ja&lr=lang_ja&q=%E3%83%AC%E3%83%BC%E3%83%AB%E3%82%AC%E3%83%B3+blogurl:http://blog.livedoor.jp/mado2wien/&ie=utf-8&num=10&output=rss

日付順では、以下の呪文
http://blogsearch.google.co.jp/blogsearch_feeds?hl=ja&lr=lang_ja&scoring=d&q=%E3%83%AC%E3%83%BC%E3%83%AB%E3%82%AC%E3%83%B3+blogurl:http://blog.livedoor.jp/mado2wien/&ie=utf-8&num=10&output=rss

以下、こんな感じ

さんまのまんま blogurl:http://blog.livedoor.jp/mado2wien/ の検索結果 約 54 件中 1 - 10 件目
http://blogsearch.google.co.jp/blogsearch_feeds?hl=ja&lr=lang_ja&q=%E3%81%95%E3%82%93%E3%81%BE%E3%81%AE%E3%81%BE%E3%82%93%E3%81%BE+blogurl:http://blog.livedoor.jp/mado2wien/&ie=utf-8&num=10&output=rss

日付順
http://blogsearch.google.co.jp/blogsearch_feeds?hl=ja&lr=lang_ja&scoring=d&q=%E3%81%95%E3%82%93%E3%81%BE%E3%81%AE%E3%81%BE%E3%82%93%E3%81%BE+blogurl:http://blog.livedoor.jp/mado2wien/&ie=utf-8&num=10&output=rss


道重 blogurl:http://blog.livedoor.jp/mado2wien/ の検索結果 約 99 件中 1 - 10 件目 関連性の高い順
http://blogsearch.google.co.jp/blogsearch_feeds?hl=ja&lr=lang_ja&q=%E9%81%93%E9%87%8D+blogurl:http://blog.livedoor.jp/mado2wien/&ie=utf-8&num=10&output=rss

日付順
http://blogsearch.google.co.jp/blogsearch_feeds?hl=ja&lr=lang_ja&scoring=d&q=%E9%81%93%E9%87%8D+blogurl:http://blog.livedoor.jp/mado2wien/&ie=utf-8&num=10&output=rss


検索している単語が、いかにも私の趣味じみているのはさておき、この謎の呪文はどういうことを言わんとしているのかを探ってみることにするのだ。

えっ?そういうパラメータとの対応表は、ネット空間のどこかに載っているって? 気にしない気にしない。趣味でやってるだけなんだからってことで続く。

Flash Playerデバック版の更新を行った。10.0.32.18.へ

ふと忘れていたので、Adobe Flash Playerのページから、the Windows Flash Player 10 ActiveX control content debugger (for IE)、the Windows Flash Player 10 Plugin content debugger (for Netscape-compatible browsers) をダウンロード・インストールし、更新版のthe Windows Flash Player 10 Projector content debuggerを起動させた。

この10日のラグがどう響くのか。

Microsoft Visual C++ 2008 Express Editionを入れた

またしても、飽きっぽい性格が発動したのだった。というわけで、マイクロソフトのVisual Studio のサイトからMicrosoft Visual C++ 2008 Express Edition をインストールした。そののち、DXライブラリ置き場 使い方説明の通りに、DXライブラリを導入したのだった。

ゲームプログラミングの館というページのサンプルソースをとりあえず、25bまで、何も考えずに入れ込んでみたのだった。

ゲームプログラミングの館の利用規約によると、

「自サイトにソースコードをコピーしていただいて構いませんが、その際はゲームプログラミングの館のコードである事をお書き下さい」

ということであったので、私がコピペしておきたい文を続き部分に保管しておくことにした。

赤いバッジを描く

プログラマのためのFlash遊び方:第3回 お絵かきしながら学ぶ ActionScript 3.0(後編)を元に、というかほんの少しの改変しただけのもので赤色のバッジ作成。

public function createGradientBox(width:Number, height:Number, rotation:Number = 0, tx:Number = 0, ty:Number = 0):void
width:幅
height:高さ
rotation:回転量 (角度)
tx:x 軸に沿って右方向に平行移動する距離 (px) 。この値は、width パラメータの半分だけオフセット。
ty:y 軸に沿って下方向に平行移動する距離 (px) 。この値は、height パラメータの半分だけオフセット。

public function beginGradientFill(type:String, colors:Array, alphas:Array, ratios:Array, matrix:Matrix = null, spreadMethod:String = "pad", interpolationMethod:String = "rgb", focalPointRatio:Number = 0):void

type:使用するグラデーションのタイプを指定。GradientType.LINEAR または GradientType.RADIAL。
colors:グラデーションで使用する RGB 16 進カラー値の配列。最大 15 色まで指定可。各色について、alphas パラメータと ratios パラメータで対応する値を必ず指定。
alphas:colors 配列内の各色に対応するアルファ値の配列。有効な値は 0 ~ 1 。
ratios:色分布比率の配列。0 ~ 255 の範囲の値を指定可。この値は、100% でサンプリングされる色の幅の割合をパーセントで定義。値 0 はグラデーションボックスの左の位置を表し、255 はグラデーションボックスの右の位置を表す。

public static function polar(len:Number, angle:Number):Point
len:極座標ペアの長さ座標。
angle:極座標ペアの角度 (ラジアン単位)

public function DropShadowFilter(distance:Number = 4.0, angle:Number = 45, color:uint = 0, alpha:Number = 1.0, blurX:Number = 4.0, blurY:Number = 4.0, strength:Number = 1.0, quality:int = 1, inner:Boolean = false, knockout:Boolean = false, hideObject:Boolean = false)

distance:シャドウのオフセット距離 (ピクセル単位)
angle:0 ~ 360 度で表されるシャドウの角度 (浮動小数)
color:シャドウのカラー。16 進数形式 (0xRRGGBB) で指定します。
alpha:シャドウカラーのアルファ透明度値。指定できる値は 0.0 ~ 1.0 。
blurX:水平方向のぼかし量です。指定できる値は 0 ~ 255.0 (浮動小数) 。
blurY:垂直方向のぼかし量です。指定できる値は 0 ~ 255.0 (浮動小数) 。
strength:インプリントの強さまたは広がりです。値が大きいほど、シャドウと背景との間のコントラストが強くなる。指定できる値は 0 ~ 255.0 。
quality:フィルタを適用する回数。
inner:シャドウが内側のシャドウであるかどうかを指定。true の場合は、内側シャドウ。値 false は外側シャドウ。
knockout:true の場合は、ノックアウト効果を適用。その結果、オブジェクトの塗りが透明になり、ドキュメントの背景色が表示。
hideObject:オブジェクトが非表示であるかどうかを示します。true を指定すると、オブジェクト自体は描画されず、シャドウだけが表示。

htmlText:String
テキストフィールドの内容を HTML で示す

赤いバッジを描く

プログラマのためのFlash遊び方:第3回 お絵かきしながら学ぶ ActionScript 3.0(後編)を元に、というかほんの少しの改変しただけのもので赤色のバッジ作成。

public function createGradientBox(width:Number, height:Number, rotation:Number = 0, tx:Number = 0, ty:Number = 0):void
width:幅
height:高さ
rotation:回転量 (角度)
tx:x 軸に沿って右方向に平行移動する距離 (px) 。この値は、width パラメータの半分だけオフセット。
ty:y 軸に沿って下方向に平行移動する距離 (px) 。この値は、height パラメータの半分だけオフセット。

public function beginGradientFill(type:String, colors:Array, alphas:Array, ratios:Array, matrix:Matrix = null, spreadMethod:String = "pad", interpolationMethod:String = "rgb", focalPointRatio:Number = 0):void

type:使用するグラデーションのタイプを指定。GradientType.LINEAR または GradientType.RADIAL。
colors:グラデーションで使用する RGB 16 進カラー値の配列。最大 15 色まで指定可。各色について、alphas パラメータと ratios パラメータで対応する値を必ず指定。
alphas:colors 配列内の各色に対応するアルファ値の配列。有効な値は 0 ~ 1 。
ratios:色分布比率の配列。0 ~ 255 の範囲の値を指定可。この値は、100% でサンプリングされる色の幅の割合をパーセントで定義。値 0 はグラデーションボックスの左の位置を表し、255 はグラデーションボックスの右の位置を表す。

public static function polar(len:Number, angle:Number):Point
len:極座標ペアの長さ座標。
angle:極座標ペアの角度 (ラジアン単位)

public function DropShadowFilter(distance:Number = 4.0, angle:Number = 45, color:uint = 0, alpha:Number = 1.0, blurX:Number = 4.0, blurY:Number = 4.0, strength:Number = 1.0, quality:int = 1, inner:Boolean = false, knockout:Boolean = false, hideObject:Boolean = false)

distance:シャドウのオフセット距離 (ピクセル単位)
angle:0 ~ 360 度で表されるシャドウの角度 (浮動小数)
color:シャドウのカラー。16 進数形式 (0xRRGGBB) で指定します。
alpha:シャドウカラーのアルファ透明度値。指定できる値は 0.0 ~ 1.0 。
blurX:水平方向のぼかし量です。指定できる値は 0 ~ 255.0 (浮動小数) 。
blurY:垂直方向のぼかし量です。指定できる値は 0 ~ 255.0 (浮動小数) 。
strength:インプリントの強さまたは広がりです。値が大きいほど、シャドウと背景との間のコントラストが強くなる。指定できる値は 0 ~ 255.0 。
quality:フィルタを適用する回数。
inner:シャドウが内側のシャドウであるかどうかを指定。true の場合は、内側シャドウ。値 false は外側シャドウ。
knockout:true の場合は、ノックアウト効果を適用。その結果、オブジェクトの塗りが透明になり、ドキュメントの背景色が表示。
hideObject:オブジェクトが非表示であるかどうかを示します。true を指定すると、オブジェクト自体は描画されず、シャドウだけが表示。

htmlText:String
テキストフィールドの内容を HTML で示す

Ruby関連リンク集

私が以前、参考にした、Ruby関連のリンク集になります。

NScripter関連リンク集

私が以前、参考にした、MScripter関連のリンク集になります。

PR

カテゴリー

最新記事

アーカイブ

プロフィール

HN:
マドノマグラ
性別:
非公開
職業:
趣味:
駄文書き
自己紹介:
ゲームを作ろうとしているうちに、言語学習に飽きていく。典型的なダメな人パターンに陥るアホな人

リンク

ブログ内検索

バーコード

RSS

忍者ブログ │ [PR]