JP2001273520A - マルチメディアドキュメント統合表示システム - Google Patents

マルチメディアドキュメント統合表示システム

Info

Publication number
JP2001273520A
JP2001273520A JP2000082623A JP2000082623A JP2001273520A JP 2001273520 A JP2001273520 A JP 2001273520A JP 2000082623 A JP2000082623 A JP 2000082623A JP 2000082623 A JP2000082623 A JP 2000082623A JP 2001273520 A JP2001273520 A JP 2001273520A
Authority
JP
Japan
Prior art keywords
dimensional
function
data
scene
function unit
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.)
Pending
Application number
JP2000082623A
Other languages
English (en)
Inventor
Takashi Yoshida
吉田  隆
Hiroyuki Ito
比呂行 伊藤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
FAMOTIK Ltd
Original Assignee
FAMOTIK Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by FAMOTIK Ltd filed Critical FAMOTIK Ltd
Priority to JP2000082623A priority Critical patent/JP2001273520A/ja
Priority to US09/617,885 priority patent/US6741242B1/en
Publication of JP2001273520A publication Critical patent/JP2001273520A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/958Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
    • G06F16/986Document structures and storage, e.g. HTML extensions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2210/00Indexing scheme for image generation or computer graphics
    • G06T2210/61Scene description

Abstract

(57)【要約】 【課題】 音声、3次元画像、2次元画像をWebブラウ
ザ上でプラグイン等の専用のビューワーなどを必要とせ
ずに軽快に動作させる環境を構築する。 【解決手段】 XMLパーサ12と連携し、XMLで記述され
た文書中の各種描画タグを解釈して、各種描画プリミテ
ィブを同期させ動作させるフレームワークを生成し、こ
れに基づいて2次元描画命令及び3次元描画命令を生成
する複合メディアドキュメント統合フレームワーク機能
部5(MMIDF機能部)と、前記フレームワーク機能部5
から前記2次元描画命令を受け取り、ブラウザ3上に当
該描画命令を実行することのできる2次元キャンバスを
生成する2次元レンダリング機能部6と、前記フレーム
ワーク機能部5から前記3次元描画命令を受け取り、ブ
ラウザ3上に当該描画命令を実行することのできる3次
元キャンバスを生成する3次元レンダリング機能部6と
を有する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、イメージ、ビデ
オ、オーディオ、3次元グラフィックスを含む多種多様
な情報形式を統一的に取り扱え、これらを多種多様な形
で組み合わせて利用することのできる、複合メディアド
キュメント統合表示システムに関する。
【0002】
【従来の技術】近年、インターネットのWebコンテンツ
分野においては、利用者の入手できる情報が数年来膨大
な量に膨れ上がっており、情報の形式も、テキスト、イ
メージ、ビデオ、オーディオ、3次元グラフィックスな
ど千差万別に増えている。
【0003】一方、多種多様なマルチメディアデータを
統一環境で取り扱う方法は未発達であり、特に、3次元
空間の中でこれら多様な情報形式を統一的に取り扱うこ
とのできる方式の実現が期待されている。
【0004】
【発明が解決しようとする課題】この発明は、上述のよ
うな事情に鑑みてなされたもので、イメージ、ビデオ、
オーディオ、3次元グラフィックスを含む多種多様な情
報形式を統一的に取り扱うために、統一記述の言語仕様
として拡張マークアップ言語(XML)の拡張機能を利用
し、Webに点在するデータ群を効果的に組み合わせ、Web
コンテンツクリエータ及びWeb利用者が、多種多様で大
量のデータから求める情報を最適な形で取り出し利用で
きるような複合メディアドキュメント統合表示システム
を提供することを目的とするものである。
【0005】また、この発明のさらに詳しい目的は、音
声、3次元画像、2次元画像を簡単に指定でき、Webブ
ラウザ上でプラグイン等の専用のビューワーやプレーヤ
ーなどを必要とせずに軽快に動作させる環境を構築でき
る複合メディアドキュメント統合表示システムを提供す
ることにある。
【0006】
【課題を解決するための手段】上記目的を達成するた
め、この発明の主要な観点によれば、パーサと連携し、
マークアップ言語で記述された文書中の各種描画タグを
解釈して、各種描画プリミティブを同期させ動作させる
フレームワークを生成し、これに基づいて2次元描画命
令及び3次元描画命令を生成する複合メディアドキュメ
ント統合フレームワーク機能と、前記フレームワーク機
能から前記2次元描画命令を受け取り、ブラウザ上に当
該描画命令を実行することのできる2次元キャンバスを
生成する2次元レンダリング機能と、前記フレームワー
ク機能から前記3次元描画命令を受け取り、ブラウザ上
に当該描画命令を実行することのできる3次元キャンバ
スを生成する3次元レンダリング機能とを有することを
特徴とする複合メディアドキュメント結合システムが提
供される。ここで、前記マークアップ言語は、XMLであ
ることが好ましい。また、前記2次元レンダリング機能
及び3次元レンダリング機能は、JavaAWTの2次元を描
画するための命令セットで2次元若しくは3次元を表現
するグラフィック表示データを生成し、ブラウザに渡す
ものであることが望ましい。
【0007】このような構成によれば、全ての機能の実
装をJAVA等の記述言語を利用しXML等のマークアップ言
語の枠組みで、音声、3次元画像、2次元画像を簡単に
指定し、Webブラウザ上で専用のビューア、プレーヤー
を必要とせずに動作させる環境を構築することができ
る。
【0008】1の実施形態によれば、前記フレームワー
ク機能は、前記パーサにより起動され、このパーサーか
ら受け取った所定のDTDに基づくコールバックデータに
基づいて、描画種別に対してパラメータを付加してなる
実行要求記述データを生成する実行要求生成機能と、こ
の実行要求記述データに基いて2次元描画命令及び3次
元描画命令を生成するマネージャ機能とを有するもので
ある。
【0009】この場合、前記実行要求生成機能は、前記
パーサから、SVGのDTDに基づく要素、属性名、値の内容
を示すコールバックデータを受け取り、2次元描画、音
声、動画、イメージ、テキストまたはハイパーリンクか
ら成る実行要求記述データを生成するSVG機能を有する
ものであることが好ましい。
【0010】また、前記実行要求生成機能は、前記パー
サから、この発明に適合するように新たに設定したCMW
(クロスメディアワールド)のDTDに基づく要素、属性
名、値の内容を示すコールバックデータを受け取り、3
次元図形のマテリアル、テクスチャ、カメラ、ライト、
フォント、インターポレータ、タイマー、センサー、イ
メージマッピング、XVLファイルまたはVRMLファイルか
ら成る実行要求記述データを生成するCMW機能を有する
ものであることが好ましい。
【0011】さらに、前記実行要求生成機能は、前記パ
ーサから、この発明に適合するように新たに設定したTV
X(TVML with XML)のDTDに基づく要素、属性名、値の
内容を示すコールバックデータを受け取り、音声、動
画、イメージ、3次元図形のマテリアル、テクスチャ、
カメラ、ライト、インターポレータ、タイマー、センサ
ーまたはVRMLファイルから成る実行要求記述データを生
成するTVX機能を有するものであることが好ましい。
【0012】このような構成によれば、全ての機能をXM
L文書で記述することが可能になり、異なる形式の複数
のメディアを複合することが容易になる。
【0013】1の実施形態によれば、前記マネージャ機
能は、前記実行要求記述データを構造化することで、マ
ークアップ言語で記載された文書の文書構造全体をツリ
ー構造化し、前記文書を表現するために、前記ツリー構
造内の実行要求記述データに応じた2次元描画命令若し
くは3次元描画命令を生成するものである。
【0014】この場合、前記マネージャ機能は、前記ツ
リー構造内の実行要求記述データの位置に応じて、2次
元描画記述と3次元描画記述とをミキシングし、前記3
次元レンダリング機能により提供される3次元キャンパ
スに前記2次元レンダリング機能により提供される2次
元キャンバスを埋め込む2次元埋め込み命令を生成する
ものであることが好ましい。
【0015】このような構成によれば、2次元記述と3
次元記述とを複合することが容易になり、3次元キャン
パス上に2次元イメージを埋め込むことができる。そし
て、このとき、3次元に埋め込まれた2次元イメージは
2次元の属性を保持したままである。
【0016】1の実施形態によれば、前記マネージャ機
能は、前記ブラウザを通して受け取った操作イベントを
2次元描画命令若しくは3次元描画命令に変換する機能
を有する。このような構成によれば、利用者の操作イベ
ントを受け、これに応じた2次元描画命令及び3次元描
画命令を生成することができる。
【0017】1の実施形態によれば、前記2次元フレー
ムワーク機能、2次元レンダリング機能、及び3次元レ
ンダリング機能は前記ブラウザによって起動され、オブ
ジェクトとして読み込まれて動作するものである。この
ような構成によれば、全ての機能をWebサーバから要求
に応じてダウンロードして実行させることができる。
【0018】1の実施形態によれば、前記2次元レンダ
リング機能は、前記マネージャ機能から2次元描画命令
を受け取り、その内容に応じた描画メソッドコールを生
成する2次元処理内容振り分け機能と、前記描画メソッ
ドコールを受け取り、メディア操作データに変換する2
次元描画機能と、この2次元描画機能から、メディア操
作データを受け取ってブラウザ上に2次元キャンバスを
生成し、各メディア操作データに対応したグラフィック
ス表示を実行する2次元キャンバス機能とを有する。
【0019】このような構成によれば、2次元処理区分
(静止映像、動画、テキスト等)に応じたメディア操作
データを生成し、これをブラウザ上に生成2次元キャン
パス上で実行することができる。
【0020】1の実施形態によれば、前記2次元キャン
パス機能は、メディア操作データを受け取った後、前記
2次元描画機能で使用する2次元ファイルの転送が終了
した後で、これに基づいて2次元キャンパス全体のイメ
ージデータ生成を要求するためのレンダリング要求を生
成する2次元オブジェクト管理機能と、前記2次元オブ
ジェクト管理機能からレンダリング要求を受け取り、2
次元キャンバス内の2次元表示属性をレンダリング要求
に応じて設定する2次元オブジェクト表示機能とを有す
る。
【0021】この場合、前記2次元キャンパス機能は、
前記ブラウザより2次元に対する操作イベントを受け取
り、これに従って、前記2次元オブジェクト表示機能へ
レンダリング要求を渡す2次元メディア操作機能をさら
に有することが好ましい。また、さらにこの場合、前記
2次元オブジェクト表示機能は、前記2次元メディア操
作機能からレンダリング要求を受け取ったことに基づい
て、前記2次元描画機能に部分レンダリング要求を渡
し、この2次元描画機能からメディア操作データを受け
取るものであることが望ましい。
【0022】1の実施形態によれば、前記2次元キャン
パス機能は、2次元キャンパスが3次元キャンパス上に
貼り付けられた場合、2次元キャンパスの変形情報を演
算し、これに応じて当該変形後の2次元キャンパス上で
の2次元表示属性を設定する2次元キャンパス変形機能
を有する。
【0023】このような構成によれば、3次元キャンパ
ス上での2次元キャンパスの表示属性を設定することが
できる。
【0024】1の実施形態によれば、前記3次元レンダ
リング機能は、前記マネージャ機能から受け取った3次
元描画命令に基いて3次元データを読み込み、これに基
づいて3次元表示のためのシーングラフを生成する3次
元シーングラフ生成機能と、この3次元シーングラフを
集積してなるシーングラフツリーを保持し、これをトラ
バースすることでシーン描画データを生成する3次元シ
ーン描画機能と、ブラウザ上の所定の描画領域に3次元
キャンバスを生成すると共に、前記3次元シーン描画機
能から受け取った3次元シーン描画データに基づいて前
記3次元キャンバス上に表示するグラフィック表示デー
タを生成する3次元キャンバス機能とを有する。
【0025】このような構成によれば、3次元処理区分
に応じたシーングラフを生成し、全てのシーングラフを
集積してツリー構造にできる。そして、このツリーの全
てのノードをルートノードから走査(トラバース)する
ことで、全てのメディアを複合して表示するための3次
元シーン描画データを生成することができる。そして、
3次元キャンバス機能で、この3次元シーン描画データ
をブラウザ上に表現するためのレンダリング動作を行う
ことができる。
【0026】ここで、前記3次元シーングラフ生成機能
は、前記マネージャ機能からの3次元描画命令により起
動され、シーングラフにおけるマテリアル、テクスチ
ャ、カメラ、ライト、フォントスタイルを含む3次元属
性を設定・変更し、変更した3次元属性を3次元空間に
反映するために3次元属性設定のシーングラフを生成す
る3次元シーン属性設定機能を有することが好ましい。
【0027】また、前記3次元シーングラフ生成機能
は、前記マネージャ機能からの3次元描画命令により起
動され、時間やイベントに応じてシーンの一部またはシ
ーン全体の動画アニメーションを表現するために、前記
シーングラフにおけるビヘイビアを設定・変更し、変更
した3次元ビヘイビアを3次元空間に反映するために3
次元ビヘイビア設定のシーングラフを生成する3次元シ
ーンビヘイビア機能を有することが好ましい。この場
合、前記マネージャ機能からの3次元描画命令は、3次
元アニメーションビヘイビアを定義するためのセンサ
ー、タイマー、インターポーレーションを含むものであ
る。
【0028】このような構成によれば、シーングラフに
ビヘイビアを設定し、時間やイベントに応じてシーンの
一部もしくはシーン全体の動画アニメーションを表現す
る機能が提供される。具体的には、3次元CGキャラクタ
に対して、歩く、座る、立つ、お辞儀をする、見るを含
む動作の指定を可能にする機能を提供することができ
る。
【0029】1の実施形態によれば、前記3次元シーン
グラフ生成機能は、前記マネージャ機能から2次元のイ
メージデータ埋め込みのための3次元描画命令を受け取
り、2次元のイメージデータを埋め込むためのシーング
ラフを生成する2次元埋め込み機能を有する。そして、
この場合、この2次元埋め込み機能は、前記マネージャ
機能から、3次元画像にイメージをマッピングするため
のイメージマッピング設定を含む3次元描画命令を受け
取り、前記3次元シーン描画機能に保持されているシー
ングラフツリーにイメージマッピングのためのテクスチ
ャを設定させるためのシーングラフを生成するものであ
ることが望ましい。また、前記2次元埋め込み機能は、
埋め込もうとする2次元イメージにハイパーリンクが設
定されている場合、3次元描画命令として2次元のイメ
ージデータとあわせてハイパーリンク情報も受け取り、
ハイパーリンク情報を持つ2次元データ埋め込みのため
のシーングラフを生成するハイパーリンク設定機能を有
することが好ましい。
【0030】このような構成によれば、3次元空間内に
2次元のレンダリングを表示するためのエリアを生成
し、2次元画像をその2次元としての属性を保持したま
ま貼り付けることができ、しかも、この表現をXMLの枠
組みで簡単に行える。
【0031】1の実施形態によれば、前記3次元シーン
グラフ生成機能は、前記マネージャ機能からの3次元描
画命令により起動され、外部XVLファイルを読み込み、L
atticeカーネルを使用し格子形状の3次元基本要素を取
り出し丸め形状に変換し、シーングラフを生成するXVL
ローダ機能を有する。
【0032】このような構成によれば、XVLファイルを
読み込み、Latticeカーネル機能を使用することで、3
次元基本要素を取り出し、シーングラフを生成すること
ができる。この場合、JAVAクラスライブラリとしての
「Latticeカーネル機能」を、WWWサーバから、クライア
ントパソコンにダウンロードし、Webブラウザ上で実行
する機能を提供することが好ましい。さらに、XVL記述
された登場人物(3次元CGキャラクタ)、スタジオセッ
トを含む表示対象を読み込むことを可能とし、複数の表
示対象を同一のシーングラフ上に表示するようになって
いることが望ましい。
【0033】1の実施形態によれば、前記3次元シーン
グラフ生成機能は、前記マネージャ機能からの3次元描
画命令により起動され、外部VRMLファイルを読み込み、
その内容を解析し、記述されている3次元基本要素およ
び3次元基本要素の関係と動きを取り出しシーングラフ
を生成するVRMLローダ機能を有する。
【0034】このような構成によれば、VRMLファイルを
読み込み、VRMLファイルの構文を解析し、VRMLの記述さ
れている3次元基本要素および3次元基本要素の関係と動
きを取り出しシーングラフを生成することができる。特
に、VRMLで記述された登場人物(3次元CGキャラク
タ)、スタジオセットを含む表示対象を読み込むことを
可能とし、複数の表示対象を同一シーングラフ上に表示
するように構成されていることが好ましい。
【0035】1の実施形態によれば、前記3次元シーン
描画機能は、前記3次元シーングラフ生成機能から、3
次元描画命令の内容に応じた複数のシーングラフを受け
取り、これに基づいてグループノード及びリールノード
に構造化することで表示するべきシーンのシーングラフ
ツリーを生成すると共に、受け取ったシーングラフの前
記シーングラフツリーへの追加・削除・変更を行う、3
次元シーングラフ構築機能と、この3次元シーングラフ
構築機能から、前記シーングラフツリーを受け取り、こ
のツリーの全てのノードをルートノードから走査(トラ
バース)することで、各ノードで定義されている形状ポ
リゴンデータの座標系(モデリング座標系)を3次元空
間上の3次元座標系(ワールド座標系)へ変換してなる
シーン描画データを生成するシーントラバース機能とを
有する。
【0036】この場合、前記シーン描画データは、シー
ングラフツリーに保持される形状ポリゴンデータ以外の
データから生成されたレンダリングモードデータを含む
ものであることが好ましい。
【0037】また、この場合、3次元キャンバスに対し
て所定の操作イベントが行われたことに基づいて、シー
ングラフツリー中のカメラの内容を示すシーングラフを
受け取り、3次元シーンの視点を変更する座標変換計算
を行い、視点変更されたシーングラフを前記シーン描画
機能に渡すビューコントロール機能をさらに有すること
が望ましい。
【0038】1の実施形態によれば、前記3次元キャン
バス機能は、前記3次元シーン描画機能から形状ポリゴ
ンデータを含むシーン描画データを受け取り、形状ポリ
ゴンデータを3次元キャンバス上で2次元描画するため
に正規化座標系へ座標変換するビュー座標変換機能と、
前記ビュー座標変換機能にから正規化投影シーン描画デ
ータを受け取り、隠面消去した画像を前記3次元キャン
バスに表示するために、画像描画データのバッファリン
グを行ないながらグラフィック表示データを生成するバ
ッファレンダリング機能とを有する。
【0039】この場合、前記3次元キャンバス機能は、
前記3次元シーン描画機能から、形状ポリゴンデータ以
外のデータからなるシーン描画データを受け取り、これ
に基いてレンダリングモードを生成するレンダリングモ
ード設定機能をさらに有することが好ましい。また、前
記3次元キャンバス機能は、ブラウザから三次元キャン
バスに対する操作イベントに基いて3次元キャンバス情
報を生成して前記3次元シーン描画機能部に受け渡すイ
ベント処理機能を有するものであることが望ましい。
【0040】なお、この発明の他の特徴と顕著な効果
は、次の発明の実施の形態の項の説明及び添付した図面
を参照することでより明確に理解される。
【0041】
【発明の実施の形態】以下、本発明の実施の形態を図面
に基づき説明する。
【0042】図1は本発明の一実施形態に係る多様媒体
(クロスメディア空間)融合表示システム1を示す概略
構成図である。
【0043】(基本構成)このシステム1は、XML(拡
張マークアップ言語;Extensible Markup Language)を
利用し、複合したメディアデータをクライアントパソコ
ン2のWebブラウザ3上で表示するための環境を実現す
る。
【0044】このシステム1は、XMLの記述規則に従い
各メディアを取り扱うためのレンダラを接合するための
機能を実現するMMIDF機能部5(MMIDF: Multiple Multi
media Interconnected Document Framework(複合メデ
ィアドキュメント・インターコネクション・フレームワ
ーク);この発明のフレームワーク機能部)と、このMM
IDF機能部5から受け取った描画命令に従い2次元の図
形描画、音声実行、動画実行及びハイパーリンクを実現
する2次元レンダリング機能部6と、VRML/XVLの内容を
示す3次元形状を読み込み読み込んだ3次元形状を表示
し、表示された3次元形状に対して属性設定、動きを実
現する3次元レンダリング機能部7とから構成される。
【0045】以下、それぞれの構成要素を詳細に説明す
る。
【0046】(MMIDF機能部)このMMIDF機能部5はWeb
ブラウザ3により起動され、WWWサーバ10から、XML文
書11と共にオブジェクトとしてクライアントパソコン
2にダウンロードされ動作する。
【0047】このMMIDF機能部5は、XMLパーサ12と連
携し、XML文書内でタグとして定義された2次元図形お
よび3次元図形の各種描画タグを解釈する。そして、プ
リミティブを複合して表示するための2次元描画命令若
しくは3次元描画命令を生成し、前記2次元レンダリン
グ機能部6若しくは3次元レンダリング機能部7へ渡す
機能を有する。
【0048】すなわち、本システムは、HTMLとは違い拡
張可能なマークアップ言語であるXMLを取り込んで「ク
ロスメディア空間」を表現するためのWebアプリケーシ
ョンである。ここで、XML自身は整形式構文を規定した
メタ言語に過ぎない。このため、まず、XML文書の内容
をXMLパーサ12を経由して解釈する必要がある。
【0049】XMLパーサー12は、XML文書の構文解析時
に開始タグやテキストを認識すると、そのたびに、この
MMDIF機能部へ渡すコールバックデータを渡す。図2
は、このMMDIF機能部5(太枠線内)を詳細に示すブロ
ック図である。コールバックデータは、XMLパーサ12
がXML文書内の要素タグを認識した場合にはドキュメン
トコールバック機能部15に、XML文書内のパース対象
外エンティティを認識した場合にはDTDコールバック機
能部16に、 XML文書内のパース対象エンティティ(UR
L情報)を認識した場合にはエンティティコールバック
機能部17に、XML文書の構文解析におけるエラーが発
生した場合にはエラーコールバック機能部18に渡され
る。
【0050】前記ドキュメントコールバック機能部15
は、前記XMLパーサ12により起動され(コールバッ
ク)、XML文書の記述内容からエレメント記述の開始と終
了とを検出し、タグの種別を識別子として設定し当該識
別子に対するパラメータと処理区分を付加した「ドキュ
メントデータ」19を生成する。このドキュメントデー
タ19は、描画種別(2次元、3次元)、タグ種別、パラ
ーメータからなる。
【0051】前記DTDコールバック機能部16は、XMLパ
ーサ12が、このシステムがサポートしないNOTAIONお
よびELEMENT、ELEMENTS記述を検出した場合に起動され
(コールバック)、外部アプリケーション実行要求とし
てのドキュメントデータ19を生成する。このドキュメ
ントデータ19は、外部アプリケーションの名前、シス
テム識別子、パブリック識別子である。なお、起動すべ
き外部アプリケーションがこのシステムの実行環境にイ
ンストールされていない場合は、該当記述は捨てられる
ようになっている。
【0052】前記エンティティコールバック機能部17
は、XML文書の記述の中に外部エンティティの定義がな
されている場合にXMLパーサ12により起動され(コール
バック)、指定されたドキュメントを読み込む機能を提
供するものである。そして、このエンティティコールバ
ック機能部17は、読み込んだエンティティソース20
を前記XMLパーサ12に引き渡す機能を有する。
【0053】エラーコールバック機能部18は、XMLパ
ーサ12において文法エラーが発生した場合に起動され
(コールバック)、エラーの位置を特定し、エラー情報2
1を生成する。ここで、エラー情報は、エラーコード、
エラー発生ラインナンバーを含む。
【0054】そして、前記ドキュメントデータ19及び
エラー情報21は、これらを変換して2次元描画命令及
び3次元描画命令を生成するためのMMDSAXマネージャ機
能部22に受け渡されるようになっている。
【0055】なお、ここで、ドキュメントコールバック
機能部16についてさらに詳しくおく。このドキュメン
トコールバック機能部16は、2次元図形、音声、動
画、イメージ、テキスト、ハイパーリンク、3次元図形
のマテリアル、テクスチャ、カメラ、ライト、フォン
ト、インターポレータ、タイマー、センサー、イメージ
マッピング、XVLファイルまたはVRMLファイルの内容を
示すドキュメントデータを生成するものである。
【0056】具体的には、本システムにおけるXML文書
の構文解析はイベント駆動型のSAX23を採用してお
り、このドキュメントコールバック機能部16は、SAX
23から、コールバックの一種であるハンドラのインタ
フェースとしてのドキュメントハンドラのインタフェー
スメソッドからXML文書の情報として要素名、属性名、
値を受け取る。
【0057】1つの要素は、1又は複数のコールバック
により構成されたり、あるいは1つの要素が複数の要素
により構成されるため、このドキュメントコールバック
機能部16は、複数のコールバックの内容を受け取っ
て、ドキュメントデータを生成することができるように
構成されている。
【0058】また、このドキュメントコールバック機能
部16は、図SVG機能部25と、CMW機能部26と、TVX
機能部27とを有する。
【0059】SVG機能部25は、XMLパーサ12より、W3
Cより規定されているSVG 1.0(Scalable Vector Graphi
cs 1.0)のDTDに基づく要素、属性名、値の内容を示す
コールバックデータを受け取り、2次元描画、音声、動
画、イメージ、テキストまたはハイパーリンクから成る
ドキュメントデータ19を生成する。このドキュメント
データ19は、後で詳しく説明するMMDSAXマネージャ機
能部22の2次元描画命令生成機能部29へ渡される。
【0060】このSVG機能部25がサポートするSVGの要
素を以下に示す。それ以外の要素を受け取った場合はド
キュメントデータを生成しない。
【0061】 svg g rect circle ellipse line polyline polygon text font image symbol marker sound movie xlink
【0062】CMW機能27は、XMLパーサ12より、本発
明でクロスメディアとして規定したcmw(Cross Media W
orld)のDTDに基づく要素、属性名、値の内容を示すコ
ールバックデータを受け取り、3次元図形のマテリア
ル、テクスチャ、カメラ、ライト、フォント、インター
ポレータ、タイマー、センサー、イメージマッピング、
XVLファイルまたはVRMLファイルから成るドキュメント
データ19を生成する。このドキュメントデータ19
は、後で説明する3次元描画命令生成機能部30へ渡さ
れる。
【0063】本システムで規定したcmwのDTDを以下に示
す。
【0064】 ・Appearance <!ELEMENT appearance (material?, (imageTexture|svgTexture)?)> ・Background <!ELEMENT background (color?, imageTexture?)> <!ATTLIST background enabled (T|F) "T" stretchToFit (T|F) "F"> <!ELEMENT color EMPTY> <!ATTLIST color r CDATA "0" g CDATA "0" b CDATA "0"> ・DirectionalLight <!ELEMENT directionalLight (color?, direction?)> <!ATTLIST directionalLight intensity CDATA "1" on (T|F) "T"> <!ELEMENT direction EMPTY> <!ATTLIST direction x CDATA "0" y CDATA "0" z CDATA "-1"> ・Group <!ELEMENT group (background | directionalLight | shape | transform | viewpoint)+> SvgTexture <!ELEMENT svgTexture (svg)> <!ATTLIST repeatS (T|F) "T" repeatT (T|F) "T"> ・ImageTexture <!ELEMENT imageTexture EMPTY> <!ATTLIST imageTexture url CDATA #REQUIRED repeatS (T|F) "T" repeatT (T|F) "T"> ・IndexedFaceSet <!ELEMENT indexedFaceSet (coord?, coordIndex?, colors?, colorIndex?, tex Coord?, texCoordIndex?)> <!ATTLIST indexedFaceSet ccw (T|F) "T" creaseAngle CDATA "0" solid (T|F) "T"> <!ELEMENT colors (color3*)> <!ELEMENT colorIndex (path*)> <!ELEMENT coord (p3*)> <!ELEMENT coordIndex (path*)> <!ELEMENT texCoord (p2*)> <!ELEMENT texCoordIndex (path*) <!ELEMENT path (i*)> <!ELEMENT p3 EMPTY> <!ATTLIST p3 x CDATA #REQUIRED y CDATA #REQUIRED z CDATA #REQUIRED> <!ELEMENT p2 EMPTY> <!ATTLIST p2 s CDATA #REQUIRED t CDATA #REQUIRED> <!ELEMENT i (#PCDATA)> ・IndexedLineSet <!ELEMENT indexedLineSet (coord?, coordIndex?, colors?, colorIndex?)> <!ATTLIST indexedLineSet lineWidth CDATA "1"> ・Material <!ELEMENT material (diffuseColor?, emissiveColor?)> <!ATTLIST material transparency CDATA "0"> <!ELEMENT diffuseColor EMPTY> <!ELEMENT emissiveColor EMPTY> <!ATTLIST diffuseColor r CDATA "0" g CDATA "0" b CDATA "0"> <!ATTLIST emissiveColor r CDATA "0" g CDATA "0" b CDATA "0"> ・OrientationInterpolator <!ELEMENT orientationInterpolator (key?, keyOrientation?)> <!ELEMENT key (f*)> <!ELEMENT keyOrientation (orientation*)> <!ELEMENT orientation EMPTY /> <!ELEMENT f (#PCDATA)> <!ATTLIST orientation x CDATA "0" y CDATA "0" z CDATA "1" radians CDATA "0"> ・PositionInterpolator <!ELEMENT positionInterpolator (key?, keyPosition?)> <!ELEMENT keyPosition (p3*)> <!ELEMENT p3 EMPTY> <!ATTLIST p3 x CDATA #REQUIRED y CDATA #REQUIRED z CDATA #REQUIRED> ・Shape <!ELEMENT shape (appearance?, (indexedLinsSet|indexedFaceSet)?)> ・Timer <!ELEMENT timer (orientationInterpolator?, positionInterpolator)> <!ATTLIST timer loop (T|F) "F"> <!ATTLIST target field CDATA> ・Transform <!ELEMENT transform (center?, rotation?, scale?, scaleOrientation?, translation?, children?)> <!ELEMENT center EMPTY> <!ATTLIST center x CDATA "0" y CDATA "0" z CDATA "0"> <!ELEMENT rotation EMPTY> <!ATTLIST rotation x CDATA "0" y CDATA "0" z CDATA "1" radians CDATA "0"> <!ELEMENT scale EMPTY> <!ATTLIST scale x CDATA "1" y CDATA "1" z CDATA "1"> <!ELEMENT scaleOrientation EMPTY> <!ATTLIST scaleOrientation x CDATA "0" y CDATA "0" z CDATA "1" radians CDATA "0"> <!ELEMENT translation EMPTY> <!ATTLIST translation x CDATA "0" y CDATA "0" z CDATA "0"> <!ELEMENT children (background | directionalLight | shape | transform | viewpoint)*> ・Viewpoint <!ELEMENT viewpoint (description?, orientation?, position?)> <!ATTLIST viewpoint enabled (T|F) "T" fieldOfView CDATA "0.785398"> <!ELEMENT description (#PCDATA)> <!ELEMENT orientation EMPTY /> <!ATTLIST orientation x CDATA "0" y CDATA "0" z CDATA "1" radians CDATA "0"> <!ELEMENT position EMPTY /> <!ATTLIST position x CDATA "0" y CDATA "0" z CDATA "10" />
【0065】また、前記TVX機能部27は、XMLパーサ1
2より、本クロスメディアとして規定したtvx(TVML wi
th XML)のDTDに基づく要素、属性名、値の内容を示す
コールバックデータを受け取り、音声、動画、イメー
ジ、3次元図形のマテリアル、テクスチャ、カメラ、ラ
イト、インターポレータ、タイマー、センサーまたはVR
MLファイルから成るドキュメントデータ19を生成す
る。このドキュメントデータ19は、後で詳しく説明す
るMMDSAXマネージャ機能部22の2次元描画命令生成機
能部29及び3次元描画命令生成機能部30の両方へ渡
される。
【0066】本システムで規定したtvxのDTDを以下に示
す。
【0067】 ・tvx <!ELEMENT tvx (character | camera)* > ・character <!ELEMENT character (casting | openmodel | bindmodel | visible | position | walk | sit | stand | turn | bow | look)* > ・casting <!ELEMENT casting EMPTY> <!ATTLIST casting name CDATA #REQUIRED> ・openmodel <!ELEMENT openmodel EMPTY> <!ATTLIST openmodel modelname CDATA #REQUIRED filename CDATA #REQUIRED> ・bindmodel <!ELEMENT bindmodel EMPTY> <!ATTLIST bindmodel name CDATA #REQUIRED modelname CDATA #REQUIRED> ・visible <!ELEMENT visible EMPTY> <!ATTLIST visible name CDATA #REQUIRED switch (on | off) "off"> ・position <!ELEMENT position EMPTY> <!ATTLIST position name CDATA #REQUIRED x CDATA "0.0" y CDATA "0.0" z CDATA "0.0" d CDATA "0.0" posture (standing | sitting) "standing"> ・walk <!ELEMENT walk EMPTY> <!ATTLIST walk name CDATA #REQUIRED x CDATA "0.0" y CDATA "0.0" z CDATA "0.0" d CDATA "0.0" stopmode (stop | continue | stump) "stop" pitch CDATA "0.0" compass CDATA "0.0" step CDATA "0.0" wait (yes | no) "yes"> ・sit <!ELEMENT sit EMPTY> <!ATTLIST sit name CDATA #REQUIRED speed CDATA "0.0" hiplevel CDATA "0.0" wait (yes | no) "yes"> ・stand <!ELEMENT stand EMPTY> <!ATTLIST stand name CDATA #REQUIRED speed CDATA "0.0" wait (yes | no) "yes"> ・turn <!ELEMENT turn EMPTY> <!ATTLIST turn name CDATA #REQUIRED d CDATA "90" speed CDATA "0.0" style (spin | stump | walk) "spin" wait (yes | no) "yes"> ・bow <!ELEMENT bow EMPTY> <!ATTLIST bow name CDATA #REQUIRED style (normal | casual) "normal" speed CDATA "0.0" level CDATA "0.0" wait (yes | no) "yes"> ・look <!ELEMENT look EMPTY> <!ATTLIST look name CDATA #REQUIRED what (name | cameraname) #REQUIRED track (on | off) "on" speed CDATA "0.0" wait (yes | no) "yes"> ・camera <!ELEMENT camera (assign | switch | movement | closeup)* > ・assign <!ELEMENT assign EMPTY> <!ATTLIST assign cameraname CDATA #REQUIRED> ・switch <!ELEMENT switch EMPTY> <!ATTLIST switch cameraname CDATA #REQUIRED> ・movement <!ELEMENT movement EMPTY> <!ATTLIST movement cameraname CDATA #REQUIRED pan CDATA "0.0" tilt CDATA "0.0" roll CDATA "0.0" x CDATA "0.0" y CDATA "0.0" z CDATA "0.0" vangle CDATA "0.0" transition (immediate | continuous) "continuous" style (servo | uniform) "servo" speed CDATA "0.0" wait (yes | no) "yes"> ・closeup <!ELEMENT closeup EMPTY> <!ATTLIST closeup cameraname CDATA #REQUIRED what (name | propname) #REQUIRED transition (immediate | continuous) "continuous" dolly (on | off) on adjustangle CDATA "0.0" adjusttilt CDATA "0.0" adjustroll CDATA "0.0" adjustx CDATA "0.0" adjusty CDATA "0.0" adjustz CDATA "0.0" adjustvangle CDATA "0.0" wait (yes | no) "yes">
【0068】前述したように、ドキュメントデータ19
を受け取るMMDSAXマネージャ機能部22は、2次元描画
命令生成部29と3次元描画命令生成部30とを有す
る。これらの描画命令生成部29,30により、前記ド
キュメントコールバック機能部、DTDコールバック機能
部及びエラーコールバック機能部からドキュメントデー
タ19及びエラー情報21を受け取り、これを、2次元
描画命令、3次元描画命令に変換する機能を有する。
【0069】すなわち、このマネージャ機能部22は、
XML文書に基づく文書構造全体に対するドキュメントデ
ータ19を構造化してなるツリー構造を内部生成し、そ
の表現のためにツリー構造内のドキュメントデータに応
じた2次元描画命令データまたは3次元描画命令データ
を生成する。さらに、前記ドキュメントデータのツリー
構造中、3次元記述の下位に2次元記述がある場合に
は、3次元記述と2次元記述とをミキシングし、3次元
キャンバスに挿入された2次元埋め込み機能上で2次元
キャンバスの操作を取り扱う機能を提供する。この2次
元埋め込み命令は、3次元描画命令として前記3次元レ
ンダリング機能部7に受け渡されるようになっている。
【0070】また、前記Webブラウザ3を通して受け取
った操作イベント31,32を2次元描画命令、3次元
描画命令に変換する機能を有する。すなわち、このMMDS
AXマネージャ機能部22は、Webブラウザ3に生成され
たキャンバス内のマウス操作やキーボード入力を操作イ
ベントとして受け取り、URLや他のドキュメント等のリ
ンクが有った場合そのドキュメントを呼び出しWebブラ
ウザに返すようになっている。
【0071】なお、2次元描画命令の種類は、2次元図
形描画命令、音声制御命令、動画制御命令、イメージ制
御命令、テキスト制御命令、ハイパーリンク命令からな
る。また、3次元描画命令の種類は、3次元シーン描画
命令、3次元シーン属性設定命令、3次元シーンビヘイビ
ア命令、XVLファイル要求、VRMLファイル要求からな
る。
【0072】次に、2次元レンダリング機能部6及び3
次元レンダリング機能部7の構成及び機能について詳し
く説明する。
【0073】(2次元レンダリング機能部)図4は、2
次元レンダリング機能部6のみを詳しく示す機能ブロッ
ク図である。
【0074】この2次元レンダリング機能部6は、Web
ブラウザ3により起動され、WWWサーバー10よりオブ
ジェクトとしてクライアントパソコン2にダウンロード
され動作するように構成されている。この2次元レンダ
リング機能部6は、前記MMIDF機能部5からの2次元描
画命令に従い、Webブラウザ上に描画キャンバスを生成
し、2次元の画像を表示する機能を提供するものであ
る。さらに本機能は、2次元描画命令に含まれる2次元
メタデータの種別を判断し、2次元処理区分振り分け機
能部により対応する2次元メタデータのタイプに対応し
た描画メソッド(2次元図形描画機能、音声実行機能、
動画実行表示機能、イメージ表示機能、テキスト表示機
能、ドキュメントリンク機能)を実行する機能を提供す
るものとする。
【0075】以下、図4以下に基いて詳しく説明する。
【0076】まず、前述したように、前記MMDSAXマネー
ジャ機能部22に設けられた2次元描画命令生成機能部
29(図3参照)は、前記ドキュメントコールバック機
能部16のSVG機能部25またはTVX機能部26によるXM
L文書の構文解析により2次元図形、音声、動画、イメ
ージ、テキスト、ハイパーリンクのいずれかを示すドキ
ュメントデータ19を受け取り、内部にドキュメントデ
ータを集積したツリー構造を保持し、各ドキュメントデ
ータの内容を解釈して、2次元描画命令データを生成
し、この2次元レンダリング機能部6に受け渡す。
【0077】この2次元描画命令データは、図4に示す
2次元レンダリング機能部6内の2次元処理区分振り分
け機能部40に出力される。この2次元レンダリング機
能部は、描画命令を、その内容に応じて、図5に示す2
次元図形振り分け機能部41、音声実行振り分け機能部
42、動画実行振り分け機能部43、イメージ表示振り
分け機能部44、テキスト表示振り分け機能部45、及
びドキュメントリンク振り分け機能部46に振り分けら
れる。
【0078】すなわち、前記MMDSAXマネージャ機能部2
2では、ドキュメントデータ19がライン、2次元図形
(円、円弧、矩形、楕円、多角形もしくは塗りつぶし多
角形から成る)の場合には、それらの2次元描画命令デ
ータが生成され、2次元図形振り分け機能部41へ渡さ
れる。
【0079】ドキュメントデータ19が音声データの場
合には、ストリーミング音声または通常音声から成る2
次元描画命令データが生成され、音声実行振り分け機能
部42へ渡される。
【0080】ドキュメントデータ19が動画データの場
合には、ストリーミング動画または通常動画から成る2
次元描画命令データが生成され、動画実行振り分け機能
部43へ渡される。
【0081】ドキュメントデータ19がイメージデータ
の場合には、GIFファイルまたはJPEGファイルから成る2
次元描画命令データが生成され、イメージ表示振り分け
機能部44へ渡される。
【0082】ドキュメントデータ19がテキストデータ
の場合には、1行テキストまたは複数行テキストから成
る2次元描画命令データが生成され、テキスト表示振り
分け機能部45へ渡される。
【0083】ドキュメントデータ19がハイパーリンク
データの場合には、移動ハイパーリンク、オープンハイ
パーリンクまたは埋め込みハイパーリンクから成る2次
元描画命令データを生成され、ドキュメントリンク振り
分け機能部46へ渡される。
【0084】各振り分け機能部41〜46は、MMDSAXマ
ネージャ機能部22から受け取った2次元描画命令に基
いて、それぞれ、2次元図形描画機能部51、音声実行
機能部52、動画実行表示機能部53、イメージ表示機
能部54、テキスト表示機能部55、及びドキュメント
リンク機能部56の各2次元描画メソッドを呼び出す2
次元描画メソッドコール48を生成する。
【0085】このうち、2次元図形描画機能部51は、
前記2次元描画メソッドコール48を受け取り、メディ
ア操作データ58に変換する機能を有する。メディア操
作データ58としては、2次元基本要素描画オブジェク
ト(ライン、円弧、矩形、多角形)とその操作データ
(描画、移動、回転、縮小、拡大)を生成する。
【0086】音声実行機能部52は、音声再生のために
前記2次元描画メソッドコール48を受け取り、音声フ
ァイルを元に実行オブジェクトを生成し、この実行オブ
ジェクトに対する操作用GUIコンポーネント(スター
ト、ストップ、実行速度、早送り、巻戻し)およびその
操作データ(メディア操作データ58)を生成する。
【0087】動画実行表示機能部53は、動画再生のた
めに2次元描画メソッドコール48を受け取り、映像フ
ァイルを元に実行オブジェクトを生成し、この実行オブ
ジェクトに対する操作用GUIコンポーネント(スター
ト、ストップ、実行速度、早送り、巻戻し)およびその
操作データ(メディア操作データ58)を生成する。
【0088】イメージ表示機能部54は、イメージ表示
のために2次元描画メソッドコール48を受け取り、イ
メージ描画オブジェクト(イメージフォーマット指定、
イメージ領域指定など)とその操作データ(描画、移
動、回転)(メディア操作データ58)を生成する。
【0089】テキスト表示機能部55は、テキスト表示
のために2次元描画メソッドコール48を受け取り、テ
キストオブジェクト(イメージフォーマット指定、イメ
ージ領域指定など)とその操作データ(描画、移動、回
転)(メディア操作データ58)を生成する。
【0090】ドキュメントリンク機能部56は、外部ド
キュメントとのハイパーリンクを表示するために、前記
2次元描画メソッドコール48を受け取り、外部リンク
先を示す情報(メディア操作データ58)を生成する。
【0091】上記2次元図形描画機能部51、音声実行
機能部52、動画実行表示機能部53、イメージ表示機
能部54、テキスト表示機能部55、及びドキュメント
リンク機能部56で生成されたメディア操作データ58
は、2次元キャンバス機能部60に受け渡されるように
なっている。
【0092】図4に示すように、この2次元キャンパス
機能部60は、前記6種類のメディア操作データ58を
受け取って、Webブラウザ3上に2次元キャンバスを生
成し、各メディア操作機能に対応したグラフィックス表
示を実行する機能を提供するものである。
【0093】このような機能を奏するため、この2次元
キャンバス機能部60は、図6に示すように、2次元オ
ブジェクト管理機能部62と、2次元オブジェクト表示
機能部63と、2次元メディア操作機能部64とを有す
る。
【0094】2次元オブジェクト管理機能部62は、2
次元図形表示機能部51、音声実行機能部52、動画実
行表示機能部53、イメージ表示機能部54、テキスト
表示機能部55、及びドキュメントリンク機能部56か
ら2次元オブジェクト(メディア操作データ)を受け取
り、メモリー上へ保持する。そして、全ての2次元オブ
ジェクトを受け取った後で、且つ各機能部51〜56が
使用する音声ファイル、動画ファイル、イメージファイ
ルの転送が終了した後に、前記2次元オブジェクト表示
機能部63へレンダリング要求65(2次元キャンバス
全体のイメージデータ生成を要求すること)を行う。フ
ァイルの転送終了は例えばタイマー監視をして判断する
ようにする。
【0095】図7は、2次元オブジェクト表示機能部6
3の動作を説明するための機能ブロック図である。
【0096】前記2次元オブジェクト表示機能部63
は、2次元オブジェクト管理機能部及び2次元メディア
操作機能部64よりレンダリング要求を受け取り、キャ
ンバス内の2次元表示属性をレンダリング要求に応じて
設定し、前記各表示/実行機能部51〜56内に設けら
れた2次元図形オブジェクト表示機能部71、音声オブ
ジェクト表示機能部72、動画オブジェクト表示機能部
73、イメージオブジェクト表示機能部74、及びテキ
ストオブジェクト表示機能部75へ部分イメージレンダ
リング要求76を渡す。
【0097】このように、2次元図形オブジェクト表示
機能部71、音声オブジェクト表示機能部72、動画オ
ブジェクト表示機能部73、イメージオブジェクト表示
機能部74、及びテキストオブジェクト表示機能部75
へ部分イメージレンダリング要求76を渡すことによ
り、この2次元オブジェクト表示機能部63は、各機能
部71〜75よりイメージデータ77を受け取る。この
ことで、この2次元オブジェクト表示機能部63は、こ
の2次元オブジェクト表示機能部63で用意したイメー
ジデータへ、各機能71〜75が描画したイメージデー
タ77を合成することができる。そして、このデータ
を、Webブラウザ3へグラフィックス表示データとして
渡す。
【0098】また、この2次元キャンバス機能部60
は、前記ドキュメントリンク機能部56内に設けられた
ドキュメントリンクハイライト機能部79より再表示要
求80を受け取ることで、既に作成済みのグラフィック
ス表示データをWebブラウザへ3渡すようになってい
る。
【0099】なお、前記2次元メディア操作機能部62
より受け取るレンダリング要求65には以下のものがあ
る。
【0100】・ズーム表示指定 ・回転表示指定 ・パン表示指定 ・矩形拡大指定 ・フィット表示指定 上記各レンダリング要求65に基づき、この2次元オブ
ジェクト表示機能部36で設定する2次元表示属性は以
下のものである。
【0101】・ズームスケール ・回転角度 ・2次元座標系中心座標 ・表示領域の実ピクセルサイズ
【0102】また、この2次元キャンバス機能部60に
設けられた前記2次元メディア操作機能部64は、図6
に示すように、WEBブラウザ3より操作イベント82を
受け取り、操作イベント82に従った所定の値の処理を
行う。すなわち、ズーム表示、回転表示、パン表示、及
びフィット表示を行う場合は、前記2次元オブジェクト
表示機能部63へレンダリング要求83を渡す。操作関
連表示である操作メニュー表示及び矩形拡大の矩形線グ
ラフィックス表示を行う場合は、Webブラウザ3へグラ
フィックス表示を行う。音声再生用GUIコンポーネント
をクリックされた場合は、音声実行機能部52へGUIコ
ンポーネント操作イベント通知84を渡す。動画再生用
GUIコンポーネントをクリックされた場合は、動画実行
機能部53へ操作イベント通知84を渡す。ハイパーリ
ンクをクリックされた場合、及びハイパーリンク上をマ
ウスが移動した場合は、前記ドキュメント機能部へ操作
イベント通知84を渡すようになっている。
【0103】操作メニューの項目としては以下のものが
ある。
【0104】・パン表示 ・マウスドラッグイベントに従ってパン表示指定のレン
ダリング要求を行う。
【0105】・フィット表示 ・フィット表示指定のレンダリング要求を行う。
【0106】・2倍ズーム表示 ・2倍ズーム指定のレンダリング要求を行う。
【0107】・1/2ズーム表示 ・1/2ズーム指定のレンダリング要求を行う。
【0108】・矩形拡大表示 ・マウスドラッグイベントに従って矩形拡大の矩形線グ
ラフィックス表示を行い、矩形拡大指定のレンダリング
要求を行う。
【0109】・回転表示 ・マウスドラッグイベントに従って、回転表示指定のレ
ンダリング要求を行う
【0110】すなわち、この2次元キャンパス機能部6
0は、ユーザがグラフィックス表示を操作するために、
Webブラウザ3から操作イベントデータ82を受け取
り、該当するメディア操作データに変換する。2次元図
形描画機能部51、音声実行機能部52、動画実行表示
機能部53、イメージ表示機能部54、テキスト表示機
能部55、及びドキュメントリンク機能部56は、それ
ぞれ、前記操作後における2次元図形、音声、動画、イ
メージテキスト及びハイパーリンクを表示するために、
この2次元キャンパス機能部60にメディア操作データ
を返す機能を提供するようになっている。
【0111】また、この2次元キャンバス機能部60
は、2次元キャンバスが3次元キャンバス上に貼り付け
られた場合、2次元キャンバスの変形状態を計算し、3
次元キャンバス上で表示する場合の描画手順を含む操作
データを作成する機能を有する。
【0112】(3次元レンダリング機能部)次に、3次
元レンダリング機能部7について説明する。
【0113】図8は、この3次元レンダリング機能部7
のみを詳しく説明するための機能ブロック図である。
【0114】3次元レンダリング機能部7は、Webブラ
ウザ3により起動され、WWWサーバよりオブジェクトと
してクライアントパソコン2にダウンロードされ動作す
る。
【0115】一般的に3次元シーンを描画するためには
OpenGLのようなグラフィックスライブラリを利用するこ
とになるが、Webブラウザ3上にアプレットとして動作
するアプリケーションからの利用は、クライアントシス
テムへのネイティブコールとなり、セキュリティ上を考
慮すると適当ではない。
【0116】現在、クライアントへの余計なインストー
ルを行わずにWebブラウザ3上へグラフィックス表示可
能な描画命令は、Javaアプレットとして実装されるJava
AWTの2次元の描画命令のみである。そこでこの3次元レ
ンダリング機能部7は、内部で図9に示すような3次元
グラフィックスパイプラインの機構を処理し、最終的な
描画命令はJavaAWTのAPIを呼び出すように構成されてい
る。
【0117】図9において、モデリング変換91は、物
体の形を定義している座標系データ(モデリング座標系
92)を、物体が置いてある空間の座標系データ(ワール
ド座標系93)に変換する。
【0118】視野変換94は、実際に表示する投影面を
設定し、ワールド座標系93から投影面に投影した視野
座標系データ(ビュー座標系95)に変換する。さらに、
面の法線と光源からシェーディングのための色設定を行
う。また、ビューボリューム以外のデータを表示対象か
ら外す。
【0119】ビューボリューム・ビューポート変換97
は、視野座標系内のビューボリュームから正規化投影座
標系98のビュー-ポートへ変換する。正規化投影座標
系98は、画面の座標系(装置座標系)のX,Y,Z座標で表
される最大の立方体を[0,1]×[0,1]×[0,1]に規格化し
た座標系であり、変換の際、平行投影または透視投影に
ついても考慮される。
【0120】この3次元レンダリング機能部7は、図8
に示すように、前記MMIDF機能部5より受け取った3次
元描画命令により、Webサーバー上に置かれたVRMLファ
イル100をクライアント上にダウンロードした後、内
容を読み込んで3次元表示のためのシーングラフ101
を構築する。または、サーバー上に置かれたXVLファイ
ル103をクライアント上にダウンロードした後、ファ
イルの内容を解釈して得られた格子データを「Lattice
カーネル」102に渡し、「Latticeカーネル」102
にて格子データから計算され生成された丸め形状データ
を受け取り、3次元表示のためのシーングラフ101を
構築する。
【0121】さらに3次元レンダリング機能部7は、前
記MMIDF機能部5より、3次元シーンの属性、3次元シー
ンのビヘイビア、または2次元イメージの3次元面への
マッピングを設定の内容を示す3次元描画命令を受け取
り、内部に保持するシーングラフ101を集積した3次
元グラフィックス表示のためのシーングラフツリーの追
加、変更、削除を行い、シーングラフツリーをトラバー
スして、最終的にJavaAWTの2次元を描画するための命
令セットで3次元を表現するグラフィックス表示データ
を生成し、Webブラウザ3より提供されるJavaAWTのAPI
に渡す。設定値は、シーングラフツリーをトラバースし
て3次元モデリング座標変換からワールド座標系データ
の生成、視野座標系変換、正規化投影座標系変換、およ
びZバッファリング法による隠面制御により算出する。
【0122】また、この3次元レンダリング機能部7
は、Webブラウザ3上に貼り付いた3次元空間をユーザ
が操作できるようにするために、ユーザのマウス操作お
よびキーボード入力の内容を示す操作イベントを受け取
り、シーングラフツリーの視点操作の処理を行うこと
で、変更された視点に伴い前述の処理で3次元画像を再
表示する。
【0123】また、3次元レンダリング機能部7は、受
け取った操作イベントから3次元形状にマッピングされ
た2次元データのピッキング処理を行い、そのピッキン
グが属性としてハイパーリンク設定された3次元形状で
ある場合、リンク先へジャンプするためのハイパーリン
ク情報をMMIDF機能部5に渡す。
【0124】この3次元レンダリング機能部7は、以上
の機能を奏するため、図8に示すように、3次元キャン
バス機能部105と、3次元シーン描画機能部106
と、3次元シーン属性設定機能部107と、3次元シー
ンビヘイビア設定機能部108と、2次元埋め込み機能
部109と、XVLローダ機能部110と、VRMLローダ機
能部111とを有する。
【0125】以下、各機能部の構成及び動作を、データ
の流れに沿って説明する。
【0126】まず、この3次元レンダリング機能部7に
入力される3次元描画命令(図8に112で示す)は、
前述したように、前記MMIDF機能部5のMMDSAXマネージ
ャ機能部22に設けられた3次元描画命令生成機能部3
0(図3参照)で生成されるようになっている。この3
次元描画命令生成機能部30は、前記ドキュメントコー
ルバック機能部16内のCMW機能部27又はTVX機能部2
6でのXML文書の構文解析により得られた、3次元キャ
ンバス、3次元シーン属性、3次元シーンビヘイビア、
2次元埋め込み、XVLローダまたはVRMLローダのうちい
ずれかを示すドキュメントデータを受け取り、その内容
を解釈して3次元描画命令を生成するものである。そし
て、この3次元描画命令生成部30は、図8に示すよう
に、この3次元描画命令112を、その内容に応じて、
3次元キャンバス機能部105内、3次元シーン属性設
定機能部107内、3次元シーンビヘイビア設定機能部
内、2次元埋め込み機能部内、XMLローダ機能部内、ま
たはVRMLローダ機能部108内の各機能に出力するよう
になっている。
【0127】すなわち、前記ドキュメントデータ19が
3次元レンダリング領域を示すデータの場合には、3次
元キャンバス領域設定の内容を示す3次元描画命令デー
タを生成して、3次元キャンパス機能部105内のZバ
ッファレンダリング機能部(図22に172で示す)へ
渡す。
【0128】ドキュメントデータ19がマテリアルデー
タの場合には、3次元シーン属性のマテリアル設定の内
容を示す3次元描画命令データを生成して、3次元シー
ン属性設定機能部107内のマテリアル設定機能部(図
10に115で示す)へ渡す。
【0129】ドキュメントデータがテクスチャデータの
場合には、3次元シーン属性のテクスチャ設定の内容を
示す3次元描画命令データを生成して、3次元シーン属
性設定機能部107内のテクスチャ設定機能部(図10
に116で示す)へ渡す。
【0130】ドキュメントデータがカメラデータの場合
には、3次元シーン属性のカメラ設定の内容を示す3次
元描画命令データを生成して、3次元シーン属性設定機
能部107内のカメラ設定機能部(図10に117で示
す)へ渡す。
【0131】ドキュメントデータがライトデータの場合
には、3次元シーン属性のライト設定の内容を示す3次
元描画命令データを生成して、3次元シーン属性設定機
能部107内のライト設定機能部(図10に118で示
す)へ渡す。
【0132】ドキュメントデータがフォントデータの場
合には、3次元シーン属性のフォント設定の内容を示す
3次元描画命令データを生成して、3次元シーン属性設
定機能部107内のフォント設定機能部(図10に11
9で示す)へ渡す。
【0133】ドキュメントデータがインターポレーショ
ンデータの場合には、3次元シーンビヘイビアのインタ
ーポレーション設定の内容を示す3次元描画命令データ
を生成して、3次元シーンビヘイビア設定機能部108
内のインターポレーション設定機能部(図11に124
で示す)へ渡す。
【0134】ドキュメントデータがタイマーデータの場
合には、3次元シーンビヘイビアのタイマー設定の内容
を示す3次元描画命令データを生成して、3次元シーン
ビヘイビア設定機能部108内のタイマー設定機能部
(図11に125で示す)へ渡す。
【0135】ドキュメントデータがセンサーデータの場
合には、3次元シーンビヘイビアのセンサー設定の内容
を示す3次元描画命令データを生成して、3次元シーン
ビヘイビア設定機能部108内のセンサー設定機能部
(図11に126で示す)へ渡す。
【0136】ドキュメントデータがイメージマッピング
データの場合には、2次元埋め込みのためのイメージマ
ッピングの内容を示す3次元描画命令データを生成し
て、2次元埋め込み機能部109内のイメージマッピン
グ機能部(図13に130で示す)へ渡す。
【0137】ドキュメントデータがハイパーリンクデー
タの場合には、2次元埋め込みのためのハイパーリンク
の内容を示す3次元描画命令データを生成して、2次元
埋め込み機能部109内のハイパーリンク設定機能部
(図13に131で示す)へ渡す。
【0138】ドキュメントデータがXVLローディングの
場合には、XVLローディングのためのファイル名とファ
イルの置き場所の内容を示す3次元描画命令データを生
成して、XMLローダ機能部110内のXVL字句解析機能部
(図14に141で示す)へ渡す。
【0139】ドキュメントデータがVRMLローディングの
場合には、VRMLローディングのためのファイル名とファ
イルの置き場所の内容を示す3次元描画命令データを生
成して、XRMLローダ機能部111内のVRML字句解析機能
部(図18に150で示す)へ渡す。
【0140】以下、前記3次元描画命令に基く前記各構
成要素107〜111の動作をそれぞれ説明する。
【0141】図10は、3次元シーン属性設定機能部1
07の動作を説明するための機能ブロック図である。
【0142】この3次元シーン属性設定機能部107
は、前記MMDSAXマネージャ機能部22(3次元描画命令
生成部30)からの3次元描画命令(3次元シーン属性
設定命令)により起動され、「シーングラフ」101に
おけるカメラ、ライト、モデルのカラー、フォントスタ
イル、座標系、イメージテクスチャ、マテリアル、ノー
マル、テクスチャ座標系、テクスチャトランスフォーメ
ーション、ハイパーリンクを含む3次元属性を設定・変
更する機能を提供する。そして、変更した3次元属性を
3次元空間に反映するために、3次元属性設定のシーン
グラフ101を生成し、前記3次元シーン描画機能部1
06へ渡す機能を有する。
【0143】ここでシーングラフとは、後で詳しく説明
するように、ノードのツリー状の構造で編成される非循
環グラフのデータ構造のデータである。本機能でAPIと
して規定するデータである。
【0144】この3次元シーン属性設定機能部107
は、上記機能を奏するために、この図に示すように、マ
テリアル設定機能部115と、テクスチャ設定機能部1
16と、カメラ設定機能部117と、ライト設定機能部
118と、フォント設定機能部119とを有する。
【0145】マテリアル設定機能部115は、3次元描
画命令生成機能部30より、マテリアル設定のための3
次元描画命令データを受け取り、前記3次元シーン描画
機能部106(シーングラフ構築機能部)にて保持され
ているシーングラフツリーにマテリアルデータを設定さ
せるために、3次元描画命令に応じたシーングラフを生
成して前記3次元シーン描画機能部106(シーングラ
フ構築機能部)へ渡す機能を有する。
【0146】ここで、「マテリアル」は、関連するシー
ングラフのジオメトリに表面のマテリアル・プロパティ
を指定し、レンダリングの際にライティングと共に照光
計算に使用されるものである。
【0147】このマテリアル設定機能部107では、以
下に示すマテリアルフィールドを設定する。
【0148】DiffuseColor…光源に比例した面の角度を
基に、すべての光源を反射する。面がライトに当たる角
度が直角に近いほど、反射するライトは拡散する。
【0149】AmbientIntensity…光源からの環境光がこ
の面で反射する量を指定する。環境光は全方向的で、面
に対する位置ではなく、光源の数のみに左右される。環
境カラーはDiffuseColor * AmbientIntensityとする。
【0150】SpecularColor…りんごの表面の輝点など
のハイライトを指定する。ライトから面までの角度が面
からビューアまでの角度に接近している場合、拡散と環
境カラーの計算にSpecularColorが追加される。
【0151】Shininess…SpecularColorの設定の際に、
光の鋭さを指定する。値が低いと柔らかい光になり、高
くすると鋭くなって鏡面のハイライトも小さくなる。
【0152】EmissiveColor…輝いているオブジェクト
を指定する。
【0153】Transparency…オブジェクトを透過するラ
イトの割合を指定する。1.0の時に完全に透明になり、
0.0で不透明となる。
【0154】また、テクスチャ設定機能部116は、前
記3次元描画命令生成機能部30より、テクスチャ設定
のための3次元描画命令データを受け取り、前記3次元
シーン描画機能部106(シーングラフ構築機能部)に
て保持されているシーングラフツリーにテクスチャデー
タを設定させるために、3次元描画命令に応じたシーン
グラフを生成して3次元シーン描画機能部106(シー
ングラフ構築機能部)へ渡す機能を有する。
【0155】本機能におけるテクスチャは、画像および
ジオメトリにマッピングするためのパラメータを指定す
ることで、テクスチャマッピングを定義する。すなわ
ち、テクスチャマップは、イメージ画像の双方向に0.0
から1.0の範囲で、2Dの座標系で定義される。画像サイ
ズに無関係に、画像の左端のピクセルは0.0 , 0.0に、
右上のピクセルは1.0, 1.0に対応する。またテクスチャ
マップは、全方向に無限に繰り返すことにより、ジオメ
トリにマッピングするパラメータが0.0から1.0の範囲を
超えた場合においても、連続に結合されてマッピングさ
れる。
【0156】また、カメラ設定機能部117は、3次元
描画命令生成機能部30より、視点および視線の内容を
示すカメラ設定のための3次元描画命令データを受け取
り、3次元シーン描画機能部106(シーングラフ構築
機能部)にて保持されているシーングラフツリーにカメ
ラデータを設定させるために、3次元描画命令に応じた
シーングラフを生成して3次元シーン描画機能部106
(シーングラフ構築機能部)へ渡す機能を有する。
【0157】このカメラ設定機能部117はカメラに対
し、ユーザがシーンを見る視野座標系として特定の位置
を設定するものである。カメラは、前記3次元グラフィ
ックスパイプライン(図9)における視野変換のパラメ
ータを規定するもので、仮に3次元描画命令生成機能部
30から3次元描画命令としてカメラ設定を受け取らな
い場合は、デフォルト値が設定され、シーングラフとし
て3次元シーン描画機能部106(シーングラフ構築機
能部)へ渡される。
【0158】カメラの情報は、視点原点を定義するカメ
ラポジション、および視点方向を定義するカメラオリエ
ンテーション、および視野を定義するFOV(field of vi
ew)である。
【0159】画面のビューコントロールにおいては、こ
こで定義されたカメラ情報に基づき、カメラのシーング
ラフのパラメータ変更が行われる。
【0160】前記ライト設定機能部118は、3次元描
画命令生成機能部30から、ライト設定のための3次元
描画命令データを受け取り、3次元シーン描画機能部1
06(シーングラフ構築機能部)にて保持されているシ
ーングラフツリーに光源データを設定させるために、3
次元描画命令に応じたシーングラフを生成して3次元シ
ーン描画機能部106(シーングラフ構築機能部)へ渡
す機能を有する。
【0161】前記ライト設定機能部118におけるライ
トは、3Dベクトルを指定し、それに平行な光源に沿っ
て照射する指向性光源とする。
【0162】このライト設定機能部で定義するライト
は、以下のパラメータを保持する。
【0163】Intensity…光源からの直接照射の明るさ
を指定する、 Color…光の照射のカラースペクトル特性を指定す、
【0164】AmbientIntensity…光源からの環境放射の
輝度を指定する。
【0165】ジオメトリは、このライトの光りに照らさ
れて、光源が直接照射する光の拡散と反射から照光計算
をして色が着けられる。
【0166】さらに、前記フォント設定機能部119
は、3次元描画命令生成機能部より、フォント設定のた
めの3次元描画命令データを受け取り、3次元シーン描
画機能部106(シーングラフ構築機能部)にて保持さ
れているシーングラフツリーにフォントデータを設定さ
せるために、3次元描画命令に応じたシーングラフを生
成して3次元シーン描画機能部106(シーングラフ構
築機能部)へ渡す機能を有する。
【0167】また、このフォント設定機能部119にお
けるフォント設定は、テキストのフォントサイズ、およ
びPLAIN,またはBOLDまたはITALICの内容を示すスタイル
を定義する。3次元空間内に表現するテキストは、フォ
ント設定の内容にしたがって実際の大きさとスタイルが
確定され、3次元レンダリングされる。フォントスタイ
ルにおけるPLAINは標準型であり、これが初期設定であ
る。BOLDは太字の型、ITALICは斜体の型を指定する。
【0168】次に、前記3次元シーンビヘイビア機能部
108について図11を参照して説明する。
【0169】この3次元シーンビヘイビア機能部108
は、MMDSAXマネージャ機能部22より3次元描画命令デ
ータを受け取り、3次元シーンにビヘイビアを設定し、
時間やイベントに応じてシーンの一部またはシーン全体
の動画アニメーションを表現するために、3次元シーン
ビヘイビア設定のシーングラフを生成し、3次元シーン
描画機能部106へ渡す機能を有するものである。
【0170】この3次元シーンビヘイビア機能部108
の機能は、言い換えるとキーフレームによるアニメーシ
ョンを実現するための機構であり、図12の3次元ビヘ
イビアの流れに示すようなセンサー121、タイマー1
22、インターポレーション123の連鎖でビヘイビア
を定義する。図12において、センサー121によりキ
ーフレームアニメーションを開始するタイミングを待
ち、センサー121の開始とともに、時間経過を管理す
るタイマー122がキーフレームのタイミングを発生さ
せる。インターポレーション123は、動きの中の離散
的なパラメータから、キーフレームに応じた値を補完に
より自動計算するものであり、時間経過に応じてアニメ
ーションが実現する。
【0171】つまり、この3次元シーンビヘイビア機能
部108は、これらのパラメータを設定するための情報
を前記MMDSAXマネージャ機能部22より3次元描画命令
として受け取り、そのシーングラフを生成するものであ
る。
【0172】この3次元シーンビヘイビア機能部108
は上記機能を実現するため、図11に示すように、イン
ターポレーション設定機能部124と、タイマー設定機
能部125と、センサー設定機能部126を有する。
【0173】インターポレーション設定機能部124
は、3次元描画命令生成機能部30より、インターポレ
ーション設定のための3次元描画命令データを受け取
り、3次元シーン描画機能部106(シーングラフ構築
機能部)にて保持されているシーングラフツリーにイン
ターポレーションデータを設定させるために、3次元描
画命令に応じたシーングラフを生成して3次元シーン描
画機能部106(シーングラフ構築機能部)へ渡す機能
を有する。
【0174】インターポレーションは、範囲を定める数
値を与えると、補完により自動的に範囲内を生成するノ
ードである。このインターポレーション設定機能部10
8は、この内挿(補間)を行う上で十分な情報として、
キーとそれに対応するキーバリューを事前に設定する。
つまり、これらは、インターポレーションが任意の補完
値を計算する際に使う参照値である。
【0175】この本システムで提供されるインターポレ
ーションは、座標値のインターポレーションを行うため
のPositionInterpolator、および回転のインターポレー
ションを行うためのOrientationInterpolatorである。
【0176】具体的には、前記MMIDF機能部5で、動き
のデータをもつキャラクターを読み込んだ際に、前記3
次元描画命令生成機能部30よりビヘイビア設定として
の3次元描画命令生成され、このインターポレーション
機能部124へ渡される。このインターポレーション機
能部124は、その内容に応じてPositionInterpolator
またはOrientationInterpolatorのインタポレーション
のシーングラフを生成して、3次元シーン描画機能部1
06(シーングラフ構築機能部)へ渡す。
【0177】また、PositionInterpolatorは、位置のイ
ンターポレーションを実現するものであり、1つのキー
に対し、動かしたい複数の位置を表すデータを設定する
必要がある。OrientationInterpolatorは、回転のイン
ターポレーションを実現するものであり、1つのキーに
対し、1つのを表すデータを設定する必要がある。
【0178】一方、前記タイマー設定機能部125は、
3次元描画命令生成機能部30より、タイマー設定のた
めの3次元描画命令データを受け取り、前記3次元シー
ン描画機能部106(シーングラフ構築機能部)にて保
持されているシーングラフツリーにタイマーデータを設
定させるために、3次元描画命令に応じたシーングラフ
を生成して3次元シーン描画機能部106(シーングラ
フ構築機能部)へ渡す。
【0179】ビヘイビア実現のために、インターポレー
ションのシーングラフを起動し座標値等を生成するため
には、インターポレーションへキーを渡す必要がある。
タイマーは、インターポレーションへ時系列に応じてキ
ーを渡すシーングラフである。
【0180】タイマーは、以下のフィールドを維持す
る。
【0181】CycleInterval…繰り返しを行うサイクル
(周期)を指定する、 Loop…繰り返して実行するかどうかを指定する、 Fraction…1サイクル中にどれくらい経過したかを指定
する。この値がインタポレーションのキーとして渡され
る。
【0182】また、前記センサー設定機能部126は、
前記3次元描画命令生成機能部30より、センサー設定
のための3次元描画命令データを受け取り、3次元シー
ン描画機能部106(シーングラフ構築機能部)にて保
持されているシーングラフツリーにセンサーデータを設
定させるために、3次元描画命令に応じたシーングラフ
を生成して3次元シーン描画機能部106(シーングラ
フ構築機能部)へ渡すものである。
【0183】このシステムはセンサーとしてTouchSenso
r(タッチ:画面上のマウスによるピッキング)を提供
しており、本機能はこのTouchSensorのシーングラフを
生成して3次元シーン描画機能部106(シーングラフ
構築機能部)へ渡す。TouchSensorは、以下のフィール
ドを保持し、このセンサー設定機能部126は、これら
の値を設定したシーングラフを生成する。
【0184】Node…タッチの対象となるシーングラフの
ジオメトリを指定する、
【0185】Timer…タッチされた際に、時系列の刻み
を開始するタイマーを指定する。
【0186】次に、前記2次元埋め込み機能部109に
ついて図13を参照して説明する。
【0187】前記2次元埋め込み機能部109は、MMDS
AXマネージャ機能部22より、2次元のイメージデータ
埋め込みのための3次元描画命令データを受け取り、表
示されている3次元画面のシーングラフツリーに、2次
元のイメージデータを埋め込むためのシーングラフを生
成して3次元シーン描画機能部106へ渡す機能を有す
る。
【0188】また、埋め込もうとする2次元イメージに
ハイパーリンクが設定されている場合、3次元描画命令
として2次元のイメージデータとあわせてハイパーリン
ク情報も受け取り、ハイパーリンク情報を持つ2次元デ
ータ埋め込みのためのシーングラフを生成して3次元シ
ーン描画機能部106に渡す。これにより、3次元空間
のピッキングにより2次元イメージデータの貼り付いて
いるジオメトリを選択した場合に、指定されたリンク先
へジャンプすることが可能になる。
【0189】この2次元埋め込み機能部109は、上記
機能を奏するために、図に示すように、イメージマッピ
ング機能部130と、ハイパーリンク設定機能部131
とを有する。
【0190】イメージマッピング機能部130は、3次
元描画命令生成機能部30より、イメージマッピング設
定のための3次元描画命令データを受け取り、3次元シ
ーン描画機能部106(シーングラフ構築機能部)にて
保持されているシーングラフツリーにイメージマッピン
グのためのテクスチャを設定させるために、3次元描画
命令に応じたシーングラフを生成して3次元シーン描画
機能部106(シーングラフ構築機能部)へ渡す。
【0191】前記ハイパーリンク設定機能部131は、
3次元描画命令生成機能部30より、ハイパーリンク設
定のための3次元描画命令データを受け取り、3次元シ
ーン描画機能部106(シーングラフ構築機能部)にて
保持されているシーングラフツリーにハイパーリンクを
設定させるために、3次元描画命令に応じたシーングラ
フを生成して3次元シーン描画機能部106(シーング
ラフ構築機能部)へ渡す機能を有するものである。
【0192】次に、XVLローダ機能部110について図
14を参照して説明する。
【0193】XVLローダ機能部110は、MMDSAXマネー
ジャ機能部22からの3次元描画命令(XVLファイル要
求)により起動される。このXMLローダ機能部110
は、外部「XVL」ファイル134を読み込み、「Lattice
カーネル」135を使用し格子形状の3次元基本要素1
36を取り出し丸め形状137に変換し、シーングラフ
を生成する。生成したシーングラフは3次元シーン描画
機能部106に渡される。
【0194】XVLファイル形式は、VRMLファイルの形式
の規定範囲内で、Latticeカーネルを利用した形状デー
タの生成を行うための情報を含むものである。
【0195】具体的には、XVLファイルは、図15に示
すような形状の外側139を構成するラティスと呼ばれ
る制御格子のデータと、実際の表現すべき内側の丸まっ
た形状140をLatticeにより再現するためのパラメー
タで構成される。
【0196】従ってこのXVLローダ機能部110は、こ
の制御格子のデータとデフォメーション(丸め形状を生
成する)に必要なパラメータをファイルの内容より抽出
し、一旦制御格子で構成される格子シーンを生成する。
そして、この格子シーンの内容から、制御格子とパラメ
ータから構成される格子形状データを生成し、Lattice
カーネル135に渡す。Latticeカーネルは、制御格子
とパラメータの格子形状データから丸め形状データを生
成する。そして、Latticeカーネルにより丸められた丸
め形状データ136を受け取り、丸め形状のシーングラ
フを生成して、3次元シーン描画機能部106に渡す。
【0197】このような機能を奏するために、このXVL
ローダ機能部110は、図14に示すように、XVL字句
解析機能部141と、XVL構文解析機能部142と、XVL
変換機能部143とから構成される。
【0198】XVL字句解析機能部141は、3次元描画
命令生成機能30より、ファイルロードのための3次元
描画命令を受け取り、JAVAのストリーミング読み込み機
能を利用して、外部XVLファイル134の内容を取得
し、トークン144を生成しXVL構文解析機能部に渡
す。
【0199】具体的には、XVLファイル134はテキス
ト形式で記述されているので、このテキスト文章を単語
単位に区切り取り出す。この取り出した単語がどのよう
な意味を持つかを調べ、単語に属性として与える。図1
6は、この属性の種類と意味を示す表である。
【0200】このように、単語に属性を与えたものをト
ークン144と呼び、生成されたトークンは、前記XVL
構文解析機能部142に渡される。
【0201】XVL構文解析機能部142は、XVL字句解析
機能部141よりトークン142を受け取り、トークン
142の種類と並びから、3次元要素の意味および関連
の情報を解析し、格子シーン145のノードおよびツリ
ー構造を構築する。構築された格子シーンをXVL変換機
能部143に渡す。
【0202】具体的には、再帰下降解析の手法を用いて
解析する。この手法はC言語のコンパイラなどでも一般
的に使われている手法である。この手法とXVLで規定さ
れている文法を用いて、トークン144から格子シーン
145(シーングラフ)のツリー構造を構築する。この
手法の処理では、図17に示すシーングラフ147(図
の三角形の部分)が、入力であるトークンの読み込みの
進行にしたがって、左上の方向のノードから構築されて
いく。
【0203】XVL変換機能部143は、XVL構文解析機能
部142から受け取った、格子シーンデータ145から
「Latticeカーネル」135使用して、格子形状から丸
め形状への変換を行い、変換された形状データ137か
らシーングラフを生成し、3次元シーン描画機能部10
6(シーングラフ構築機能部)に渡す。
【0204】なお、ここで、XVL構文解析機能部から受
け取った格子シーンは、格子形状と呼ばれるもので、複
雑な形状を極めて少ないデータ量で表現した状態のもの
である。このXVLファイルによれば、3次元CADデータを
従来の約100分の1の大きさに縮小することが可能と
なるため、非常に有効である。
【0205】次にVRMLローダ機能部111について図1
8を参照して説明する。
【0206】VRMLローダ機能部111は、MMDSAXマネー
ジャ機能部22からの3次元描画命令(VRMLファイル要
求)により起動され、外部「VRML」ファイル148を読
み込み、その内容を解析し、記述されている3次元基本
要素および3次元基本要素の関係と動きを取り出しシー
ングラフを生成する。生成したシーングラフは3次元シ
ーン描画機能部106に渡される。
【0207】このような機能を奏するため、このVRMLロ
ーダ機能部111は、VRML字句解析機能部150と、VR
ML構文解析機能部151とを有する。
【0208】VRML字句解析機能部150は、3次元描画
命令生成機能部30より、ファイルロードのための3次
元描画命令を受け取り、その命令に基づきJAVAのストリ
ーミング読み込み機能を利用して外部VRMLファイル14
8の内容を取得し、トークン152を生成しVRML構文解
析機能部151に渡す。
【0209】具体的には、XVLファイル148はテキス
ト形式で記述されているので、このテキスト文章を単語
単位に区切り取り出す。この取り出した単語がどのよう
な意味を持つかを調べ、単語に属性として与える。図1
9は、この属性の種類と意味を示した表である。
【0210】このように、単語単位に区切られ属性を与
えられたものをトークン152と呼び、この結果をVRML
構文解析機能部151に渡す。
【0211】VRML構文解析機能部151は、VRML字句解
析機能部よりトークン列を受け取り、トークン列の種類
と並びから、3次元要素の意味および関連の情報を解析
し、シーングラフのノードおよびツリー構造を構築す
る。シーングラフを3次元シーン描画機能部106のシ
ーングラフ構築機能部に渡される。
【0212】具体的には、再帰下降解析の手法を用いて
解析する。この手法はC言語のコンパイラなどでも一般
的に使われている手法である。この手法とVRML2.0で規
定されている文法を用いて、トークンからシーングラフ
のツリー構造を構築する。この手法の処理は、図17を
参照したのと同様に、シーングラフツリーが、入力であ
るトークンの読み込みの進行にしたがって、左上の方向
のノードから構築されていくようにする。
【0213】ついで、前記3次元シーン属性設定機能部
107、3次元シーンビヘイビア設定機能部108、2
次元埋め込み機能部109、XVLローダ機能部110及
びVRMLローダ機能部111から、3次元描画命令に応じ
たシーングラフを受け取る3次元シーン描画機能部10
6について図20以下を参照して説明する。
【0214】3次元シーン描画機能部106は、各機能
部107〜111から受け取ったシーングラフを集積
し、シーングラフを集積してなるシーングラフツリーを
内部で保持する。そして、シーングラフツリーの構成要
素であるノードオブジェクトのレンダリングを編成およ
び制御するために、トップのノードからの一貫した走査
方法(この方法は「トラバース」と称される)で、3次
元グラフィックスパイプラインにおけるポリゴンのモデ
リング座標系から3次元ワールド座標系への変換を行
い、3次元グラフィックス表示のための描画命令の内容
を示すシーン描画データ生成する。そして、これを、前
記3次元キャンバス機能部105へ渡すものである。
【0215】この3次元シーン描画機能部106で扱う
シーングラフは、VRMLの仕様に準拠したシーングラフ構
造であり、言い換えればその中のいくつかのノードと同
様の構造である。この3次元シーン描画機能部106で
扱うシーングラフのノードは、グループノードとリーフ
ノードと言った2つに分類される。グループノードは1
つまたは複数の子ノードをグループ化する。また、グル
ープ以下の空間的な配置を規定するトランスフォームノ
ードにより階層的な座標変換の積み重ねを行う。グルー
プノードの下にいくつも子ノードがあっても良いが、親
ノードは1つしか持つことができない。また、リーフノ
ードは子を持たず、且つ親を1つしか持たない。リーフ
ノードは、シェイプノード、ジオメトリノード、アピア
ランスノード、マテリアルノード、テクスチャノード、
テキストノード、フォントスタイルノードで構成され、
またシーングラフにビヘイビアを与えるため、インター
ポレーションノード、タイマーノード、センサーノー
ド、およびアンカーノード、ライトノード、カメラノー
ドで構成される。
【0216】また、この3次元シーン描画機能部106
は、表示されている3次元空間のビューコントロールを
行うため、前記3次元キャンバス機能部から、マウスお
よびキーボードの具体的なイベントの内容であるキャン
バス情報を受け取り、マウスの移動量やキータイプから
ビューの回転量(Orbit)またはビューの移動量(Pan)
またはビュースケール量(Zoom)を算出して、視点情報
を更新し、3次元シーンに反映するために新しい視点で
シーングラフをトラバースし、3次元キャンバス機能部
へシーン描画データを返す機能も有する。
【0217】このような機能を奏するため、この3次元
シーン描画機能部は、図20に示すように、シーングラ
フ構築機能部155と、シーントラバース機能156
と、ビューコントロール機能157とを有する。以下、
これらの構成要素をさらに詳しく説明する。
【0218】まず、シーングラフ構築機能部155は、
このシステムで用いられるシーングラフのグループノー
ドおよびリーフノードを規定し、グループノードあるい
はリーフノードを生成し、シーンのツリー構造を構築で
き、またカメラ、光源、背景色、形状の色やテクスチャ
の内容を示すシーン属性を付加できるAPIを提供する。
このことにより、前述のマテリアル設定機能部115、
テクスチャ設定機能部116、カメラ設定機能部11
7、ライト設定機能部118またはフォント設定機能部
119、インターポレーション設定機能部124、タイ
マー設定機能部125、センサー設定機能部126、イ
メージマッピング機能部130またはハイパーリンク設
定機能部131によって生成されたシーングラフデータ
を受け取る。また、このシーングラフ構築機能部155
は、前述のXVL変換機能部または構文解析機能部よってV
RMLファイルまたはXVLファイルをローディング(読み込
み)することにより生成されたシーングラフデータを受
け取る。
【0219】そして、このシーングラフ構築機能部15
5は、受け取ったシーングラフを集積してなるシーング
ラフツリー158を保持し、各機能より渡されたシーン
グラフの前記シーングラフツリー158への追加、削
除、変更を行い、表示すべきシーングラフツリーデータ
158をシーントラバース機能部156へ渡すようにな
っている。
【0220】また、このシーングラフ構築機能部155
は、3次元シーンの視点コントロールのために、内部に
保持するシーングラフツリー158のカメラの内容を示
すシーングラフをビューコントロール機能部157へ渡
し、このビューコントロール機能部157において視点
変更されたカメラの内容を示すシーングラフ160を受
け取り、シーングラフツリー158への変更を行う。
【0221】このシーングラフ構築機能部において規定
するシーングラフのグループノードを以下に示す。
【0222】・Groupノード ・Transformノード 本機能にて規定するシーングラフのリーフノードを以下
に示す。
【0223】・Shapeノード ・IndexedFaceSetノード ・Textノード ・Appearanceノード ・Materialノード ・Textureノード ・Interpolatorノード ・Timerノード
【0224】以上のノードからなるシーングラフ(グル
ープノード、リーフノード)のツリー構造(シーングラ
フツリー)の具体的な例を図21に示す。
【0225】この図に示すように、シーングラフのグル
ープノードのchildrenフィールドに属すことでシーング
ラフの親子関係に位置できるようになっている。ここ
で、childrenフィールドに属すことが可能なノードは、
GroupノードとTransformノードおよびShapeノードであ
る。シーングラフは非循環グラフであるため、ツリーの
親子関係を表すこれらのノードは共有することはできな
い。GroupノードとTransformノードおよびShapeノード
以外のノードはグループノードのchildrenフィールド以
外のフィールドに属するため、ノードを共有することが
できる。
【0226】ここで、実際の3次元シーンは同一形状の
ポリゴンを別の空間上に配置し、そのカラーを異ならせ
ているものである。これを図21のツリーで説明する
と、shapeノードは共有できないが、IndexedFaceSetノ
ードのジオメトリ(geometryフィールド)を共有し同一
形状としているということになる。また、別の色を設定
するためにAppearanceノードおよびMaterialノードは個
別に生成し、Shapeのアピアランス(appearanceフィー
ルド)に設定されている。
【0227】一方、前記シーントラバース機能部156
は、前述したように、前記シーングラフ構築機能部15
5にて保持されているシーングラフツリー158を受け
取る。そして、このシーントラバース機能部156は、
シーングラフのルートノードからトラバース(全てのノ
ードを走査)を行い、Transformノードに含まれる4x4
マトリックスを掛け合わせて、合成マトリックスを生成
し、IndexedFaceSetノードのポリゴンを表すモデリング
座標系データ(ローカル座標データ)に合成マトリック
スを掛けることでワールド座標系のポリゴン座標値を生
成し、そのデータをシーン描画データ161として前記
3次元キャンパス機能部105(ビュー座標変換機能
部)へ渡すようになっている。
【0228】つまり、このシーントラバース機能部15
6は図9に示した3次元グラフィックスパイプライン構
成におけるモデリング変換91の部分であり、シーング
ラフの各ノードで定義されている座標系(モデリング座
標系92)から3次元空間上の座標系(ワールド座標系
93)への変換を行う機能を有する。
【0229】シーングラフのトラバースにおいて、Tran
sformノードの再帰的な走査は、4x4マトリックスをス
タック状に積み上げ、その合成マトリックスが採用さ
れ、Transformノード以下のトラバースが終了し、次の
ノードへ進む際にスタックから外されることによって行
われる。
【0230】また、このシーントラバース機能部155
は、シーングラフツリー158にて保持される形状ポリ
ゴンデータ以外の光源の光線方向ベクトル、視点座標、
視線方向ベクトル、ビューボリューム、マテリアルパラ
メータ、レンダリングモード値、背景色またはテクスチ
ャイメージの内容からシーン描画データを生成して、3
次元キャンバス生成機能部105の後述するレンダリン
グモード設定機能部へ渡すようになっている。
【0231】すなわち、このシーントラバース機能部1
56は、シーン描画データ161として、3次元ワール
ド座標系で変換されたポリゴンデータ、および3次元レ
ンダリングのためのレンダリングモードデータを、前記
3次元キャンパス機能部105に受け渡すようになって
いる。
【0232】また、前記ビューコントロール機能部15
7は、後で詳しく説明する3次元キャンバス機能部10
5のキャンバスイベント処理機能部から、キャンバス情
報162を受け取り、キャンバス情報の画面上のマウス
の位置、左右ボタンのアップ・ダウンイベント、キーボ
ードのキーダウンイベントから、前記シーングラフ構築
機能部155内で保持しているシーングラフツリーのカ
メラの内容を示すシーングラフ160を受け取り、3次
元シーンの視点(ビュー)を変更する計算を行う機能を
有する。また、シーングラフ構築機能部155内で保持
しているシーングラフツリーを更新するために、視点変
更されたカメラの内容を示すシーングラフ160をシー
ングラフ構築機能部155へ渡す。視点変更されたシー
ングラフツリー158は、シーングラフ構築機能部15
5においてシーントラバース機能部156へ渡され新し
い視点をもとにトラバースされる。
【0233】ここで、視点変更(ビューコントロール)
は、図9に示した3次元グラフィックスパイプライン構
成における視野変換のためのパラメータ設定である。視
野変換のためのパラメータの具体的な内容は、図23に
示す視野座標系を表すデータとして、視点原点、視線方
向(Ze)、アップベクター(Ye)があり、また、図23
に示す正規化投影座標系を決定するための視野ボリュー
ムを表すデータとして、視点と投影面との距離(ニアク
リッップ)、投影面の大きさ、およびファークリップが
ある。このビューコントロール機能部157では、これ
らのパラメータを変更しビューコントロールを実現す
る。
【0234】本機能の具体的なビューコントロールは、 ・Orbit ・Pan ・Zoom ・Fit である。Orbitは、注視点を中心としたビュー回転であ
り、Examinとも言われる。Panは、視線方向を一定に保
ち視線方向に垂直な平面上のビュー移動である。Zoom
は、ビューの拡大/縮小である。Fitは、3次元空間の
形状を画面の大きさに一致させるビューの拡大/縮小で
ある。
【0235】また、このビューコントロール機能部15
7は、各ビューコントロールとして設定する視野変換の
ためのパラメータを、マウスの画面上の2次元の移動量
やキーダウン回数と、現在の視野変換パラメータの値と
から適切な3次元パラメータとして計算する。したがっ
て、現在の視野が大きい(Zoom縮小)場合と視野が小さ
い(Zoom拡大)場合とにおいて、マウスが同じピクセル
数だけ移動したとしても、Panによる視点移動量は異な
る。
【0236】すなわち、このビューコントロール機能部
157は、シーングラフ(3次元オブジェクトを表すノ
ードオブジェクトをツリー状に編成したデータ構造であ
り、APIとして規定するデータ)中の、視点変更された
カメラノードをシーングラフ構築機能部155へ渡すも
のである。
【0237】次に、前記3次元キャンバス機能部105
について詳しく説明する。
【0238】この3次元キャンバス機能部105は、図
8に示すように、まず、MMIDF機能部5(MMDSAXマネー
ジャ機能部22)より3次元シーン描画領域の内容を示
す3次元描画命令データを受け取り、3次元キャンバス
をWebブラウザ3上に生成する機能を有する。そして、
前記3次元シーン描画機能部106(シーントラバース
機能部156)よりシーン描画データ161を受け取
り、Webブラウザ3上に貼り付けたキャンバス上に3次元
シーンを表現するために、3次元グラフィックスパイプ
ラインの機構を経由してJavaAWTの2次元の描画命令セ
ットからなるグラフィックス表示データ165を生成
し、Webブラウザ3より提供されるJavaAWTのAPIに渡す
機能を有する。
【0239】この3次元キャンバス機能部105は、2
次元を描画するための命令セットであるJavaAWTのAPIで
3次元を表現するため、図9に示した3次元グラフィック
スパイプラインにおける視野変換以降の機構を処理す
る。
【0240】また、この3次元キャンバス機能部105
は、Webブラウザ3上に貼り付けた3次元キャンバス上
から、視点操作のために、図8に示すように、ユーザか
らのマウス操作およびキーボード入力の内容を示す操作
イベント166を受け取る。マウス操作においては、マ
ウスの左ボタンが押された時、マウスの右ボタンが押さ
れたとき、マウスの左ボタンが離された時、マウスの右
ボタンが離された時またはマウスが移動した時のマウス
ボタンの位置からなるキャンバス情報を生成する。また
キーボード入力においては、SHIFTキー、CRTLキーまた
はALTキーが押されているか否かの状態を示すキャンバ
ス情報を生成する。そして、生成されたキャンバス情報
を3次元シーン描画機能部106へ渡す。
【0241】また、この3次元キャンバス機能部105
は、3次元シーンに関連付けられたハイパーリンクに対
するユーザのマウス操作の操作イベントを受け取ると、
その内容からハイパーリンクデータ167を取り出し、
MMIDF機能部5(MMDSAXマネージャ機能部22)へ渡す
ようになっている。
【0242】この3次元キャンバス機能部105は、こ
のような機能を奏するため、図22に示すように、レン
ダリングモード設定機能170と、ビュー座標変換機能
部171と、Zバッファレンダリング機能部172と、
キャンバスイベント処理機能173とを有する。
【0243】なお、この3次元キャンバス機能部105
で使用する入力データは以下の通りである。
【0244】3次元描画命令…この3次元キャンバス機
能部105がJavaAPIとして提供する3次元レンダリン
グに必要なデータである。この3次元キャンバス機能部
105はその内の3次元シーン描画領域をMMDSAXマネー
ジャ機能部22より受け取る。
【0245】シーン描画データ161…ビュー座標系、
3次元のポリゴンデータの3次元座標およびその法線か
ら構成される3次元データである。
【0246】操作イベント166…Webブラウザ3より
本機能へ渡されるユーザからの入力データである。操作
イベント166は、マウスイベントおよびキーボードイ
ベントで構成される。
【0247】また、この3次元キャンバス機能部105
で使用する出力データは以下の通りである。
【0248】グラフィックス表示165…Webブラウザ
3より提供されるJavaAWTのAPIのデータである。この3
次元キャンバス機能部105は、描画のためにこのAPI
を呼び出す。
【0249】キャンバス情報…マウスのボタン状況およ
びマウスイベント発生時のキャンバス上のマウス座標デ
ータおよび、キーボードイベント発生時のキーコードの
データである。
【0250】ハイパーリンク167…他のWebサイトま
たはファイルへのリンク情報データである。3次元シー
ンにアンカーとして埋め込まれたハイパーリンク情報を
ユーザが選択した場合に、MMDSAXマネージャ機能部22
に渡されるデータである。
【0251】次に、この3次元キャンバス機能部105
の各構成要素170〜173についてさらに詳しく説明
する。
【0252】前記レンダリングモード設定機能部170
は、前記シーントラバース機能部156より光源の光線
方向ベクトル、視点座標、視線方向ベクトル、ビューボ
リューム、マテリアルパラメータ、レンダリングモード
値、背景色またはテクスチャイメージの内容を示すシー
ン描画データ161を受け取る。
【0253】図9に示す3次元グラフィックスパイプラ
インを経由した3次元レンダリングにおいて、視野変換
を行うためには、ワールド座標系データ(3次元形状要
素となるジオメトリデータ)の他に、光源の光線方向ベ
クトル、視点座標、視線方向ベクトルおよび視野角の情
報が必要である。ビューボリューム・ビューポート変換
を行うためには、ビュー座標系データの他に、ビューボ
リュームおよびマテリアルパラメータが必要である。こ
のレンダリングモード設定機能部170はこれらの情報
からなるシーン設定データを生成し、ビュー座標変換機
能部171へ渡す。
【0254】また、Zバッファ法によるレンダリングを
行うためには、形状の正規化座標系データの他に、レン
ダリングモード値、背景色およびテクスチャイメージの
データが必要である。このレンダリングモード設定機能
部170は、これらの情報からなるシーン設定データを
生成し、Zバッファレンダリング機能部172へ渡す。
【0255】また、シーントラバース機能部158より
受け取るシーン描画データの内容がビュー座標変換機能
部171またはZバッファレンダリング機能部172に
対して不十分な場合、それらのシーン設定データは、デ
フォルト値のシーン設定データが採用され、ビュー座標
変換機能部171またはZバッファレンダリング機能部
170に渡される。
【0256】また、ビュー座標変換機能部171は、前
記シーントラバース機能部158より、ワールド座標系
に配置された3角形ポリゴンを表す座標データおよびそ
の法線ベクトルデータおよび頂点のカラーデータの内容
を示すシーン描画データを受け取る。また、このビュー
座標変換機能部171は、前記レンダリングモード設定
機能部170より、光源の光線方向ベクトル、視点座
標、視線方向ベクトル、視野角、ビューボリュームおよ
びマテリアルパラメータから成るシーン設定データ17
5を受け取る。受け取ったシーン描画データ161およ
びシーン設定データ175より、3次元ワールド座標系
から視野座標系を経て正規化投影座標系へ、ポリゴンを
示すデータの座標変換を行う。またポリゴンの法線ベク
トルと光源の光線方向ベクトルが作る角度、ポリゴンの
法線ベクトルと視線方向ベクトルが作る角度、ポリゴン
自身の持つカラー、マテリアルパラメータから、ポリゴ
ンに対する色の加減を行いカラー値を算出する。
【0257】そして、変換した座標値とカラー値から成
る正規化投影シーンデータを生成し、Zバッファレンダ
リング機能部172へ渡す。
【0258】図23は、3次元ワールド座標系177と
視点座標系178との関係を示したものである。
【0259】視点座標系178は視点を原点に、視線を
Z軸にそしてX軸をワールド座標系177のXZ平面に平行
にとった左手座標系である。このワールド座標系177
から視点座標系178への変換は1つの平行移動行列と
2つの回転行列と1つの右手系から左手系への変換行列
の結合により求められる。その変換行列Tは図24の式
で表される。
【0260】ここで、(xf, yf, zf)を視点の座標、(xa,
ya, za)は視線上の任意の1点として、図24式中のSi
nα、cosα、cosβ、sinβは、図25に示す式でそれぞ
れ表される。
【0261】また、視点座標系と正規化投影座標系との
関係を図27に示す。
【0262】この図26において左側の視点座標系の原
点は正規化投影座標系の原点に対応する。そして見える
範囲として考えた四角錐の領域は正規化投影座標系では
直方体の中に収められる。この変換行列Tpは図28に示
す式で表される。
【0263】ここで投影面の座標Xe, Ye, Ze、正規化投
影座標をXp,Yp,Zp,Wp、kは投影面の1/2の大きさ、hは視
点と投影面との距離、fはfarクリッピング面までの距離
である。
【0264】次に、Zバッファレンダリング機能部17
2(図22)について説明する。
【0265】前記Zバッファレンダリング機能部172
は、前記MMDSAXマネージャ機能部22の3次元描画命令
生成機能部30より3次元シーン描画領域の内容を示す
3次元描画命令データを受け取る。また、このZバッフ
ァレンダリング機能部172は、レンダリングモード設
定機能部170よりレンダリングモード値、背景色およ
びテクスチャイメージの内容を示すシーン設定データ1
75を受け取る。また、ビュー座標変換機能部171よ
り処理された正規化座標データおよび法線と光源との計
算により生成されたカラー値の内容を示す正規化投影シ
ーンデータ180を受け取る。
【0266】このZバッファレンダリング機能部172
は、受け取ったシーン設定データ175および正規化投
影シーンデータ180から、隠面消去した画像を3次元
描画命令データの3次元シーン描画領域に表示するため
に、2次元管面の画素の色を保持するフレームバッファ
と共に視点と立体の距離を保持する特別なバッファ(デ
プスバッファ)を内部に用意し、Zバッファ法を用いてグ
ラフィックス表示データを生成し、Webブラウザ3より
提供されるJavaAWTのAPIを呼び出し、Webブラウザ3に
グラフィックス表示データを渡す。
【0267】このZバッファレンダリング機能部172
で採用したZバッファ法の手順を以下に示す。
【0268】・1フレームを描画する前に、初期値処理
としてフレームバッファを背景色に設定して、Zバッフ
ァ全体に最大距離を書き込む。
【0269】・前記ビュー座標変換機能部より与えられ
るポリゴンを書き込むとき、ポリゴンの占める画素の領
域を計算し、図29に示すように、占める領域の画面走
査線上に画面左から右へ、始点と終点の画素上の面の距
離を線形補間計算する。
【0270】・画面捜査線の始点から終点へ1画素ずつ
Zバッファの値と比較しながら、もし小さければこれか
ら描こうとしている面(画素)が以前に描いた面より手前
であるということでこれを更新する。この比較を行うた
めに、図30に示すように、始点と終点の面の距離から
現在の画素上の面の距離を線形補間計算する。
【0271】・Zバッファを更新した場合、フレームバ
ッファのその画素の色を描こうとしている画素の色に合
わせて更新する。
【0272】・ポリゴンの画面上に占める領域の画素に
ついてすべて比較する。
【0273】次に、図22に示すキャンバスイベント処
理機能部173について説明する。このキャンバスイベ
ント処理機能部173は、マウスおよびキーボードのイ
ベントを待ち受け、ユーザによるマウス操作およびキー
ボード入力の内容を示す操作イベントをWebブラウザ3
より受け取り、マウスボタンイベントタイプに応じてマ
ウス位置およびキーボードイベントに応じたキータイプ
の内容を示すキャンバス情報データを、3次元シーン描
画機能部106のビューコントロール機能部へ渡す。
【0274】この実施形態では、Webブラウザ3より受
け取る操作イベントのマウス操作を、以下のイベントタ
イプに分類する。
【0275】・左マウスボタンが押された ・右マウスボタンが押された ・左マウスボタンが離された ・右マウスボタンが離された ・キャンバス上にマウスが入った ・キャンバス上からマウスが出た ・マウスが動いた また、キーイベントにおいては、以下のイベントタイプ
に分類する。
【0276】・SHIFTキーが押された ・CTRLキーが押された ・ALTキーが押された ・SHIFTキーが離された ・CTRLキーが離された ・ALTキーが離された また、このキャンバスイベント処理機能部173は、上
記のイベントの組み合わせから、以下のイベントタイプ
に分類する。
【0277】・左マウスボタンが押され且つマウスが動
いた場合、マウスがドラッグされた ・SHIFTキーが押され且つマウスがドラッグされた ・CTRLキーが押され且つマウスがドラッグされた ・ALTキーが押され且つマウスがドラッグされた また、このキャンバスイベント処理機能部173は、3
次元シーンに関連付けられたハイパーリンクに対するユ
ーザの左マウスボタンダウンの操作イベントを待ち受
け、その操作イベントを受け取ると、操作イベントの内
容からハイパーリンクデータを取り出し、そのハイパー
リンクデータをハイパーリンク機能部へ渡す。
【0278】3次元シーンに関連付けられたハイパーリ
ンクを取り出す手順を以下に示す。
【0279】・マウスイベントからスクリーン座標系上
の2次元のマウス座標を得る、 ・スクリーン座標系に投影したポリゴンから、得られた
マウス座標を内側に含むポリゴンをリストアップする、 ・3次座標系上で、視点原点と投影面上のマウスの座標
を結ぶ直線(ピックRay)を得る、 ・リストアップしたポリゴンとピックRayとの交点を3次
座標系上で計算し、最も視点原点に近いものを採用す
る、 ・採用されたポリゴンから、マウスで指し示された3次
元シーンオブジェクトを特定する、 ・採用された3次元シーンオブジェクトの面上にテクス
チャとして配置された2次元の埋め込みシーンの位置
を、ピックRayとの交点座標をテクスチャマッピング座
標系の変換により求める、 ・2次元埋め込みシーンの位置にハイパーリンク情報が
割り当てられてるかどうかを調べる。
【0280】以上説明した構成によれば、全ての機能の
実装をJAVA等の記述言語を利用しXML等のマークアップ
言語の枠組みで、音声、3次元画像、2次元画像を簡単
に指定し、Webブラウザ上で専用のビューア、プレーヤ
ーを必要とせずに、同じ空間内で動作させる環境を構築
することができる。
【0281】すなわち、XMLパーサーとDOM(Document O
bject Model)API及びSAX(SimpleAPI for XML)を利用
し、3次元、2次元の各種メディアをXMLのタグ記述か
らコントロールする機能を実装することができる。
【0282】このような機能を備えたことにより、特に
エンジニアリング環境において以下の効果を得ることが
できる。
【0283】すなわち、このシステムを利用した3Dビ
ジュアル・エンジニアリングは、プロダクト・ライフサ
イクルにかかわる全ての人間に対し、製品について共有
すべき情報を的確に提供することができる。
【0284】たとえば、製品の機能的な特徴、設計・製
造上の問題点などを全ての関係者にすばやく理解させた
り、次工程への作業依頼を伝達誤差なく適正に行うこと
ができる。
【0285】また、製品についての設計思想を全ての関
係者に伝えることが容易になる。設計思想を図面から理
解することは熟練したエンジニアといえども至難の業で
あり、ましてやマーケティングプランナー、デザイナ
ー、生産エンジニア、サービス・セールスチームなどに
対して共通の理解や完全に統一されたイメージをもたせ
ること、製品が抱える課題解決への積極的な参加を完璧
に実現することは従来の表現方法では不可能に近い。
【0286】これに対して、この発明のシステムによれ
ば、例えば、このシステムで実行可能に表現されたXML
文書を利用した電子マニュアルを作成する場合には、軽
量化した3Dデータ(XVLファイル)と各種マニュアルド
キュメントを統合して3Dインタラクティブマニュアル
を作成することが可能である。すなわち、XVLで記述さ
れた3DオブジェクトとXML構造化ドキュメントを利用者
の思い通りにWeb Top上で表示、変形、組み合わせるこ
とができる。これらの3Dマニュアルは、このようなさ
まざまな表現方法により、製品の設計思想等の隠れた情
報を全ての関係者に伝えることが可能になる。
【0287】なお、この発明は上記一実施形態に限定さ
れるものではなく、発明の要旨を変更しない範囲で種々
変形可能である。
【0288】
【発明の効果】以上説明したように、この発明によれ
ば、イメージ、ビデオ、オーディオ、3次元グラフィッ
クスを含む多種多様な情報形式を統一的に取り扱うため
に、統一記述の言語仕様として拡張マークアップ言語
(XML)の拡張機能を利用し、Webに点在するデータ群を
効果的に組み合わせ、Webコンテンツクリエータ及びWeb
利用者が、多種多様で大量のデータから求める情報を最
適な形で取り出し利用できるような複合メディアドキュ
メント統合表示システムを提供することができる。
【0289】また、この発明によれば、音声、3次元画
像、2次元画像を簡単に指定でき、Webブラウザ上でプ
ラグイン等の専用のビューワーやプレーヤーなどを必要
とせずに軽快に動作させる環境を構築できる複合メディ
アドキュメント統合表示システムを提供できる。
【図面の簡単な説明】
【図1】この発明の一実施形態の全体構成を示す機能ブ
ロック図
【図2】同じく、MMIDF機能部を詳しく説明するための
機能ブロック図。
【図3】同じく、ドキュメントコールバック機能部を詳
しく説明するための機能ブロック図。
【図4】同じく、2次元レンダリング機能部を詳しく説
明するための機能ブロック図。
【図5】同じく、2次元処理区分振り分け機能部を詳し
く説明するための機能ブロック図。
【図6】同じく、2次元キャンパス機能部を詳しく説明
するための機能ブロック図。
【図7】同じく、2次元オブジェクト表示機能部を詳し
く説明するための機能ブロック図。
【図8】同じく、3次元レンダリング機能部を詳しく説
明するための機能ブロック図。
【図9】同じく、3次元描画パイプラインの処理工程を
示すフローチャート。
【図10】同じく、3次元シーン属性設定機能部を詳し
く説明するための機能ブロック図。
【図11】同じく、3次元シーンビヘイビア機能部を詳
しく説明するための機能ブロック図。
【図12】同じく、3次元シーンビヘイビア設定機能を
詳しく説明するため概念図。
【図13】同じく、2次元埋め込み機能部を詳しく説明
するための機能ブロック図。
【図14】同じく、XVLローダ機能部を詳しく説明する
ための機能ブロック図。
【図15】同じく、XVLファイルに基づく3次元シーン
属性設定を説明するための図。
【図16】同じく、XVLファイルの表示属性を示す表。
【図17】同じく、XVLファイルのシーングラフの読み
込み処理を説明するための図。
【図18】同じく、VRMLローダ機能部を詳しく説明する
ための機能ブロック図。
【図19】同じく、VRMLファイルの表示属性を示す表。
【図20】同じく、3次元シーン描画機能部を詳しく説
明するための機能ブロック図。
【図21】同じく、3次元シーンのシーングラフツリー
を説明するための概略図。
【図22】同じく、3次元キャンパス機能部を詳しく説
明するための機能ブロック図。
【図23】同じく、視点座標系と3次元ワールド座標系
の関係を説明するための図。
【図24】同じく、3次元シーン描画を行うために必要
な計算式を示す図。
【図25】同じく、3次元シーン描画を行うために必要
な計算式を示す図。
【図26】同じく、3次元シーン描画を行うために必要
な計算式を示す図。
【図27】同じく、視点座標系と正規化投影座標系の関
係を説明するための図。
【図28】同じく、3次元シーン描画を行うために必要
な計算式を示す図。
【図29】同じく、Zバッファレンダリング機能部で採
用したZバッファ法の手順を説明するための概念図。
【図30】同じく、Zバッファレンダリング機能部で採
用したZバッファ法の手順を説明するための概念図。
【符号の説明】
1…多様媒体融合表示システム 2…クライアントパソコン 3…ブラウザ 5…MMIDF機能部 6…2次元レンダリング機能部 7…3次元レンダリング機能部 10…WWWサーバー 11…XML文書 12…XMLパーサ 15…ドキュメントコールバック機能部 16…DTDコールバック機能部 17…エンティティコールバック機能部 18…エラーコールバック機能部 19…ドキュメントデータ 20…エンティティソース 21…エラー情報 22…MMDSAXマネージャ機能部 25…SVG機能部 26…TVX機能部 27…CMW機能部 29…2次元描画命令生成機能部 30…3次元描画命令生成機能部 36…2次元オブジェクト表示機能部 40…2次元図形振り分け機能部 41…音声実行振り分け機能部 42…動画実行振り分け機能部 43…動画実行振り分け機能部 44…イメージ表示振り分け機能部 45…テキスト表示振り分け機能部 46…ドキュメントリンク機能部 48…2次元描画メソッドコール 51…2次元図形描画機能部 52…音声実行機能部 53…動画実行機能部 54…イメージ表示機能部 55…テキスト表示機能部 56…ドキュメントリンク機能部 58…メディア操作データ 60…2次元キャンバス機能部 62…2次元オブジェクト管理機能部 63…2次元オブジェクト表示機能部 64…2次元メディア操作機能部 65…レンダリング要求 71…次元図形オブジェクト表示機能部 72…音声オブジェクト表示機能部 73…動画オブジェクト表示機能部 74…イメージオブジェクト表示機能部 75…テキストオブジェクト表示機能部 76…部分イメージレンダリング要求 77…イメージデータ 79…ドキュメントリンクハイライト機能部 80…再表示要求 82…操作イベントデータ 83…レンダリング要求 84…操作イベント通知 91…モデリング変換 93…ワールド座標系 94…視野変換 97…ビューボリューム・ビューポート変換 98…正規化投影座標系 100…ファイル 101…シーングラフ 103…XVLファイル 105…3次元キャンパス機能部 106…3次元シーン描画機能部 107…3次元シーン属性設定機能部 108…3次元シーンビヘイビア設定機能部 109…XVL読込み機能部 110…ローダ機能部 111…VRMLローダ機能部 112…3次元描画命令 115…マテリアル設定機能部 116…テクスチャ設定機能部 117…カメラ設定機能部 118…ライト設定機能部 119…フォント設定機能部 121…センサー 122…タイマー 123…インターポレーション 124…インターポレーション設定機能部 125…タイマー設定機能部 126…センサー設定機能部 130…イメージマッピング機能部 131…ハイパーリンク設定機能部 134…XVLファイル 135…Latticeカーネル 136…3次元基本要素 137…形状データ 139…外側 140…形状 141…XVL字句解析機能部 142…XVL構文解析機能部 143…XVL変換機能部 144…トークン 145…格子シーンデータ 147…シーングラフ 148…VRMLファイル 150…VRML字句解析機能部 151…VRML構文解析機能部 152…トークン 155…シーングラフ構築機能部 156…シーントラバース機能部 157…ビューコントロール機能部 158…シーングラフツリー 160…シーングラフ 161…シーン描画データ 162…キャンバス情報 165…グラフィックス表示データ 166…操作イベント 167…ハイパーリンクデータ 170…レンダリングモード設定機能 171…ビュー座標変換機能部 172…Zバッファレンダリング機能部 173…キャンバスイベント処理機能部 175…シーン設定データ 177…3次元ワールド座標系 178…視点座標系 180…正規化投影シーンデータ

Claims (30)

    【特許請求の範囲】
  1. 【請求項1】 パーサと連携し、マークアップ言語で記
    述された文書中の各種描画タグを解釈して、各種描画プ
    リミティブを同期させ動作させるフレームワークを生成
    し、これに基づいて2次元描画命令及び3次元描画命令
    を生成する複合メディアドキュメント統合フレームワー
    ク機能と、 前記フレームワーク機能から前記2次元描画命令を受け
    取り、ブラウザ上に当該描画命令を実行することのでき
    る2次元キャンバスを生成する2次元レンダリング機能
    と、 前記フレームワーク機能から前記3次元描画命令を受け
    取り、ブラウザ上に当該描画命令を実行することのでき
    る3次元キャンバスを生成する3次元レンダリング機能
    とを有することを特徴とするマルチメディアドキュメン
    ト統合表示システム。
  2. 【請求項2】 請求項1記載のシステムにおいて、 前記2次元レンダリング機能及び3次元レンダリング機
    能は、JavaAWTの2次元を描画するための命令セットで
    2次元若しくは3次元を表現するグラフィック表示デー
    タを生成し、ブラウザに渡すものであることを特徴とす
    るシステム。
  3. 【請求項3】 請求項1記載のシステムにおいて、 前記フレームワーク機能は、 前記パーサにより起動され、このパーサーから受け取っ
    た所定のDTDに基づくコールバックデータに基づいて、
    描画種別に対してパラメータを付加してなる実行要求記
    述データを生成する実行要求生成機能と、 この実行要求記述データに基いて、2次元描画命令及び
    3次元描画命令を生成するマネージャ機能と、 を有することを特徴とするシステム。
  4. 【請求項4】 請求項2記載のシステムにおいて、 前記実行要求生成機能は、 前記パーサから、SVGのDTDに基づく要素、属性名、値の
    内容を示すコールバックデータを受け取り、2次元描
    画、音声、動画、イメージ、テキストまたはハイパーリ
    ンクから成る実行要求記述データを生成するSVG機能を
    有するものであることを特徴とするシステム。
  5. 【請求項5】 請求項2記載のシステムにおいて、 前記実行要求生成機能は、 前記パーサから、CMW(クロスメディアワールド)のDTD
    に基づく要素、属性名、値の内容を示すコールバックデ
    ータを受け取り、3次元図形のマテリアル、テクスチ
    ャ、カメラ、ライト、フォント、インターポレータ、タ
    イマー、センサー、イメージマッピング、XVLファイル
    またはVRMLファイルから成る実行要求記述データを生成
    するCM機能を有するものであることを特徴とするシステ
    ム。
  6. 【請求項6】 請求項2記載のシステムにおいて、 前記実行要求生成機能は、 前記パーサから、TVX(TVML with XML)のDTDに基づく
    要素、属性名、値の内容を示すコールバックデータを受
    け取り、音声、動画、イメージ、3次元図形のマテリア
    ル、テクスチャ、カメラ、ライト、インターポレータ、
    タイマー、センサーまたはVRMLファイルから成る実行要
    求記述データを生成するTVX機能を有するものであるこ
    とを特徴とするシステム。
  7. 【請求項7】 請求項2記載のシステムにおいて、 前記マネージャ機能は、 前記実行要求記述データを構造化することで、マークア
    ップ言語で記載された文書の文書構造全体をツリー構造
    化し、 前記文書を表現するために、前記ツリー構造内の実行要
    求記述データに応じた2次元描画命令若しくは3次元描
    画命令を生成するものであることを特徴とするシステ
    ム。
  8. 【請求項8】 請求項7記載のシステムにおいて、 前記ツリー構造内の実行要求記述データの位置に応じ
    て、2次元描画記述と3次元描画記述とをミキシング
    し、前記3次元レンダリング機能により提供される3次
    元キャンパスに前記2次元レンダリング機能により提供
    される2次元キャンバスを埋め込む2次元埋め込み命令
    を生成するものであることを特徴とするシステム。
  9. 【請求項9】 請求項2記載のマネージャ機能は、 前記ブラウザを通して受け取った操作イベントを2次元
    描画命令若しくは3次元描画命令に変換するものである
    ことを特徴とするシステム。
  10. 【請求項10】 請求項1記載のシステムにおいて、 前記2次元フレームワーク機能、2次元レンダリング機
    能、3次元レンダリング機能は、前記ブラウザによって
    起動され、オブジェクトとして読み込まれて動作するも
    のであることを特徴とするシステム。
  11. 【請求項11】 請求項1記載のシステムにおいて、 前記2次元レンダリング機能は、 前記マネージャ機能から受け取った2次元描画命令を受
    け取り、その内容に応じた描画メソッドコールを生成す
    る2次元処理内容振り分け機能と、 前記描画メソッドコールを受け取り、メディア操作デー
    タに変換する2次元描画機能と、 この2次元描画機能から、メディア操作データを受け取
    ってブラウザ上に2次元キャンバスを生成し、各メディ
    ア操作データに対応したグラフィックス表示を実行する
    2次元キャンバス機能とを有するものであることを特徴
    とするシステム。
  12. 【請求項12】 請求項11記載のシステムにおいて、 前記2次元キャンパス機能は、 メディア操作データを受け取った後、前記2次元描画機
    能で使用する2次元ファイルの転送が終了した後で、こ
    れに基づいて2次元キャンパス全体のイメージデータ生
    成を要求するレンダリング要求を生成する2次元オブジ
    ェクト管理機能と、 前記2次元オブジェクト管理機能からレンダリング要求
    を受け取り、2次元キャンバス内の2次元表示属性をレ
    ンダリング要求に応じて設定する2次元オブジェクト表
    示機能とを有するものであることを特徴とするシステ
    ム。
  13. 【請求項13】 請求項12記載のシステムにおいて、 この2次元キャンパス機能は、 前記ブラウザより2次元に対する操作イベントを受け取
    り、これに従って、前記2次元オブジェクト表示機能へ
    レンダリング要求を渡す2次元メディア操作機能をさら
    に有することを特徴とするシステム。
  14. 【請求項14】 請求項13記載のシステムにおいて、 前記2次元オブジェクト表示機能は、前記2次元メディ
    ア操作機能からレンダリング要求を受け取ったことに基
    づいて、前記2次元描画機能に部分レンダリング要求を
    渡し、この2次元描画機能からメディア操作データを受
    け取るものであることを特徴とするシステム。
  15. 【請求項15】 請求項11記載のシステムにおいて、 前記2次元キャンパス機能は、 2次元キャンパスが3次元キャンパス上に貼り付けられ
    た場合、2次元キャンパスの変形情報を演算し、これに
    応じて当該変形後の2次元キャンパス上での2次元表示
    属性を設定する2次元キャンパス変形機能を有すること
    を特徴とするシステム。
  16. 【請求項16】 請求項1記載のシステムにおいて、 前記3次元レンダリング機能は、 前記マネージャ機能から受け取った3次元描画命令に基
    いて3次元データを読み込み、これに基づいて3次元表
    示のためのシーングラフを生成する3次元シーングラフ
    生成機能と、 この3次元シーングラフを集積してなるシーングラフツ
    リーを保持し、これをトラバースすることでシーン描画
    データを生成する3次元シーン描画機能と、ブラウザ上
    の所定の描画領域に3次元キャンバスを生成すると共
    に、前記3次元シーン描画機能から受け取った3次元シ
    ーン描画データに基づいて前記3次元キャンバス上に表
    示するグラフィック表示データを生成する3次元キャン
    バス機能とを有することを特徴とするシステム。
  17. 【請求項17】 請求項16記載のシステムにおいて、 前記3次元シーングラフ生成機能は、 前記マネージャ機能からの3次元描画命令により起動さ
    れ、シーングラフにおけるマテリアル、テクスチャ、カ
    メラ、ライト、フォントスタイルを含む3次元属性を設
    定・変更し、変更した3次元属性を3次元空間に反映す
    るために3次元属性設定のシーングラフを生成する3次
    元シーン属性設定機能を有することを特徴とするシステ
    ム。
  18. 【請求項18】 請求項16記載のシステムにおいて、 前記3次元シーングラフ生成機能は、 前記マネージャ機能からの3次元描画命令により起動さ
    れ、時間やイベントに応じてシーンの一部またはシーン
    全体の動画アニメーションを表現するために、前記シー
    ングラフにおけるビヘイビアを設定・変更し、変更した
    3次元ビヘイビアを3次元空間に反映するために3次元
    ビヘイビア設定のシーングラフを生成する3次元シーン
    ビヘイビア機能を有することを特徴とするシステム。
  19. 【請求項19】 請求項18記載のシステムにおいて、 前記マネージャ機能からの3次元描画命令は、3次元ア
    ニメーションビヘイビアを定義するためのセンサー、タ
    イマー、インターポーレーションを含むものであること
    を特徴とするシステム。
  20. 【請求項20】 請求項16記載のシステムにおいて、 前記3次元シーングラフ生成機能は、 前記マネージャ機能から2次元のイメージデータ埋め込
    みのための3次元描画命令を受け取り、2次元のイメー
    ジデータを埋め込むためのシーングラフを生成する2次
    元埋め込み機能を有することを特徴とするシステム。
  21. 【請求項21】 請求項20記載のシステムにおいて、 前記2次元埋め込み機能は、前記マネージャ機能から、
    3次元画像にイメージをマッピングするためのイメージ
    マッピング設定を含む3次元描画命令を受け取り、前記
    3次元シーン描画機能に保持されているシーングラフツ
    リーにイメージマッピングのためのテクスチャを設定さ
    せるためのシーングラフを生成するものであることを特
    徴とするシステム。
  22. 【請求項22】 請求項20記載のシステムにおいて、 前記2次元埋め込み機能は、 埋め込もうとする2次元イメージにハイパーリンクが設
    定されている場合、3次元描画命令として2次元のイメ
    ージデータとあわせてハイパーリンク情報も受け取り、
    ハイパーリンク情報を持つ2次元データ埋め込みのため
    のシーングラフを生成するハイパーリンク設定機能を有
    することを特徴とするシステム。
  23. 【請求項23】 請求項16記載のシステムにおいて、 前記3次元シーングラフ生成機能は、 前記マネージャ機能からの3次元描画命令により起動さ
    れ、外部XVLファイルを読み込み、Latticeカーネルを使
    用し格子形状の3次元基本要素を取り出し丸め形状に変
    換し、シーングラフを生成するXVLローダ機能を有する
    ことを特徴とするシステム。
  24. 【請求項24】 請求項16記載のシステムにおいて、 前記3次元シーングラフ生成機能は、 前記マネージャ機能からの3次元描画命令により起動さ
    れ、外部VRMLファイルを読み込み、その内容を解析し、
    記述されている3次元基本要素および3次元基本要素の関
    係と動きを取り出しシーングラフを生成するVRMLローダ
    機能を有することを特徴とするシステム。
  25. 【請求項25】 請求項16記載のシステムにおいて、 前記3次元シーン描画機能は、 前記3次元シーングラフ生成機能から、3次元描画命令
    の内容に応じた複数のシーングラフを受け取り、これに
    基づいてグループノード及びリールノードに構造化する
    ことで表示するべきシーンのシーングラフツリーを生成
    すると共に、受け取ったシーングラフの前記シーングラ
    フツリーへの追加・削除・変更を行う、3次元シーング
    ラフ構築機能と、 この3次元シーングラフ構築機能から、前記シーングラ
    フツリーを受け取り、このツリーの全てのノードをルー
    トノードから走査(トラバース)することで、各ノード
    で定義されている形状ポリゴンデータの座標系(モデリ
    ング座標系)を3次元空間上の3次元座標系(ワールド
    座標系)へ変換してなるシーン描画データを生成するシ
    ーントラバース機能とを有することを特徴とするシステ
    ム。
  26. 【請求項26】 請求項25記載のシステムにおいて、 前記シーン描画データは、シーングラフツリーに保持さ
    れる形状ポリゴンデータ以外のデータから生成されたレ
    ンダリングモードデータを含むものであることを特徴と
    するシステム。
  27. 【請求項27】 請求項25記載のシステムにおいて、 3次元キャンバスに対して所定の操作イベントが行われ
    たことに基づいて、シーングラフツリー中のカメラの内
    容を示すシーングラフを受け取り、3次元シーンの視点
    を変更する座標変換計算を行い、視点変更されたシーン
    グラフを前記シーン描画機能に渡すビューコントロール
    機能をさらに有することを特徴とするシステム。
  28. 【請求項28】 請求項16記載のシステムにおいて、 前記3次元キャンバス機能は、 前記3次元シーン描画機能から形状ポリゴンデータを含
    むシーン描画データを受け取り、形状ポリゴンデータを
    3次元キャンバス上で2次元描画するために正規化座標
    系へ座標変換するビュー座標変換機能と、 前記ビュー座標変換機能にから正規化投影シーン描画デ
    ータを受け取り、隠面消去した画像を前記3次元キャン
    バスに表示するために、画像描画データのバッファリン
    グを行ないながらグラフィック表示データを生成するバ
    ッファレンダリング機能とを有することを特徴とするシ
    ステム。
  29. 【請求項29】 請求項28記載のシステムにおいて、 前記3次元キャンバス機能は、 前記3次元シーン描画機能から、形状ポリゴンデータ以
    外のデータからなるシーン描画データを受け取り、これ
    に基いてレンダリングモードを生成するレンダリングモ
    ード設定機能をさらに有することを特徴とするシステ
    ム。
  30. 【請求項30】 請求項28記載のシステムにおいて、 3次元キャンバス機能は、 ブラウザから三次元キャンバスに対する操作イベントに
    基いて3次元キャンバス情報を生成して前記3次元シー
    ン描画機能部に受け渡すイベント処理機能を有するもの
    であることを特徴とするシステム。
JP2000082623A 2000-03-23 2000-03-23 マルチメディアドキュメント統合表示システム Pending JP2001273520A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2000082623A JP2001273520A (ja) 2000-03-23 2000-03-23 マルチメディアドキュメント統合表示システム
US09/617,885 US6741242B1 (en) 2000-03-23 2000-07-17 Multimedia documents integrating and displaying system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000082623A JP2001273520A (ja) 2000-03-23 2000-03-23 マルチメディアドキュメント統合表示システム

Publications (1)

Publication Number Publication Date
JP2001273520A true JP2001273520A (ja) 2001-10-05

Family

ID=18599405

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000082623A Pending JP2001273520A (ja) 2000-03-23 2000-03-23 マルチメディアドキュメント統合表示システム

Country Status (2)

Country Link
US (1) US6741242B1 (ja)
JP (1) JP2001273520A (ja)

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007536622A (ja) * 2004-05-03 2007-12-13 マイクロソフト コーポレーション モデル3d構築アプリケーションプログラムインターフェース
JP2007536621A (ja) * 2004-05-03 2007-12-13 マイクロソフト コーポレーション 3次元シーン階層の2次元合成システムへの組込み
CN100440141C (zh) * 2002-01-28 2008-12-03 日立欧姆龙金融系统有限公司 可用户化的信息处理装置及方法
JP2008293477A (ja) * 2007-03-27 2008-12-04 Konica Minolta Systems Lab Inc Xmlドキュメントのための命令saxパーサ
JP2009507291A (ja) * 2005-09-01 2009-02-19 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ レンダリングプラットフォームを動作させるデータ処理システム及び方法
JP2009508234A (ja) * 2005-09-09 2009-02-26 マイクロソフト コーポレーション 2d/3d結合レンダリング
US8031190B2 (en) 2004-05-03 2011-10-04 Microsoft Corporation Translating two-dimensional user input on three-dimensional scene
JP4827923B2 (ja) * 2005-09-07 2011-11-30 マイクロソフト コーポレーション 高レベルグラフィックスシステム
JP2014197410A (ja) * 2010-01-07 2014-10-16 スチョー スーパーエンジン グラフィックス ソフトウェア カンパニーリミテッド 空間データ処理方法及び装置
JP2016099940A (ja) * 2014-11-26 2016-05-30 京セラドキュメントソリューションズ株式会社 ファイル構造および情報処理装置
CN106997348A (zh) * 2016-01-22 2017-08-01 腾讯科技(深圳)有限公司 一种数据绘制方法和装置
WO2021192686A1 (ja) * 2020-03-23 2021-09-30 ソニーグループ株式会社 情報処理装置及び情報処理方法
JP7397940B2 (ja) 2021-10-12 2023-12-13 スクウェア エニックス、リミテッド コンピュータゲームにおけるサブアイテムの平坦化リストを使用したシーンエンティティ処理

Families Citing this family (83)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6952802B2 (en) * 2000-04-14 2005-10-04 Sun Microsystems, Inc. User controllable document converter and methods thereof
WO2002023368A1 (en) * 2000-09-15 2002-03-21 Wonderware Corporation A method and system for administering a concurrent user licensing agreement on a manufacturing/process control information portal server
US7210095B1 (en) * 2000-10-31 2007-04-24 Cisco Technology, Inc. Techniques for binding scalable vector graphics to associated information
US6901585B2 (en) * 2001-04-12 2005-05-31 International Business Machines Corporation Active ALT tag in HTML documents to increase the accessibility to users with visual, audio impairment
GB0111431D0 (en) * 2001-05-11 2001-07-04 Koninkl Philips Electronics Nv A real-world representation system and language
EP1258837A1 (en) * 2001-05-14 2002-11-20 Thomson Licensing S.A. Method to generate mutual photometric effects
US20030074636A1 (en) * 2001-10-15 2003-04-17 Ensoftek, Inc. Enabling easy generation of XML documents from XML specifications
US7619633B2 (en) * 2002-06-27 2009-11-17 Microsoft Corporation Intelligent caching data structure for immediate mode graphics
US7443401B2 (en) * 2001-10-18 2008-10-28 Microsoft Corporation Multiple-level graphics processing with animation interval generation
US7161599B2 (en) * 2001-10-18 2007-01-09 Microsoft Corporation Multiple-level graphics processing system and method
US7064766B2 (en) 2001-10-18 2006-06-20 Microsoft Corporation Intelligent caching data structure for immediate mode graphics
US6919891B2 (en) 2001-10-18 2005-07-19 Microsoft Corporation Generic parameterization for a scene graph
US7263694B2 (en) * 2001-10-26 2007-08-28 International Business Machines Corporation Directed non-cyclic graph walking system for data processing and analysis in software application
US7055092B2 (en) * 2001-12-05 2006-05-30 Canon Kabushiki Kaisha Directory for multi-page SVG document
US20040110490A1 (en) * 2001-12-20 2004-06-10 Steele Jay D. Method and apparatus for providing content to media devices
US7124358B2 (en) * 2002-01-02 2006-10-17 International Business Machines Corporation Method for dynamically generating reference identifiers in structured information
US7199793B2 (en) * 2002-05-21 2007-04-03 Mok3, Inc. Image-based modeling and photo editing
US7439982B2 (en) * 2002-05-31 2008-10-21 Envivio, Inc. Optimized scene graph change-based mixed media rendering
US7064760B2 (en) * 2002-06-19 2006-06-20 Nokia Corporation Method and apparatus for extending structured content to support streaming
GB2391144A (en) * 2002-07-19 2004-01-28 Kaydara Inc Retrieval of information related to selected displayed object
US7417645B2 (en) * 2003-03-27 2008-08-26 Microsoft Corporation Markup language and object model for vector graphics
US7126606B2 (en) 2003-03-27 2006-10-24 Microsoft Corporation Visual and scene graph interfaces
US7088374B2 (en) * 2003-03-27 2006-08-08 Microsoft Corporation System and method for managing visual structure, timing, and animation in a graphics processing system
US7486294B2 (en) * 2003-03-27 2009-02-03 Microsoft Corporation Vector graphics element-based model, application programming interface, and markup language
US7466315B2 (en) * 2003-03-27 2008-12-16 Microsoft Corporation Visual and scene graph interfaces
JP2005070828A (ja) * 2003-08-22 2005-03-17 Canon Inc データ構造およびそのデータ構造で記述された構造化文書の処理方法およびその方法を実行するためのプログラムおよびそのプログラムを記憶した記憶媒体
US7511718B2 (en) * 2003-10-23 2009-03-31 Microsoft Corporation Media integration layer
AU2003280605A1 (en) * 2003-10-29 2005-05-11 Lattice Technology, Inc. System for acquiring profile information from three-dimensional profile data, its method and computer software program
US7290216B1 (en) * 2004-01-22 2007-10-30 Sun Microsystems, Inc. Method and apparatus for implementing a scene-graph-aware user interface manager
US8239749B2 (en) * 2004-06-25 2012-08-07 Apple Inc. Procedurally expressing graphic objects for web pages
US8302020B2 (en) 2004-06-25 2012-10-30 Apple Inc. Widget authoring and editing environment
US7546543B2 (en) * 2004-06-25 2009-06-09 Apple Inc. Widget authoring and editing environment
US8453065B2 (en) 2004-06-25 2013-05-28 Apple Inc. Preview and installation of user interface elements in a display environment
US7490295B2 (en) 2004-06-25 2009-02-10 Apple Inc. Layer for accessing user interface elements
US8566732B2 (en) 2004-06-25 2013-10-22 Apple Inc. Synchronization of widgets and dashboards
EP1877982A1 (en) * 2005-04-25 2008-01-16 Yappa Corporation 3d image generation and display system
KR100654455B1 (ko) * 2005-05-26 2006-12-06 삼성전자주식회사 확장형 자막 파일을 이용하여 부가정보를 제공하는 장치 및방법
US8543931B2 (en) 2005-06-07 2013-09-24 Apple Inc. Preview including theme based installation of user interface elements in a display environment
KR100657322B1 (ko) * 2005-07-02 2006-12-14 삼성전자주식회사 로컬 3차원 비디오를 구현하기 위한 인코딩/디코딩 방법 및장치
JP2007115293A (ja) * 2005-10-17 2007-05-10 Toshiba Corp 情報記憶媒体、プログラム、情報再生方法、情報再生装置、データ転送方法、及びデータ処理方法
US7743336B2 (en) 2005-10-27 2010-06-22 Apple Inc. Widget security
US9104294B2 (en) 2005-10-27 2015-08-11 Apple Inc. Linked widgets
US7954064B2 (en) 2005-10-27 2011-05-31 Apple Inc. Multiple dashboards
US8543824B2 (en) 2005-10-27 2013-09-24 Apple Inc. Safe distribution and use of content
US7752556B2 (en) 2005-10-27 2010-07-06 Apple Inc. Workflow widgets
US7676488B2 (en) * 2005-10-31 2010-03-09 Sap Ag Conditional formatted reporting using syntax checking
US7707514B2 (en) 2005-11-18 2010-04-27 Apple Inc. Management of user interface elements in a display environment
US20080034309A1 (en) * 2006-08-01 2008-02-07 Louch John O Multimedia center including widgets
US8869027B2 (en) 2006-08-04 2014-10-21 Apple Inc. Management and generation of dashboards
US8130226B2 (en) * 2006-08-04 2012-03-06 Apple Inc. Framework for graphics animation and compositing operations
US9019300B2 (en) 2006-08-04 2015-04-28 Apple Inc. Framework for graphics animation and compositing operations
US20080055315A1 (en) * 2006-09-05 2008-03-06 Dale Ducharme Method and System to Establish and Animate a Coordinate System for Content on a Display
US8234392B2 (en) 2006-11-17 2012-07-31 Apple Inc. Methods and apparatuses for providing a hardware accelerated web engine
US8204720B2 (en) * 2007-06-01 2012-06-19 Alcatel Lucent Graph-based modeling apparatus and techniques
ATE543164T1 (de) * 2007-06-28 2012-02-15 Ericsson Telefon Ab L M Datensystem und -verfahren
US8954871B2 (en) 2007-07-18 2015-02-10 Apple Inc. User-centric widgets and dashboards
US8667415B2 (en) 2007-08-06 2014-03-04 Apple Inc. Web widgets
US9223548B2 (en) * 2008-09-15 2015-12-29 Apple Inc. Method and apparatus for providing an application canvas framework
US8137201B2 (en) * 2009-01-09 2012-03-20 Microsoft Corporation Arrangement for building and operating human-computation and other games
US9047052B2 (en) 2009-12-22 2015-06-02 At&T Intellectual Property I, L.P. Simplified control input to a mobile device
US8935129B1 (en) * 2010-06-04 2015-01-13 Bentley Systems, Incorporated System and method for simplifying a graph'S topology and persevering the graph'S semantics
KR20120017228A (ko) * 2010-08-18 2012-02-28 엘지전자 주식회사 이동 단말기 및 상기 이동 단말기의 영상 표시 방법
EP2506263A1 (en) 2011-03-31 2012-10-03 Thomson Licensing Stereoscopic scene graph for defining 3D- and 2D-compatible graphical objects
US8635518B1 (en) * 2011-07-21 2014-01-21 Google Inc. Methods and systems to copy web content selections
US9563971B2 (en) 2011-09-09 2017-02-07 Microsoft Technology Licensing, Llc Composition system thread
JP5957986B2 (ja) * 2012-03-14 2016-07-27 日本電気株式会社 描画支援装置、描画支援方法および描画支援プログラム
US20130325535A1 (en) * 2012-05-30 2013-12-05 Majid Iqbal Service design system and method of using same
EP2793127B1 (en) * 2013-04-19 2021-11-17 Huawei Technologies Co., Ltd. Method for displaying a 3D scene graph on a screen
JP6250887B2 (ja) * 2014-07-22 2017-12-20 ファナック株式会社 左手座標系対応の数値制御装置
US20170249772A1 (en) * 2016-02-26 2017-08-31 Blackberry Limited System and method for accelerated rendering of two-dimensional graphics
US10116660B2 (en) * 2016-11-30 2018-10-30 Salesforce.Com, Inc. Security modes for a component-based web security model
US10129258B2 (en) 2016-11-30 2018-11-13 Salesforce.Com, Inc. Secure component-based web applications
CN108573519B (zh) 2017-03-14 2022-02-11 阿里巴巴集团控股有限公司 三维图形文件生成和在客户端展示三维图形的方法及装置
US10311616B2 (en) * 2017-06-30 2019-06-04 Intel Corporation Methods and apparatus to define augmented content regions for augmented reality systems
CN108519882A (zh) * 2018-04-04 2018-09-11 中科微至智能制造科技江苏有限公司 一种Web端实时浏览CAD文件的方法及系统
CN111199511A (zh) * 2018-11-19 2020-05-26 北京京东尚科信息技术有限公司 图形的生成方法、装置和计算机可读存储介质
US10958964B2 (en) 2018-12-31 2021-03-23 Telefonaktiebolaget Lm Ericsson (Publ) Distributed video and graphics rendering system
CN109741431B (zh) * 2018-12-31 2023-08-01 广东精一信息技术有限公司 一种二三维一体化电子地图框架
US10607105B1 (en) * 2019-03-27 2020-03-31 Disney Enterprises, Inc. Perceptual data association
US20230014904A1 (en) * 2021-07-16 2023-01-19 SparkCognition, Inc. Searchable data structure for electronic documents
US11699024B2 (en) * 2021-09-01 2023-07-11 Salesforce, Inc. Performance perception when browser's main thread is busy
CN113934876B (zh) * 2021-12-21 2022-02-22 成都泰盟软件有限公司 一种基于Web的作业批改方法、装置及系统
CN114529706B (zh) * 2022-04-22 2022-07-08 三一筑工科技股份有限公司 三维模型中目标对象的拆分方法、装置、设备及介质

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09259157A (ja) 1996-03-22 1997-10-03 Ricoh Co Ltd 設計支援システム
JPH1033147A (ja) 1996-07-22 1998-02-10 Fuji Shokuhin Kk 根こんぶこぶまき
JPH1097558A (ja) 1996-09-20 1998-04-14 Mibunri:Kk インターネットによる建築・生活関連備品配置デザイン及びその関連データの構築システム装置
JPH10154242A (ja) 1996-09-30 1998-06-09 Sony Corp 3次元仮想現実空間表示処理装置、3次元仮想現実空間表示処理方法、および情報提供媒体
JPH1127285A (ja) 1997-07-04 1999-01-29 N T T Data:Kk ネットワーク管理システム及び記録媒体
JPH11161817A (ja) 1997-11-26 1999-06-18 Toshiba Corp 情報加工装置および記録媒体
JPH11175577A (ja) 1997-12-10 1999-07-02 Hitachi Ltd 仮想製造支援設計方法及び仮想製造支援設計システム
JPH11191095A (ja) 1997-12-25 1999-07-13 Allied Engineering:Kk 統合化caeシステム

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100440141C (zh) * 2002-01-28 2008-12-03 日立欧姆龙金融系统有限公司 可用户化的信息处理装置及方法
JP2007536621A (ja) * 2004-05-03 2007-12-13 マイクロソフト コーポレーション 3次元シーン階層の2次元合成システムへの組込み
JP2007536622A (ja) * 2004-05-03 2007-12-13 マイクロソフト コーポレーション モデル3d構築アプリケーションプログラムインターフェース
US8031190B2 (en) 2004-05-03 2011-10-04 Microsoft Corporation Translating two-dimensional user input on three-dimensional scene
JP2009507291A (ja) * 2005-09-01 2009-02-19 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ レンダリングプラットフォームを動作させるデータ処理システム及び方法
JP4827923B2 (ja) * 2005-09-07 2011-11-30 マイクロソフト コーポレーション 高レベルグラフィックスシステム
JP2009508234A (ja) * 2005-09-09 2009-02-26 マイクロソフト コーポレーション 2d/3d結合レンダリング
US7999807B2 (en) 2005-09-09 2011-08-16 Microsoft Corporation 2D/3D combined rendering
JP2008293477A (ja) * 2007-03-27 2008-12-04 Konica Minolta Systems Lab Inc Xmlドキュメントのための命令saxパーサ
JP2014197410A (ja) * 2010-01-07 2014-10-16 スチョー スーパーエンジン グラフィックス ソフトウェア カンパニーリミテッド 空間データ処理方法及び装置
US10789761B2 (en) 2010-01-07 2020-09-29 Suzhou Superengine Graphics Software Co., Ltd. Method and device for processing spatial data
JP2016099940A (ja) * 2014-11-26 2016-05-30 京セラドキュメントソリューションズ株式会社 ファイル構造および情報処理装置
CN106997348A (zh) * 2016-01-22 2017-08-01 腾讯科技(深圳)有限公司 一种数据绘制方法和装置
WO2021192686A1 (ja) * 2020-03-23 2021-09-30 ソニーグループ株式会社 情報処理装置及び情報処理方法
JP7397940B2 (ja) 2021-10-12 2023-12-13 スクウェア エニックス、リミテッド コンピュータゲームにおけるサブアイテムの平坦化リストを使用したシーンエンティティ処理

Also Published As

Publication number Publication date
US6741242B1 (en) 2004-05-25

Similar Documents

Publication Publication Date Title
US6741242B1 (en) Multimedia documents integrating and displaying system
US9280258B1 (en) Displaying and navigating within photo placemarks in a geographic information system and applications thereof
KR101087427B1 (ko) 3차원 장면 계층구조를 2차원 합성 시스템으로 통합하기 위한 컴퓨터로 구현된 방법 및 컴퓨터 판독가능 기록 매체
JP5209051B2 (ja) データシステム及び方法
US8711147B2 (en) Method and system for generating and displaying an interactive dynamic graph view of multiply connected objects
US20100306696A1 (en) Dynamic network browser
CN104216691A (zh) 一种创建应用的方法及装置
CN101421761A (zh) 视件和场景图接口
JP2000508154A (ja) ハイパーリンクをビデオに統合するための方法及び装置
US9219922B2 (en) System and method for exploiting scene graph information in construction of an encoded video sequence
JP2011090640A (ja) 情報処理装置、情報処理方法、およびプログラム
US20080055315A1 (en) Method and System to Establish and Animate a Coordinate System for Content on a Display
US20080072157A1 (en) System for controlling objects in a recursive browser system: ZSpace sharing
US20090019370A1 (en) System for controlling objects in a recursive browser system: forcefield
Boutsi et al. Interactive online visualization of complex 3D geometries
Jern Information drill-down using web tools
US20080082924A1 (en) System for controlling objects in a recursive browser system
Sophocleous et al. Medici 2: A scalable content management system for cultural heritage datasets
KR100370869B1 (ko) 3차원 가상 작동 시뮬레이션 방법
Hobson et al. Alpaca: AR graphics extensions for web applications
US20130254282A1 (en) Propagating user experience state information
Pokorný et al. A 3D visualization application of Zlín in the eighteen-nineties
Grahn The media9 Package, v1. 25
Gobbetti et al. i3D: An interactive system for exploring annotated 3D environments
US20130251344A1 (en) Manipulation of User Experience State

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040127

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20041013

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20041013

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20060413

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20060427

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070123

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070323

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070424

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20070821