[研究報告の目次へ戻る]
ユニックスデスクトップ上へのマウスによる落書
- はじめに
- 落書例
- Doodle の仕様
- まとめ
- 謝辞
- 参考文献
はじめに
教育人間科学部ソフトサイエンス課程では、2年生以上を対象に"生活情報演習 I、
II"として、Windows9X,2000に代表される環境とは異なる OS 環境の Unix に関
しても演習を行っている。本演習のねらいは以下においている。
- Unix のファイルシステムの理解。
- mule を主とするエディタ活用。
- ls の使用方法と、それが表示する意味。
- リダイレクション、パイプ機能の活用。
- less, grep, mule 等によるテキストファイルの検索。
- sh, awk の活用。
- perl の活用、特に正規表現の理解。
開講されて、本年度で2年目であるため、本課程の学生が何に興味を
持つか、どのような例題が適切か等を模索しながらの授業であるため、
本授業に関し考察するのは時期尚早であろう。
授業を行う上で、学生への説明、例題表示等を Unix のデスクトップを
プロジェクタでスクリーンに表示し行っているが、注意、強調個所を示すには
いちいちコンピュータから離れ、指ないしは指示棒で指すことになり
不便であった。
同様な意見が山梨大学内で運用されている、
yu-Linux-ML(yu-linux@math.cs.yamanashi.ac.jp,
admin:yu-linux-ctl@math.cs.yamanashi.ac.jp)において述べられた。
[yu-linux:00207] から抜粋。
画面上ところ構わず落書ができるソフトってないでしょうか.
授業などでつかっていて,「ここ!」とか言ってアンダーラインを引いた
りしたいなぁという希望をもっています.良いツールを知りませんか.
http://www.pa.airnet.ne.jp/tsuruta/programs/
にあるxdrawというソフト(Xlib?でがしがし書かかれている)があるんだけ
ど,点しか打てないんだなぁ.
この様なことがきっかけで、デスクトップ上で少なくとも、直線、自由曲線が
描けることをねらいに "doodle" と名付けた落書ソフト作成を行った。
落書例
最初に Doodle を用いてデスクトップ上に落書した例を示す。
-
PC-Solaris2.6, CDE 上での例
-
Linux KDE 上での例
簡単なことしか出来ないが、例に示されるように、
- 線の太さの変更
- 描画色の変更
- 点を打つ
- 直線を引く
- 自由曲線を描く
- 背景との XOR 演算
- アプリケーションのみならずルートウィンドウ上にも描画
等が可能となっている。
Doodle の仕様
- 起動方法 : doodle [-lw line-width] [-c color-code] [-xor]
- 線の太さに関しては、固定の7通り用意されている。
ユーザ定義として、 line-width=1--100 から選択でき、起動時には
その太さで描画する。指定しない場合は line-width=4 となっている。
- 描画色に関しては、固定色の黒、青、赤、緑、黄、白が利用できる。
ユーザ定義として、color-code=0--15 から一色を追加できる。起動時には
その色が描画色となる。指定しない場合は白となっている。
- -xor オプション指定では Doodle 起動時に背景との XOR 演算で
描画する。但し、後述するメニューから選択することもできる。
指定しないときは上書きとなる。
- マウス操作
- 左ボタンクリック --- 点を打つ。
- 中ボタンクリック --- 1回目で始点、2回目で始点から線を引く。
- 右ボタンクリック --- メニューのポップアップ。
- 左ボタンドラッグ --- 自由曲線を描く。
- ポップアップメニュー : マウスの右ボタンクリック
- 描画の太さ選択(円で表示)。
- 描画色選択。
- Opt : ユーザオプションに設定
- Xor/Solid --- 背景色との XOR演算/上書き指定。トグル動作。
- All Clear --- デスクトップをホワイトボードにする。Refresh で元に戻る。
- All Set --- デスクトップを黒板にする。Refresh で元に戻る。
- Refresh --- Doodle で描画されたものを全て消す。
- Exit --- 終了。
- Refresh&Exit --- Refresh して Exit.
- Circle/Pencil --- マウスカーソルを 小円/ペンシル 形にする。トグル動作。
- Pause --- 制御をウインドマネイジャ(WM)に戻す。kterm から doodle を起動
する時に効果がでる。
- kterm からの起動
Doodle が起動し描画モードになっている場合、kterm 内で作業をしよう
としても制御が Doodle に渡っているため作業出来ない。このような場合
kterm -g 8x1 -e /home/fujita/Exe/doodle -lw 2 -c 9 &
として kterm, xterm 等と共に起動すれば、Doodle と WM との
間で行き来できるようになる。Doodle を一時停止にするには、メニューから
Pause を選べば、WM に制御が戻る。Doodle の描画モードに移るときは、
8x1 サイズのkterm 内にマウスカーソルを置き、改行を叩けばよい。
まとめ
本落書ユーティリティ Doodle は TSURUTA Mitsutoshi 氏による
xdraw.cを参考にして作成したもである。このオリジナル版は、
残念ながら期待通りには
動かなかった。基本部分はアイデアをお借りし、乏しい Xlib の知識で、
それをかなり改定したため、
doodle.c (doodle=(他のことを考えながら)落書する)と名付けた。
利用して下さる方、及び特により使いやすくして下さる方は
ソース
を自由にダウンロードして下さい。コンパイルには、"-lX11 -lm -lc" を付ければ、
ほとんどの OS で大丈夫かと思う。試した範囲では、Linux(Vine1.1, Vine2.0,
SlackWare3.1), Solaris2.6,2,4, PC-Solaris2.6, IRIX6, SunOS4.3 で動いている。
授業においては、PC-Solaris 上で利用している。
楕円、四角が描けない、消しゴム機能が無い等、未熟なソフトであるが、
当初の目的は果たせたかと思う。Unix を用いたプレゼンテーションに
役立てば幸いである。
謝辞
本 Doodle をテストして頂き、実際に授業にも利用して頂いた 豊木 博泰先生
にはここにお礼申し上げます。
参考文献
- 井門 俊治, "X-Window 実用グラフィクス入門", 日刊工業新聞社、1992.
- 木下 凌一、林 秀幸、 "X-Window Ver.11 プログラミング",
日刊工業新聞社、1994.
[研究報告の目次へ戻る ]