JP2010267214A - 情報処理装置、方法およびプログラム - Google Patents
情報処理装置、方法およびプログラム Download PDFInfo
- Publication number
- JP2010267214A JP2010267214A JP2009120051A JP2009120051A JP2010267214A JP 2010267214 A JP2010267214 A JP 2010267214A JP 2009120051 A JP2009120051 A JP 2009120051A JP 2009120051 A JP2009120051 A JP 2009120051A JP 2010267214 A JP2010267214 A JP 2010267214A
- Authority
- JP
- Japan
- Prior art keywords
- scenario
- information
- page
- workspace
- contents
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Images
Landscapes
- Facsimiles In General (AREA)
- User Interface Of Digital Computer (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Document Processing Apparatus (AREA)
Abstract
【課題】仮想的な作業空間上における作業結果および/または途中経過の内容を、相手先に応じた態様で容易に説明することが可能であり、かつ、変更および/または修正を共通的に反映することが可能な情報処理装置、方法およびプログラムを提供する。
【解決手段】シナリオページ1からシナリオページ2へ続く再生順序の定義に加えて、シナリオページ2’へ続く再生順序の定義を追加する。同様に、シナリオページ3からシナリオページ5を経てシナリオページ6へと続く再生順序の定義に加えて、シナリオページ3からシナリオページ4を経てシナリオページ6へと続く再生順序の定義を追加する。複数のシナリオの間で共通するシナリオページについては、可能な限り共有化するとともに、新たに追加または変更する必要のあるシナリオページについては、その前のシナリオページにおける分岐として定義することで、シナリオの内容をより多面的にする。
【選択図】図43
【解決手段】シナリオページ1からシナリオページ2へ続く再生順序の定義に加えて、シナリオページ2’へ続く再生順序の定義を追加する。同様に、シナリオページ3からシナリオページ5を経てシナリオページ6へと続く再生順序の定義に加えて、シナリオページ3からシナリオページ4を経てシナリオページ6へと続く再生順序の定義を追加する。複数のシナリオの間で共通するシナリオページについては、可能な限り共有化するとともに、新たに追加または変更する必要のあるシナリオページについては、その前のシナリオページにおける分岐として定義することで、シナリオの内容をより多面的にする。
【選択図】図43
Description
この発明は、仮想的な作業空間を提供するための情報処理装置、方法およびプログラムに関する。
近年、知的創造作業を支援するための仮想的な作業空間(以下、「ワークスペース」とも称す。)が提案されている(例えば、特開平10−051581号公報(特許文献1)や特開平10−126758号公報(特許文献2)など)。
このワークスペースとは、いわば仮想的なホワイトボードのように使用可能な作業空間であり、ユーザは、この作業空間上において、手書き文字、画像、写真などの題材(以下、「オブジェクト」とも称す。)をインタラクティブに入力したり操作したりすることができる。ワークスペースを用いることで、個人またはグループでの知的創造作業(考えを練ったり、他メンバーとコミュニケーションをとったりする)が促進される。
このようなワークスペースでは、物理的なホワイトボードやメモ帳などとは異なり、実際にユーザが閲覧する範囲より広い範囲の作業空間を仮想的に提供することができる。なお、ユーザが閲覧する範囲は、必要に応じて自在に拡大もしくは縮小できるので、狭い領域に対しても書込みなどを行なうことができる。そのため、広大な範囲の作業空間であっても、ユーザはストレス無く作業を行なうことができる。
このようなワークスペースを用いた知的創造作業の具体的なシーンとしては、ユーザが発想した題材を次々にオブジェクトとして入力し、これらの入力された多数のオブジェクトを分類(カテゴライズ)したり、互いに関連付けたりすることで、情報の整理を行ない新たな発想に繋げるという場合などが考えられる(典型的には、KJ法)。
このような知的創造作業の過程においては、各ユーザは、ワークスペースをノートのように使用して、その上に様々な場所に種々のオブジェクトが配置しながら、考えを練り上げることが想定される。そのため、このような知的創造作業(発想作業)が完了した時点では、当該作業における結論となり得るオブジェクト(記述された内容)以外にも、様々な中間的なオブジェクトがワークスペース上に残ったままとなっている場合もある。このようなワークスペース上の中間的なオブジェクトによって、ユーザは、どの場所にどのようなオブジェクトをどのようなタイミングでどのユーザが配置したかといった知的創造作業の経緯を思い出しやすいため、その全体や個々の情報をより詳細に記憶することができる。
すなわち、知的創造作業を行なったユーザ自身にとってみれば、作業結果を整理し直すより、ワークスペースがそのままの表示状態で残されることで、ビジュアル的なイメージを維持する方が記憶に残りやすく、かつ再利用もしやすい。
一方、このような知的創造作業では、情報収集、情報整理、発想、情報収集、情報整理、発想・・・といった複数のフェーズからなるサイクルを何度も繰返すことでより創造性の高いアウトプットが得られることが多い。例えば、情報を整理した作業結果を他人に説明して意見をもらい、そこでもらったアイデアをもとに、情報整理をし直すといった場合などである。また、自身のアイデアをメンバー間で整理しながらブラッシュアップするという場合もある。このとき、あるユーザ個人の作業結果をそのままの状態で他人(典型的には、アドバイザーやオブザーバ)に見せても、当該他人はそもそも知的創造作業の途中経過を知らないためビジュアル的に具体的なイメージを得ることは難しい。むしろ、ワークスペース上の情報をある程度整理して他人に見せた方が知的創造作業の全体像を理解し易くなり好ましい。また、知的創造作業を行なったユーザ自身にとってみても、ビジュアル的なイメージに加えて論理的な説明も併せて結果として残すことは、より理解を高める意味で効果的である。
このようなあるユーザが自身の作業結果および/または途中経過を他人に説明する場合を考えると、知的創造作業を行なったユーザ自身が作業しやすい(あるいは、記憶に残りやすい)態様と他のユーザが理解しやすい態様とは一般的に異なる。そのため、あるユーザが自身の作業結果および/または途中経過を他人に説明する場合、説明用のドキュメントなどを新たに作成する必要がある。例えば、ワークスペースの全体や一部をコピーして、説明用の文書に貼り付けたり、知的創造作業の流れがわかるように順序や説明記述を追加したりするといった追加の作業が発生する。このように、説明用のドキュメントを別途作り直すのは作業負担が大きく、本来の目的である知的創造に費やす時間や労力を無駄に消費する。
一方、ワークスペース上から不要なオブジェクトを削除した上で説明を行なう場合には、他人への説明中に、関連情報を見たくなった場合や、元の作業結果を修正したくなった場合に適切に対応できない。説明用のドキュメントとは独立して作業結果を別途残している場合であっても、説明中に思い付いた修正対象箇所を、別途残しておいた作業結果から都度探し出す必要がある。そのため、他人への説明時に判明した必要性を適宜反映することと、他人へのスムーズな説明とを両立させることは難しかった。
このような課題の解決手段として、ユーザが実際に作業を行なうワークスペースとは独立して、主としてプレゼンテーションを行なうための「シナリオ」機能を付加することが考えられる。このシナリオ機能は、ワークスペース上のいずれのオブジェクトをいずれの順序で表示するかといった情報(シナリオ情報)を、ワークスペースを定義するための情報とは別途保持しておき、再生時には、このシナリオ情報に基づいて、プレゼンテーションを行なう。これにより、ワークスペース上の作業状態をそのままの状態で保持できる一方で、このワークスペースを定義するための情報をそのまま利用して(別途、説明用の文書を作成する必要がなく)、目的とするオブジェクトに絞って適切な順序・表現方法でプレゼンテーションを行なうことができる。さらに、作業中のワークスペースを定義するための情報そのものを利用して表示などを行なうため、説明中に(当初説明対象としたオブジェクト以外の)別のオブジェクトを参照する必要が生じたり、ワークスペースを定義するための情報を説明中に修正(ブラッシュアップ)したりすることができる。このようなシナリオは、独立して複数作成することができ、説明相手毎にそれぞれ適したものを設定することができる。
ところで、上述のようなブラッシュアップは、複数の人に別々にその内容を説明することで行なわれる場合がある。説明相手のレベルや専門知識に応じて、説明の仕方を変えることが好ましい場合が多い。たとえば、(1)対象の内容について、途中までの経緯を知っているか、あるいは、まったく知らないかによって、説明を行なうための前提条件が異なる、(2)相手や状況によって、説明に使用できる時間の長さが異なる、(3)相談内容に関する専門性の違いによって用語を使い分ける必要がある、といった具合である。このように説明相手の別に複数のシナリオを用意しておくことで、それぞれの説明によって相手からもらったアドバイスを人や状況に応じて管理するといった使い方もできる。
なお、このような複数種類の説明方法を用意する必要性は、複数人に対して説明を行なう、すなわち、複数回にわたって類似の内容を説明することによって、事後的に判明することが多い。
上述したように、基本的には同じ内容を複数の人に説明するために、そのレベルや専門知識に応じて複数のシナリオを作成する場合を考える。上述のような構成によれば、共通のワークスペースを定義するための情報には関連付けられてはいるものの、互いに独立した複数のシナリオを用意せざるを得ない。あるシナリオを用いて説明を行なっている最中に、当該シナリオに対する修正が必要と判断された場合には、他のシナリオにも共通して反映させる必要がある場合が多い。しかしながら、このような方法で複数のシナリオを作成した場合には、作成済の他のシナリオをそれぞれ個別に修正する必要があり、非常に面倒であり、知的創造作業を行なうための効率が低下する。また、ユーザは、修正が非常に面倒であるからといって、一部のシナリオのみに対して修正を行なうことも考えられ、この場合には、修正が反映されていないシナリオについては事実上、使用することができなくなる。そのため、せっかく作成した説明相手に応じた複数種類のシナリオを有効に活用できなくなる。
なお、例えば、特開2007−013550号公報(特許文献3)に開示されるような方法を用いて、ワークスペース上の作業結果をそのままの表現形式で見せたまま説明を行なう場合を考えた場合にも、互いに独立したレイアウト制御情報を複数作成する必要があり、上述と同様の課題を生じ得る。
そこで、この発明は、かかる問題を解決するためになされたものであり、その目的は、仮想的な作業空間上における作業結果および/または途中経過の内容を、相手先に応じた態様で容易に説明することが可能であり、かつ、変更および/または修正を共通的に反映することが可能な情報処理装置、方法およびプログラムを提供することである。
この発明のある局面に従う、仮想的な作業空間を提供するための情報処理装置は、作業空間と作業空間に含まれるオブジェクトとを定義する第1情報を管理する第1管理手段と、仮想作業空間の少なくとも一部の範囲に対応する内容を一連に表現するための第2情報を管理する第2管理手段とを有する。第2情報には、ページ単位に区切られ、かつ、その表現順序が予め定められたシナリオが定義可能である。さらに、本情報処理装置は、第2情報に基づいて、表現順序に従って、各ページの内容を順次描画する表示手段を有する。第2管理手段は、第2情報において、シナリオとして複数のページからなる第1シナリオが定義されている場合に、当該第1シナリオに含まれる一部のページを共有し、かつ、当該第1シナリオに含まれるページとは独立したページを含む第2シナリオを第2情報に追加するための手段を含む。
好ましくは、第2管理手段は、ユーザ操作に応じて、第1シナリオに含まれるページのうち指定されたページを異ならせることで第2シナリオを生成するための手段をさらに含む。
好ましくは、第2管理手段は、第2情報における定義内容に含まれるシナリオを構成するページ間の関連付けを視覚的に表現する手段をさらに含む。
さらに好ましくは、第2管理手段は、視覚的に表現されるページ間の関連付けに対して、ページの追加または削除の対象ページの指定を受付ける手段と、第2情報から、指定された対象ページの定義を追加または削除する手段とをさらに含む。
好ましくは、第2管理手段は、2情報に定義されているシナリオに含まれるページの指定を受付ける手段と、指定されたページの内容に対する修正指示を受付ける手段と、受付けた修正指示に応じて第2情報を更新する手段とをさらに含む。
好ましくは、第2情報は、第1情報に含まれる特定のオブジェクトの定義内容と関連付けるための参照情報を含み、表示手段は、第2情報に含まれる参照情報に基づいて、第1情報の定義内容を参照するとともに、当該参照することで得られた情報に基づいて、各ページの内容を順次描画する。
好ましくは、第2情報は、ページ単位に区切られた表現すべき内容の定義を複数含み、複数の定義の各々には、対応するページが使用されるシナリオおよび当該シナリオにおける表現順序を特定するための識別情報が付加される。
好ましくは、第2管理手段は、ユーザ操作に応答して、第2情報において指定されるオブジェクトに対して表示属性を付与するための手段をさらに含む。
この発明の別の局面に従う、情報処理装置を用いて仮想的な作業空間を提供する方法は、作業空間と作業空間に含まれるオブジェクトとを定義する第1情報を管理するステップと、仮想作業空間の少なくとも一部の範囲に対応する内容を一連に表現するための第2情報を管理するステップとを有する。第2情報には、ページ単位に区切られ、かつ、その表現順序が予め定められたシナリオが定義可能である。さらに、本方法は、第2情報に基づいて、表現順序に従って、各ページの内容を順次描画するステップを有する。第2情報を管理するステップは、第2情報において、シナリオとして複数のページからなる第1シナリオが定義されている場合に、当該第1シナリオに含まれる一部のページを共有し、かつ、当該第1シナリオに含まれるページとは独立したページを含む第2シナリオを第2情報に追加するためのステップを含む。
この発明のさらに別の局面に従えば、コンピュータを仮想的な作業空間を提供する情報処理装置として機能させるプログラムを提供する。本プログラムは、コンピュータに、作業空間と作業空間に含まれるオブジェクトとを定義する第1情報を管理するステップと、仮想作業空間の少なくとも一部の範囲に対応する内容を一連に表現するための第2情報を管理するステップとを実行させる。第2情報には、ページ単位に区切られ、かつ、その表現順序が予め定められたシナリオが定義可能である。さらに、本プログラムは、コンピュータに、第2情報に基づいて、表現順序に従って、各ページの内容を順次描画するステップを実行させる。第2情報を管理するステップは、第2情報において、シナリオとして複数のページからなる第1シナリオが定義されている場合に、当該第1シナリオに含まれる一部のページを共有し、かつ、当該第1シナリオに含まれるページとは独立したページを含む第2シナリオを第2情報に追加するためのステップを含む。
この発明によれば、仮想的な作業空間上における作業結果および/または途中経過の内容を、相手先に応じた態様で容易に説明することが可能であり、かつ、変更および/または修正を共通的に反映することができる。
この発明の実施の形態について、図面を参照しながら詳細に説明する。なお、図中の同一または相当部分については、同一符号を付してその説明は繰返さない。
[用語]
本明細書において「ワークスペース」とは、視認可能なオブジェクトを追加したり、編集したりすることができる情報処理装置上で提供される仮想的な作業空間を意味する。このようなワークスペースにより、ユーザが情報を整理したり、他ユーザとの間で情報を共有したりすることができる。このワークスペースを提供する形態(デバイス)としては、プログラム(アブリケーション)を実行する情報処理装置、予めその機能が組み込まれた電子ホワイトボード、および携帯電話やタブレットPC等が考えられる。
本明細書において「ワークスペース」とは、視認可能なオブジェクトを追加したり、編集したりすることができる情報処理装置上で提供される仮想的な作業空間を意味する。このようなワークスペースにより、ユーザが情報を整理したり、他ユーザとの間で情報を共有したりすることができる。このワークスペースを提供する形態(デバイス)としては、プログラム(アブリケーション)を実行する情報処理装置、予めその機能が組み込まれた電子ホワイトボード、および携帯電話やタブレットPC等が考えられる。
本明細書において「オブジェクト」とは、ワークスペース上に追加され得るデータ全般を意味する。このオブジェクトがユーザの操作対象単位となる。このオブジェクトの一例としては、図形、テキストドキュメント、ワークシートのセル、画像、音声、ログ、タグ、しおり、注釈、ユーザ情報などが挙げられる。
本明細書において「ビュー」または「ビュー表示」とは、ワークスペース上に仮想的に配置されるオブジェクトを視覚化(または、可視化)する処理またはその処理結果を意味する。すなわち、「ビュー」または「ビュー表示」は、ワークスペース上のオブジェクトをレンダリング(描画)することで得られる。ワークスペース上で作業するユーザを支援するために、このビュー表示の内容は、原則としてリアルタイムで更新される。なお、このようなビューを表示するための処理においては、表示倍率、表示位置、オブジェクトの表示タイプ(例えば、ワークスペース上に挿入された外部リングのオブジェクトを示すアイコンを、小サイズおよび大サイズのいずれで表示するか等)、付与情報の表示有無(例えば、表示対象のオブジェクトに関連して各オブジェクトを入力したユーザの名前などを表示するか否か等)、表示属性の選択や有効/無効切り替え、といった各種のパラメータを設定することができる。
本明細書において「シナリオ」または「シナリオ表示」とは、ワークスペース上における作業結果および/または途中経過の内容を説明するための表現形態を意味する。後述するように、本実施の形態においては、「シナリオ」は、ワークスペース上のオブジェクトを参照(リンク)としてページ単位に区切られて記述されたものが、1つ以上集まったものである。なお、複数のページを含むシナリオでは、その表現順序が予め定められている。このページ単位で記述された各々を、全体を示す「シナリオ」との対比で、「シナリオページ」とも称す。すなわち、「シナリオ」は、1つ以上の順序付けされた表示単位である「シナリオページ」を含む。言い換えれば、「シナリオ」では、その中に含まれる1つ以上の「シナリオページ」が予め設定された順序で切り替え表示される。このように、本実施の形態に従う「シナリオ」を用いることで、対象のワークスペースにおける作業内容を知らない人に対して、有効なプレゼンテーション等を行なうことができる。
[概要]
本実施の形態に従うワークスペースでは、ユーザが実際に作業を行なう仮想空間とは独立して、主としてプレゼンテーションを行なうための「シナリオ」の作成および再生を行なうことができる。このシナリオは、ワークスペース上のオブジェクトに関連付けられているが、ワークスペースとは独立して提供される。そのため、ユーザは、ワークスペース上の作業結果を維持したまま、作業内容を知らない人に対して、有効なプレゼンテーション等を行なうことができる。
本実施の形態に従うワークスペースでは、ユーザが実際に作業を行なう仮想空間とは独立して、主としてプレゼンテーションを行なうための「シナリオ」の作成および再生を行なうことができる。このシナリオは、ワークスペース上のオブジェクトに関連付けられているが、ワークスペースとは独立して提供される。そのため、ユーザは、ワークスペース上の作業結果を維持したまま、作業内容を知らない人に対して、有効なプレゼンテーション等を行なうことができる。
さらに、このシナリオ再生中において、ユーザがシナリオ中のオブジェクトに対して何らかの編集操作を行なった場合には、その編集操作の内容を元のワークスペース上のオブジェクトに反映させることもできる。
特に、本実施の形態に従うワークスペースでは、複数のページからなるシナリオが定義されている場合に、当該シナリオに含まれる一部のページを共有し、かつ、当該シナリオに含まれるページとは独立したページを含む別のシナリオを追加することができる。
[全体構成]
図1は、この発明の実施の形態に従うワークスペースを提供するための情報処理システムの概略構成図である。
図1は、この発明の実施の形態に従うワークスペースを提供するための情報処理システムの概略構成図である。
図1を参照して、本実施の形態に従う情報処理システムは、ネットワークNWを介して互いにデータ通信可能に接続された複数の情報処理装置PC1〜PCN(以下、単に「処理装置PC」とも総称する。)とサーバ装置SRVとを含む。すなわち、図1には、いわゆるサーバ・クライエント構成の情報処理システムを例示する。あるいは、いわゆるピア・トゥ・ピア構成を採用することもできる。
なお、本発明に係る情報処理装置および情報処理システムは、単独の処理装置PCとしても実現/提供されるため、必ずしも図1に示すような複数の処理装置PCおよびサーバ装置SRVが必要ではないが、複数のユーザからなるグループによる共同作業を提供する場合には、図1に示すような情報処理システムが好適である。
典型的に、図1に示す情報処理システムにおいては、各処理装置PCは、サーバ装置SRVを介して、ワークスペースを提供するための情報(後述する、ワークスペース(WS)情報)を共有することで、各処理装置PCを利用するユーザにワークスペースを同期して提供できる。すなわち、いずれかの処理装置PC上のユーザがワークスペース上に何らかのオブジェクトを追加すると、当該追加されたオブジェクトが他の処理装置PC上に表示されるワークスペースにも反映される。このようにして、ユーザ間で情報の共有化が図られる。
なお、上述したように、単独の処理装置PCを用いて具現化するような場合には、当該処理装置PCにワークスペース情報が格納されてもよい。
サーバ装置SRVは、主として、処理装置PC1〜PCNの間でのデータ共有を制御する。
[ハードウェア構成]
図2は、この発明の実施の形態に従う情報処理装置の概略のハードウェア構成を示す模式図である。
図2は、この発明の実施の形態に従う情報処理装置の概略のハードウェア構成を示す模式図である。
図2を参照して、本実施の形態に従う情報処理装置の典型例である処理装置PCは、オペレーティングシステムを含む各種プログラムを実行するCPU(Central Processing Unit)2と、CPU2でのプログラムの実行に必要なデータを一時的に記憶する記憶部としてのメモリ14と、CPU2で実行されるプログラムを不揮発的に記憶するハードディスク(HDD)12とを含む。このようなプログラムは、CD−ROM(Compact Disk-Read Only Memory)ドライブ16またはフレキシブルディスク(FD:Flexible Disk)ドライブ18によって、それぞれCD−ROM16aまたはフレキシブルディスク18aなどから読取られる。
CPU2は、キーボード、マウス、タブレットなどからなる入力装置10を介してユーザによる操作要求を受取るとともに、プログラムの実行によって生成される画面出力を出力装置6へ出力する。
出力装置6は、対象のワークスペースに係るビューやシナリオをユーザに表示するためのデバイスであり、典型的には、モニターやプロジェクターなどからなる。
また、CPU2は、LANカードなどからなる通信インターフェイス8を介して、他の処理装置PCやサーバ装置SRVとの間でデータ通信を行なう。なお、これらの部位は、内部バス4を介して互いに接続される。
また、本実施の形態に従うサーバ装置SRVについても情報処理装置であり、そのハードウェア構成についても、図2に示す処理装置PCのハードウェア構成と同様であるので、詳細な説明は繰返さない。
[ワークスペースの概要]
次に、図3〜図6を参照して、本実施の形態に従うワークスペースの操作例について説明する。
次に、図3〜図6を参照して、本実施の形態に従うワークスペースの操作例について説明する。
図3は、この発明の実施の形態に従うワークスペースの一例を模式的に示す図である。図4は、図3に示すワークスペースに対応するワークスペース(WS)情報300の内容の一例を示す図である。
本実施の形態に従うワークスペース上には、各種のオブジェクトを追加したり、追加したオブジェクトに対して編集や削除したりすることができる。図3には、一例として、オブジェクトOBJ1〜OBJ9が作成済であるワークスペースのある状態が示されている。図3において、オブジェクトOBJ1は「画像オブジェクト」であり、オブジェクトOBJ2,OBJ4〜OBJ9は「テキストオブジェクト」であり、オブジェクトOBJ3は「線オブジェクト」である。このように、オブジェクトの種類としては、電子的に取扱えるデータであれば特に限定されることはないが、一例として、画像や文書といった外部ファイル以外に、図形や線といったベクトルデータ、手書きによる自由入力などを受付可能である。
なお、図3に示すワークスペースは、概念的に表現されたものであり、実際には、ユーザ操作に応じた範囲の領域(図3には、ビュー範囲VIEW1およびVIEW2を一例として示す)に含まれる内容が各処理装置PC上にビュー表示(レンダリング)される。すなわち、ワークスペースの一部または全部の内容がユーザに向けて表示される。
これらのオブジェクトOBJ1〜OBJ9およびビュー範囲は、図4に示すようなWS情報300として定義される。本実施の形態に従うワークスペースおよびワークスペースに含まれる各オブジェクトを定義するためのWS情報300は、代表的に、XMLなどのマークアップ言語で記述される。このようなマークアップ言語を採用することで、タグ(<>と</>とで囲まれる文字に与える属性)を自在に設定することができるため、システムの拡張性を高めることができる。
図4を参照して、WS情報300は、ワークスペースを特定するためのワークスペースタグ302と、ビュー表示を特定するための記述304と、オブジェクトOBJ1〜OBJ5をそれぞれ定義する記述311〜315とを含む。
ワークスペースタグ302には、典型的に、ワークスペースの識別番号(space id)、および当該ワークスペースの作成者(Author)などの情報が格納される。なお、ワークスペースタグ302には、文字エンコーディング属性などを含めてもよい。
記述304には、ビュー表示を特定するための情報が格納される。より具体的には、<object>タグおよび</object>タグ、ならびに<point x= y= />タグによって、ビュー範囲の中心座標が指定される。また、<zoom_scale>タグおよび</zoom_scale>タグによって、表示倍率(デフォルトの表示サイズに対する拡大/縮小サイズの比)が指定される。
各オブジェクトは、<object>タグで始まり、</object>タグで終了する記述によって定義される。これらの記述311〜315の各々には、各オブジェクトの識別番号(object id)、各オブジェクトの種類に応じた属性(image:画像オブジェクト、text:テキストオブジェクト、line:線オブジェクトなど)、各オブジェクトまたは各オブジェクトを構成する要素についてのワークスペース上の座標位置(x= ,y= )、外部ファイルのリンクアドレス(src)、拡大縮小率(scale)などが含まれる。すなわち、記述311〜315の各々には、オブジェクトに対応付けられた識別情報、およびオブジェクトの実体が定義される。
より具体的には、<object id>タグには、各オブジェクトを一意に特定する識別番号が定義される。また、<point>タグには、各オブジェクトまたは各オブジェクトを構成する要素についてのワークスペース上の座標位置が定義される。<src>タグには、関連付けされた外部ファイルのリンクアドレスが定義される。
例えば、オブジェクトOBJ1に対応する記述311には、<object id>タグにおいて、識別番号が「1」であることが定義され、<image>タグにおいて、イメージオブジェクトであることが定義される。さらに、<image>タグ内の属性において、x='60' y='180'の位置に配置されることが定義され、<src>タグにおいて、外部ファイルを特定する「fuji.jpg」が定義され、<scale>タグにおいて、オブジェクトOBJ1の表示倍率が「0.25」倍であることが定義される。
なお、画像オブジェクトなどについては、WS情報300内の記述とは別に外部ファイル(参照先のファイル)が用意されている。このような画像オブジェクトについては、ワークスペース上で、その内容を参照したり表示したりすることが可能である。
なお、図4では、1つのWS情報300を用いて、ワークスペースを構成する例について例示したが、複数のファイルを用いて同等の情報を定義してもよい。例えば、各オブジェクトが定義されたファイルを、リレーショナルデータベースなどを用いて互いに関連付けた構成などを採用することができる。すなわち、オブジェクト単位で取扱えるデータ構造であれば、図4に示すデータ構造に限られず、任意のデータ構造を採用することができる。このWS情報300の内容に基づいて、ワークスペースの描画処理や外部出力が行われる。
また、図4に示す記述304の内容は、ある処理装置PC上でユーザが拡大縮小やスクロール等のビュー範囲に対する変更を操作することで随時更新される。
さらに、処理装置PC上でユーザが操作を行なうことで、ワークスペースの新規作成、作成したワークスペースの書き出し、既作成のワークスペースの読み込みなどが可能である。
図5は、この発明の実施の形態に従う処理装置PC上における初期操作を説明するための図である。図5を参照して、典型的な操作例として、処理装置PCの出力装置6には、初期的に、本実施の形態に従うワークスペースを提供するビュー表示ウィンドウ150が表示される。このビュー表示ウィンドウ150には、ワークスペースの内容を表示するための領域158に加えて、その上部には、「ファイル」ボタン152、「操作」ボタン154、「表示」ボタン156が表示される。ユーザが、この「ファイル」ボタン152をマウスなどによって選択すると、WS情報に対する操作を行なうためのダイアログ152aが表示される。このダイアログ152aのうち、「新規WSを開く」が選択されると、新たなワークスペースが作成される。また、「WSを保存する」が選択されると、現在作成中のワークスペースがWS情報として保存される。さらに、「WSを開く」が選択されると、保存されている既作成のWS情報を選択的に読み込んで、ワークスペースを表示する。
図6は、この発明の実施の形態に従う処理装置PC上のユーザインターフェイスの一例を示す図である。図6を参照して、処理装置PCの出力装置6にワークスペースが表示されると、ビュー表示ウィンドウ150に加えて、ワークスペース上におけるビュー範囲の位置を示す位置表示ウィンドウ140が表示される。この位置表示ウィンドウ140には、ワークスペース全体とビュー範囲VIEWとの相対的な位置関係が模式的に示される。ユーザが位置表示ウィンドウ140上のビュー範囲VIEWをマウスなどによって移動もしくは変形(リサイズ)すると、それに応じて、ビュー表示ウィンドウ150の領域158内での表示対象となるワークスペースの範囲も変更される。
図6(a)は、図3に示すビュー範囲VIEW1が設定されている場合の表示例を示し、図6(b)は、図3に示すビュー範囲VIEW2が設定されている場合の表示例を示す。図6(a)と図6(b)とを比較すると、ビュー表示ウィンドウ150の領域158は同一サイズであるので、ワークスペース上に設定されるビュー範囲を小さく(狭く)するほど、ワークスペースの内容が拡大表示されることになる。したがって、例えば、ワークスペースの全体を概観したい場合などには、より広い範囲をビュー範囲として設定し、反対に、特定のオブジェクトに着目したい場合などには、より狭い範囲をビュー範囲として設定することになる。
[ワークスペースにおける編集機能]
図7は、この発明の実施の形態に従う処理装置PC上における編集操作を説明するための図である。図8は、図7に示す編集操作に対応するWS情報300の内容の一例を示す図である。図9は、この発明の実施の形態に従う処理装置PC上におけるオブジェクトの選択操作の別形態を示す図である。
図7は、この発明の実施の形態に従う処理装置PC上における編集操作を説明するための図である。図8は、図7に示す編集操作に対応するWS情報300の内容の一例を示す図である。図9は、この発明の実施の形態に従う処理装置PC上におけるオブジェクトの選択操作の別形態を示す図である。
ユーザがワークスペース上の何らかのオブジェクトに対して変更や削除といった編集操作を行なう際には、典型的に、操作対象となるオブジェクトを選択した上で、処理内容を指示する。このオブジェクトの選択の方法としては、対象のオブジェクトを直接選択する方法、および所望の範囲を指定することで、当該範囲内に存在するオブジェクトを選択とする方法などがある。また、連続的に複数回に亘ってオブジェクトを選択(追加)できるようにしてもよい。
一例として、ユーザがワークスペース上に配置されたオブジェクトOBJ2を移動する場合の操作について例示する。図7(a)に示すように、ユーザは、表示されるカーソルCRSを対象オブジェクト(オブジェクトOBJ2)上に配置した上で、マウスに対するクリック操作(典型的には、左クリック)を行なうことで、オブジェクトOBJ2を直接選択する。あるいは、図7(b)に示すように、ユーザは、表示されるカーソルCRSを対象オブジェクト(オブジェクトOBJ2)上に配置した上で、マウスに対するクリック操作(典型的には、右クリック)を行なうことで操作コマンド一覧を示すダイアログを表示させ、このダイアログ上で「選択」を指定することで、オブジェクトOBJ2を直接選択する。
このようにオブジェクトOBJ2が選択された状態で、図7(c)に示すように、ユーザがドラッグ操作やカーソル操作などを行なうことによって、オブジェクトOBJ2を移動させることができる。
このとき、図7(c)に示すようなオブジェクトOBJ2に対する移動指示に伴って、図8(a)に示すようなWS情報300に定義されていたオブジェクトOBJ2に係る記述312は、図8(b)に示すように、その座標位置(x= ,y= )の値が変更された記述312#に更新される。すなわち、図8(a)の記述312においては、その配置される座標位置が(x='300' y='240')と定義されていたものが、図8(b)の記述312#においては、座標位置が(x='320' y='160')に変更されている。
なお、図7においては、ユーザが対象のオブジェクトを直接的に選択する場合の操作例を示したが、図9に示すように、範囲指定をすることで対象のオブジェクトを間接的に選択するようにしてもよい。
すなわち、図9を参照して、ユーザがマウスに対するクリック操作(典型的には、左クリック)を継続した状態で、オブジェクトOBJ2を含むような範囲をドラッグ操作することで所望の範囲が指定される。この指定された範囲に含まれるオブジェクトが選択される。このように、ユーザは対象のオブジェクトを直接的に選択しなくとも、指定した範囲内にあるオブジェクトを選択するようにすることもできる。
当然のことながら、図7および図9に示したオブジェクトの移動操作の他にも、各種の編集操作が可能である。例えば、オブジェクトの色、形状、内容の変更などが可能である。他にも、オブジェクト同士の連結やリンクやタグなどの属性設定などを採用してもよい。
次に、本実施の形態に従うワークスペースにおける編集操作の一例として、(1)サイズ変更、(2)色変更、(3)属性変更、(4)付与属性表示、(5)表示装飾変更、について、図10〜図15を参照して説明する。
図10は、この発明の実施の形態に従う処理装置PC上における編集前のあるオブジェクトの状態の一例を示す図である。図11は、この発明の実施の形態に従う処理装置PC上における編集操作(サイズ変更)を説明するための図である。図12は、この発明の実施の形態に従う処理装置PC上における編集操作(色変更)を説明するための図である。図13は、この発明の実施の形態に従う処理装置PC上における編集操作(属性変更)を説明するための図である。図14は、この発明の実施の形態に従う処理装置PC上における編集操作(付与属性表示)を説明するための図である。図15は、この発明の実施の形態に従う処理装置PC上における編集操作(表示装飾変更)を説明するための図である。
まず、図10(a)に示すように、ワークスペース上に、オブジェクトOBJ2が配置されているものとする。この場合、WS情報300は、図10(b)に示すような記述312を含む。
(1)サイズ変更
ユーザがオブジェクトOBJ2に対してそのサイズを変更(この例では、拡大)するような操作を行なうと、図11(a)に示すように、オブジェクトOBJ2はそのサイズが拡大されたオブジェクトOBJ2Aに更新される。
ユーザがオブジェクトOBJ2に対してそのサイズを変更(この例では、拡大)するような操作を行なうと、図11(a)に示すように、オブジェクトOBJ2はそのサイズが拡大されたオブジェクトOBJ2Aに更新される。
このようなサイズ変更は、典型的には、WS情報300中の拡大縮小率属性(scaleタグ)によって実現される。すなわち、図11(b)に示すように、オブジェクトOBJ2に対応する記述312は、それに対して<scale>タグおよび</scale>タグが追加された記述312Aに更新される。この<scale>タグおよび</scale>タグによって付与される拡大縮小率(scale)の値は、ユーザ操作に応じた値に設定される。
(2)色変更
ユーザがオブジェクトOBJ2に対してその色を変更(この例では、黒からグレイへの変更)するような操作を行なうと、図12(a)に示すように、オブジェクトOBJ2はその表示される色が変更されたオブジェクトOBJ2Bに更新される。
ユーザがオブジェクトOBJ2に対してその色を変更(この例では、黒からグレイへの変更)するような操作を行なうと、図12(a)に示すように、オブジェクトOBJ2はその表示される色が変更されたオブジェクトOBJ2Bに更新される。
このようなサイズ変更は、典型的には、WS情報300中の色属性(colorタグ)によって実現される。すなわち、図12(b)に示すように、オブジェクトOBJ2に対応する記述312は、それに対して<color>タグおよび</color>タグが追加された記述312Bに更新される。この<color>タグおよび</color>タグによって付与される色の(color)の値は、ユーザ操作に応じたもの(この例では、gray)となる。
(3)属性変更
ユーザがオブジェクトOBJ2に対してその属性を変更(この例では、表示属性として囲み線の付与)するような操作を行なうと、図13(a)に示すように、オブジェクトOBJ2はその周囲に囲み線が付与されたオブジェクトOBJ2Cに更新される。
ユーザがオブジェクトOBJ2に対してその属性を変更(この例では、表示属性として囲み線の付与)するような操作を行なうと、図13(a)に示すように、オブジェクトOBJ2はその周囲に囲み線が付与されたオブジェクトOBJ2Cに更新される。
このようなサイズ変更は、典型的には、WS情報300中の属性値(borderタグ)によって実現される。すなわち、図13(b)に示すように、オブジェクトOBJ2に対応する記述312は、それに対して<border>タグが追加された記述312Cに更新される。この<border>タグ内には、その囲み線の線の太さを記述するwidth属性が定義され、このwidth属性の値は、ユーザ操作に応じた値、あるいはデフォルト値となる。
(4)付与属性表示
本実施の形態に従うワークスペースにおいては、オブジェクトOBJ2に対して属性としてコメントを付与することができる。このとき、このようにオブジェクトに付与した属性をワークスペース上に表示するように設定することもできる。具体的な一例として、ユーザが、ワークスペース上のオブジェクトOBJ2に関連付けて、「重要」というコメントを付与した場合を考える。このとき、このコメントを付与したユーザ名やその時刻などが付帯的な属性としてWS情報300に記述される。さらに、ユーザが、これらのコメントおよび付帯的な属性の表示を有効化することで、図14(a)に示すように、コメントおよびその付与された時刻が表示されたオブジェクトOBJ2Dに更新される。
本実施の形態に従うワークスペースにおいては、オブジェクトOBJ2に対して属性としてコメントを付与することができる。このとき、このようにオブジェクトに付与した属性をワークスペース上に表示するように設定することもできる。具体的な一例として、ユーザが、ワークスペース上のオブジェクトOBJ2に関連付けて、「重要」というコメントを付与した場合を考える。このとき、このコメントを付与したユーザ名やその時刻などが付帯的な属性としてWS情報300に記述される。さらに、ユーザが、これらのコメントおよび付帯的な属性の表示を有効化することで、図14(a)に示すように、コメントおよびその付与された時刻が表示されたオブジェクトOBJ2Dに更新される。
このようなコメントの付与は、具体的には、WS情報300中の付与属性(commentタグ)によって実現される。すなわち、図14(b)に示すように、オブジェクトOBJ2に対応する記述312は、それに対して<comment>タグおよび</comment>タグが追加された記述312Dに更新される。この<comment>タグおよび</comment>タグによって囲まれる範囲には、コメントの内容である「重要」が記述される。
さらに、記述312Dにおいては、上記のコメントに係る付帯的な属性は、<input>タグを用いて定義される。具体的には、その属性としてdate属性およびuser属性が定義される。date属性には、対応するコメントが追加された時刻が記述され、user属性には、対応するコメントを追加したユーザのIDが記述される。なお、これらの属性は、コメントの追加に応答して、システム側が自動的に付与するようにすることが好ましい。
さらに、記述312Dにおいては、これらの付帯的な属性および追加されたコメントの表示を有効にするか否かを示す<display>タグが記述される。この<display>タグは、付帯的な属性についての表示の有効/無効を定義するためのinput属性、および追加されたコメントについての表示の有効/無効を定義するためのcomment属性を含む。各属性については、有効を示す「ON」、または無効を示す「OFF」が記述される。
図14(b)に示す例では、input属性およびcomment属性がいずれも「ON」に設定されているので、図14(a)に示すように、追加されたコメントとともに、その付帯的な属性がワークスペース上に表示される。
(5)表示装飾変更
ユーザがオブジェクトOBJ2に対してその表示装飾を変更(この例では、点滅表示に設定)するような操作を行なうと、図15(a)に示すように、オブジェクトOBJ2は所定周期で点滅表示するオブジェクトOBJ2Eに更新される。
ユーザがオブジェクトOBJ2に対してその表示装飾を変更(この例では、点滅表示に設定)するような操作を行なうと、図15(a)に示すように、オブジェクトOBJ2は所定周期で点滅表示するオブジェクトOBJ2Eに更新される。
このような表示装飾変更は、典型的には、表示装飾属性(animationタグ)によって実現される。すなわち、図15(b)に示すように、オブジェクトOBJ2に対応する記述312は、それに対して<animation>タグが追加された記述312Eに更新される。この<animation>タグ内には、その表示装飾の内容を示すtype属性として点滅を示す「BLINKING」が定義される。このtype属性の値は、ユーザ操作に応じたものとなる。
[ワークスペースにおけるシナリオ作成機能]
次に、図16〜図29を参照して、本実施の形態に従うワークスペースにおけるシナリオ作成機能について説明する。
次に、図16〜図29を参照して、本実施の形態に従うワークスペースにおけるシナリオ作成機能について説明する。
(1)ユーザインターフェイス
図16は、この発明の実施の形態に従う処理装置PC上におけるシナリオ機能の開始操作を説明するための図である。図17〜図23は、この発明の実施の形態に従うワークスペースにおけるシナリオ作成機能の操作を説明するための図である。
図16は、この発明の実施の形態に従う処理装置PC上におけるシナリオ機能の開始操作を説明するための図である。図17〜図23は、この発明の実施の形態に従うワークスペースにおけるシナリオ作成機能の操作を説明するための図である。
まず、本実施の形態に従うシナリオ機能は、ビュー表示ウィンドウ150上において、ユーザが「表示」ボタン156を選択することで表示されるダイアログ156aに含まれる「シナリオ」をカーソルCRSなどで選択することで、開始される。このシナリオ機能では、ユーザが作業を行なっているワークスペースを定義するWS情報300とは独立したシナリオ情報400が生成されるとともに、ユーザ操作に応じてその内容が追加・更新される。このシナリオ情報400では、シナリオもしくはシナリオページに対応付けて、ワークスペース上の特定のオブジェクトが指定される。
図16に示すようにダイアログ156aの「シナリオ」がカーソルCRSなどによって選択されると、処理装置PCの出力装置6には、図17に示すような画面が表示される。図17を参照して、シナリオ機能の実行中には、シナリオの作成・再生・変更反映などを制御するための制御ウィンドウ160が表示される。この制御ウィンドウ160には、複数のシナリオを選択するためのタブ161〜163が表示される。なお、図17に示す例では、3つのシナリオを作成できるように、「シナリオ1」、「シナリオ2」、「シナリオ3」とタイトル付されたタブ161〜163が表示されているが、この選択可能なシナリオの数は3つの限定されることなく、操作性などを考慮して適宜設計することができる。あるいは、1つのシナリオのみを作成するようにした場合には、タブ表示を省略してもよい。
タブ161〜163のいずれかがカーソルCRSなどで選択されると、対応のシナリオについての再生、設定、編集を指示するボタンなどが、シナリオページ毎に区別して表示される。より具体的には、例えば、シナリオ1に対応するタブ161が選択されると、シナリオ1に含まれるシナリオページ1〜3にそれぞれ対応付けて、各種ボタンが配置された領域171〜173が表示される。なお、本実施の形態に従うシナリオページは、WS情報300の内容を関連付けて指定することでその実体を定義するため、シナリオページを「リンク」とも表す。そして、領域171には、対応するシナリオページの再生を指示する再生ボタン171aと、対応するシナリオページの編集を指示する編集ボタン171bと、対応するシナリオページの設定を指示する設定ボタン171cとが選択可能に表示される。領域171および172についても、同様に、再生ボタン172aおよび173aと、対応するシナリオページの編集を指示する編集ボタン172bおよび173bと、対応するシナリオページの設定を指示する設定ボタン172cおよび173cとがそれぞれ選択可能に表示される。
さらに、制御ウィンドウ160には、シナリオの再生中などに現在のワークスペースにおける対応するオブジェクトの状態を表示させるためのオリジナル表示ボタン165と、シナリオ再生中に他のオブジェクトを表示させるための他オブジェクト表示ボタン166と、後述するワークスペースにおけるシナリオ多面化機能を実行するためのシナリオ詳細編集モードボタン174とが選択可能に表示される。
まず、何らかのシナリオページを作成する手順としては、ユーザは、まず、ビュー表示ウィンドウ150にワークスペース上の説明対象となるべき内容を表示させる。すなわち、ユーザは、ワークスペースの所望の領域を所望のサイズ(倍率)でビュー表示させる。図17に示す例では、ワークスペース上のオブジェクトOBJ9がビュー表示されている。そして、図18に示すように、制御ウィンドウ160の領域171内の設定ボタン171cをユーザがカーソルCRSなどによって選択することで、当該選択時点におけるビュー表示がシナリオ1の第1番目のシナリオページとして保存される。すなわち、ワークスペースの一部または全部の内容の表示中に、ユーザ操作に応答して、表示中のオブジェクトがシナリオに含まれる特定のオブジェクトとしてシナリオ情報400に記録される。なお、シナリオページが保存済であることを示すために、対応する領域171の表示態様を他の領域とは異ならせることが好ましい。すなわち、図18には、シナリオ1の第1番目のシナリオページに対応する領域171がハッチング表示されている。
以下、同様の手順に従って、シナリオ1の第2番目のシナリオページを作成する場合には、ビュー表示ウィンドウ150にワークスペース上の2番目に説明対象となるべき内容を表示させる。そして、図19に示すように、制御ウィンドウ160の領域172内の設定ボタン172cをユーザがカーソルCRSなどによって選択することで、当該選択時点におけるビュー表示がシナリオ1の第2番目のシナリオページとして保存される。
さらに、本実施の形態に従うワークスペースにおいては、元のワークスペースのある状態に対してプレゼンテーション用の説明などを付加したり、オブジェクトの元の表示態様とは異なる表示態様で表示したりすることができる。すなわち、ユーザ操作に応答して、シナリオ情報400において指定される特定のオブジェクトに対して表示属性を付与することが可能である。なお、表示属性には、後述するように、オブジェクトの表示サイズ、表示色(オブジェクト色、背景色、境界線色等)、表示装飾(点滅表示や縁取り等)、表示有無などを含む。さらに、表示属性には、オブジェクト種類(画像およびテキストのいずれであるか)、拡大縮小率、線太さ、プロパティ表示有無(入力者や付与コメント等を表示させるか否か)といった内容を含み得る。
たとえば、上述のように作成したシナリオ1のシナリオページ2に対して、何らかの編集操作を加える場合には、図20に示すように、制御ウィンドウ160の領域172内の編集ボタン172bをユーザがカーソルCRSなどによって選択することで、対応するシナリオページに対する編集が可能となる。具体的には、編集ボタン172bが選択されることで、シナリオページ編集ウィンドウ182が表示される。このとき、ユーザによる編集操作を指示するためのアイコン群(図示しない)などが表示されてもよい。このシナリオページ編集ウィンドウ182においては、表示される各オブジェクトに対して、色、サイズ、属性等を自在に変更することができる。
一例として、図21には、シナリオ1のシナリオページ2に含まれるオブジェクトOBJ4の背景色が変更された状態を示す。なお、各オブジェクトに対する編集操作については、ワークスペース上のオブジェクトに対する編集操作と同様であり、これらの操作例については上述したので、詳細な説明は繰返さない。なお、シナリオページ編集ウィンドウ182上における編集操作の内容は、決定ボタン186が選択されるとシナリオ情報400に反映され、キャンセルボタン188が選択されると取消される。
さらに、図22には、上述のシナリオ1のシナリオページ2と同様の内容のシナリオページ3を作成した後、別の編集操作を行なった例を示す。すなわち、図22に示すシナリオページ編集ウィンドウ182には、図21に示すシナリオページ編集ウィンドウ182の内容に対して、さらにオブジェクトOBJ4に関連付けたコメントオブジェクト192が追加されるとともに、オブジェクトOBJ5が非表示に設定されている状態を示す。
さらに、図23には、WS情報300に定義されたオブジェクトとは独立した、シナリオ情報400のみに定義されるオブジェクトを追加した例を示す。すなわち、図23に示すシナリオページ編集ウィンドウ182には、図22に示すシナリオページ編集ウィンドウ182の内容に対して、さらに(図形)オブジェクトOBJ21が追加されている状態を示す。
なお、図16〜図23に示すユーザインターフェイスは一例であり、上述のような操作が可能であれば、どのようなユーザインターフェイスを用いてもよい。たとえば、上述の例では、制御ウィンドウ160内にシナリオページ毎に各種ボタンが表示される例を示したが、「次へ」ボタンおよび「戻る」ボタンを表示させて、シナリオページを相対的に指示可能にするとともに、現在選択中のシナリオページに対して、再生、設定、編集などを指示可能にしてもよい。また、一旦設定したシナリオページを削除するための「解除」ボタンなどを選択可能に表示してもよい。
(2)データ構造
図24〜図29は、図17〜図23に示すシナリオ作成機能の操作に応じて生成されるシナリオ情報400の内容の一例を示す図である。なお、以下の説明では、シナリオ単位でシナリオ情報400が生成される例を示すが、1つのシナリオ情報400に複数のシナリオを含めるようにしてもよい。
図24〜図29は、図17〜図23に示すシナリオ作成機能の操作に応じて生成されるシナリオ情報400の内容の一例を示す図である。なお、以下の説明では、シナリオ単位でシナリオ情報400が生成される例を示すが、1つのシナリオ情報400に複数のシナリオを含めるようにしてもよい。
図24には、シナリオ1に関連付けてシナリオページが未作成の状態(初期状態)における、シナリオ情報400の内容の一例を示す。この図24に示すシナリオ情報400は、図17に示すシナリオページが未だ作成されていない状態に対応する。図24に示すように、シナリオ情報400は、一例として、XMLなどのマークアップ言語で記述される。
シナリオ情報400は、対象のシナリオを特定するためのシナリオ(scenario)タグ402を含む。このシナリオタグ402には、典型的に、対象のシナリオの識別番号(id)、および当該シナリオの作成者(Author)などの情報が格納される。なお、シナリオタグ402には、文字エンコーディング属性などを含めてもよい。
次に、図16に示すように、ワークスペース上のオブジェクトOBJ9を含むビュー表示に対応してシナリオページ1の作成が指示されると、シナリオ情報400は図25に示すような内容に更新される。
図25に示すシナリオ情報400においては、図24に示すシナリオ情報400に対して、シナリオページ1を定義する記述410が追加されている。この記述410は、シナリオページ1に含まれるオブジェクトを特定するための情報を含む。より具体的には、<link>タグおよび</link>タグによって、いずれのシナリオページの内容であるかが指定される。すなわち、<link>タグの属性として、対象のシナリオの識別番号(id)が定義される。さらに、<link>タグおよび</link>タグ内には、対象とすべきオブジェクトについての参照情報411である、<target_object>タグおよび</target_object>タグが記述される。この<target_object>タグには、その属性値として、対象オブジェクトの識別番号(object id)を示す識別番号(id)が定義される。すなわち、シナリオ情報400は、WS情報300における特定のオブジェクトの定義内容と関連付けるための参照情報を含む。図25に示すシナリオ情報400においては、シナリオページ1に含まれるオブジェクトOBJ9を示す識別情報として「id=9」が定義されている。さらに、後述するように、<target_object>タグおよび</target_object>タグ内には、対応するオブジェクトについての、シナリオページ編集ウィンドウ182上における編集操作の内容(すなわち、表示属性)が記述される。
次に、図19に示すオブジェクトOBJ4〜OBJ6を含むビュー表示がシナリオページとして作成された場合のシナリオ情報400の内容を図26に示す。図26に示すシナリオ情報400においては、図25に示すシナリオ情報400に対して、シナリオページ2を定義する記述420が追加されている。この記述420は、シナリオページ2に含まれるオブジェクトOBJ4〜OBJ6を特定するための情報を含む。すなわち、上述したような<target_object>タグおよび</target_object>タグを用いて、シナリオページ2に含まれる各オブジェクトについての参照情報421,422,423が定義される。
その後、図21に示すように、シナリオページ2に含まれるオブジェクトOBJ4の背景色の(無色から赤色への)変更が指示されると、シナリオ情報400は、図27に示すような内容に更新される。すなわち、オブジェクトOBJ4に対応する参照情報421に対して、シナリオページにおける表示属性を示す<color>タグおよび</color>タグが記述される。この<color>タグおよび</color>タグ内には、表示属性として、変更後の色を示す「red」が定義されている。すなわち、<color>タグおよび</color>タグは、対応のオブジェクトのシナリオページにおける属性がワークスペース上の属性とは異なっていることを示す。
さらに、図23に示すように、オブジェクトOBJ4〜OBJ6を含むシナリオページ3が作成された後、当該シナリオページ3に対して、オブジェクトOBJ4に関連付けたコメントオブジェクト192の追加、およびオブジェクトOBJ5の非表示化が指示されると、シナリオ情報400は、図28に示すような内容に更新される。
図28に示すシナリオ情報400においては、図27に示すシナリオ情報400に対して、シナリオページ3を定義する記述430が追加されている。この記述430は、シナリオページ3に含まれるオブジェクトOBJ4〜OBJ6を特定するための情報を含む。すなわち、上述したような<target_object>タグおよび</target_object>タグを用いて、シナリオページ3に含まれる各オブジェクトについての参照情報431,432,433が定義される。
さらに、上述の編集操作に対応して、参照情報431は、表示属性として、シナリオページにおける表示属性を示す<color>タグおよび</color>タグ、コメントの内容を示す<comment>タグおよび</comment>タグ、およびコメントの表示を有効にするか否かを示す<display>タグを含む。<color>タグおよび</color>タグ内には、変更後の色を示す「red」が定義されている。また、<comment>タグおよび</comment>タグ内には、コメントの内容である「これが結論」が記述されている。さらに、<display>タグには、コメントの表示が有効であることを示す「ON」が記述されている。
また、参照情報432は、対応のオブジェクトの表示を有効にするか否かを示す<display_flag>タグおよび</display_flag>タグを含む。この<display_flag>タグおよび</display_flag>タグ内には、オブジェクトOBJ5の非表示化の指示に対応して、非表示であることを示す「OFF」が定義されている。
図29に示すシナリオ情報400においては、図28に示すシナリオ情報400に対して、オブジェクトOBJ21を定義する記述434が追加されている。この記述434は、シナリオ用のオブジェクトであることを示す<scenario_object>タグおよび</scenario_object>タグを含み、<scenario_object>タグには、オブジェクトの識別番号(id)が属性として付加されている。さらに、この<scenario_object>タグは、対象のオブジェクトの色を定義するための<color>タグおよび対象のオブジェクトに付加すべきテキストを定義するための<text>タグを含む。
このように、シナリオを定義するシナリオ情報400においては、各オブジェクト自体の定義に代えて、ワークスペースを定義するWS情報300におけるオブジェクトの定義を参照するように記述される。そのため、シナリオの作成後に、ワークスペース上のオブジェクトに何らかの編集操作がなされたとしても、当該編集後の状態がシナリオに動的に反映される。また、シナリオ情報400においては、<link>タグおよび</link>を用いることで、互いに独立した表示単位(シナリオページ)毎に、特定のオブジェクトを指定することが可能である。
[ワークスペースにおけるシナリオ再生機能]
次に、図30〜図37を参照して、本実施の形態に従うワークスペースにおけるシナリオ再生機能について説明する。
次に、図30〜図37を参照して、本実施の形態に従うワークスペースにおけるシナリオ再生機能について説明する。
(1)ユーザインターフェイス
図30は、この発明の実施の形態に従う処理装置PC上におけるシナリオ機能の開始操作を説明するための図である。図31〜図34は、この発明の実施の形態に従うワークスペースにおけるシナリオ再生機能の操作を説明するための図である。
図30は、この発明の実施の形態に従う処理装置PC上におけるシナリオ機能の開始操作を説明するための図である。図31〜図34は、この発明の実施の形態に従うワークスペースにおけるシナリオ再生機能の操作を説明するための図である。
本実施の形態に従うシナリオ再生機能についても、上述の図16と同様に、ビュー表示ウィンドウ150上において、ユーザが「表示」ボタン156を選択することで表示されるダイアログ156aに含まれる「シナリオ」をカーソルCRSなどで選択することで、開始される。
図31に示すように、シナリオ機能が開始されると、制御ウィンドウ160が表示される。その後、図32に示すように、ユーザが制御ウィンドウ160の領域171内の再生ボタン171aをカーソルCRSなどによって選択することで、シナリオ表示ウィンドウ180が表示されるとともに、シナリオ情報400がロードされる。そして、当該シナリオ情報400の記述内容に基づいて、シナリオ表示ウィンドウ180内にシナリオ1のシナリオページ1が表示される。
続いて、図33に示すように、ユーザが制御ウィンドウ160の領域172内の再生ボタン172aをカーソルCRSなどによって選択することで、シナリオ表示ウィンドウ180の表示は、シナリオ表示ウィンドウ180内にシナリオ1のシナリオページ2に更新される。さらに、図34に示すように、ユーザが制御ウィンドウ160の領域173内の再生ボタン173aをカーソルCRSなどによって選択することで、シナリオ表示ウィンドウ180の表示は、シナリオ表示ウィンドウ180内にシナリオ1のシナリオページ3に更新される。
このように、複数のシナリオページが設定されている場合に、指定されたシナリオページに対応付けられた内容(それに含まれるオブジェクト)が表示される。すなわち、シナリオ情報400に記載の表現順序に従って、各シナリオページの内容が順次描画される。より具体的には、シナリオ情報400に含まれる参照情報に基づいて、WS情報300の定義内容が参照されるとともに、当該参照することで得られた情報(各オブジェクトの定義)に基づいて、各シナリオページの内容が順次描画される。
また、再生されるシナリオページは、シナリオページ作成時に設定した表示属性を反映したものとなっている。すなわち、シナリオ情報400においては指定されるオブジェクトが、WS情報300における対応する定義の内容と、シナリオ情報400において付与されている表示属性とに基づいて描画される。
なお、図31〜図34に示すユーザインターフェイスは一例であり、上述のような操作が可能であれば、どのようなユーザインターフェイスを用いてもよい。たとえば、上述の例では、制御ウィンドウ160内の再生ボタンが選択される毎に、対応するシナリオページが表示される例を示したが、「次へ」ボタンおよび「戻る」ボタンを選択可能に表示させて、表示されるシナリオページを相対的に移動できるようにしてもよい。あるいは、いわゆるスライドショーのように、所定時間毎にシナリオページの表示が順次切換わるようにしてもよい。すなわち、複数のシナリオページが設定されている場合に、各シナリオページに対応付けられた内容(それに含まれる特定のオブジェクト)を所定順序で切替えて表示してもよい。
(2)ビュー表示設定の算出処理
ところで、本実施の形態に従うシナリオ情報400には、シナリオ再生時に表示すべき範囲(ビュー表示設定)を明示的には定義していない。すなわち、図4に示すWS情報300においては、<point>タグおよび<zoom_scale>タグなどを用いて、ビュー表示の中心座標や表示倍率が指定されるのに対して、図25〜図28に示すシナリオ情報400においては、ワークスペース上の表示すべきオブジェクトを特定する参照情報および表示属性などが指定されているに過ぎない。そのため、シナリオ再生時に、どの範囲および表示倍率でビュー表示を出力するべきであるかが明示的に定義されていない。これは、ワークスペース上のオブジェクトに対する変更に動的に対応できるようにするためである。たとえば、ワークスペース上の対象オブジェクトなどのサイズが変更された場合であっても、シナリオ生成時にそのオブジェクトの一部が表示されないといった不具合の発生を回避するためである。
ところで、本実施の形態に従うシナリオ情報400には、シナリオ再生時に表示すべき範囲(ビュー表示設定)を明示的には定義していない。すなわち、図4に示すWS情報300においては、<point>タグおよび<zoom_scale>タグなどを用いて、ビュー表示の中心座標や表示倍率が指定されるのに対して、図25〜図28に示すシナリオ情報400においては、ワークスペース上の表示すべきオブジェクトを特定する参照情報および表示属性などが指定されているに過ぎない。そのため、シナリオ再生時に、どの範囲および表示倍率でビュー表示を出力するべきであるかが明示的に定義されていない。これは、ワークスペース上のオブジェクトに対する変更に動的に対応できるようにするためである。たとえば、ワークスペース上の対象オブジェクトなどのサイズが変更された場合であっても、シナリオ生成時にそのオブジェクトの一部が表示されないといった不具合の発生を回避するためである。
そこで、本実施の形態に従う処理装置PCにおいては、シナリオ再生時に、表示すべきオブジェクトの情報に基づいて、自動的にビュー表示の設定(ビュー表示範囲および表示倍率など)を算出する。以下、このビュー表示の設定の算出処理について例示する。
図35は、この発明の実施の形態に従うシナリオ再生機能におけるビュー表示の設定算出処理を説明するための図である。図36および図37は、図35に示す各オブジェクトの座標情報を取得する処理を説明するための図である。
まず、本実施の形態に従うシナリオ生成時のビュー表示は、所定のアスペクト比をもった方形状となるものとし、この表示範囲を方形上に設定される対角線上の2つの座標点によって定義するものとする。すなわち、図35に示すように、本実施の形態に従うワークスペースを、紙面左上を基準とするX軸およびY軸の2次元平面として定義し、シナリオ再生時のビューとして表示される範囲を開始座標(xs,ys)および終了座標(xe,ye)で囲まれる四角形の範囲とする。また、ビュー表示として有効な大きさをXw×Ywとする。
たとえば、シナリオ情報400に3つのオブジェクトについての参照情報が記述されており、これらのオブジェクトOBJsが図35に示すような位置関係にあったものとする。この図35に示す例においては、オブジェクトOBJsをすべて包含するのに必要なX軸方向の幅はWであり、オブジェクトOBJsをすべて包含するのに必要なY軸方向の高さはHである。すなわち、オブジェクトOBJsのX軸成分の集合をPとし、オブジェクトOBJsのY軸成分の集合をQとすると、幅Wおよび高さHは、以下の演算式で表される。
W=Max(x∈P)−Min(x∈P)
H=Max(y∈Q)−Min(y∈Q)
ビュー範囲が所定のアスペクト比になる必要があるので、X軸方向の幅WおよびY軸方向の高さHのいずれを基準にすべきか、ならびに拡大縮小率(scale)に相当する変倍率Rateが以下の演算式に従って算出される。
H=Max(y∈Q)−Min(y∈Q)
ビュー範囲が所定のアスペクト比になる必要があるので、X軸方向の幅WおよびY軸方向の高さHのいずれを基準にすべきか、ならびに拡大縮小率(scale)に相当する変倍率Rateが以下の演算式に従って算出される。
Rate=Min(Xw/W,Yw/H)
さらに、所定のマージン幅ΔxおよびΔyを考慮して、開始座標(xs,ys)は以下の演算式に従って算出される。
さらに、所定のマージン幅ΔxおよびΔyを考慮して、開始座標(xs,ys)は以下の演算式に従って算出される。
xs=Min(x∈P)−Δx
ys=Min(y∈Q)−Δx
また、終了座標(xe,ye)は以下の演算式に従って算出される。
ys=Min(y∈Q)−Δx
また、終了座標(xe,ye)は以下の演算式に従って算出される。
xe=xs+W×Rate
ye=ys+W×Rate
次に、図36および図37を参照して、上述の図35に示すオブジェクトOBJsの位置関係を取得する方法について説明する。オブジェクトOBJsの位置関係については、(i)オブジェクト自体が元来保持する大きさの情報を利用する場合と、(ii)WS情報300の記述内容に基づく場合とがある。(i)の場合については、典型的には、外部リンクの画像ファイルなどを用いる場合であり、この場合には、参照先の画像ファイル自体にそのサイズが記述される。一方、(ii)の場合については、ワークスペース上において作成された線オブジェクトやテキストオブジェクトの定義などを用いる場合である。あるいは、外部リンクを用いて画像ファイルをインポートしている場合であっても、ワークスペース上の画像サイズを明示的に定義しているなども相当する。
ye=ys+W×Rate
次に、図36および図37を参照して、上述の図35に示すオブジェクトOBJsの位置関係を取得する方法について説明する。オブジェクトOBJsの位置関係については、(i)オブジェクト自体が元来保持する大きさの情報を利用する場合と、(ii)WS情報300の記述内容に基づく場合とがある。(i)の場合については、典型的には、外部リンクの画像ファイルなどを用いる場合であり、この場合には、参照先の画像ファイル自体にそのサイズが記述される。一方、(ii)の場合については、ワークスペース上において作成された線オブジェクトやテキストオブジェクトの定義などを用いる場合である。あるいは、外部リンクを用いて画像ファイルをインポートしている場合であっても、ワークスペース上の画像サイズを明示的に定義しているなども相当する。
たとえば、図37に示すWS情報300に含まれる画像オブジェクトに関する記述311においては、<image>タグ内の属性において、配置座標(x='60' y='180')が定義されるとともに、<size>タグを用いてその表示サイズ(x='80' y='50')が定義されている。したがって、このWS情報300における記述311に基づくと、図36に示すように、x=60〜140およびy=180〜230の範囲に、対応する画像オブジェクトが存在することがわかる。
同様に、WS情報300に含まれるテキストオブジェクトに関する記述314においては、<text>タグ内の属性において、配置座標(x='40' y='40')が定義されるとともに、<size>タグを用いてその表示サイズ(x='40' y='25')が定義されている。したがって、このWS情報300における記述314に基づくと、図36に示すように、x=40〜80およびy=40〜65の範囲に、対応するテキストオブジェクトが存在することがわかる。
以上のように、各シナリオページに含まれる特定のオブジェクトのワークスペースにおける位置関係に基づいて、当該特定のオブジェクトを表示する範囲および表示倍率の少なくとも一方が決定される。
[ワークスペースに対する変更反映機能]
この発明の実施の形態に従うワークスペースにおけるシナリオ再生機能では、シナリオ再生中に、ユーザ操作によって元のワークスペースに対する編集操作を行なうことが可能である。以下、図38〜図42を参照して、本実施の形態に従うシナリオ再生機能における変更反映機能について説明する。
この発明の実施の形態に従うワークスペースにおけるシナリオ再生機能では、シナリオ再生中に、ユーザ操作によって元のワークスペースに対する編集操作を行なうことが可能である。以下、図38〜図42を参照して、本実施の形態に従うシナリオ再生機能における変更反映機能について説明する。
(1)ユーザインターフェイス
図38〜図41は、この発明の実施の形態に従うワークスペースのシナリオ再生機能における変更反映機能の操作を説明するための図である。
図38〜図41は、この発明の実施の形態に従うワークスペースのシナリオ再生機能における変更反映機能の操作を説明するための図である。
たとえば、図38に示すように、シナリオ1のシナリオページ2の再生中に、ユーザがいずれかのオブジェクトをカーソルCRSなどによって選択することで、対応するシナリオページ内のオブジェクトに対する編集操作が可能となる。
一例として、図39に示すように、ユーザがカーソルCRSなどを操作して、オブジェクトOBJ6のサイズ変更を行なったとする。すると、このオブジェクトOBJ6に対するサイズ変更は、対応するシナリオページを定義するシナリオ情報400ではなく、参照先にワークスペースを定義するWS情報300に反映される。そのため、この編集操作の後、ユーザが領域173内の再生ボタン173aをカーソルCRSなどによって選択すると、図40に示すように、シナリオ1のシナリオページ3が表示されるが、この表示されるシナリオページ3においても、上記のオブジェクトOBJ6に対する編集操作(サイズ変更)が反映されることになる。
なお、図39に示すように、他オブジェクト表示ボタン166が選択されると、対応するシナリオページには含まれていないが、実際のワークスペース上には隣接して存在するオブジェクトが表示される。すなわち、図39には、シナリオページ2には含まれていないオブジェクトOBJ7が表示されている。
上述の例では、シナリオ再生中に選択したオブジェクトに対してサイズ変更を行なう場合の手順について説明したが、上述した、色変更、属性変更、付与属性表示、表示装飾変更などの各種編集操作が可能である。さらに、ビュー表示の設定(ビュー表示範囲および表示倍率など)についても変更が可能である。
さらに、図41に示すように、シナリオ再生中に、オリジナル表示ボタン165が選択されると、ビュー表示ウィンドウ150がアクティブ表示される。すなわち、ビュー表示ウィンドウ150によって、現在のワークスペースにおける対応するオブジェクトの状態が表示される。
(2)データ構造
図42は、図39に示すシナリオ再生中の編集操作によって変更されるWS情報の内容の一例を示す図である。図42(a)は、変更前の内容を示し、図42(b)は、変更後の内容を示す。なお、図39においては、オブジェクトOBJ6に対するサイズ変更を行なうとともに、ビュー表示の表示倍率を変更したものとする。この結果、WS情報300に含まれる、ビュー表示を特定するための記述304においては、<zoom_scale>タグおよび</zoom_scale>タグ内の属性値が「1.5」から「1.2」へ変更されている。また、オブジェクトOBJ6を定義する記述316については、<scale>タグおよび</scale>タグが追加されるとともに、その属性値として「0.6」が設定されている。
図42は、図39に示すシナリオ再生中の編集操作によって変更されるWS情報の内容の一例を示す図である。図42(a)は、変更前の内容を示し、図42(b)は、変更後の内容を示す。なお、図39においては、オブジェクトOBJ6に対するサイズ変更を行なうとともに、ビュー表示の表示倍率を変更したものとする。この結果、WS情報300に含まれる、ビュー表示を特定するための記述304においては、<zoom_scale>タグおよび</zoom_scale>タグ内の属性値が「1.5」から「1.2」へ変更されている。また、オブジェクトOBJ6を定義する記述316については、<scale>タグおよび</scale>タグが追加されるとともに、その属性値として「0.6」が設定されている。
このように、シナリオ再生中に、いずれかのシナリオページに含まれるオブジェクトに対するユーザ操作に応答して、WS情報300における対応するオブジェクトについての定義が更新される。そして、このWS情報300の更新に伴って、シナリオ表示の内容が更新される。
[ワークスペースにおけるシナリオ多面化機能]
次に、図43〜図52を参照して、本実施の形態に従うワークスペースにおけるシナリオ多面化機能について説明する。このシナリオ多面化機能とは、共通のワークスペースから複数のシナリオを作成する機能であり、特に、複数のシナリオを互いに関連付けて作成および保存する。典型的には、シナリオ情報400において、シナリオとして複数のページからなるあるシナリオが定義されている場合に、当該シナリオに含まれる一部のページを共有し、かつ、当該シナリオに含まれるページとは独立したページを含む別のシナリオを追加することが可能である。
[ワークスペースにおけるシナリオ多面化機能]
次に、図43〜図52を参照して、本実施の形態に従うワークスペースにおけるシナリオ多面化機能について説明する。このシナリオ多面化機能とは、共通のワークスペースから複数のシナリオを作成する機能であり、特に、複数のシナリオを互いに関連付けて作成および保存する。典型的には、シナリオ情報400において、シナリオとして複数のページからなるあるシナリオが定義されている場合に、当該シナリオに含まれる一部のページを共有し、かつ、当該シナリオに含まれるページとは独立したページを含む別のシナリオを追加することが可能である。
このようなシナリオ同士を互いに関連付けることで、説明相手や状況に応じてプレゼンテーションの内容を変える必要がある場合などに、複数のシナリオをより簡易かつ迅速に作成できるとともに、シナリオページに何らかの変更があった場合にも、その変更内容を互いに関連付けられた、すなわちシナリオ間で共有されているシナリオページにより容易かつ確実に反映させることができる。
図43は、この発明の実施の形態に従うワークスペースにおけるシナリオ多面化機能を説明するための図である。図44〜図54は、この発明の実施の形態に従うワークスペースにおけるシナリオ多面化機能を説明するための図である。
(1)概要
まず、図43(a)に示すように、あるユーザが特定の相手へのプレゼンテーションを想定して、ある内容を説明するためのシナリオAを作成したものとする。このシナリオAは、シナリオページ1,2,3,5,6の計5ページから構成されているものとする。このような状況下において、当該ユーザが同様の内容を別の相手へプレゼンテーションすることを想定して、シナリオAに類似したシナリオA’を作成する必要があるとする。
まず、図43(a)に示すように、あるユーザが特定の相手へのプレゼンテーションを想定して、ある内容を説明するためのシナリオAを作成したものとする。このシナリオAは、シナリオページ1,2,3,5,6の計5ページから構成されているものとする。このような状況下において、当該ユーザが同様の内容を別の相手へプレゼンテーションすることを想定して、シナリオAに類似したシナリオA’を作成する必要があるとする。
本願発明に関連する技術によれば、このような状況下では、当該ユーザは、シナリオA(を定義するシナリオ情報)とは独立したシナリオA’(を定義するシナリオ情報)を新たに作成せざるを得ない。たとえば、シナリオA’は、シナリオページ1,2’,3,4,6の計5ページから構成されているものとする。このうち、シナリオページ2’は、シナリオAの内容はシナリオページ2と類似しており、シナリオページ4の内容はシナリオページ5の内容とは全く異なったものであるとする。
このようなシナリオA’の作成にあたって、ユーザは、シナリオAに含まれるシナリオページをコピーしたり、そのコピーした内容を変更したり、新規にシナリオページを作成したりする必要がある。そのため、類似した内容を含むシナリオであったとしても、ユーザが作成に要する手間や時間は相対的に大きくなってしまい、知的創造作業を行なうための効率を低下させてしまう。さらに、たとえば、シナリオページ1に何らかの変更が必要である場合などには、同じ内容であっても、シナリオ情報としては独立しているため、シナリオAおよびシナリオA’に係るシナリオ情報をいずれも修正する必要があり、作業が非常に煩雑化するとともに、作業ミスなどを誘発するおそれもある。
そこで、本実施の形態に従うワークスペースにおけるシナリオ多面化機能では、シナリオに含まれる任意のシナリオページから、新たなシナリオページを派生させるような処理を行なうことで、類似した内容のシナリオを容易に複数作成することができる。
より具体的には、図43(c)に示すように、シナリオページ1からシナリオページ2へ続く再生順序の定義に加えて、シナリオページ2’へ続く再生順序の定義を追加する。同様に、シナリオページ3からシナリオページ5を経てシナリオページ6へと続く再生順序の定義に加えて、シナリオページ3からシナリオページ4を経てシナリオページ6へと続く再生順序の定義を追加する。このように、複数のシナリオの間で共通するシナリオページについては、可能な限り共有化するとともに、新たに追加または変更する必要のあるシナリオページについては、その前のシナリオページにおける分岐として定義することで、シナリオの内容をより多面的にすることができる。
(2)ユーザインターフェイス
次に、一例として、図16〜図22において説明した、シナリオページ1〜シナリオページ3(リンク1,リンク2,リンク3)からなるシナリオの作成後に、類似したシナリオを作成する場合の操作手順について、図44〜図54を参照して説明する。
次に、一例として、図16〜図22において説明した、シナリオページ1〜シナリオページ3(リンク1,リンク2,リンク3)からなるシナリオの作成後に、類似したシナリオを作成する場合の操作手順について、図44〜図54を参照して説明する。
図22に示す制御ウィンドウ160のシナリオ詳細編集モードボタン174をユーザがカーソルCRSなどによって選択することで、図44に示すように、シナリオ詳細編集ウィンドウ200が表示される。このシナリオ詳細編集ウィンドウ200には、シナリオページの表示順を示す再生順序インジケータ210が表示される。すなわち、再生順序インジケータ210には、対象とされているシナリオに含まれるシナリオページ(リンク)を示すオブジェクトが再生順序に対応して配列されて表示される。言い換えれば、再生順序インジケータ210は、シナリオ情報400における定義内容に含まれるシナリオを構成するシナリオページ間の関連付けを視覚的に表現する。
なお、シナリオ詳細編集ウィンドウ200において、シナリオページの再生順序を任意に変更できるようにしてもよい。この場合には、シナリオ情報400に含まれる各<link>タグの属性として、再生順序を定義することが好ましい。
また、シナリオ詳細編集ウィンドウ200には、さらに、「新規リンク」ボタン222と、「シナリオ上書き」ボタン224と、「シナリオ複製」ボタン226と、「シナリオ更新」ボタン228と、「シナリオ通常モード」ボタン230とが表示される。これらのボタンに割り当てられた機能については、後述する。
次に、再生順序インジケータ210として表示されるいずれかのオブジェクトが選択されると、対応するシナリオページを示すシナリオページ編集ウィンドウ183が表示される。たとえば、図45に示すように、ユーザがカーソルCRSなどによって「リンク2」の名称が付されたオブジェクトを選択すると、シナリオページ2の内容が表示されたシナリオページ編集ウィンドウ183が表示される。このシナリオページ編集ウィンドウ183においては、作成済のシナリオページの内容をさらに編集することが可能である。
ユーザが、シナリオページ編集ウィンドウ183上でシナリオを修正したものとする。たとえば、図46に示すように、ユーザは、「案B」としての内容を示すオブジェクトOBJ5に対して、その内容に精通していない初心者に向けた解説を示すオブジェクトOBJ30を追加したものとする。なお、内容の変更に伴って、そのシナリオページに対応する再生順序インジケータ210のオブジェクトが強調表示される。この強調表示は、ユーザの行なった変更が未だシナリオ情報400に反映されていないことを通知するものである。
その後、ユーザがカーソルCRSなどによって「シナリオ更新」ボタン228を選択すると、編集元のシナリオページと並列した位置に、その編集内容を反映したシナリオページが追加される。すなわち、図47に示すように、シナリオページ1(リンク1)にシナリオページ2(リンク2)およびシナリオページ4(リンク4)への分岐が追加される。この内容は、再生順序インジケータ210に反映される。このように、本実施の形態に従うワークスペースにおいては、ユーザ操作に応じて、既存のシナリオに含まれるシナリオページのうち指定されたページを異ならせることで別のシナリオが生成される。
以下の説明では、あるシナリオページに含まれる任意のシナリオページから分岐して異なるシナリオページへ分岐する表現形態を「サブシナリオ」とも称す。すなわち、図47に示す例では、リンク1→リンク2→リンク3という一連のシナリオの流れと、リンク1→リンク4→リンク3という一連のシナリオの流れとが並存することになり、これらをそれぞれサブシナリオと称す。このような分岐の追加によって、シナリオ詳細編集ウィンドウ200には、各サブシナリオを選択するためのボタン231および232が新たに表示される。
なお、図47に示す例では、それぞれのシナリオページを単に「リンク1」、「リンク2」、「リンク3」という名称を付して表示するとともに、サブシナリオを「サブシナリオ1」、「サブシナリオ2」という名称を付して表示しているが、ユーザが任意の名称を付せるようにしてもよい。このような構成を採用することで、シナリオ再生時などに、一見して各サブシナリオの内容を把握することができる。
また、図47に示すシナリオ詳細編集ウィンドウ200において、ユーザがカーソルCRSなどによってボタン231および232のいずれかを選択すると、再生順序インジケータ210において、選択されたサブシナリオに応じた再生順序が強調表示される。図48に示す例では、サブシナリオ1に対応するボタン231が選択されることで、リンク1→リンク2→リンク3という一連のシナリオの流れが強調表示されている。
次に、再生順序インジケータ210において、2つのシナリオページ(リンク)を結ぶ任意のノードが選択された状態で、「新規リンク」ボタン222が選択されると、シナリオ上の対応する位置に、新たなシナリオページを追加するための処理が実行される。たとえば、図49に示すように、シナリオページ1(リンク1)とシナリオページ2(リンク2)とを結ぶノードが選択された状態で、「新規リンク」ボタン222が選択されると、シナリオページ編集ウィンドウ183が表示される。このシナリオ詳細編集ウィンドウ200では、再生順序インジケータ210上で指定された位置に追加される新たなシナリオページの編集操作が可能である。ユーザは、この再生順序インジケータ210上にワークスペース上の説明対象となるべき内容を表示させた上で、必要な装飾などを付加して新たなシナリオページの内容を作成する。さらに、ユーザがシナリオページ編集ウィンドウ183の決定ボタン186を選択すると、予め選択された位置に新たなシナリオページ(リンク)として挿入される。
上述のような操作によって新たなシナリオページ(リンク)が挿入されると、シナリオ詳細編集ウィンドウ200の表示内容も更新される。すなわち、図50に示すように、シナリオ詳細編集ウィンドウ200では、シナリオページ(リンク1)とシナリオページ2(リンク2)との間に、新たなシナリオページ5(リンク5)が挿入された状態が表示される。
一方、再生順序インジケータ210において、作成済のシナリオページ(リンク)に対応するオブジェクトを選択した場合にも、シナリオページ編集ウィンドウ183が表示される。ユーザがこのシナリオページ編集ウィンドウ183において、Deleteボタン187を選択すると、シナリオ上の対応するシナリオページが削除される。たとえば、シナリオ詳細編集ウィンドウ200においてシナリオページ2(リンク2)が選択された後、表示されるシナリオページ編集ウィンドウ183のDeleteボタン187が選択されると、シナリオからシナリオページ2が削除される(図51参照)。そして、シナリオ詳細編集ウィンドウ200の表示内容も更新される。
また、図49に示すようなシナリオページの挿入処理において、挿入先がサブシナリオの間で共通する位置であれば、両サブシナリオに含まれるようにシナリオページが追加される。たとえば、図52に示すように、シナリオページ1(リンク1)からシナリオページ2(リンク2)およびシナリオページ4(リンク4)への分岐する直前のノードが選択された状態で、「新規リンク」ボタン222が選択されると、新たに作成されたシナリオページは、シナリオページ1(リンク1)の後に挿入される。すなわち、図53に示すように、サブシナリオ1およびサブシナリオ2に共通するシナリオページとして、新たなシナリオページ5(リンク5)が挿入される。
このように、視覚的に表現されるシナリオページ間の関連付けである再生順序インジケータ210上で、ページの追加または削除の対象ページの指定を行なうことができ、さらに、シナリオ情報400から、指定された対象シナリオページの定義を追加または削除することができる。
また、図46に示す状態において、ユーザがカーソルCRSなどによって「シナリオ上書き」ボタン224を選択すると、新たなシナリオページが追加されるのではなく、編集対象のシナリオページがその編集後の内容に更新(上書き)される。したがって、この場合には、通常の編集操作と同様の結果となる。すなわち、シナリオ情報400に定義されているシナリオに含まれるシナリオページを指定することができ、さらに、指定されたページの内容に対する修正指示を与えることができる。これらの操作によって、シナリオ情報400は、与えられた修正指示に応じて更新される。
また、図46に示す状態において、ユーザがカーソルCRSなどによって「シナリオ複製」ボタン226を選択すると、シナリオから分岐するようにシナリオページが追加されるのではなく、シナリオから独立して新たなシナリオページが追加される。たとえば、図54に示すように、既存のシナリオ(シナリオページ1→シナリオページ2→シナリオページ3)とは独立した位置にシナリオページが追加される。なお、この追加されたシナリオページは、事後的に、任意の位置に関連付けて挿入することも可能である。
また、「シナリオ通常モード」ボタン230が選択されると、シナリオ詳細編集ウィンドウ200が非表示化されて、図22に示すような画面に戻る。
(3)データ構造
図55は、図47に示すシナリオ多面化機能の操作に応じて生成されるシナリオ情報400の内容の一例を示す図である。なお、以下の説明では、複数のサブシナリオが共通のシナリオ情報400のファイルに記述される場合構成を示すが、後述するように、サブシナリオ毎に異なるファイルにその内容を記述するようにしてもよい。
図55は、図47に示すシナリオ多面化機能の操作に応じて生成されるシナリオ情報400の内容の一例を示す図である。なお、以下の説明では、複数のサブシナリオが共通のシナリオ情報400のファイルに記述される場合構成を示すが、後述するように、サブシナリオ毎に異なるファイルにその内容を記述するようにしてもよい。
図55に示すシナリオ情報400においては、その中に含まれるサブシナリオの内容を識別するために、各サブシナリオの識別番号(id)を定義するための<sub_scenario>タグが追加される。より具体的には、シナリオ情報400は、シナリオページ1〜4(リンク1〜4)にそれぞれ対応付けて記述410,420,430,440を含み、各記述には、対応するシナリオページがサブシナリオに含まれるいずれのページであるかを示す識別番号として、<sub_scenario>タグを含む。すなわち、ページ単位に区切られた表現すべき内容を定義する記述410,420,430,440の各々に対して、対応するページが使用されるサブシナリオ、および、当該サブシナリオ内における表現順序、を特定するための識別情報として、<sub_scenario>タグが付加される。
図47に示すように、サブシナリオ1およびサブシナリオ2が共通に含むシナリオページ1(リンク1)を定義する記述410は、サブシナリオ1の1番目のページであることを示すサブシナリオ情報(sub_scenario id=1_1)412と、サブシナリオ2の1番目のページであることを示すサブシナリオ情報(sub_scenario id=2_1)413との両方を含む。
これに対して、サブシナリオ1の2番目のページであるシナリオページ2(リンク2)と、サブシナリオ2の2番目のページであるシナリオページ4(リンク4)とは、その内容が互いに異なったものであるので、それぞれ独立した記述420および記述440として定義される。そして、記述420は、サブシナリオ1の2番目のページであることを示すサブシナリオ情報(sub_scenario id=1_2)424を含む。同様に、記述440は、サブシナリオ1の2番目のページであることを示すサブシナリオ情報(sub_scenario id=2_2)442を含む。
さらに、サブシナリオ1およびサブシナリオ2の3番目のページは共通のシナリオページ3(リンク3)であるので、それを定義する記述430は、サブシナリオ1の3番目のページであることを示すサブシナリオ情報(sub_scenario id=1_3)434と、サブシナリオ2の3番目のページであることを示すサブシナリオ情報(sub_scenario id=2_3)435との両方を含む。
このように、本実施の形態に従うシナリオ多面化機能においては、複数のシナリオを作成する際に、共通するシナリオページ(リンク)については、その定義を共有する。一方、シナリオ間で異なる内容を含むシナリオページについては、互いに独立して定義される。そのため、相手や状況に応じて、さまざまな観点から見た複数のシナリオを簡易かつ迅速に作成することができる。同時に、作成後に、シナリオページの内容に変更が生じた場合であっても、全く同じ内容が重複して記述されているわけではないので、共通部分については、一回の操作でそれを使用しているすべてのサブシナリオについて一括して修正することができる。そのため、修正忘れといった問題が生じないとともに、修正処理をより簡易かつ迅速に行なうことができる。
(4)データ構造のバリエーション
次に、図56を参照して、上述のような本実施の形態に従うシナリオ多面化機能を提供するためのデータ構造のバリエーションについて例示する。
次に、図56を参照して、上述のような本実施の形態に従うシナリオ多面化機能を提供するためのデータ構造のバリエーションについて例示する。
図56は、この発明の実施の形態に従うシナリオ多面化機能を提供するためのデータ構造のバリエーションを説明するための図である。
(第1構造例)
図56(a)に示すように、第1の構造例としては、上述の図55に示したシナリオ情報400と類似した形態であり、1つのファイル内に、共通のシナリオに対応付けられた複数のサブシナリオに含まれるシナリオページ(リンク)単位で、その内容を記述しておき、各記述に対して、いずれのサブシナリオのいずれのページとして用いられるかを示す情報を付加しておく。
図56(a)に示すように、第1の構造例としては、上述の図55に示したシナリオ情報400と類似した形態であり、1つのファイル内に、共通のシナリオに対応付けられた複数のサブシナリオに含まれるシナリオページ(リンク)単位で、その内容を記述しておき、各記述に対して、いずれのサブシナリオのいずれのページとして用いられるかを示す情報を付加しておく。
図56(a)には、シナリオページ1〜7に対応するリンク1〜7の内容が記述されており、各リンクにサブシナリオの識別番号が付加されている例を示す。たとえば、(リンク1)は、<サブシナリオ1_1>という情報が付加されているので、サブシナリオ1の1番目のページであることがわかる。そして、サブシナリオを選択的に再生する場合には、たとえば、サブシナリオ1の再生が指示されると、「サブシナリオ1」を含む情報が付加されたリンクが抽出される。そして、抽出されたリンクに付加されている「サブシナリオ1」枝番号の若い順にその内容が再生される。図56(a)に示す例では、<サブシナリオ1_1>→<サブシナリオ1_2>→・・・→<サブシナリオ1_5>といった順序でシナリオページの内容が再生される。なお、この枝番号(サブシナリオ1_以降の番号)は、必ずしも連続している必要はなく、不連続であってもよい。さらに、再生順序は、降順および昇順のいずれであってもよい。他のサブシナリオについても同様である。
なお、図56に示す説明では、理解を容易にするために、上述の<link>タグに代えて<リンク1>といった表現を用いるとともに、<sub_scenario>タグに代えて<サブシナリオ1_1>といった表現を用いている。
上述したように、複数のサブシナリオの間で共有されているシナリオページ(リンク)に対しては、複数のサブシナリオに係る情報が付加される。たとえば、(リンク2)には、<サブシナリオ1_2>および<サブシナリオ2_1>という情報が付加されているので、サブシナリオ1およびサブシナリオ2で共有されるシナリオページであることがわかる。
また、シナリオ内においてあるシナリオページに分岐を追加してサブシナリオを作成する処理は、図56(a)において、各シナリオページ(リンク)にサブシナリオの情報を付加することに相当する。さらに、分岐先として新たなシナリオページを追加する場合には、新たなシナリオページ(リンク)の内容を追記するとともに、当該追記したシナリオページ(リンク)に対して、いずれのサブシナリオのいずれのページとして用いられるかを示す情報を付加することに相当する。
また、あるシナリオページの内容を修正/変更する処理は、図56(a)における対応するシナリオページ(リンク)の記述を更新することに相当する。また、あるシナリオページを削除する処理は、図56(a)における対応するシナリオページ(リンク)の記述自体を削除または無効化することに相当する。
なお、たとえば、<サブシナリオ1_2>と<サブシナリオ1_3>との間に、シナリオページを追加した場合には、当該追加したサブシナリオ(リンク)の記述に対して、<サブシナリオ1_21>や<サブシナリオ1_2_1>といった情報を付加することが好ましい。
(第2構造例)
第2の構造例としては、共通のシナリオに対応付けられた複数のサブシナリオに含まれるシナリオページ(リンク)の内容を共通のファイルに記述しておき、この共通のファイルとは独立して、各サブシナリオにおいていずれのシナリオページを用いるかといった情報を記述したファイルをサブシナリオ毎に保持する方法である。
第2の構造例としては、共通のシナリオに対応付けられた複数のサブシナリオに含まれるシナリオページ(リンク)の内容を共通のファイルに記述しておき、この共通のファイルとは独立して、各サブシナリオにおいていずれのシナリオページを用いるかといった情報を記述したファイルをサブシナリオ毎に保持する方法である。
典型的には、図56(b)に示すように、各サブシナリオが参照する共通記述情報400Aを用意するとともに、サブシナリオ1の内容を記述したサブシナリオ情報400A_1と、サブシナリオ2の内容を記述したサブシナリオ情報400A_2といった具合に、サブシナリオ単位でその順序などを記述したファイルを用意する。
サブシナリオを選択的に再生する場合には、対応するサブシナリオ情報の内容を参照するとともに、共通記述情報400Aのうち、関連付けられた内容を読出すことで、その内容が再生される。図56(b)に示す例では、サブシナリオ1が選択されると、サブシナリオ情報400A_1が読出されて、リンク1→リンク2→リンク5→リンク6→リンク7の順序でシナリオページの内容が再生される。他のサブシナリオについても同様である。
また、シナリオ内においてあるシナリオページに分岐を追加してサブシナリオを作成する処理は、図56(b)において、共通記述情報400Aに、その追加されるべきシナリオページ(リンク)の内容を追加した上で、対応するサブシナリオ情報に、当該シナリオページ(リンク)を識別するための情報を追加することに相当する。
また、あるシナリオページの内容を修正/変更する処理は、共通記述情報400Aにおける対応するシナリオページ(リンク)の記述を更新することに相当する。また、あるシナリオページを削除する処理は、共通記述情報400Aにおける対応するシナリオページ(リンク)の記述自体を削除または無効化した上で、対応するサブシナリオ情報から、当該シナリオページ(リンク)を識別するための情報を削除または無効化することに相当する。
なお、上述した図56に示すようなデータ構造例に限定されることなく、複数のサブシナリオに含まれるシナリオページ(リンク)のうち、共通に含まれる内容を共有して保持できる構成であれば、いずれのデータ構造を採用してもよい。
[制御構造]
図57は、この発明の実施の形態に従う処理装置PCで実現される制御構造を示す概略図である。図57を参照して、処理装置PCは、制御構造として、入力装置10と、出力装置6と、処理部100と、WS格納部120と、入出力制御装置130とを含む。典型的に、処理部100および入出力制御装置130は、ハードディスク12に予め格納されているプログラムをCPU2がメモリ14に展開した上で実行することで提供される。また、WS格納部120は、HDD12の一部として提供される。
図57は、この発明の実施の形態に従う処理装置PCで実現される制御構造を示す概略図である。図57を参照して、処理装置PCは、制御構造として、入力装置10と、出力装置6と、処理部100と、WS格納部120と、入出力制御装置130とを含む。典型的に、処理部100および入出力制御装置130は、ハードディスク12に予め格納されているプログラムをCPU2がメモリ14に展開した上で実行することで提供される。また、WS格納部120は、HDD12の一部として提供される。
なお、入力装置10、出力装置6、処理部100、WS格納部120、および入出力制御装置130を必ずしも同一の処理装置PCに設ける必要はなく、別体の装置に分散して設けてもよい。また、入出力制御装置130を、入力装置10や出力装置6の内部に設けてもよい。さらに、入力装置10および出力装置6と入出力制御装置130との間、入出力制御装置130と処理部100との間、および処理部100とWS格納部120との間などに、別の情報処理装置や制御部などを仲介させる形で構成してもよい。
入出力制御装置130は、入力装置10で受付けた入力信号の内容を解釈して、対応する指令を処理部100へ出力する。すなわち、入出力制御装置130は、ユーザが入力装置10に対してどのような内容の操作を行なったのかを判断する。より具体的な一例として、入出力制御装置130は、マウスのクリックやドラッグなどによって、ワークスペース上のいずれのオブジェクトが選択されたのか、いずれのボタンが押下されたのか、クリック操作およびドラッグ操作のいずれであるのか、といった内容を解釈する。
また、入出力制御装置130は、処理部100からの情報に基づいて、出力用の信号を生成して、出力装置6へ送る。より具体的な一例として、入出力制御装置130は、ワークスペース上でユーザが行なったオブジェクト操作やビューの変更操作に応じて、表示される画面上のいずれの部分にどのような表示を行なえばいいよいのかを決定して出力信号を生成(レンダリング)する。
処理部100は、本実施の形態に従うワークスペースを提供する処理の全体を司る。処理部100は、操作管理部102と、ビュー管理部104と、オブジェクト管理部106と、シナリオ管理部108と、WS空間管理部110と、WS入出力部112と、WS作業メモリ114とを含む。
操作管理部102は、入出力制御装置130から送られる情報に基づいて、要求される処理内容を判断し、その判断結果に応じて、ビュー管理部104、オブジェクト管理部106、シナリオ管理部108、WS空間管理部110、およびWS入出力部112のうち、対応する部位へ指令を与える。より具体的には、操作管理部102は、受けた操作内容が、ワークスペースの新規作成、ワークスペースのリセット、ワークスペースの削除などである場合、WS空間管理部110に指示が出され、WS空間管理部110で処理が実行される。また、操作管理部102は、受けた操作内容が、オブジェクトに対する移動・内容変更・装飾変更などの編集、新規オブジェクトの作成、削除である場合、オブジェクト管理部106に指示が出され、オブジェクト管理部106で処理が実行される。また、操作管理部102は、受けた操作内容が、ビューの変更である場合、ビュー管理部104に指示が出され、ビュー管理部で処理が実行される。また、操作管理部102は、受けた操作内容が、ワークスペースの読み込みや書き出しである場合、WS入出力部112に指示が出され、WS入出力部112で処理が実行される。また、操作管理部102は、受けた操作内容が、シナリオの作成、シナリオの再生、オブジェクトに対する変更反映、シナリオ多面化機能などである場合、シナリオ管理部108に指示が出され、シナリオ管理部108で処理が実行される。
WS作業メモリ114には、ワークスペースを提供するためのWS情報300、および上述のシナリオ機能を提供するためのシナリオ情報400が格納される。これらのWS情報300およびシナリオ情報400は、ユーザ操作および各部における処理に伴って、随時更新される。
WS空間管理部110は、操作管理部102からの指示に従って、WS作業メモリ114におけるWS情報300の新規作成および削除などを管理する。すなわち、WS空間管理部110は、ワークスペースとワークスペースに含まれるオブジェクトとを定義するWS情報300を管理するためのものである。
オブジェクト管理部106は、操作管理部102からの指示に従って、WS作業メモリ114に格納されているWS情報300の内容(記述)を更新する。
ビュー管理部104は、操作管理部102からの指示に従って、WS作業メモリ114に格納されているWS情報300に定義されている情報のうち、ユーザにより指定されるビュー範囲に含まれる情報に基づいて、描画処理(レンダリング処理)を行なう。すなわち、ビュー管理部104は、WS情報300に基づいて、ワークスペースの一部または全部の内容を表示するためのものである。
WS入出力部112は、操作管理部102からの指示に従って、WS格納部120に格納されているWS情報120aを読出し、あるいはWS作業メモリ114に格納されているWS情報300に従ってWS格納部120に格納されているWS情報120aを更新する。WS格納部120は、WS情報120aを不揮発的に記憶しており、ワークスペースを提供するアプリケーションがシャットダウンされた後であっても、WS情報120aを継続的に保持する。
シナリオ管理部108は、操作管理部102からの指示に従って、WS作業メモリ114にシナリオ情報400を作成し、さらにシナリオ情報400の内容を適宜更新する。すなわち、シナリオ管理部108は、ワークスペースに含まれる特定のオブジェクトを指定するためのシナリオ情報400を管理するためのものである。また、シナリオ管理部108は、シナリオ情報400においては指定される特定のオブジェクトを表示するためのものでもある。そして、シナリオ管理部108は、上述したシナリオ多面化機能の処理を具体的に実行する主体でもある。
なお、サーバ装置SRVを介して複数の処理装置PCの間で、WS情報300および/またはシナリオ情報400を共有して保持する場合には、サーバ装置SRVおよび/または他の処理装置PCとの間で通信を行なって、WS作業メモリ114内のWS情報300を適宜更新(同期)するための同期処理部をさらに設けてもよい。
[処理手順]
次に、図58〜図61を参照して、本実施の形態に従うワークスペースの提供に係る処理手順について説明する。図58〜図61に示す各ステップは、典型的に、CPU2がプログラムを実行することで進められる。すなわち、CPU2がプログラムを実行することで提供される制御構造(図57)により各処理が進められる。なお、ワークスペースは既に作成されているものとする。
次に、図58〜図61を参照して、本実施の形態に従うワークスペースの提供に係る処理手順について説明する。図58〜図61に示す各ステップは、典型的に、CPU2がプログラムを実行することで進められる。すなわち、CPU2がプログラムを実行することで提供される制御構造(図57)により各処理が進められる。なお、ワークスペースは既に作成されているものとする。
図57〜図61を参照して、ステップS100において、操作管理部102として機能するCPU2は、ワークスペース上のオブジェクトについての新規作成・変更・削除などがユーザによって指示されたか否かを判断する。実体オブジェクトについての新規作成・変更・削除などがユーザによって指示された場合(ステップS100においてYESの場合)には、処理はステップS102へ進み、そうでなければ(ステップS100においてNOの場合)、処理はステップS106へ進む。
ステップS102において、操作管理部102として機能するCPU2は、ユーザ操作に応じた指示をオブジェクト管理部106へ与える。この指示に応答して、オブジェクト管理部106として機能するCPU2は、WS作業メモリ114に格納されているWS情報300の内容を更新する。典型的には、ユーザが、上述の図7〜図15に示す編集操作などを行なうと、この編集操作に応じて、WS情報300中の対応するオブジェクトの記載を変更する。そして、処理はステップS104へ進む。
ステップS104において、ビュー管理部104として機能するCPU2は、更新後のWS情報300の内容に基づいて、現在のビュー表示を更新する。そして、処理はステップS106へ進む。
ステップS106において、操作管理部102として機能するCPU2は、ビュー表示の変更がユーザによって指示されたか否かを判断する。ビュー表示の変更がユーザによって指示された場合(ステップS106においてYESの場合)には、処理はステップS108へ進み、そうでなければ(ステップS106においてNOの場合)、処理はステップS110へ進む。
ステップS108において、ビュー管理部104として機能するCPU2は、ユーザから指示された内容に従って、ビュー表示を更新する。すなわち、ビュー管理部104は、指定されたビュー表示の中心座標や表示倍率に応じたビュー表示を生成し、出力装置6から出力する。そして、処理はステップS110へ進む。
ステップS110において、シナリオ管理部108として機能するCPU2は、シナリオ機能の開始がユーザによって指示されたか否かを判断する。すなわち、CPU2は、図16に示すような、ダイアログ156aの「シナリオ」がカーソルCRSなどによって選択されたか否かを判断する。シナリオ機能の開始がユーザによって指示された場合(ステップS110においてYESの場合)には、処理はステップS112へ進み、そうでなければ(ステップS110においてNOの場合)、処理は終了する。
ステップS112において、シナリオ管理部108として機能するCPU2は、シナリオの作成・再生・変更反映などを制御するための制御ウィンドウ160を選択可能に表示する。そして、処理はステップS114へ進む。
ステップS114において、シナリオ管理部108として機能するCPU2は、シナリオページの作成がユーザによって指示されたか否かを判断する。すなわち、CPU2は、制御ウィンドウ160内のいずれかの設定ボタンがカーソルCRSなどによって選択されたか否かを判断する。シナリオページの作成がユーザによって指示された場合(ステップS114においてYESの場合)には、処理はステップS116へ進み、そうでなければ(ステップS114においてNOの場合)、処理はステップS122へ進む。
ステップS116において、シナリオ管理部108として機能するCPU2は、作成が指示されたシナリオページを特定する。すなわち、CPU2は、選択された制御ウィンドウ160内の設定ボタンがいずれのシナリオ番号およびシナリオページ番号に関連付けられたものであるかを判断する。続くステップS118において、シナリオ管理部108として機能するCPU2は、現在のビュー表示に含まれるオブジェクトの識別番号を取得する。さらに続くステップS120において、シナリオ管理部108として機能するCPU2は、シナリオ情報400に対して、ステップS116において特定したシナリオ番号およびシナリオページ番号に関連付けて、ステップS118において取得したオブジェクトの識別番号を参照情報(リンク情報)として追加する。すなわち、ユーザが設定ボタンを選択した時点におけるビュー表示の内容が、シナリオページとして保存される。そして、処理はステップS122へ進む。
ステップS122において、シナリオ管理部108として機能するCPU2は、シナリオページの編集がユーザによって指示されたか否かを判断する。すなわち、CPU2は、制御ウィンドウ160内のいずれかの編集ボタンがカーソルCRSなどによって選択されたか否かを判断する。シナリオページの編集がユーザによって指示された場合(ステップS122においてYESの場合)には、処理はステップS124へ進み、そうでなければ(ステップS122においてNOの場合)、処理はステップS138へ進む。
ステップS124において、シナリオ管理部108として機能するCPU2は、編集が指示されたシナリオページを特定する。すなわち、CPU2は、選択された制御ウィンドウ160内の編集ボタンがいずれのシナリオ番号およびシナリオページ番号に関連付けられたものであるかを判断する。続くステップS126において、シナリオ管理部108として機能するCPU2は、シナリオ情報400からステップS124において特定したシナリオ番号およびシナリオページ番号に関連付けて定義されている記述を読出して、それに基づくシナリオページを編集可能に表示する。さらに続くステップS128において、シナリオ管理部108として機能するCPU2は、ユーザが行なった編集操作の内容を受付ける。なお、CPU2は、受付けた編集操作の内容を表示に反映する。さらに続くステップS130において、シナリオ管理部108として機能するCPU2は、編集操作の反映がユーザによって指示されたか否かを判断する。すなわち、CPU2は、図21などに示す決定ボタン186がカーソルCRSなどによって選択されたか否かを判断する。編集操作の反映がユーザによって指示された場合(ステップS130においてYESの場合)には、処理はステップS132へ進み、そうでなければ(ステップS130においてNOの場合)、処理はステップS134へ進む。
ステップS132において、シナリオ管理部108として機能するCPU2は、ステップS128において受付けた編集操作の内容に基づいて、シナリオ情報400のステップS124において特定したシナリオ番号およびシナリオページ番号に関連付けられた記述を更新する。そして、処理はステップS138へ進む。
一方、ステップS134において、シナリオ管理部108として機能するCPU2は、編集操作の取消しがユーザによって指示されたか否かを判断する。すなわち、CPU2は、図21などに示すキャンセルボタン188がカーソルCRSなどによって選択されたか否かを判断する。編集操作の取消しがユーザによって指示された場合(ステップS134においてYESの場合)には、処理はステップS136へ進み、そうでなければ(ステップS134においてNOの場合)、処理はステップS128へ戻る。
ステップS136において、シナリオ管理部108として機能するCPU2は、ステップS128において受付けた編集操作の内容を削除する。そして、処理はステップS138へ進む。
ステップS138において、シナリオ管理部108として機能するCPU2は、シナリオ詳細編集モード開始がユーザによって指示されたか否かを判断する。すなわち、CPU2は、制御ウィンドウ160内のシナリオ詳細編集モードボタン174がカーソルCRSなどによって選択されたか否かを判断する。シナリオ詳細編集モード開始がユーザによって指示された場合(ステップS138においてYESの場合)には、処理はステップS170へ進み、そうでなければ(ステップS138においてNOの場合)、処理はステップS140へ進む。
ステップS140において、シナリオ管理部108として機能するCPU2は、シナリオページの再生がユーザによって指示されたか否かを判断する。すなわち、CPU2は、制御ウィンドウ160内のいずれかの再生ボタンがカーソルCRSなどによって選択されたか否かを判断する。シナリオページの再生がユーザによって指示された場合(ステップS140においてYESの場合)には、処理はステップS142へ進み、そうでなければ(ステップS140においてNOの場合)、処理は終了する。
ステップS142において、シナリオ管理部108として機能するCPU2は、再生が指示されたシナリオページを特定する。すなわち、CPU2は、選択された制御ウィンドウ160内の再生ボタンがいずれのシナリオ番号およびシナリオページ番号に関連付けられたものであるかを判断する。なお、1つのシナリオに複数のサブシナリオが含まれる場合には、いずれのサブシナリオを再生するかについても特定する。
続くステップS144において、シナリオ管理部108として機能するCPU2は、シナリオ情報400からステップS142において特定したシナリオ番号およびシナリオページ番号に関連付けて定義されている記述に基づいて、表示対象オブジェクトの識別番号および付与されている表示属性の内容を取得する。続くステップS146において、シナリオ管理部108として機能するCPU2は、WS情報300からステップS144において取得した識別番号に対応するオブジェクトの記述を読出す。さらに続くステップS148において、シナリオ管理部108として機能するCPU2は、ステップS146において取得したオブジェクトの記述と、ステップS144において取得した付与されている表示属性とに基づいて、対象オブジェクトの表示用情報を取得する。さらに続くステップS150において、シナリオ管理部108として機能するCPU2は、すべての対象オブジェクトについて、表示用情報を取得したか否かを判断する。未だ表示用情報を取得していない対象オブジェクトがあれば(ステップS150においてNOの場合)、ステップS146以下の処理が繰返される。これに対して、すべての対象オブジェクトについての表示用情報を取得していれば(ステップS150においてYESの場合)、処理はステップS152へ進む。
ステップS152において、シナリオ管理部108として機能するCPU2は、ステップS144において取得した(1つまたは複数の)表示用情報に基づいて、シナリオページとして表示するビュー表示設定を算出する。すなわち、図35に示すように、CPU2は、ビュー表示の対象となるワークスペース上の領域を定義する開始座標および終了座標などを算出する。続くステップS154において、シナリオ管理部108として機能するCPU2は、ステップS144において取得した(1つまたは複数の)表示用情報に基づいて、シナリオページをレンダリングしたビュー表示を生成し、出力装置6からシナリオ表示ウィンドウ180として出力する。そして、処理はステップS160へ進む。
ステップS160において、シナリオ管理部108として機能するCPU2は、シナリオ再生中に編集操作がユーザによって指示されたか否かを判断する。すなわち、CPU2は、シナリオ表示ウィンドウ180内に表示されるいずれかのオブジェクトがカーソルCRSなどによって選択されたか否かを判断する。シナリオ再生中に編集操作がユーザによって指示された場合(ステップS160においてYESの場合)には、処理はステップS162へ進み、そうでなければ(ステップS160においてNOの場合)、処理は終了する。
ステップS162において、シナリオ管理部108として機能するCPU2は、編集操作が指示されたオブジェクトを特定し、その識別番号を取得する。続くステップS164において、シナリオ管理部108として機能するCPU2は、ユーザが行なった編集操作の内容を受付ける。続くステップS166において、CPU2は、ステップS162において受付けた編集操作の内容に基づいて、ステップS162において特定した識別番号に関連付けられたWS情報300の記述を更新する。さらに続くステップS168において、シナリオ管理部108として機能するCPU2は、シナリオ表示ウィンドウ180内のビュー表示を更新する。そして、処理はステップS160へ戻る。
これに対して、ステップS170において、シナリオ管理部108として機能するCPU2は、シナリオ情報400に含まれる<link>タグおよび</link>タグを抽出して、現在のシナリオに含まれるシナリオページおよびその再生順序を特定する。続くステップS172において、シナリオ管理部108として機能するCPU2は、ステップS170において特定した現在のシナリオに含まれるシナリオページおよびその再生順序に基づく、再生順序インジケータ210を含むシナリオ詳細編集ウィンドウ200を出力装置6から出力する。なお、現在のシナリオに複数のサブシナリオが既に作成されている場合には、シナリオ管理部108として機能するCPU2は、各サブシナリオと対応付けられた選択ボタン(図47のボタン231および232など)をシナリオ詳細編集ウィンドウ200内で選択可能に表示する。そして、処理はステップS174へ進む。
ステップS174において、シナリオ管理部108として機能するCPU2は、シナリオ詳細編集ウィンドウ200においてサブシナリオを選択するためのいずれかの選択ボタンがカーソルCRSなどによって選択されたか否かを判断する。いずれかの選択ボタンが選択された場合(ステップS174においてYESの場合)には、処理はステップS176へ進み、そうでなければ(ステップS174においてNOの場合)には、処理はステップS178へ進む。
ステップS176において、シナリオ管理部108として機能するCPU2は、再生順序インジケータ210において、ステップS174において選択されたサブシナリオに応じた再生順序を強調表示する。そして、処理はステップS178へ進む。
ステップS178において、シナリオ管理部108として機能するCPU2は、再生順序インジケータ210において、2つのシナリオページ(リンク)を結ぶいずれかのノードが選択されたか否かを判断する。いずれかのノードが選択された場合(ステップS178においてYESの場合)には、処理はステップS180へ進み、そうでなければ(ステップS178においてNOの場合)には、処理はステップS200へ進む。
ステップS180において、シナリオ管理部108として機能するCPU2は、再生順序インジケータ210において、「新規リンク」ボタン222がカーソルCRSなどによって選択されたか否かを判断する。「新規リンク」ボタン222が選択された場合(ステップS180においてYESの場合)には、処理はステップS182へ進み、そうでなければ(ステップS180においてNOの場合)には、処理はステップS200へ進む。
ステップS182において、シナリオ管理部108として機能するCPU2は、ステップS178において選択されているノードに関連付けた、シナリオページを編集するためのシナリオページ編集ウィンドウ183を出力装置6から出力する。なお、シナリオページ編集ウィンドウ183に表示される内容は、バッファとして一時的に記憶される。そして、処理はステップS210へ進む。
ステップS200において、シナリオ管理部108として機能するCPU2は、再生順序インジケータ210において、いずれかのシナリオページ(リンク)を示すオブジェクトが選択されたか否かを判断する。いずれかのシナリオページ(リンク)を示すオブジェクトが選択された場合(ステップS200においてYESの場合)には、処理はステップS202へ進み、そうでなければ(ステップS200においてNOの場合)には、処理はステップS230へ進む。
ステップS202において、シナリオ管理部108として機能するCPU2は、選択されているオブジェクトの実行が指示されたか否かを判断する。典型的には、CPU2は、ユーザがマウスなどからのいわゆるダブルクリックを受付けたか否かを判断する。選択されているオブジェクトの実行が指示された場合(ステップS202においてYESの場合)には、処理はステップS204へ進み、そうでなければ(ステップS202においてNOの場合)には、処理はステップS206へ進む。
ステップS204において、シナリオ管理部108として機能するCPU2は、シナリオ情報400から、選択されたシナリオページ(リンク)を示すオブジェクトに対応する記述を読出して、その内容を編集するためのシナリオページ編集ウィンドウ183を出力装置6から出力する。なお、シナリオページ編集ウィンドウ183に表示される内容は、バッファとして一時的に記憶される。そして、処理はステップS210へ進む。
ステップS206において、シナリオ管理部108として機能するCPU2は、「シナリオ複製」ボタン226がカーソルCRSなどによって選択されたか否かを判断する。「シナリオ複製」ボタン226が選択された場合(ステップS206においてYESの場合)には、処理はステップS208へ進み、そうでなければ(ステップS206においてNOの場合)には、処理はステップS230へ進む。
ステップS208において、シナリオ管理部108として機能するCPU2は、シナリオ情報400の記載のうち、選択されたシナリオページ(リンク)を示すオブジェクトに対応する記述を読出して、その内容を独立したシナリオページとしてシナリオ情報400に追加する。そして、処理はステップS230へ進む。
ステップS210において、シナリオ管理部108として機能するCPU2は、ユーザが行なった編集操作の内容を受付ける。続くステップS212において、CPU2は、ステップS210において受付けた編集操作の内容に基づいて、現在のシナリオページ編集ウィンドウ183に対応付けられたバッファの内容を更新する。なお、この更新されたバッファの内容に応じて、シナリオページ編集ウィンドウ183の表示内容も更新される。さらに続くステップS214において、シナリオ管理部108として機能するCPU2は、「シナリオ更新」ボタン228がカーソルCRSなどによって選択されたか否かを判断する。「シナリオ更新」ボタン228が選択された場合(ステップS214においてYESの場合)には、処理はステップS218へ進み、そうでなければ(ステップS214においてNOの場合)には、処理はステップS216へ進む。
ステップS216において、シナリオ管理部108として機能するCPU2は、「シナリオ上書き」ボタン224がカーソルCRSなどによって選択されたか否かを判断する。「シナリオ上書き」ボタン224が選択された場合(ステップS216においてYESの場合)には、処理はステップS220へ進み、そうでなければ(ステップS216においてNOの場合)には、処理はステップS222へ進む。
ステップS218において、シナリオ管理部108として機能するCPU2は、現在のシナリオページに対応付けられたバッファの内容をシナリオ情報400に追加するとともに、シナリオ情報400に対して、サブシナリオの内容を識別するための<sub_scenario>タグを追加および/またはその値を更新する。このとき、シナリオページ編集ウィンドウ183は非表示化される。そして、処理はステップS230へ進む。
ステップS220において、シナリオ管理部108として機能するCPU2は、現在のシナリオページに対応付けられたバッファの内容でシナリオ情報400の対応する記述を上書きする。このとき、シナリオページ編集ウィンドウ183は非表示化される。そして、処理はステップS230へ進む。
ステップS222において、シナリオ管理部108として機能するCPU2は、シナリオページ編集ウィンドウ182上のキャンセルボタン188がカーソルCRSなどによって選択されたか否かを判断する。キャンセルボタン188が選択された場合(ステップS222においてYESの場合)には、処理はステップS224へ進み、そうでなければ(ステップS222においてNOの場合)には、ステップS210以下の処理が繰返される。
ステップS224において、シナリオ管理部108として機能するCPU2は、現在のシナリオページに対応付けられたバッファの内容をリセットした上で、シナリオページ編集ウィンドウ183を非表示化する。そして、処理はステップS230へ進む。
ステップS230において、シナリオ管理部108として機能するCPU2は、シナリオ表示ウィンドウ180内に表示される「シナリオ通常モード」ボタン230がカーソルCRSなどによって選択されたか否かを判断する。「シナリオ通常モード」ボタン230がユーザによって指示された場合(ステップS230においてYESの場合)には、処理はステップS232へ進み、そうでなければ(ステップS230においてNOの場合)、ステップS174以下の処理が繰返される。
ステップS232において、シナリオ管理部108として機能するCPU2は、シナリオページ編集ウィンドウ183を非表示化する。すなわち、CPU2は、シナリオ詳細編集モードを終了する。そして、処理はステップS100へ戻る。
<変形例>
上述したシナリオおよびシナリオページの記述形式、それらの記録方法、およびシナリオの再生方法などについては、上述した実施の形態のものに限定されるものではない。例えば、シナリオおよびシナリオページは、参照情報(リンク)の順序付の集合として記述することもできる、あるいは、別途リスト等の形式で保持したオブジェクトの表示属性をシナリオ再生時に処理装置PCにおいて解釈可能な形式に変換して利用する形式でもよい。
上述したシナリオおよびシナリオページの記述形式、それらの記録方法、およびシナリオの再生方法などについては、上述した実施の形態のものに限定されるものではない。例えば、シナリオおよびシナリオページは、参照情報(リンク)の順序付の集合として記述することもできる、あるいは、別途リスト等の形式で保持したオブジェクトの表示属性をシナリオ再生時に処理装置PCにおいて解釈可能な形式に変換して利用する形式でもよい。
また、上述の実施の形態においては、シナリオ情報400として記述される各オブジェクトに付与される表示属性として、WS情報300に定義される情報以外の情報のみを記録し、シナリオ再生時に、シナリオ情報400に含まれる表示属性の内容とWS情報300の記述内容との両方を合成してビューを生成する処理について説明を行ったが、WS情報300の記述内容をも含めた状態でシナリオ情報400を生成しておき、再生時には主としてシナリオ情報400の情報のみを用いる方法でもよい。ただし、この場合であっても、WS情報300に含まれる対応するオブジェクトについての定義と関連付ける必要があるので、これらの関連付けを判定する処理が付加される。
また、上述の実施の形態においては、あるユーザが作業する処理装置PC上でシナリオ表示を行なう場合の構成について例示したが、処理装置PCに接続されたプロジェクター装置などでシナリオ表示の内容をより大型のスクリーンなどに投射するような使用形態も想定される。あるいは、サーバ装置SRVにWS情報300およびシナリオ情報400を格納する場合には、当該シナリオを作成したユーザが説明を行なう先のユーザに向けて、サーバ装置SRV上のWS情報300およびシナリオ情報400の格納先のアドレスを示した電子メールなどを送付し、当該電子メールを受取ったユーザが自身の処理装置PC上でシナリオ表示を見るような使用形態も想定される。さらに、あるユーザが作成したWS情報300およびシナリオ情報400のファイル自体を電子メールなどによって、説明を行なう先のユーザに向けて送信するような使用形態であってもよい。
<実施の形態による作用・効果>
本実施の形態に従うワークスペースのような作業空間においては、作業を行なったユーザ自身は、ワークスペース上の作業結果をそのままの形で残す方が、後にその内容を思い出しやすいが、他のユーザにとってみれば、ワークスペース上の作業結果が整理されてないと、その内容を理解し難い。そのため、ワークスペース上の作業結果をそのままの状態で他人に見せても理解してもらうことは難しい場合が多い。そこで、本実施の形態に従うワークスペースでは、ワークスペース上で既に作成した内容(オブジェクト)に対して、そのオブジェクトの表示形態や記述とは独立して、説明用資料として相応しい特定のオブジェクトを参照情報(リンク)として記録するとともに、説明用資料として相応しい表示属性を付与する。さらに、このようなオブジェクトを含むシナリオページを複数記録しておき、説明したい順序でシナリオページを順に指定して表示を切替えていくことで、ワークスペース上の作業内容についての説明を簡単に行なうことができる。
本実施の形態に従うワークスペースのような作業空間においては、作業を行なったユーザ自身は、ワークスペース上の作業結果をそのままの形で残す方が、後にその内容を思い出しやすいが、他のユーザにとってみれば、ワークスペース上の作業結果が整理されてないと、その内容を理解し難い。そのため、ワークスペース上の作業結果をそのままの状態で他人に見せても理解してもらうことは難しい場合が多い。そこで、本実施の形態に従うワークスペースでは、ワークスペース上で既に作成した内容(オブジェクト)に対して、そのオブジェクトの表示形態や記述とは独立して、説明用資料として相応しい特定のオブジェクトを参照情報(リンク)として記録するとともに、説明用資料として相応しい表示属性を付与する。さらに、このようなオブジェクトを含むシナリオページを複数記録しておき、説明したい順序でシナリオページを順に指定して表示を切替えていくことで、ワークスペース上の作業内容についての説明を簡単に行なうことができる。
このとき、ワークスペース上の元の作業結果自体は、そのままの状態で維持されるため、例えば、当該ユーザ自身用の作業結果(すなわち、過去に行なった作業において、ワークスペースのどの辺でどういうオブジェクトを配置したのかといった経緯等を覚えているままなので、当該ユーザにはわかり易い状態になっている)として保存および利用できる。同時に、シナリオ再生時(説明時)に、ワークスペース上の作業結果を参照して修正する必要が生じた場合には、スムーズにその内容を当該ユーザ自身用の資料(ワークスペース上の作業結果)に反映することができる。
これにより、ワークスペース上で作業した内容をそのまま説明用や保存用の資料とすることができる。また、説明の順序・倍率・説明対象オブジェクト・表示装飾などを自在に設定できるので、説明時に対象者(他人)の能力や立場などに応じて、どの順番でどこを注目すればいいか容易理解できる。また、シナリオ情報400は、予め参照情報(リンク)として記録されているので、説明対象のオブジェクトが脱落するようなことがなく、スムーズに説明を行なうことができる。
また、順序・倍率・説明対象オブジェクト・表示装飾は、ワークスペース上のオブジェクトとは独立に設定できるため、シチュエーションに応じて同じオブジェクトを異なるタイミングや表現方法で表示できる。
また、ワークスペース上の作業結果は、説明用の資料とは別に自分用の資料としてそのまま残せ、かつ(実際に見る実体は同じものなので)説明用の資料から自分用の資料へは自由に移行することができる。さらに、説明中に(説明用資料には含めなかった)関連情報も見たり、説明時の遣り取りの中で元の作業結果を編集したりすることが自由にできる。
また、ワークスペース上での作業内容をもとに他人に説明するためや、保存したWS情報300を(他人や将来の自分が)参照する際に作業経緯や作業結果を思い出すための説明用に、シナリオに記述したリンクを順にたどっていくだけで注目すべきポイントだけを適切に順を追って理解できるようになる。作業結果を利用できるため、説明のための資料を作る作業負荷を低減できる。また、説明時に予め説明用に用意した画面以外の内容を追加参照したい場合や、ワークスペースに何らかの修正を行なう必要が生じた場合にでも、スムーズに追加参照や修正が可能になる。
また、この発明の実施の形態によれば、1つのシナリオ内に、一部のシナリオページを共有し、かつ、互いに独立したシナリオページを含む複数のサブシナリオを定義することができる。そのため、複数の関連するサブシナリオ間において、同時にシナリオの編集操作を行なうことができる。複数のシナリオページにわたって編集が必要となる場合であっても、その操作にかかる時間や費用を低減できる。典型的には、共有されたシナリオページについては、当該シナリオページを修正することで、それを共有する複数のサブシナリオに対して修正内容を一括して反映することができる。なお、ヘッダ部分や装飾などをすべてのシナリオページに一括して追加・変更することも可能である。
一方で、関連するサブシナリオ同士は、原則として互いに独立しているため、あるサブシナリオについての変更によって、別のサブシナリオについての変更などが制約されることはない。また、一方のサブシナリオが有する特定のシナリオページを、他方のサブシナリオが含まないようにするといった操作を容易に行なうことができる。
このような機能によって、作成済のシナリオから複数のサブシナリオを容易に作成することができる。そのため、説明相手や状況に応じてプレゼンテーションの内容を変える必要がある場合などに、より簡易かつ迅速に作業を完了させることができるとともに、シナリオページに何らかの変更があった場合にも、その変更内容を互いに関連付けられた、すなわちシナリオ間で共有されているシナリオページにより容易かつ確実に反映させることができる。
[その他の実施の形態]
本発明に係るプログラムは、コンピュータのオペレーティングシステム(OS)の一部として提供されるプログラムモジュールのうち、必要なモジュールを所定の配列で所定のタイミングで呼出して処理を実行させるものであってもよい。その場合、プログラム自体には上記モジュールが含まれずOSと協働して処理が実行される。このようなモジュールを含まないプログラムも、本発明に係るプログラムに含まれ得る。
本発明に係るプログラムは、コンピュータのオペレーティングシステム(OS)の一部として提供されるプログラムモジュールのうち、必要なモジュールを所定の配列で所定のタイミングで呼出して処理を実行させるものであってもよい。その場合、プログラム自体には上記モジュールが含まれずOSと協働して処理が実行される。このようなモジュールを含まないプログラムも、本発明に係るプログラムに含まれ得る。
さらに、本発明に係るプログラムは、他のプログラムの一部に組込まれて提供されるものであってもよい。その場合にも、プログラム自体には上記他のプログラムに含まれるモジュールが含まれず、他のプログラムと協働して処理が実行される。このような他のプログラムに組込まれたプログラムも、本発明に係るプログラムに含まれ得る。
提供されるプログラム製品は、ハードディスクなどのプログラム格納部にインストールされて実行される。なお、プログラム製品は、プログラム自体と、プログラムが記憶された記憶媒体とを含む。
さらに、本発明に係るプログラムによって実現される機能の一部または全部を専用のハードウェアによって構成してもよい。
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
2 CPU、4 内部バス、6 出力装置、8 通信インターフェイス、10 入力装置、12 ハードディスク、14 メモリ、16 CD−ROMドライブ、16a CD−ROM、18 FDドライブ、18a フレキシブルディスク、100 処理部、102 操作管理部、104 ビュー管理部、106 オブジェクト管理部、108 シナリオ管理部、110 空間管理部、112 入出力部、114 作業メモリ、120 WS格納部、120a WS情報、130 入出力制御装置、300 ワークスペース(WS)情報、400 シナリオ情報、NW ネットワーク、PC,PC1〜PCN 情報処理装置(処理装置)、SRV サーバ装置。
Claims (10)
- 仮想的な作業空間を提供するための情報処理装置であって、
前記作業空間と前記作業空間に含まれるオブジェクトとを定義する第1情報を管理する第1管理手段と、
前記仮想作業空間の少なくとも一部の範囲に対応する内容を一連に表現するための第2情報を管理する第2管理手段とを備え、前記第2情報には、ページ単位に区切られ、かつ、その表現順序が予め定められたシナリオが定義可能であり、さらに、
前記第2情報に基づいて、前記表現順序に従って、各ページの内容を順次描画する表示手段を備え、
前記第2管理手段は、
前記第2情報において、前記シナリオとして複数のページからなる第1シナリオが定義されている場合に、当該第1シナリオに含まれる一部のページを共有し、かつ、当該第1シナリオに含まれるページとは独立したページを含む第2シナリオを前記第2情報に追加するための手段を含む、情報処理装置。 - 前記第2管理手段は、ユーザ操作に応じて、前記第1シナリオに含まれるページのうち指定されたページを異ならせることで前記第2シナリオを生成するための手段をさらに含む、請求項1に記載の情報処理装置。
- 前記第2管理手段は、前記第2情報における定義内容に含まれるシナリオを構成するページ間の関連付けを視覚的に表現する手段をさらに含む、請求項1または2に記載の情報処理装置。
- 前記第2管理手段は、
前記視覚的に表現されるページ間の関連付けに対して、ページの追加または削除の対象ページの指定を受付ける手段と、
前記第2情報から、指定された対象ページの定義を追加または削除する手段とをさらに含む、請求項3に記載の情報処理装置。 - 前記第2管理手段は、
前記2情報に定義されているシナリオに含まれるページの指定を受付ける手段と、
前記指定されたページの内容に対する修正指示を受付ける手段と、
前記受付けた修正指示に応じて前記第2情報を更新する手段とをさらに含む、請求項1〜4のいずれか1項に記載の情報処理装置。 - 前記第2情報は、前記第1情報に含まれる特定のオブジェクトの定義内容と関連付けるための参照情報を含み、
前記表示手段は、前記第2情報に含まれる前記参照情報に基づいて、前記第1情報の定義内容を参照するとともに、当該参照することで得られた情報に基づいて、各ページの内容を順次描画する、請求項1〜5のいずれか1項に記載の情報処理装置。 - 前記第2情報は、ページ単位に区切られた表現すべき内容の定義を複数含み、
前記複数の定義の各々には、対応するページが使用されるシナリオおよび当該シナリオにおける表現順序を特定するための識別情報が付加される、請求項1〜6のいずれか1項に記載の情報処理装置。 - 前記第2管理手段は、ユーザ操作に応答して、前記第2情報において指定されるオブジェクトに対して表示属性を付与するための手段をさらに含む、請求項1〜7のいずれか1項に記載の情報処理装置。
- 情報処理装置を用いて仮想的な作業空間を提供する方法であって、
前記作業空間と前記作業空間に含まれるオブジェクトとを定義する第1情報を管理するステップと、
前記仮想作業空間の少なくとも一部の範囲に対応する内容を一連に表現するための第2情報を管理するステップとを備え、前記第2情報には、ページ単位に区切られ、かつ、その表現順序が予め定められたシナリオが定義可能であり、さらに、
前記第2情報に基づいて、前記表現順序に従って、各ページの内容を順次描画するステップを備え、
前記第2情報を管理するステップは、
前記第2情報において、前記シナリオとして複数のページからなる第1シナリオが定義されている場合に、当該第1シナリオに含まれる一部のページを共有し、かつ、当該第1シナリオに含まれるページとは独立したページを含む第2シナリオを前記第2情報に追加するためのステップを含む、方法。 - コンピュータを仮想的な作業空間を提供する情報処理装置として機能させるプログラムであって、前記プログラムは、前記コンピュータに、
前記作業空間と前記作業空間に含まれるオブジェクトとを定義する第1情報を管理するステップと、
前記仮想作業空間の少なくとも一部の範囲に対応する内容を一連に表現するための第2情報を管理するステップとを実行させ、前記第2情報には、ページ単位に区切られ、かつ、その表現順序が予め定められたシナリオが定義可能であり、さらに、
前記第2情報に基づいて、前記表現順序に従って、各ページの内容を順次描画するステップを実行させ、
前記第2情報を管理するステップは、
前記第2情報において、前記シナリオとして複数のページからなる第1シナリオが定義されている場合に、当該第1シナリオに含まれる一部のページを共有し、かつ、当該第1シナリオに含まれるページとは独立したページを含む第2シナリオを前記第2情報に追加するためのステップを含む、プログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009120051A JP2010267214A (ja) | 2009-05-18 | 2009-05-18 | 情報処理装置、方法およびプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009120051A JP2010267214A (ja) | 2009-05-18 | 2009-05-18 | 情報処理装置、方法およびプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2010267214A true JP2010267214A (ja) | 2010-11-25 |
Family
ID=43364106
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009120051A Withdrawn JP2010267214A (ja) | 2009-05-18 | 2009-05-18 | 情報処理装置、方法およびプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2010267214A (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012185574A (ja) * | 2011-03-03 | 2012-09-27 | Ricoh Co Ltd | サービス提供システム、情報処理サーバ、情報処理プログラム及び記録媒体 |
JP2014503928A (ja) * | 2011-01-27 | 2014-02-13 | ヒューレット−パッカード デベロップメント カンパニー エル.ピー. | 変更可能な経路を有する電子書籍 |
JP2016170613A (ja) * | 2015-03-12 | 2016-09-23 | コニカミノルタ株式会社 | 会議支援装置、会議支援システム、会議支援プログラム、及び会議支援方法 |
-
2009
- 2009-05-18 JP JP2009120051A patent/JP2010267214A/ja not_active Withdrawn
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014503928A (ja) * | 2011-01-27 | 2014-02-13 | ヒューレット−パッカード デベロップメント カンパニー エル.ピー. | 変更可能な経路を有する電子書籍 |
US9557895B2 (en) | 2011-01-27 | 2017-01-31 | Hewlett Packard Enterprise Development Lp | Electronic book with changeable paths |
JP2012185574A (ja) * | 2011-03-03 | 2012-09-27 | Ricoh Co Ltd | サービス提供システム、情報処理サーバ、情報処理プログラム及び記録媒体 |
JP2016170613A (ja) * | 2015-03-12 | 2016-09-23 | コニカミノルタ株式会社 | 会議支援装置、会議支援システム、会議支援プログラム、及び会議支援方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8635549B2 (en) | Directly assigning desktop backgrounds | |
US5577188A (en) | Method to provide for virtual screen overlay | |
JP5211430B2 (ja) | 電子会議システム、電子会議支援プログラム、電子会議支援方法、電子会議制御装置、会議サーバコンピュータ | |
US5694544A (en) | Conference support system which associates a shared object with data relating to said shared object | |
US7783983B1 (en) | User interface for controls | |
Zaman et al. | Gem-ni: A system for creating and managing alternatives in generative design | |
US20070124370A1 (en) | Interactive table based platform to facilitate collaborative activities | |
JP2001209470A (ja) | 表示インターフェイス方法及び装置並びにプログラム記憶媒体 | |
JP5862103B2 (ja) | 電子黒板装置、画面表示方法およびプログラム | |
JP2008117019A (ja) | 会議情報管理装置、会議再生装置、設備管理装置、会議システム及びプログラム | |
WO2010090286A1 (ja) | 情報処理システム、情報処理装置および情報処理方法 | |
JP2007066081A (ja) | 電子会議装置及び電子会議装置制御プログラム | |
JP2010267214A (ja) | 情報処理装置、方法およびプログラム | |
JP3369734B2 (ja) | 3次元計算機支援設計装置及び方法 | |
JP6209868B2 (ja) | 情報端末、情報処理プログラム、情報処理システム、及び情報処理方法 | |
JP2019139332A (ja) | 情報処理装置、情報処理方法及び情報処理プログラム | |
JP2010244246A (ja) | 情報処理装置、方法およびプログラム | |
JPH06103018A (ja) | 表示方式 | |
JP2010287158A (ja) | 情報処理装置、方法およびプログラム | |
JP2011059770A (ja) | プロセス情報管理装置および方法およびプロセス情報管理プログラムを記録した記憶媒体 | |
JP2010250688A (ja) | 情報処理装置、方法およびプログラム | |
JP4736081B2 (ja) | コンテンツ閲覧システム、コンテンツサーバ、プログラムおよび記憶媒体 | |
JPH10240732A (ja) | Www用htmlファイル作成方法及び装置 | |
JP7011363B1 (ja) | 絵コンテ制作装置、絵コンテ制作方法及び絵コンテ制作プログラム | |
JP7375308B2 (ja) | 情報処理装置及びプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Withdrawal of application because of no request for examination |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20120807 |