平成10年度 委託研究ソフトウェアの提案

12.制約処理系を利用した図形描画システム

研究代表者: 五十嵐 健夫 博士課程 学生
東京大学 情報工学専攻



[目次]

  1. ブラッシュアップ対象ソフトウェア名称
  2. 体制/方法
  3. 想定されるブラッシュアップ成果

[ブラッシュアップ対象ソフトウェア名称]

[体制/方法]

(1) 体制

 氏名 所属
研究代表者五十嵐 健夫東京大学 情報工学
研究協力者田中 英彦東京大学 情報工学
研究協力者松岡 聡東京工業大学 数理計算機工学

(2) ブラッシュアップの方法

平成9年度委託研究の成果である描画システムの JAVA への移植、および予測機能の付加を行う。

  1. まず、移植・拡張に取り掛かるにあたって変更すべき点や改良すべき点、あるいは取り除くべき機能などについて総合的に検討を加える。その際、すでに成果ソフトウェアとして利用実績のある現在の版での経験を生かし、 より使いやすく高機能なものを目指す。

  2. 実際の移植作業に取り掛かる。特に、ソフトウェアの再利用性という点に注意し、制約解消系や制約抽出部、インタフェースの独立性を最大限に保つよう実装する。一部のモジュールについては、可読性と処理速度の向上のためにコードの全面的な書き直しを検討している。

  3. 新機能である予測部分に関する実装を行う。この機能については、まだ実績がないため、さまざまな手法を実際に実装し、テストを行うといった比較検討が必要である。

  4. 移植されたシステムの動作確認と評価、およびその結果に基づいた修正を行う。その際 JAVA の非OS依存性を生かすため、さまざまなプラットフォームで動作の確認をおこなう予定である。

  5. 一般に公開するために、使用法などについての文書を整備するとともにサンプル画像の作成、最終テスト、デバッグなどを行なう。


[想定されるブラッシュアップ成果]

  1. ブラッシュアップ項目

  2. 上記のブラッシュアップによるユーザの立場からみた改善点

    今回提案するブラッシュアップによって、ソフトウェアのリソースとしての再利用性が飛躍的に高まる。すなわち、
    1. OS非依存性およびWWW上での動作可能性により、Window 上に縛られている現在の版にくらべ、ソフトウェアのアプリケーションとしての利用機会が格段に増加する。

    2. モジュール性にすぐれた JAVA 言語の利用と、 モジュール化を考慮した再実装によりソフトウェアのソースコードの他のアプリケーションでの利用可能性が向上する。

    3. 依然の2言語を利用した構造にくらべ、JAVA というシンプルな言語を用い、さらに可読性を考慮したプログラムの書き直しを行うことにより、ソフトウェアの可読性が向上し、アルゴリズムの学習や他への利用が容易になる。

    といった改善が期待できる。

    また、利用者の立場からみると、

    1. Windows を利用することなく自分の普段利用している計算機で利用することが可能となる。

    2. ソフトウェアの動作安定性の向上とインタフェースのブラッシュアップによりシステムがより使いやすくなる。とくにズーム機能およびスクロール機能は利用者にとってメリットが大きいと考えられる。

    3. プログラムが読みやすくなり、モジュール化が図られることにより、アルゴリズムの学習への利用や、自分のプログラム(ホームページに貼るアプレットなど) への組み込みが容易になる。

    4. Visual Basic の特定の版 (v2.0) を各自で購入する必要がなくなり、WWWブラウザさえあれば、インストール作業を行うことなくどこでも利用できるようになる。

    5. 予測機能の付加により、より自由に高速に正確な図形の描画が行えるようになる。

    といった改善が見込まれる。

    実際に利用者が、成果ソフトウェアのソースコードを読んだり、自分のソフトウェアの一部に応用したりする場合に最も重要なのは、2次的な情報に過ぎないマニュアルや解説文でなく、ソフトウェアが読まれることを前提として書かれた良く整備されたソースコードである。このような点を考えると、今回提案するソースコードの書き直しと移植作業はソフトウェアの2次利用といった観点から考えて、詳細なアルゴリズム解説の新規作成に相当する作業であると考えられる。

    操作説明に関しては、現在の版に付随しているマニュアルを更新する他、必要な情報を操作中に得ることのできるオンラインヘルプをつける予定である。オンラインヘルプを利用することにより、静的なマニュアルから得られる情報に比べて、よりユーザの必要にあった情報を適宜与えることが可能となり、操作の習得の助けになることが期待できる。

  3. 上記のブラッシュアップ以外のソフトウェア機能の改良

    動作の安定性や応答性の向上といった細かい調整に加え、操作性向上のため、ズーム機能、スクロール機能、および予測機能といった新機能の付加を行う。

    1. ズーム機能

      これは、描画に際して図全体を連続的に拡大したり縮小したりする機能である。細かい部分を描く場合にはその部分にズームインして拡大表示することにより正確な描画が可能となる。また、全体的なレイアウトを観察する場合にはズームアウトして縮小表示することによってより広範囲を一度にみることが可能となる。さらに、ズームにより整形に伴う各種パラメータの自動調整が可能となる。すなわちズームインしている場合には、ユーザが細かい作業をしようとしていることがわかるため、整形に関わるパラメータ設定を細かい作業用に動的にチューニングし、またズームアウトしている場合には、おおまかな作業をしようとしていると考えてパラメータを粗い作業用にチューニングすることができる。これにより、従来困難であったより複雑な図形の正確な描画が可能となる。

    2. スクロール機能

      これは画面全体を上下左右に連続的にスクロールする機能である。この機能により、ユーザは画面の広さにしばられることなくより広いスペースを利用して描画を進めることが可能となる。

    3. 予測機能

      本予測機能は、最近の我々の研究成果[1,2,3]として得られたものであり、すでに描かれた図形と最後に描いた図の総合的な位置関係から次の描画を予測して提示するものである。提示された予測候補の中に気に入ったものがあれば、それをクリックするだけで選択することができ、その時点でさらに次の予測が生成され提示される。このようにする結果、予測が成功しつづけている限りにおいては、表示される候補を次々にクリックしていくだけで、かなり複雑な図形を正確かつ高速に描画することができる。予測内容が気にらなかった場合には、希望する図形をそのまま手書きで描くことで自然に整形処理に以降することができるので、予測機構を組み入れることによる作業負担の増加もほとんどないといえる。本手法は、常に希望する線分の概形を注意深く描かなければならないという対話的整形システムの欠点をおぎなうもので、描画負担の軽減に非常な効果が認められる。また、最近研究のさかんに行われている予測インタフェースの実現例としても興味深い。本予測手法により、描画システムはより使いやすくなる他、見た目にも新鮮な機能でもあり、より多くのユーザを獲得する一助になると考えられる。

    上記の描画機能の拡充に加え、ソフトウェアの付属機能として、オンラインヘルプをつける予定である。オンラインヘルプは特殊機能として実装され、ユーザの操作状態に応じたヘルプ情報を提示する。


www-admin@icot.or.jp