Microsoft PowerPoint - [150428] CMP実習Ⅰ(2015) 橋本 CG編 第2回 ベジエ曲線とフラクタル.pptx

Size: px
Start display at page:

Download "Microsoft PowerPoint - [150428] CMP実習Ⅰ(2015) 橋本 CG編 第2回 ベジエ曲線とフラクタル.pptx"

Transcription

1 コンテンツ メディア プログラミング実習 Ⅰ コンピュータグラフィックス編 ベジェ曲線とフラクタル 橋本直

2 今日大事なのは 難しい数式が出てきたら 落ち着いて式のつくりを読み取ろう 数式の意味を完全に理解できていなくても プログラムで実装することはできる 難しいアルゴリズムが出てきたら コンピュータになりきってどういう処理が われるか ずつ丁寧に考えよう

3 . ベジェ曲線

4 滑らかな曲線を描くアルゴリズム いろいろな曲線 ベジェ曲線 ファーガソン曲線 スプライン曲線 有理ベジェ曲線 NURS 曲線 CADソフトやドローソフトには大抵なんらかの曲線アルゴリズムが入っている Illusraor, Phooshop, PowerPoin, ペイント, 4

5 例 : Inkscape の曲線機能 Illusraor Inkscape 5

6 ベジェ曲線とは 制御点 と呼ばれる複数の点に基づいて定義される多項式曲線 フランスの 動 メーカー ルノー社のエンジニアだったピエール ベジェが考案 96 CAD の開発を っていた Pierre ézier Image from hp://luc.devroe.org/fons-66.hml 6

7 ベジェ曲線はこんな線 P P P P0 点 P0, P, P, P を制御点と呼ぶ n 次のベジェ曲線には n 個の制御点がある 次のベジェ曲線 4 個の制御点 次のベジェ曲線 個の制御点 7

8 アニメーションで るベジェ曲線 次ベジェ曲線 次ベジェ曲線 Image from hp://en.wikipedia.org/wiki/%c%a9zier_curve 8

9 ベジェ曲線の形状 制御点の位置を変えることによって曲げ方を変えることができる 9

10 ベジェ曲線の性質 端点一致性 P P P0 P P0 P P P P 曲線の両端は制御点 P0 Pnに一致する また P0 P と Pn- Pn が曲線の接ベクトルとなる 0

11 ベジェ曲線の性質 凸包性 P P P P P0 P P P P P0 P ベジェ曲線は制御点によって定義される凸包の中に完全に内包される 凸包 とつほう 与えられた点群を含む最小の凸形状のこと ピン群に輪ゴムをかけたときにできる図形

12 ベジェ曲線の数式表現 制御点 P0, P, P, P があるとき 次のベジェ曲線は次式で表わされる P = P 0 0 P P P, 0 i ここでは 次のバーンスタイン基底関数 0 0 = = = =

13 実装のために数式を読む まずは式の形を把握する P = P0 0 P P P どうやったらプログラムに落とし込めそうかよく考える 例えば微積分や総和 ノルム 最大値などの計算は入っている? って何だ? 媒介変数表示 パラメータ表示 この式に =0, =0., =0., =.0 と代入していくと 曲線を構成する点群になる すなわち for 文で =0.0 の範囲で値を入れていけばよい!

14 実装のために数式を読む 実装のために数式を読む デ 変数の形 データ構造 を把握する スカラー? ベクトル? 列? スカラ? クトル? 列? プログラムで表現しやすい形に式を変形しよう 0 0 P P P P P = P は 次元の点を示す座標値なので 変形 とおいて変形, P = 0 0 = = =

15 実装をイメージしよう for floa =0; <.0; =0.0 { } 0 = 媒介変数による式表現は for 文 = = = によって表現することができる P = P0 0 P P P poin P ; 5

16 実装をイメージしよう 実装をイメジしよう for floa =0; <.0; =0.0 { = 0 = = = P はすべて 次元の座標値を示すベクトルなので と を使って表現する = = る 0 0 = 0 0 = poin, ; } }

17 実装をイメージしよう 実装をイメジしよう for floa =0; <.0; =0.0 { = 0 = = よりプログラムに近い 平易な形で表 = 現するとこうなる これらの数式を代入によってさらにまとめてしまってもよい = = 0 0 = 0 0 = poin, ; } }

18 課題 beziercurve 前述の数式を用いて 次ベジェ曲線を描くプログラムを作成せよ 制御点の例 P0 : 75, 60 P : 70, 0 P : 50, 90 P : 500, 00 8

19 課題 beziercurve 各制御点をマウスカーソルでひっぱって移動できるように改良し 制御点の配置とベジェ曲線の関係 前述の性質 について確認せよ 9

20 ヒント 点をマウスで移動させるには? 点の近くにカーソルがあって マウスボタンが押されている 状態を判定しよう その状態のときに カーソルに点がついていくようにすれば良い マウスボタン押下状態は mousepressed という論理型変数 rue/false で判定できる 0

21 . フラクタル

22 フラクタルとは フラクタル Fracal 己相似性を持つ図形のこと 自己相似性 縮尺を変えても全体と部分の形状が相似の関係にあること 分の中に 分がいて さらにその中にも 分が という構造

23 有名なフラクタル図形 マンデルブロ集合 シェルピンスキーの三角形 コッホ曲線 Image from hp://ja.wikipedia.org/wiki/ マンデルブロ集合

24 自然界に潜むフラクタル 海岸線 リアス式海岸 毛細血管 植物の葉や茎 シダ植物ロマネスコ カリフラワーの一種 Image from hp://ja.wikipedia.org/wiki/ シダ植物, hp://ja.wikipedia.org/wiki/ ロマネスコ 4

25 フラクタルの応 例 Fracal Codes 己相似性を持つ 次元コード 近くから ても遠くから ても認識できる! 一部分が などで隠れていても認識できる! 綾塚祐二, Fracal Codes: 己相似的に配置される二次元コード, WISS006, pp

26 フラクタルを描くプログラム まずは以下のプログラムをよく読んで なぜそういう結果になるか考えてみよう void seup { size400, 400; } void draw { background00; ranslae widh/, heigh/ ; drawcircle400; } void drawcirclefloa d { if d < 0 { reurn; } ellipse 0, 0, d, d ; drawcircled/; } 6

27 再帰的アルゴリズム 関数の中で 分 身を呼び出す構造を 持つアルゴリズム void drawcircle { drawcircle drawcircle drawcircle ; drawcircle } 7

28 再帰的アルゴリズムでの注意点 再帰において重要なのはループの終了処理! 終了条件がととのったときに reurn で脱出させる これがきちんと仕掛けられてないと無限ループに陥ってしまう void drawcirclefloa d { if d < 0 { reurn; } ellipse 0, 0, d, d ; drawcircled/; } 0 reurn 8

29 再帰的アルゴリズムでフラクタルを 描くときのポイント まずは繰り返しの基本要素を つけて その基本要素だけを描く関数を作る その関数に再帰構造を組み込む 終了条件を設定する 9

30 例題 : フラクタルな 下図の木を再帰的アルゴリズムで描いてみよう 0

31 . 基本要素を つける まずは繰り返しになっている最小単位を つける これが最小単位

32 . 基本要素を描く方法を考える スタート地点の座標値から各線の端点の座標値を計算する方法でも良いが ここでは前回習ったranslae やroae を使って描画する方法で考えよう 原点から上方向に さ L の線を描く 原点から上方向に L だけ平 移動する その位置で 40 度回転した後 そこを起点に さL/の線を描く 4その位置で -40 度回転した後 そこを起点に さ L/ の線を描く

33 . 基本要素だけを描く関数を作る ここでは再帰構造のことは意識せずに 基本要素だけを描く関数 を作る 要素の大きさを引数で指定できるようにするのが重要 void drawtreefloa lengh { line 0, 0, 0, -lengh ; ranslae0, -lengh; pushmari; roaeradians40; line 0, 0, 0, -lengh/ ; popmari; pushmari; roaeradians-40; line 0, 0, 0, -lengh/ ; popmari; } 当然だが この関数単体での動作を確認するために seup と draw も書こう

34 4. 再帰構造にする 先ほど作った関数内で われている描画処理のうち 再帰的な分割処理が発 する部分を再帰呼び出しに置き換える void drawtreefloa lengh { void drawtreefloa lengh { line 0, 0, 0, -lengh ; ranslae0, -lengh; pushmari; roaeradians40; line 0, 0, 0, -lengh/ ; popmari; line 0, 0, 0, -lengh ; ranslae0, -lengh; pushmari; roaeradians40; drawtree lengh/; popmari; pushmari; pushmari; roaeradians-40; roaeradians-40; line 0, 0, 0, -lengh/ ; drawtree lengh/ ; popmari; popmari; } } 4

35 5. 再帰の終了条件を設定する このままでは再帰処理が無限に われてしまうので それを防ぐために 要素の大きさが一定値以下になったら再帰を脱出する という仕組みを void drawtreefloa lengh { if lengh < { reurn; } 加える line 0, 0, 0, -lengh ; ranslae0, -lengh; ここでは 枝の さが 未満になったら終了 としている pushmari; roaeradians40; drawtree lengh/ h/ ; popmari; pushmari; roaeradians-40; drawtree lengh/ ; popmari; } 5

36 6. 完成したプログラム void seup { size400, 400; srokeweigh; } void drawtreefloa lengh { if lengh < { reurn; } void draw { line 0, 0, 0, -lengh ; ranslae widh/, heigh ; ranslae0, -lengh; drawtree00; } pushmari; roaeradians40; drawtree lengh/ ; popmari; p pushmari; roaeradians-40; drawtree lengh/ ; popmari; } 6

37 課題 KochCurve コッホ曲線を描くプログラムを作成せよ を作成 こういうルールで描かれているが アニメーションさせる必要はない 7

38 ヒント L/ 9 L 8

Microsoft PowerPoint - [150421] CMP実習Ⅰ(2015) 橋本 CG編 第1回 幾何変換.pptx

Microsoft PowerPoint - [150421] CMP実習Ⅰ(2015) 橋本 CG編 第1回 幾何変換.pptx コンテンツ メディア プログラミング実習 Ⅰ コンピュータグラフィックス編 1 幾何変換 橋本直 今日大事なのは プログラムをじっくり読んで なぜそうなるか? を考えよう 命令によって起きていることを頭の中でイメージしよう 2 本題の前に確認 Processingでは画面の 左上隅 が原点 (0,0) x 軸の正の向きは 右 y 軸の正の向きは 下 x y : (0,0) 3 幾何変換の基本 4 幾何変換とは

More information

モデリングとは

モデリングとは コンピュータグラフィックス基礎 第 5 回曲線 曲面の表現 ベジェ曲線 金森由博 学習の目標 滑らかな曲線を扱う方法を学習する パラメトリック曲線について理解する 広く一般的に使われているベジェ曲線を理解する 制御点を入力することで ベジェ曲線を描画するアプリケーションの開発を行えるようになる C++ 言語の便利な機能を使えるようになる 要素数が可変な配列としての std::vector の活用 計算機による曲線の表現

More information

Microsoft PowerPoint P演習 第10回 関数.ppt [互換モード]

Microsoft PowerPoint P演習 第10回 関数.ppt [互換モード] プログラミング演習 (10) 関数 中村, 橋本, 小松, 渡辺 1 目標 Processing で関数に挑戦! 機能をどんどん作ってみよう! 円とか四角形だけじゃなくて, 色々な図形描画を関数にしてしまおう! 判定も関数で! 関数 背景を塗りつぶす : background( 色 ); 円を描く : ellipse(x 座標, y 座標, 縦直径, 横直径 ); 線を描く : line( x1,

More information

スライド 1

スライド 1 グラフィックスの世界第 3 回 サイバーメディアセンター サイバーコミュニティ研究部門安福健祐 Processing によるアニメーション setup と draw void setup() size(400, 400); void draw() ellipse( mousex,mousey,100,100); void とか setup とか draw とかはじめて見る が出てきてややこしい ellipseは円描く関数でした

More information

問 1 図 1 の図形を作るプログラムを作成せよ 但し ウィンドウの大きさは と し 座標の関係は図 2 に示すものとする 図 1 作成する図形 原点 (0,0) (280,0) (80,0) (180,0) (260,0) (380,0) (0,160) 図 2 座標関係 問 2

問 1 図 1 の図形を作るプログラムを作成せよ 但し ウィンドウの大きさは と し 座標の関係は図 2 に示すものとする 図 1 作成する図形 原点 (0,0) (280,0) (80,0) (180,0) (260,0) (380,0) (0,160) 図 2 座標関係 問 2 問 1 図 1 の図形を作るプログラムを作成せよ 但し ウィンドウの大きさは 400 200 と し 座標の関係は図 2 に示すものとする 図 1 作成する図形 原点 (0,0) (280,0) (80,0) (180,0) (260,0) (380,0) (0,160) 図 2 座標関係 問 2 for 文を用いて図 3 の様な図形を描くプログラムを作成せよ 但し ウィンドウのサイズは 300 300

More information

Microsoft PowerPoint - mp11-02.pptx

Microsoft PowerPoint - mp11-02.pptx 数理計画法第 2 回 塩浦昭義情報科学研究科准教授 shioura@dais.is.tohoku.ac.jp http://www.dais.is.tohoku.ac.jp/~shioura/teaching 前回の復習 数理計画とは? 数理計画 ( 復習 ) 数理計画問題とは? 狭義には : 数理 ( 数学 ) を使って計画を立てるための問題 広義には : 与えられた評価尺度に関して最も良い解を求める問題

More information

情報システム設計論II ユーザインタフェース(1)

情報システム設計論II ユーザインタフェース(1) プログラミング演習 (3) 変数 : 計算とアニメーション 中村, 高橋 小林, 橋本 1 目標 Processing で計算してみよう Processing でアニメーションしよう 計算の方法を理解する 変数を理解する 課題 : Processing でアニメーションしよう! 計算してみよう 地球の半径は 6378.137km. では, 地球 1 周の距離はどれくらいになるでしょうか? println(

More information

8. 自由曲線と曲面の概要 陽関数 陰関数 f x f x x y y y f f x y z g x y z パラメータ表現された 次元曲線 パラメータ表現は xyx 毎のパラメータによる陽関数表現 形状普遍性 座標独立性 曲線上の点を直接に計算可能 多価の曲線も表現可能 gx 低次の多項式は 計

8. 自由曲線と曲面の概要 陽関数 陰関数 f x f x x y y y f f x y z g x y z パラメータ表現された 次元曲線 パラメータ表現は xyx 毎のパラメータによる陽関数表現 形状普遍性 座標独立性 曲線上の点を直接に計算可能 多価の曲線も表現可能 gx 低次の多項式は 計 8. 自由曲線 曲面. 概論. ベジエ曲線 曲面. ベジエ曲線 曲面の数学. OeGLによる実行. URS. スプライン関数. スプライン曲線 曲面. URS 曲線 曲面 4. OeGLによる実行 8. 自由曲線と曲面の概要 陽関数 陰関数 f x f x x y y y f f x y z g x y z パラメータ表現された 次元曲線 パラメータ表現は xyx 毎のパラメータによる陽関数表現 形状普遍性

More information

Microsoft PowerPoint - 9.pptx

Microsoft PowerPoint - 9.pptx 9/7/8( 水 9. 線形写像 ここでは 行列の積によって 写像を定義できることをみていく また 行列の積によって定義される写像の性質を調べていく 拡大とスカラー倍 行列演算と写像 ( 次変換 拡大後 k 倍 k 倍 k 倍拡大の関係は スカラー倍を用いて次のように表現できる p = (, ' = k ' 拡大前 p ' = ( ', ' = ( k, k 拡大 4 拡大と行列の積 拡大後 k 倍

More information

pp2018-pp9base

pp2018-pp9base プログラミング入門 Processing プログラミング第 9 回 九州産業大学理工学部情報科学科神屋郁子 ( pp@is.kyusan-u.ac.jp ) 時限 クラス 水 1 機械 ( クラス 3) 水 2 機械 ( クラス 1) 水 4 電気 (B1 B2) 後ろ 5 列は着席禁止 3 人掛けの中央は着席禁止 今後の予定 第 9 回 : 複数の図形 (2) 繰り返しと座標変換第 回 : 画像の表示と音の再生

More information

プログラミングA

プログラミングA プログラミング A 第 5 回 場合に応じた処理 繰り返し 2017 年 5 月 15 日 東邦大学金岡晃 前回の復習 (1) このプログラムを作成し実行してください 1 前回の復習 (2) このプログラムを作成し実行してください 2 前回の復習 (3) 3 前回の復習 演算子 代入演算子 インクリメント シフト演算子 型変換 4 場合に応じた処理 5 こういうプログラムを作りたい 5 教科のテスト

More information

Microsoft PowerPoint - 10.pptx

Microsoft PowerPoint - 10.pptx m u. 固有値とその応用 8/7/( 水 ). 固有値とその応用 固有値と固有ベクトル 行列による写像から固有ベクトルへ m m 行列 によって線形写像 f : R R が表せることを見てきた ここでは 次元平面の行列による写像を調べる とし 写像 f : を考える R R まず 単位ベクトルの像 u y y f : R R u u, u この事から 線形写像の性質を用いると 次の格子上の点全ての写像先が求まる

More information

レコード class Point attr_accessor("x", "y") インスタンス変数の宣言 point.rb

レコード class Point attr_accessor(x, y) インスタンス変数の宣言 point.rb レコードとオブジェクト レコード class Point attr_accessor("x", "y") インスタンス変数の宣言 point.rb irb(main):004:0> load ("point.rb") => true irb(main):005:0> p = Point.new() => # irb(main):006:0> p.x = 3 =>

More information

4 月 東京都立蔵前工業高等学校平成 30 年度教科 ( 工業 ) 科目 ( プログラミング技術 ) 年間授業計画 教科 :( 工業 ) 科目 :( プログラミング技術 ) 単位数 : 2 単位 対象学年組 :( 第 3 学年電気科 ) 教科担当者 :( 高橋寛 三枝明夫 ) 使用教科書 :( プロ

4 月 東京都立蔵前工業高等学校平成 30 年度教科 ( 工業 ) 科目 ( プログラミング技術 ) 年間授業計画 教科 :( 工業 ) 科目 :( プログラミング技術 ) 単位数 : 2 単位 対象学年組 :( 第 3 学年電気科 ) 教科担当者 :( 高橋寛 三枝明夫 ) 使用教科書 :( プロ 4 東京都立蔵前工業高等学校平成 30 年度教科 ( 工業 ) 科目 ( プログラミング技術 ) 年間授業計画 教科 :( 工業 ) 科目 :( プログラミング技術 ) 単位数 : 2 単位 対象学年組 :( 第 3 学年電気科 ) 教科担当者 :( 高橋寛 三枝明夫 ) 使用教科書 :( プログラミング技術 工業 333 実教出版 ) 共通 : 科目 プログラミング技術 のオリエンテーション プログラミング技術は

More information

Microsoft PowerPoint - 9.pptx

Microsoft PowerPoint - 9.pptx 9. 線形写像 ここでは 行列の積によって 写像を定義できることをみていく また 行列の積によって定義される写像の性質を調べていく 行列演算と写像 ( 次変換 3 拡大とスカラー倍 p ' = ( ', ' = ( k, kk p = (, k 倍 k 倍 拡大後 k 倍拡大の関係は スカラー倍を用いて次のように表現できる ' = k ' 拡大前 拡大 4 拡大と行列の積 p ' = ( ', '

More information

情報システム設計論II ユーザインタフェース(1)

情報システム設計論II ユーザインタフェース(1) プログラミング演習 (5) 条件分岐 (2) 中村, 高橋 小林, 橋本 1 目標 Processing で当たり判定に挑戦! 条件分岐を理解する 何らかの条件を満たした時に色を変える! マウスカーソルと動いている円がぶつかったら終了 シューティングゲームやもぐらたたきに挑戦! 課題 : Processing でゲームを作ろう! 占いを作ってみよう フローチャートと条件分岐 プログラムの流れ 年齢確認

More information

コンピュータグラフィックス第6回

コンピュータグラフィックス第6回 コンピュータグラフィックス 第 6 回 モデリング技法 1 ~3 次元形状表現 ~ 理工学部 兼任講師藤堂英樹 本日の講義内容 モデリング技法 1 様々な形状モデル 曲線 曲面 2014/11/10 コンピュータグラフィックス 2 CG 制作の主なワークフロー 3DCG ソフトウェアの場合 モデリング カメラ シーン アニメーション テクスチャ 質感 ライティング 画像生成 2014/11/10 コンピュータグラフィックス

More information

情報システム設計論II ユーザインタフェース(1)

情報システム設計論II ユーザインタフェース(1) プログラミング演習 (9) 多重配列 中村, 青山 小林, 橋本 1 目標 Processing で多重配列に挑戦! 2 次元のマス目に配置されたオブジェクトをどう扱っていくか? 課題 : オセロゲームを作ってみる ライツアウトを作ってみよう 2 次元配列の定義 int[][] square = new int [10][5]; 整数型で要素数が10x5 個の square という配列を作成 square

More information

pp2018-pp4base

pp2018-pp4base プログラミング入門 Processing プログラミング第 4 回 九州産業大学理工学部情報科学科神屋郁子 ( pp@is.kyusan-u.ac.jp ) 時限 クラス 水 1 機械 ( クラス 3) 水 2 機械 ( クラス 1) 水 4 電気 (B1 B2) 後ろ 5 列は着席禁止 3 人掛けの中央は着席禁止 第 4 回の内容 前回の質問への回答 マウスの操作と図形の描画 : メソッド 小テスト

More information

コンピュータグラフィックス基礎              No

コンピュータグラフィックス基礎               No 課題 6: モデリング (1) OBJView の動作確認 ( レポートには含めなくてよい ) 次ページ以降の 課題用メモ を参考にして OBJ ファイルを 3D 表示する OBJView を実行し 画面に立体が表示されることを確認するとともに 以下の機能を確認しなさい 左ドラッグによる立体の回転 右ドラッグによる拡大/ 縮小 [v] キーによる頂点の表示 非表示 サンプルに含まれる bunny_3k.obj

More information

レコードとオブジェクト

レコードとオブジェクト レコードとオブジェクト レコード class Point attr_accessor("x", "y") インスタンス変数の宣言 point.rb irb(main):004:0> load("point.rb") => true irb(main):005:0> p = Point.new() => # irb(main):006:0> p.x = 3 => 3

More information

Processing入門マニュアル17

Processing入門マニュアル17 20. 連続したベジェ曲線を描く beginshape(); beziervertex(x座標, y座標); endshape(); ベジェ曲線を連続して描くためにはbezierVertex命令をbeginShapeとendShape命令の間に記述します ( C1x, C1y ) ( V1x, V1y ) ( V2x, V2y ) ( C2x, C2y ) ( C3x, C3y ) ( C6x, C6y

More information

アクション講座 第1回目

アクション講座 第1回目 アクション講座第 1 回目 講師 : ウェンディアーサー (WENDY ARTHUR) 講座資料のプロジェクトファイル (zip ファイル ) はソフメ wiki にアップしてますので予めダウンロードしておいてください 講座資料のプロジェクトファイル (zip ファイル ) は解凍してソリューションファイルを開く URL は下記 http://softmedia.sakura.ne.jp/wiki/2017%e5%b9%b4%e5%ba%a6_%e3%82%a2%e3

More information

Graphical User Interface 描画する

Graphical User Interface 描画する Graphical User Interface 描画する オブジェクト指向プログラミング特論 2016 年度 只木進一 : 工学系研究科 2 描画の基本 javax.swing.jpanel に描画する paint() または paintcomponent() メソッドを上書きすることによって描画する この中で描画対象を描く 基本的図形要素は準備されている しかし 画面の重なりによる再描画の場合

More information

関数の定義域を制限する 関数のコマンドを入力バーに打つことにより 関数の定義域を制限することが出来ます Function[ < 関数 >, <x の開始値 >, <x の終了値 > ] 例えば f(x) = x 2 2x + 1 ( 1 < x < 4) のグラフを描くには Function[ x^

関数の定義域を制限する 関数のコマンドを入力バーに打つことにより 関数の定義域を制限することが出来ます Function[ < 関数 >, <x の開始値 >, <x の終了値 > ] 例えば f(x) = x 2 2x + 1 ( 1 < x < 4) のグラフを描くには Function[ x^ この節では GeoGebra を用いて関数のグラフを描画する基本事項を扱います 画面下部にある入力バーから式を入力し 後から書式設定により色や名前を整えることが出来ます グラフィックスビューによる作図は 後の章で扱います 1.1 グラフの挿入関数のグラフは 関数 y = f(x) を満たす (x, y) を座標とする全ての点を描くことです 入力バーを用いれば 関数を直接入力することが出来 その関数のグラフを作図することが出来ます

More information

プログラミングA

プログラミングA プログラミング A 第 5 回 場合に応じた処理 繰り返し 2019 年 5 月 13 日 東邦大学金岡晃 場合に応じた処理 1 こういうプログラムを作りたい 5 教科のテスト 100 点以上各科目の点数の合計が 100 点未満 おめでとう! これで 100 点越えのプレゼントを獲得! というメッセージを出力 残念!100 点越えのプレゼントまであと ** 点! というメッセージを出力 5 教科の点数の合計が

More information

レコード class Point attr_accessor("x", "y") インスタンス変数の宣言 point.rb

レコード class Point attr_accessor(x, y) インスタンス変数の宣言 point.rb レコードとオブジェクト レコード class Point attr_accessor("x", "y") インスタンス変数の宣言 point.rb irb(main):004:0> load ("point.rb") => true irb(main):005:0> p = Point.new() => # irb(main):006:0> p.x = 3 =>

More information

演算増幅器

演算増幅器 コンピュータグラフィックス 2 前回は GLUT を使った簡単な 2 次元グラフィックスについて習った 今週は以下の項目について 補足していく イベント駆動型プログラムの動作について コンピュータグラフィックスの座標系 イベント駆動型プログラム従来のプログラムとの違いこれまでに学習してきたプログラムは上から下に順次実行され 条件分岐や繰り返し処理によって プログラムの流れ (flow: フロー )

More information

Microsoft PowerPoint - H21生物計算化学2.ppt

Microsoft PowerPoint - H21生物計算化学2.ppt 演算子の行列表現 > L いま 次元ベクトル空間の基底をケットと書くことにする この基底は完全系を成すとすると 空間内の任意のケットベクトルは > > > これより 一度基底を与えてしまえば 任意のベクトルはその基底についての成分で完全に記述することができる これらの成分を列行列の形に書くと M これをベクトル の基底 { >} による行列表現という ところで 行列 A の共役 dont 行列は A

More information

メソッドのまとめ

メソッドのまとめ メソッド (4) 擬似コードテスト技法 http://java.cis.k.hosei.ac.jp/ 授業の前に自己点検以下のことがらを友達に説明できますか? メソッドの宣言とは 起動とは何ですか メソッドの宣言はどのように書きますか メソッドの宣言はどこに置きますか メソッドの起動はどのようにしますか メソッドの仮引数 実引数 戻り値とは何ですか メソッドの起動にあたって実引数はどのようにして仮引数に渡されますか

More information

. 角の二等分線と調和平均 平面上に点 を端点とする線分 と を重ならないようにとる, とし とする の二等分線が線分 と交わる点を とし 点 から に垂直に引いた直線が線分 と交わる点 とする 線分 の長さを求めてみよう 点 から に垂直な直線と および との交点をそれぞれ, Dとする つの直角三

. 角の二等分線と調和平均 平面上に点 を端点とする線分 と を重ならないようにとる, とし とする の二等分線が線分 と交わる点を とし 点 から に垂直に引いた直線が線分 と交わる点 とする 線分 の長さを求めてみよう 点 から に垂直な直線と および との交点をそれぞれ, Dとする つの直角三 角の二等分線で開くいろいろな平均 札幌旭丘高校中村文則 0. 数直線上に現れるいろいろな平均下図は 数 (, ) の調和平均 相乗平均 相加平均 二乗平均を数直線上に置いたものである, とし 直径 中心 である円を用いていろいろな平均の大小関係を表現するもっとも美しい配置方法であり その証明も容易である Q D E F < 相加平均 > (0), ( ), ( とすると 線分 ) の中点 の座標はである

More information

PowerPoint プレゼンテーション

PowerPoint プレゼンテーション 1 02 グラフゖックで簡単な図形を描く図形描画プログラム 1 今回作成するゕプリケーションの概要 ボタンをクリックすると図形を描くプログラム 行われる動作 [1] ボタンをクリック [2] そのボタンに対する図形を描く これを使用者とコンピュータの関係で描くと [ 使用者 コンピュータ ] ボタンをクリック [ 使用者 コンピュータ ] 図形を描画して見せる 使用者がコンピュータにすること ボタンをクリック

More information

Microsoft PowerPoint - ppt-7.pptx

Microsoft PowerPoint - ppt-7.pptx テーマ 7: 最小包含円 点集合を包含する半径最小の円 最小包含円問題 問題 : 平面上に n 点の集合が与えられたとき, これらの点をすべて内部に含む半径最小の円を効率よく求める方法を示せ. どの点にも接触しない包含円 すべての点を内部に含む包含円を求める 十分に大きな包含円から始め, 点にぶつかるまで徐々に半径を小さくする 1 点にしか接触しない包含円 現在の中心から周上の点に向けて中心を移動する

More information

2015年度 岡山大・理系数学

2015年度 岡山大・理系数学 5 岡山大学 ( 理系 ) 前期日程問題 解答解説のページへ を 以上の自然数とし, から までの自然数 k に対して, 番号 k をつけたカードをそれぞれ k 枚用意する これらすべてを箱に入れ, 箱の中から 枚のカードを同時に引くとき, 次の問いに答えよ () 用意したカードは全部で何枚か答えよ () 引いたカード 枚の番号が両方とも k である確率を と k の式で表せ () 引いたカード 枚の番号が一致する確率を

More information

計算幾何学入門 Introduction to Computational Geometry

計算幾何学入門 Introduction to  Computational Geometry テーマ 6: ボロノイ図とデローネイ 三角形分割 ボロノイ図, デローネイ三角形分割 ボロノイ図とは 平面上に多数の点が与えられたとき, 平面をどの点に最も近いかという関係で分割したものをボロノイ図 (Voronoi diagram) という. 2 点だけの場合 2 点の垂直 2 等分線による分割 3 点の場合 3 点で決まる三角形の外接円の中心から各辺に引いた垂直線による分割線 2 点からの等距離線

More information

C#の基本

C#の基本 C# の基本 ~ 開発環境の使い方 ~ C# とは プログラミング言語のひとつであり C C++ Java 等に並ぶ代表的な言語の一つである 容易に GUI( グラフィックやボタンとの連携ができる ) プログラミングが可能である メモリ管理等の煩雑な操作が必要なく 比較的初心者向きの言語である C# の利点 C C++ に比べて メモリ管理が必要ない GUIが作りやすい Javaに比べて コードの制限が少ない

More information

DVIOUT

DVIOUT 最適レギュレータ 松尾研究室資料 第 最適レギュレータ 節時不変型無限時間最適レギュレータ 状態フィードバックの可能な場合の無限時間問題における最適レギュレータについて確定系について説明する. ここで, レギュレータとは状態量をゼロにするようなコントローラのことである. なぜ, 無限時間問題のみを述べるかという理由は以下のとおりである. 有限時間の最適レギュレータ問題の場合の最適フィードバックゲインは微分方程式の解から構成される時間関数として表現される.

More information

Microsoft PowerPoint P演習 第5回 当たり判定(2)【課題】.pptx

Microsoft PowerPoint P演習 第5回 当たり判定(2)【課題】.pptx 3 組 基本課題 1 スケッチ名 :eye2 カーソルの位置によってキャラクタの目の向きが変わるプログラムを作ってください ただし カーソルがキャラクタの顔に対して 上にある時 下にある時 左にある時 右にある時 の4パターンで表現すること カーソルが顔に対して斜め方向にある時は 目は中央にしてください 3 組 基本課題 2 スケッチ名 :cross 十字型の図形に対してマウスの当り判定をするプログラムを作ってください

More information

Processingをはじめよう

Processingをはじめよう Processing をはじめよう 第 5 章 反応 目次 繰り返されるdrawと一度だけのsetup 追いかける クリック カーソルの位置 キーボードからの入力 マッピング Robot 3: Response 繰り返される draw と一度だけの setup Example 5-1 draw() 関数 println("i'm drawing"); println(framecount); draw()

More information

Microsoft PowerPoint - ca ppt [互換モード]

Microsoft PowerPoint - ca ppt [互換モード] 大阪電気通信大学情報通信工学部光システム工学科 2 年次配当科目 コンピュータアルゴリズム 良いアルゴリズムとは 第 2 講 : 平成 20 年 10 月 10 日 ( 金 ) 4 限 E252 教室 中村嘉隆 ( なかむらよしたか ) 奈良先端科学技術大学院大学助教 y-nakamr@is.naist.jp http://narayama.naist.jp/~y-nakamr/ 第 1 講の復習

More information

Microsoft Word - 415Illustrator

Microsoft Word - 415Illustrator 15.1 ベクトル画像とビットマップ画像 ベクトル画像とビットマップ画像の違い 第 15 章描画の取り扱い コンピュータグラフィックスで扱う画像は大きく分けて ベクトル画像とビットマップ画像に分ける事ができます ベクトル画像はドロー系画像あるいは描画とも呼ばれています この二種類の画像は共に画像データの表現方法を表していますが根本的に異なるものです そのため 双方の特徴を踏まえた上で利用する必要があります

More information

アスペクトの相互作用を解消するアスペクトの提案

アスペクトの相互作用を解消するアスペクトの提案 アスペクトの相互作用を解消する アスペクトの提案 武山文信千葉滋東京工業大学大学院情報理工学研究科数理 計算科学専攻 2009/03/11 武山文信, 千葉滋, アスペクトの相互作用を解消するアスペクトの提案 @PPL2009 in 高山 1/21 アスペクト指向プログラミング (AOP) 横断的関心事をアスペクトとしてモジュール化 オブジェクト指向 (OOP) では上手く分離できない クラス階層に

More information

人工知能入門

人工知能入門 藤田悟 黄潤和 探索とは 探索問題 探索解の性質 探索空間の構造 探索木 探索グラフ 探索順序 深さ優先探索 幅優先探索 探索プログラムの作成 バックトラック 深さ優先探索 幅優先探索 n 個の ueen を n n のマスの中に 縦横斜めに重ならないように配置する 簡単化のために 4-ueen を考える 正解 全状態の探索プログラム 全ての最終状態を生成した後に 最終状態が解であるかどうかを判定する

More information

Microsoft PowerPoint - ad11-09.pptx

Microsoft PowerPoint - ad11-09.pptx 無向グラフと有向グラフ 無向グラフ G=(V, E) 頂点集合 V 頂点の対を表す枝の集合 E e=(u,v) 頂点 u, v は枝 e の端点 f c 0 a 1 e b d 有向グラフ G=(V, E) 頂点集合 V 頂点の順序対を表す枝の集合 E e=(u,v) 頂点 uは枝 eの始点頂点 vは枝 eの終点 f c 0 a 1 e b d グラフのデータ構造 グラフ G=(V, E) を表現するデータ構造

More information

Microsoft PowerPoint - 10.pptx

Microsoft PowerPoint - 10.pptx 0. 固有値とその応用 固有値と固有ベクトル 2 行列による写像から固有ベクトルへ m n A : m n n m 行列によって線形写像 f R R A が表せることを見てきた ここでは 2 次元平面の行列による写像を調べる 2 = 2 A 2 2 とし 写像 まず 単位ベクトルの像を求める u 2 x = v 2 y f : R A R を考える u 2 2 u, 2 2 0 = = v 2 0

More information

Computer Graphics

Computer Graphics Graphics with Processing 2009-14 モデリング http://vilab.org 塩澤秀和 1 14.1 3D モデリング モデリング 3Dオブジェクト ( 物体 ) の形状を数値データの集合で表すこと オブジェクト座標系で基本図形やポリゴンを組み合わせる テクスチャ x テクスチャ z y 2 14.2 オブジェクトの関数化 複雑なオブジェクトは, 大きさ 1 を目安としてモデリングし,

More information

PowerPoint プレゼンテーション

PowerPoint プレゼンテーション プログラミング応用演習 第 4 回再帰的構造体 前回の出席確認演習 #include int main() { FILE *fp; int c, linecount, length, maxlength; fp=fopen("/usr/share/dict/words","r"); if (fp == NULL) return 1; linecount=0; length=0;

More information

2017年度 千葉大・理系数学

2017年度 千葉大・理系数学 017 千葉大学 ( 理系 ) 前期日程問題 1 解答解説のページへ n を 4 以上の整数とする 座標平面上で正 n 角形 A1A A n は点 O を中心とする半径 1 の円に内接している a = OA 1, b = OA, c = OA 3, d = OA4 とし, k = cos とおく そして, 線分 A1A3 と線分 AA4 との交点 P は線分 A1A3 を n :1に内分するとする

More information

プログラミング入門1

プログラミング入門1 プログラミング入門 1 第 5 回 繰り返し (while ループ ) 授業開始前に ログオン後 不要なファイルを削除し て待機してください Java 1 第 5 回 2 参考書について 参考書は自分にあったものをぜひ手元において自習してください 授業の WEB 教材は勉強の入り口へみなさんを案内するのが目的でつくられている これで十分という訳ではない 第 1 回に紹介した本以外にも良書がたくさんある

More information

CG

CG Grahics with Processig 2015-13 モデリング htt://vilab.org 塩澤秀和 1 13.1 3D モデリング モデリング 3D オブジェクト ( 物体 ) の形状を数値データの集合で表すこと オブジェクト座標系で基本図形やポリゴンを組み合わせる テクスチャ x テクスチャ z y 2 13.2 階層モデリング 階層モデリング (.54) ローカル座標系の階層化

More information

情報処理 Ⅰ 前期 2 単位 年 コンピューター リテラシー 担当教員 飯田千代 ( いいだちよ ) 齋藤真弓 ( さいとうまゆみ ) 宮田雅智 ( みやたまさのり ) 授業の到達目標及びテーマ コンピューターは通信技術の進歩によって 私達の生活に大きな影響を与えている 本講座は 講義と

情報処理 Ⅰ 前期 2 単位 年 コンピューター リテラシー 担当教員 飯田千代 ( いいだちよ ) 齋藤真弓 ( さいとうまゆみ ) 宮田雅智 ( みやたまさのり ) 授業の到達目標及びテーマ コンピューターは通信技術の進歩によって 私達の生活に大きな影響を与えている 本講座は 講義と 情報処理 Ⅰ 前期 2 単位 1 2 3 年 コンピューター リテラシー 授業の到達目標及びテーマ コンピューターは通信技術の進歩によって 私達の生活に大きな影響を与えている 本講座は 講義とパーソナル コンピューターを使っての実習を通して 情報のディジタル化 文書処理 インターネットの利用 プレゼンテーション技術等 基礎的な知識と技術を習得することを目的とする 授業の概要 コンピュータの基礎知識に関して講義した後実習に入る

More information

CG

CG Grahics with Processig 2016-05 複雑な図形の描画 htt://vilab.org 塩澤秀和 1 2006-2016 H. SHIOZAWA htt://vilab.org 5.1 頂点列による図形描画 複雑な図形描画 begishae( 図形 ) 頂点列モードの開始 図形が空欄なら頂点を線で結ぶ ( 折れ線か多角形になる ) その他, 下記図形を指定できる POINTS,

More information

プログラミング入門1

プログラミング入門1 プログラミング入門 1 第 9 回 メソッド (3) 授業の前に自己点検 以下の質問に答えられますか? メソッドの宣言とは 起動とは何ですか メソッドの宣言はどのように書きますか メソッドの宣言はどこに置きますか メソッドの起動はどのようにしますか メソッドの仮引数 実引数 戻り値とは何ですか メソッドの起動にあたって実引数はどのようにして仮引数に渡されますか 戻り値はどのように利用しますか 変数のスコープとは何ですか

More information

Prog1_10th

Prog1_10th 2012 年 6 月 20 日 ( 木 ) 実施ポインタ変数と文字列前回は, ポインタ演算が用いられる典型的な例として, ポインタ変数が 1 次元配列を指す場合を挙げたが, 特に,char 型の配列に格納された文字列に対し, ポインタ変数に配列の 0 番の要素の先頭アドレスを代入して文字列を指すことで, 配列そのものを操作するよりも便利な利用法が存在する なお, 文字列リテラルは, その文字列が格納されている領域の先頭アドレスを表すので,

More information

Taro-テキスト.jtd

Taro-テキスト.jtd 付録 7 実習テキスト Processingスケッチプログラミング Processingスケッチプログラミング Processingスケッチプログラミング 1. 的 作成 : 米田文彦 Processing プロセッシング を使い プログラムによるビジュアル表現を学ぶ また Arduino と連携させ デジタルとフィジカルの融合がどのように行われているのかを知る 2. 使 機器 パソコン Processing

More information

航空機の運動方程式

航空機の運動方程式 可制御性 可観測性. 可制御性システムの状態を, 適切な操作によって, 有限時間内に, 任意の状態から別の任意の状態に移動させることができるか否かという特性を可制御性という. 可制御性を有するシステムに対し, システムは可制御である, 可制御なシステム という言い方をする. 状態方程式, 出力方程式が以下で表されるn 次元 m 入力 r 出力線形時不変システム x Ax u y x Du () に対し,

More information

イントロダクション

イントロダクション プログラミング演習 IV 第 7 回マウス, キーボード, サウンド, 文字 埼玉大学情報システム工学科 小林貴訓 マウス入力 クリックイベントのコールバック関数の登録 glutmousefunc(mouse); クリックイベントのコールバック関数 // マウスクリックコールバック関数の指定 static int MouseLB_ON=0; // 左マウスボタン押下フラグ static int MouseRB_ON=0;

More information

Microsoft Word - 201hyouka-tangen-1.doc

Microsoft Word - 201hyouka-tangen-1.doc 数学 Ⅰ 評価規準の作成 ( 単元ごと ) 数学 Ⅰ の目標及び図形と計量について理解させ 基礎的な知識の習得と技能の習熟を図り それらを的確に活用する機能を伸ばすとともに 数学的な見方や考え方のよさを認識できるようにする 評価の観点の趣旨 式と不等式 二次関数及び図形と計量における考え方に関 心をもつとともに 数学的な見方や考え方のよさを認識し それらを事象の考察に活用しようとする 式と不等式 二次関数及び図形と計量における数学的な見

More information

Microsoft PowerPoint - info_eng3_05ppt.pptx

Microsoft PowerPoint - info_eng3_05ppt.pptx インタラクティブシステム構築法 第 5 回 OpenGL と GLUT の使い方 (3) 埼玉大学情報システム工学科小林貴訓 シェーディング 光源の設定を有効にする glenable(gl_lighting); // 光源の設定を有効にする glenable(gl_light0); //0 番目の光源を有効にする (8 個まで設定可能 ) 光源の位置 GLfloat light0pos[] = {

More information

PowerPoint プレゼンテーション

PowerPoint プレゼンテーション 基本 Java プログラミング演習 第 13 回 担当 : 植村 今後の予定 7/15 第 13 回 今回 7/22 第 14 回 小テスト ( クラス ) 7/29 第 15 回 総まとめテスト レポート提出 期末テストの時間割に Java のテストの欄がありますが無視してください 再テストはまた別途連絡いたします 2 CHAPTER 11 はじめてのクラス前回の復習 クラスクラスを構成する要素

More information

レコードとオブジェクト

レコードとオブジェクト レコードとオブジェクト レコード class Point attr_accessor("x", "y") インスタンス変数の宣言 point.rb irb(main):004:0> load("point.rb") => true irb(main):005:0> p = Point.new() => # irb(main):006:0> p.x = 3 => 3

More information

Microsoft PowerPoint - handout07.ppt [互換モード]

Microsoft PowerPoint - handout07.ppt [互換モード] Outline プログラミング演習第 7 回構造体 on 2012.12.06 電気通信大学情報理工学部知能機械工学科長井隆行 今日の主眼 構造体 構造体の配列 構造体とポインタ 演習課題 2 今日の主眼 配列を使うと 複数の ( 異なる型を含む ) データを扱いたい 例えば 成績データの管理 複数のデータを扱う 配列を使う! 名前学籍番号点数 ( 英語 ) 点数 ( 数学 ) Aomori 1 59.4

More information

2017年度 金沢大・理系数学

2017年度 金沢大・理系数学 07 金沢大学 ( 理系 前期日程問題 解答解説のページへ 次の問いに答えよ ( 6 z + 7 = 0 を満たす複素数 z をすべて求め, それらを表す点を複素数平面上に図 示せよ ( ( で求めた複素数 z を偏角が小さい方から順に z, z, とするとき, z, z と 積 zz を表す 点が複素数平面上で一直線上にあることを示せ ただし, 偏角は 0 以上 未満とする -- 07 金沢大学

More information

Processingをはじめよう

Processingをはじめよう Processing をはじめよう 第 7 章 動きその 2 目次 フレームレート スピードと方向 移動 回転 拡大 縮小 2 点間の移動 乱数 タイマー 円運動 今回はここまで 2 2 点間の移動 Example 7-6 (EX_08_06) 始点 (startx, starty) から終点 (stopx, stopy) まで移動する 座標更新の計算方法は後述 始点と終点を変更しても動作する 変更して確認

More information

情報処理 Ⅰ 前期 2 単位 1 年 コンピューター リテラシー 担当教員 飯田千代 ( いいだちよ ) 齋藤真弓 ( さいとうまゆみ ) 宮田雅智 ( みやたまさのり ) 授業の到達目標及びテーマ コンピューターは通信技術の進歩によって 私達の生活に大きな影響を与えている 本講座は 講義とパーソナ

情報処理 Ⅰ 前期 2 単位 1 年 コンピューター リテラシー 担当教員 飯田千代 ( いいだちよ ) 齋藤真弓 ( さいとうまゆみ ) 宮田雅智 ( みやたまさのり ) 授業の到達目標及びテーマ コンピューターは通信技術の進歩によって 私達の生活に大きな影響を与えている 本講座は 講義とパーソナ 情報処理 Ⅰ 前期 2 単位 1 年 コンピューター リテラシー 担当教員 飯田千代 ( いいだちよ ) 齋藤真弓 ( さいとうまゆみ ) 宮田雅智 ( みやたまさのり ) 授業の到達目標及びテーマ コンピューターは通信技術の進歩によって 私達の生活に大きな影響を与えている 本講座は 講義とパーソナル コンピューターを使っての実習を通して 情報のディジタル化 文書処理 インターネットの利用 プレゼンテーション技術等

More information

CG

CG Grahics with Processig 7-6 座標変換と同次座標 htt://vilab.org 塩澤秀和 6-7 H. SHIOZAWA htt://vilab.org 6. * 座標系 座標系の変換 座標系 目盛りのつけかた 原点の位置 軸と 軸の方向 軸と 軸の目盛りの刻み 論理座標系 描画命令で使う目盛り ( 座標系 ) をつけかえることができる 論理座標系 描画命令で使う 座標 画面座標系

More information

7 ポインタ (P.61) ポインタを使うと, メモリ上のデータを直接操作することができる. 例えばデータの変更 やコピーなどが簡単にできる. また処理が高速になる. 7.1 ポインタの概念 変数を次のように宣言すると, int num; メモリにその領域が確保される. 仮にその開始のアドレスを 1

7 ポインタ (P.61) ポインタを使うと, メモリ上のデータを直接操作することができる. 例えばデータの変更 やコピーなどが簡単にできる. また処理が高速になる. 7.1 ポインタの概念 変数を次のように宣言すると, int num; メモリにその領域が確保される. 仮にその開始のアドレスを 1 7 ポインタ (P.61) ポインタを使うと, メモリ上のデータを直接操作することができる. 例えばデータの変更 やコピーなどが簡単にできる. また処理が高速になる. 7.1 ポインタの概念 変数を次のように宣言すると, int num; メモリにその領域が確保される. 仮にその開始のアドレスを 10001 番地とすると, そこから int 型のサイズ, つまり 4 バイト分の領域が確保される.1

More information

Microsoft Word - Grspes…~…j…}…j…–…A…‰6.0.doc

Microsoft Word - Grspes…~…j…}…j…–…A…‰6.0.doc GRAPES ミニマニュアル グラフウィンドウグラフウィンドウにはグラフや図形が表示される. また, 上部のコントロールパレットを用いて, 表示領域や変域の設定, 目盛りの設定, 残像の設定を行うことができる. グラフウィンドウのサイズを変更すると, グラフ表示エリアのサイズが変わる. 下部ステータスバーには, マウスポインタの座標や表示領域が表示される. データパネルデータパネルは, グラフや図形を描くためのデータを管理している.

More information

Prog2_9th

Prog2_9th 2017 年 11 月 30 日 ( 木 ) 実施 Canvas による描画 Canvas とは Canvas は, 描画コールを保持するためのクラスである 描画には, 次の 4 つの要素が必要である (1) ビットマップピクセル ( 画素 ) を保持 (2) キャンバス描画コール ( ビットマップへの書き出し要請 ) に対応 (3) 描画プリミティブ描画領域, パス, テキスト, ビットマップ等

More information

PowerPoint プレゼンテーション

PowerPoint プレゼンテーション オブジェクト指向 プログラミング演習 第 3 回継承 オーバーライド インタフェース 前回までのお話 モジュール化 大きなプログラムは部品に分けて設計する オブジェクト指向 モノ中心に考える プログラムでは クラス ( モノの種類 ) を定義する ある特定のモノは インスタンスで表す クラスは型 インスタンスは値 プログラムを書くときも部品ごとに書く モノの部品であるモノはフィールドに書く 手順の部品である手順はメソッドに書く

More information

Microsoft Word - 92.doc

Microsoft Word - 92.doc 208 9.2 陰線消去 (1) 考え方 9.2 陰線消去 等高線は,3 次元形状を数値的に正確に表示するという意味では有効ですが, 直感的に図形を把握するのが困難です そこで, 普段, 見慣れた見取り図で表示することを試みましょう 曲線の XYZ 座標を 2 次元に平行投影するのが, 最も簡単に見取り図を表示する方法です 図 9-3 に示す式が平行投影における変換式です z,y X Y j j j

More information

PowerPoint Presentation

PowerPoint Presentation 付録 2 2 次元アフィン変換 直交変換 たたみ込み 1.2 次元のアフィン変換 座標 (x,y ) を (x,y) に移すことを 2 次元での変換. 特に, 変換が と書けるとき, アフィン変換, アフィン変換は, その 1 次の項による変換 と 0 次の項による変換 アフィン変換 0 次の項は平行移動 1 次の項は座標 (x, y ) をベクトルと考えて とすれば このようなもの 2 次元ベクトルの線形写像

More information

<4D F736F F D2097CD8A7793FC96E582BD82ED82DD8A E6318FCD2E646F63>

<4D F736F F D2097CD8A7793FC96E582BD82ED82DD8A E6318FCD2E646F63> - 第 章たわみ角法の基本式 ポイント : たわみ角法の基本式を理解する たわみ角法の基本式を梁の微分方程式より求める 本章では たわみ角法の基本式を導くことにする 基本式の誘導法は各種あるが ここでは 梁の微分方程式を解いて基本式を求める方法を採用する この本で使用する座標系は 右手 右ネジの法則に従った座標を用いる また ひとつの部材では 図 - に示すように部材の左端の 点を原点とし 軸線を

More information

ToDo: 今回のタイトル

ToDo: 今回のタイトル グラフの描画 プログラミング演習 I L03 今週の目標 キャンバスを使って思ったような図 ( 指定された線 = グラフ ) を描いてみる 今週は発展問題が三つあります 2 グラフの準備 値の算出 3 値の表示 これまでは 文字列や値を表示するのには 主に JOptionPane.showMessageDialog() を使っていましたが ちょっとしたものを表示するのには System.out.println()

More information

学習指導要領

学習指導要領 (1) 数と式 ア数と集合 ( ア ) 実数数を実数まで拡張する意義を理解し 簡単な無理数の四則計算をすること 絶対値の意味を理解し適切な処理することができる 例題 1-3 の絶対値をはずせ 展開公式 ( a + b ) ( a - b ) = a 2 - b 2 を利用して根号を含む分数の分母を有理化することができる 例題 5 5 + 2 の分母を有理化せよ 実数の整数部分と小数部分の表し方を理解している

More information

gengo1-11

gengo1-11 関数の再帰定義 自然数 n の階乗 n! を計算する関数を定義してみる 引数は整数 返却値も整数 n! = 1*2*3*... * (n 1)*n である ただし 0! = 1 とする int factorial(int n) int i, tmp=1; if( n>0 ) for(i=1; i

More information

数学 ⅡB < 公理 > 公理を論拠に定義を用いて定理を証明する 1 大小関係の公理 順序 (a > b, a = b, a > b 1 つ成立 a > b, b > c a > c 成立 ) 順序と演算 (a > b a + c > b + c (a > b, c > 0 ac > bc) 2 図

数学 ⅡB < 公理 > 公理を論拠に定義を用いて定理を証明する 1 大小関係の公理 順序 (a > b, a = b, a > b 1 つ成立 a > b, b > c a > c 成立 ) 順序と演算 (a > b a + c > b + c (a > b, c > 0 ac > bc) 2 図 数学 Ⅱ < 公理 > 公理を論拠に定義を用いて定理を証明する 大小関係の公理 順序 >, =, > つ成立 >, > > 成立 順序と演算 > + > + >, > > 図形の公理 平行線の性質 錯角 同位角 三角形の合同条件 三角形の合同相似 量の公理 角の大きさ 線分の長さ < 空間における座漂とベクトル > ベクトルの演算 和 差 実数倍については 文字の計算と同様 ベクトルの成分表示 平面ベクトル

More information

memo

memo 数理情報工学特論第一 機械学習とデータマイニング 4 章 : 教師なし学習 3 かしまひさし 鹿島久嗣 ( 数理 6 研 ) kashima@mist.i.~ DEPARTMENT OF MATHEMATICAL INFORMATICS 1 グラフィカルモデルについて学びます グラフィカルモデル グラフィカルラッソ グラフィカルラッソの推定アルゴリズム 2 グラフィカルモデル 3 教師なし学習の主要タスクは

More information

線を描く 線ツールをクリックする 原点 ( 青 緑 赤の 3 つの軸が交わるところ ) をクリックする 水平方向 ( 赤い軸と緑の軸がある面 ) にカーソルを動かしクリックする 原点とクリックした点の間に黒い線が描画される 垂直方向にカーソルを動かす 青い線が表示され 青い軸上 と表示される 青い線

線を描く 線ツールをクリックする 原点 ( 青 緑 赤の 3 つの軸が交わるところ ) をクリックする 水平方向 ( 赤い軸と緑の軸がある面 ) にカーソルを動かしクリックする 原点とクリックした点の間に黒い線が描画される 垂直方向にカーソルを動かす 青い線が表示され 青い軸上 と表示される 青い線 コンピュータグラフィックス演習 I 2012 年 4 月 16 日 ( 月 )5 限 担当 : 桐村喬 第 2 回 Google SketchUp の基本操作その 1 今日の内容 1. 基本操作 2. 課題 : 簡単なモデルの作成 基本操作初期設定 Google SketchUp を起動する テンプレートの選択 ウィンドウ 環境設定 テンプレート Google Earth モデリング メートル を選び

More information

モデリングとは

モデリングとは コンピュータグラフィックス基礎 第 7 回曲線 曲面の表現形状モデリング 三谷純 3DCG 表示 モデリング 対象物を計算機内で表現する 形の定義 表面の材質 光源 レンダリング 対象物をディスプレイに表示する 投影 ( 座標変換 ) 照光 ( 反射 屈折の計算 ) 今回のテーマ モデリング モデリングとは? 画面表示したい物体の形, 位置, 大きさなどをコンピュータ内部のデータとして表現すること

More information

memo

memo 計数工学プログラミング演習 ( 第 3 回 ) 2016/04/26 DEPARTMENT OF MATHEMATICAL INFORMATICS 1 内容 ポインタ malloc 構造体 2 ポインタ あるメモリ領域 ( アドレス ) を代入できる変数 型は一致している必要がある 定義時には値は不定 ( 何も指していない ) 実際にはどこかのメモリを指しているので, #include

More information

数値計算で学ぶ物理学 4 放物運動と惑星運動 地上のように下向きに重力がはたらいているような場においては 物体を投げると放物運動をする 一方 中心星のまわりの重力場中では 惑星は 円 だ円 放物線または双曲線を描きながら運動する ここでは 放物運動と惑星運動を 運動方程式を導出したうえで 数値シミュ

数値計算で学ぶ物理学 4 放物運動と惑星運動 地上のように下向きに重力がはたらいているような場においては 物体を投げると放物運動をする 一方 中心星のまわりの重力場中では 惑星は 円 だ円 放物線または双曲線を描きながら運動する ここでは 放物運動と惑星運動を 運動方程式を導出したうえで 数値シミュ 数値計算で学ぶ物理学 4 放物運動と惑星運動 地上のように下向きに重力がはたらいているような場においては 物体を投げると放物運動をする 一方 中心星のまわりの重力場中では 惑星は 円 だ円 放物線または双曲線を描きながら運動する ここでは 放物運動と惑星運動を 運動方程式を導出したうえで 数値シミュレーションによって計算してみる 4.1 放物運動一様な重力場における放物運動を考える 一般に質量の物体に作用する力をとすると運動方程式は

More information

C プログラミング演習 1( 再 ) 2 講義では C プログラミングの基本を学び 演習では やや実践的なプログラミングを通して学ぶ

C プログラミング演習 1( 再 ) 2 講義では C プログラミングの基本を学び 演習では やや実践的なプログラミングを通して学ぶ C プログラミング演習 1( 再 ) 2 講義では C プログラミングの基本を学び 演習では やや実践的なプログラミングを通して学ぶ 今回のプログラミングの課題 次のステップによって 徐々に難易度の高いプログラムを作成する ( 参照用の番号は よくわかる C 言語 のページ番号 ) 1. キーボード入力された整数 10 個の中から最大のものを答える 2. 整数を要素とする配列 (p.57-59) に初期値を与えておき

More information

1 JAVA APPLET 実習 1. はじめに Java フォルダに applet フォルダを作成する 2. 実習問題の作成 J01.java public class J01 extends Applet{ public void paint(graphics kaku){ kaku.drawstring("hello World from Java!",60,70); j01.html

More information

PowerPoint プレゼンテーション

PowerPoint プレゼンテーション プログラミング応用演習 第 4 回再帰的構造体 プログラミングを 余談 : 教えることの難しさ 丁寧に説明しないと分かってもらえない 説明すると 小難しくなる学生が目指すべきところプログラム例を説明されて理解できる違うやり方でも良いので自力で解決できる おっけー 動けば良い という意識でプログラミング 正しく動くことのチェックは必要 解答例と自分のやり方との比較が勉強になる 今日のお題 再帰的構造体

More information

Microsoft PowerPoint - VBA解説1.ppt [互換モード]

Microsoft PowerPoint - VBA解説1.ppt [互換モード] 九州大学工学部地球環境工学科船舶海洋システム工学コース 計算工学演習第一 演習資料担当 : 木村 Excel 上のマクロを利用してプログラムを組む Visual Basic for Applications (VBA) のテクニック Excel のマクロとは? 一連の操作を自動的に行う機能 例 ) セル ( マス目 ) に数字を 1 から順番に埋めていく Excel のマクロでどんなプログラムが作れるのか?

More information

データ構造とアルゴリズム論

データ構造とアルゴリズム論 第 1 章.Java による CG 作成方法 2 学習のねらい 1 先週に続いて Java 言語 (Eclipse 環境における ) を用いて CG( コンピュータグラフィックス ) を作成する方法の基礎を学習する 今回は ( 作成した )CG が自動的に再描画される様にするための処理 ( のプログラミング ) を学習する 今回の学習で Java による CG 作成方法を終了し 次週以降は CG 作成のアルゴリズムの学

More information

PP(tt) = (1 tt) qq 0 +(1 tt) tt qq 1 +(1 tt) tt qq + tt qq (0 ttt1) ここで制御点 qq 0 = (1,1), qq 1 = (,4), qq = (,4), qq = (,1) から定まるベジェ曲線を PP(tt) とし制御点 qq

PP(tt) = (1 tt) qq 0 +(1 tt) tt qq 1 +(1 tt) tt qq + tt qq (0 ttt1) ここで制御点 qq 0 = (1,1), qq 1 = (,4), qq = (,4), qq = (,1) から定まるベジェ曲線を PP(tt) とし制御点 qq B- スプライン曲線の一考察 山本孝司 Consideration of the B-Spline Curves Takashi YAMAMOTO This paper proposes a method to describe and visualize B-spline curves for clear understanding of non-uniform rational B-spline

More information

次に示す数値の並びを昇順にソートするものとする このソートでは配列の末尾側から操作を行っていく まず 末尾の数値 9 と 8 に着目する 昇順にソートするので この値を交換すると以下の数値の並びになる 次に末尾側から 2 番目と 3 番目の 1

次に示す数値の並びを昇順にソートするものとする このソートでは配列の末尾側から操作を行っていく まず 末尾の数値 9 と 8 に着目する 昇順にソートするので この値を交換すると以下の数値の並びになる 次に末尾側から 2 番目と 3 番目の 1 4. ソート ( 教科書 p.205-p.273) 整列すなわちソートは アプリケーションを作成する際には良く使われる基本的な操作であり 今までに数多くのソートのアルゴリズムが考えられてきた 今回はこれらソートのアルゴリズムについて学習していく ソートとはソートとは与えられたデータの集合をキーとなる項目の値の大小関係に基づき 一定の順序で並べ替える操作である ソートには図 1 に示すように キーの値の小さいデータを先頭に並べる

More information

関数 C 言語は関数の言語 関数とは 関数の定義 : f(x) = x * x ; 使うときは : y = f(x) 戻り値 引数

関数 C 言語は関数の言語 関数とは 関数の定義 : f(x) = x * x ; 使うときは : y = f(x) 戻り値 引数 関数 C 言語は関数の言語 関数とは 関数の定義 : f(x) = x * x ; 使うときは : y = f(x) 戻り値 引数 関数の定義 戻り値の型 関数名 引数の型 引数の名前 int funcname ( int a, char b) { int c ; c = a * b ; return c ; 引数の型 引数の名前 戻り値 戻り値の型は int 変数 c の型も int return

More information

Slide 1

Slide 1 OpenFoam のための C/C++ 第 3 回 OpenFoam で勉強るテンプレート 田中昭雄 1 目的 この勉強会の資料があれば OpenFoam カスタマイズ時に C/C++ で迷わない 2 予定 第 1 回メモリ管理 第 2 回 CFDの例で勉強するクラス 第 3 回 OpenFOAMで勉強するテンプレート 第 4 回 OpenFOAMカスタマイズ 第 5 回未定 第 6 回未定 3 今回のテーマ

More information

スモール Small ベーシック Basic チュートリアル ヒントとコツ きわなま極めつきのヒント : 怠けよう! タイプをはじめたら Tab か Enter キーを押してコードを完成 矢印キーを使ってメソッドをスクロール 右側にあるメソッドの説明を見る Small Basic を入手する Win

スモール Small ベーシック Basic チュートリアル ヒントとコツ きわなま極めつきのヒント : 怠けよう! タイプをはじめたら Tab か Enter キーを押してコードを完成 矢印キーを使ってメソッドをスクロール 右側にあるメソッドの説明を見る Small Basic を入手する Win スモール Small ベーシック Basic チュートリアル ヒントとコツ きわなま極めつきのヒント : 怠けよう! タイプをはじめたら Tab か Enter キーを押してコードを完成 矢印キーを使ってメソッドをスクロール 右側にあるメソッドの説明を見る Small Basic を入手する Windows アプリストアに行き Small Basic を検索し [ アプリをゲット ] ボタンを押しますまたは

More information

JavaプログラミングⅠ

JavaプログラミングⅠ Java プログラミング Ⅰ 12 回目クラス 今日の講義で学ぶ内容 クラスとは クラスの宣言と利用 クラスの応用 クラス クラスとは 異なる複数の型の変数を内部にもつ型です 直観的に表現すると int 型や double 型は 1 1 つの値を管理できます int 型の変数 配列型は 2 5 8 6 3 7 同じ型の複数の変数を管理できます 配列型の変数 ( 配列変数 ) クラスは double

More information

1222-A Transform Function Order (trsn

1222-A Transform Function Order (trsn 1233 親の組合せで変化をつける 親の基本的な性質 要素 ( ボックス ) を親子にすることによって トランジションやアニメーションの動きにさまざまな変化をつけることができます 基本的には次のような性質を持っています 1 の position プロパティの値が static( または position の指定なし ) 以外の場合 の position プロパティの値に absolute を指定すると

More information

ポインタ変数

ポインタ変数 プログラミング及び実習 5 馬青 1 文字処理 数値処理 : 整数 浮動小数点数 単一の文字は と ( シングルクォーテーション ) で囲んで表現される 文字のデータ型は char または int である int を用いたほうが ライブラリの関数の引数の型と一致する 以下は全部 int の使用に統一する 従って int ch; で文字変数を宣言しておくと ch= A ; のように ch に文字 A

More information

線形代数とは

線形代数とは 線形代数とは 第一回ベクトル 教科書 エクササイズ線形代数 立花俊一 成田清正著 共立出版 必要最低限のことに限る 得意な人には物足りないかもしれません 線形代数とは何をするもの? 線形関係 y 直線 yもも 次式で登場する (( 次の形 ) 線形 ただし 次元の話世の中は 3 次元 [4[ 次元 ] 次元 3 次元 4 次元 はどうやって直線を表すの? ベクトルや行列の概念 y A ベクトルを使うと

More information

コンピュータグラフィックス第8回

コンピュータグラフィックス第8回 コンピュータグラフィックス 第 8 回 レンダリング技法 1 ~ 基礎と概要, 隠面消去 ~ 理工学部 兼任講師藤堂英樹 レポート提出状況 課題 1 の選択が多い (STAND BY ME ドラえもん ) 体験演習型 ( 課題 3, 課題 4) の選択も多い 内訳 課題 1 課題 2 課題 3 課題 4 課題 5 2014/11/24 コンピュータグラフィックス 2 次回レポートの体験演習型 メタセコイア,

More information

パソコンシミュレータの現状

パソコンシミュレータの現状 第 2 章微分 偏微分, 写像 豊橋技術科学大学森謙一郎 2. 連続関数と微分 工学において物理現象を支配する方程式は微分方程式で表されていることが多く, 有限要素法も微分方程式を解く数値解析法であり, 定式化においては微分 積分が一般的に用いられており. 数学の基礎知識が必要になる. 図 2. に示すように, 微分は連続な関数 f() の傾きを求めることであり, 微小な に対して傾きを表し, を無限に

More information

<4D F736F F D208D5C91A297CD8A7793FC96E591E631308FCD2E646F63>

<4D F736F F D208D5C91A297CD8A7793FC96E591E631308FCD2E646F63> 第 1 章モールの定理による静定梁のたわみ 1-1 第 1 章モールの定理による静定梁のたわみ ポイント : モールの定理を用いて 静定梁のたわみを求める 断面力の釣合と梁の微分方程式は良く似ている 前章では 梁の微分方程式を直接積分する方法で 静定梁の断面力と変形状態を求めた 本章では 梁の微分方程式と断面力による力の釣合式が類似していることを利用して 微分方程式を直接解析的に解くのではなく 力の釣合より梁のたわみを求める方法を学ぶ

More information

0 21 カラー反射率 slope aspect 図 2.9: 復元結果例 2.4 画像生成技術としての計算フォトグラフィ 3 次元情報を復元することにより, 画像生成 ( レンダリング ) に応用することが可能である. 近年, コンピュータにより, カメラで直接得られない画像を生成する技術分野が生

0 21 カラー反射率 slope aspect 図 2.9: 復元結果例 2.4 画像生成技術としての計算フォトグラフィ 3 次元情報を復元することにより, 画像生成 ( レンダリング ) に応用することが可能である. 近年, コンピュータにより, カメラで直接得られない画像を生成する技術分野が生 0 21 カラー反射率 slope aspect 図 2.9: 復元結果例 2.4 画像生成技術としての計算フォトグラフィ 3 次元情報を復元することにより, 画像生成 ( レンダリング ) に応用することが可能である. 近年, コンピュータにより, カメラで直接得られない画像を生成する技術分野が生まれ, コンピューテーショナルフォトグラフィ ( 計算フォトグラフィ ) と呼ばれている.3 次元画像認識技術の計算フォトグラフィへの応用として,

More information