広島工業大学紀要教育編
第 23 巻（2024）1-8

論文

STEAM 教育に基づく高大連携―Python による美しい幾何学図形の生成―
梅村

祥之＊・直川耕祐＊（令和 5 年11月24日受付）

High school-university collaboration based on STEAM education—Generation of beautiful geometric shapes using Python—
Yoshiyuki UMEMURA and Kosuke NAOKAWA（Received November 24, 2023）

概要
STEAM 教育に基づく高大連携において，Python プログラムを用いたコンピュータグラフィックスにより美しい幾何学図形を生成する授業教材を開発し，授業とグループワークを実施した．幾何学図形は，定規と歯車を使って美しい図形を描く子供用玩具のスピログラフをコンピュータ化し，複数の歯車を自由な回転スピードで連結して図形を生成できるようにしたものである．教材の中には，三角関数に基づく図形生成原理，Python プログラミング，パラメータの変更による様々な形の生成に関する内容が盛り込まれている．受講した生徒へのインタビュー，生徒が作成した発表会用ポスタの内容，発表会での発表者の発言内容から，美しい図形の創作を通じてコンピュータグラフィックスの技術を学ぶことに対して非常に成功した．幾何学図形と数学との関係を理解させることに対して，やや成功した．

キーワード： STEAM 教育幾何学図形コンピュータグラフィックススピログラフ Python
1

テーマ設定は STEAM 教育の趣旨に沿って設定した．まはじめにず，その考え方と，開発したコンテンツの概略を述べ，次近年，高等学校教育の中に STEAM 教育が導入されつに，それを使った創作活動とポスタセッションの実施状況つある．文部科学省の Web ページに「STEAM 教育等の及び，創作活動中に行った生徒へのインタビュー結果とポ各教科等横断的な学習の推進について」という以下の記事

スタセッションでの本課題に対する生徒の印象に関する発［1］が掲載されている ．

言内容について報告する．

AI や IoT などの急速な技術の進展により社会が激しく変化し、多様な課題が生じている今日、文系・理系といった枠にとらわれず、各教科等の学びを基盤としつつ、様々な情報を活用しながらそれを統合し、課題の発見・解決や社会的な価値の創造に結び付けていく資質・能力の育成が求められています。 文部科学省では、STEM（Science, Technology, Engineering, Mathematics）に加え、芸術、文化、生活、経済、法律、政治、倫理等を含めた広い範囲で A を定義し、各教科等での学習を実社会での問題発見・解決に生かしていくための教科等横断的な学習を推進しています。

広島工業大学高等学校では広島工業大学と連携した［3］．教育プログラム
STEAM 教育を2022年度に開始した［2］2企画
情報工学科の特徴を持ったテーマとして，コンピュータグラフィックスによる幾何学図形の生成のテーマを設定する．子供用玩具として，定規を使って美しい図形を描くス
ピログラフ［5］ という玩具が1965年から現在に渡って市販されている＊1．図 1 にスピログラフの写真とそれを使って図形描画している様子を示す．の大まかな流れは次のとおりである．広島工業大学の12学

コンピュータで描く場合，物理的な定規の持つ制約を超科は各学科の特徴を持ったテーマに沿った授業コンテンツ

えて，複数の歯車を連結させることができるし，歯車（以を作成する．それを用いて，大学教員が講義を行い，ま下，歯車を円と称する）の回転スピードを自由に設定でた，講義内容に関係した課題を説明し，その後，各生徒がき，それによって，複雑で美しい図形の生成が可能であ

課題解決のためのグループワーク（以下，創作活動と称す（図 2 ）．
る［6］る）を行い，その結果をポスタにまとめて，ポスタセッションを行う．本論文では，情報工学科で設定したテーマとそれに沿って開発した授業コンテンツについて述べる．
＊広島工業大学情報学部情報工学科
― 1 ―

＊1

SPIROGRAPH は米国企業ハズブロの登録商標である．

梅村祥之・直川耕祐

一方，technology としてはコンピュータグラフィック
スの技術を取り扱う．
＊2

スピログラフを用いた描画図形であるエピサイクルに対してここではスピログラフ図形と表現する．

Art
図1

スピログラフの商品と使用の様子（Wikipedia 英語版，Spirograph より転載）

STEAM 教育の A は当初，art（芸術）を意味していたが，社会人文科学を意味する liberal arts も含むように拡張された．本論文が対象とする連携先の広島工業大学高等学校においてはさらに「あそび心」という解釈を含め，「好きなものにこだわりを持って取り組める」ことを目指している［2］．
スピログラフ図形生成においては，円の個数，各円の半径，各円の回転スピードを様々に変更して，様々な美しい図形を創作することができる．この点から，芸術あるいは遊び心の要素を含むと考えられる．

Mathematics
スピログラフ図形をコンピュータで描くには，直交座標の知識，三角関数の知識，ベクトルの知識が必要である．
この段階で数学の要素を含んでいる．
図2

スピログラフの形を決めるパラメータによっては奇妙なスピログラフのコンピュータ版による描画例

形が発生することがある．そのような現象を対象として，現在，高校の授業科目情報 I でコンピュータプログラミ

なぜ，奇妙な現象が発生したのかの現象解明に取り組むたングの学習が行われている．高大連携先の広島工業大学高めの課題を設ける．現象解明にあたっては，論理的な思考

等学校ではプログラミング言語として Python を採用してい力が必要となる．

る．そこで，授業コンテンツ開発にあたって，Python を3使ったコンピュータグラフィックスにてスピログラフ図形の描画を行う＊2．授業コンテンツの企画にあたって，STEAM

教材開発 ─ 概略 ─
Python プログラムの統合開発環境として普及しているjupyter lab の Notebook 形式［8］で教材を提供する．近年，教育の各要素を次の考え方に従って盛り込む．

人工知能に関する研究開発が活発になされ，数多くの研究用ソフトが公開されている．人工知能の研究分野ではプロScience, Technology, Engineering

グラム言語として Python を使うことが多い．公開するソSTEAM 教育の分野で science は自然科学の意味で使わフトのプログラムコードとドキュメントを提供する枠組みれている．technology は自然科学の法則に基づいて，何らとして，使い勝手の良い jupyter lab の Notebook 形式がかのものを生み出すための方法と解釈できる．engineering

最もよく使われている．以上を踏まえ，本教材も jupyter

は，生み出すものを人々の生活や産業に役立つものに限定

lab の Notebook 形式で提供する．

するとともに，関連する technology を学問体系に編成し開発した教材の一部を図 3 に示す．章立ての構造をサたものと解釈できる．先に STEAM 教育の趣旨を述べた文ポートしている．図に示す例では，「■綺麗な図形の生

部科学省の考え方からすると，science よりも，technology成」が章にあたり，その中に「●原理」という節がある．

ないし engineering に重点を置くべきと考えられる．そしそれぞれの単位で内容を折りたたんだり，開いたりできて，technology な い し engineering の う ち，engineeringる．プログラムが網かけ部分に示される．この部分を実行

教育は工学系大学の専門教育そのものであるため，学問体でき，実行結果が表示される．

系としての engineering を取り扱うことはしない．

教材の章立てを図 4 に示す．教材の章立ては 2 部構成でただし，一部，技術開発における工学的方法論を取り入れる．

フィックスの基礎から始めてスピログラフ図形描画までを

すなわち，現象を観察して，法則性を見つけ出し，幾何学図形生成に応用することである．

ある．第 1 部は講義形式を用いて，コンピュータグラ解説する．第 2 部は生徒の創作活動の題材として演習問題を 6 題提供するものである．美しい図形を創作するという― 2 ―STEAM 教育に基づく高大連携}

見出し4教材開発 ─ 第 1 部講義 ─

4. 1

第 1 部第 1 章グラフ描画の基礎

第 1 部「第 1 章グラフ描画の基礎」は，基礎概念から始め，円を描画するまでを扱う．円の描画の前に，直交座標系の導入から四角形の描画までを扱う「第 1 節四角形」を設ける．以下，四角形を描画するまでのプログラミングを説明学習するための教材の構成を図 5 を参照しながら説明する．コンピュータで平面図形を描く際に，直交座標系を用いた座標指定によって，平面上の点が定まり，それを結んで線ができ，線を結んで幾何学図形ができるという基本概念を学習者に理解させる．次に，Python における標準的なグラフ描画モジュールである matplotlib［7］を用いて与えられた x,y 座標に対する点を描画するプログラム（図中に記載）が実行文 5 文で実現できることを理解させる．以下， 1 点から 2 点， 2 点からそれらを結んだ線， 4 本の線

プログラム

を結んだ四角形とステップバイステップでプログラミングを理解させる．
次は「第 2 節円」である．多角形の辺の数を増やして円を描画するまでの教材の構成を図 6 を参照しながら説明する．コンピュータで円を描くには，多角形の辺の数を多くして，人間が見て滑らかな曲線と見えるようにする方法を用いる．この概念を理解させたのち，多角形の頂点の座標実行結果を求めるために三角関数が必要であることを理解させる．
Python の数値計算モジュール numpy が提供する関数を用いたプログラムで計算できることを理解させたのち，多図3角形の辺の数を増やしてゆくと見た目には円と見える図形

Python 統合環境 jupyter lab を用いた教材の画面表示を描画できることを理解させる．
第1部

講義第1章

4. 2

グラフ描画の基礎

第1節

四角形第2節円

第2章

第 2 章が教材の中心となるスピログラフ図形生成の原理とパラメータ変更による様々な形状の生成に関する説明部

綺麗な図形の生成分である．円を多重に重ねて図形を生成することに対する

第1節

原理

第2節

様々な形の生成第3節

原理に立ち戻る

第4節

r と n を変更して様々な形を生成するアニメーション

第2部

第 1 部第 2 章綺麗な図形の生成

基本原理はベクトルの合成である．図 7 を使ってこの原理を理解させる．この原理に基づいた描画を Python で行うためのプログラムを提供している（図 8 ）．

創作活動

これ以降，図 9 に示すステップで複雑な図形の生成に向課題（ 1 ） 2 個の円からなる図形課題（ 2 ） 5 個の円からなる図形かって説明を進める．実際には，図に示すステップの中間課題（ 3 ） 5 個の円からなる図形のアニメーション表示にもいくつかのステップを設けているが省略する．

課題（ 4 ）回転対称でない図形

5 教材開発 ─ 第 2 部創作活動 ─

課題（ 5 ）内側で回転させる場合と外側で回転させる場合課題（ 6 ）スピードを整数でなくす

図4

生徒の創作活動の題材となる演習問題を 6 題提供する．
美しい図形を創作するという “Art” の側面を備えた課題

教材の章立てと，生成した形に対して，なぜそのような形になるのか“Art” の側面を備えた課題と，生成した形に対して，なぜを，工学分野で行われる現象解明のアプローチに基づいてそのような形になるのかを，工学分野で行われる現象解明解析する課題である．のアプローチに基づいて解析する課題を用意している．以下，その詳細を述べる．

はじめに美しい図形を創作する課題 3 題のうちの 1 つ課
題（ 1 ）について述べる．講義で説明したスピログラフ図
形生成プログラムの中の円の半径と回転スピードを決める
パラメータを様々に変更することによって，様々な形の図― 3 ―梅村祥之・直川耕祐

基本：
直交座標系を用いたx座標とy座標によって，平面上の位置を指定できる．

yy1(x1, y1)(x2, y2)

y20

原理

x1

x2

6角形

9角形

11角形

360角形

三角関数を用いて多角形の頂点の座標を求める

x1点描画

多角形の描画プログラム

描画範囲を指定

2点描画（割愛）
2点を線で結ぶ

360角形

図6

3点を線で結ぶ（割愛）

多角形から円に至るプログラミングの流れ

4点を線で結ぶ（割愛）a

終点と始点を線で結ぶ

ba +bベクトルの合成
図7
図5ベクトルの合成に基づくスピログラフ描画の原理

座標系を用いた点の描画から四角形の描画に至るプログラ
ミングの流れ形が生成される．各自の感性に従って，美しいと感じられる図形を創作するのがこの課題である．
「課題（ 1 ） 2 個の円からなる図形」では，図10のプログラムを用意し，プログラム上のどこに変更すべきパラメータが記載されているかをコメント文で示している． 2
箇所の数字を変更することによって，様々な図形を生成で

図8

ベクトルの合成に基づくスピログラフ描画のプログラム

きる．プログラムと実行例（図10）を示す．
次に，生成された変わった形に対して，なぜそのような形になるのかを，工学分野で行われる現象解明のアプロー
チに基づいて解析する課題について述べる．高校生が短期間で行うことを前提としているため，本来の現象解明と呼2個の円ぶに相応しい内容，すなわち，仮説を打ち立て，実験に

図9― 4 ―5個の円生成過程のアニメーション パラメータ変更

第 1 部第 2 章後半綺麗な図形の生成の各ステップ

STEAM 教育に基づく高大連携

Step 1 は条件を単純化して，現象を生じさせる要因を明確化する過程である．元の図形は 5 個の円を使っている．
円の個数を減らしてゆく． 1 個の円は回転対称であり， 5個の円で，回転非対称であるため， 2 個， 3 個， 4 個を調べ，円の数が最も少なく，かつ，回転非対称の場合が，最も単純な場合である．それを調べることを求めている．提供するプログラムの中に，それぞれの円の半径を 0 にする
ための，変更箇所をコメント文で示している．それに基づいて，変更して実行すれば，対応する図形が作成されて表示される． 3 個の円にした場合の画面表示を図12に示す．
この場合でも回転非対称が続いている． 2 個の円で実行してみると回転対称となり，最小個数は 3 個であることがわかる．

図10 「課題（ 1 ） 2 個の円からなる図形」のプログラムと生成図形

よって，仮説が成立するか否かを検証し，その結果に基づいて仮説を修正し，再び，実験を行い，仮説検証するというサイクルまでは実施しない．その代わりに， 2 ステップからなる簡易的な現象解析のステップを用意する．「課題（ 4 ）回転対称でない図形」がその枠組みで学習する課題である．教材内で課題を提示する部分の表示画面を図11に示す．

図12 「課題（ 4 ）回転対称でない図形」における解析過
程 Step 1 の実行画面

Step 2 は円の数を最低限にして単純化したあと，残ったパラメータに関してパラメータスタディを行うステップである．残ったパラメータは 3 個の円の半径と回転スピードの 6 個である． 6 個のパラメータ全てを一挙に変更すると混乱するため，円の半径を初期値のまま固定して， 3 個の回転スピードを様々に変化させて，回転対称性がどうなるかを調べるように教示している．図13に回転スピードを変更した結果，回転対称図形となった場合の表示画面を示す．
この他にも現象解析に重きを置いた課題として 2 課題を用意する．ここでは説明を省略する．
図11 「課題（ 4 ）回転対称でない図形」の説明文，プログラム，生成図形図に示される回転対称ではない図形を現象解明の対象とする．この現象を前にして，次の 2 ステップによって解析を進める．
• Step 1 ：条件を単純化する• Step 2 ：単純化した要素について，様々な値で，形を調べる― 5 ―梅村祥之・直川耕祐

図13 「課題（ 4 ）回転対称でない図形」における解析過程
Step 2 の実行画面であり，回転対称な図形が生成されている

6授業および教育効果

6. 1授業図15

講義中の授業風景およびポスタセッションにおける発表風景に参加しての感想をインタビュー調査した．質問事項をあらかじめ用意せず，臨機応変にやりとりした．発言のメモをとり，インタビュー後に文章化した．そのため，著者の開発した教材を用いて，広島工業大学高等学校の KSTEAM［4］類型 CL コース解釈が混入している．の 2 年生を対象に授業を実施した．実施

時期は初回講義が2023年 6 月 6 日であり，最後の発表会が9 月19日であった． 6 回の授業の構成を図14に示す．講義• 本テーマのどういうところに魅力を感じたか．
- 元々，情報系の内容に興味があった（半数以上の人の回答）の聴講者は74名で，本テーマの創作活動に参加して実施- プログラミングが好きだからし，発表会で発表した生徒はその中の10名であった．講義- 美術的な題材に興味があった

およびポスタセッションの写真を図15に示す．

- スピログラフに触れたこともあり，親近感を持っていた- 数学に関係したプログラムに興味があった• 講義50分• 創作活動100分× 3 回- 教材の詳細説明，図形生成の演習 1- 図形生成の演習 2 ，現象解明の演習，グループごとの実習テーマの選定- グループごとの実習テーマ実施• ポスタ発表用資料作成100分• 発表会100分
図14• モノづくりの楽しさを感じたか．
- 規則性や法則性を見つけるのが楽しかった- モノづくりを大々的に行なったと言えるほどの実感はないが，できた図形に美しさを感じ，それが楽しさにつながった- パラメータを変えて自分でいろいろな試行錯誤を行うと，様々な形が生成されて楽しさを感じた

授業の構成- 少しパラメータを変えるだけで全く異なる図形が生成されることがあり，刺激的であった

提示した 6 課題のうち，美しい図形を生成する 3 課題に- 教 材の中で提供されていないコンピュータグラ

ついては全員が達成できた．現象解明に関係する 3 課題のフィックス処理を自発的に盛り込んだ．プログラム

うち，難易度の低い 1 課題は全員が達成でき，難易度の高の修正によって様々な機能を実現できるところに楽い 2 課題は取り組みを行うグループがなかった．難易度のしさを感じた．具体的には，色をつける処理などで高い 2 課題のうちの 1 つは前述の課題（ 4 ）である．

ある6. 2• 数学的な内容を理解できたか．

インタビュー調査- 図形と三角関数のつながりを理解し，実感できた

創作活動の最後である第 3 回の時間中， 2 名からなるグ
ループごとに，各グループ約10分の時間を使い，本テーマ― 6 ―- 図形と三角関数のつながりを理解するのが難しかった

STEAM 教育に基づく高大連携• 難しかったところはどこか．
- 通常授業が与えられたことを覚えるタイプの授業に対し，能動的に取り組まないといけないところが難しかった- 1 年生で学習した三角比を忘れているため，その先を学ぶのが大変であった• 変わった図形が生成される現象に対する現象解明の内容（課題 4 など）は面白いと感じたかに対して，多くの生徒が興味を示さなかったが，興味を示した生徒も少数いた．
6. 3

発表内容および発表者の発言内容

ポスタセッションにおいて， 5 グループの発表が行われた．ポスタに掲載された美しい幾何学図形の例を図16に示

図16

ポスタに掲載された美しい幾何学図形

す．
ポスタ記載の内容および発表者の発言内容の中から，特筆すべき点を述べる．
• 作品創作に対する感想- 創作活動の第一印象に関するポスタの記載：「ずっとやっていられるような中毒性がある」- 創 作活動を終えての感想に関するポスタの記載：「めちゃめちゃおもしろい」「わくわくが止まらなかったので挑戦し続けることが可能」- 様々なパラメータを試していて，偶然，人間の顔のようなパターンが発生した作品のポスタセッション
での発表者の発言：「個人的に出来作です！」（図図17

顔のパターンが生じた作品

17）• 教材で与えていない新機能の追加- 図 形 の 内 部 を 指 定 し た 色 で 塗 り つ ぶ す 処 理 をPython プログラムの中に（教員の力を借りず）生
徒独自で追加（図18）- 様々な形の複数のスピログラフ図形を（手作業で）重ね合わせて美しい作品を創作（図19）

図18 ログラムを作成して図形の内部を緑色で塗りつぶしプた作品

図19

― 7 ―

複数の図形を重ね合わせた作品

梅村祥之・直川耕祐

7学科升井義博教授，高校側取りまとめ広島工業大学高等学考察およびまとめ校平原豪人教諭，情報工学科テーマの授業運営を担当されSTEAM 教育に基づく高大連携授業として，Python プ

た森田将征教諭に感謝いたします．授業サポートをしていログラムを用いたコンピュータグラフィックスにより美しただいた広島工業大学情報工学科梅村研究室升田康平君，い幾何学図形を生成する授業コンテンツを開発し，授業を岩崎楓也君に感謝いたします．本テーマを選択して創作活実施した．

動を積極的に行っていただいた広島工業大学高等学校 CL

受講した生徒へのインタビュー，生徒が作成した発表会
用ポスタの内容，発表会での発表者の発言内容を集約した
本取り組みの成否に対する筆者の印象をまとめる．
• 美しい図形の創作を通じてコンピュータグラフィッ

コースの生徒の皆さんに感謝いたします．

参考文献［1］ 文部科学省 :STEAM 教育等の各教科等横断的な学クスの技術を学ぶことに対して非常に成功した．

習 の 推 進 , 入 手 先 <https://www.mext.go.jp/a_• 幾何学図形と数学との関係を理解させることに対し

menu/shotou/new-cs/mext_01592.html>（参照2023-10-14）て，やや成功した．
• 不思議な現象に対して，工学的なアプローチで現象［2］ 広島工業大学高等学校 : 学校案内パンフレット , 入手
先 <https://www.kodaikoko.ed.jp/zennichi/

解明する試みは成功しなかった．

admission/img/2023gakkouannai.pdf>（ 参 照 2023-STEAM 教育の構成要素の各々に対する達成度に対す1014）

る筆者の印象を述べる．ただし，science については他の要素との重複が大きいため，単独の要素としては扱わな［3］ 広島工業大学高等学校：K-STEAM 類型―STEAM 1の 授 業 , 入 手 先 <https://www.kodaikoko.ed.jp/

い．
• technology に関し，コンピュータグラフィックスとzennichi/school_life/k01-2022-learning.html>（参照プログラミング技術を学習できたということから達成2023-10-14）［4］ 広島工業大学高等学校：K-STEAM 類型―CL コーできたと考える．
• engineering に関し，工学的アプローチによる現象解ス , 入手先 <https://www.kodaikoko.ed.jp/zennichi/

明の取り組みを盛り込み，試行した結果，未達成に終school_life/k-steam.html>（参照 2023-10-14）［5］ Wikipedia:Spirograph, 入手先 <https://en.wikipedia.

わった．
• art に関し，美しい図形生成に対して，ポスタで「ずっorg/wiki/Spirograph>（参照 2023-10-14）とやっていられるような中毒性がある」と述べられる［6］ C.J.Chen:Fun math art（pictures）-benice equation,など，ほとんどの生徒の満足度が高かったことから達入成できたと考える．

com/2012/01/fractal-spirograph.html>（参照• mathematics に関し，幾何学図形と数学との関係を理202310-14）

解させることに対して，つながりを実感させることが手

先 <http://benice-equation.blogspot.

［7］ The Matplotlib development team: matplotlib, 入手
先 <https://matplotlib.org>（参照 2023-10-14）

できたことから，ある程度達成できたと考える．

［8］ Project Jupyter: jupyter, 入 手 先 <https://jupyter.

謝辞org>（参照 2023-10-14）

高大連携での大学側取りまとめ広島工業大学電子情報工― 8 ―