サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
都知事選
www.stdio.h.kyoto-u.ac.jp/~hioki
% chmod パーミッション指定 ファイルまたはディレクトリ % chmod パーミッション指定 ファイルまたはディレクトリ ファイルまたはディレクトリ... ファイルやディレクトリは,相対パスあるいは絶対パスで指定します. パーミッションの指定の仕方は,2通りあります.ここでは, 2進数に基づく方法を紹介します.この方法では,0〜7の数字を3つ用いて, 所有者,グループ,その他に対するパーミッションを指定します.数字の意味は 以下の通りです. 指定する数字 2進数表記 意味
文字入力,カーソル移動 文字の削除 リージョン(領域)の指定,リージョン内のテキストの削除と複製 テキストの切り貼り --- Kill & Yank 検索 置換 Undo(元に戻す) 文字入力,カーソル移動 文字キーを打っていくと,カーソルの位置に文字が表示されます.それとともに カーソルは右に移動していきます.[Enter]を入力すると,カーソルは次の行の 先頭に移動します.このようにすることを改行といいます. 改行しないで,ずっと文字を打ち続けると,ウィンドウの幅を越えたところで, 文字が次の行の左から表示されていきます(前の行の終わりにはマークがつきま す).このとき見かけ上は2行になっているわけですが,実際は1行になっていま す.打ち込んだ文字が1行に収まるようになるまでウィンドウの幅を広くしてみ て下さい.また逆にウィンドウの幅を狭くしてみてください. 矢印キーを使うことで,既に
OpenGLは,3次元グラフィクスプログラミングにつかわれる標準的なライブラリです. ライブラリとは,プログラムの部品セットであるといえます. ライブラリを利用することで,自分で0から書かなくても, ライブラリが提供する部品を組み合わせることでプログラムを作成することができます. ここでは,OpenGLの基礎を説明します. OpenGLの概要 Ruby/OpenGL OpenGLプログラムの基本的な構造 イベント,コールバック,イベントループ 2次元図形の描画 図形プリミティブ 属性 2次元ビューの設定 ビューポート OpenGLの概要 OpenGLは,3次元グラフィクスプログラミングにつかわれる標準的なライブラリで,SGI(Silicon Graphics, Inc.)がGLという同社のコンピュータ専用のグラフィクスライブラリをもとに開発したものです. OpenGL以外でよく用いられる3
3次元CG作成の概要 3次元CG画像を作成することは,仮想的な3次元シーンを仮想的なカメラで撮影することであるといえます. 3次元CG画像を作成するには,まず撮影する3次元シーンを構築する必要があります. また,シーンを撮影するカメラを配置します. つづいて,カメラにどのようにシーンが写り込むかを決めます. これは,画像面に3次元シーンをどのように投影するかを決めることに相当します. 準備が全て整ったら,最後に撮影(描画)を行います. この描画処理をレンダリングといいます. 3次元シーンを構築するには,最低限,各物体の形状を記述する必要があります. よりリアルなシーンを構築するためには,光源をおく,物体の反射特性を決めることなどが必要となります. また,シーンを撮影する際には,たとえば,ある物体が他の物体の一部を覆い隠している, 物体の一部だけが写るなどの状況を的確に処理する必要があります
lambda(ラムダ)式は,(名前のない)関数を記述するものである. たとえば,ある数に1を加える関数は,lambda式を使って, (lambda (x) (+ x 1)) と定義できる.lambda式を演算子として引数を与えれば > ((lambda (x) (+ x 1)) 0) 1 のように,関数の値を計算できる. これは,通常の関数の呼出しと全く同様である. また(名前をもった)新しい関数の定義は,通常defineを用いて, > (define (succ x) (+ x 1)) などとするが,実はこれは > (define succ (lambda (x) (+ x 1))) のように,lambda式によって記述される関数にdefineで名前を定義することの便 宜上の省略形式である.なお,一般にこのような便宜的な記法のことをsyntax sugar(文法上の砂糖)という. la
変数(関数)は,フレームの列からなる環境モデルによって管理されている. フレームとは,変数(もちろんlambda式によって記述される関数も含む)の集まりを格納する入れ物(テーブル)である. またフレームは,それを含む上位の環境(フレームの列)を指し示すポインタを持つ. つまり,あるフレームは別のフレームを指し,さらにそのフレームがまた別のフレームを指すというようにして,フレームの列が形成され,これが環境を定義する. 変数の値は環境を下位のフレームから上位のフレームへと順次調べることで評価される. この図で太い矢印がフレーム同士の関係を与えている.frame1は最上位のフレームであり上位のフレームを持たない. 上述の通り,環境は(矢印でつながれた)フレームの列で構成される. 例えば環境env4は,frame4,frame2,frame1の3つのフレームの列から構成されている. この環境env
概要 授業資料 レポート 参考書 メディアセンター関連 その他 外部資料 概要 コンピュータグラフィクス(CG)は, デザイン,設計,映画,ゲーム,シミュレーションなど, さまざまな分野で利用されています. 本実習では,既存のCGソフトウェアを用いず, プログラミングによりゼロから画像を生成することで, CGの原理を学びます. Linux環境のもとで, プログラミング言語Ruby を利用して実習を行います. とくに予備知識は仮定しませんが,プログラミングの経験があれば, 実習に取り組むのに役立つことでしょう. 授業資料 CGとは,(ディスプレイ等に表示する)画像データを生成する技術です. そこで,前期(A)は,まず,デジタル画像の概要を学び, プログラミングの基礎を習得したのち, さまざまな画像を生成する実習を行います. イントロダクション 実習をはじめる前に デジタル画像の基礎 Ruby
概要 コンピュータはプログラムに忠実にしたがって処理を行います. そこで,自分でプログラムを作れば,自分の思った通りにコンピュータに仕事をさせることができます. プログラムを作ることをプログラミングといいます. ここでは,演習を通じてプログラミングを基礎から学びます. プログラミングの素養を身につけることで,本当の意味ではじめてコンピュータを使いこなすことができるようになります. なお,演習はLinux環境で行い,プログラミング言語としてRubyを用います. プログラミングは専門家の仕事であり,誰もが必ずしも学ぶ必要はないという考え方もあります. しかし,コンピュータは,知的活動の可能性を大きく広げることができるツールであり,それを自在に使いこなす手段としてのプログラミングを学ばないことは,卒直に言って非常にもったいないことです. またプログラミングはいい意味で「手軽に」創造性を発揮できる
日置尋久(HIOKI Hirohisa) Last modified: Thu Oct 11 14:06:07 JST 2007
リストのように再帰的なデータ構造を扱うには,再帰呼出しを行う関数を用いるのが自然である. ここでは,まず数値を扱う関数を例として,再帰呼出しについて説明する. 0以上のnに対して,xのn乗は, x^n = 1 n = 0, = x・x^(n-1) n > 0 と定義できる. ここで,f(x,n) = x^nとすると, f(x,0)=1 f(x,n)=x*f(x,n-1) と書き直すことができる. ここで関数fは,関数fによって定義されていることが分かる. このようにある関数がそれ自身を呼び出している(それ自身の定義を使っている)ことを再帰呼出しという. 再帰的に定義されている関数では,再帰呼出しが止まる条件が与えられていなければならない(さもなければ,無限に呼出しが繰り返され,計算が終了しない). またもちろん「再帰呼出しが止まる条件」がいつか成り立つように再帰呼出しが定義されていなければ
継続(continuation)とは,式を評価している途中のある時点で,『いま得られた 値を使って,この後は何を計算するのか』を表すものである.たとえば,Scheme の関数呼びだしの式を評価する際には,まず関数とその引数を評価して,その 後で関数に引数を適用する. ==> (+ (* 1 2) (* 3 4)) ;; ==> (+ 2 12) ;; ==> 14 14 この式の場合,まず「+」,「(* 1 2)」,「(* 3 4)」を評 価したのち,「(+ 2 12)」を評価する. 各部分式の評価が左から右へ進むものとすると, たとえば,「(* 3 4)」を評価した後にするべき計算,つまり継続は, 『いま得られた値に2を加える』 である.この式の評価を完了するためには, Schemeのシステムは,この継続を知っていなければならない. 継続は,「何を評価して,その値によって次には何を行う」
Schemeのインタプリタ(システム)が起動されると,プロンプト(入力を促すマー ク)を表示して,ユーザからの入力を待つ状態になる.このプロンプトが出てい る状態をトップレベルと呼ぶ.トップレベルにおいて,キーボードから式を入力 し,最後に入力の終わりとして「改行」キーを入れると,システムは入力された 式をすぐに計算(評価)して,結果として得られた値を返し(表示し),再びトップ レベルに戻り,入力を待つ状態になる. > -78 -78 > (+ 2 1) 3 > (* 2 3 4) 24 ここに書かれているように,Schemeの式は括弧を使って表現される.括弧の中の まず最初に演算記号があり,それに続いて演算データが並べられる.このような 記法を前置記法という.演算データがまた別の式になっていてもよい. > (* 2 (+ 1 4 5) (/ 12 3)) 80 ファイルのロード > (l
関数本体の定義とそれを評価するための環境を合わせてクロージャと呼ぶ. クロージャの概念を用いれば,オブジェクト指向プログラミングの基本要素であるオブジェクトを作成することができる. オブジェクトとは,簡単に言えば,メンバ変数(フィールド)といわれるデータとそれを操作するためのメンバ関数(メソッド)をまとめた部品のようなものである. 各フィールドのスコープはオブジェクト内に局所化され,それらにアクセスするためには必ずメソッドを用いることになる. つまりオブジェクト内部のデータは予め指定された方法でのみ操作され,プログラムの他の部分から予期せぬ形で影響を受けることがない. こうすることによって,オブジェクトの内部構造がブラックボックス化され,オブジェクトを,ある機能を提供するプログラムの抽象的な部品として,その詳細な実現方法に左右されることなく利用することができるようになる. ここでは環境モデ
まえがき 世の中には様々なプログラミング言語があるが,本文書では,Lispプログラミン グ言語の一つの方言であるScheme(スキーム)を紹介する.ここではSchemeを直観 的に理解することをまず目標として,形式的に完全であるかどうかにはこだわら ないことにする. ※見た目にもあまりこだわらないことにする:-) より詳しくは, 湯浅太一 「Scheme入門」 岩波書店 K.ディヴィグ著 / 村上雅章 訳 「プログラミング言語 SCHEME」 ピアソン・エデュケーション 2000 猪股俊光, 益崎真治 「Schemeによる記号処理入門」 森北出版 1994 D.P.フリードマン, M.フェライセン 著/ 元吉文男, 横山晶一 訳 「Scheme手習い」 マグロウヒル出版 1990 H. Abelson, G.J. Sussman and J. Sussman 著 "Strucuture a
このページを最初にブックマークしてみませんか?
『http://www.stdio.h.kyoto-u.ac.jp/~hioki/』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く