[Home]-[以前のひとこと]-[2002年4月前半]

以前の「ひとこと」 : 2002年4月前半



4月1日(月) カラーパズル

カラーパズルのCG  以前、2001年7月26日のひとことでご紹介したカラーパズルを、POV-RAYでCG化してみました。といっても単にコンピュータグラフィックスで描くだけではつまらないし大変なので、簡単なテキストファイルで、それぞれのマスの分割方向と色の情報を定義してやると、自動的にPOV-RAYのコードを生成してくれるプログラムを作ってみました。

 右の図は、そうやって自動生成して作ったコードから4枚のピースを外して、適当に隣に並べてみたものです。パズルのケースが透明度が高すぎたり角の面取りがしてなかったり、ピースの質感がちょっとウソっぽかったりしますけれども、いろいろなパターンをCGとして記録できてとても楽しいです。

 <おまけのひとこと>
 本当はSternmosaikなどのもっと複雑でより美しいタイルパターンのCGを生成するシステムが作りたいのですが、これはピースの頂点の座標がパターンによって様々に変動するため、簡単ではありません。



4月2日(火) カラーパズルのCGの自動生成

カラーパズルのCG  昨日ご紹介した、カラーパズルのパターンをテキストで定義してCGを作るプログラムで、いろいろパターンを作ってみています。例えば、右の図は以下のような定義テキストから自動生成しています。

y\w r\w y/b y/w
y\b b\r b/r r/w
w/r r/b r\b b\y
w/y b/y w\r w\y

 青・赤・黄・白の4つの色を表すアルファベット(b,r,y,w)と、それぞれの正方形を区切る方向を表すスラッシュとバックスラッシュによって、カラーパズルのピースの配置を決めています。例えば、左下の正方形に注目すると、左上側が白(White)で、右下側が黄色(Yellow)です。これを表すテキストが w/y です。

 以前、LEGOブロックを組み立てた立体のCGをご紹介した事がありますが、原理は同じようなものです。今回はカラーパズルという簡単な素材でしたが、今回と同様にして、例えば囲碁や将棋、チェスといったゲーム盤の状況のCGを作成するようなプログラムを作ってみたいな、と思いました。 例えば将棋盤やチェス盤の状況を簡単なテキストファイルで記述するとその状況をCGとして再現してくれたり、手順をアニメーションで表示してくれたりしたら面白いと思います。 (でも既にありそうですね。)

 <おまけのひとこと>
 もし興味のある方がいらしたら、ご連絡いただければカラーパズル定義テキストからPOV-RAYソースを生成するプログラムのソースコードを差し上げます。(あるいは、カラーパズル定義テキストを送っていただけたら、CGを作成することもできます。)



4月3日(水) 球面の内部

 先日あそびのコラムに載せた“多面体の内側”を見て、「確か江戸川乱歩だったかの小説で、内部が鏡面の球体の中に入って…というような話がなかったっけ?」という感想をもらいました。 その小説には覚えがないのですが、確かに球の内部が鏡面だったらどんなふうに見えるのかというのは興味があります。さっそくCGで作ってみることにしました。

 さて、球面の内部の反射による画像を作るに際して、決めなければならないことがあります。中に何を入れるかということと、どこからどの方角を見るか、ということです。 中に入れるものはあまり単純すぎても面白くないし、複雑すぎるとわけがわからなくなってしまいます。今回は下の左の図のように、赤・青・黄色の3本の棒で作った正三角形を入れることにしました。三角形の中心軸(重心を通る法線)は球の中心を通っています。三角形の頂点は、適当に中心からの距離が球の半径の40%になるようにしてみました。

球の中の3色の正三角形   内部を鏡面にしてみたところ
球の中の3色の正三角形   球の内部を鏡面にして見た

 左の図は、三角形の位置がわかりやすいように視点を球の外にして、球面をガラスにしてみたところです。右側の図は、球面を鏡にして、視点を球の中心付近にして、赤と黄色の頂点の付近を見たものです。なお右の図では、視野角を160度というとんでもない角度にしています。つまり魚眼レンズのような視野になっており、ほとんど真後ろの情報も画面に写り込んでいます。

 <おまけのひとこと>
 球の内部をぐるっと見回すような動画像を作ってみたりするととても不思議で楽しいです。



4月4日(木) 錐体鏡(その1)

鏡3枚と正三角形1枚による正八面体  鏡を2枚垂直に立てて、本を開くように2枚の鏡の角度を変えて行くと、鏡の間に置いたものの数が増えて見えます。たとえば鏡台などについている三面鏡、あれは蝶番でつながっていて自由に角度が変えられるので、やってみたことのある方は多いのではないかと思います。

 錐体鏡というのは言ってみればこれの立体版です。例えば私達に馴染みのある錐体というとピラミッド(正四角錐)が有名です。ピラミッドの側面の3角形4枚の内側を全部鏡にして、内側から頂点の方向を見るというのが錐体鏡です。様々な角度の錐体鏡が考えられ、それぞれ映し出すものが変わります。

 図は、錐体鏡としては一番想像しやすいタイプで、3つの鏡がそれぞれ直交しているタイプです。図では、赤い正三角形を1つ鏡の上に載せてあります。そうすると光が3つの鏡で反射して、正八面体のイメージが作られます。

 この例では鏡3枚を白い円形の台の上に載せました。鏡の垂直軸を台の円柱の中心軸にそろえて置いてあるので、台の円周を見ていると鏡がないように見えます。

 この鏡3枚を直交させた錐体鏡では、同じ対称性を持つ立方体をはじめ、菱形十二面体や斜方立方八面体、凧型二十四面体なども作ることができます。明日以降順次ご紹介します。(先週末に大阪に行かれなかったかわりに、一日閉じこもって錐体鏡の画像をたくさんつくったのです。「あそびのコラム」にまとめる時間がないので、毎日ちょっとずつ小出しにしようという計画です。)

 今年になってからこのページで何度かご紹介しているH.Hamanaka's Homepageの新しい表紙の画像が、本物の錐体鏡の写真です。過去の表紙の錐体鏡のところには、2種類の錐体鏡の画像が紹介されています。とても面白いです。

 <おまけのひとこと>
 今年は、3月末にすでにツバメを見ました。庭の花もたくさん咲き始めています。一昨日、昨日と暑い日が続きましたが、今日は平年並みの最高気温なんだそうです。予報では昨日より最高気温が12度くらい低いとか。変化が大きいと大変です。



4月5日(金) 錐体鏡(その2)

 昨日に続いて、直交する3つの鏡による立体の画像です。下の左の図は、それぞれの鏡の面に垂直に、同じ長さの棒を3本、一点に集まるように立てたものです。集まった点には球を1つ置きました。これで立方体が見えます。

立方体   菱形にしたら?
3枚の鏡による立方体   菱形だったらどうなる?

 では、同じく直交する3枚の鏡に、右の図のように菱形を映したら全体としてどんな形がみえるでしょうか?右の図では、鏡の形状を半円形にして、鏡を繋いでいる部分に白い目地を入れて、ちょっと見た目を変えてみています。ただし鏡の代わりに黒い板を置いて、わざと反射イメージが見えないようにしてあります。

 まず1枚の鏡の像を想像し、つぎに2枚の鏡の像、3枚の鏡の像、と想像してみてください。明日、正解の図(この右側の図の「鏡バージョン」)を掲載します。

 昨日、H.Hamanaka's Homepageの新しい表紙の画像が本物の錐体鏡の写真です、とご紹介しましたが、すでに表紙はコンピュータグラフィックスの錐体鏡に替わっていました。実像部分と虚像部分の区別がほとんどつかない精緻なものです。

 <おまけのひとこと>
 我が家は郊外にあるため、大きくて流れが速くて交通量の少ない道路が近くにあります。昨晩、帰りにこの道路を車で走っていたら、ネコが飛び出してきました。あわててブレーキを踏んで止まりましたが、ネコのほうもこわかったのでしょう。腰が抜けたのか目がくらんだのか、道路の真中で、私の車のライトの光の中で座りこんでしまいました。しばらく待ったのですが動きません。そのうち後続の車のライトがミラーに映ったので、後続車に追い越されてその車に轢かれたら困るし、と思って軽く警笛を鳴らしたら、我に返ってよたよたと立ちあがって道路から去って行きました。怪我はしていなかったようで、よかったです。



4月6日(土) 錐体鏡(その3)

 昨日ご覧頂いた菱形ですが、3枚の鏡に映すと菱形十二面体になります。

菱形   菱形十二面体
昨日の問題:菱形   答え:菱形十二面体

 鏡が1枚で菱形が2つ、鏡が2枚で菱形が4つ、鏡が3枚で菱形が8つできるのですが、それ以外に4つの菱形ができるので、全部で12枚になります。下の図は、同じ原理で菱形十二面体を作る説明をしています。上の図では、赤い菱形の骨組を使いましたが、下の図では断面が正方形の四角柱を斜めに切った形を使います。3枚の鏡のかわりに、同じ部品を8個用意して貼り合わせます。わかりやすいように木目模様にして、1つおきに明るい色と暗い色にしています。

柱を斜めに切った形   菱形十二面体
柱を斜めに切った形8個   菱形十二面体

 もともと1つの部品が1つずつ菱形を持っているので、8個を貼り合わせるので8個の菱形が出来、それに加えて貼り合わせた事によって出来る市松模様の菱形が4つの側面に1つずつできます。これで12面になります。 菱形十二面体は空間を充填しますが、こうやって8つに分解して考えると、その原理がよくわかります。

 さて、では本日の問題です。六角形だったらどうなるでしょう?

正六角形

 答えは週明けに掲載します。

 <おまけのひとこと>
 学校の完全週休二日がはじまって、NHKで科学大好き土よう塾という番組が始まったそうです。子供たちと見てみました。



4月7日(日) 菱形十二面体

 昨日ご覧頂いた菱形十二面体ですが、これは空間を充填するという以外に、3面図の輪郭が全て正方形になるという面白い性質を持っています。下の図は、菱形十二面体に、東西・南北・上下の3方向に細い軸をつけて、それぞれの軸の方向から光を当ててみたCGです。ご覧の通り3つの影がピシッと正方形になっているのがわかるかと思います。

菱形十二面体   菱形十二面体の3方向の影

 正八面体がやはりこれと同じ影を持ちます。ただし、立方体の投影図は  のように普通の正方形になるのに対し、この菱形十二面体の投影図は  のように田圃の田の字を45度回転させた形になりますし、正八面体の投影図は  となります。

 <おまけのひとこと>
 今日はこれから午前・午後と地区の共同作業(春の出払い)が2つあります。午前中は冬の間に傷んだ道直し、午後は用水路の水源の清掃です。天気が悪くて大変です。



4月8日(月) 錐体鏡(その4)

 さて、先週ご覧頂いた正六角形を直交する3枚の鏡に写したときに出来る像は、次のとおり切頂八面体になります。

正六角形   切頂八面体
先週の問題:正六角形   答え:切頂八面体

 この立体も、菱形十二面体と同じく空間を充填します。この形のブロックがあれば、隙間無く積み上げることができるのです。

骨格モデル   8個用意して   切頂八面体
鏡にうつした形   8個用意   切頂八面体

 左の図は、最初に鏡にうつした正六角形と鏡自身の面とでつくられる立体を赤い骨格モデルとして作ってみたものです。この正六角形は立方体の各辺の中点を順に結んで行った形で、立方体(白い骨格)をちょうどニ等分します。ですから、この形を2つ合わせると立方体に戻ります。

 切頂八面体というのはその名の通り正八面体の頂点を切り落とした形ですが、上の真中の図のように、今回作った断面が正六角形の立方体の半分の形を8個貼り合わせてできる形です。これは正六面体の面を8個持っていますが、それぞれの面に別の切頂八面体の六角形を貼りつけることができます。このとき、用いた切頂八面体をすべて上の真中の図のように分解してみると、結局立方体が連続する形になります。そのため空間を隙間無く埋め尽くすことができるのです。

 <おまけのひとこと>
 CNN.co.jpが8日に再開という記事があったので、今朝早速見に行って見ました(http://www.cnn.co.jp/)。 いろいろおもしろい記事がありました。



4月9日(火) 錐体鏡(その5)

 そろそろ同じパターンのCGのご紹介もマンネリ化してきたので、今日で終わりにします。今日は最後に斜方立方八面体と凧型二十四面体の例をご覧頂きます。

斜方立方八面体 凧型二十四面体
斜方立方八面体 凧型二十四面体

 ちょっと視点がずれていて大きさが違いますがご勘弁を。

 ところで、「凧型二十四面体」を検索してみたら、とある小学生のホームページというところをみつけました。確かに小学生らしい作品なんですけれども、レベルが高くて驚きました。特に多面体の折り紙は、本を見てあれだけの形を作れるとしたらたいしたものです。

 <おまけのひとこと>
 上の子の担任の先生がまた替わりました。新しく赴任してきた先生なのですが、前の学校では子供たちと一緒に学校の敷地内に秘密基地を作って一緒に泊まったり(?)、子供たちが真剣に世話をすると約束したので、羊を入手して飼わせてくれたりしたんだそうです。(泊まった、というところは正確かどうかわかりませんが。) それにしてもうちの子の担任は、これまでずっと女性の先生です。 昔は女性の先生は珍しかったものですが、やっぱり半分くらいは女性の先生がいるほうがいいんじゃないかと思います。



4月10日(水) 詰将棋
詰め将棋:金銀図式
持ち駒なし:25手詰

 情報処理学会誌をめくっていたら、右のような図が載っていて、つい手が止まりました。 「ゲームの解手順の一般化とある詰将棋の数え上げ」という論文でした (野下浩平、飯田崇仁:情報処理学会誌 Vol.43, No.3 pp.708-713, 2002)。

 コンピュータを使って詰め将棋を解かせる論文だったのですが、題材として「金銀図式」(金銀石垣図式)という問題形式を選んでいました。金銀図式というのは、私はこの論文で初めて知ったのですが、図のように3×3の9マスの中に、相手玉と金銀4枚ずつの9枚を詰めこんだ形の詰め将棋なんだそうです。この3×3が盤上のどこにあるか、また9枚をどのように配置するかによって、4百万通り以上の配置が考えられ、そのうちで詰め将棋として成立するパターンが567通り見つかったそうです。

 右の図はそのうちの1つで、余詰や駒余のないもののうち、手数が最大だった25手詰めの問題だそうで、今回の研究で発見されたものだそうです。なお、論文には余詰のない15手以上の問題集として、15手の図が12個、17手の図が5個載っていました。といっても駒の配置を記号で書かれているものですから、慣れないとちょっと読みにくいかもしれません。 明日以降、いくつか図を作ってみようかと思っています。

 <おまけのひとこと>
 朝日新聞のサイトで、最近一週間の朝刊のコラム天声人語が読めます。今日、4月10日の天声人語で、「友情と打算」という話が出ていました。政治家の世界には打算のない友情はないのか、と嘆く内容でしたが、少々違和感を覚えました。 政治の世界以外では、友情と打算は無関係なんでしょうか。「友情は大切だ、しかし連帯保証人にはなるな」というのは、打算のある友情なんでしょうか。 だとすると間違った考え方なのでしょうか。 私達の代表として選ぶ政治家の行動原理が、私達と大きく異なるとはとても思えないのですが。



4月11日(木) 小惑星

 “2880年、小惑星が地球に衝突?” という記事がHotWiredに載っていました。29世紀末に、地球から約29万キロの距離を小惑星がかすめるという予測なんだそうです。これは月までの距離の4分の3ですから、かなり近くを通る計算です。データが十分でないため、今後予測結果が変わる可能性もあるようです。

 約900年といえば天文学や地球物理学の分野ではほんの一瞬と思えるほど短い期間ですが、人類にとってみればかなり長い時間です。その頃の人類は宇宙に進出して、小惑星の衝突を避けるくらいの技術を手にしているでしょうか。それともそもそもそこまで私達の子孫は存続しているでしょうか。

 上記の記事の最後に、関連する様々なリンクがあって、読んでみると面白いです。たとえば “小惑星が地球に衝突する確率は?” では小惑星の衝突で死ぬ確率は交通事故で死ぬ確率に近く、宝くじで1等に当たる確率よりもはるかに高いなどと書かれていますし、 “6500万年前の小惑星衝突、地球規模の災害だった” では、恐竜の絶滅の原因として有力視されている小惑星衝突についての解説があります。いずれも面白い読み物です。

 <おまけのひとこと>
 ZDNet に、“「ポップアップ・ダウンロード」に気を付けて”という記事が出ていました。私は、Webを閲覧する際のブラウザの設定は、ActiveXやスクリプトなどは全て確認のダイアログを表示するようにしています。こうしておくと多くのサイトに入るときにダイアログが開いて鬱陶しいのですが、少なくとも初めてのサイトではスクリプト等は全て切って接続することにしています。



4月12日(金) 金銀石垣図式

 一昨日の「ひとこと」で紹介した、3×3マスの中に金銀4枚ずつと玉を入れるタイプの詰将棋の図を二つほど作ってみました。

金銀図式問題1   金銀図式問題4
問1:持駒なし(15手)   問4:持駒なし(15手)

 問題番号は、引用元の文献 (野下、飯田:情報処理学会誌 Vol.43, No.3 pp.708-713, 2002)につけられている番号です。いずれも15手詰だそうです。どちらの図も、初手の王手のパターンはいろいろありますが、「余詰がない」ということは、ちゃんと玉を詰ますことができる手は1つだけということです。 ちなみに私は解けていません。

 詰め将棋も、パズルとして大変奥が深いすばらしい世界です。専門誌詰将棋パラダイスのページをはじめとして、詰将棋博物館とか、詰将棋マニアックスとか、詰将棋の杜とか、とても面白いページがたくさんあります。

 <おまけのひとこと>
 久々の雨です。先月の年度末の様々な雑用が一段落して、ここ二週間ほどは本業に集中できるようになりました。いつになく仕事が順調でとても楽しいです。でも、今月下旬には職場に新人が来るので面倒をみてあげないといけないし、近々職場の引越しもあるらしいし、年に何度もない「仕事が好調の状況」を大切にしたいです。 そういえば学生の頃、先生が「今日の実験はうまくいったなーなんて思えるのは1年に1ぺんもあれば多い方ですよ」と言っていました。すばらしい研究をたくさんされていた先生だったのですが。



4月13日(土) 菱形三十面体

 多面体が好きなものですから、ときどき思い出したようにいろいろな多面体の名前で検索をかけてみることがあります。先日も「菱形12面体」とか「菱形30面体」といった名前で検索をかけて出てきたページを眺めていたら、入院日記のページというところがありました。ここで紹介されている「紙の地球」という菱形三十面体の作り方にとても興味を惹かれました。時間ができたら自分で作ってみようと思っていたので、この週末にさっそく試作してみました。

菱形三十面体を組むパーツの図
菱形三十面体を組むパーツ。
菱形が12個つながったジグザグの帯6本を組む。

 上記のページにもありますが、パーツは上の図のようなものが必要です。菱形三十面体なので、面を構成する菱形は対角線の長さの比が黄金比です。上の図でピンクの色がつけてある菱形30枚が、完成時に表に出てくる部分です。本来は菱形10個で菱形30面体をぐるっと一周するのですが、図の右側の2枚の菱形の部分がオーバーラップすることによって、のりもセロテープも使わずにしっかりと安定した構造に組むことができます。全ての面が1枚ずつ交互に上下になるように組んで行きます。最後にそれぞれの帯の左側の菱形を挿し込んで完成します。

パーツの写真 組んでいる途中 菱形三十面体:できあがり
パーツ   途中   完成

 写真ではよくわからないかもしれませんが、完成した形は表面に余計な線や繋ぎ目がなく、面を単位として交互に上下に編み込まれているパターンになっていてとても美しいです。また各面は最低2枚以上が重なっており、全体として大変丈夫です。ただ、組むのはそう簡単ではないかもしれません。 「1枚おきに表面に出る」ということと、菱形10個でループになるということを意識して組んで行けばなんとかなります。ただし、この立体もやはり最後の処理がちょっと大変です。

 接着剤等を使っていないので、組み上げたものを分解することができます。でも、どこからばらせるのかをみつけるのも大変ですし、もう一度組むのもとても大変です。 でも、他の素材や手法で作る多面体と比べると、分解や組み立てを何度も繰り返す事が可能な設計になっています。 身近な材料で作れるパズルとして、とても優れていると思います。

 <おまけのひとこと>
 しばらくコンピュータグラフィックスが続いたので、実際に手を動かして実体のあるものを作ってみたくなりました。



4月14日(日) 菱形十二面体

 丈夫な菱形三十面体の作り方がわかったので、同じ原理で他の立体も作ってみたくなります。まずはお仲間ということで、菱形十二面体を作ってみました。

パーツ 菱形十二面体
菱形十二面体のパーツ
菱形8個がつながった帯4本
  完成写真

 菱形十二面体の面の形は対角線の比が1対ルート2の菱形です。菱形三十面体の黄金比の菱形と比べて、ちょっとずんぐりした形です。菱形十二面体の場合は菱形6個で一周ですから、オーバーラップ分の2枚を加えた菱形8個の帯が1つのパーツになります。

 この原理で作れる一番簡単な立体は立方体です。正方形6個が繋がった帯(長さが1:6の長方形)が3本あれば、同様に組むことができます。なぜオーバーラップは2面のほうがよいのか、なぜ接着剤を使わなくても丈夫で安定するのかを理解するのに、立方体を作ってみることをお勧めします。

 <おまけのひとこと>
 上の子が「羽根ペン」が欲しいと言っています。羽根の形を紙に書いて、鉛筆にセロテープで貼り付けていました。私も子供の頃、羊皮紙と鵞ペンにとてもあこがれたものでした。



4月15日(月) 黄金矩形とシルバー矩形

黄金矩形とシルバー矩形  一昨日、昨日と菱形三十面体と菱形十二面体をジグザグの紙の帯で組んだものをご紹介しましたが、この2つの菱形多面体の面の形が違っていて、菱形三十面体のほうは対角線の長さの比が黄金比、菱形十二面体のほうはシルバー比になっているという話をしました。

 シルバー比、というのは黄金のゴールドに対して白銀のシルバーなのですが、あまり普及した言い方ではないです。特に数学の人は使わない言い方だと思います。私は折り紙の本でこの言い方を知って、割と便利なので使っていますが、正直言ってとても気に入った表現というわけではありません。

 さて、これらの比率というのがどのくらいの大きさかをちょっと見てみることにします。まずシルバー比ですが、これは私達の身の回りにあるA4とかB5といった用紙の規格がありますが、これらの比がシルバー比です。右の図の左側の列がそうです。

 この形の特徴は、もともとの長方形を長いほうの辺を二等分して2つに切ってできる2つの長方形が、元の長方形と相似になっているということです。この性質が便利なため、用紙の規格になっています。この性質を満足する比xは、1:x=x:2 ですから、比がルート2であることはすぐにわかります。これを作図してみると、右の図の左の一番上のようになります。

 一方、黄金比のほうはもともとの長方形から正方形を切りとった残りの長方形が、もとの長方形と相似になります。もともとの長方形の短辺を1、長辺を x とすると、1:x=(x-1):1 となります。作図をすると右の図の右側の一番上のようになります。正方形の一辺の中点を中心に、対辺の頂点までを半径とした円を描き、中心を置いた辺と交わる点までの弧を描きます。比率は図に書いた通りで、おおよそ5:8になります。

 <おまけのひとこと>
 昨日は保育園の保護者会の作業がありました。庭に冬の通路として厚さ5cmくらいの大きなコンクリートの敷石が敷き詰めてあり、それを全部撤去して庭を平らにならし、こいのぼりのさおを立てるという作業です。 (確か昨年も「ひとこと」に書いた記憶があります。) 保護者会では住んでいる地区によって全体を2つに分けて、春と秋の作業を分担することになっています。 私のところは毎年春の作業なのですが、今年はどうしたわけか春の担当が少なくて、男性の参加者が例年の3分の1以下でした。 となると重たい敷石を運ぶ回数がとても増えてしまい、いつもなら一人数回、10分もあれば終わる敷石運搬作業が30分かかっても終わらず、とても大変でした。おかげで今日は筋肉痛です。



[戻る]

[Home]-[以前のひとこと]-[2002年4月前半]
mailto:hhase@po10.lcv.ne.jp
2001-2002 hhase