プログラミング基礎 I

第十三回 (2012年 7月 2日)

SVG の応用

http://www.sw.it.aoyama.ac.jp/2012/PB1/lecture12.html

Martin J. Dürst

AGU

© 2006-12 Martin J. Dürst 青山学院大学

目次

前回のまとめ

SVG の仕様書 (日本語)

前回の演習・宿題: 面白い SVG の図形

習った様々な部品や機能を使って面白い SVG の図を作って下さい。

簡単でもいいですが、何か意味のあるものを作って下さい。

授業中の他の学生に見せてもいい内容にしてください。

6月 29日 (金曜日) の 22:00 までに Moodle に投稿。

これからの予定

7月 9日: 14回目の授業 (SVG の応用: アニメーション)

(7月16日: 海の日)

7月23日~8月4日: 期末試験 (60分)

重要: 色鉛筆を持参すること (黒、赤、青、緑、黄色)

過去の問題 (60分の期末試験):

2006 年度の期末試験

2007 年度の期末試験

スタイルを変えると一部の正解例が見える。

XHTML と SVG の組み合わせ

  1. XHTML も SVG も XML のため、同ファイルで組み合わせ可能
  2. 別ファイルの SVG を XHTML に取り入れ

XHTML と SVG の組み合わせの例

方法 埋め込み <object> <embed> <iframe> <img>
This is a test of SVG Panda face (just a try) face of panda drawn with circles

<object> 要素

<object type="image/svg+xml"
    data="panda.svg"
    height="200" width="200">
  <object type="image/gif"
      data="panda.gif">
    A sketch of a panda's face,
    with green background
  </object>
</object>

SVG のテキスト

リンクの追加

部品の定義と使用

部品の定義

<defs>
  <g id='part1'>
    <rect x='0' y='0' width='20' height='20'/>
    <circle cx='20' cy='20' r='15'/>
  </g>
</defs>

部品の使用

<use xlink:href='#part1' /> <!-- 同じファイル内 -->
<use xlink:href='file.svg#part1' /> <!-- 別のファイル -->

回転、移動、拡大縮小

 

SVG のアニメーション

<animate> 要素の例

<rect x='20' y='20' width='50'>
  <animate attributeName="height"
        from="1" to="100" dur="5s"
        repeatCount="indefinite" />
</rect>

アニメーションの時間帯

アニメーションの時間帯は次の属性で指定:

演習: もっと面白い SVG の図

今日習った様々な部品や機能を使ってもっと面白い SVG の図を作って下さい。

授業中の他の学生に見せてもいい内容にしてください。

7月 6日 (金曜日) の 22:00 までに Moodle に投稿。