daniel-yangのブログ

メインブログ「受動態」(読書感想文ブログ)とは異なる内容を気まぐれで記します。

自由研究に図形変換でも

f:id:Daniel_Yang:20210731214945g:plain
f:id:Daniel_Yang:20210731215045p:plain
二次元なら簡単。高校の数学で習いました。

 

ねとらぼの記事を拝読しました。

少し前に、どこかの大臣が「数学は不要。」と発言したのを聞いた覚えがあります。
これを受けて、実際に必用となるシーンを紹介する意図だと思うのですが、
セガが、ゲームで使用される数学を紹介するツイートをしました。
ねとらぼの記事は、このセガのツイートを紹介したものでした。

 

なるほど「ゲームで使うよ。」と言うのは親しみやすい。
僕が大臣の発言を聞いたときには、
「工場の生産現場でも普通に使うよ。」
と思ったのですが、
「ねじ穴の穴開け位置精度補正に」
と言っても、親しみがわかないよな。セガは、わかりやすい例を紹介したな。
でした。

 

二次元なら簡単。高校の数学で習いました。

しかしながら、三次元の図形の回転で使用する数学は、かなり高度。
二次元なら、もう少し簡単だよな。と思いました。
 
そこで、僕の記憶に甦ったのは、僕が受けた高校二年生の冬休み前の数学の授業。
二学期の授業範囲が終わり、冬休み前、最後の授業が余ったようです。

僕が通っていた県立の高校は、一応学区内でトップの進学校。なかには「もっと子どもに勉強させろ」と授業内容に口を差し挟む、うるさい親もいたようです。そんなPTA対策の一環と思われるのですが、先生方は「数学は学力別に編成している」と言い訳していました。期末試験の点数順に、学期が変わる毎にクラス替えが行われます。なので、三学期の授業範囲を先取りすることが出来なかったと思われます。

そこで、先生が生徒に出した余興が、

「授業で教えた変換行列を使って、ネコの絵を変換してみなさい。」
でした(@_@;)
 
座標でつないだネコの絵が配られました。
課題は、
点でつながれたネコの絵の各点の座標に行列(ベクトル)を掛けて変換してください。
変換した座標を点でつないで、絵がどのように変換されるのかを確かめてみましょう。

でした。

この数学は代数の分野です。このエントリーでは、詳しく解説する余裕がありません。(ていうか、僕が解説できるほどの学力を維持していない(;´Д`))
詳しくは「行列」「 計算方法」「座標」で検索して見つかった下記のページなどをご参照ください。

 

×○年ぶりに再挑戦

と言うわけで、僕の(短い)夏休みが終わるにあたり、自由研究として
「思い出しながら再チャレンジしてみよう。」
と、当エントリーを書くことにしました。

1. 元絵を描いてみた。

まず、元の絵をエクセルで描きました。
f:id:Daniel_Yang:20210731223316p:plain
絵心のない、ワタクシですが、一応ネコっぽくなったかな。と(^_^;

2. 単位ベクトルを掛けてみた。

で、手始めに、単位ベクトルを掛けて、間違いが無いことを確認しました。
f:id:Daniel_Yang:20210731223423p:plain
うむ。元の絵と同じだ(w)

3. 0.5を掛けてみた

次に、0.5を掛けて、半分の大きさになることを確認しました。
f:id:Daniel_Yang:20210731223544p:plain
うむ。半分だ(w)

4. -1を掛けてみた

次に、-1を掛けました。
f:id:Daniel_Yang:20210731223645p:plain
うむ。上下、左右が逆になったな(w)

5. 左右反転させてみた

-1   0
 0   1
だと、どうなるんだっけ?
f:id:Daniel_Yang:20210731223754p:plain
おぉx座標だけ逆になって、左右反転しました。

6. ゆがませてみよう

5. までは、xとy単独の計算なので(^_^;)次は、もうちょっと変わった絵にしてみます。

f:id:Daniel_Yang:20210731215045p:plain
うむ。ゆがんだな。たしか、高校の授業でやったのは、こんな感じの変換だったと思います。

7. 回転してみよう

ちなみに回転させるときには、三角関数(コサイン、サイン)を使います。

f:id:Daniel_Yang:20210731225640p:plain

なるほど、45°回転させると、絵が斜めになりますな(それがどーした。あたりまえだろ。ですが(^^ゞ

8. 複雑なことをしてみよう

なんか、芸が無いので、複雑なことをやってみようと思います。
例えば、原点からの距離に比例して拡大させると、

f:id:Daniel_Yang:20210731225955p:plain

中心に近いところが爆縮しているような感じになりました。(全体の大きさが変わらないように、拡大した後、均一に縮小しています。)
逆に中心部分を拡大すると、
f:id:Daniel_Yang:20210731230129p:plain
膨張したような感じになりました。
じゃ、回転の度合いを原点からの距離に応じて渦巻きっぽくなるかも
f:id:Daniel_Yang:20210731230215p:plain
うぅむぅ。用意した点が少ないようです。あまりうずを描いた感じにはなりません。
一筆書きのなるべく少ない点をつなぐような元絵なので。
複雑な変換の様子を知るには、僕のネコの絵は不向きなようですね。

9. GIFアニメを作ってみよう

8. までで、想定した図形変換はネタ切れです。
ついでに、せっかくなので、12°ごとに回転した絵をつなげて、GIFアニメを作ってみました。30枚です。 
f:id:Daniel_Yang:20210731214945g:plain
gifアニメは、下記サイトを利用しました。
30枚の絵を一枚にまとめて16色に減色し(すべて同じパレットにするため)、分割して各GIF画像ファイルにするまでは、ペイント・ショップ・プロを使用しています。
15枚(24度ごと)で作ってみたら、あまりにぎくしゃくしていたので、
二度目のトライで上記30枚(12度ごと)を作成したものです。(カット&トライ)
もう、少し細かく(例えば60枚(6度ごと))だともっとなめらかなのでしょうが、今回は、これで良しとします。

まとめ

ジツは、このネタは、随分前から「ブログネタにしよう。」と思っていたのですが、重い腰を上げられずにいた内容です。
先月のセガのツイート(をねとらぼが取り上げたもの)をきっかけに
「三次元じゃ、いくら何でも高度すぎる。二次元ならブログネタにできる程度の簡単さだよな。」
と、えらそうに思って、頑張って書きました。
例年は、小中学生向けに読書感想文ネタで「夏休みの宿題」に自主参加している当ブログですが、今年は高校の範囲になってしまいました。
 

感想

大臣は「数学なんて不要」と言ってましたが、実際には必用であることはわかっていると思います。一般人が知らなくても良い、と言う意味の発言なのでしょう。
つまり、勉強した人の仕事になるわけです。
だから、職業として数学を使用する人にとっては「不要です。」と言う人はお客さんなので、それは、それでも構いません。
ただ、使えるならば、買ってこなくても良い装置であったり、使わなくても良い機能だったりするケースがあります。
人から聞いた話ですが、このエントリーで記したような計算が、表計算ソフトでできる人なら不必要な機能なのに、職場の(技術がわかる人ってことになっている)おっさんが、五〇万円出して、新しい装置にオプションを追加した。装置メーカーのカモにされている、と残念がっていることがありました。新卒の若者に相談していれば良かったのでしょうが、どうなんでしょうね。
経営者の人にも「数学がわかれば、不要なコストを抑えられますよ。」と言いたかったのも、このエントリーを記した動機です。
 
最後は、なんだか怨みを述べているようになってしまいました(_ _)
言いたいことをまとめると、
・ えらい政治家には勝手に言わせておけば良い「数学は不要」とでも何とでも。
・ 職場のえらい人(経営者)には、数学ができる人を雇えば、コストダウンになるかも、と知っておいて欲しい。(あるいは、従業員の学力不足を補うためにコストを掛けているシーンがあることを知って欲しい。)
・ 勉強中の学生の皆さんには、数学ができると仕事になる。と知っておいて欲しいです。(数学なんて役に立たないよ。」と言う人がカモになります。)
 
以上で、僕の夏休みの自由研究とします。
それでは、これから夏休みの皆様には、お健やかにお過ごし下さりませ。

f:id:Daniel_Yang:20210731233444j:plain