建築 空間 にお ける行動 シ ミュ レー シ ョンの 可視化 に 関 す る研 究 ‐ ‐ 高齢者の行動特性 を反映 した避難誘導支援 システムの開発 Visual Analysis of Human Bchavioral Simulation in Architectural Space ― Refugee Guiding System Re■ ecting Bchaviors of Aged People at EscPac―
平成 10年 度
修士論文
指 導 :渡 辺仁 史 教授 早稲 田大学大学院理工学研究科 建設 工 学専攻建築学 専 門分野
697E082 平 岡 健 太 郎
目次
目次 第 1章
序論
1.1 1研 究背景
1.2 1.3
研究 目的 関連 す る既往研究
3.1「 新 ・建築防災計画指針」 による避難計算方法 1.3.2 シミュ レーシ ヨンにおけるモデル化 1。 3.3 既往 の避難 シ ミユ レー ションモ デ ル
1。
1.4 1.5 1.6
7 10
本 シミュレー シ ヨンモデルの位置づ け
11
研究 の視点
12 13
研究概要
避難行動 シミュ レー ション
第 2章
2.1 2 . 2
5
15
概要 つい 1〔 StarLogo lこ て
6
2.3.1 2.3.2
空間のモデル化 人間のモデル化
2
4
2
5
︲ 8 ︲ 2 %
シミユ レー シ ヨンデー タ
2.3
7
2.2.2 starLogOに お けるプログラミングの特徴
StarLogOと は
2.2. l
避難予条件 の設定方法
2.5。 2.5。
1 2
イ ン ター フェイスについて シ ミュ レーシ ヨン実行例
2.5
避難状況 の様 々 な 2次 元分析画像表示
第 3章
3次 元モデル を利用 した.表 現 による避難検討画像
3.1 概要 3.2 3次 元画像化 の手順 3.3 3次 元 モデルを利用 した通常表現 3。 4 垂直動線 の避難状況表現
7 5 2 2 ”
避難 シミュ レー シ ヨンモデルの構成
31
32 34 35
目次
3.4
避難者 の視点 か らみた可視領域表現 避難者視点表示 における奥行 き距離別表示
7 3
追加設定 と表現例
鳥厳 的な視点 か らみた可視領域 の表現
第 4章
8 9 3 3
3.5.1 3.5.2
表現手法 追加設定 と表現例
ケ ースス タデ
4.1 対象空間につい`て 4.2 与条件 入力 4.3 避難状況変化 の設定 (例 ・ シナ リオ 4.4 垂直動線 での避 難行動 の検討 4.5 3次 元表現 を活用 した避難誘導検討 4.5.1 全体 的 な避難誘導変更_Stepl 4.5.2 部分 的な避難誘導の検討_Step2 4.5.3 可視領域 を考慮 した 3次 元的検証_Step3 4.4.4 検証結果 を反映 した避難誘導_Step4 4.6 考察 )
第 5章
5.1 5.2 5.3
40 41
42 45
46 48 50 54 56
結論 研究 の成果
57
問題点 と課題
58
今後 の展望
59
おわ りに 謝辞 参考 文献 使用機器 お よび ソ フ トウ ェ アー 覧 付録
3.5
6 3
3.4.1 3.4.2
第 I章 序
論
第 1章
1
序論
研究背景 建築物 の防災計画 を立案す る上では、人間の避難行動 を予測 し、避難安全性 を評 価す る ことが重要 となる。 しか し、火災時の避難安全性 には、空間、人間お よび煙 流動 の 3つ の要素 が相互 に影響 してお り、しか も不確定 な要素が複雑 に絡 んで くる ため、実際 にお こる緊急時 の状況 を正確 に予測する ことは困難 で あ る。 ところで、近年 の社会状況 の変化 に伴 い、都市 に求め られる中枢 的な施設 におけ 。 る利用形態 の多様化 が進み、建築物 が大規模化 複合化 し、平面形態が複雑化 して きてい る。また、この ような施設 は一般 に利用者 が多 く、また利用者層 も広 いため、 運動能力 の異なる利用者 が混在す る状況が想定 され る。このため 、計画 を複合的 な 評価 の視点 か ら把握 ・検討す るための手法が求 め られている。 防災計画 を進め る上で、避難行動 に影響 を与 える要因につい て検討す るために、 コンピユー タを用 い たシ ミュレーシ ヨンを利用す る場合 が考 え られる。シミュ レー シ ョンによる避難安全性 の評価 では、出火後 の状況 を正確 に予測す ることはで きな いが、 い くつかの検討案 を用 いたケ ースス タデ イを容易 に実施す ることが可能で、 得 られた結果 を相対的 に比較検討 して防災計画上の指針 を得 ることがで きる。 現在、避難行動 の予測 を目的 としたい くつ かの避難 シミュレー シ ヨンモデルが存 在す るが、それ らの多 くは避 難上の特性 の異 なる建築物利用者 が混在す る避難問題 を取 り扱 ったものは少 ない。そ こで、人間の運動能力 や知覚 まで を含 めた総合的 な 避難 シミュレー シ ヨンが必要 であ ると言える。 また、これまで述べ て きた よ うな複雑 な状況 で よ り安全な避難計画 を行 うために は、これ までの 固定的 な避難誘導 ではな く、煙伝播等 の理由で時事刻 々と変化す る 避難状況 に対応 した避難誘導方法 について考 えることが重要 となつて くるとい える だろう。
第 1章
2
序論
研 究 目的 本研究 の 目的 は、実行 過程 の可視化画像 に よつて適切 な避難状況 の把握 を行 い な が ら、イ ンタ ラクテイブな イ ンター フェイス によつて避難誘導 の検討 が可能 な避難 。 シ ミュレー シ ヨンシステムを開発す る ことで あ る。 また、その実行過程 結果 の 2 。 次元 。3次 元可視化画像 によつて、避難時 における問題点 を視覚的 に把握 検討す る手法 を提案す ることで ある。
第 1章
3
序論
関連 す る既 往 研 究
1.3.1「
新・ 建築 防災計画指針」 に よる避難計算方法
И)に 基づ く避難計算が、建物の避難安全 防災評定 では「新・建築防災計画指針」 1め によると、この計算 は、避難 「新建築学体系 12」 の評価 。検討 に用い られている。 の は「特定の 行動予測手法の分類上「評価・検討型」 と呼 ばれている。この型 定義 ・ の 計画 または実体 に対 して避難の状況、特 に群集流動状況 を予測 し、避難安全 評価 検討 を行 う もの」である。 この手法 計算方法 はグラフを作図 しながら計算 を進める一種の図式解法である。 新・ は避難計算 の経験のない設計者でも容易 に習得できることを考慮 して考案 され、 の人々の歩行 建築防災計画指針の 1985年 版から採用 されたものである。建築物内部 とんどは 行動 を予測す る手法は古 くから研究開発が行われてきてお り、それらのほ こ 避難計算 にも適用可能 と考 えられるが、採用す る手法 によつて予測結果が異なる とがあるので、防災計画書の避難計算 としては、本指針 に示 された計算方法 を採用 することが望 ましいとしている。 づい 「新・建築防災計画指針」で述べ られている避難計算方法では以下の過程 に基 て、避難時間、滞留人数 を計算 し、建物の避難安全性 を評価す る。
(1)避 難計算方法の過程 避難計算 は以下の過程 を前提 として行 われる。
1.避 難対象者 は室内に均等に分布 している。 2.同 一室内の避難はいつせいに開始 される。出火室の避難開始時間は
2マ ア 、他
の室では 4マ7。 (A:出 火室面積)
3.避 難者 はあらか じめ定められた経路 を通 つて避難す る。 4.歩 行速度 は一定で、追い越 しや逆戻 りな どがない。 5.群 集流動係数はあ らか じめ決められている。 6.出 入口が複数で特 に誘導がない場合 は最寄 りの出入口から退出。 (2)避 難時間の計算 3通 りの避難時間 として、居室避難時間
(各 居室 ごとに、その室の全員が室外 に
に避難 避難完了す るまでに要す る時間)、 廊下避難時間 (廊 下などの第 1次 安全区画 ま の 者が存在す る時間の長 さ)、 階避難時間 (火 災発生時刻からその階 全員が階段室
第 1章
序論
たは附室 に避難完了す るまで の時間)を 計算す る。
(3)評 価 避難時間および滞留人数 を以下 の とお り評価す る。
1)避 難時間の評価
:上 記各避難時間がそれぞ れの許容避難時間 より小 さい と避難
「2∼ は安全であ るとみなされる。居室、廊下、および階許容避難 時間はそれぞれ、 「8イ Al+■ 2」 である。Alは 出火室 の面積、■2は 非出火室 の 「4イ Al+■ 2」 、 3√ 扇 」、 面積 と廊下 また は第一次安全 区画 の面積 の合計 である。
2)滞 留人数の評価 :出 入口な どのネック部分 の最大滞留 人数 を計算 し、必要面積 が確保 され ているかを評価す る。 廊下 な どの第一次安全区画 の必要面積
=最 大滞留 人数 × 0.3[ぽ /人 ] 附室やバルコニー等 の第二次安全区画 の必要面積
=最 大滞留 人数 × 0。 2[ぽ /人 ]
第 1章
1.3.2
序論
シ ミュ レ ー シ ョ ンに お ける モ デ ル 化
の 避難 シミュ レー シヨンモデルでは、空間、人間、煙 流動 の 3つ の要素 相互作用 の を 問題 を取 り扱 う。 このため、モデルでは、これ らの 3つ の要素が要素間 関係 考 ことが重 要 と 慮 して適切 に表現 され、各要素が避難行動 に与 える影響 を評価 で きる なる。 避難 シミュ レー シヨンモデルにおける人間お よび空間のモデル化 には、主
に以下
の よ うな方法が挙げ られる。
(1)人 間のモデル a)ト
ラ ンザ クシ ヨン
対象 となる人間一 人 一 人を区別 して表現す るのが トラ ンザクシ
ヨン型 であ り、人
き 間 の 質の違 い を取 り扱 う場合、また個人の属性 がシス テ ム全体 に与 える影響が大 い と考 えられ るときに採用 され る。例 えば空間の中 に、扉 ・出入 口 といつた流 れが 一 時的 に制限 され待 ち行列が発 生す るような部分 (ネ ック)が あ つて、そ こでの流 れの変化が空間全体 の計画 に影響 を及ぼす よ うな場合 に トランザ クシ ヨン型が採用 され る。 この トラ ンザ クシ ヨン型 は、そ れぞれの 目的地 や歩行速度な どの行動能力 や認知 度 、他 の トラ ンザクシ ヨンと衝突 した際の回避則、また役割分担 な
どの属性 を個体
つた り、 に与 えてその影響 を見 る ことがで きる。また流れ に同調 した り、合議 をはか る こと 解 除 した りす るとい う、個 人間の物理的、心理的、社 会的相互作用 を説明す も トラ ンザ クシ ヨンモデルであれ ば可 能であ る。 しか しトラ ンザ クシ ヨン型 の場合 には、同時 に大量 の 人間の刻 々の状況 を各 人に ついて全 て記憶 してお く必要があ り、要求 され る トラ ンザ クシ ヨン数 に比例 して計 る とい う欠点があ 算量 が増大す るためモデル運用 の際 に計算能力な どの制約 を受け る。
b)フ
ロー
フロー型は、人間を量 として扱 い経路 に配分するもので、大量の人間の流動 を扱 とき、 い う場合、流動 目的が全員に共通 で人間の質 に大 きな差がな とみなされる ネックが特 に系全体に影響 を与 えず流動の相対的な関係 だけが問題 となるとき、空 を 間相互のつ なが りが流動量 に対 して十分広いとき、また主体条件 より環境条件 優
第 1章
序論
先 して考 えるときに採用 され、 トラ ンザ クシ ヨン型 に比べ計算時間 な どの面で有利 であ る。 しか し、面的な広が りを持 つ流れ、あ るいは偶発的 な人の流れを説明 し得 ない と い う限界 がある。また一度 に大量 の 人間の流動 を予測 がで きる反面、一 人一 人を区 別 で きないため、人間 の行動特性 を細か い ところまで反映 させ るのは難 しい。
(2)空 間のモデル a)座 標 壁、柱 、扉 などの位 置 を座標 で与 え、空間の形状 をで きる限 り実体 に近 い形 で表 現 し、また人間の位置 も座標で与える ものであ る。CAD図 面 を利用す る ことがで き るため、 トラ ンザ クシ ヨン型の仮想 空間 として しば しば用 い られる。人間の歩行 に おける、柱 や手す り、壁 な どの影響 を考慮す る必要 がある場合な ど、人間の挙動 を ミクロに把握 しよう とす る場合 に適 してい る。 ただ し、大規模 な建築物 の全体 を対 象 としよう とす るときには、計算機 の容量 の 制約 を受 け る。また、初期 デー タの イ ンプッ ト量 が多 くなるとい う問題 もある。 次 に述べ るメッシュの分割 をかな り細 か くした場合 には、各 メッシュはほぼ点 に 近似 で きるため、 この 人間や空間の位置 を x― y座 標 で表現す る座標 モデル も、基 本的 には メッシュ型 に分類す ることがで きる。
b)メ
ッシュ
対象 空間 を正方形 も しくは長方形 な どの メッシ ュ に分割 し、 メ ッシュか らメ ッ シュヘ の移動 として人間の流動 をとらえ よ うとす る ものであ る。これは対象空間が 必 ず しもうま く分割 で きな く、空 間全体 も内容が均 一で ある場 合 に採用 される。 メッシュ型 の特徴 は、単位区画の面積 が 一定 となる ことや、隣接空間の表現 が常 に 周囲 8メ ッシユと して 一定 となることがあげ られる。 また人間の面的な広 が りを 演算処理が簡単 であるといつた利点が この方法 は有 してい る。 持 った移動が扱 える、 しか し、面的な広 が りを持 った移動 を厳重 に扱 うためには、メッシュを細 か くす る必 要 があるが、計算機 の容量 の制約 上それがで きない とい う問題 がある。
c)ネ
ッ トワー ク
建築 や都市 のそれぞれの空 間 をい くつ か の点 (Node)と 、そ れ らをつ な ぐ線
(Path)で 表す 「ノ ー ド・パス方式」 と、空間 を複数個 の領域 (Block)に 分割 し、
第 1章
序論
ー それが連接 した もの として とらえる「ブ ロ ック結合方式」とがある。連結 された ノ ドゃパス 、あ るいはプ ロ ツクを通 つて人 間が流動す ると考 えるのであ る。対象 とす る空 間が不特定 のい くつかの まとま りで表現 で きる場合 で、あ ま り詳細 な流動 まで 扱 う必要 のない時 には、その まとま りをもった空間を別 々のノー ドで表 し、それ ら のつ なが りをリンクで表す この ネ ッ トワー ク型が採用 される。建物 の全体 を取 り扱 う場合、多数 の人間 を取 り扱 う場合 な どに採用 され、モ デル化 や初期デ ー タの入力 が容易 であるとい う利点がある。 この ネ ッ トワー ク型 は、流動状況 を相対的、マ ク ロ的、定量的 に把握す るのに適 した空間モデルである。 しか し線上 を移動す る量 として しか表現 で きない、また線的 な扱 いであるため流 動 の面的 な乱れやゆ らぎを扱 えない といつた限界 を持 つている。
避難行動 を予測す る際 に火災 に伴 う煙伝播 の影響 を考慮す る場合 には、避難 シ ミュレー シ ョンモデル とは独 立の煙流動 シミュレーシ ョンの結果 を利用 し、各空間 へ の煙 の伝播 をあ らか じめ シナ リオ的に入力条件 として導入す る方法がある。また、 避難 シ ミュ レー シ ョンモデル 自体 に煙流動 シ ミュレーシ ヨンの機能 を組 み込み、出 火後 の時間経過 に応 じて避難行動 と並行 して煙伝播 を逐次計算す る方法 もある。た だ し、現状 では煙伝播 の計算 に対 して、避難者 の行動 が与える影響 を考慮 で きるも のは少 ない。
第 1章
3.3
序論
既往 の避難 シミュ レー ションモデル
149に よる避難計 算法 は、数値計算 前述 の項 目で示 した「新 。建築防災計 画指針」
とグラフを用 い た避難特性 の表現 であるのに対 し、個 々の避難者 の行動 を時 々刻 々 画面 上 に表示 し、建築空間の全 体的・部分的 な避難特性 を視覚的 に把握可能 にす る 研究 が行われ ている。 しか し、その多 くは 2次 元的 な表現 であ り、避難状況 の 3次 い 元的可視化 によ り避難状況 を視覚的 に把握・検討 で きるものはほ とん ど見 られな 。 また、既往 の避難 シ ミュ レー シ ヨンモデルの多 くは、平均的 な人 を基準 とした行 動特性 をもとに行 われ、避難上 の特性 の異 なる建築物利用者が混在す る避難問題 を 取 り扱 うことがで きない。 対象 空間の規模 の点 か らみる と、小
。中規模 の建築物 を対象 とした ものや、空間
の局所的 な状態 に依存 した避難者 の行動 を検討す る ものが多 く、大規模 かつ複雑 な 。 空 間構成 をもつ建築物 を対象 とし、その避難状況全体 を把握 検討す るものは少 な い と言 える。 さらに避難誘導 に関 しては、避難方向 を固定的 に表示す るだけの誘導表示方式 が 取 られ、避難状況 の変化 に対応 した避難誘導方法 や管理面 での検討 はあま り考慮 さ れてい ない。
10
第 1章
1.4
序論
本 シミュレー ションモデルの位置 づ け 避難 シミュレー シ ヨンモデルを構築す る際 の人 間、空間お よび煙流動 の各対象 の モデル化 の仕方 の違 いは、モデルを利用 して重点 に得 たい防災計画上の指針 の内容 に依存 している。行動能力や認知度 の異 なる人 々を対象 とした避難 に対 して、設計 段階の建築物 における平面計画 の変更 や建築物内での避難誘導方法 に対す る指針 を 得 るためには、人間個 人の避難行動 を基本 とした複数 の人間の避難行動 を評価
でき
る ことが重要 である。 空間のモデル化 に関 しては、人間個 人の避難行動 に ドアの位置や壁 、周辺 の人間 等 が影響 を与えるため、これ らの条件 の影響 を適切 に取 り扱 えるモ デ ル とす ること が望 ましい。 また、避難軌跡 を個人単位 で現実 に近 い状態 で捉 える ことを考慮す る と、避難者が空間内を自由 に移動 で きるモデル化 を行 う必要 がある。 以上 の条件 か ら、本研究 の避難 シミュレー シ ヨンでは以下 のモデル化 を行 った。 。人間モ デル・・・ トラ ンザ クシ ヨン型 。空間モ デル・・・ メッシュ型
火災 の際 に発生す る煙 に関 しては、その伝播 の仕方等 に見知 な部分が多 く、また い 避難行動 シミュレーシ ヨンに組 み込 む と、プ ログラムが複雑化 して しまうと う難 へ 点 もあ るため、煙流動 のモデル化は行 わず、各空 間 の煙 に伝播 をあ らか じめシナ リオ的 に入力条件 として導入 す る方法 をとっている。
第 1章
1.5
序論
研究 の視点 避難 シミュレー シ ヨンによる避難安全性 の評価 では、想定 で きる火災 シナリオを 網羅 的に検討 し、総合的 に評価 を加 える方法 も考 えられ るが、本研 究
では、次 に示
・ に す 2点 に着 目 して、それぞれの内容 が避難安全性 に与 える影響 を定量的 定性的 捉 え、避難安全性 の評価 に結 び付 け る ことを考 えている。
1)避 難上の特性 の異 なる避難者 の混在が与える影響
2)避 難の状況変化 に応 じた避難誘導が与える影響 そ して、建築物 の防火設備対策 や、避難誘導方法 を含 む管理体制 上の課題 を明
ら
か にす るために本 モデルカ滞J用 で きる ことを重 点 とす る。また、モデル構築 に対 し ては先 に述べ た課題 を考慮 し、次 に示す条件 を満 たす もの とす る。
a)各 人の避難行動 を個別に予測 で きること b)各 人の避難上の条件 を個別 に設定で きること c)各 人は状況の変化 に応 じて経路 を選択す ること d)避 難誘導サ インの 自由な設置が で きること ー そ して、この シミュ レー シ ヨンモデルを用 いて、実在 の建築物 を対象 としたケ スス タディを行 い、シ ミュレー シ ヨンモデル自体 の持 つ性能や結果 として得 られる 内容 を紹介す るとともに、 ここに示 した各要件 を満 たす ことを確認 してゆ く。
12
第 1章
1.6
序論
研究概要 本研究 は、 1)避 難行動 シミュレー シ ヨンシステム に加 えて、 2)3次 元可視化 システムを構築 し、それ らを一つに連結 した新 しい避難検討 シス テム を提案 してい る。 この方法 により、避難行動や避難計画 に対する よ り視覚的で多様 な把握 ・検討 を可能に している。 以下 に本避難検討 システムの主な流れ を示す。
初 期条件設 定 。避難口、非常階段 など 。避難者数、災害弱者混在率など ・煙流動のシナリオ
避難 シ ミュ レー ション実 行 。介入操作 による避難誘導 。検討内容 に応 じた 2次 元表示画像の切 り替え
避難 行動 シミュ レー シ ョン シス テ ム
シ ミュ レー シ ョ ン実 行 結 果 の 出 力
︱︱▼
・避難時間 (ス テ ップ数 ) 。選難者 の位置 。誘導サイ ンに関する情報
検 討 内容 に応 じた追加 設 定 。視点、視認距離など
3次 元可視化 シス テ ム
3次 元可視化画像作成
図
1.1:
本避難検討 システムのフロー
1)の 避難行動 シ ミュ レーシ ヨンでは、大規模複 合施設 を対象 に、実行過程の 2 次元的可視化画像 を用 い て、大局的な視点 か ら、避難状況や避難時 における問題点 を視覚的に把握 。検討す る。
第 1章
序論
べ は 人間個 人 のモデル化 に関 して避難行動面 か ら考慮 す き点 は、避難者 設計段階 により の で特定 され ている避難経路 のみを利用す るのではな く、空間や煙流動 条件 この よ うな避難行動 に対応 状況 に応 じて経路選択 をす ることであ る。本研究では、 シミュ レー シヨン す るため 、避難 シミュレー シ ヨン実行 中 に、煙流動 のシナリオや ス ム の状況変化 に応 じて、イ ンタラクテイプに介入操作 可能な避難誘導 シ テ を提案 している。
2)の 3次 元可視化 システムでは、 3次 元モデルを用 いて、シ ミュ レー シ ヨン実 行結果 を繁栄 させた可視化画像 を作 成 し、その時系列 的表現
を行 う。
や、避 の その際 に、空間記述法 を利用 した設定 を加 えるこ とで、垂直方向 避難状況 難者 の視点 に立 つた局所的 な避難状況 が確認 できる。
つづ く第 2章 では、 1)の 避難行動 シ ミュレー シ ヨンシステムについ て、第 3章 では 2)の 3次 元 モ デルを利用 した表現 についての詳 しい解説 を行 う。 の い ー さらに第 4章 では、実在 の建築 空間を対象 としたケ スス タデイを行 、避難 問題点 について考察 す る。
14
第 2章 避 難 行動 シ ミ ユ レ ー シ ヨ ン
第 2章
2.1
避難行動 シミュ レーション
概要 づ 本 シミュ レー シ ヨンシステムは避難者個 々の トランザ クシ ヨンに基 く離散系 のシミュ レー シ ヨンモデルによる避難行動 シ ミュレー タであ り、StarLogoの 開発 環境上で開発 を行 った。機能的 な特徴 は以下 の 5点 であ る。
1)画 像 による避難予条件 の簡易入力
2)災 害弱者 の混在 を再現す るシ ミュレー シ ヨンモデル
3)実 行過程 で介入操作可能なイ ンター フェイス 4)シ ミュ レー シ ヨン実行過程 での介入操作 による避難誘導検討機能 5)避 難状況 の リアルタイムな 2次 元画像表示
崚
¨ 一 一
図 2.1:操 作画面例
第 2章
2.2
避難行動 シ ミュ レー シ ョン
StarLogo[J?t\( 2. 2. l
StarLogoと は
MITの メデ イアラボで 開発 された、dcccntralized
systemsの
働 きを探求す るための、
プ ロ グラム可能 なモデリ ング環境 で あ る。 StarLogoを 用 いて現実世界 の現象、鳥 の群、交通渋滞、 コロニー、市場経済 な どの
現象 をモデル化 し、観察す ることがで きる。 ここで、deccnttdizcd systmと は、中央 で管理す る存在 が無 い状態 で 、組織化 が行 deccnidizc われ るシステムのことで あ り、これは調整者無 しで 自発的 に調整 される。
「 (行 政権 。 人口な どを〉分散 させ る、地方分権 にする」であ る。 の辞書的 な意味 は、 StarLogoは dcccntralizcd systemを 理解す る手助け として開発 され てい る。 StarLogoは プログラミング言語 LOGOを ベース としてお り、与 えられたコマン ド
に従 いtunleが 画面 に描 画 を行う。StarLogoで はturtlcは 並列(ParallCl)に 動作する。そ れに加え、Patchと 言うtuileの 環境 を形成するもの (簡 単 に言えばtu■ にがのつかつ ているタイル)を プログラムすることができる。 これにより、patchの 上の tu■ lcに 影響 を与えることが出来 る。
このサ ンプル は 、ア リが巣 に餌 を運ぶ動 きの シ ミュ レー シ ヨンで あ る。ア リは、餌 を運 ぶ 際 に匂 い を発 し、そ の周辺 の他 の ア リは、この匂 い につ られて餌 までた ど り着 くようになってい る。
82.2:
Starlogo
At>7)v-tD
I
このサ ンプルは、音 の広 が りや反射、音同士 音 の強 さや の干渉 のシミュレーシ ヨンで ある。 様 々 な状態が再現可能 波長 を変更する ことで、 となっている。
図
2.3:StarLogOの サ ンプル_そ の 2 16
避難行動 シミュレー ション
第 2章
2.2.2 StarLogOに お ける プ ロ グ ラ ミ ングの 特徴 1)少 ないコー ド量 で複雑 な系のモデルが作れる。
2)各 turtleが 同 じコー ドを並行 して実行す る。 そのため各 tuileに 注 目して コー ドを書 け ばよい。これは decentalizcd systcmの 考 え 方 とよ く一致す る。
3)排 他処理が楽。 turtlcの 駆動 は tu■ leが 持 つ変数 を変更す る ことによつて間接的 に行 われる。
また言語 としての特徴 は、オブジェク ト指向 であ り、基本的 なプ ログラ ミングに
LOGOを 使用 してい るため習得 が比較的容易である。 次 に、欠点 としては主に以下 の点が挙 げ られる。
1)実 行速度が遅 い。 2)メ モ リが大量 に必要。
3)現 在 Macintosh版 のみ。 (lNIX版 の 開発予定 はア リ 4)ス タン ドアロン型 のアプリケー シ ヨンが作 れない。 5)他 の システムに組 み込む ことが 出来 ない。
)
入手先
:
StarLogo
http=//wW7.media.Ini t.edu/starユ οgο MI「 の メデ イア ラ ボ で 開発
StarLogo Tl StarLogoの retune版 http=//w″ ″.tuFtsoedu/as/CCユ /Cm 口℃ Center for Connected Learning and Computer‐ Based Modeling Tuis Universityで 開発
17
第 2章
2.3
避難行動 シミュレー ション
シミュ レーション・ データ
2.3.1
空 間 の モデ ル 化
,
空間モデルは対象 となる建築空間の状況 を表示す るものであ る。表示 はある階の ス ムでは 平面 をメ ッシユ (正 方形 の格子)に 分割 し、 メッシュ単位 に行 う。本 シ テ Patchと 呼 ばれる複数 のメッシュデー タを利用 してい る。
表示 に関 しては、本 シミュレー シ ヨンの 開発環境 である StarLogoの 機能 的制限や モ ニ ターの レゾルー シ ヨン、メモ リー な どの制限により、(メ ッシユ数)=125× 125、 い のためメッシュの単位寸 (pixel数 )=251× 251の 平面表示が限界 となって る。そ ー こと 法 は、入力す る平面 の大 きさに より異 なるので、平面図のスケ ルを入力す る で決定 している。 また、避難者 の歩行速度 も同様 に して、平面 に応 じた速度 に変換 され る。 例 えば、長手 が20mの
暦
平 面 を もつ 建 築 物 を対 象 と した場 合 、 シ ミュ
“ 〓一 一 一
熙溝 整
﹂ 市 一 一 一
=II
レーシ ョン画像 上 で は、 余 白 を考慮 す る と、2∞
meshに 変換 され る。 ゆ え に、単 位 メ ッシ ユの
圏卜25m O.25m
大 きさは、一 辺 が 0.25m となる。
単位 メ ッシュ
25lmesh
X 25lmesh 図 2.4:平 面のスケール変換例
Patch(複 数のメ ッシユデー タ)に 表示 され る内容 は、大別 して次 の 4つ の項 目で あ る。
1)空 間構成要素
2)避 難口までの距離 のポテ ンシ ャル 3)避 難者の動 き 。軌跡 4)避 難誘導 サ イン 18
第 2章
避難行動 シミュレー ション
1)空 間構 成要素 対象 プラ ンの カラー ビ ツ トマ ップ画像 を (画 像 サ イズ )=251× 251 pixdに 変換 し て表示す る。黒 く着色 され た部分 が、壁 や間仕切 りとして認識 され、通過不可能部 分 となる。 また、階段 部分 は垂直避難 の経路 と して、上階 か らの避難者 の発生 と下 階 へ の移動 を行 う。
図 2.5:対 象空間 P!an
図 2.6:シ ミュレー ション実行画像例
2)避 難 口 までの距離 のポテ ンシ ャル 本 シ ミュ レー シ ヨンで は 、避難者 はあ らか じめ避難 回の位 置 を知 つてい る もの と し、基本 的 な経路探索 は最 も距離 の近 い避難 口 を目指 して行 われる。その ため 、 ま ず設定 した避 難口へ の距離 の ポテ ンシ ャルを計算 し、それ を参照 して避難が行 われ る。以下 に避難 口へ の距離 ポテ ンシ ヤルの算 出方法及 び表示方法 につい て示 す。
図 2.7:距 離ポテ ンシ ャルの 表示例
国 避難 口
(=0)
図 2.8:距 離ポテ ンシャルの計算
避難口 を oと して、そ こか らの距離 に従 って図の よ うにポテ ンシャルの 値が増加す る計算 を行 う。この方法 を用 いることで、避難口か らの直線 距離 ではな く、壁や間仕切 りな どの 回 り込みを考慮 した距離ポテ ンシ ャ ルが算出 される。
図 2.9:距 離 ポテ ンシャルの計算法
19
第 2章
避難行動 シミュレー ション
3)避 難者の動 き・ 軌跡 StarLogoの 機能 を利用 して、避難者 の移動軌跡 ・密度 を表示す ることがで きる。
図 2.10:避 難
Time:30sec
Time: 1Osec
4)避 難誘導方法 避難誘導方法 に関 しては、 2種 類 の方法 を用 い る。一つは与条件入カ プラ ンを描 き換 える ことで、距離 ポテ ンシャル を計算 し直す方法 であ る
(図 :2.12)。
これは、
避難途中 に、煙 の伝播 などの要因で避難口または非常階段 が閉鎖 された場合 に、館 内放送 な どを利用 して全体的な避難誘導 を行 う ことを想定 してい る。 もう一つ は、 避難誘導灯 にみ られるようなサ イ ンを用 いた局所的 な避難誘導方法 であ る。ここで は、健常者 と災害弱者の認識力 の差 を考慮 して、サイ ンの及 ぶ範囲 を 2段 階 に設定 し、ポテ ンシャル を計算す る方法 をとっている。 また、サ イ ンの位置、方向、その 誘導 のお よぶ範囲 を実行画像 に表示す ること もで きる
(図 :2.13、 2.14)。
図 2.12:再 計算 による全体的 な避難誘導例
図 2.13:避 難誘導サイ ン
図 2.14:避 難誘導サインとそ
20
第 2章
2.3.2
避難行動 シミュ レーション
人間のモデル化
避難者 の空間移動 は実 座標系 で行 われ、前項 で解説 した空間のモデル化 によつて
Pach(複 数のメッシュデー タ)に 記述 された空間情報 と、避難状況 で決定 される制 約情報 を参照 しなが ら、逐次経路探索 と移動 を繰 り返す ことによ り実行 され る。
避難誘導サ イン
図
2.15:避 難 誘 導 サイ ン
空 間情報 は制 約条件 は、それぞれ が 独 立 したPatchに 記述 され、経路探索 にお いて 、 そ の都度状況 に応 じて必 要 な情報 を参 照す る。 また、重 み づ けを行 い 、 避 難者 はあ らか じめ設定 され たル ー ル をもとに、避難者 の属性 ご とに並 列処理的 に実行 され る。 ル ー ルは以 下 の 2つ に大別 され る。
1)空 間移動 に関す る基本 的 な ル ー ル 2)避 難者属性 ご との ルール 1)空 間移動 に関 す る基本 的 なル ール 避 難者 は、壁 や 間仕切 り、柱 とい つた躯体 を通過不可能 な もの と認識 し、避難 口 まで の距離 のポテ ンシヤル を参照 しなが ら避難行動 を行 う。 避 難者 の経路探索 は、Pttchに 記述 された情報 を適宜 参照 して行 われ る。経路探索 方法 は、周囲 8メ ッシ ユ を検索 し、距 離 ポテ ンシ ャル 、誘導 サ イ ン、空 間情報 な ど の デ ー タか ら、最 も適 した メッシ ュ に移 動 を行 う。 (図 2.16) 21
第 2章
避難行動 シミュ レーション
移動先 のメッシユ に他 の避難者が いる場合 には、2番 目にに適 したメッシユ に移 動す る。周囲 8メ ッシユの 中 に移動可能なものがない場合 は、 1ス テ ツプその場 で 待機す る。以上 の方法 で他衝突判定 を行 っている。
距離 ポテ ンシ ャル を参照 する場合
\
/
l
│
この場合、距離 ポテ ン シャルが最 も低 い③ に 移動す る。
/ ヽ
誘導 サイ ン を参照 する場 合 この場合 、右方 向 の誘
可能な周囲8メ ッシュ E]は 移動
導 サ イ ンの影響範 囲 に 入 つてい るので、距離 ポ テ ンシャル に関係 な く、右 の メ ッシュに移 動 す る。 ※数字 は距 離 ポ テ ンシャル値
図
2.16:避 難誘導 サ イン
2)避 難者属性 ごとのルール 避難者 の属性 としては、健常者・災害弱者
(お
もに高齢者)を 設定 した。特 に避
の 難弱者 については、周囲 の避難者 の密度 や歩行速度 の影響 をより強 く受 ける も と した。また、サイ ンによる誘導 の効果 や避難者があ らか じめ認識 している避難口 に よる経路選択 の重みづ けな ども行 ってい る。 基本的な避難行動 特性
(歩 行速度 など)や 、避難者 の初期発生条件 な どの設定 に
1° 「新版・建築防火」 他 の文献 を参考 に して決定 してい る。(表 2.1∼ 関 しては、
2.3)
表 2.1:各 種条件下 での歩行速度 足 の遅 い 人
l∞ (nvs)
水 中 (腰 下 )
030 070
030
足の速 い 人
2 1Xl
間 中 (現 場 既 知 )
標準
133
間 中 (現 場 未 知 )
小走 り
3 CЮ
中走 り
4∞
大走 り 真剣 に走 る 徒競走世界記 録 水泳記録
070
030
600
と膝で1よ う
030
8 CЮ
手 と膝 で は う
040
1000
手 と足 で は う
050
170
最低 姿 勢 歩行
0611
070
22
第 2章
避難 行動 シ ミュ レー シ ョン
表 2.2:要 避難者 の タイプ別 にみた避難行動能力の基準値 群 衆 のイ 種
例
類
示
よ平 A 種 B 種
自力のみで行動ができ
重病 人 、老衰者 、乳幼 児 、
にくい人
情薄者 、 身体障害者 な ど
そ の 建物 内 の位 置 、経路
旅館 な どの宿泊各 、商
な どに慣 れて い な い
占 事 務所 な どの来客 、
般
C 種
のひ と
重行 入な ど
その建物 内 の位 置 、経路
建物 内 の 勤 務者 、従 業員 、
な どに慣 れ て い る 身心
流 出係 数
平均 歩行 速 度
警備 員 な ど
(υ
皆段
)
(υ
′ )
k平 (N)
(N.)
段
08
04
13
0cc
m/scr
tt scc メυ
10
05
15
13
mcc
耐議
h scc メυ
h scc メυ
12
06
16
rec
mtc
m scc メυ
11
14 h メロ
scc
強健 な人
表 2.3:避 難計算用人 口算定密度 人口密度
対象部分
建物 用途
5
0
一 冗
(メ Jご ) 0
5
︲
以 下の 部分 につ い て も この 値 で よい。
。
6 ︲
0
5 2
室
議
6
0
7
満
0
未
5
L
︲
以
卜 会
霊 ‘ 房 場
飲 食店 ス
旅館
各 レ 厨 宴
ホテ ル
耐 ご
佃佃 食堂
貸 しビル
自社 ビル
事務所 ビル
高 さが 61m以 下の 事務所 ビル
高 さが 61mを こえ る 事務所 ビル
5 2 ︲
0
集 会場 等 一般 事務室
5
通路
厨房 は ホテルの 項 に よる。
5 2
0
売場
7
飲 食店舗
対す る密 度
0
商業 ビル
連続 式 店舗状 の 部 分
百貨 店 または
コ ス カ レー ター部 分 、通 3
固定 席 が無 い場 合。 固定 席 が あ る場合 には座席 に よるc 実態 また は想定 での よい。 収容 可能 人数に よる
05 実態 または想定 にす る。 1()
E
02 一 P
室 主
室 室 室
究 験
大学等
険 研 莫
学校
数 に立見席 (2人 /ご )を 加 えた数で もよい 。 また は想定 に よる。
15
ッ ド数 に よる。
部 務
米
病院
席
艇屋 事務室等 病 外 事
公 会堂等
職 員 を含 む もの とす る。 務所 ビルに準 ず るか また は実態 に よる :室 数 に 1を 加 えた数で もよ い 。 師
(例
3 LDKで 4人
)
,数 に よる。
‐ 般 事 務室 に準ず る。 こ 態 また は想定 に よる。
23
第 2章
2.4
避難 行動 シ ミュ レー シ ョン
避難 予条件 の設定方法 ー 避 難予条件 の 設定 は 対象空 間 の 平 面 図 の カラ ー ビ ツ トマ ップ画像 をシ ミュ レ シ ョンシステ ム に呼 び出す ことに よつて行 われ る。
図 2.17:対 象空間の プラン
■壁 :通 行不能 ■階段 :垂 直方向の避難 部屋 :避 難者の初期発生率 =大 ■廊下 :避 難者の初期発生率 =小 ■避難口 :最 終的に避難する場所 図 2.18:避 難者の初期発生条件設定 プラン
画像 に含 まれ る条件 は 、色 に よつて判別認識 され るため、入力用 画像 にはあ らか じめ着彩す る必要があ るが 、入力後 にシ ミュ レー タの編集機能 で追加 ・変更す る こ と も可能 であ る。画像 か ら入力 され る情報 を次 に示す。
a)躯 体 ・階段 ・エ ス カ レー タ・ ス ロー プ 。開口部 な どによる避 難 空間の平面的 ・ 垂 直 的構成
b)避 難者 の初期配置条件 や昇 降 口等 か らの発生条件 。 画像 による入力 を採用 す る こ とに よつて、CADで 作 成 した画像 や 図面 手書 きス ケ ッチのデ ジ タイズ画像等 か ら簡易 に予条件 を取 り入 れる ことが 可能 となつた。ま た、編 集機能 をシ ミュ レー タ側 で 備 えて い るため、条件 の変更 や比較検討 につい て 簡易 に行 う こ とが可 能 となって い る。
24
第 2章
2.5
避難行動 シミュレー ション
避難 シミュ レー ションモデルの構成
2.5.1
イ ンタ ー フ ェイ ス
与条件 の設定や シ ミュ レー シ ョンの実行 は、ボタ ンやス ライ ドバー を用 いて簡単 に行 うことがで きる。以下に シミュレー シ ヨンシステムのイ ンター フェイスの解説
卜梓 ト ト
を示す。
与条件入力
距離 ポテ ンシャルの計算
誘導サイ ンの設定
避難 シミュレー ション実行
シミュ レー シ ョン結果 出力
図
2.19:イ ンター ファイス
与 条件 入力 1.setup_all
避難初期 条件 入力 (2∼
H)を 一 括 して設定
2.semp_plan
対象空 間 の プ ラ ンを指定 3.calc‐ poten‐ next
避難 口 まで の 距離 のポテ ンシ ャル を計 算 (垂 直避 難 を考慮 す る場合 ) 4.calc‐potcn‐ nearest
避難 口 まで の 距離 のポテ ンシ ャル を計算 (垂 直避 難 を考慮 しない場合 ) 5。
change― plan
対象空 間 プ ラ ンを変更 6.setup‐ refuger
避難者 の初期 配置 7.generating
図 2.20:ボ タンや スライ ドバーの配置
避 難者初期 発 生 数 を設定 25
第 2章
8.handicapped
シ ミュ レー シ ョ ン実行
28.reige
災害弱者 の混在率 を設定
9.scde
シミュレーシ ヨン実行 難者属性 デー タ、避難者 の位置・方向
(避
対象空間プラ ンのスケール を入力
nomd
10.count‐
の変遷 デー タの記録 )
健常者数 H.count‐
避難行動 シミュレー ション
handicapped
29.refuge‐ (デ
災害弱者数
preview
シミュレー シ ョンの仮実行 ー タの記録はせず、表示 のみ) 30.refuge― trace
距離 ポ テ ンシャルの計算 12.setpc‐
plan
避難者の行動軌跡の表示 33.rdeout
与 条件 入カ プラ ンの表 示
シ ミュ レー シ ョン・ デ ー タの保存
13.draw‐ potel
距離 ポ テ ンシ ャルの表示 (グ ラデ ー シ ヨン) 14.inspest‐ pc
マ ウスで指定 した点 の座 標 デ ー タや Pa“ hの 色 を Output
Windowに 表示
15.setpc‐ gencrator
避 難者初期発 生条件 設定 を表示 16.setpc― poten
距離 ポ テ ンシ ャルの表 示 (計 算用 ) 17.setpc―
nexdevel
垂直避難 (非 常階段、エスカレー タなど) の表示 避難 誘導 サ インの設定 18.init― sign
誘 導 サ イ ンの初期 化 19.place‐ sign
誘 導 サ イ ンの設置 20.delete― sign
誘 導 サ イ ンの消 去 21.calc‐ sign
誘 導 サ イ ンのポ テ ンシ ャルの計算 23.setpc‐ sign_direction
誘 導 サ イ ンの方 向 の設定 24。
setpc‐ sign_pOsition
誘 導 サ イ ンの表 示 25.setpc‐ slgn area
誘 導 サ イ ンの影響範 囲 の表示 26.update‐
sp― display
誘 導 サ イ ンの再 表示 27.update―
sa‐ display
誘 導 サ イ ンの影響範 囲 の再表示
26
第 2章
2.5.2
避難行動 シミュ レーション
シ ミュ レー シ ョ ン実行例
ここでは、本 シ ミュレー シヨンシステムの実行例 を紹介 しなが ら、使用方法 の解 説 を行 う。
1 1'..出
1 1
薇 タトロ ●●ンセtt ●│● nL
(1)対 象空間の平面図
(カ
ラービ ッ トマ ップ画像 )の 読 み込み
(2)避 難 口までの距離 のポテンシャルの計算 ▽
(3)避 難者発 生率の設定 (4)災 害弱者 の混在率 の設定 (5)避 難者初期発 生 (6)対 象空間 プランの スケールの設定 ▽
(7)シ
ミュ レー シ ョ ン実行 (プ レビュ ー) 27
第 2章
避難行動 シミュ レーション
(8)ポ テンシヤルの再計算 による全体避難誘導変更
(9)誘 導 サ イ ンの設置
(10)誘 導 サ イ ンのポ テ ン シャルの 計 算 (11)誘 導 サ イ ンの表 示
(3)シ ミュ レー ション実行 (9)シ ミュ レー ションデ ー タの記録 (避 難 ステ ップ数、避難者番号 、避難者の位置方向の変遷デ
ー タ)
(9)出 力 されたシミュレー ションデ ー タを保存
28
第 2章
2.4
避難行動 シミュレー ション
避難状況 の様 々 な 2次 元分析画像 表示 シ ミュレーシヨンの実行過程 はモ ニ ター画面 に表示 され、避難状況 の推移 を様 々 な視点か らリアルタイムに確認す ることが可能 であ る。また、 このモ ニ ター画面 を 通 して、避難者個 々のJ大 態 を確認す ることも可能 であ る。 表示内容 は操作画面 のボタンによつて様 々 な組み合 わせ に変更す ることが可能で あ る。表示可能 な内容 は、避難者 に関 しては、属性、歩行速度 、歩行経路、密度分 布 な どであ り、空間の状態 に関 しては、各避難口 まで の距離の分布 、設定 した誘 導 サ イ ンの影響範囲 などで あ る。 これ らの表示内容 は、避難者個 々が保有す る各変数 とメッシユ分割 された空間が 持 つ 各変数 を参照 ・演算 した結果 を、色彩 と階調 によつて表示 した ものであ る。 こ れ らのデー タはファイル出力や グラフ表示 も可能 であ るが、刻 々変化 し様 々 な要因 の相 互作用 で決定 され る複雑 なシステムとしての避難行動 を検討す る上で、 また、 避難時間のみの検討 ではな く空間構成要素や避難者 の属性 などが避難 の推移 にどの よ うな影響 を与 えてい るかを検討す る上で も、この よ うな図化表示機能 は不可欠で あ る。 さらには、分析画像 に単独 の評価基準 だけではな く、群集 の特性 と個人の特性 と い った 2つ の評価基準 を重ね合わせ た ものを使用す ることで、空間 における異 なる 評価 基準同士 の時系列的 な相互関係 を分析す る こと も可能 となる。
図 2.21:対 象空間の プラン
図 2.22:距 離ポテ ンシャルの表示
29
第 2章
避難行動 シミュレー ション
図 2.23:距 離 ポテンシャル と避難者 の表示
図 2.24:誘 導サインの表示
図 2.25:避 難軌跡 の表示
図 2.26:'巨 離 ポテンシャル・誘導サイ ン・誘導軌跡 を重ね合わせた表示
30
第 θ章 θ次元 モ デル を機ヽ した表現 による避難検討 画像
第 3章
3.1
3次 元 モデルを利用 した表現 による避難検討画像
概要 シミュレー シ ヨンシステ ムの画像表示機能 だけで も十分 に全体的な避難状況 の確 ロ 認 を行 うことは可能 であ るが、避難者個 々の視点 に立 つて避難状況 をミク な視点 ペ か ら観察 ・検討す るためには、避難者個 人の視点 に立 ったパース クテ イブな画像 であ 表現 を行 うことは、遊難者 か ら見える視覚的 な周辺環境等 を考慮す る上で有利 る。また、対象空間が多層 に渡 る場合 には、全体 の状況 をアクソメ トリツクに表示 す ることも避難状況 の把握 に有効 であ る。 ー ョ そ こで 、本研究 ではシ ミュ レー シ ヨンシステムの開発 に加 えて、シミュレ シ ンシステムか ら避難状況 の推移 に関す るデー タを外部 の 3次 元画像作成 システムに ・ ロ ・ 受 け渡す ことで 3次 元表示画像 を生成 し、避難状況 の ミク 的 立体的に把握 分 析す るため の手法 の検討 を行 った。
3次 元画像化 のための ソフ トウエアには、Alias
Wavcfront Maya(ア ニ メー シ ヨン・
アーキテクチ ヤ)を 使用 している。なお、動作環境 は SGI社 の Indigo2-High lnpact である。
第 3章
3.2
3次 元 モデルを利用 した表現 による避難検討画像
3次 元 画 像 化 の 手 順 3次 元画像化の手順 を以下に示す。 シミュ レー シ ョ ンシステムか らの デ ー タ出力 シ ミュ レー シ ョンシステムか ら画像作成 システ ムで そ の まま利用可能 な形式 に整形 され たテキ ス トフアイル と 2次 元分析画像 ファイルを避難 の 過程 に沿 つた時系列 的 なデ ー タの セ ッ トと して 自動 的 に出力す る。 このテキス トファイ ルには、各避 難者 の属性 お よび移動 と状態変化 の 履 歴 の 数値情報 が含 まれ る。
□
また、2次 元分析画像 はシ ミュ レー シ ヨンシステムで 表示 され る もの と同 じ方法 で作成 されてお り、3次 元表示 の 際 にテクスチ ヤーマ ッピ ン グを利用 して分析的 な内容 を表現 す る為 に利用 され る。
図
図 3.2:Mapping用 の 2次 元画像
3.1:StarLogoの Output Window
出カファイルの変換 シ ミ ュ レー シ ヨン結 果 の 出カ デ ー タを、MAYAの Sccnc FiL形 式 に変
今︱︱サ
い 換 す る 。 MAYA Sccne Fiに は ASCIデ ー タで編 集 し、Mac Perlを 用 て 変換 用 の プ ロ グラ ム を組 んで い る 。 ロ 変換 は、シ ミュ レー シ ヨンデ ー タの テキ ス トフ ァイ ル を変換用 プ グ ラ ム に Drag― Dropす る こ とで 、簡 易 に行 う こ とが で きる。
対象空間 の 3次 元 モデル作成
対象空間の 3次 元 ポ リ ゴンモ デ ルデ ー タ作 成 し、OЧ
(MAYA形 式 )に 変換 す る。
図 3.3:対 象空間 の 3次 元 モデル 32
第 3章
3次 元モデル を利用 した表現 による避難検討画像
テ キス トファイル 出力 と 3次 元 モデ ルの統合
避難対象 空間の 3次 元 モデ リングデ 以上で得 られたデー タ出力を、
ー
ー タと統合 し、画像 生成用 の基礎 デー タを作成す る。その際、画像 デ タ はテクスチ ヤーマ ッピ ングに、テキス トフアイルは避難者 の行動軌跡 を 描画す るための記述 として使用 され る。
図 3.4:3次 元 モデルに 2次 元分析画像 を 表示 した例
3次 元避難検討画像 とそのアニメー ションの生成 ・ 基礎 デ ー タをもとに、各 目的別 にカメラの視点 やパース アクソメな どの表示方法 、重ね合 わせ て使用す る 2次 元分析画像 を選択 し、後述す る追加設定 を行 った後 に レンダリングを実行す ることで、3次 元避難検 ことで、 討画像 の作成 を行 う。この画像 を避難 の過程 にそ つて生成する アニ メー シ ヨン画像 を作成 し、これを避難検討 アニ メー シ ヨンとす る。
図 3.5:ア イ レヴ ェル か ら見 た避難状況 の例
第 3章
3.3
既往 の
3次 元 モデル を利用 した表現 に よる避難 検 討画像
3次 元 表 現
以下は、前項 で示 した手法 で、通常表現 による 3次 元可視化 を行 った連続画像 の 例 である。 2次 元表現 とは異 な り、アクソメ トリック表示 では垂直方向の避難 の様 子 が、またアイレヴェル表示 にお いては避難者周辺 の局所的 な避難状況が把握
でき
ることがわか る。
図 3.6:ア クソメ トリック表示
図 3.7:ア イ レヴェル表示
34
第 3章
3.4
3次 元 モデルを利用 した表現 による避難検討画像
垂直動線 の避難状況表現 以下 は、特 に垂直動線
(階 段室、エス カ レー タ)に 注 目し、その混雑 の状況 を 3
次元的 に表現 したもので あ る。 これによ り、煙 の伝播
。流動 の影響 だけでな く、垂
直動線 における滞留 の発 生 を考慮 した避難誘導が可能 となると考 えられる。 ー まず避難 シ ミュレー シ ヨンシステム にお いて、Patch(メ ッシュデ タ)に 垂直動 線部分 の避難者 の密度 を記述す る。その密度 を、色彩 のグラデ
ー シ ヨンで表記 した
画像 デー タを、テクスチ ヤー・マ ッピング用 の画像 として出力す る。 3次 元
モデル
の垂直動線部分 にチ ユー ブを作成 し、そ こにマ ッピングをす ることで、垂直動線部 分 の時系列的 な密度変化 の表現 を行 う。
図 3.8:垂 直動線密度 を表 したマ ッピング用画像
図 3.9:垂 直動線部分の表現
図 3.10:垂 直動線 の密度表現伊1
第 3章
3.5
3次 元 モデルを利用 した表現 による避難検討画像
避難者 の視点 か らみた可視領域表現
3.5.1
表 現 手法
CGに おいては、特 にス ケールや距離 を画像か ら確認す ることが困難 であ る。しか し、避難検討 の際 には、避難者 の距離感 や スケー ル感 を考慮 の対象 に含 めることは、 特 に災害弱者 の避難環境 を考慮 す る上で有効 な手段 である。そ こで、視点 か らの距 い 離 を画像上 に可視化す るために奥行 き距離情報 のみによる画像 の作成 を別途行 、 避難検討画像 と合成す ることで奥行 き情報 を含 めた避難検討画像 の作成 を行 う。 この手法 は、筆者 らが以前発表 した空間的 シー クエ ンスの記述・分析手法 であ り、 その記述方法 は以下の とお りである。
人間の距離感覚 は距離 に対 して対数 的 に働 くと仮定 して、視野 における距 離情報 を画面上 の物理量
(明 度情報 )
に変換す る。 行動主体 か らの距離
なお、 ここでい う奥行 きとは、行動 主体か ら周囲に存在す る物体 まで の視 線方向距離 をさしてい る。変換 に際 し ては、行動主体 か らの距離 を対数的 に 変換 したものを画像 の明度情報 として いる。
図 3.11:奥 行 き情報 による 視覚情報 の物理量変換
図 3.12:奥 行 き情報 によって変換 された 3次 元画像例
36
第 3章
3.5.2
3次 元 モデルを利用 した表現 による避難検討画像
追 加 設 定 と表現 例
奥行 き情報 による可視化 は、具体的 に は Enviroment Fogを 用 いて表現す る。 こ こで設定す るのは、 1)Fogの 強 さ、 2) 開始点、3)終 点、4)Fogの 色 、である。 2)、
3)で 避難者の可視領域 を距離で
指定 し、再現す ることがで きる。 Time: lsec
柿 o:30sec
図 3.13(右 ):避 難者 の視点での 可視領域表現例
/可 視領域 =(0∼ 35m)
The:90議
第 3章
3.6
3次 元 モデル を利用 した表現 による避難検討画像
鳥敵的 な視点 か らみた可視領域 の表現
3.6.1
表現 手 法
3次 元画像 を作成す る際 に、 1人 以上の避難者 の視点 に点光源 を設定 し、他 の避 難者 と空 間構成要素 によつて視認 で きない領域 をその影 で表現す る ことによ り、避 難者個 々の視覚的 な環境 の推移 を検討す る。 この設定 を応用す ると、健常者 と避難 客観的 に確認す ることが可能 となる。 弱者 の視覚的環境 の違 い と時系列的 な変化 を、 この手法 もまた、筆者 らが以前発表 した人間行動 の視覚化 に用 い られた手法 であ り、その記述方法 は以下の とお りであ る。
対象 となる避難者
不可視領域 (影 の部分 ) 図 3.14:点 光源 を利用 した可視領域表現 モデル
> 図 3.15:時 間推移 における可視領域の変化
図 3.16:点 光源 による可視領域の表現例
第 3章
3.6.2
3次 元 モデル を利用 した表現 による避難検討画像
追 加 設 定 と表現例
鳥敵的 な表示 における可視領域 の表現 には、点光源 を用 いる。 追加設定項 目は点光源 の、 1)明 度、 2)半 径、 3)減 衰、 4)色 の 4つ で あ る。 避難者 の可視領域 を、 2)半 径 で指定す る ことで 再現 している。 また、 1)、
3)、
Time:30sec
4)は 、検討 に
あたって、よりわか りやす く表現 す るための設定 で あ る。
Time:60sec
図 3.17(右 ):点 光源 を利用 した表現による 連続画像例 1 可視領域 =(0∼ 35m)
39
第 4章 ケ ースス タデン
第 4章
ケ ースス タデ イ
対象空間 につ いて
本研究では、手法 の検証 を目的 としたケースス タデ イとして、既存 の複合施設 で あ る東京 オペ ラシテイの低層部共用空間を対象 とした避難行動 の検討 を行 った。当 該施設 は、階段 やエス カ レー ター などの避難者属性 ごとに異 なる歩行経路があ り、 また、大小 の通路 と開口部、吹 き抜 けのア トリウムや半外部空間のガレリアを備 え るな ど空 間構成 の変化 に も富 んでい るため、ケースス タデ イの対象 として適当 であ ると判断 した。
図 4.1:対 象空間の平面図
(2F)
図 4.2:対 象空間の 3次 元 モデル
図 4.3:ア トリウム
図 4.4:ガ レリア
40
第 4章
4.2
ケーススタデ イ
与条件入力 シ ミュ レー シ ヨンモ デ ルの避難与条件設定項 目は大 き く分 け て以下の 3つ に分類 され る。
9 “
入カ プラ ンを用 い て設定す るもの。
3
避難検討項 目 として、 シ ミュレー シ ヨン実行 に際 して変更可能な もの。
1
シ ミュレー シ ヨンモデルの中で設定 し、実行 に際 しては変更 しない もの。
1)に は、 a)避 難者 の属性 に従 った歩行速度 と、 b)対 象 空間各所 の使用用途 ー に従 つた初期配置があるが、これ らを どの よ うに設定す るかは避難 シミュ レ シ ヨ ンを行 うにあた つて特 に重要 な要素である。
a)避 難者 の属性 に従 った歩行速度 人間の歩行速度 は、歩行者 の能力、歩行者 の密度、歩行経路 の長 さ、歩行経路 の の い 環境 などに支配 される。避難 の場合 には、安全側 をとるとい うことで、足 遅 人 の歩行速度 の 1.Om/秒 を用 いて計画 をたてる ことになつている。また、高齢者 などの ース によつては もっ 災害弱者 の場合 は1.Om/秒 で避難 しきれない ことが多 いので、ケ と遅 い値 で考 える必要があ ろ う。既往研究 の 中では、健常者 の歩行速度 の 1/2の O.5m/秒 を用 い てい る場合 が多 い。
階段 を歩行 す るときは、廊下 な どの水平歩行 時の ビツチ を維持 したまま歩行す
る
といわれて い る。成人男子 の 1秒 間の平均歩数 はおおむね 2歩 であ り、推定投影距 離 でみた歩行速度 (水 平分速度 )は 0.7m/秒 となる。ただ、避難計算 で階段歩行時間 を求 める場合 は、階段 における水平分速度 を、安全側 にみて水平歩行速度 の 1/2と して計算す ることが多 い 。つ ま り、一般 人の場合 は 0.5m/秒 とみな してい る。
以上か ら、本 シミュ レー シ ヨンモデルでは以下の設定 を行 った。 ・健常者 の歩行速度 :1.Om/秒 ・災害弱者 の歩行速度 :0.5m/秒
ただし実際 の状況 を想定 して、各避難者 ご との歩行速度 は前後 0.2m/秒 幅 で、乱数 を用 いて異 な った値 をとる よう設定 を行 つてい る。
41
第 4章
ケ ースス タデ イ
b)対 象空間各所の使用用途 に従 った初期配置 避難者の初期配置 に関 しては、既往 の実測値 を基 にした「用途別人口密度」 (第 2 章 2.3.2表 3参 照 )な どがあるが、本 システムでは初期配置数 を変更可能 な、検討項 目の 1つ として捉 えてい るため、これ らのデー タを参考 に用途別 の人口密度比 とし て設定 してい る。 対象空間の空間構成 か ら、設定 は以下の 2項 目に関す るものである。 表 4.1:避 難者初期配置 の設定
人口密度
(人
/ぽ )1初 期配置人数比
売場 通路
2)は 、前章
(2.4
避難与条件 の設定方法 )で 示 したように、入力用 プラ ン (対
・ 象空間の ビッ トマ ップ画像 を加工 した もの)を 用 い て行 う。 その内容 は、避難 口 非常階段 の位置 と避難者 の初期配置条件 、入力用 プラ ンのスケールであるが、対象 空間の構成 か ら、下図
(図
4.5)の ように設定 した。なお、初期配置条件 の種類 は既
往研究や文献 などの分類 を参考 に してい る。
■ 避難口 ■ 非常階段 ■
避餞者の初期配置条件 ■ 商業 ビルの通路 部分 商業 ビルの売場部分
図 4.5:対 象空間の与条件入力用 プラン 42
第 4章
4.3
ケーススタデ イ
避難状況変化 の設定 火災時の煙流動 に関す るい くつ かの既往研究 が存在す るが、煙 の伝播 や流動 の仕 いえ 方 については まだわか らない部分 が多 く、現時点 ではモ デル化 が困難 であると る。そのため 、 このよ うな不確定要 素 をシミュ レー シヨンモ デルに導入す ると、遊 の 難行動 に対 して不必要 な影響 を与 えて しまう可能性 がある。また、あまり多 く 要 ロ ム 素 を導入す る と、プロ グラムが膨大 にな り、実効速度が低下 した り、プ グラ 管 理が困難 になる ことも予想 される。 これらの理 由か ら、本 シ ミュレー シヨンシステムでは、出火 による煙流動 のモデ ル化 は行 わず、避難行動 お よび避難誘導 のみ を扱 うもの としてい る。煙 の影響 は、事 つて避難 シ ミュ 前 に避難状況変化 を想定 した シナ リオを作成 し、そのシナ リオに沿 レー シヨンを実行す ることで考慮 している。 この方法 は 、様 々 な避難状況 を 自由 に設定 し、その状況 に対応 した避難 シ ミュ レー シ ヨンを行 うことがで きるので、避難状況 の変化 に着 目 したケースス タデ イを 行 うことも可 能 であ る。
以下に、今 回のケースス タデ イにおける避難状況変化 の設定 を示す。
シナ リオ :上 階 の出火 で発生 した煙 の伝播 によつて、一部 の避難 回、非常階段 が閉 鎖 された場合 を想定 してい る。
■藤
避 =:難
=1始
図 4.6:予 条件入カ プラン
図 4.7:シ ミュ レーション実行画像
43
第 4章
ケ ースス タデ ィ
織難出│● 1非 1常 1階段│の 1開 ‐ 鎖 煙 の伝播 によって○ 部分の非常 階段 が閉鎖 され、同時 にその付近 の避難日の利用不能 となる。 その ため、これ らの方向に避難 しないよ うに、避難者全体 に新 た な避難誘導 を行 う。
図 4.8:避 難状況変更箇所 の説明 1全体的な避難誘導の変更
避難者の位置 などはその ままの状態 で、距離 ポテ ンシャルのみ を変更 された 入カプラン を用 いて計算 し直すことで、誘導変更 を行 う。
図 4.9:避 難口 。非常階段 を変更 した 予条件入カプラン
避
1難
図 4.10:誘 導変更 による再計算後の 距離 ポテ ンシャル
‐ 1再 ■開
図 4.11:誘 導変更後 の シ ミュ レーション実行画像 44
第 4章
4.4
ケ ースス タデ イ
垂直動線 での避難行動 の検討 右図 (4.12∼ 4.15)は 、設定 した避 難状況変化 の シナ リオに沿 った避難 行動 シ ミュ レー シ ヨンでの 、垂直動 線部分 の避難者密度 の 時系列変化 を
3次 元的 に表現 した ものであ る。 避難開始 5秒 後 の時点 で、手前 の 3 つの非常階段 が少 し利用 され は じめ
図 4.12:垂 直動線 の避難 者密度_1
たのがわかる。 開始 12秒 後 になる と、全体的 に避 難者密度 が増加 して い るが、特 にア トリウム に面 した一番手間の非常階 段 の利用率 が高 くな っている。 図 4.3は 、シナ リオに沿 って、16秒 後 に左の 2つ の非常階段 が使用不能 にな った状態 を表 してい る。
Time: 1Zsec
線 の避難者密度_2
2つ の非常階段 が使用不能 となっ た ことで 、 もっ とも近 い手前 の非常 階段 の避難者密度 が増加 し、危険な 状態 になっていい る ことがわかる。
以上の よ うに、 3次 元的 な表現 を 用 い ることで、平面 だけでは把握・検 討 で きない垂直避難 の状態 を検討 し、
図 4.14:垂 直動線 の避難者密度_3
危 険 な状況 を確認 す る こ とで きた。 特 に、非常階段 な どの垂 直動線 の避 難状況 は、平面的 な表現 では確認 で きないので 、右図 の よ うな表現 は有 効 で あ ると言える。
図 4.15:垂 直動線 の避難者密度_4
45
第 4章
4.5
3次 元 表 現
ケ ースス タデ イ
を活 用 した 避 難 誘 導 検 討
ここでは、設定 した避難状況変化 の シナリオにそ つた避難行動 シ ミュ レー シ ヨン を行 い、 3次 元表現 を用 いてその検討 を行 った例 を、 4つ の Stpか らなる一連 の項 目の 中で解説 を加 え、考察 してゆ く。
4.4.1
全 体 的 な避 難 誘 導 変 更 _Stepl
ー の 図 (4.17∼ 4.20)は 、 シナリオに沿 った避難行動 シ ミュレ シ ョン画像 の一連 流 れである。 2カ 所 の非常階段 が使用不能 にな つたことによる避難誘導 の変更 を、 距離 ポテ ンシヤルの再計算 とい う方法 で行 つてい る。 誘導変更後 、避難 口 Aに 避難者 の流 れが集中 し、滞留が発生 してい る ことがわか る。 さらに、 ガ レリア側 の店舗周辺 か らの流れ と、使用不能 となつた非常階段周辺 か らの流れが合流 してい るため、衝突 な どの危険性 も考 えられ、安全 な避難が達成 され い ない。 避難者総数 :482人 健常者 :415人 災害弱者 :67人
□□ □
非 常階段 エ スカ レー タ
避難 口
図 4.16:シ ミュレーション与条件
避難開始直後。 各避難 口に適度 に避難者が分散 し、 安全 な避難が行 われている。
図 4.17:避 難開始 か ら 5秒 後
46
第 4章
ケーススタデ イ
使用不 能 な る避 難 口 と非常 階段 付 近 に避難 者 が 多数 集 まってい る。
図 4.18:避 難開始 か ら 12秒 後
全 体 的 な避 難誘 導 の 変更変更直 後 。使 用 不 能 とな っ た非常 階段 付 近 に集 ま った避 難 者 が、別 の 避 難 口 に向 け て方 向転換す るた め、衝 突 が起 きて い る様 子 が わ か る。
図 4.19:避 難開始 から 15秒 後
避 難 口が変更 され た ため、 図 に 示 した部分 に滞留 が発 生 して い る。反対 に、空 間的 にゆ と りが あ り、安全 で あ る と考 え られ る ガ レリアヘ の避 難者 の 流 れが減少 して い る。
図 4.20:避 難開始 から 30秒 後
47
第 4章
4.4.2 s“ plに
ケ ーススタデ イ
部 分 的 な避 難 誘 導 の 検 討 _Step2
お いて滞留発生 とい う問題点 が見 られたため 、ガレリア側 の店舗周辺 の避
サ イ ンを用 い た部分的 な避難誘導 を行 ってガレリアに避難す るように した。 難者 を、 図 (4.21∼ 4.24)は 、全体誘導変 更後 、部分的 な避難誘導 を行 った避難 の時間経過 を示 した ものであ る。 ここで用 いた誘導 サイ ンの影響範囲 は、健常者 :3い 、災害弱者 :15mで ある。災 害弱者 の可視領域 に関 しては、詳細 な調査資料 などが少 く、明 らか にされて
い ない
部分 が多 いが、今回 は、歩行速度等 の設定 と同様 に、健常者 の可視領域 の 1/2と し、 誘導 サ イ ンはその可視領域 か ら決め られてい る。可視領 域 に関 して は、 この後 に検 の 討項 目の一つ として考察 を加える。 また、誘導 サイ ンの影響下では、避難 口 まで 距離 (距 離 ポテ ンシ ャル)に 関わ らず、サ イ ンの影響 のみ を受け るよ うに設定 した。
全体的な避難誘導変 更後、誘導 サ イ ンを設置。 このサ イ ンによ り、 ガレリア側 によ り多 くの避 難者 を誘導 しようとしてい る。
凶 4.∠
::選
1り 雛 開 畑 刀
10秒
慎
実際 にシ ミュレーシ ヨン上では、 店舗周辺 か らの避難者や、非常 階段 Cか らの避難者 の一 部が、 サ イ ンによつてガレリア側 に誘 導 されている。
図 4.22:避 難開始 か ら 20秒 後
48
第 4章
ケ ーススタデ イ
非常階段 C周 辺 か らの避難者に注 目 す る と、サ イ ンの 影響範 囲 の差 か ら、健常者 は比 較的 ガ レリア側 に誘 導 されているが 、災害弱者 は直進 し て避 難口Aに 向かつている。
図 4.23:避 難開始 から 25秒 後
部分 的 な誘導 を行 わ なか った場合 (Stepl)と 比べ ると、避難口A付 近
の滞留 が解消 されてい ることがわか る。しか し、サ イ ンの設置位置や影 響範囲 に気 を付 けない と、逆に全員 が ガ レリア側 に誘 導 され、問題 が発 生す る ことも考 え られる。
図 4.24:避 難開始 か ら 30秒 後
49
第 4章
4.4.3 図
(4。
ケースス タデイ
可 視 領域 を考 慮 した 3次 元 的検 証 _Step3
26∼ 4.35)は 、避難空間の構成要素 を、対象避難者 の視力 や、煙等 による
視界 の低下 を考慮 した上 で、対象 となる避難者か ら距離 に基づい て可視化 した画像 である。 今回のケースス タデ イでは、可視領域が 15m、 3Chの 2通 りの場合 を取 り上 げ、避 難者 の視環境 を考慮 した場合 の避難状況 につい て検討 した。 その結果、視認 距離 が 30mの 場合 は、設置 された誘導 サ イ ンが確認で き、前項 で 行 つた部分的 な避難誘導 が有効 に働 いてい ることが確認 で きた。 しか し、視認距離 が 15mの 場合 は、誘導 サ イ ンの真下 に来 るまで確認 で きないため、周辺 の避難者 の 流 れなどを考慮す ると、誘導 によつて方向 を変更す るのは困難 だ と考 えられ る。 したが って、避難者 の視環境 を考慮 した誘導サイ ンの影響範囲 についての検討 を よ り詳細 に行 わな くてはならない と言 える。 図
(4。 27、
4.28)は 、前章 で示 した点光源 を用 いた手法 によつて、避難者 の可視領
城 を表現 した ものであ る。 これによ り、避難者周辺 の環境 と、避難者 自身 の視環境 との関係 が把握 で きる。
50
第 4章
a)可 視 領 域 :30mの 場 合 この 時点 では、 まだ誘 導 サ イ ン を うっす らとしか認識出来ない。
The:15鋼
ここでは、誘導 サ イ ンがは っ きり と確認 で きる。
サ イ ンを認識 しなが ら、誘導 に従 つ て ガ レリア傾1に 向 か う。
詭
:23壼
Time1 25銀 数多 くの避難者が、よ り安全 なガ レ リアの方向へ向かって避難 している 様子 がわかる。
図 4.25(右 ):可 視領域 30mの 場合 の 避難者視点画像
ThHD:30饗
ケ ーススタデ イ
第 4章
b)可 視領 域 :15mの 場 合 この時点 では、誘導サ イ ンを認識す ることはで きない。
珈
e:15難
可視領域 30mの 場合 はこの段階 で 誘導 サ イ ンを認識 す ることがで き たが、 ここではほ とんど認識不可 能である。
ここ まで来て、や っ と少 しサ イ ンの 存在 が確 認 で きるが 、実 際 の行 動 を 考慮 す る と、前方 に注意 が い き、サ イ ンの存在 に気付 か ない こと も考 え られ る。
Time:23cec
前段 階 と同様 に、サ イ ンの存在 は確 認 で きて も、誘導効 果 につい て は疑 間が生 じる。
前方 の 空 間の状 態 力寸巴握 で きない た め、周 囲 の避難者 の 流 れ に追従 して い る よ うに見 える。
図 4.26(右 ):可 視領域 15mの 場合 の 避難者視点画像
D:3餞
T麟暉
ケ ースス タデ イ
第 4章
図 4.27:視 認距離 30mの 場合 の 客観的視点画像
ケースス タデイ
図 4.28:視 認距離 15mの 場合 の 客観的視点画像
第 4章
4.4.4
ケ ースス タデ イ
検証結果 を反映 した避難誘導_Step4
Stp 3に おいて 3次 元画像 を用 い、避難者 の可視領域 を考慮 した検討 を行 つた結果 、誘 導サイ ンの影響範囲 につい てさらに検討 を加 えなけれ ばな らない ことが わか った 。 そ こ で、誘導 サ イ ンの影響す る距離 を、健常者 15m、
:
災害弱者 :10mと し、誘導 サイ ンは前回
と同 じ位置 に設置す るとして、再度避難行動
Time:15
シミュレーシ ヨンを行 った。 その結果、ほとんど誘導 の効果 は表 れず に 滞留 が発生 して しまった。その一連 の 2次 元 画像 が右図 (4.29)で あ る。 また、3次 元画像
(図
4.30)で みてみる と、
誘導 サイ ンは まった く認識 で きずに、直進 し て避難口 Aに 向かって避難 してい ることがわ かる。
図 4.29(右 ):誘 導サイ ンの影響 を変更 した シミュレー ション画像 54
第 4章
ガレリアの 方 にはまった く向 か ず に、迷 わず に避難 口 Aへ 向 け て避難 して い る。その際 に、誘導 サ イ ンは全 く視界 に入つてい な いのがわか る。 Tim● :1 5sec
Tlmo:1 8sec
Time:23scc
T|me: Z5scc
ミュレー ション再実行 結果の 3次 元画像
(右 ):シ
ケ ースス タデ イ
第 4章
4.5
ケ ースス タデイ
考察 Stpl、
2で は、避難行動 シミュ レー シ ョンの 2次 元画像 によつて、避難行動 の検
討 を行 い 、また Stp3、 4で は、 3次 元可視化画像 を用 い て、避難者 の視界 を考慮 し た検討 を行 つた。 これ らの検討結果 か ら、 3次 元表現 を用 いた避難検討が有効 であることがわか つ たと同時 に、 2次 元表現 での検討 か ら 3次 元表現 での検討 へ 、またその反対 に 3次 元表現 での検討か ら 2次 元表現 での検討 へ と、両者 が密接 に連携す ることによつて よ り詳細 な避難検討 が可能である ことがわかった。 また、可視領域 に着 目 した検討 にお い て、至近距離 しか見えない場合 では、通常 の視界 と比べ て空 間把握 が 困難 であ り、他 の避難者へ 意識が い くことがわかる。こ のため 、避難経路 の選択 を空間把握 によつて行 うことがで きずに、周囲の他避難者 に頼 り、追従行動 を行 う可能性 が高 くな ることが予想 される。 これ らの検討 か ら、視界 が低下 した状況 で も有効 な避難誘 導 を行 うためには、誘 。 導 サ イ ンの設置場所 や、大 きさ 表示方法 など避難誘導装置 に関 して検討 してゆ く 必要 があると考え られる。 さらに、 より安全 な避難 を行 うには、従来 の避難誘導標示方式 に加 えて、避難状 況 に応 じて誘導方向 をダイナ ミックに変化 させ る誘導標示方法 を取 り入れ る必要が あ る とい える。
56
第 5章 結
論
第 5章
5.1
結論
研究 の成果 本研究 での成果 をまとめて以下 に記す。
1)避 難検討 システムに関 して 本避難検討 システムでは、以下 の ものが実現 された。 ・簡易 な予条件設定 。実行過程 で介入可能 なイ ンタラクテイブな操作 のインター フェイス ・避難誘導 サイ ンの 自由 な設置 。2次 元 。3次 元 の避難検討画像 による視 覚 的な把握 ・検討
本 システ ムでは、平面的・立面的な空間構成 の検討 と関連 させ なが ら密度 の高
い
試行錯誤 を行 うことが可能 であ る。 これは、既存 の建築物 を対 象 とした避難検討だ 。 けでな く、大規模化 ・複雑化す る施設計画 を複合的 な評価基準 か ら把握 検討す る 有効 な支援手段 とな りえるだろう。
2)ケ ースス タデ イか ら ケースス タデイを行 うことによつて、避難時 の問題点 として、以下の ことを確認 す るで きた。 ・煙 による視界 の低下 や、高齢者な ど視力 の低下 した避難者 の視覚環境 が避難行 動 に与 える影響が大 きい。 ・特 に、大規模 で複雑 な空間構成 を持 つ建築物 におい ては、固定的な避難誘導 だけでな く、状況 に応 じて変更可能な避難誘導が有効 であ り、 また必要 である。 ・視覚 だけに頼 る誘導方式 では、有効 な避難誘導が行 えない。
57
第 5章
5.2
結論
問題 点 と課題 本研究では、視覚的 なイ ンター フェイスを用 い て相互 に関連す る様 々な要素 を考 慮 しなが ら空間の評価 を行 う手法 の 開発 に主眼 を置 い てい る。そ のため、帰巣性 や い い の 向光性、追従性 な どの空 間的 な避難行動特性 は行動 モデルに採用 して な 。そ ため、避難時 における人間行動 を忠 実 に再現す るに至 つてお らず、基本的な行動 の 再現 にとどまってい る。 これは、実際 に防災計画 を実行す る上で必ず しも正確 な予 測 。評価 を行 なえる性能 を満 た してはお らず、その点 については今後改善 の必要が あ ると考 える。 この よ うな行動特 性 を考慮す るにあた つて、現実空間での実際 の人 間行動 のデー タを繁栄 させたモデ ル化 が必要不可欠 で あ る。 避難 において重要 な位置 を占め る火災による煙 の伝播・流動 に関 して も、今後 、モ デ ル化 を行 いシミュレー シ ヨンに導 入 してゆかなければならない。 また、避難者 に健常者 と災害弱者 とい う 2つ の属性 を与 えたが、それが避難 に与 える状況に関 してはあ ま り触 れる ことがで きなか った。 本研究 は、シス テム としての基本的な仕組 みが完成 した ところであ り、その可能 性 については十分 に示す ことが 出来 た。しか し、避難時 の どのよ うな点に着 目 し、何 を明 らかにす るか とい うことを詳細 に検討 してい くことが重要 で る。
加 えて、今回のケースス タデ イでは、手法 の検証 を目的 として、既存 の複合施設 の共用 空間におけ る避 難行動 の検討 を行 ったが 、対象空間が一 カ所 であ り、今後 そ のバ リエー シ ヨンを増や してゆ くことが必要 であ る。複数 の複合施設 か ら特徴 や構 成 の異なる共用空間を抽 出 し、本手法 による避難行動時 における空間 と避難者 の関 係 の分析 と分類 を試 み る過程 を通 して、本手法 の効果 と課題 につい てされに検討 を 重 ねてゆ く必要 がある と考 える。
第 5章
5.3
結論
今後 の展望 本避難検討 システムは、避難 シ ミュ レー シ ヨンを行 い 、その結果 を別 の ソフ ト ウェアを利用 して 3次 元画像表現化す るとい う流 れをとっているが 、これ らは本来 一体 となつたシス テムで あ ることが望 ましい 。そのことで、よリイ ンタラクテ イブ で詳細 な避難検討が可能 となると考 え られる。その ようなシス テム を防災管理者が 利用 し、避難時 における状況変化 や誘 導方法 についての検討 を行 うこともで きるだ ろ う。 また、今回 は避難状況 を対象 とした行動 シ ミュレー シ ヨンを行 ったが、本 システ ムは、人間行動 シ ミュ レー シ ヨンシステム として他 の状況 での利用 も十分考 え られ る。今後 は、駅 な ど、行動 シミュレー シ ョンが 数多 く行 われてい る状況 を対象 とし て、本 システムの有効性 について検証 してゆ こ うと考 える。
59
おわ クに
謝辞 林田 さんの「避難や らない ?」 から始まったこの論文 もや つと一つの形 になりま 「避難てなんかむずか しいんちゃうの」と思いながらも「 じゃ、ぼ く した。あの時、 やります」 つてゆつといて良かった。 この論文 はBMWプ ロジェク トの一環 として研究 を進めたものです。林 田さんを はじめ、BMWの みなさん、あ りがとうございました。このプロジェク トな くして論 ーマす らも決 まらなかつた気 文は完成 しなかつたでしよう。つてゆ―か、逆に、テ がしてな りません。 Drの 木村 さんには特 にお世話になりました。プログラムか ら内容から、飲みから カラオケまで、お世話になりつばなしで した。もう、木村 さんに足 を向けては寝れ ません。本当にあ りがとうございました。 小松 さんには、卒論から修論 まで、4年 間にわたつて面倒 をみてもらい ました。高 速バス にのつて筑波 に通 つたあの 日々が、今の僕 を支えてる といつて も過言 じやな いで しょっ。…ん ? まあ、何 となく終 わったので、良かったです。研究室のみなさん、酔 っぱらって 御迷惑 をかけたこともあつたと思いますが、いろいろ有 り難 うございました。 最後 に、常に的確な御指導 をくださつた仁史先生、あ りがとうござい ました。
さあ、馬場、飲みに行 くか。
参考 文献
参考文献 1)海 老原学、掛 川秀史 :オ ブジエク ト指向 に基づ く避難 ・介助行動 シ ミュレー シ ヨンモデ ル、 日本建築学会計画系論文集、第 467号 、pp.1-12、
2)岸 野綱人、渡辺仁 史、吉 田克之 :ス
1995、
1
タジアム における避難計算 のための区画に 関す る研
究、 日本建築学会計画系論文集、第 479号 、pp.1‐ 6、
3)星 山征洋、梅澤力 、渡辺仁史 ほか 7名
1996、
1
:避 難 シ ミュレー タを用 いた行動実験 ―そ の 1、 そ
の 2、 日本建築学会大会学術講演梗概集 A、
pp.857-860、
1998
4)小 松喜 一郎、平岡健太郎、渡辺俊 、渡辺仁史 :3次 元 モデルを利用 した空間的 シー クエ ンスの記述・分析方法 に関する研究、日本建築学会大会学術講演梗概集 A、
5)岸 野綱人、渡辺仁史、吉 田克之
1996
:ス タジアムにお け る避難計算 のための区画 に関す る研
究、 日本建築学会計画系論文集 、第 479号 、ppll‐ 6、
6)岡 崎甚幸、松下聡
pp.701‐ 703、
1996、
1
:避 難計算 のための群集歩行 シミュレー シ ヨンモデルの研究 とそれに
よる避難安全性 の評価、 日本建築学 会計画系論文集 、第 436号 、pp.49-58、
1992、
6
7)伊 藤圭大 、志田弘 二 :高 齢者 。身体障害者等 の移動特性 を考慮 した避難 シミュ レー シ ヨ ン、 日本建築学会大 会学術講演梗概 集、pp.H5‐ H8、 1997
8)矢 代嘉郎、海老原学、野竹宏彰 、掛川秀史 :避 難 シミュレー シ ヨンにもとづ く高齢者等 を考慮 した避難計画 の課題、 日本建築学会大会学術講演梗概集、pp.H9‐
9)古 瀬敏
122、
1997
:高 齢者、障害者 の火災時避難安全 を考 える :い つたい何 が問題 なのか、 日本建
築学会大会学術講演梗概 集、pp.123‐
126、
1997
10)吉 村英祐、岡 田光正、柏原士郎 、横田隆司、川合通裕 :3次 元 メッシユシミュレーシ ヨ ンによる避難誘導方式 の有効性 の検討、日本建築学会大会学術講演梗概集 、pp829‐ 830、 1991
11)野 竹宏彰、海老原学 :ネ
ッ トワー クモデルに基づ く避難上の通路 の重要度 に関する考
察、 日本建築学会大 会学術講演梗概 集、pp.223‐ 224、 1995
12)建 設省住宅局建 築指導課監修 :新・建築防災計画指針 1985年 版、日本建築 センター、1985
参考文献
13)建 設省住宅局建 築 指 導課 監修
:建 築 防災計画実 例 集 、 日本建築 セ ンター 、 1985
14)建 設省住 宅局建 築 指 導課 、 日本建築主事 会議 監修
:新 ・建築防災計 画指針 1995年 版 、
日本建築 セ ンター、 1995
15)吉 田克之 :新 建 築 学 体系 12
建築安全論 5.2.4 避 難行 動 の予測 、彰 国社 、pp.26∝ 268、
1983
16)堀 内 三郎 監修
:新 版建 築防火 、朝倉書 店 、 1994
使用機器 および ソフ トウェアー覧 <使 用 機 器 > SGI Indigo2 High lmpact
Applc Powcr Macintosh G3/300MHz Applc Power Macintosh 8500/180MHz Apple I Mac
<使 用 ソフ トウエア > _Programing S● rLogo 2.0.4 ‐ Modcler
Form Z RZ ― Rcndcrer
Alias Wavefront MAYA ― Imagc Processing
Adobc PhotOShop Adobe After Effects ‐ Data Transfer
Mac Perl
蔵禄 _I Star Logoの プ ログ ラム
{rfffi_1 Refuge Simrloter Xnos Version
98/tu?s
turtles-own lnycurrentPoten myoheod myleft myright nystep nytorgetJ nytorget-y fiytorget-ongle] ; ;<voriobles of turtles> ; ; nrycurrentPoten
;;myoheod
;;nyleft ;;nyright ;;mystep
;;nytorget potches-own [plon poten poten-disptoy tenp tenpz generotor
nextlevel sign-position sign-direction
sign-oreo sign-picture refuger-density whiteplqnl ;;eotches> ;;plon ;;poten ;;poten-disptoy ;;tenp
;;teipz ;;generotor
;;nextlevet ;
;
sign-position
;
;
sign-direction
;;sign-oreo ; ; sign-picture ; ; refuger-density ;;whiteplon gtobols [i j tenpx tenpy poten-step poten-scole poten-mox refuge-count record-count ; ;<<globol voriobles>>
]
;;i ..i
;;tenpx ;;tempy
;;poten-step ; ; potenscole
;;poten-nox ; ; refuge-count ; ; record-count breeds lnormol hondicoPPed] i;"nonnol" kenjosyo no zokusei ;;"hondicopped" soigai jokusya no zokusei
1;<<procedures ;
;
reloted to setting up simllotion>>
setup-oll
;;setup-plon ;;chonge-plon ; ; setup-generotor ; ; setup-refuger
to setup-oll ;;ichiren no setup tro notomete okonoi
mosu.
setup-plon colc-poten-next drow-poten
init-sign setup-refuger end
to
setup-plon
junbi rro okonoimosu ;;yo-jouken wo heimenzu(pict-fite) koro yomikonde simulotion no cyousei wo okondtteimosu. go no potet tone otoi zureru pict color deho to systen ;;sonosoi, cq
äť&#x2DC;礞
lood-pict choose-file-diolog
pton
setpoten plon setup-9enerotor
ifelse (int pton) = 64 [setnextlevel 25]
[ifelse (int
Plon) = [setnextlevel 5] [setnextlevet 15]l
ifelse pton -
14
0
[setilhiteplon 0] lsetwhiteplon 9] end
to
chonge-plon
;;hinon konou keiro no henkou surutodâ&#x201A;Źno pict
uro yonrikomi.
poten wo soikeison hyouji simosu. (zontei
procedure desu)
tmd-ptct choose-file-diolog
pton
setpoten plon setup-generotor
ifelse (int Plon) = 64 [setnextlevel 25]
[ifetse (int Pton) -
14
[setnextlevel 5] [setnextlevel 15]l
ifelse plon -
0
[setwhiteplon 0] [setnrhitepton 9]
colc-poten-next drow-poten end
to
setup-generotor
;;potch(ptqn) koro hinonsyo wo hossei suru oreo to hossei ritu wo color de yofiikofii ;potch(generotor) setgenerotor 0
;
ni kijutu
sinosu.
if (int plon) - 44 [setgenerator 1] if (int plon) = 104 lsetgenerotof 0.1]
end
to
setup-refuger
;;refuger wo hossei sosenasu. ;;sonosoi, slider(generoting_rotio hondicopped-rotio) ni yotte refuger no hossei
ritu to
;;zokusei wo kettei siteimosu. set-rondom-seed-o LZ3 set-rondor-seed-b 456
die cleor-output
if ( (
)
rondon 100
<
(
generoting-rote
I
generotor)
) [
sprout I
ifelse ( (
-
I [
rondom 100 ) < hondicopped-rotio ) setnystep (((rondom 3) / LO + 0.S1 * 2nt / scole) setc 15 setbreed hondicopped setnystep (((rondom 3) / fO + O.8> t 249 / scqte) setc 95 setbreed normol
l setrefuge-count 0 setrefuger-densitY
0
end
1;<<procedures reloted
to
signs>>
;;init-si.gn ;;ploce-sign
;;delete-sign ;
;
drow-sign-north
;;dros-sign-eost ;;drow-sign-south ;;dr@v-sign-west ; ; updote-signdisptoy ;
;
colc-sign
to init-sign
;;Wudou tou ni yoru hinonsyo no controll you no potch Iro shokiko siltlosu.
setsign-position
9
] ]
1
付調ヒ_1 setsign-direction
9
setsign-oreo 0 setsign-picture 0 end
to
ploce-sign
;;mouse
click
de sign wo
;;sign no houko.t
rYo
;;hyouji youno yojirusi every
if
setti
simosu
potch(sign-position) ni kiroku si wo
potch(sign-ptcture)
ni
drow simosu'
1[
mouse-doiln? [ type "lset o sign tYPe of
I
pri.nt sign-type settempx mouse-xcor
settelpy mouse-Ycor osetsign-position-ot tenpx telpy sign-type
if if if if
r
90
drovr-sign-north ] drow-sign-eost ] drow-sign-south ] drow-sign-west ] updote-sign-picture-disPtoY
sign-type - 0 sign-type - 1 sign-type - 2 sign-type = 3
[ [ [ [
J
end
to delete-sign ;;rnouse
click
de sign
vro
delete simosu.
;;sitei sito ten no sign(sign-posi'tion
and
sign-picture) wo delete simosu'
i;snop stnoi node mergin lrc kokuho surutoneni every 1
if
sitei sita point koro 5 unit
sthou ilo shokiko simosu'
[
mouse-down? [ print "ldelete o sign
I
settemPx mouse-xcor
sette[Py lltouse-Ycor
seti telpx repeot 11
setj
[
teilPY
5
-
5
repeot 11 [ osetsign-Position-ot osetstgn-Picture-ot
i j 9 i j 9
-setjj+1 -setii+1 -r"tp.
g
updote-sign-Picture-disPloY コ
l
d n
;;iko hyouji
you rro yojirusi, irnoge
rvo
potch(sign-picture)
to drofl-sign-north osetsign-picture-ot te0Px teflpy 55 osetsign-picture-ot terpx tenpy + 1 55 osetsign-pi.cture-ot tenPx tenpy + Z 55 osetsign-picture-ot tenpx telpy + 3 55 osetsign-picture-ot tenpx + 1 te|l?y + 2 osetsign-pi.cture-ot tenpx
-
1 teipy + 2
55 55
end
to drou-sign-eost osetsign-picture-ot osetsign-picture-ot osetsign-picture-ot osetsign-picture-qt osetsign-picture-ot osetsign-picture-ot
terpx terpy 55 tet?x + 1 tenpy 55 teilPx + Z tenpy 55 tenpx + 3 tet|?y 55 terpx + 2 teryy - 1 55 teipx + 2 terpy + 1 55
end
to drow-sign-south
osetsign-picture-ot tsl?x teryY osetsign-picture-ot teipx tenpy osetsign-ptcture-ot tenpx te@y
55
-
1 2
55 55
ni
kokikomu tomeno procedures.
付鋼ヒ_1
-3 osetsign-picture-ot tempx + 1 tempy osetsign-picture-ot tempx - 1 tempy
osetsign-picture-ot tempx ternpy
55
-
Z 2
55 55
end
to
drow-sign-west
osetsign-picture-ot osetsign-picture-ot osetsign-picture-ot osetsign-picture-ot osetsign-picture-ot osetsign-pi.cture-ot
tempx tenpy 55 tempx - 1 tempy 55 tempx - Z tempy 55
tempx - 3 tefipy 55 tempx - Z tempy - 1 tempx - 2 tenpy + 1
55 55
end
to updote- si gn-picture-disPtoY ;;pc ni sign no basho to houkou no
if sign-picture = 55 [
setpc 45
simesu
yojirushi
wo
hyouji simosu'
]
end
to
updote- si gn-oreo-disPtoY
コ
;;pc ni potch(sign-oreo) rYo grodotion to site hyouji simosu' seti (mox-of-potches [sign-oreo] - 50O) if (not sign-oreo = 9) ond (not pc = 45) [ setpc ((((si9n-oreo - 5AO) / i) t 7; * tt, d n
to colc-sign
honi to sono ;;potch(sign_position ni kijutu soreteiru volue wo rnotoni sign no eikyou simosu' kiroku ni potch(si9n-directi-on) wo ;;houkou ;;soroni. potch(si9n-oreo) ni hyouji you no ei'kyou honi rvo kijutu simosu'
setsign-direction
seti
9
0
repeot 4 [ settemp 0
if sign-position = (i t 90) [ setsign-direction (i * 90) ] repeot 10 [
if sign-direction = (i ' 90) [
settemp 10
]
nsum4 temp temPz
iftenpZ>9[ if not poten = LW I setsign-direction (i ' _
90)
]
_setii+1 sett
soo
setsign-oreo
9
if not sign-position = 9 [ repeot 10 [ setii+5
setsign-oreo 500
nsun4 sign-oreo temP
if
]
(temp > 500) ond (sign-oreo < 500) ond (not Pton =
0) [ setstgn-oreo i ]
l end
I ;<<procedures ; ; i.nspect-pc
to
reloted to inspecting
inspect-pc
;;mouse
every
if
click
de
sitei
potches>>
sorete ten no Potchcolor to zohyu wo output windot
1[
mouse-down? t type "lpotch cotor of (l
type mouse-xcor
type
"
l)'(l
type nouse-Ycor
type
"l)is
print pc-ot
l end
l
I
mouse-xcor mouse-ycor
ni hyouji
simosu'
äť&#x2DC;é&#x152;˛_1 ;;<<procedures reloted
to
poten>>
; ; colc-poten-next
;;colc-poten-neorest ;;drow-poten
to colc-poten-next ;;sono level no hinon
kou nodeno step lro keison
if (int plon) - 14 [setpoten 50O] i.f (int plon) = 54 [setpoten 500] setpoten-step setpoten-mox repeot 250 [
si
potch(poten)
ni kijutu
sitrosu'
500
10000
setpoten-step (poten-step + 5)
poten-step
nsun4 poten tenp
i.f (te||p
> 500) ond (poten < 500) ond (not poten = 0)
[
setpoten poten-step
I -.1"o"-*tprt
end
to colc-poten-nearest
;;subete no hinon kou no uchi soiton kyori ni orumono modeno step rrc keison si, ;;patch(poten) ni kijutu sinosu' if (int plon) - 14 [setPoten 500] if (tnt plon) = 6f [setpoten -100 setnextlevel-ot 0 'LZ4 247 setpoten-step 500 setpoten-rnox 10000 repeot 25O I
setPoten-step (Poten-step + 5) print poten-step nsum4 poten teflp if (tenp > 500) ond (poten < 500) ond (not poten = setpoten poten-step if nextlevel = 24 [setpoten-ot O L24 poten-step]
0) [
l cleor-output end
to
drov{-poten
;;poten no noi.bu color polette ni owosete potch(poten-disptoy) ni kijutu ;;pc tosite grodotion hyouji simosu setpoten-disploy plon settenp poten if tenp = poten-mox [settenp 0] setpoten-scole (mox-of-potches [telp] - 500) i,f not (int tenp) - 9 or temp - 0 or temp - poten-nox r LO) + z0)j [setpoten-disploy (((1 - ((tenP - 500) / poten-scole)) setpc poten-disPloY if poten < 10 [setpoten Poten-nox]
end
;;<grocedures reloted to refugi.ng ond woyfinding>> ;
;
;
;
refuge refuge-preview
;;run ; find-di rection l;nextpoten
;
to
refuge
setrefuge-count refuge-count +
1
find-direction run
colc-mytorget record end
to
refuge-previeu every 0.1 [
find-direction run
setrefuge-count refuge-count +
1
si'
]
äť&#x2DC;é&#x152;˛_1
to
run
if ( not (xcor = 0 ond Ycor = O) ) [ if ( nextpoten < Poten-nox ) [ fd
nystep
if nextLevel = 5 [ if nextlevel = 25 [
setxy 0 0 ] setycor (ycor
-
124)
]
setnycurrentPoten Poten
l end
to colc-mytorget setmytorget-x((poten-ot10)+(poten-ot11)+(poten-ot1-1)-(poten-ot-10)-(poten-ot-11)
-
(poten-ot -1 -1))
-
(poten-ot -1 -1))
setmytorget_y((poten-ot11)+(poten-ot01)+(poten-ot-11)-(poten-ot1-1)-(poten-ot0-1) repeot
if
6[
(mytorget-x > sfin> [setnytorget-x (mytorgetJ - IOOA0 + poten-ot 0 0)] if (mytorget-x <'W> [setmytorget-x (nytorget-x + LAg@ - poten-ot 0 0)]
l
repeot
if if
_
6[
(mytorget-y > 300o) [setnytorget-y (nytorget-y - Lilblb$ + poten-ot 0 0)] (nrytorget-y < -5OOO) lsetmytorget-y (mytorget-y + LOM - poten-ot 0 0)]
-setrnytorget-ongle
(oton (0 - nytorget-y) (0
-
mytorget-x))
eno
to find-direction
ifelse (count-turtles-ot dx dy) <-
rt
1
[setmyoheod nextpoten] [setnyoheod Poten-mox] 90
ifelse (count-turtles-ot
dx dy) <=
1
[setmyright nextPoten]
It
[setnyright poten-mox] 180
ifetse (count-turtles-ot dx dy)
<= 1
[setmyleft nextpoten]
rt if
[setmyteft poten-mox] 90
myright < myoheod and myteft < ryoheod (rondorn hidorimowari) > 50 [ ifelse nyright q= myteft
It
[rt [rt
if if
90] 90]
ifetse rnyteft
[lt _ [rt if
I
ifelse
<= myright
90] 90]
lnrycurrentPoten < nextpoten)
[rt
or (nextpoten > poteniox)
(rondom 360)]
pc = 75
[
setheoding 180 ]
not (sign-direction
- 9) [
setheoding sign-direction
eno
to
nextpoten
output poten-ot dx
r
mystep dy
*
mystep
end
;;<<procedures ; ; record ; ; fileout
for recording the result of
simulotion>>
]
äť&#x2DC;é&#x152;˛ _1
to
record
setrecord-count 0 repeot count-turtles type refuge-count
I
type "| type record-count type "| | type xcor-of record-count I
type
"|
|
type ycor-of record-count
type
"l
I
print mytorget-ongle-of
record-count
setrecord-count record-count +
1
l end
to fileout set-output - filenome exPort-outPut end
;;<<procedures
to
for visuolizing refuge informotion>>
density under preporotion.
; ;now
tsetrefuger-densitY
9
settemp whitePlon
diffuse refuger-densitY 0.5 if whiteplon = 9 [ settemp (temp + refuger-density) ] setpc temP
-
8
eno
to
refuge-troce
fi nd-di rection run
density eno
付録二 2 磁 c Perfの プログ ラム
付録_2
NIIAYAの Sccnc Filcへ の変換 に際 して、実行す る度 に入力 を変更す ることがで き る項 目の主なもの を以下 に示す。
。3次 元表現 での視点 となる避難者番号 ・StarLogoで の 1ス テ ツプを 。避難者 の位置 の Z座 標 ・ カメラに関す る設定 。人間の 3次 元 モデルデー タの種類
まず以下の設定 をファイル[conig.pl]に 入力 し、StarLogoの 出カデータフアイルを [StarLofo2May』
にドラツグ・ドロップすることで、変換が実行される。
と SCAMERA_TURTLE_NUM
= 231;
SKEY_FRAME_STEP
= 5;
SL[VEL_LOW SLEVEL_HIGH
= 4.5: = 9.0;
SMOVCAM_name = 'perspl'; SMOVCAM_attr_name = perspShape2'; SMOVCAM_visibility = 1; SMOVCAMLrotateX = 0; SMOVCAM_rotateZ = 0; SMOVCAM_scaleX = 1; SMOVCAMLSCaleY = 1; SMOVCAMLSCaleZ = 1; SMOVCAM_hor、 zontalFilmAperture = 1.5; SMOVCAM_verticalFilmAperture = 1; SMOVCAM_focalLength = 35; SMOVCAMLSqueezeRatio ‐ 1; SMOVCAM_fStop = 5.6; SMOVCAM_focusDistonce = 5; SMOVCAMLShutterAngle = 144; SMOVCAM_centerOflnterest = 45;
#SINPUT_FILE_NAME #50UTPUT_FILE_NAME
= 'result' I = 'onimFile';
SnameOfMOnShope SnameOfMakeManShape
-
'refugershope';
=
'mokerefugerShope';
」MAN_ARRAY_START_NUM
=oi
l;
付録_2 requtre FileHondle; requ■ re "config.pl'';
###″ ########################
#
# Start # ########″ ###################
&readMbdelPartFiles(); tf ( S#ARGV >= 0 ) { foreach ( OARGV ) { &main( S_ ); }
exit;
} elSe { SfileName = &StandardFile'CetFile( "TEXT" ); if ( SfileNome ) { &moln( SfileName ); }
exit; }
############################ #
# moin # ################″ ########### sub ma■ n {
( SINPUT_FILE_NAME )= 0_; 50UTPUT_FILE_NAME = SINPUT_FILE_NAME.'_anil; = 50UTPUT_FILE_NAME; Spro〕 ectName Snow_string = localtime( time ); my ( SinFH )= neW FileHandle; SinFH― >open( ''く SINPUT_FILE_NAME" ) ll die
50: ".__LINE__.'': “
can't open SINPUT_FILE_NAME:
S!ヽ n'';
( $tine = SinFH->getlineO ) { chomp( ltine ); rnY( etmP ) = sPtit( Asl' $line ); = $trnp[Z]; $doto{ $tmp[l] + $I0N-ARRAY-START-NUM ]{ ttmPtol }t'x'} $dotot $tmptll + $|,|AN-ARRAY-START-N[I'| ]{ Stnp[O] ]t 'v' ] = $tmp[3]; $doto{ $tmplll + $|,iAN-ARMY-START-NI|'| }{ ttmp[o] ]{ 'heoding' } = 360 -
while
$tmp[4];
] linFH->closeO;
= sort( {$o <=> $b} keys( sdoto ) ); $tototNumberofTurtles = pop( @tnp ); etmp = sqrlq {$o <=> $b} keys( s{ $doto{ $I'IAN-ARRAY-5TART-NW etmp
} } ) );
$totolNumberofsteps = PoP( etmp );
( $outFH ) = new FiteHondte; #$outFH = STDOUT; mY
foutFH->open( ">
$OUTPUT-FILE-NAIIE"
) ll die "l0: ".--LINE--.":
1!\n"; $outFH->Print(
//Vbyo ASCII 1.0
<<EoF-HEAD ) ;
scene
//Nome: tprojectNome //Lost modified: Snofl-string
requires moyo "1.0"; -l centineter -o degree creoteNode tronsform -s -n "persp";
currentunit
-t film;
setAttr ".v" no; setAttr ".t" -type "double3" ?8 2L ?8 ; setAttr ".r" -type "double3" -?.8 45 -5 ; creoteNode conero -s -n "perspshope" -p "persp";
Con't open
30LTPUT-FILE-NAI'|E:
付録_2 setAttr ―k off ".v'' no; setAttr “.cot" 45; type nstring'' ''persp'' ; setAttr ".■ mn" ― setAttr ".den'' ―type ''string" ''persp_depth" ; type "string" "persp_mask'' ; setAttr ".man'' ― setAttr ".hc" ―type ''str■ ng'' `'v■ ewSet ―p %た omera" ;
EOF_HEAD SoutFH― >print( くくEOF_MOVCAMこ00 ); createNode transform ‐n mS{MOVCAMLname}"; createNode comero 一n ''S{MOVCAM_attr_nane}" ―P ''S{MOVCAMLname}"; setAttr ―k off '・ .v"; setAttr " cot“ 30.991876379134357; type ''string'' "S00VCttname}" ; setAttr ".■ mn" ― type "string" ''S{MOVCAM_name}_depth" ; setAttr ''.den'' ― setAttr ".man" ―type ''string'1 ''SIMOVCAMLname}_mask" ; p %camera'' ; setAttr ".hc'' ‐type "str■ ng" t'v■ ewSet ― EOF MOVCAM_00
Sturtle = SCAMERA_TURTLE_NuM; SoutFH― >print( くくEOF_MOVCAM_01 ); createNode an■ mCurveTU ―n ''SIMOVCAM=name}_v■ setAttr ".tan'' 5;
EOF_MOVCAM_01 5outFH― >print( lSetAttr 'コ
5■
bility";
‐s ', StotalNumberOfSteps,
".ktvEO:',( StOtalNumberOfSteps - 1 ),
''1);
く ・> Sb} keyS( %{ Sdatat Sturtle l } ) ) { foreach Sfrome ( 50rt {Sa ・ ―SKEY_FRAME_STEP + 1, SoutFH― >print( 1 ', Sframe tt SKEY_FRAME_5TEP SMOVCAM_visibility );
1,
}
SoutFH― >print( '';ヽ n'。 ); SoutFH― >print( くくEOF_MOVCAML02 ); createNode on■ mCurveTL ―n ''S{MOVCAMLname}_translateX";
EOF_MOVCAML02 5outFH― >print( 'SetAttr ・
]"');
―s i, StotalNumberOfSteps, ' ".ktv[0:',( StotalNumberOfSteps - 1 ),
foreach Sframe ( sOrt tSa く=> Sbl keyS( %{ Sdat● { Sturtle }})){ ―SKEY_FRAME_STEP + 1, ' 1, Sdata{ SoutFH― >print( ' 1, Sframe * SKEY_FRAME_STEP
Sturtle }{ Sframe }{ tx' 1 ); }
SoutFH― >print( ";ヽ n" );
くEOF_MOVCAM_03 ); SoutFH― >print( く
n ''S(MOVCAM_name}_translateY"; createNode an■ mCurveTL ‐ EOF」 MOVCAM_03
'コ
SoutFH― >print( 'SetAttr
"1);
― s ', StotalNumberOfSteps, 1 '・ .ktv[0:',( StOt● lNumberOfSteps - 1 ),
く=> Sb} keyS( %{ Sdata{ Sturtle } } )) { Sy = Sdata{ Sturtle }{ Sframe }{ 'y' } く0 7 SLEVEL_LOW : SLEVEL_HIGH; ■SKEY_FRAME_STEP ―SKEY_FRAME_STEP + 1, ' ', Sy ); SoutFH― >print( ' ', Sframe
foreach Sframe ( sOrt {s●
}
SoutFH― >print( '';ヽ
n“
);
くEOF_MOVCAM_04 ); SoutFH― >print( く
n “ S{MOVCAMLnome}_translateZ"; createNode an■ mCurveTL ―
EOF_MOVCAM 04 SoutFH― >print( lSetAttr `]“
‐ s t, StotalNumberOfSteps,
".ktv[0:1,( StotalNumberOfSteps - 1 ),
1);
く=> Sb〕 keyS( %{ Sdata{ Sturtle } } ) ) { Sz = Sdata{ Sturtle }{ Sframe }{ 'y! }く 0 7 Sdat● { Sturtle }{ Sframe }{ 'y' } + 124 : Sdat● I Sturtle }{ Sframe }{ 'y= }; ⅢSKEY_FRAME_STEP ―SKEY_FRAME_STEP , 1, ', Sz ); SoutFH― ,print( ' t, Sframe foreach Sfrome ( sOrt {3●
} SoutFH‐ >print( ";ヽ n" );
くEOF_MOVCAML05 ); SoutFH― >print( く n ''SoOVCAM_name}_rotatex''; createNode an■ mCurveTA ―
EOF_MOVCAM=05 'コ
。 1');
s i, StotalNumberOfSteps, 5outFH― >pr■ nt( lSetAttr ‐ foreach Sframe ( 50rt {Sα
“.ktvEO:',( StOtalNumberOfSteps - 1 ),
く=, Sb} keyS( %{ Sdata{ Sturtle } } ) ) { ■SKEY_FRAME_STEP ―SKEY_FRAME_STEP + 1, ' 1,
SoutFH― >print( = ', Sfrome
付録_2 SMOVCAM_rotateX ); 〕 SoutFH― >print( ";ヽ n" ); SoutFH― >print( くくEOF_MOVCAM_06 ); createNode aninCurveTA ―n ''S{MOVCAMLname}_rotateY"; EOF MOVCAM=06 SoutFH― ,print( 'SetAttr ―s ', StotalNumberOfSteps,
1]''');
".ktv[0:',( StotalNunberOfSteps - 1 ),
foreach Sframe ( sOrt {Sa く=> Sb} keyS( %{ Sdata{ Sturtle } } ) ) { ―SKEY_FRAME_STEP + 1, ' ', Sdata{ SoutFH― ,print( ' 1, Sfrome o SKEY_FRAME_STEP Sturtle }{ Sframe }{ 'heading! } ); }
SoutFH― >print( ";ヽ n“ ); SoutFH‐ >print( くくEOF」 MOVCAM_07 ); n ''S{MOVCAMLnane}_rotateZ"; createNode an■ mCurveTA ― EOF_‖ OVCAML07
5outFH― >print( 'SetAttr 1・
'コ
―s ', StotalNumberOfSteps, ' '・ .ktvEO:',( StOtalNumberOfSteps - 1 ),
');
foreach Sframe ( sort {Sa く=> Sbl keyS( %{ Sdato{ Sturtle }} ) ) { ―SKEY_FRAME_STEP + 1, ' ', SoutFH― >print( ' ', Sframe o SKEY_FRAME_STEP SMOVCAM_rotateZ ); }
SoutFH― ,print( '';ヽ n" ); SOutFH― >print( くくEOF_MOVCAML08 ); createNode an■ mCurveTU ―n "S{MOVCAM_name}_scalex'';
EOF_MOVCAM_08 SoutFH― >print( 'SetAttr
‐s l, StotalNumberOfSteps,
''.ktv[0:1,( StotalNumberOfSteps - 1 ),
']"'); foreach Sframe ( 50rt {Sa く=> Sb} keyS( %{ Sdato{ Sturtle } } ) ) { ―SKEY_FRAME_STEP + 1, ' ', 5outFH― >print( 1 ', Sframe tt SKEY_FRAME_STEP SMOVCAMLscaleX ); }
SoutFH― >print( '・
;ヽ
n" );
くEOF_MOVCAML09 ); SoutFH― >print( く creoteNode an■ mCurveTU ―n "S{MOVCAM_nome}_scaleY";
EOF_MOVCAM_09 SoutFH― >print( 'SetAttr
―s l, StotalNumberOfSteps, '
“.ktv[0:',( StOtalNumberOfSteps - 1 ),
']''');
foreach Sframe ( sOrt {Sa く=> Sb} keyS( %{ Sdata{ Sturtle } } ) ) { SoutFH― >print( 1 1, Sframe tt SKEY_FRAME_STEP ―SKEY_FRAME_STEP + 1, ' ', SMOVCAM_scaleY ); }
SoutFH― >print( ";ヽ nい ); SoutFH― >print( くくEOF_MOVCAM_10 ); createNode an■ mCurveTU ―n "S{MOVCAMLname}_scaleZ`',
EOF_MOVCAM_10 SoutFH― >print( 'SetAttr "s ', StotalNumberOfSteps, ']“
''.ktv[0:1,( StotalNumberOfSteps - 1 ),
');
foreach Sfrome ( sort tSa く‐> Sb} keyS( %{ Sdat● { Sturtle } } ) ) { ―SKEY_FRAME_STEP + 1, 1 ', SoutFH― >print( = l, Sframe + SKEY_FRAME_STEP SMOVCAM_scaleZ ); }
SoutFH‐ >print( '';ヽ n'' ); SoutFH― >print( くくEOF_MOVCAM_11 ); createNode an■ mCurveTU ―n ''S{MOVCAMLattr_name〕 _hor■ 20nt01 FilmAperturem;
EOF_MOVC此
11 SoutFH― >print( iSetAttr
‐s ', StotalNumberOfSteps,
".ktv[0:1,( StotalNumberOfSteps - 1 ),
']1'1);
foreach Sframe ( 50rt {Sa く=, Sb} keyS( %{ Sdata{ Sturtle } } ) ) { ■ SKEY_FRAME_STEP ―SKEY_FRAME_STEP + 1, ' 1, SoutFH― >print( ' `, Sfrane SMOVCAM_horizontalFilmAperture ); }
SoutFH‐ >print( '・
;ヽ n''
);
SoutFH― >print( くくEOF_MOVCAM_12 ); createNode on■ mCurveTU ‐n ''S{MOVCAMLattr_name}_VerticalFilmAperture";
EOF_MOVCAM_12 $outFH‐ >print( lSetAttr
―s ', StotalNumberOfSteps,
''.ktv[0:',( StOtalNumberOfSteps
‐1 ),
付録_2 'コ
"');
foreach Sframe ( sOrt {Sa く=> Sb} keyS( %{ Sdata{ Sturtle } } ) ) { ―SKEY_FRAME_STEP + ■, ' 1, SoutFH― >print( ' ', Sframe + SKEY_FRAME_ST[P SMOVCAM_verticalFtlmAperture ); }
SoutFH― >print( ";ヽ n" ); SoutFH¨ >print( くくEOF_MOVCAML13 ); createNode an■ mCurveTU ―n "S{MOVCAMLattr_name}_foCalLength";
[OF MOVCAM_13 s ', StotalNumberOfSteps, SoutFH― >pr■ nt( 'SetAttr ―
".ktv[0:',( StOtalNumberOfSteps - 1 ),
']"');
foreach Sframe ( sOrt {sa く=> Sb} keyS( %{ Sdato{ Sturtle } } ) ) { ■SK[Y_FRAME_STEP ―SK[Y_FRAME_STEP + 1, ' ', SoutFH― >print( 1 ', Sfrane SMOVCAM_focalLength ); }
5outFH― >print( ";ヽ n'。 ); SoutFH― >print( くくEOF_MOVCAML14 ); createNode anlmCurveTU ―n・ S{MOVCAMLottr_name}_SqueezeRatio''; EOF_MOVCAML14 SoutFH― >print( 'SetAttr -5 ', StOtalNumberOfSteps, '
“.ktv[0:',( StOtalNumberOfSteps - 1 ),
']"1);
foreach Sframe ( sOrt {sa く,> Sb} keyS( %{ Sdata{ Sturtle } } ) ) { ―SKEY_FRAME_STEP + 1, SoutFH― >print( ' ', Sfrome tt SKEY_FRAME_STEP SMOVCAMし squeezeRotio );
',
}
SoutFH― >print( ";ヽ n'。 ); SoutFH― >print( くくEOF_MOVCAMし 15 ); n "S{MOVCAM_attr_nome}_fStOp"; createNode an■ mCurveTU ―
EOF_MOVCAML15 SoutFH― >print( 'SetAttr -5 ', StOtalNumberOfSteps,
".ktvEO:',( StOtalNumberOfSteps - 1 ),
`]"');
foreach Sfrane ( sOrt {sa く=> Sb} keyS( %{ Sdata{ Sturtle } } ) ) { ―SKEY_FRAME_STEP + 1, SoutFH― >print( 1 ', Sframe tt SKEY_FRAME_STEP
', SMOVCAM_fStop
), }
SoutFH― >print( ";ヽ n'' ); SoutFH― >print( くくEOF_MOVCAML16 ); createNode an■ mCurveTL ―n "S{MOVCAMLattr_name}_foCusDistance・
;
EOF_MOVCAM_16 SoutFH― >print( 'SetAttr ']“
―s ', StotalNumberOfSteps, ' ".ktv[0:',( StOtalNumberOfSteps - 1 ),
');
foreach Sframe ( 50rt {Sa く=> Sb} keyS( %{ Sdata{ Sturtle } } ) ) { ―SK[Y_FRAME_STEP + 1, ' 1, SoutFH― >print( ' 1, Sframe tt SKEY_FRAME_STEP SMOVCAMLfocusDistance ); }
$outFH― >print( '';ヽ n" ); SoutFH― >print( くくEOF_MOVCAML17 ); createNode an■ mCurveTA ―n "S{MOVCAMLattr_name}_ShutterAnglet';
EOF_MOVCAML17 SoutFH― >print( 'SetAttr -5 ', StOtalNumberOfSteps, ' ".ktvEO:',( StOtalNumberOfSteps - 1 ), ']"');
foreach Sframe ( sOrt {Sa く=> Sb} keyS( %{ Sdato{ Sturtle } } ) ) { ―SKEY_FRAME_STEP + 1, ' ', SoutFH― >print( ' 1, Sframe ・ SKEY_FRAME_STEP SMOVCAM_shutterAngle ); }
SoutFH‐ >print( '';ヽ n" ); SoutFH― >print( くく[OF_MOVCAM_18 ); crecteNode an■ mCurveTL ―n "S{MOVCAM_attr_name}_centeroflnterest";
EOF MOVCAM_18 SoutFH― ,print( lSetAttr
‐s ', StotalNumberOfSteps, ' '・ .ktv[0:',( StOtalNumberOfSteps - 1 ),
']''');
foreach Sframe ( sort {sa く=> Sb} keyS( %{ SdOta{ Sturtle } } ) ) { ―SKEY_FRAME_STEP + 1, SoutFH― >print( ' t, Sframe tt SK[Y_FRAME_STEP SMOVCAM_centerOflnterest ); }
SoutFH― >print( '';ヽ n" );
',
付録 _2 fOr ( Si = SMAN_ARRAY_START_NUM; St く StOtalNumberOfTurtles + SMAN_ARRAY_START_NUM; Si++ ) { SoutFH‐ >print( くくEOF_EACHSHAPE ); createNode transform ―n "SnameOfManShapeSi"; setAttr “.t" ―type "double3・ 0 0 0 ; createNode nurbsSurfoce ―n "S{nameofManShape}ShapeS{i}'' ―p "SnameOfManShapeSi“ setAttr ―k off " v"; setAttr ".tw" yes; setAttr “dvu" 0; setAttr ・ .dvv・ 0; setAttr ".cpr" 4; setAttr “.cps" 1; createNode SnameOfMakeManShape ―n "SnomeOfMakeManShapeSi"; setAttr ".ax" ―type "double3" 0 1 0 ; ;
setAttr ".r・ 0 3; setAttr ".tol・ 0;
EOF_EACHSHApE }
SoutFH― >print( OmOdelp01 );
く=> Sb} keys( %dOta ) ) ) { foreach Sturtle ( Sort( {S● [OF_PATH01 ); SoutFH― >print( くく createNode an■ mCurveTU ―n "SnameOfManShapeS{turtle}_v■ s■ bility'';
setAttr " tan" 5; setAttr ".ktv[0コ "
1 1;
createNode animCurveTL ―n ''SnameOfManShapeS{turtle}_translateX"; EOF_PATH01
-1),'コ "');
SoutFH― >print( lSetAttr -5 ', StOtalNumberOfSteps, ' ".ktv[0:',( StOtalNunberOfSteps
foreach Sframe ( sOrt {sa く=> Sb} keyS( %{ Sdata{ Sturtle } } ) ) { ■SKEY_FRAME_STEP ―SKEY_FRAME_STEP + 1, ' ', SoutFH― >print( ' ', Sframe Sdata{ Sturtle }{ SfrOme }{ 'X' ] ); }
SoutFH― >print( ";ヽ n" );
$outFH― >print( くくEOF_PATH02 ); createNode an■ mCurveTL ―n ''SnameOfManShapeS{turtle}_translateZ";
EOF_PATH02 5outFH―
>print( 'SetAttr ―s ', StotalNumberOfSteps, ' ".ktv[0:',( StOtalNumberOfSteps
-1),']''');
く=> Sbl keyS( %{ Sdata{ Sturtle } } )) { Sz = Sdata{ Sturtle }{ Sframe }{ 'y' }く 0 ? Sdata{ Sturtle }{ Sframe }{ 'y' } + 124 : Sdato{ Sturtle }{ Sframe }{ 'y' }; SoutFH― >print( ' ', Sframe tt SKEY_FRAME_STEP ―SK[Y_FRAME_STEP + 1, ' ', S2 ); foreach Sfrone ( sOrt {s。
}
SoutFH― >print( “;ヽ n" );
くEOF_PATH03 ); SoutFH― >print( く n ''SnameOfMonShapeS{turtle}_translateY"; createNode aninCurveTL ― EOF_PATH03 s ', StotalNumberOfSteps, ' SoutFH― >print( 'SetAttr ―
Ⅲ.ktvEO:',( StOtalNumberOfSteps
-1),']"');
foreach Sframe ( 50rt {Sa く=> Sbl keyS( %{ Sdato{ Sturtle } } ) ) { Sy = Sdata{ Sturtle }{ Sframe }{ 'y' }く 0 ? SLEVEL_LOW : SLEVEL_HIGH; SoutFH― >print( ' ', Sframe * SKEY_FRAME_STEP ―SKEY_FRAME_STEP + 1, ' 1, Sy ); }
SoutFH― >print( ";ヽ n" ); }
SoutFH― >print( OmOdelP02 ); SoutFH― >print( くくEOF_CONNETCTATTR01 );
connectAttr "perspShape_hor■
20ntalFilmAperture.o" "perspShape hfo";
EOF_CONNETCTATTR01 5outFH― >print( くくEOF_CONNETCTATTR_MOVCAM );
connectAttr connectAttr connectAttr connectAttr connectAttr connectAttr connectAttr
"S{MOVCAM_name}_viSibility o" “SIMOVCAM_name}.v"; “S{MOVCAM_name}_translateX.o" "${MOVCAMLname}.tX''; ''S{MOVCAM_name}.ty"; "S{MOVCAM_name}_translateY.o“ "S{MOVCAMLname}_translateZ.o" "S{MOVCAM_name}.tz“ "S{MOVCAMLname}_rotateX.o" "S{MOVCAMLnane}.rx"; "S{MOVCAM_name}_rotateY.o" “SIMЮ VCAMLnane}.ry''; "S{MOVCAM_name}_rotatez o'' “S{MOVCAM_name}.rz";
;
付録_2 connectAtt connectAtt
r r
"
${.OvcAl.,l-none}-scolex.
o
"
o" o"
$$10VCAl{-nome}-scol eY. " ${r0VCAl,l-nome}-scol eZ. "
"
I {l0VClrl'l-nome}' sx " ; tt'OvCAl'l-nome}' sy " ;
"$
" l{t'OVCAI'l-nome} . sz " ; connectAttr connectAttr "${l.OvcAl,l-ottr-nome}-horizontolFilmAperture.o" "${IOVCAI{-ottr-nome}'hfo"; connectAttr "${f'lovcAil-ottr-nome}-verticolFitmAperture.o" "${l'{0vCAl'l-ottr-nome}'vfo"1 connectAttr "f{l0VCA,l-ottr-none]-focolLength.o" "$tl'l0vcAf4-ottr-nome].fl"; connectAttr "l{i0VCAlrl-ottr-nome}-squeezeRotio.o" "${IOVCAl'l-ottr-none}'lsr"; connectAttr "${t{ovcAf,l-ottr-nome}-fStop'o" "$tM0VCAl'{-ottr-nome}.fs"; connectAttr "3{tlovcr$,1-ottr-nome}-focus0istonce.o" "3{1'OVcAil-ottr-nome}'fd"; connectAttr "${l{ovcAltl-ottr-nome}-shutterAngle.o" "l{l0VcAl'{-ottr-none}.so"; connectAttr,'l0.OVCAtl_ottr-nome]-center0flnterest.o" "$tM0VCAM-ottr-nomel.coi"; E0
F
-Cot{NETCTATTR-I.0VCAI,|
for ( li = $||AN-ARRAY-START-N[I{; li < ltotolNurnberofTurtles + !I,|AN-ARRAY-START-N['{; li++ ) { connectAttr connectAttr connectAttr connectAttr connectAttr connectAttr
$outFH->print( <<E0F-LAST0ATA ) ; "${nomeOfl,lonshope}$ti}-visibititv.o" "${noneOfi{onShope}${i}.v"; "${norne0fl{onShope}l{i}-tronstotex.o" "l{none0fMonShope}${i}.tx"; "l{norneOfl,lonShope}t{i}-tronstoteY.o" "l{nome0fi'hnshope}9{i}'ty"; "${nomeOfl.hnShope}${i}-tronsloteZ.o" "${nomeOfl'lonShope}l{i}.t2"; "$nomeOfthketlonshopel{i}.os" "${nome0fl,lonShope}Shopet{i}.cr" ; "l{nomeOfl,hnShope}Shopel{i}.iog" "initiotShodingGroup.dsm" -no;
EOF-LASTDATA
$ortfl-tp"tnt(
enodelP03 )
loutFH->print(
<<EOF-LAST
;
foutFH->print( gnodetPo4 );
);
file -seg userlnterfoce "/diskZ/l4AYMnoyo/prciects/neoden3/coneroAnim1202.ut.mel"; // End of t{projectNome} EOF-LAST
close SoutFH;
MacPerl::SetFilelnfo( "JEDT'', 'TEXT", 30UTPUT_FILE_NAME ); }
####″ #######″
###############
#
# Read Model Part Files # ########################t#l#
sub reodlodelPortFiles { lportFH = nelr FiteHondle; $portFH->open(
01: l!\n"; ercdelPO1 =
"< :1i9ht-model-01" )
<lportFb;
lportFH->ctoseO
;
SportFH― >open( "く 02: S!ヽ n";
:light_model-02" )
│l
die ''30: ''.__LINE__.
:
Con't open
file
light-model-
Con't open
file
light-ntodet-
Con't open
fite
li.ght-modet-
OmodelP02 = くSpartFH>; SportFH‐ >close(); SpartFH― >open( "く :light_model-03'' ) 03: S!ヽ n"; OlllodelP03 ‐ くSpartFH>;
│l
die ''SO: ''.__LINE__.":
SpartFH― >close(); SpartFH― >open( "く 04: S!ヽ n";
:light_model-04" )
OmodelP04 = くSpartFH>; SpartFH― >close();
ll
die "SO: ''.__LINE__.'':
雨豫 _θ νИ yA Scer2e Flireの 解 説
一J
付録 _3
ASCII 1.0 scene
//Nome: TAKESHI:temp:Hirooko:
//Lost modified:
i,lon
#S:) i :. v--> e > :Stologo-Moyooz:J31-2-oni
Feb L 23:L7:L9
requires moyo "1.0"; currentUnit -l centimeter -o degree createNode tronsform -s -n "persp";
7999
-t film;
setAttr ".v" noi setAttr ".t" -type "doubte3" 28 7L 28 ; setAttr ".r" -type "doubte3" -28 45 -5 ; creoteNode conero -s -n "perspshope" -p "persp"; setAttr -k off ",v" no; setAttr ".coi." 45; setAttr ".imn" -type "string" "Persp" ; setAttr ".den" -type "string" "persp-depth" ; setAttr ".mon" -type "strin9" "persp-mosk" ; setAttr ".hc" -type "string" "viewSet -p %comero" creoteNode tronsform -n "perspl"; creoteNode comero -n "Perspshopez" -p "perspl"; setAttr -k off ".v"; setAttr ". coi" 3A.991876379f34357 ; setAttr ".imn" -type "string" "Perspl" ; setAttr ".den" -type "strin9" "Perspl-depth" ; setAttr ".mon" -tyPe "string" "perspl-nosk" ; setAttr ".hc" -type "string" "viewSet -p %comero" creoteNode onimcurveTu -n "perspl-visibitity" ; setAttr ".ton" 5:
I
;
n "persp■ _t■ anslateY"; createNode an■ mCurveTL ― Ⅲ setAttr ―s 100 .ktVEO:99]'' ■ 5.5 6 5.5 ■1 5.5 16 5 5 21 5.5 26 5 5 31
5 5 496 5 5;
50.9145 26 50 7961 31 50.6777 36 50.5593 41 50.4408 46 50.3224 51 50.204 56 )
0 451 0 456 0 461 0 466 0 471 0 476 0 481 0 486 0 491 0 496 0; n "perspl_scaleX"; createNode an■ mCurveTU ― setAttr -5 100 ".ktv[0:99]'' 1 1 6 1 496 1; createNode on■ mCurveTU ―n "perspl_scaleY";
カ メ ラ 衡8 反
471 75.3688 476 76.3352 481 77 3016 486 78.2679 491 79.2343 496 80.2007; createNode an■ mCurveTA ―n・ perspl_rotateX"; setAttr ―s 100・ ktv[0:99]Ⅲ 1 0 6 0 ■1 0 16 0 21 0 26 0 31 0 36 0 41 0 46 0 51 0 56 0 61 0 66 0 71 0 76 0 81 0 86 0 91 0 96 0 101 0 106 0 111 0 116 0 121 0 126 0 131 0 136 0 141 0 146 0 151 0 156 0 161 0 166 0 171 0 176 0 181 0 186 0 191 0 196 0 201 0 206 0 211 0 216 0 221 0 226 0 231 0 236 0 241 0 246 0 251 0 256 0 261 0 266 0 271 0 276 0 281 0 286 0 291 0 296 0 301 0 306 0 311 0 316 0 321 0 326 0 331 0 336 0 341 0 346 0 351 0 356 0 361 0 366 0 371 0 376 0 381 0 386 0 391 0 396 0 401 0 406 0 411 0 4■ 6 0 42■ 0 426 0 431 0 436 0 441 0 446 0 451 0 456 0 461 0 466 0 471 0 476 0 481 0 486 0 491 0 496 0; createNode an■ mCurveTA ―n "perspl_rotateY"; setAttr ―s 100・ .ktvEO:99]・ 1 405 645364457982 6 367.004120806723 11 276.998479078883 16 186.002411915847 491 185.99593133948 496 186.00179536048; createNode an■ mCurveTA ―n "persp■ _rotateZ"; Ⅲ setAttr ―s 100 .ktvEO:99]" 1 0 6 0 11 0 16 0 21 0 26 0 31 0 36 0 41 0 46 0 5■ 0 56 0 61 0 66 0 71 0 76 0 81 0 86 0 91 0 96 0 101 0 106 0 111 0 116 0 121 0 186 0 126 0 131 0 136 0 141 0 146 0 151 0 156 0 161 0 166 0 171 0 176 0 18■ 0 ■91 0 196 0 201 0 206 0 211 0 216 0 221 0 226 0 231 0 236 0 241 0 246 0 251 0 256 0 261 0 266 0 271 0 276 0 281 0 286 0 291 0 296 0 301 0 306 0 3■ 1 0 316 0 321 0 326 0 33■ 0 336 0 34■ 0 346 0 351 0 356 0 361 0 366 0 371 0 376 0 381 0 386 0 391 0 396 0 401 0 406 0 411 0 416 0 42■ 0 426 0 431 0 436 0 441 0 446
¬
カ メ ラ設 定
createNode an■ mCurveTL ―n "persp■ _translateZ"; Ⅲ ktvEO:99].' 1 52 2343 6 51.2698 11 51.1514 16 51.033 21 setAttr ―s 100
カ メ ラ座 標
21.0071;
︲︲︲∃ ﹁︱ ︱ ︱
1 1 6 1 11 1 16 1 21 1 26 1 31 1 36 1 41 1 46 1 s 100 ".ktvEO:99]・ setAttr ― 106 1 111 1 116 1 121 51 1 56 1 61 1 66 1 71 1 76 1 81 1 86 1 91 1 96 1 101 171 1 176 ■ ■81 1 186 1 126 1 131 1 136 1 141 1 146 1 151 1 156 1 161 1 166 236 1 241 1 246 1 251 1 191 1 196 1 201 1 206 1 211 1 216 1 221 1 226 1 231 301 1 306 1 3■ 1 1 316 1 256 1 261 1 266 1 271 1 276 1 281 1 286 1 291 1 296 366 1 371 1 376 1 381 1 321 ■ 326 1 331 1 336 1 341 1 346 1 351 1 356 1 361 431 1 436 1 441 1 446 1 386 1 391 1 396 1 401 1 406 ■411 1 416 1 42■ 1 426 496 1; 1 451 1 456 1 461 1 466 1 471 1 476 1 481 ■ 486 1 491 creoteNode onimCurveTl -n "perspl-tronsloteX" ; s 100 ".ktvEO:99]" 1 -73 4017 6 -73.5202 11 -72 5557 16 setAttr ―
(中 略
ヘ ッダ
//l&yo
ゴ
付録_3
一
setAttr ―s 100 ''.ktvEO:99]'' 1 1 6 1 496 1; createNode an■ mCurveTU ―n ''perspl_scaleZ"; setAttr ―s 100 ''.ktv[0:99]'' 1 1 6 1 496 1; createNode an■ mCurveTU ―n ''perspShape2_hor■ zontalFilmAperture"; 1 1・ 5 6 1.5 setAttr ―s 100 ''.ktvEO:99コ '。
496 35; createNode an■ mCurveTU ―n ''perspShape2_squeezeRatio。
setAttr -5 100 ".ktVEO:99]"
';
1 1 6 1
496 1; createNode an■ mCurveTU ―n ''perspshα pe2_fStop"; setAttr ―s 100 ''.ktVEO:99]'。 1 5.6 6 5.6
そ の他 ︶ カ メラ設定 ︵
496 1.5; createNode an■ mCurveTU ―n ''perspShape2_verticalFilmAperture"; setAttr ―s 100 " ktvEO:99コ '' 1 1 6 1 496 1; createNode animCurveTU ―n ''perspshape2_focalLength''; setAttr ―s 100 ".ktV[0:99]" 1 35 6 35
496 5.6; createNode an■ mCurveTL ―n "perspShape2_focusDistance''; setAttr ―s 100 " ktv[0:99]" 1 5 6 5 496 5; createNode an■ mCurveTA ―n ''perspShape2_shutterAngle"; setAttr ―s 100 ".ktvEO:99]" 1 144 6 144
496144;
setAttr ―k off ".v''; connectAttr "pointLightShapel.ltd'' "defaultLightListl.ldo・ ―na; ‐na; connectAttr "pointtightShapel msg" "lightListl.l" createNode an■ mCurveTL ―n "po■ ntLightl_translateX''; setAttr ―s 100 ''.ktvEO:99コ " 1 -73.4017 6 -73.5202
ライト座標
createNode an■ mCurveTL ―n ''perspShape2_centerOflnterest''; setAttr -5 ■00 ".ktvEO:99]'' 1 45 6 45 496 45; createNode transform ―n "pointLightl"; createNode pointLight ―n ''pointLightShapel'' ―p "pointtightl";
496 5.5; creoteNode an■ mCurveTL ―n ''po■ ntLightl_tronslateZ''; setAttr ―s 100 “.ktv[0:99]" 1 52.2343 6 51.2698
496 80.2007; createNode transform ―n "refugerShapeO"; setAttr ".t" ―type “double3・ 0 0 0 ; createNode mesh ―n "refugerShapeShapeO" ―p "refugerShapeO";
0.129904 (中 略 )
0.11258 1.38152 0 0466314 0.121856 1.33104 0.0504735 0.11258 1.28057 0.0466314; setAttr ―s 284 ".ed“ setAttr ".edEO:165]'' 0 1 0 1 2 0 2 3 0 3 0 0 1 4 0 4 5 0 5 2 0 4 6 0 ;
6 (中 略 )
68 0 90 95 0 95 94 0 91 96 0 96 95 0 92 97 0 97 96 0; setAttr ".edE166:283]" 93 98 0 98 97 0 45 98 0 94 99 0 99 68 0 95 100 0 (中 略 )
f 4 -284 -279 -83 -124 ; n t'refugerShapel''; createNode transform ― type t'double3・ 0 0 0 ; setAttr “.t" ― ― p ''refugerShapel"; refugerShapeShapel'。 n “ createNode mesh ― setAttr ―k off “.v"; setAttr -5 149 “.vt[0:148]'' 0 129904
0.15000001 0.88380802 3.78919e-15
ライト設定
setAttr ―k off “.v"; setAttr ―s 149 ・ .vt[0:148]" 0.■ 5000001 0 88380802 3.78919e-15
付録二 3 createNode transform ―n "refugerShape334“ type "double3" 0 0 0 ; setAttr ".t'' ― createNode mesh ―n "refugerShapeShape334'' ―p ''refugerShape334"; ;
setAttr ―k off ".v''; setAttr ―s ■49
'・
.vt[0:148]"
0 15000001 0.88380802 3.78919e-15
0.129904 (中 略
)
f 4 -284 ‐279 -83 ‐124 ; createNode transform ―n "directionalLightl"; type "double3" 0 8.7845303867403306 1.4331508085■ 7843 ; setAttr ".t" ― ‐ type "double3" -206.75596732883804 58.446030078944759 setAttr ".r・ ・ ― 180 ; createNode di rectionalLight
‐n "directionalLightShapel" ― p "directionalLightl"; setAttr ―k off ".v"; setAttr " in・ 2.032599925994873; setAttr " urs“ yes; setAttr ".col・ ■1.283534928845604; setAttr ''.sa" 17.568000793457031; createNode transform ―n 'lombientLightl''; setAttr ".t" ―type ''double3'' 16.481800717335982 31.061864380510141 2.2023724655427657 ; type "double3'' 131.97734827858571 73.981944527878824 setAttr ''.r" ‐ 180 ;
createNode ambientLight ―n ''ambientLightShapel'' ―p ・'ambientLightl"; setAttr ―k off '1.vi'; setAttr '・ .in・ 0;
setAttr " col" 39.509671533411733; createNode transform ―n "ground"; createNode mesh ―n "groundShape" ―p ''9round''; setAttr ―k off “.v''; setAttr ―s 24 ".vt[0:23]'' ‐118 -0 111792 109.024
‐118 -0.111792 14
119
-0.111792 14 119 -0.111792 109.024 -118 0 109.024 119 0 109.024 119 0 14 -118 0 ■4 -118 -0 111792 109.024 119 -0.111792 109.024 119 0
109.024 -118 0 109.024 119 -0.111792 109.024 119 -0.111792 14 119 0
■4 119
o 109.024 119 -0.111792 14 -118 -0.111792 14 -118 0 14 119 0 14 -118 0 111792 ■4 -118 -0.111792 109.024 -118 0 109.024 -118 0 14; setAttr ―s 24 ''.ed[0:23コ “ 0 1 0 1 2 0 2 3 0 3 0 0 4 5 0 5 6 0 6 7 0 7 4
18 0 18 19 0 19 16 0 20 21 0 21 22 0 22 23 0 23 20 0; setAttr -5 6 ・ .fc[0:5]" ―type mpolyFaces"
f40123 f44567
f 4 8 9 10 11 f 4 12 13 14 15 f 4 16 17 18 19 f 4 20 21 22 23 ; createNode transform ‐n "c"; creoteNode mesh ―n 'cShape・ ―p "c"; setAttr ―k off m.v"; setAttr ―s 1560 ''.vt"; setAttr “.vt[0:165]" -85.5802 0 83.311302
‐85.021202 0 83.311302 -
85.02■ 202
0 83.8703 ‐85.5802 0 83.8703 -85.5802 8.9434004 83.311302 85.5802 8.9434004 (中 略 )
f 4 1556 1557 1558 1559 ; n "base_f''; createNode trclnsform ― n "base_fShapem _p "base_f`'; createNode mesh ― k off ".v"; setAttr ‐ '.vt''; s 3754 ・ setAttr ― setAttr ".vt[0:165コ " 21.628799 0 42.059898 21.8524 0 41.8363 33.9259
0
41.8363 33.9259 0 29.762699 21.8524 0 29.762699 21.8524 0
建築 モデ ルデータ
0 8 9 0 9 10 0 10 11 0 11 8 0 12 13 0 13 14 0 14 15 0 15 12 0 ■6 17 0 17
付録 _3 41.8363 21.628799
f 30 3724 3725 3726 3727 3728 3729 3730 3731 3732 3733 3734 3735 3736 3737 3738 3739 3740 374■
3742 3743 3744 3745 3746 3747 3748
3749 3750 3751 3752 3753 ; createNode transform ―n "bose_f_g''; createNode mesh ―n ''base_f_gShape'' ―p "b● se_f_9"; setAttr ―k off '・ .v''; setAttr ―s 232 ''.vt"; setAttr ''.vtEO:165]'' -34.155701 0 83.423103 -34.155701 0 83.199501 29.125
0 83.199501 -29.125 0 83.423103 -34.155701 4.4717002 83.423103 ‐29.125 4.4717002 (中 略 )
f 4 228 229 230 231 ; createNode transform ―n ''b● se_f_c''; creoteNode mesh ―n t'bose_f_cShape'1 ‐p ''bose_f_c.`; setAttr ‐k off ".v.:; setAttr ―s 1872 .'.vt"; setAttr ''.vt[0:165]'' 2.7358501 0 83.311302 3.2948101 0 83.311302 3.2948101 0 83.8703 2.7358501 0 83.8703 2.7358501 4.4717002 83.311302 2.7358501 4.4717002
f 4 1868 1869 1870 1871 ; createNode transform ―n “es"; 。 createNode mesh ―n ''esShape“ ‐p 'es''; setAttr ―k off ".v''; setAttr ―s 2688 ".vt''; ‐29.4604 0.00128122 76.603798 -29.4604 setAttr ''.vt[0:165]" 0.00128122 76.156601 -26.777399 0.00128122 76.156601 -26.777399 0.00128122 76.603798 (中 略 )
f 4 2684 2685 2686 2687 ; g_step"; createNode transform ―n “ createNode mesh ―n “g_stepShape'' ―p "g_step''; setAttr ‐k off ''.v"; setAttr ―s 4320 ''.vt“ setAttr ".vt[0:165]'' 36.049999 0.00022187999 27.4151 35.5825 0.00022187999 27.415■ 35.5825 0.00022187999 17.3538 36.049999 0.00022187999 17.3538 36.049999 ;
(中 略 )
f 4 4316 4317 4318 4319 ; createNode transform ―n ''9_f"; createNode mesh ―n "g_fShape" ―P ''9_f''; setAttr ―k off ".v''; setAttr ‐5 876 ".vt"; setAttr '・ .vt[0:165]" 31.8426 0.95517498 27.4151 26.7003 0.95517498 27.4151
26.7003 0.95517498 17.3538 31.8426 0.95517498 17.3538 31.8426 1 05459 27.4151 (中 略 )
f 4 872 873 874 875 ; createNode tronsform ―n ''sec_floor''; createNode mesh ―n ''sec_floorShope'' ‐p .'sec_floor''; setAttr ―k off ".v''; setAttr ‐s 288 ''.vt"; setAttr t'.vt[0:165]“ -46.452801 2.2358501 75.485802 -53.1604 2.2358501 75.485802 -53.1604 2.2358501 72.132103 -91.1698 2.2358501 72.132103 -91.1698 (中 略 )
建 築 モデ ル デー タ
(中 略 )
付録_3 f 4 284 285 286 287 ; createNode transform ―n "sec_f"; createNode mesh ―n "sec_fShape" ―p "sec_f"; setAttr ―k off ".v"; setAttr ―s 1016 ・ .vt"; setAttr t'.vt[0:165]''
-103.579 2.7948101 67.772202
‐103.355 2.7948101
67.548599 -92.399498 2.7948101 67.548599 -92.399498 2.7948101 62 182499 -103.355 2.7948101 (中 略 ) f 4 10■ 2 1013 1014 1015 ; createNode transform ―n "sec_f_g"; createNode mesh ―n "sec_f_gShape" ―p l'sec_f_9"; setAttr ―k off ".v"; setAttr -5 24 ''.vt[0:23]'1 -45.3349 4.4717002 29.6509 -43.099098 4.4717002 29.6509 -43 099098 8.9434004 29.6509 -45.3349 8.9434004 29 6509 -43 099098 4.4717002 29.6509 -45.3349 4 4717002 29.6509 -45.3349 8.9434004 29.6509 -43.099098 8 9434004 29.6509 -40.863201 4.4717002 29.6509 -34.155701 4.4717002 29.6509 -34 155701 8.9434004 29.6509 -40.863201 8.9434004 29.6509 -
29.6509;
setAttr ―s 24 ".ed[0:23]“
0 1 0 1 2 0 2 3 0 3 0 0 4 5 0 5 6 0 6 7 0 7
4 0 8 9 0 9 10 0 10 11 0 11 8 0 12 13 0 13 14 0 14 15 0 15 12 0 16 17 0 17 18 0 18 19 0 19 16 0 20 21 0 21 22 0 22 23 0 23 20 0; setAttr ―s 6 .' fc[0:5]" ―type "polyFaces"
f40123 f44567
4 8 9 10 11 4 12 13 14 15 4 16 17 18 19 4 20 21 22 23 : createNode transform ―n "thr_floor"; createNode mesh ―n 'thr_floorShape“ ―p "thr_floor“ setAttr ―k off ".v''; setAttr ―s 104 ''.vtEO:103]'' -110.175 8.3844299 95.608498 -110.175 8 3844299 29.6509 42.981098 8.3844299 29.6509 42.981098 8.3844299 44.183998 -20.740601 ;
(中 略 )
f 4 100 101 102 103 ; createNode transform ―n "thr_f"; createNode mesh ―n "thr_fShape" ‐p ''thr_f"; setAttr ―k off ".v''; setAttr -5 3344 ".vt'';
‐39.186298 setAttr ".vt[0:165]" -38 627399 8.9434004 76.603798 8.9434004 76.603798 -39.186298 8.9434004 74.367897 -38.627399 8.9434004 74.367897 -38.627399
f 4 3340 3341 3342 3343 ; createNode transform ―n ''thr_f_g"; createNode mesh ―n ''thr_f_gShape" ―p "thr_f_9''; setAttr ―k off ''.v"; ‐ 46.452801 8.9434004 36 358501 -44.775902 setAttr ―s 104 ".vt[0:103]'' 8.9434004 44.775902 13.4151 36.358501 -46.452801 13.4151 36.358501 ‐ 36.358501 -44.775902
建築 モデ ルデー タ
34.155701 4.4717002 29.6509 -40.863201 4.4717002 29.6509 -40.863201 8.9434004 29.6509 -34.155701 8.9434004 29.6509 -29.684 4.4717002 29.6509 -22.9764 4.4717002 29.6509 -22.9764 8 9434004 29.6509 -29.684 8.9434004 29.6509 -22.9764 4.4717002 29 6509 -29.684 4.4717002 29.6509 -29.684 8.9434004 29.6509 -22.9764 8.9434004
付録_3 f 4 100 101 ■02 103 ; createNode transform ―n ''for_floor''; createNode mesh ‐n "for_floorShape'' ―p ''for_floor'1; setAttr ‐k off ".v''; setAttr ―s l16 ''.Vt[0:■ ■5]'' -110・ 175 12.8561 95.608498 ‐104.026 12.8561 81.0755 -67.693398 12.8561 81.0755 -67.693398 12.856■ 64.306602 ‐65.457497 (中 略 ) f 4 112 113 1■ 4 1■ 5 ;
63.6689 13.4151 (中 略 )
f 4 3692 3693 3694 3695 ; transform ―n "for_f_g'`; CFeateNode mesh ―n “for_f_gShapet' ‐P ''for_f_g''; setAttr ―k off ''.v''; ‐20.4611 13.4151 54.2453 ‐20.46■ 1 13.4151 setAttr ‐s 96 ".vt[0:95]'` 47.537701 -20.4611 17.886801 47.537701 ‐20.4611 ■7.886801 54.2453 ‐ cre● teNode
20.4611 13.4151 47.537701 -20.4611 13.4151 54.2453 -20.4611 17.88680■
54.2453
‐20.4611 17.886801 (中 略 )
f 4 92 93 94 95 ; createNode tronsform ―n ''wall_temae"; createNode mesh ―n ''wall_temaeShape'` ‐p ''Wall_temae''; setAttr ―k off ''.v''; setAttr ‐5 24 ''.vt[0:23]1' 119 0 13.8882 119 0 14.1118 -118 0 14.1118 ‐118
0 13.8882 119 17.886801 13.8882 ‐118 17.886801 13.8882 ‐118 17.886801 14.1118 119 17.886801 ■4.1118 119 0 13.8882 -■ 18 0 13.8882 -118 17.886801 13.8882 119 17.886801 13.8882 -118 0 13.8882 -■ 18 0 14.1118 ‐118 17.886801 14.1■ 18 ‐118 17.886801 13.8882 ‐118 0 14.1118 119 0 14.1118 119
17.886801 14.1118 -118 17.886801 14.1118 119 0 14.1118 119 0 13.8882 119 17.886801 13.8882 1■ 9 17.886801 14.1118; setAttr -5 24 ".edEO:23]'' 0 1 0 1 2 0 2 3 0 3 0 0 4 5 0 5 6 0 6 7 0 7
4 0 8 9 0 9 10 0 10 11 0 11 8 0 12 13 0 13 14 0 14 15 0 15 12 0 16 17 0 17 18 0 18 19 0 19 16 0 20 21 0 21 22 0 22 23 0 23 20 0; setAttr ‐s 6 1'.fc[0:5]1' ―type '`polyFaces''
f40123 f44567
f 4 8 9 10 11 f 4 12 13 14 15 f 4 ■6 17 ■8 ■9 f 4 20 21 22 23 ; n ''roof''; createNode tl・ ansform ‐ createNode mesh ―n 'troofShape'' ‐P setAttr ‐k off '',v''; setAttr ―s 4884 ''.vt"; setAttr ''.vt[0:165]'`
''roof':;
―■18 17.800699 27.3437 -■ ■8 17.9729 27.486401 ‐
118
18.648399 26.671499 -118 19.236799 25.784401 -118 19.7276 24.839899 -118
建 築 モ デ ルデ ー タ
createNode transform ‐n "for_f''; createNode mesh ―n ''fol・ _fShape'' ―p "for_f''; setAttr ‐k off ".v'1; setAttr ―s 3696 ".vt''; ‐ 61.432999 13.4151 84.541 ‐61.656601 13.4151 setAttr ''.vt[0:165]" 84.317497 -61.656601 13.4151 76.715599 -63.6689 13.4151 76.715599 -
付録 _3 f 4 4880 4881 4882 4883 ; createNode an■ mCurveTU ―n "refugerShapeO_v■
5■
bility・
;
setAttr ".tan" 5; 1 1; setAttr " ktv[0]・ createNode an■ mCurveTL ―n ''refugerShapeo_translateX"; setAttr -5 100 ・ .ktvEO:99コ・ 1 8 6 8 1055 11 8.2109 16 8.3164 21 8.4218 26 8.5273 31 8 6327 36 8.7382 41 8 8436 46 8 9491 51 9 0545 56 9.16 61 9.2654 66 (中 略
)
1人 目︶ 避 難者座標 データ ︵
0.2221 486 -0.0143 491 -0.4438 496 -0.8732; n "refugerShapeO_translateZ"; crerlteNode an■ mcurveTL ― setAttr ―s 100 ・ ktv[0:99]'' 1 91 6 90 4019 11 89.8038 16 89 2057 21 88 6077 26 88.0096 31 87.4115 36 86 8134 41 86.2153 46 85 6172 51 85.0192 56 84 4211 61 83 823 66 83 7175 71 83.6121 76 84.1897 81 84.002 86 83.8143 91 83.6267 96 84.1472 101 84 5914 106 84 1772 111 84.4435 116 84.7097 121 84.9759 126 85.2422 ■31 84.711 136 84 1798 141 83.6487 146 83.7332 151 83.8177 156 84.2619 161 84.706 166 85 1502 171 85.5944 176 86 0385 181 86 6055 186 87 1725 191 87 7394 196 88 3064 201 88.8982 206 89 0348 211 89 1714 216 89.308 221 89 4446 226 89 5812 231 89.7178 236 89.8544 241 89.9911 246 90 1277 251 89.5359 256 88.9442 261 88.3524 266 88.2889 271 88.2255 276 88.162 281 88.647 286 88.2815 291 88 5572 296 88 8329 301 89.1086 306 89 3653 311 89 9157 316 90.4661 321 90 4027 326 89.7987 331 89.1947 336 88 5907 341 87.9867 346 87.3827 351 86 7787 356 86 1747 361 85.5708 366 84.9668 371 84 3628 376 83.7588 381 83.1548 386 82 5508 391 81.9468 396 81.3428 401 80.7388 406 80.1349 411 79 5309 416 78.9269 421 78.3229 426 77 7189 431 77.1149 436 76.5109 441 75.9069 446 75.3029 451 74 699 456 74.2337 461 73.7685 466 74.2945 471 74 8204 476 75 0479 481 75.2754 486 74.7047 491 74.2753 496 74.7047; createNode an■ mCurveTL ―n "refugerShapeO_translateY"; setAttr -5 100 " ktvEO:99]" 1 49 6 49 11 49 16 49 21 49 26 49 3■ 49 36 49 41
避難 者各 座 標 デ ー タ
(中 略 )
491 49 496 49;
Ⅲ createNode an■ mCurveTA ―n refugershapeO_rotateY“ Ⅲ ・ ― 1 185 024273968751 6 349 996205104126 11 .ktvEO:99コ s 100 setAttr ;
(中 略 )
496 135 000315687986; (中 略 )
createNode anlmCurveTU ―n ''refugerShape335_v■ s■ bility"; setAttr " tanⅢ 5; setAttr " ktvEO]・ 1 1; createNode on■ mCurveTL ―n・ refugerShape335_translateX";
161 216 271 326 381
49 49 49 49 49
166 221 276 331 386
49 171 49 176 49 181 49 186 49 191 49 196 49 201 49 206 49 211 49 49 226 49 231 49 236 49 241 49 246 49 251 49 256 49 261 49 266 49 49 281 49 286 49 291 49 296 49 301 49 306 49 311 49 316 49 321 49 49 336 49 341 49 346 49 351 49 356 49 361 49 366 49 371 49 376 49 49 391 49 396 49 401 49 406 49 411 49 416 49 421 49 426 49 431 49 436 49 44■ 49 446 49 451 49 456 49 461 49 466 49 471 49 476 49 481 49 486 49 491 49 496 49; createNode an■ mCurveTA ―n・ refugerShope335_rotateY"; 1 314.793413315803 6 134.793834233118 11 270 16 setAttr -5 100 ".ktvEO:99]・
33 5人 目︶ 避難者座標 データ ︵
setAttr -5 100 " ktv[0:99]" 1 109.8482 6 0 11 0 16 0 21 0 26 0 31 0 36 0 41 0 46 0 51 0 56 0 61 0 66 0 71 0 76 0 81 0 86 0 91 0 96 0 101 0 106 0 111 0 116 0 121 0 126 0 131 0 136 0 ■41 0 146 0 151 0 156 0 161 0 166 0 171 0 176 0 181 0 186 0 191 0 196 0 201 0 206 0 211 0 216 0 221 0 226 0 231 0 236 0 241 0 246 0 251 0 256 0 261 0 266 0 271 0 276 0 281 0 286 0 291 0 296 0 301 0 306 0 311 0 316 0 321 0 326 0 331 0 336 0 341 0 346 0 351 0 356 0 361 0 366 0 371 0 376 0 381 0 386 0 391 0 396 0 401 0 406 0 411 0 416 0 421 0 426 0 431 0 436 0 441 0 446 0 451 0 456 0 461 0 466 0 471 0 476 0 481 0 486 0 491 0 496 0; createNode aninCurveTL ―n "refugerShape335_translateZ"; 1 14.9407 6 0 11 0 16 0 21 0 26 0 31 0 36 0 41 0 setAttr ―s 100 " ktvEO:99]・ 46 0 51 0 56 0 61 0 66 0 71 0 76 0 81 0 86 0 91 0 96 0 101 0 106 0 11■ 0 116 0 ■76 0 181 0 121 0 126 0 131 0 136 0 141 0 146 0 151 0 156 0 161 0 166 0 171 0 186 0 191 0 196 0 201 0 206 0 211 0 216 0 221 0 226 0 231 0 236 0 241 0 246 0 251 0 256 0 261 0 266 0 271 0 276 0 281 0 286 0 291 0 296 0 301 0 306 0 311 0 316 0 321 0 326 0 331 0 336 0 341 0 346 0 351 0 356 0 361 0 366 0 371 0 376 0 381 0 386 0 391 0 396 0 401 0 406 0 411 0 416 0 421 0 426 0 431 0 436 0 441 0 446 0 451 0 456 0 461 0 466 0 471 0 476 0 481 0 486 0 491 0 496 0; createNode animCurveTL ―n・ refugerShape335_translateY"; setAttr ―s 100 ".ktv[0:99]・ 1 4.5 6 49 11 49 16 49 21 49 26 49 31 49 36 49 41 49 46 49 51 49 56 49 61 49 66 49 71 49 76 49 81 49 86 49 91 49 96 49 101 49 106 49 111 49 116 49 121 49 126 49 131 49 136 49 ■41 49 146 49 ■51 49 156 49
270 21 270 26 270 31 270 36 270 41 270 46 270 51 270 56 270 61 270 66 270 71 270 76 270 81 270 86 270 91 270 96 270 101 270 106 270 111 270 116 270 121 270 126 270 ■31 270 136 270 141 270 146 270 151 270 156 270 161 270 166 270 171 270 176 270 181 270 186 270 191 270 196 270 201 270 206 270 211 270 216 270 221 270 226 270 231 270 236 270 241 270 246 270 251 270 256 270 261 270 266 270 271 270 276 270 281 270 286 270 291 270 296 270 301 270 306 270 311 270 316 270 321 270 326 270 331 270 336 270 341 270 346 270 351 270 356 270 361 270 366 270 371 270 376 270 381 270 386 270 391 270 396 270 401 270 406 270 411 270 416 270 421 270 426 270 431 270 436 270 441 270 446 270 451 270 456 270 461 270 466 270 471 270 476 270 481 270 486 270 491 270 496 270; createNode shadingEngine ‐n ''ground2'';
︱︱ ︱ ︱ ︱ ︱ ︱ ∃
付録 _3
setAttr ".thi'' 0; setAttr ―s 14 “.dsm'';
setAttr ".rom yes; createNode mater■ ●llnfo ―n "mater■ allnfol''; createNode groupld ―n ''9roupld16''; setAttr ".thil' 0;
createNode phong ‐n ''groundl"; setAttr “.dc" 0.16259999573230743; setAttr ".c" ―type ''float3" 1 1 1 ; type "float3'' 0.43921569 0.43921569 0.43921569 ; setAttr '' ambc" ― setAttr ".tc" 0.008139999583363533; setAttr ".sc" ―type ''float3" 0.95181745 0.9878453 1 ; setAttr " cp.' 2;
createNode shadingEngine ―n "man"; setAttr ".thi" 0; setAttr -5 748 “.dsm"; setAttr ".ro" yes; setAttr ―s 2 ".gn"; materiallnfo2“ createNode materiallnfo ―n “ creoteNode groupld ‐n "groupld26"; setAttr “.thi" 0; createNode groupld ―n ''groupld28'・ setAttr ".thi" 0; crecteNode groupld ―n "groupld31";
;
;
setAttr ".thi'' 0;
setAttr ".ro" yes; createNode mater■ al lnfo ―n "moter■ allnfo3"; creoteNode phong ―n "phong3''; type "float3" 0.29019609 0.29019609 0.29019609 ; setAttr "。 it" ― createNode shadingEngine ‐n "glass";
setAttr “.ihit' 0; setAttr ―s 5 ".dsm"; setAttr ".ro" yes; creoteNode mater、 clllnfo ―n ''mater■ allnfo4"; createNode phong ―n mphong4"; type “float3" 1 1 1 ; setAttr "。 c" ― type "float3'' 0.72549021 0.72549021 0.72549021 ; setAttr '' tt'' ― type ''float3'' 0.41568628 0.41568628 0.41568628 ; setAttr ".● mbc" ― setAttr ".sc" ―type "float3" 0.57586008 0.76595742 0.75664729 ; createNode shadingEngine ―n "_x___c___13"; setAttr ".thit' 0; setAttr ".ro“ yes; n ''mater■ allnfo5“ createNode mater■ ●llnfo ― createNode phong ―n “phong5''; setAttr ".c" ―type “float3'' 1 1 1 ; createNode phong ―n ''phong6"; setAttr ".c" ―type "float3・ 1 1 1 ; createNode shadingEngine ―n "phong6SG";
;
setAttr ''.thi" 0;
setAttr ".ro" yes; n "mater■ ●llnfo6“ createNode mater■ ●llnfo ― creoteNode an■ mCurveTU ―n "perspShape_hor■ 20ntalFilmAperture''; setAttr ".ktv[0]“ 38 1.4173200000000001; createNode checker ―n ''checkerl''; createNode place2dTexture ‐n "place2dTexturel''; type "float2'1 4 4 ; setAttr '・ .re'' ― createNode shodingEngine ‐n ''phong3SG"; ;
モデ ル アト リピ ュー ト
setAttr ".thit' 0;
createNode groupld ―n "groupld32"; setAttr ".thi" 0; createNode phong ―n "phong2''; setAttr ".c" ―type "float3・ 0.75531912 0.085327625 0.05778544 ; createNode shadingEngine ―n "floorl";
付録 _3
setAttr ".ihi" 0i setAttr ".ro" yes; createNode moteriollnfo -n "moteriollnfoT"; select -ne timel;
setAttr ".o"
1;
select -ne initiotShodingGrouP;
setAttr ".ro" yes; setAttr -s 2 ".9n";
select -ne initiotPortictesE;
setAttr ".ro"
yes;
select -ne defoultRenderclobats
setAttr setAttr setAttr setAttr
".top" 239; ".rght" 319;
;
".on" yes; ".mb" Yes;
select -ne defoultRenderQuolity; setAttr ".eoo" 1; select -ne defoultResolution ; setAttr ". dor" 1.33f333373@697632; select -ne hypercraphLoyout; setAttr ".cch" noi
setAttr setAttr setAttr setAttr
".ihi"
2:
".nds" 0; ".img" -type "string" ".ims" 1;
""
;
1
//Nome
:
TAKESHI
:
//Last nodified:
E* t iB* : Stologo-t''loyo02 : J31-2-oni Feb L ?3:L7:L9 L999
temp : Hi rooko :
trlon
;
ア ト リ ピ ュー ト の コネ ク ト
connectAttr "perspshope-horizontotFitmAperture.o" "perspShope.hfo" ; connectAttr "perspl-visibitity.o" "perspl.v"; connectAttr "perspl-tronslotex.o" "perspl'tx" ; connectAttr "perspl-tronsloteY.o" "perspl.ty" ; connectAttr "perspl-tronslotez.o" "penspl.tz"; connectAttr "perspl-rototex.o" "persp1.rx" ; connectAttr "perspl-rototeY.o" "perspl'ry"; connectAttr "perspl-rototez.o" "persPl.rz"; connectAttr "perspl-scoleX.o" "persp1.sx"; connectAttr "perspl-scoleY.o" "persP1.sy"; connectAttr "perspl-scolez.o" "Perspl,sz"; connectAttr "perspShope2-horizontolFilmAperture.o" "perspShope2.hfo" connectAttr "perspShopez-verticolFitmAperture.o" "perspShapeZ'vfo" ; connectAttr "perspshopeZ-focolLength.o" "perspShope2'fl" ; connectAttr "perspShope2-squeezeRotio. o" "PerspShope2 . tsr" ; connectAttr "perspShopeZ-fStoP.o" "perspshope?.f s"', connectAttr "perspShope2-focusDistonce.o" "perspShope2.fd" ; connectAttr "perspShope2-shutterAngle.o" "perspShope2.so" ; connectAttr "perspShope2-centeroflnterest.o" "perspShopeZ. coi" ; connectAttr "refugershopeo-visibitity.o" "refugerShopeo.v" ; connectAttr "refugerShopeO-tronslotex.o" "refugerShopeO.tx" ; connectAttr "refugerShoPeo-tronsloteY.o" "refugerShope0'ty" ; connectAttr "refugerShopeo-tronslotez.o" "refugerShopeo'tz" ; connectAttr "refugerShope0-rototeY.o" "refugerShopeo.ry" ; connectAttr "mokerefugerShopeo.os" "refugerShopeShope0.cr" ; connectAttr "refugershopeshoPeo. iog" "initiotShodingGroup.dsm" -no; connectAttr "refugerShopel-visibitity.o" "refugerShopel.v" ; connectAttr " refugerShopel-translotex. o" " refugerShopel ' tx" ; connectAttr "refugershopel-tronsloteY.o" "refugerShopel.ty" ; connectAttr "refugerShopel-tronsloteZ.o" "refugershopel.tz" ; connectAttr "refugerShopel-rototeY.o" "refugerShopel.ry" ; connectAttr "mokerefugerShopel.os" "refugerShopeshopel.cr" ; connectAttr "refugerShopeShoPel. iog" "initiotShodingGroup.dsm" -no connectAttr "refugerShopeZ-visi.bility.o" "refugershqpe2.v" ; connectAttr " refugerShope2-tronsloteX ' o" " refugerShope2. tx" ; connectAttr " refugerShope2-tronsloteY. o" " refugerShope2. ty" ; connectAttr "refugerShopeZ-tronslotez.o" "refugerShopeZ,tz" ; connectAttr "refugerShopeZ-rototeY,o" "refugerShopez. ry" ; connectAttr "mokerefugershopeZ.os" "refugerShopeShope2.cr" ; connectAttr "refugerShopeShqPez. iog" "initiotShodingGroup. dsm" -no; connectAttr "refugerShope3-visibility.o" "refugerShope3.v" ; connectAttr "refugerShope3-tronslotex.o" "refugerShope3.tx" ; connectAttr "refuger//|tbyo ASCII 1.0 scene