JP2001350555A - Method and device for displaying program operation state - Google Patents

Method and device for displaying program operation state

Info

Publication number
JP2001350555A
JP2001350555A JP2001107929A JP2001107929A JP2001350555A JP 2001350555 A JP2001350555 A JP 2001350555A JP 2001107929 A JP2001107929 A JP 2001107929A JP 2001107929 A JP2001107929 A JP 2001107929A JP 2001350555 A JP2001350555 A JP 2001350555A
Authority
JP
Japan
Prior art keywords
icon
command
processing
display
input
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.)
Granted
Application number
JP2001107929A
Other languages
Japanese (ja)
Other versions
JP3322264B2 (en
Inventor
Seiji Futaki
誠司 二木
Keiji Kojima
啓二 小島
Yoshiki Matsuda
芳樹 松田
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2001107929A priority Critical patent/JP3322264B2/en
Publication of JP2001350555A publication Critical patent/JP2001350555A/en
Application granted granted Critical
Publication of JP3322264B2 publication Critical patent/JP3322264B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Abstract

PROBLEM TO BE SOLVED: To solve the problem such that it is difficult to understand the opera tion state of a program. SOLUTION: A 1st icon and a 2nd icon which shows the operation states of the program are displayed on a display device and in response to an operator' s indication corresponding to the 1st icon, a specific processing procedure is followed. According to the progress state of the processing procedure, the display of the 1st icon and 2nd icon is changed by following the set procedure.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は計算機の使用形態及
び、プログラムの実行方法、プログラムの作成方法に関
する。
[0001] 1. Field of the Invention [0002] The present invention relates to a use form of a computer, a method of executing a program, and a method of creating a program.

【0002】[0002]

【従来の技術】近年、オブジェクト指向と呼ばれる計算
モデルが広く用いられるようになっている。計算モデル
とは計算を行うにあたっての基本となる考え方、とらえ
方のことであり、計算機などでこのモデルを実現する場
合にはデータ構造とデータの受渡し、データを変換する
手続きをいつ、どのようなタイミングで行うかというこ
とを規定するものである。
2. Description of the Related Art In recent years, a calculation model called object-oriented has been widely used. A calculation model is a basic idea and way of understanding when performing calculations.When implementing this model on a computer, etc., the data structure, data transfer, and data conversion procedures must be defined when and how. This defines whether or not to perform at the timing.

【0003】オブジェクト指向計算モデルで用いる用語
を以下に説明する。 (a)オブジェクト これはデータ構造と手続きの組である。データ構造とし
て、(b)のスロットを、手続きとして(b)メソッド
をもつ。 (b)スロット オブジェクトのもつデータ構造の名前。たとえば整数オ
ブジェクトなら整数値スロットを、文書オブジェクトな
ら文書スロットをもつ。 (c)スロット値 オブジェクトのスロットに実際に保持するデータ。 (d)メソッド オブジェクトに定義されている手続き。スロットに対す
る操作だけを許すことにより、プログラムのモジュール
性を保証する。 (e)オブジェクトインスタンス オブジェクトは概念的に扱われ、実際に記憶装置上に配
置されることはない。スロット値を実際にもつオブジェ
クトをオブジェクトインスタンスと呼ぶ。 (f)メッセージ メソッド実行のためのコマンド。引数とメソッド名から
構成されるが、引数をオブジェクトインスタンスに限定
することによって、プログラムのモジュール性を保証す
る。
[0003] Terms used in the object-oriented calculation model will be described below. (A) Object This is a set of data structure and procedure. It has a slot of (b) as a data structure and a method (b) as a procedure. (B) The name of the data structure of the slot object. For example, an integer object has an integer slot, and a document object has a document slot. (C) Slot value Data actually held in the slot of the object. (D) Method The procedure defined in the object. By allowing only operations on slots, the modularity of the program is guaranteed. (E) Object instance The object is treated conceptually, and is not actually placed on the storage device. An object that actually has a slot value is called an object instance. (F) Message A command for executing a method. It is composed of arguments and method names. By limiting the arguments to object instances, the modularity of the program is guaranteed.

【0004】オブジェクト指向計算モデルは、計算をオ
ブジェクトインスタンス間のメッセージのやり取りによ
ってのみ許す計算モデルである。計算の結果はオブジェ
クトインスタンスのスロット値の変化として表れる。例
えば、整数オブジェクトは、スロットとして整数値スロ
ットを持ち、またメソッドとして加算メソッド等を持
つ。具体的な値3をもつ整数オブジェクトインスタンス
Aを設計するには、そのスロット値を3にする。この整
数オブジェクトインスタンスAに対して4を加えたいと
きには、別に整数オブジェクトインスタンスBを用意し
て、このBの整数値スロットの値を4として、Aに対し
て、「B 加算」というメッセージを送る。この結果、
Aの整数値スロットの値は7になり、望む結果が得られ
たことになる。ただし、整数のような簡単な状態量に対
してまですべてオブジェクトインスタンスを生成するの
は煩雑であるということから、簡単な状態量はアトムと
呼び、それが引数として用いられる場合にはその値をそ
のまま他のオブジェクトインスタントに与えることを許
す。たとえば、上の例ではAにたいして「4 加算」と
いう略式メッセージをAに送る。
[0004] The object-oriented computation model is a computation model that allows computation only by exchanging messages between object instances. The result of the calculation appears as a change in the slot value of the object instance. For example, an integer object has an integer value slot as a slot and an addition method as a method. To design an integer object instance A having a specific value 3, the slot value is set to 3. When it is desired to add 4 to the integer object instance A, another integer object instance B is prepared, and the value of the integer value slot of B is set to 4, and a message "B addition" is sent to A. As a result,
The value of the integer slot of A is 7, which means that the desired result has been obtained. However, since it is cumbersome to generate all object instances for simple state quantities such as integers, simple state quantities are called atoms, and when they are used as arguments, their values are Allow it to be given to other object instants. For example, in the above example, an informal message of "4 addition" is sent to A.

【0005】この計算モデルを用いることによって、デ
ータと手続きとが同じところに格納されるため、モジュ
ール性に富んだ、判り易いプログラムを作成することが
できる。
[0005] By using this calculation model, the data and the procedure are stored in the same place, so that an easy-to-understand program with high modularity can be created.

【0006】例えば、ディスプレイ装置上にオブジェク
トインスタンスを表すアイコンを表示し、操作者はこれ
にマウスなどをもちいてメッセージを送りこのオブジェ
クトインスタンスの状態量を変換させることや、さらに
このアイコンを移動、変形させるようなことが広く行わ
れている。例えば、あるアイコンをマウスで指示するこ
とによって対応するオブジェクトインスタンスを指示
し、引き続いて入力される「(移動量) 移動せよ」を
このオブジェクトインスタンスに対するメッセージと解
釈して、それを実行し、このアイコンを移動させるもの
である。この移動の結果、オブジェクトインスタンス内
の、その位置を表すスロットの値が変化する。
For example, an icon representing an object instance is displayed on a display device, and an operator sends a message to the icon using a mouse or the like to convert the state quantity of the object instance, and further moves or deforms the icon. It is widely practiced to do so. For example, by pointing a certain icon with a mouse to indicate a corresponding object instance, interpreting a subsequently input “(movement amount) move” as a message for this object instance, executing it, and executing this icon Is to move. As a result of this movement, the value of the slot representing the position in the object instance changes.

【0007】また、操作者の入力をメッセージとして受
け取ってこれを実行するだけではなく、アイコンを用い
てプログラミングすることが行われている。すなわち、
オブジェクトインスタンスをアイコンとしてディスプレ
イ上に表示し、これにユーザから操作して、プログラム
を生成する。これは、プログラミング・バイ・イグザン
プル(Programming by Exampl
e:PBE)と呼ばれるもので、さまざまな計算資源で
ある、ファイルだとかアプリケーションプログラムなど
のオブジェクトインスタンスをアイコンにしてディスプ
レイ装置上に表示し、これらのアイコンをマウスなどを
用いて操作者に操作させ、システムがこの操作を解釈
し、この操作で指示されたオブジェクトインスタンスに
たいしてこの操作を実行し、同時にその操作を表わすコ
マンドを生成する。このように、操作、実行、コマンド
生成を繰り返すことにより所望のプログラムが得られ
る。オブジェクトインスタンスは具体的な値(例)を持
つものであるが、これに対する操作をシステムが解釈し
てより一般的なオブジェクトに対するプログラムを生成
することが特徴である。生成されたプログラムはプログ
ラム作成時にユーザが操作した例と異なる例に適用でき
る。これは、オブジェクトインスタンスに対して、この
例に対する操作解釈をそのオブジェクトに属するものす
べてに適用可能な形に変換されているためである。ま
た、具体例を用いてプログラミングするため、通常のプ
ログラミングのようにプログラマが問題を一般化する必
要がなく、プログラミングの労力が軽減される。
[0007] In addition to receiving and executing an input of an operator as a message, programming is performed using an icon. That is,
The object instance is displayed on the display as an icon, and the user operates the object instance to generate a program. This is a programming by example (Programming by Example)
e: PBE), which displays various computational resources, such as files, application programs, and other object instances, as icons on a display device, and allows the operator to operate these icons using a mouse or the like. The system interprets the operation, performs the operation on the object instance indicated by the operation, and at the same time generates a command representing the operation. Thus, a desired program can be obtained by repeating the operation, execution, and command generation. Although an object instance has a specific value (example), it is characterized in that a system for interpreting an operation on the object instance generates a program for a more general object. The generated program can be applied to an example different from an example operated by a user at the time of creating the program. This is because, for an object instance, the operation interpretation for this example has been converted to a form applicable to all that belong to the object. In addition, since programming is performed using a specific example, the programmer does not need to generalize the problem as in ordinary programming, and programming effort is reduced.

【0008】PBEの一例として、プログラムの起動を
管理するプログラムに対応させて、エージェントと呼ば
れる人物をオブジェクトインスタンスとして定義してこ
れをディスプレイ装置上にアイコンとして表示し、これ
に対して指示を送ってプログラムの実行を依頼するイン
ターフェースを持ったシステムが、日経コンピュータ”
別冊ソフトウェア・マルチメディア時代のユーザ・イン
ターフェース”pp.165−178(1989.7.
28発行)に述べられている(以下、この技術を第1の
公知技術と呼ぶ)。このシステムは、ディスプレイ装置
上にエージェントと呼ばれる管理プログラムのオブジェ
クトインスタンスを表わす、人間の顔をもった二次元図
形からなるアイコンを表示し、ファイル、キャビネット
などを表すオブジェクトインスタンスをそれぞれ表わす
二次元図形からなるアイコンを表示し、操作者は表示さ
れたエージェントアイコンと表示されているその他のア
イコンに対して、マウスやキーボードを用いて指示す
る。エージェントは、ユーザからの入力を解釈して、適
当なプログラムを選択してこれを実行する。このシステ
ムのPBEの機能としては、ユーザからの入力を解釈し
た結果を依頼を受けたエージェントアイコンにくくりつ
けて記憶して、入力例をプログラムとして生成すること
である。
[0008] As an example of PBE, a person called an agent is defined as an object instance corresponding to a program for managing the activation of the program, and this is displayed as an icon on a display device. Nikkei Computer is a system with an interface to request program execution
User Interface in the Era of Software Multimedia, pp. 165-178 (1989.
28 issuance) (hereinafter, this technique is referred to as a first known technique). This system displays an icon consisting of a two-dimensional figure with a human face on a display device, which represents an object instance of a management program called an agent, and uses a two-dimensional figure representing an object instance representing a file, a cabinet, etc. Is displayed, and the operator gives an instruction to the displayed agent icon and other displayed icons using a mouse or a keyboard. The agent interprets the input from the user, selects an appropriate program, and executes it. The function of the PBE of this system is to store the result of interpreting the input from the user, attached to the requested agent icon, and to generate an input example as a program.

【0009】オブジェクトあるいはメソッドという概念
を用いていないが、アイコンを用いてプログラム作成の
容易化を図る技術として、情報処理学会第30回プログ
ラミング・シンポジウム報告集、pp.9−17(19
89年1月)で発明者らが述べているプログラム生成シ
ステム(以下第2の公知技術と呼ぶ)がある。ここで
は、ディスプレイ装置上に、数値データや配列データな
どのデータの例をアイコンとして表示し入力すべきコマ
ンドの処理対象を指定するのに、それに対応するアイコ
ンを画面上で選択するようになっている。また、プログ
ラム作成時に入力したコマンドをその例データに対して
実行し、結果を操作者に通知するようになっている。ま
た、その結果によっては表示したアイコンを複数の領域
に分けるようになっている。このように、プログラムの
実行状態を表示することにより、作成中のプログラムの
現在の実行状況を正確に、判り易く操作者に通知するこ
とができる。
Although the concept of an object or a method is not used, as a technique for facilitating program creation using icons, a report of the 30th Programming Symposium of the Information Processing Society of Japan, p. 9-17 (19
There is a program generation system (hereinafter referred to as a second known technology) described by the inventors in January, 1989). Here, on the display device, examples of data such as numerical data and array data are displayed as icons, and in order to specify a processing target of a command to be input, an icon corresponding to the command is selected on the screen. I have. Further, a command input at the time of creating a program is executed on the example data, and the result is notified to the operator. Depending on the result, the displayed icon is divided into a plurality of areas. By displaying the execution state of the program as described above, the operator can be notified of the current execution state of the program being created accurately and easily.

【0010】また、このシステムでは、作成中のプログ
ラムの実行が失敗である場合には、別のコマンド列から
なるプログラムを作成可能になっている。
Further, in this system, if the execution of the program being created is unsuccessful, it is possible to create a program consisting of another command sequence.

【0011】また、アイ・イー・イー・イー・ワークシ
ョップ・オン・ビジュアルランゲージ(IEEE Wo
rkshop on Visual Languag
e)、pp.80−85 1989(以下第3の従来技
術と呼ぶ)には次の技術がある。
[0011] Also, IEE Workshop on Visual Language (IEEE Wo)
rkshop on Visual Languag
e), pp. 80-85 1989 (hereinafter referred to as a third conventional technique) includes the following technique.

【0012】処理対象の例としてハノイの塔を構成する
円板を表示し、これをアイコンのように用いて、第2の
公知技術と同様な方法でプログラムを作成する技術が表
示されている。ここでは、プログラム作成時にその一部
のコマンドとして、円板を移動させるコマンドが入力
し、これを実行するようにしている。しかも、この移動
を動画として行うようになっている。これにより、プロ
グラムの実行状態がより分かりやすくなっている。
[0012] As an example of the processing object, a disk constituting the tower of Hanoi is displayed, and using this as an icon, a technique of creating a program in the same manner as the second known technique is displayed. Here, a command to move the disk is input as a part of the command when the program is created, and the command is executed. In addition, this movement is performed as a moving image. This makes it easier to understand the execution state of the program.

【0013】[0013]

【発明が解決しようとする課題】第2又は第3の公知技
術では処理対象に対応するアイコンの表示を実行段階に
応じて変化させることにより、プログラムの実行段階を
操作者に知らせている。しかし、第2、第3の公知技術
は、第1の公知技術にあるような、オブジェクトあるい
はメソッド、あるいはメッセージという概念がない。つ
まり、処理対象を直接指定するコマンドからなるプログ
ラムを作成するのみである。一方、第1の公知技術で
は、あるオブジェクトに対して作成すべきメソッド(プ
ログラム)として、他のオブジェクトに割りあてられた
メソッドによる処理を含む処理を実行するプログラムを
作成することができる。その意味できわめて、汎用的な
あるいは高度なプログラム作成法といえる。しかし、こ
の第1の公知技術の場合、作成中のプログラムの実行状
態を知ることができない。
In the second or third known technique, the operator is notified of the execution stage of the program by changing the display of the icon corresponding to the processing target according to the execution stage. However, the second and third known technologies do not have the concept of an object, a method, or a message as in the first known technology. That is, only a program consisting of commands for directly specifying a processing target is created. On the other hand, in the first known technique, as a method (program) to be created for a certain object, it is possible to create a program for executing a process including a process by a method assigned to another object. In that sense, it can be said to be a very general-purpose or advanced program creation method. However, in the case of the first known technique, the execution state of the program being created cannot be known.

【0014】したがって、本発明の目的は、いろいろの
処理対象にすでに割り当てられている処理を含む処理を
実行するプログラムの実行状態を操作者が知ることを可
能にするプログラム作成方法を提供するとにある。
Accordingly, it is an object of the present invention to provide a program creating method which enables an operator to know the execution state of a program for executing a process including a process already assigned to various processing targets. .

【0015】本発明の他の目的は同じ特徴をもつプログ
ラムの実行方法を提供することにある。さらに、本発明
の他の目的は、計算機入力をより容易とするアイコンの
表示方法を提供することにある。
Another object of the present invention is to provide a method for executing a program having the same characteristics. Still another object of the present invention is to provide a method for displaying icons which makes computer input easier.

【0016】[0016]

【課題を解決するための手段】上記課題を解決するため
に、作成中のプログラムが、他の処理対象にすでに割り
あてられた処理を要求する時点の近傍で、その作成中の
プログラムに対応するアイコンの表示を、上記他の処理
対象に対応するアイコンに関連させて変化させる。たと
えば前者のアイコンを後者のアイコンのところに移動さ
せる。また、作成済のプログラムの実行段階において、
上記時点において上記表示の変更をする。また、計算機
入力用のアイコンとして、三次元空間内の物体を二次元
平面に投影したものを用いる。
In order to solve the above-mentioned problems, a program being created corresponds to the program being created near the point in time at which it requests a process already assigned to another processing target. The display of the icon is changed in relation to the icon corresponding to the other processing target. For example, the former icon is moved to the latter icon. In the execution stage of the created program,
At this point, the display is changed. In addition, as an icon for computer input, an icon obtained by projecting an object in a three-dimensional space onto a two-dimensional plane is used.

【作用】作成中又は作成済みのプログラムの実行段階に
応じて、そのプログラムに対応するアイコンの表示が、
要求した処理が割り当てられている処理対象に対するア
イコンに関連して変化させられるので、ユーザはプログ
ラムの実行状態を知ることができる。
According to the execution stage of a program being created or already created, the icon corresponding to the program is displayed.
Since the requested processing is changed in relation to the icon for the processing target to which the processing is assigned, the user can know the execution state of the program.

【0017】また、三次元アイコンを用いることによ
り、非常に親近感のある画面を用いて計算機入力をする
ことができる。
Further, by using the three-dimensional icons, it is possible to input a computer using a screen with a very close feeling.

【0018】[0018]

【実施例】A. 概要 第1図は本発明の実施例によるプログラム生成システム
構成を示す図である。この図で示すようにシステムはデ
ィスプレイ装置101と、マウス109、キーボード1
10および音声入力装置111の3つの入力装置と、プ
ログラム作成用プログラム10を格納した主記憶装置1
12と、補助記憶装置113と、CPU114と、大型
汎用計算機116や電話回線117と接続するためのネ
ットワーク装置115と、音声出力装置118とから構
成されている。
DESCRIPTION OF THE PREFERRED EMBODIMENTS Overview FIG. 1 is a diagram showing a configuration of a program generation system according to an embodiment of the present invention. As shown in this figure, the system comprises a display device 101, a mouse 109, a keyboard 1
And a main storage device 1 storing a program 10 for creating a program.
12, an auxiliary storage device 113, a CPU 114, a network device 115 for connecting to a large general-purpose computer 116 and a telephone line 117, and an audio output device 118.

【0019】ディスプレイ装置101の表示画面は図に
示すように画面領域102〜107からなる。オブジェ
クト表示画面102には、オフィス空間内のいろいろの
備品、たとえば電話3104、机3105、端末310
6およびそこに立っている秘書を表わす人物3102を
ある点ににある、仮想的なTVカメラ(図示せず)から
見たときの3次元図形があらかじめ表示される。本実施
例では、これらの図形のそれぞれに対してオブジェクト
指向計算モデルに言う所のオブジェクトが定義される。
これらの図形は、それぞれ対応するオブジェクトのアイ
コンとして利用される。これらのアイコンを利用して所
望のプログラムが人物3102に対するメソッドとして
作成される。作成したプログラムの後の実行時に、その
実行状態を操作者に分からせるために、本実施例では人
物3102にプログラムの実行状況に対応した動作をプ
ログラム作成時にさせる。この動作を指示するコマンド
を作成すべきプログラムの一部として入力する。後述す
るように、この人物3102を動かしながらプログラミ
ングがなされる。モーション・コントロール画面103
には、この動きを指示するためのスライダ217〜22
2が表示される。ビユーコントローラ画面104には、
オフィス空間を見る視野を変化させるために、上記仮想
的なVTカメラの位置あるいは姿勢を制御するためのス
ライダ230〜235が表示される。メソッドプログラ
ミング画面105には作成すべきプログラムを構成する
ために入力されたコマンド等を表示する。プログラムコ
ントロール画面106には、操作者により入力されたコ
マンドの実行あるいは記憶など制御するためのメニュー
等が表示される。端末画面107には、入力装置109
〜111、ディスプレイ装置101からなる端末の状態
を操作者に知らせる制御情報が表示される。オブジェク
トモデリング画面108には、オブジェクト表示画面に
表示されたいろいろのアイコンの内、操作者が選択した
アイコンにて表わされるオブジェクトに関する情報が表
示される。201は、表示画面に示されたマウスカーソ
ルを示す。
The display screen of the display device 101 comprises screen areas 102 to 107 as shown in the figure. Various objects in the office space, such as a telephone 3104, a desk 3105, and a terminal 310 are displayed on the object display screen 102.
6 and a three-dimensional figure 3102 representing a secretary standing there when viewed from a virtual TV camera (not shown) at a certain point are displayed in advance. In this embodiment, an object referred to in the object-oriented calculation model is defined for each of these figures.
These figures are used as icons of the corresponding objects. A desired program is created as a method for the person 3102 using these icons. In this embodiment, in order to make the operator aware of the execution state of the created program after execution, the person 3102 is caused to perform an operation corresponding to the execution state of the program when the program is created. A command instructing this operation is input as a part of a program to be created. As will be described later, programming is performed while moving the person 3102. Motion control screen 103
Sliders 217-22 for instructing this movement
2 is displayed. On the view controller screen 104,
Sliders 230 to 235 for controlling the position or posture of the virtual VT camera are displayed in order to change the field of view of the office space. The method programming screen 105 displays commands and the like input to configure a program to be created. On the program control screen 106, a menu or the like for controlling execution or storage of a command input by the operator is displayed. An input device 109 is displayed on the terminal screen 107.
To 111, control information for notifying the operator of the state of the terminal including the display device 101 is displayed. The object modeling screen 108 displays information on an object represented by an icon selected by the operator among various icons displayed on the object display screen. Reference numeral 201 denotes a mouse cursor shown on the display screen.

【0020】第2図において、119,120,126
〜136,140〜413は、あらかじめ準備されたプ
ログラム作成用プログラム10のいろいろのモジュール
を示す。このプログラム作成用プログラム10がユーザ
入力を解読してコマンドを作成するとともに、これらの
コマンドを実行するようになっている。
In FIG. 2, 119, 120, 126
Reference numerals 136 and 140 413 denote various modules of the program 10 prepared in advance. The program creation program 10 interprets user input to create commands and executes these commands.

【0021】このプログラム作成用プログラム10のた
めに次の3つのデータベースが主記憶装置112中にあ
らかじめ格納されている。
The following three databases are stored in the main memory 112 in advance for the program creating program 10.

【0022】(1)各オブジェクトの情報すなわち、オ
ブジェクトインスタンスを格納するオブジェクトインス
タンスライブラリ124。各オブジェクトインスタンス
は、各オブジェクトの構造データ、オブジェクトスロッ
ト、オブジェクトメソッドからなる。その一例は第3A
〜3C図に示されている。
(1) Information of each object, that is, an object instance library 124 for storing object instances. Each object instance includes the structure data of each object, an object slot, and an object method. One example is 3A
3C to 3C.

【0023】(2)各オブジェクトを表わす3次元アイ
コンの図形データの集合である3次元形状データベース
123。図形データの一例は第4図に示されている。
(2) A three-dimensional shape database 123 which is a set of graphic data of three-dimensional icons representing each object. An example of the graphic data is shown in FIG.

【0024】(3)音声入力装置111からの音声認識
に用いる候補音声データベース125。このデータの例
は第5図に示されている。
(3) A candidate speech database 125 used for speech recognition from the speech input device 111. An example of this data is shown in FIG.

【0025】これらのデータは元々は補助記憶113中
に格納されているが、プログラム作成用プログラムが必
要とするときに適宜主記憶装置112中に置かれる。
Although these data are originally stored in the auxiliary storage 113, they are appropriately stored in the main storage 112 when required by the program creating program.

【0026】以下、本プログラム作成用プログラム10
の処理の概要を述べる。 (1)マウス109、キーボード110、音声入力装置
111、の3つの入力装置からのユーザ入力情報を処理
119,126,127,140〜143により解釈し
てコマンドを作成し、コマンドバッファ120に格納
し、これをコマンド待ち行列スタック122のトップに
あるコマンド待ち行列121に加える。以上の処理は第
2図の処理119,126,127,140−143に
より行なわれる。コマンドとしては人物アイコン310
2等に所望の動作させるコマンドも入力される。このと
きは、モーションコントロール画面103内のいろいろ
のスライダーが操作される。
The program 10 for creating the program will now be described.
An outline of the processing will be described. (1) A command is created by interpreting user input information from the three input devices of the mouse 109, the keyboard 110, and the voice input device 111 by processes 119, 126, 127, 140 to 143, and stored in the command buffer 120. Is added to the command queue 121 at the top of the command queue stack 122. The above processing is performed by processing 119, 126, 127, 140-143 in FIG. The command is a person icon 310
A command to perform a desired operation is also input to the second or the like. At this time, various sliders in the motion control screen 103 are operated.

【0027】(2)オブジェクトメソッド実行処理13
5では、コマンド待ち行列121からコマンドを取り出
して、3次元形状データベース123と、オブジェクト
インスタンスライブラリ124を参照して実行する。つ
まり、この取り出されたコマンドが、指定するオブジェ
クトインスタンスの属するオブジェクトのもつメソッド
が定義済みのものであれば、そのメソッドで指定される
適当なプログラムライブラリを実行する。そのコマンド
が例えば人物アイコン3102を動かすコマンドのとき
には適宜そのオブジェクトに対応する三次元アイコンの
表示を動画的に変える。これにより、ユーザは、プログ
ラム作成時に、どのコマンドが実行されたかを知ること
ができる。この動画表示時には、上記プログラム・ライ
ブラリにしたがい、適宜、そのオブジェクトに関する三
次元形状データベースを実行処理135が更新し、更新
結果に即座に応答してオブジェクト表示処理125がオ
ブジェクト表示画面102の表示をかえる。このように
して、コマンドの実行により3次元画像が動画表示され
るとともに、音声出力装置118によってコマンドの実
行にしたがって操作者に実行状況を知らせるための音声
も出力される。
(2) Object method execution processing 13
In 5, the command is taken out from the command queue 121 and executed with reference to the three-dimensional shape database 123 and the object instance library 124. That is, if the extracted command has a method defined for the object to which the specified object instance belongs, the appropriate program library specified by the method is executed. When the command is, for example, a command for moving the person icon 3102, the display of the three-dimensional icon corresponding to the object is appropriately changed to a moving image. This allows the user to know which command was executed when the program was created. At the time of displaying the moving image, the execution process 135 updates the three-dimensional shape database relating to the object according to the program library, and the object display process 125 changes the display of the object display screen 102 immediately in response to the update result. . In this way, a three-dimensional image is displayed as a moving image by executing the command, and a sound for notifying the operator of the execution status is output by the sound output device 118 in accordance with the execution of the command.

【0028】(3)コマンドが指定するオブジェクトの
もつメソッドの中にそのコマンドが要求するメソッドが
定義されていない場合には、新しいメソッドをオブジェ
クトメソッド実行処理135を利用して生成する。
(3) If the method required by the command is not defined in the methods of the object specified by the command, a new method is generated by using the object method execution processing 135.

【0029】(4)コマンドを実行した結果、なんらか
の支障があったときには、コマンド失敗が報告される。
この場合には、実行したコマンドが指定するメソッド
の、再プログラミングが行わなわれる。これもオブジェ
クトメソッド実行処理135のを利用して行われる。こ
のように、オブジェクトメソッド実行処理135は状況
によってさまざまの働きをするが、コマンド待ち行列ス
タック122がこれを制御する働きをする。
(4) If there is any trouble as a result of executing the command, a command failure is reported.
In this case, the method specified by the executed command is not reprogrammed. This is also performed using the object method execution processing 135. In this way, the object method execution processing 135 performs various functions depending on the situation, and the command queue stack 122 functions to control it.

【0030】(5)オブジェクトインスタンスに対応す
る3次元形状アイコンは任意の時点でその位置、表示状
態を変更することができる。これはモーションコントロ
ール画面103上のスライダ217〜222のバリュエ
ータ(縦太線部分)をマウスで左右に移動して行われ
る。変更の結果はプログラミングの途中では命令として
作成中のプログラム中には蓄えられない。プログラムコ
ントロール画面106中の「記憶」ボタン216をマウ
スで選択すると、その変更に到るまでの動作又は位置の
変化を再現するコマンド列を生成し、これを作成中のプ
ログラム中に記憶する。
(5) The position and display state of the three-dimensional shape icon corresponding to the object instance can be changed at any time. This is performed by moving the valuators (bold vertical lines) of the sliders 217 to 222 on the motion control screen 103 left and right with a mouse. The result of the change is not stored as an instruction in the program being created during the programming. When a “store” button 216 in the program control screen 106 is selected with a mouse, a command sequence that reproduces an operation or a change in position until the change is generated is generated and stored in the program being created.

【0031】(6)(5)と同様にして、3次元形状を
持つアイコンをオブジェクト表示画面102上に投影す
る状態を任意の時点で変更することができる。また
(5)と同様に記憶ボタン216をマウスで選択するこ
とによって、その状態を再現するコマンドを生成し、プ
ログラム中に記憶する。
(6) As in (5), the state of projecting an icon having a three-dimensional shape on the object display screen 102 can be changed at any time. By selecting the storage button 216 with the mouse as in (5), a command for reproducing the state is generated and stored in the program.

【0032】以上のように、本実施例では、プログラム
作成中にこのプログラムを割り当てる人物アイコン31
02に所要の動きをさせるコマンドを作成すべきプログ
ラムに属するコマンドの一部として入力することに一つ
の特徴がある。さらにプログラム作成時に、これを実行
し、プログラミング的に操作者に、入力したコマンドの
実行状態を知らせる。さらに、本実施例では、この人物
アイコンを含み、アイコンとして3次元図形をそのまま
利用している。本実施例の他の特徴は以下の詳細説明に
て説明する。
As described above, in the present embodiment, the person icon 31 to which this program is assigned during program creation
There is one feature in that a command for causing a desired motion in 02 is input as a part of a command belonging to a program to be created. Further, when the program is created, this is executed, and the operator is notified programmatically of the execution state of the inputted command. Further, in this embodiment, the three-dimensional figure is used as it is, including the person icon. Other features of the present embodiment will be described in the following detailed description.

【0033】B. システムの構成要素 以下に、本実施例のシステムの処理の詳細を述べる前に
各構成要素の詳細を述べる。
B. Components of System Hereinafter, before describing the details of the processing of the system of the present embodiment, the details of each component will be described.

【0034】B.1 データベース 1. 3次元形状データベース123(第4図) 本実施例では、オフィス空間内に配置された人物、電話
器、机等を表わす三次元図形をその空間内に配置された
カメラから見たときの図形を表示画面上に表示し、この
表示された図形をそれぞれ対応するオブジェクトを表す
ためのアイコンとして用いる。3次元形状データベース
123はこのような3次元図形のデータを記憶してい
る。各3次元図形のデータは、第4図に例示されるよう
に、各三次元図形を構成する複数の多面体のそれぞれの
種別と位置、それぞれ多面の色、光沢などの属性と、変
換行列から構成される。第4図には、第3B図に示した
電話オブジェクトインスタンス2750の下位要素であ
る受話器(recieve)オブジェクトインスタンス275
4の3次元図形データ2799の一部を示す。ここでは
8面体と、その頂点座標、色、光沢、その位置、方向を
表わしている。
B. 1 Database 1. Three-dimensional Shape Database 123 (FIG. 4) In this embodiment, a three-dimensional figure representing a person, a telephone, a desk, and the like arranged in an office space is viewed from a camera arranged in the space. It is displayed on a display screen, and the displayed figure is used as an icon for representing a corresponding object. The three-dimensional shape database 123 stores such three-dimensional figure data. As shown in FIG. 4, the data of each three-dimensional figure is composed of respective types and positions of a plurality of polyhedrons constituting each three-dimensional figure, attributes of each of the polyhedrons such as color and gloss, and a conversion matrix. Is done. FIG. 4 shows a receiver object instance 275 which is a subelement of the telephone object instance 2750 shown in FIG. 3B.
4 shows a part of the three-dimensional graphic data 2799 of FIG. Here, an octahedron and its vertex coordinates, color, gloss, its position, and direction are shown.

【0035】2. オブジェクトインスタンスライブラ
リ124(第3A〜3C図)は、いろいろのオブジェク
トの情報(オブジェクトインスタンス)、たとえばオブ
ジェクト構造データオブジェクトスロット、オブジェク
トメソッドを保持する。第3A〜3C図にそれぞれ人
物、電話、カメラに対応するオブジェクトインスタンス
の具体例を示す。ここではオブジェクトインスタンスラ
イブラリ124に登録されている第3A図の人物オブジ
ェクト2701を例にとって説明する。
2. The object instance library 124 (FIGS. 3A to 3C) holds information (object instances) of various objects, for example, object structure data, object slots, and object methods. 3A to 3C show specific examples of object instances corresponding to a person, a telephone, and a camera, respectively. Here, the person object 2701 in FIG. 3A registered in the object instance library 124 will be described as an example.

【0036】スロット2711は人物オブジェクトの持
つ属性の名前であり、スロット値を持つ。スロット27
11はそれぞれの属性の名前と、その属性に関するデー
タ型を指定する。第3A図の例では、人物オブジェクト
インスタンス2701のスロット2711には位置27
20と方向2721と名前2722という3つの属性の
名前があり、それぞれに関するデータの型がベクトル、
ベクトル、文字列という型のデータが格納されることを
示している。
The slot 2711 is the name of the attribute of the person object and has a slot value. Slot 27
Reference numeral 11 designates a name of each attribute and a data type relating to the attribute. In the example of FIG. 3A, the position 27 is set in the slot 2711 of the person object instance 2701.
There are three attribute names: 20, direction 2721, and name 2722, and the data type for each is a vector,
This indicates that data of a type called vector or character string is stored.

【0037】オブジェクトメソッドはオブジェクト固有
の手続きであり、ここではその名前と名前に対応する複
数のコマンド列と、引数オブジェクトの組である。実行
時のメソッド呼出しは定義順に行われる。第3A図の例
では、callメソッド 2712、gotoメソッド
2713、tel_takeメソッド、2714、c
onnect(1)メソッド 2715、connec
t(2)メソッド 2716が定義されている。ここで
connectメソッドは2つの定義があるが、その定
義順を表すために順序付けが行われている。
An object method is a procedure unique to an object. Here, the object method is a set of a name, a plurality of command strings corresponding to the name, and an argument object. Method calls at runtime are performed in the order of definition. In the example of FIG. 3A, a call method 2712, a goto method 2713, a tel_take method, 2714, c
connect (1) method 2715, connect
A t (2) method 2716 is defined. Here, the connect method has two definitions, and ordering is performed to indicate the order of the definitions.

【0038】本実施例ではオブジェクトは要素を木構造
で構成された要素を有する。それぞれの要素もまたオブ
ジェクトである。オブジェクトインスタンスについても
同じである。第3A図でオブジェクト構造データ270
2から分かるように、人物オブジェクトインスタンス2
703は、身体(body)オブジェクトインスタンス
2704を下位要素としてもつ。身体(body)オブ
ジェクトインスタンス2704は右上腕(ruarm)
オブジェクトインスタンス2708、左上腕(luar
m)オブジェクトインスタンス2705、などを下位要
素として持つ。このなかでruarmオブジェクトイン
スタンス2708はrlarmオブジェクトインスタン
ス2709を下位要素として持ち、rlarmオブジェ
クトインスタンス2709はrhandオブジェクトイ
ンスタンス2710を下位要素として持つ。要素のオブ
ジェクトインスタンスの具体例は簡単化のために図示お
よび詳細説明を省略してある。
In this embodiment, the object has an element composed of a tree structure. Each element is also an object. The same applies to object instances. The object structure data 270 in FIG.
As you can see from Figure 2, person object instance 2
703 has a body object instance 2704 as a lower element. The body object instance 2704 is the upper right arm (rum).
Object instance 2708, left upper arm (luar
m) It has an object instance 2705, etc. as lower elements. Among them, the ruarm object instance 2708 has an rlarm object instance 2709 as a lower element, and the rarm object instance 2709 has a rhand object instance 2710 as a lower element. Specific examples of the object instance of the element are omitted from the drawings and detailed description for simplification.

【0039】本実施例では各要素は3次元形状を持って
いる。3次元形状は3次元形状データベース123(第
2図)に格納されている。また、各要素のオブジェクト
インスタンス(図示せず)にはその要素の属性として、
移動可能属性と回転可能属性が保持される。第3A図の
例では、移動可能属性を持つ要素には(+)を、回転可
能属性を持つ要素には(*)を記してある。このことは
他の図、たとえば第3B,3C図でも同様である。
In this embodiment, each element has a three-dimensional shape. The three-dimensional shape is stored in the three-dimensional shape database 123 (FIG. 2). In addition, the object instance (not shown) of each element includes, as an attribute of the element,
The movable attribute and the rotatable attribute are held. In the example of FIG. 3A, (+) is written for an element having a movable attribute, and (*) is written for an element having a rotatable attribute. This is the same in other figures, for example, FIGS. 3B and 3C.

【0040】要素の属性の移動可能属性、回転可能属性
が移動不可能あるいは回転不可能になっている場合に
は、それぞれ移動、回転できない。第3A図の例では、
人物オブジェクトインスタンス2703の下位要素はす
べて移動可能属性が不可能である。このことにより、人
間の各関節は回転だけが可能で、移動はできないという
自然な状態を実現している。
When the movable attribute and the rotatable attribute of the attribute of the element are immovable or non-rotatable, the element cannot be moved or rotated, respectively. In the example of FIG. 3A,
All the lower elements of the person object instance 2703 cannot have the movable attribute. This realizes a natural state in which each human joint can only rotate and cannot move.

【0041】特殊なオブジェクトに対するインスタンス
としてカメラオブジェクトインスタンス2780(第3
C図)がある。カメラオブジェクトィインスタンス27
80はそのスロット2790としてカメラ位置である位
置2791、カメラの視野の水平方向を示す横方向方向
2792、カメラの視野の垂直方向を示す上方向279
3という3つの属性それぞれにベクトル型のデータを格
納する。また、このオブジェクトインスタンスはメソッ
ド2795を組み込みメソッドとして持つ。このメソッ
ドは3次元形状データベース123内のいろいろの三次
元図形のデータをオブジェクト表示画面102(第1
図)上の座標系のデータに変換し、シェーディング、レ
ンダリングを行い、得られた図形をオブジェクト表示画
面102に表示する。
As an instance for a special object, a camera object instance 2780 (third object)
C). Camera object instance 27
Reference numeral 80 denotes a slot 2790 as a camera position 2791, a horizontal direction 2792 indicating the horizontal direction of the camera's field of view, and an upward direction 279 indicating the vertical direction of the camera's field of view.
The vector type data is stored in each of the three attributes “3”. This object instance has a method 2795 as a built-in method. This method displays various three-dimensional figure data in the three-dimensional shape database 123 on the object display screen 102 (first
The image is converted into data in the coordinate system on the upper side, shading and rendering are performed, and the obtained figure is displayed on the object display screen 102.

【0042】なお、オブジェクト表示処理136(第2
図)はこのメソッドを3次元形状データベース123ま
たは、オブジェクトインスタンスライブラリ124が更
新された場合や、そのほかの画面表示要求があった場合
に実行されるようになっている。
The object display processing 136 (second
FIG. 7) is executed when the three-dimensional shape database 123 or the object instance library 124 is updated, or when there is another screen display request.

【0043】オブジェクトインスタンスライブラリ12
4はオブジェクトインスタンスが生成又は、削除された
ときに修正されるようになっている。
Object instance library 12
Reference numeral 4 is modified when an object instance is created or deleted.

【0044】3.候補音声データベース125(第5
図)候補音声データベース125は、音声入力装置11
1から入力された音声の認識を行うときに用いる、第5
図に示す候補音声データ501を複数格納するデータベ
ースである。ここで候補音声データ501は、音声デー
タ502、データ種類503、文字列504の各領域か
ら構成されている。音声データ502は音声入力をその
まま記憶したものであり、データ種類503は候補音声
データの種類を表すものであり、文字列504は音声認
識の結果、出力される文字列である。ここで、データ種
類503は、オブジェクトインスタンス、オブジェクト
メソッド、組み込み命令コード、プログラムコントのい
ずれかを表わす。はじめから登録されている候補音声デ
ータには次のものがある。 (1)後述する組み込み命令(第3図)に関する候補音
声データ。このデータ種類は組込命令コードである。 (2)カメラオブジェクトインスタンスなど、組込オブ
ジェクトインスタンスとして始めから定義されているオ
ブジェクトインスタンスに関連する候補音声データ。こ
れらのデータ種類は、オブジェクトインスタンスであ
る。 (3)操作者の「実行」という音声入力に対応する候補
音声データ。この候補音声データのデータ種類はプログ
ラムコントロール、文字列は”execute”であ
る。 (4)操作者の「記憶」という音声入力に対応する候補
音声データ。この候補音声データのデータ種類はプログ
ラムコントロール、文字列は”record”である。
3. Candidate voice database 125 (fifth
FIG.) The candidate voice database 125 stores the voice input device 11.
Fifth, used when recognizing the voice input from 1
It is a database that stores a plurality of candidate voice data 501 shown in the figure. Here, the candidate voice data 501 is composed of voice data 502, a data type 503, and a character string 504. The voice data 502 directly stores the voice input, the data type 503 indicates the type of the candidate voice data, and the character string 504 is a character string output as a result of voice recognition. Here, the data type 503 represents one of an object instance, an object method, an embedded instruction code, and a program controller. The following are the candidate voice data registered from the beginning. (1) Candidate audio data related to a built-in instruction (FIG. 3) described later. This data type is an embedded instruction code. (2) Candidate audio data related to an object instance defined from the beginning as an embedded object instance, such as a camera object instance. These data types are object instances. (3) Candidate voice data corresponding to the operator's "execute" voice input. The data type of the candidate audio data is program control, and the character string is “execute”. (4) Candidate voice data corresponding to a voice input of “memory” by the operator. The data type of the candidate audio data is program control, and the character string is “record”.

【0045】B.2 処理 以下、第2図に示す本システム内でのいろいろのプログ
ラムによる処理について述べる。 1.入力処理 システムに対する入力は、キーボード109、マウス1
10、音声入力装置111を用いて行われる。 1.1 イベントデータ(第6図) 後述するように、システムに対する入力に応答して音声
イベント発生処理143、マウスイベント発生処理14
0とキーボードイベント発生処理141がイベントデー
タを生成するようになっている。イベントデータ401
は、第6図に示すようにイベント種類領域402と付加
情報領域403から構成されている。ここでイベント種
類402は、モーションコントロール、ビューコントロ
ール、オブジェクト選択、プログラムコントロール、命
令入力、オブジェクトモデリング又はキーボードのいず
れかである。付加情報403はイベント種類によって異
なる。イベント種類がオブジェクト選択、命令入力、キ
ーボードのいずれかであるとき、そのイベントデータは
作成すべきプログラムを構成するコマンド又はその一部
を構成するのに用いられる。その他の種類のイベントデ
ータは、コマンド生成に直接関係しない。
B. 2. Processing Hereinafter, processing by various programs in the present system shown in FIG. 2 will be described. 1. Input processing Input to the system is keyboard 109, mouse 1
10. This is performed using the voice input device 111. 1.1 Event Data (FIG. 6) As will be described later, a voice event generation process 143 and a mouse event generation process 14 respond to an input to the system.
0 and the keyboard event generation processing 141 generate event data. Event data 401
Is composed of an event type area 402 and an additional information area 403 as shown in FIG. Here, the event type 402 is any of motion control, view control, object selection, program control, command input, object modeling, or keyboard. The additional information 403 differs depending on the event type. When the event type is one of an object selection, a command input, and a keyboard, the event data is used to configure a command constituting a program to be created or a part thereof. Other types of event data are not directly related to command generation.

【0046】1.2 音声処理 1.2.1 音声入力 音声入力装置111からは、操作者は、作成すべきプロ
グラムに実行させたい処理を人物アイコン3102へ指
示するかのように音声で入力する。たとえば、「電話を
とって」を入力する。この音声入力処理では、この入力
音声を認識し、必要な一つ又は複数のイベントデータが
生成される。音声入力装置111から処理を指示する音
声だけでなく、作成されたコマンドの実行に関連する入
力、たとえば「実行」なども入力可能である。但し、い
ずれの種類の音声であっても、あらかじめ登録された表
現である必要がある。
1.2 Speech Processing 1.2.1 Speech Input From the speech input device 111, the operator inputs speech as if instructing the process to be executed by the program to be created to the person icon 3102. . For example, "take a call" is entered. In the voice input processing, the input voice is recognized, and one or a plurality of necessary event data is generated. Not only a voice for instructing a process from the voice input device 111 but also an input related to the execution of the created command, for example, “execution” can be input. However, any type of voice needs to be an expression registered in advance.

【0047】1.2.2 音声認識処理142(第7
(A)図) 音声認識処理142では第6図に示すように音声入力装
置111から送られてきた入力音声の異なる部分の各々
と、候補音声データベース125のすべての候補音声デ
ータ501(第5図)の音声データ503とを比較し、
それぞれの音声部分に最も似通った候補音声データを抽
出しステップ601、それぞれの音声部分に対して音声
イベント発生処理143(第2図)を起動する(ステッ
プ603)。似通った候補音声が存在しない場合には
(ステップ602)、何も出力しない。
1.2.2 Voice Recognition Processing 142 (Seventh
(FIG. 5A) In the voice recognition processing 142, as shown in FIG. 6, each of the different portions of the input voice sent from the voice input device 111 and all the candidate voice data 501 in the candidate voice database 125 (FIG. 5). ) Is compared with the audio data 503,
The candidate voice data most similar to each voice portion is extracted, and step 601 starts voice event generation processing 143 (FIG. 2) for each voice portion (step 603). If there is no similar candidate voice (step 602), nothing is output.

【0048】1.2.3 音声イベント発生処理143
(第7B図) 第7(B)図に示すように音声認識処理142で抽出され
た候補音声データ内のデータ種類領域を調べて(ステッ
プ701,703、705、707)その種類に依存し
て特定のイベント種類のイベントデータを生成し(ステ
ップ702、704、706、708)、入力イベント
処理126(第2図)を起動する(ステップ709)。
生成されるイベントデータは次のとおりである。なお、
生成されるイベントデータ生成時に、その付加情報40
3には、抽出された候補音声データ501の文字列領域
504をそのまま用いる。たとえば、入力音声「電話を
とって」の「電話」のごとく、処理対象を表わす音声部
分に対して抽出された候補音声データのデータ種類はオ
ブジェクトインスタンスとなる。その場合(ステップ7
01)、イベント種類がオブジェクト選択であるイベン
トデータを生成する(ステップ702)。たとえば、入
力音声「電話をとって」の「とって」のごとく、処理内
容を表わす音声部分に対して抽出された候補音声データ
のデータ種類はオブジェクトメソッドとなる。この場合
(ステップ703)、イベント種類が命令入力であるイ
ベントデータを発生する(ステップ704)。入力音声
中の、組み込み命令(後述)を表わす部分に対して抽出
された候補音声データのデータ種類は組み込み命令コー
ドとなる。この場合(ステップ705)、イベント種類
が命令入力であるイベントデータを生成する(ステップ
706)。
1.2.3 Audio Event Generation Processing 143
(FIG. 7B) As shown in FIG. 7 (B), the data type area in the candidate voice data extracted in the voice recognition processing 142 is checked (steps 701, 703, 705, 707) and depending on the type. Event data of a specific event type is generated (steps 702, 704, 706, 708), and the input event processing 126 (FIG. 2) is started (step 709).
The generated event data is as follows. In addition,
When the generated event data is generated, the additional information 40
For 3, the character string area 504 of the extracted candidate voice data 501 is used as it is. For example, the data type of the candidate voice data extracted for the voice portion representing the processing target is an object instance, such as “phone” of the input voice “take a phone call”. In that case (Step 7
01), event data whose event type is object selection is generated (step 702). For example, the data type of the candidate voice data extracted for the voice portion representing the processing content is the object method, such as "Take" of the input voice "Take the phone". In this case (step 703), event data whose event type is command input is generated (step 704). The data type of the candidate voice data extracted for the portion representing the embedded instruction (described later) in the input voice is an embedded instruction code. In this case (step 705), event data whose event type is command input is generated (step 706).

【0049】以上の3つのイベントデータは、それぞれ
生成すべきコマンドの処理対象又は引数としてのオブジ
ェクトインスタンス又はオブジェクトメソッドあるいは
そのコマンドの命令コードを、操作者が音声で入力する
ときに生成される。たとえば、入力音声「記憶」あるい
は「実行」に対して抽出される候補音声データのデータ
種類はプログラムコントロールとなる。この場合(ステ
ップ707)、イベント種類がプログラムコントロール
であるイベントデータを生成する(ステップ708)。
入力音声「実行」に対するイベントデータは、直前に生
成されたコマンドの実行を指示するがコマンドの生成に
は用いられない。「記憶」はコマンドの生成に用いられ
る。
The above three event data are generated when an operator inputs an object instance or an object method as a processing target or an argument of a command to be generated or an instruction code of the command by voice. For example, the data type of the candidate voice data extracted for the input voice “store” or “execute” is program control. In this case (step 707), event data whose event type is program control is generated (step 708).
The event data corresponding to the input voice “execution” instructs execution of the command generated immediately before, but is not used for generation of the command. "Remember" is used to generate a command.

【0050】1.3 マウス入力とマウスイベント発生
処理140(第8A図) 第1図のディスプレイ装置101内の表示画面102〜
104、106,108のいずれかにマウスカーソル2
01を置くことにより、画面を用いた入力可能となる。
マウスイベント発生処理はマウスによるイベント発生処
理の総称であり、以下に述べるオブジェクト選択イベン
ト発生処理304、モーションイベント発生処理30
5、ビューイベント発生処理306、プログラムコント
ロールイベント発生処理307、オブジェクトモデリン
グイベント発生処理308からなる。これらの処理30
4〜308は第8A図に示すとおり、それぞれ、表示画
面102,103,104,106,108にマウスカ
ーソル201があるときに起動される。なお、オブジェ
クト選択イベントデータ発生処理304で発生されたイ
ベントデータはコマンドの生成に用いられるが、他の処
理305,306,308により生成されるイベントデ
ータは、コマンドの生成には用いられない。処理307
によるイベントデータはコマンド生成に用いられるもの
とそでないものがある。
1.3 Mouse Input and Mouse Event Generation Process 140 (FIG. 8A) The display screens 102 to 102 in the display device 101 shown in FIG.
Mouse cursor 2 on any of 104, 106, 108
By setting 01, input using the screen becomes possible.
The mouse event generation process is a generic term for the mouse event generation process, and includes an object selection event generation process 304 and a motion event generation process 30 described below.
5, a view event generation process 306, a program control event generation process 307, and an object modeling event generation process 308. These processes 30
4 to 308 are activated when the mouse cursor 201 is on the display screens 102, 103, 104, 106, and 108, respectively, as shown in FIG. 8A. The event data generated in the object selection event data generation processing 304 is used for generating a command, but the event data generated in the other processing 305, 306, 308 is not used for generating a command. Process 307
Some event data are used for command generation and others are not.

【0051】1.3.1 オブジェクト選択イベント処
理304(第8B図) この処理は、生成すべきコマンドの処理対象又は引数と
して用いるオブジェクトインステンスを操作者がマウス
で入力するときに実行される。すなわち、操作者は入力
したいオブジェクトインスタンスを表わす、オブジェク
ト表示画面102内のアイコン上にマウスカーソル20
1を移動してマウスボタン(図示せず)を押す。このマ
ウス操作に応答して、オブジェクト選択イベント、処理
304が起動される。第8B図に示すように、まず、3
次元形状データベース123を参照してこのマウス操作
により選択されたオブジェクトインスタンスを認識して
(ステップ801)、イベント種類にオブジェクト選
択、付加情報として選択されたオブジェクトインスタン
スを表す文字列を格納したイベントデータを生成する
(ステップ802)。選択されたオブジェクトインスタ
ンスが別のオブジェクトインスタンスの構成要素である
場合には、この付加情報として、上位オブジェクトイン
スタンスの名前から選択されたオブジェクトインスタン
スの名前までをピリオド(.)で区切ってつなげた文字
列を格納する。そして、入力イベント処理126(第2
図)を起動する(ステップ803)。
1.3.1 Object Selection Event Processing 304 (FIG. 8B) This processing is executed when the operator inputs an object instance used as a processing target or an argument of a command to be generated with a mouse. That is, the operator places the mouse cursor 20 on an icon in the object display screen 102 representing the object instance desired to be input.
Move 1 and press the mouse button (not shown). In response to this mouse operation, an object selection event, processing 304, is activated. First, as shown in FIG.
The object instance selected by the mouse operation is recognized with reference to the dimensional shape database 123 (step 801), and the event data in which a character string representing the object instance selected as the event type and the selected object instance is stored as additional information is stored. Generate (Step 802). If the selected object instance is a component of another object instance, as this additional information, a character string connecting the name of the higher-level object instance to the name of the selected object instance separated by a period (.) Is stored. Then, the input event processing 126 (second
) (Step 803).

【0052】1.3.2 モーションイベント発生処理
305(第8C図) この処理はオブジェクト表示画面102内のアイコンの
移動(あるいは回転)を操作者がモーションコントロー
ル画面103を用いて指示するとときに起動される。す
なわち、第1図に示すようにモーションコントロール画
面103には6つのバリュエータ217〜222が表示
されている。このうちのどれかのバリュエータがマウス
109によって操作された場合に、第8C図に示すよう
に、イベント種類にモーションコントロール、付加情報
に操作されたバリュエータの名称とバリュエータのスラ
イダの支持ガイド上の目盛の値(すなわち、移動量又は
回転量)を格納したイベントデータを生成する(ステッ
プ901)。そして、入力イベント処理126(第2
図)を起動する(ステップ902)。なお、このバリエ
ータ操作の前には、オブジェクト表示画像102に対し
てオブジェクト選択がなされなければならない。
1.3.2 Motion event generation processing 305 (FIG. 8C) This processing is started when the operator instructs movement (or rotation) of the icons in the object display screen 102 using the motion control screen 103. Is done. That is, as shown in FIG. 1, six valuators 217 to 222 are displayed on the motion control screen 103. When one of the valuators is operated by the mouse 109, as shown in FIG. 8C, the event type is motion control, the name of the operated valuator is the additional information, and the scale on the support guide of the valuator slider. (That is, the movement amount or the rotation amount) is generated (step 901). Then, the input event processing 126 (second
) Is started (step 902). Before the variator operation, an object must be selected for the object display image 102.

【0053】1.3.3 ビューイベント発生処理30
6(第8D図) この処理ではマウス入力にビューコントロール画面10
4内の6つのバリエータ230〜235を用い、イベン
ト種類にビューコントロールを格納したイベントデータ
を生成すること以外、モーションイベント発生処理30
5と同じ処理を行う(第8D図、ステップ1001、1
002)。
1.3.3 View event generation processing 30
6 (FIG. 8D) In this process, the view control screen 10
In addition to using the six variators 230 to 235 in 4 to generate event data in which the view control is stored in the event type, the motion event generation processing 30
Perform the same processing as in FIG. 5 (FIG. 8D, steps 1001, 1
002).

【0054】1.3.4 プログラムコントロールイベ
ント発生処理307(第8E図) プログラムコントロール画面106内の「実行」ボタン
上215(第1図)にマウスカーソル201があるとき
にマウスボタン(図示せず)が押された場合には、第8
E図に示すように、イベント種類にプログラムコントロ
ール、付加情報に”execute”を格納したイベントデー
タを発生する。これは直前に完成されたコマンドの実行
を指示するのに用いられる。音声入力「実行」の場合と
同様である。同様に「記憶」ボタン216が押された場
合には、イベント種類にプログラムコントロール、付加
情報に”record”を格納したイベントデータを生成する
(ステップ1101)。そして、いずれの場合も入力イ
ベント処理126(第2図)を起動する(ステップ11
02)。「記憶」ボタン216は、オブジェクト画面1
02に表示されるアイコンあるいはカメラ(図示せず)
を移動あるいは回転したあと、その移動あるいは回転を
実行するコマンドを生成するときに押される。音声入力
「記憶」も同様に用いられる。
1.3.4 Program Control Event Generation Process 307 (FIG. 8E) When the mouse cursor 201 is positioned on the "execute" button 215 (FIG. 1) in the program control screen 106, a mouse button (not shown) ) Is pressed, the eighth
As shown in Fig. E, event data in which program control is stored in the event type and "execute" is stored in the additional information is generated. This is used to direct the execution of the command just completed. This is the same as the case of the voice input “execute”. Similarly, when the “store” button 216 is pressed, event data in which program control is stored as the event type and “record” is stored as the additional information is generated (step 1101). In any case, the input event processing 126 (FIG. 2) is started (step 11).
02). The “store” button 216 is displayed on the object screen 1
Icon or camera displayed on 02 (not shown)
Pressed to generate a command to execute the movement or rotation after moving or rotating. The voice input "memory" is used as well.

【0055】1.3.5 オブジェクトモデリングイベ
ント発生処理308(第8図(F)) 第8図(F)に示すように、オブジェクトモデリング画
面108でのマウス入力はイベント種類にオブジェクト
モデリング、付加情報に入力情報を格納したイベントデ
ータを生成する(ステップ1201)。そして、入力イ
ベント処理126(第2図)を起動する(1202)。
ここに示したイベントデータは、オブジェクトインスタ
ンスの作成又は修性正に用いられるもので、コマンドの
作成には直接関係しない。
1.3.5 Object Modeling Event Generation Processing 308 (FIG. 8 (F)) As shown in FIG. 8 (F), the mouse input on the object modeling screen 108 changes the event type into object modeling and additional information. Then, event data in which the input information is stored is generated (step 1201). Then, the input event processing 126 (FIG. 2) is started (1202).
The event data shown here is used for creating or modifying an object instance and is not directly related to creating a command.

【0056】1.4 キーボードイベント発生処理30
9(第9図) キーボード110(第1図)による入力は一つのキー操
作ごとにキーボードイベント発生処理141に送られ
る。第9図に示すように、マウスカーソル201がオブ
ジェクトモデリング画面108にある場合には(ステッ
プ1301)、イベント種類にオブジェクトモデリン
グ、付加情報にキーコードを格納したイベントデータを
生成する(ステップ1302)。マウスカーソル201
がオブジェクトモデリング画面108になく、キーコー
ドが改行コードを含まない場合には(1303)、イベ
ント種類にキーボード、付加情報にキーコード又はキー
コードを格納したイベントデータを生成する(ステップ
1304)。改行コードが入力されない状態でのキー入
力は、コマンド作成に必要な情報の入力であるがコマン
ド作成のための最後の入力でないことを示している。し
たがってこのイベントデータの付加情報は生成すべきコ
マンドの一部のデータとして利用される。マウスカーソ
ル201がオブジェクトモデリング画面108になく、
キーコードが改行コードを末尾に含まない場合には(ス
テップ1303)、イベント種類に命令入力、付加情報
は空のイベントデータを生成する(ステップ130
5)。改行コードは、コマンド生成のために必要な最後
の情報すなわち、命令コードの入力が完了したことを示
すために操作者により入力される。したがってこのイベ
ントデータは、それまでの入力データによりコマンドを
完成すべきことを指示する。そして、入力イベント処理
を起動する(ステップ1306)。
1.4 Keyboard Event Generation Process 30
9 (FIG. 9) An input from the keyboard 110 (FIG. 1) is sent to the keyboard event generation processing 141 for each key operation. As shown in FIG. 9, when the mouse cursor 201 is on the object modeling screen 108 (step 1301), event data in which an object type is stored as an event type and a key code is stored as additional information is generated (step 1302). Mouse cursor 201
Is not in the object modeling screen 108 and the key code does not include a line feed code (1303), the event type storing the keyboard as the event type and the key code or the key code as the additional information is generated (step 1304). A key input in a state where a line feed code is not input indicates that information necessary for command creation is input but is not the last input for command creation. Therefore, the additional information of the event data is used as part of data of a command to be generated. The mouse cursor 201 is not on the object modeling screen 108,
If the key code does not include a line feed code at the end (step 1303), a command is input for the event type, and empty event data is generated for the additional information (step 1303).
5). The line feed code is input by the operator to indicate the last information necessary for generating the command, that is, the completion of the input of the instruction code. Therefore, this event data indicates that the command should be completed with the input data up to that time. Then, input event processing is started (step 1306).

【0057】1.5 入力イベント処理126 入力イベント処理126は第2図に示すように音声イベ
ント発生処理143と、マウスイベント発生処理140
と、キーボードイベント発生処理141の各イベント発
生処理により起動されると、そこで生成されたイベント
データ401を入力イベント待ち行列119に加える。
1.5 Input Event Processing 126 The input event processing 126 includes a voice event generation processing 143 and a mouse event generation processing 140 as shown in FIG.
Is activated by the respective event generation processes of the keyboard event generation process 141, the event data 401 generated there is added to the input event queue 119.

【0058】入力イベント待ち行列119は先入り先出
し待ち行列として実現してあり、入力イベント処理12
6はイベントデータの格納を入力イベント待ち行列11
9の最後から行う。一方、次に述べるイベントデータを
取り出すイベントディスパッチ処理127は、入力イベ
ント待ち行列119のはじめに格納されたイベントデー
タから取り出す。このことによって、入力データは損な
われることなく、発生順に処理される。
The input event queue 119 is implemented as a first-in, first-out queue.
6 is an event queue 11 for storing event data.
Start from the end of 9. On the other hand, an event dispatching process 127 for extracting event data described below extracts event data from the first stored event data in the input event queue 119. This allows the input data to be processed in chronological order without loss.

【0059】2.入力イベントの解釈および処理 以上のようにして入力イベント待ち行列119に格納さ
れたイベントデータの各々はイベントディスパッチ処理
127により一つづつ解釈され、処理される。
2. Interpretation and Processing of Input Event Each of the event data stored in the input event queue 119 as described above is interpreted and processed one by one by the event dispatch processing 127.

【0060】2.1 コマンド(第10図) 作成するべきプログラムを構成するコマンド1701の
フォーマットは第17図に示すような構成になってい
る。すなわち、それぞれ文字列からなる3つの部分から
なり、それぞれの部分は空白文字で区切られている。
2.1 Command (FIG. 10) The format of the command 1701 constituting the program to be created is as shown in FIG. That is, each part is composed of three parts composed of character strings, and each part is separated by a blank character.

【0061】(1)はじめの部分1702は処理対称で
ある。これはオブジェクト指向モデルでいうところの指
示オブジェクトに相当する。ここには処理すべきオブジ
ェクトインスタンスの名称が格納される。このオブジェ
クトインスタンスは、オブジェクト自身のオブジェクト
インスタンスの名称か、そのオブジェクトインスタンス
のある構成要素の名称か、そのオブジェクトインスタン
スのスロットの名称か、あるいは処理対象は存在しない
かを示す文字列のいずれかが格納される。処理対象が存
在しない場合は、特殊な組み込みコマンドに限られる。
ここでオブジェクトインスタンスの構成要素名は、オブ
ジェクトインスタンス名とその構成要素名の間にピリオ
ド(.)を置いたもので表現され、また、オブジェクト
インスタンスのスロット名は、オブジェクトインスタン
ス名とスロット名の間にシャープ(#)を置いたもので
表現される。このようにして、システム内で一意に名前
が与えられる。
(1) The first part 1702 is processing symmetric. This corresponds to a pointing object in the object-oriented model. Here, the name of the object instance to be processed is stored. This object instance contains the name of the object instance of the object itself, the name of a component of the object instance, the name of the slot of the object instance, or a character string indicating whether there is no processing target Is done. If there is no processing target, it is limited to special built-in commands.
Here, the component name of the object instance is expressed by putting a period (.) Between the object instance name and the component name, and the slot name of the object instance is defined between the object instance name and the slot name. It is expressed by a sharp (#). In this way, a unique name is given in the system.

【0062】(2)次の部分1703は引数である。引
数1703は任意個の引数オブジェクトからなる。引数
オブジェクトの間は空白文字で区切られる。引数の個数
はメソッドによって異なる。引数オブジェクトは先に述
べたオブジェクトインスタンス、またはアトムかのいず
れかである。アトムは整数か浮動小数点数か文字列のい
ずれかである。
(2) The next part 1703 is an argument. The argument 1703 is made up of an arbitrary number of argument objects. Argument objects are separated by white space. The number of arguments depends on the method. The argument object is either an object instance as described above or an atom. Atoms are either integers, floating point numbers, or strings.

【0063】(3)3つめの部分1704は命令コード
である。命令コード1704はオブジェクトインスタン
スのメソッド名か、組み込み命令コードかのいずれかで
ある。
(3) The third part 1704 is an instruction code. The instruction code 1704 is either a method name of an object instance or a built-in instruction code.

【0064】コマンドバッファ120はコマンド170
1の一時的格納場所であり、ここに後述するように一つ
又は複数のイベントデータ又はそれぞれの一つの一部が
前詰めで格納され、一つのコマンドが完成される。
The command buffer 120 stores the command 170
One temporary storage location, in which one or a plurality of event data or a part of each of them is stored left justified as described later, and one command is completed.

【0065】但し、コマンド作成に用いられるイベント
データは、イベント種類がオブジェクト選択、命令入力
あるいはキーボードのもののみである。
However, the event data used to create the command is only for the event type of object selection, command input or keyboard.

【0066】2.2 コマンド待ち行列121(第11
図) 第11図に示すように、コマンド待ち行列121はコマ
ンドバッファ120を用いて完成されたコマンドを複数
個、先入れ先出し待ち行列として保持するものである。
コマンド待ち行列1801にコマンドを加える場合に
は、最後に加えられたコマンドの次に加えられ、コマン
ド待ち行列1801からコマンドを取り出す場合には、
その中で一番はじめに加えられたコマンドを取り出す。
コマンド待ち行列1801はプログラムの実行状況によ
って生成されたり、消去される。
2.2 Command Queue 121 (Eleventh
As shown in FIG. 11, the command queue 121 holds a plurality of commands completed using the command buffer 120 as a first-in first-out queue.
When a command is added to the command queue 1801, it is added next to the last command added, and when a command is taken out from the command queue 1801,
Take out the first command added.
The command queue 1801 is created or deleted depending on the execution status of the program.

【0067】2.3 コマンド待ち行列スタック122
(第12図) 第12図に示すように、コマンド待ち行列スタック12
2には、コマンド待ち行列121を複数個格納するスタ
ックであり、システム内に1つだけ用意される。スタッ
クに対する操作にはプッシュとポップとがあり、プッシ
ュは一番最近プッシュされたコマンド待ち行列の後に新
たなコマンドを加えるものであり、ポップは一番最近に
プッシュされたコマンド待行列を取り出す。また、スタ
ックの底には初期コマンド待ち行列1903が置かれ
る。
2.3 Command Queue Stack 122
(FIG. 12) As shown in FIG.
Reference numeral 2 denotes a stack for storing a plurality of command queues 121, and only one is prepared in the system. Operations on the stack include push and pop, where push adds a new command after the most recently pushed command queue, and pop removes the most recently pushed command queue. An initial command queue 1903 is placed at the bottom of the stack.

【0068】2.4 イベントディスパッチ処理127
(第13図) イベントディスパッチ処理127は第13図に示すよう
に、入力イベント待ち行列119(第2図)の先頭から
1つずつイベントデータをとりだし(ステップ140
1)、イベント種類によってそのイベントデータの処理
を以下のように選択する。なお、イベント待ち行列11
9が空の場合には、何もしない。イベント種類がキーボ
ードなら(ステップ1402)、このイベントデータ
は、キーボンドイベント発生処理309について説明し
たように、コマンド作成用のデータであるが作成のため
の最後のデータでない。つまり、このイベントデータの
付加情報のキーコードは、処理対策又は引数を表わして
いる。したがってこの付加情報のキーコードをコマンド
バッファ120に格納する(ステップ1403)。格納
位置は、コマンドバッファ120内のなるべく前方の空
き領域。一方、イベント種類がオブジェクト選択、命令
入力モーションコントロール、ビューコントロール、、
プログラムコントロール、オブジェクトモデリングであ
るなら(ステップ1410〜1415)それぞれ、オブ
ジェクト選択処理130、命令入力処理131モーショ
ンコントロール処理128、ビューコントロール処理1
29、、プログラムコントロール処理132、オブジェ
クトモデリング処理133を起動する(ステップ140
4−1409)。オブジェクト選択処理130、命令入
力処理131では後述するようにコマンドの作成のため
に、イベントデータをコマンドバッファ120に格納さ
れる。なお、ステップ1403、あるいはステップ14
10−1415が終了すれば再び入力イベント待ち行列
119(第2図)の先頭のイベントの処理に戻る。
2.4 Event Dispatch Process 127
(FIG. 13) As shown in FIG. 13, the event dispatching process 127 fetches event data one by one from the head of the input event queue 119 (FIG. 2) (step 140).
1) The processing of the event data is selected as follows according to the event type. The event queue 11
If 9 is empty, do nothing. If the event type is a keyboard (step 1402), this event data is data for command creation but not the last data for creation as described for the key bond event generation processing 309. That is, the key code of the additional information of the event data indicates a processing measure or an argument. Therefore, the key code of this additional information is stored in the command buffer 120 (step 1403). The storage location is a free space as much as possible in the command buffer 120. On the other hand, if the event type is object selection, command input motion control, view control,
If it is program control or object modeling (steps 1410 to 1415), respectively, an object selection process 130, a command input process 131, a motion control process 128, and a view control process 1
29, the program control process 132 and the object modeling process 133 are started (step 140)
4-1409). In the object selection process 130 and the command input process 131, event data is stored in the command buffer 120 for creating a command as described later. Step 1403 or step 14
Upon completion of 10-1415, the process returns to the processing of the first event in the input event queue 119 (FIG. 2).

【0069】2.5 オブジェクト選択処理130(第
14図) イベントデイスパッチ処理127で解釈されたイベント
データのイベント種類がオブジェクト選択であるとき、
この処理130が起動される。このようなイベントデー
タは、既に述べたように、マウスを用いて、操作者がコ
マンドの処理対象又は引数に用いられるべきオブジェク
トインスタンス等を選択したときに生成される。オブジ
ェクト選択処理130では第14図に示すようにイベン
トディスパッチ処理127から送られてくるイベントデ
ータ内の付加情報(これは処理対象又は引数を表わす)
に引き続いて空白文字列をつけ加えて、コマンドバッフ
ァ120内に前詰めで格納する(ステップ2001)。
2.5 Object Selection Process 130 (FIG. 14) When the event type of the event data interpreted in the event dispatch process 127 is object selection,
This processing 130 is started. As described above, such event data is generated when the operator uses the mouse to select a command processing object or an object instance to be used as an argument. In the object selection process 130, as shown in FIG. 14, additional information in the event data sent from the event dispatch process 127 (this indicates a process target or an argument)
Then, a blank character string is added, and the data is stored in the command buffer 120 with the MSB justified (step 2001).

【0070】2.6 命令入力処理131(第15図) イベントディスパッチ処理127で解釈されたイベント
データのイベント種類が命令入力であるとき、この処理
131が起動される。このようなイベントデータは、既
に述べたように作成すべきコマンドに用いる情報の内の
最後の情報(すなわち、命令コード)の入力ト同時ある
いはそれの入力後の入力により生成されるもので、音声
入力装置111あるいはキーボードからの操作者の入力
に応答して生成される。命令入力処理131では第15
図に示すようにイベントディスパッチ処理127から送
られてくるイベントデータの付加情報(この末尾は命令
コードである)をコマンドバッファ120内に前詰めで
コマンドを完成する(ステップ2101)。さらにこの
完成されたコマンドをコマンド待ち行列スタック122
のトップにあるコマンド待ち行列の最後に加え(ステッ
プ2102)、コマンドバッファ120をクリアする
(ステップ2103)。
2.6 Command Input Process 131 (FIG. 15) When the event type of the event data interpreted in the event dispatch process 127 is a command input, this process 131 is started. As described above, such event data is generated by inputting the last information (that is, an instruction code) of information used for a command to be created at the same time or after inputting the same. Generated in response to an operator input from the input device 111 or the keyboard. In the instruction input process 131, the fifteenth
As shown in the figure, the command is completed by adding the additional information (the end of which is an instruction code) of the event data sent from the event dispatching process 127 in the command buffer 120 (step 2101). The completed command is further transferred to the command queue stack 122.
Is added to the end of the command queue at the top (step 2102), and the command buffer 120 is cleared (step 2103).

【0071】2.7 モーションコントロール処理12
8(第16図) この処理はイベントデイスパッチ処理127で解釈され
たイベントデータの種類がモーションコントロールのと
きに起動される。すでに述べたように、この種のイベン
トデータは、操作者がモーションコントロール画面10
3内のバリュエータを操作し、オブジェクト表面画面1
02内のアイコンを移動あるいは回転するときに起動さ
れる。既述のように、このバリュータ操作の前には、移
動又は変形するアイコンを指定するためのオブジェクト
選択がなされていなければならない。つまり、このオブ
ジェクト選択の結果としてコマンドバッファ3120内
の処理対象部に、モーションコントロールの対象となる
オブジェクトインスタンスの名称がすでに格納されてい
なければならない。このモーションコントロール処理1
28では、この処理対称部により指定されたオブジェク
トインスタンスに対するアイコンをイベントディスパッ
チ処理127から与えられたイベントデータの付加情報
に格納してあるバリュエータ名と移動量あるいは回転角
に従って移動又は回転する。移動又は回転は3次元形状
データベース123内の図形データを修正することによ
り実現される。なお、コマンドバッファ120に処理対
象が格納されていない場合には、以下に示す処理は行な
わない。より具体的には、第16図に示すように、この
バリュエータ名がx方向移動217の場合には(ステッ
プ1502)、処理対象のオブジェクトインスタンス属
性をオブジェクトインスタンスライブラリ124から調
べ、”移動可能”であることを確認して(ステップ15
05)バリュエータの値に応じて処理対象で示されるオ
ブジェクトインスタンスに対応するアイコンをX方向に
移動させる(ステップ1506)。ステップ1505に
おいて処理対象の属性が移動可能でない場合でも、処理
対象が何らかのオブジェクトの構成要素の場合には、そ
の構成要素の上位の要素の属性をオブジェクトインスタ
ンスライブラリ124から調べてそれが移動可能なら、
その上位の要素を移動可能と判断しこれを移動させる。
オブジェクトの上位構成要素をたどっていっても移動可
能なものがない場合は何も処理を行わない。バリュエー
タがy方向位移動218、z方向移動219の場合も、
同様に処理する(ステップ1503−1506)。バリ
ュエータ名がx軸周り回転220の場合には、処理対象
の属性を調べ(ステップ1507)、”回転可能”であ
ることを確認して(ステップ1510)バリュエータの
値に応じて処理対象をX 軸の周りに回転させる(ステッ
プ1511)。なお、ステップ1510の判定において
処理対象の属性が”回転可能”でない場合でも、指示対
象がオブジェクトの構成要素の場合には、構成要素の上
位の要素の属性を調べ、”回転可能”なものがあれば、
指示対象を”回転可能”と判断し、ステップ1511で
この上位の要素を回転させることによって指示対象を回
転させる。オブジェクトの上位構成要素をたどっていっ
ても”回転可能”なものがない場合には、何も処理を行
わない。この上の回転処理はオブジェクトライブラリ1
24の内容を参照することによって行われる。バリュエ
ータがy軸周り回転221,z軸周り回転222の場合
も、同様に処理する(ステップ1508−1511)。
2.7 Motion Control Processing 12
8 (FIG. 16) This process is started when the type of event data interpreted by the event dispatch process 127 is motion control. As described above, this type of event data is transmitted to the motion control screen 10 by the operator.
Operate the valuator in 3 and display the object surface screen 1
It is activated when moving or rotating the icon in 02. As described above, before this value operation, an object selection for designating an icon to be moved or deformed must be performed. That is, as a result of this object selection, the name of the object instance to be subjected to motion control must already be stored in the processing target portion in the command buffer 3120. This motion control processing 1
At 28, the icon corresponding to the object instance specified by the processing symmetric part is moved or rotated according to the valuator name and the movement amount or the rotation angle stored in the additional information of the event data given from the event dispatch processing 127. The movement or rotation is realized by modifying the graphic data in the three-dimensional shape database 123. If no processing target is stored in the command buffer 120, the following processing is not performed. More specifically, as shown in FIG. 16, when the valuator name is the x-direction movement 217 (step 1502), the object instance attribute to be processed is checked from the object instance library 124, and "movable" is determined. Confirm that there is (Step 15
05) The icon corresponding to the object instance indicated as the processing target is moved in the X direction according to the value of the valuator (step 1506). Even if the attribute to be processed is not movable in step 1505, if the object to be processed is a component of some object, the attribute of an element higher than the component is checked from the object instance library 124, and if it is movable,
The upper element is determined to be movable and is moved.
If there is nothing that can be moved even when following the upper component of the object, no processing is performed. When the valuator is moved in the y direction 218 and moved in the z direction 219,
The same processing is performed (steps 1503 to 1506). If the valuator name is rotation 220 around the x-axis, the attribute of the processing target is checked (step 1507), and it is confirmed that it is “rotatable” (step 1510), and the processing target is changed to the X-axis according to the value of the valuator. (Step 1511). Note that, even if the attribute of the processing target is not “rotatable” in the determination in step 1510, if the instruction target is a component of the object, the attribute of a higher element of the component is checked, and the attribute of “rotatable” is determined. if there is,
It is determined that the pointing target is “rotatable”, and in step 1511, the pointing target is rotated by rotating this higher-order element. If there is nothing that is “rotatable” even when following the upper component of the object, no processing is performed. Rotation processing on this is object library 1
24 is performed by referring to the contents of the description. The same processing is performed when the valuator is rotated around the y-axis 221 and rotated around the z-axis 222 (steps 1508 to 1511).

【0072】2.8 ビューコントロール処理129
(第17図) ビューコントロール処理129は、第17図に示すよう
にカメラ(図示せず)の位置、その視野の水平方向、垂
直方向を操作されたバリュエータの種類、バリュエータ
のスライダ目盛に応じて制御する(ステップ1601−
1604、1650、1651)。6つのバリュエータ
230−235(第1図)はそれぞれ、前進命令、上昇
命令、水平移動命令、首上げ命令、首振り命令、回転命
令を意味する。例えば、前進バリュエータ230が操作
された場合(ステップ1601)には、オブジェクトイ
ンスタンスカメラ2780(第3図C)の位置スロット
値2791を、方向スロット値2792の方向に、イベ
ントデータの付加情報の値のスライダ目盛の値に応じて
変化させる(ステップ1602)。オブジェクトインス
タンスカメラ2780が移動、回転することによってオ
ブジェクト表示画面102で、好きなビューを選択する
ことができる。この移動、または回転はオブジェクトラ
イブラリ124、3次元形状データベース123を参照
して行われ、移動または回転後にはそのオブジェクトに
対する3次元図形データが更新されるのはモーションコ
ントロール処理128の場合と同じである。
2.8 View Control Processing 129
(FIG. 17) The view control process 129 is performed according to the position of the camera (not shown), the type of the valuator whose horizontal and vertical directions are operated, and the slider scale of the valuator as shown in FIG. Control (step 1601-
1604, 1650, 1651). The six valuators 230-235 (FIG. 1) mean a forward command, a lift command, a horizontal movement command, a head-up command, a swing command, and a rotation command, respectively. For example, when the forward valuator 230 is operated (step 1601), the position slot value 2791 of the object instance camera 2780 (FIG. 3C) is changed in the direction of the direction slot value 2792 to the value of the additional information of the event data. The value is changed according to the value of the slider scale (step 1602). By moving and rotating the object instance camera 2780, a desired view can be selected on the object display screen 102. This movement or rotation is performed with reference to the object library 124 and the three-dimensional shape database 123. After the movement or rotation, the three-dimensional graphic data for the object is updated in the same manner as in the case of the motion control processing 128. .

【0073】2.9 プログラムコントロール処理13
2(第18図) この処理は、イベントテイスパッチ処理127で解釈さ
れたイベントデータ内のデータ内のデータ種類がプログ
ラムコントロールのときに起動される。この種のイベン
トは、すでに述べないように、音声入力、マウス入力あ
るいはキー入力により「記憶」あるいは「実行」が指示
されたときに生成される。このプログラムコントロール
処理132は第18図に示すように、そのイベントデー
タ内の付加情報”record”なら(ステップ2201)、
状態記憶処理134(第2図)を起動し(ステップ22
04)、その付加情報が”execute”なら(ステップ2
202)オブジェクトメソッド実行処理135(第2
図)を起動する(ステップ2203)。
2.9 Program Control Process 13
2 (FIG. 18) This process is started when the data type in the event data interpreted by the event taste patch process 127 is program control. As described above, this type of event is generated when "store" or "execute" is instructed by voice input, mouse input, or key input. As shown in FIG. 18, this program control processing 132 is executed if the additional information “record” in the event data is present (step 2201).
The state storage process 134 (FIG. 2) is started (step 22).
04), if the additional information is “execute” (step 2
202) Object method execution processing 135 (second
) Is started (step 2203).

【0074】2.10 オブジェクトモデリング処理1
33(第19図) この処理はイベントデイスパッチ処理で解釈されたイベ
ントデータ内母データ種類がオブジェクトモデリングの
ときに起動される。この種のイベントデータは、すでに
述べたようにオブジェクトを新しく定義又は修正すると
きにマウス入力を用いて生成される。オブジェクトモデ
リング処理133は1つの独立したアプリケーションプ
ログラムである。ここでは、まず第19図に示すように
各オブジェクトを表す多面体の集合およびそれぞれの属
性を新たに定義する(ステップ2601)。次にこのオ
ブジェクトを第3A〜3C図に例示したように複数の要
素から階層的に構成していき、それぞれの要素にたいし
て新しいオブジェクトを定義する。この時、構成要素に
移動可能属性か回転可能属性かを指定する(ステップ2
602)。次に、オブジェクト名、オブジェクトスロッ
ト名、オブジェクトスロットに入るデータ型を指定する
(ステップ2603)。こうしてできた、オブジェクト
を表わす図形に関する情報およびオブジェクト自身に関
する情報をそれぞれ3次元形状データベース123、オ
ブジェクトライブラリ124に格納する(ステップ26
04)。任意の時点で、オブジェクトモデリング処理1
33で既に定義してあるオブジェクトを編集することも
できる。例えば、第3A図の人物オブジェクト2703
の下位の要素である右手2710のまた下位要素とし
て、電話2803の下位要素である受話器2805を登
録するように階層を作れば、人間の手の動きにしたがっ
て受話器が動作することになり、結果として人間が受話
器をとったことを実現できる。後で述べる組込命令li
nkはこのようにして実現している。オブジェクトモデ
リング処理で定義されたオブジェクトの名称、形状、属
性はオブジェクトモデリング画面108(第1図)の領
域236,237,238に表示される。作成ずみのオ
ブジェクトを修正する場合において、そのオブジェクト
に対して定義ずみのメソッドがある場合には、そのメソ
ッドの名称が領域239に表示される。
2.10 Object Modeling Processing 1
33 (FIG. 19) This processing is started when the mother data type in the event data interpreted by the event dispatch processing is object modeling. This type of event data is generated using mouse input when newly defining or modifying an object as described above. The object modeling process 133 is one independent application program. Here, first, as shown in FIG. 19, a set of polyhedrons representing each object and respective attributes are newly defined (step 2601). Next, this object is hierarchically composed of a plurality of elements as illustrated in FIGS. 3A to 3C, and a new object is defined for each element. At this time, it is specified whether the component is movable or rotatable (step 2).
602). Next, an object name, an object slot name, and a data type included in the object slot are specified (step 2603). The information on the graphic representing the object and the information on the object itself are stored in the three-dimensional shape database 123 and the object library 124, respectively (step 26).
04). At any time, object modeling process 1
The object already defined in step 33 can be edited. For example, the person object 2703 in FIG. 3A
If a hierarchy is created so that the handset 2805, which is a lower element of the telephone 2803, is registered as a lower element of the right hand 2710, which is a lower element of, the receiver operates according to the movement of a human hand, It is possible to realize that a human picked up the receiver. Embedded instruction li described later
nk are thus realized. The names, shapes, and attributes of the objects defined in the object modeling process are displayed in areas 236, 237, and 238 of the object modeling screen 108 (FIG. 1). When modifying a created object, if there is a method defined for the object, the name of the method is displayed in area 239.

【0075】3.状態記憶処理134(第20図) この処理はすでに述べたごとく、作成ずみのコマンドの
記憶が操作者により指示されたときに、プログラムコン
トロール処理132により起動される。この状態記憶処
理134では、まずコマンドバッファ120に処理対象
を示すデータがあるかどうかを調べる(ステップ240
1)。処理対象を示すデータが存在する場合には、処理
対象用状態記憶処理2402(第21図)を起動する
(ステップ2402)。このデータが存在しないのはビ
ューコントロール画面104を用いてカメラ(図示せ
ず)の視野を変化させたあと現在の状態記憶指示が操作
者により与えられたときであり、オブジェクトインスタ
ンスカメラの状態を記憶する。すなわち、ビューコント
ロール処理129によって操作されたカメラ(図示せ
ず)の現在の状態(位置、方向、上方向を、オブジェク
トライブラリ124中のそれに対するインスタンス27
80(第3c図)を参照して調べる(ステップ240
3)。そして、コマンドバッファ120に、処理対象と
してカメラオブジェクトインスタンス2780、引数と
してカメラの現在の位置、方向および、上方向、命令コ
ードとしてcamera_setを格納してカメラの視野セット用
のコマンドを形成し、これをコマンド待ち行列スタック
122の先頭のコマンド待ち行列の末尾に加える(ステ
ップ2404)。命令コードcamera_setは、
カメラオブジェクトインスタンス2780に対応するカ
メラ(図示せず)をコマンドの引数で指定された方向に
配置させる組み込み命令に対する命令コードである。一
方、判定2401の結果、処理対象を示すデータがコマ
ンドバッファ120中にあると判断されたのは、現在の
状態記憶指示に先立って、操作者により、モーションコ
ントロール画面103(第1図)を用いたマウス入力に
より、オブジェクト表示画面102中のアイコンの移動
又は回転が指示がなされたときである。したがって、処
理対象用状態記憶処理240が起動されたとき、第21
図に示すように、コマンドバッファ120中のデータで
示される処理対象が移動可能かどうかと回転可能かどう
かを処理対象のオブジェクトインスタンスに関する属性
データから調べる(ステップ2501、2504)。移
動可能性又は回転可能性の判断においては、「2.7
モーションコントロール処理129」で述べたと同じよ
うにして処理対象のオブジェクトインスタンス又はその
下位の構成要素たるオブジェクトインスタンスから移動
又は回転可能なものをそれぞれ移動対象、回転対象とし
て選ぶ。移動あるいは回転可能な場合にはそれぞれ、選
択された移動対象オブジェクトインスタンスの現在位置
と回転対象オブジェクトインスタンスの現在回転角を求
める(ステップ2502)。そして、移動、回転の各々
に対して、コマンドバッファ120に移動又は回転対象
オブジェクトインスタンス、求めた現在位置又は回転
角、および、移動又は回転に関係する特殊命令コードtr
anslate,又はrotateを格納し、移動又は回転用のコマ
ンドを生成する。それぞれのコマンドをコマンド待ち行
列スタック122の先頭のコマンド待ち行列の末尾に加
える(ステップ2502)。この処理により、操作者が
指示したアイコンの移動、回転を実行するコマンドをプ
ログラム中に埋め込むことができる。
3. State storage processing 134 (FIG. 20) As described above, this processing is started by the program control processing 132 when storage of a created command is instructed by the operator. In the state storage processing 134, first, it is checked whether or not there is data indicating a processing target in the command buffer 120 (step 240).
1). If data indicating the processing target exists, the processing target state storage processing 2402 (FIG. 21) is started (step 2402). This data does not exist when the current state storage instruction is given by the operator after changing the field of view of the camera (not shown) using the view control screen 104, and the state of the object instance camera is stored. I do. That is, the current state (position, direction, and upward direction) of the camera (not shown) operated by the view control process 129 is stored in the instance 27 corresponding to the current state in the object library 124.
80 (FIG. 3c) to check (step 240).
3). Then, the command buffer 120 stores the camera object instance 2780 as a processing target, the current position, direction, and upward direction of the camera as an argument, and camera_set as an instruction code, and forms a command for a camera view set. It is added to the end of the command queue at the head of the command queue stack 122 (step 2404). The instruction code camera_set is
This is an instruction code for a built-in instruction for arranging a camera (not shown) corresponding to the camera object instance 2780 in the direction specified by the command argument. On the other hand, as a result of the determination 2401, it is determined that the data indicating the processing target is in the command buffer 120 because the operator uses the motion control screen 103 (FIG. 1) prior to the current state storage instruction. This is when an instruction to move or rotate an icon in the object display screen 102 is given by a mouse input. Therefore, when the processing target state storage process 240 is activated,
As shown in the figure, whether the processing target indicated by the data in the command buffer 120 is movable or rotatable is checked from the attribute data relating to the processing target object instance (steps 2501 and 2504). In determining the possibility of movement or rotation, refer to “2.7
In the same manner as described in "Motion control processing 129", an object instance that can be moved or rotated is selected from the object instance to be processed or the object instance that is a lower-order component as the object to be moved and the object to be rotated. If the object can be moved or rotated, the current position of the selected moving object instance and the current rotation angle of the rotating object instance are obtained (step 2502). Then, for each of the movement and the rotation, the object object to be moved or rotated, the obtained current position or the rotation angle, and the special instruction code tr related to the movement or the rotation are stored in the command buffer 120.
Stores anslate or rotate and generates commands for movement or rotation. Each command is added to the end of the command queue at the head of the command queue stack 122 (step 2502). By this processing, a command for executing movement and rotation of the icon designated by the operator can be embedded in the program.

【0076】4.オブジェクトメソッドの実行 本システムでは、オブジェクトメソッドの実行とオブジ
ェクトメソッドのプログラミングは同時に行うことがで
きる。これを実現するシステム要素について、以下に述
べる。
4. Execution of Object Method In this system, execution of an object method and programming of an object method can be performed simultaneously. The system elements that achieve this are described below.

【0077】4.1 オブジェクトメソッド実行処理1
35(第22図) 第22図に示すように、オブジェクトメソッド実行処理
135が起動されると、呼出しコマンド(この処理の対
象となるコマンド)に従って以下の処理を行う。
4.1 Object Method Execution Processing 1
35 (FIG. 22) As shown in FIG. 22, when the object method execution processing 135 is activated, the following processing is performed in accordance with a call command (a command targeted for this processing).

【0078】(1)そのコマンドが先行して生成された
一連のコマンドの実行が成功したならプログラムの実行
を終了することを指示するコマンドsuccess_endなら
(ステップ2801)、メソッド実行終了処理240
(第23図)を起動し(ステップ2802)、成功終了
を報告して(ステップ2803)制御を戻す。
(1) If execution of a series of commands generated in advance of the command is successful, if the command is a command success_end for instructing to end the program execution (step 2801), method execution end processing 240
(FIG. 23) is started (step 2802), a success end is reported (step 2803), and control is returned.

【0079】(2)そのコマンドがsuccess_endでない
とき、そのコマンドの命令用のコードが組み込み命令コ
ードかどうかを調べ(ステップ2804)、組み込み命
令用のものであれば、その組み込み命令をあらかじめそ
の命令に対して定めら芦プログラムライブラリを用いて
実行する(ステップ2806)。そして実行が成功すれ
ば(ステップ2807)、成功終了を報告して(ステッ
プ2809)制御を戻し、実行が成功しなければ失敗終
了を報告して(ステップ2808)制御を戻す。
(2) If the command is not success_end, it is checked whether or not the instruction code of the command is an embedded instruction code (step 2804). Then, the program is executed using the reed program library (step 2806). If the execution is successful (step 2807), the success is reported (step 2809), and control is returned. If the execution is not successful, the failure is reported (step 2808), and the control is returned.

【0080】呼出しコマンドががsuccess_en
dでなく、またその命令コードが組み込み命令コードで
ない場合には、そのコマンドはユーザが定義したもので
あるか、又はこれから定義するものであり、以下の処理
を行う。
If the call command is success_en
If the instruction code is not d and the instruction code is not a built-in instruction code, the command is defined by the user or is to be defined, and the following processing is performed.

【0081】(1)そのコマンドの処理対称で指定され
るオブジェクトインスタンスに対してすでに定義されて
いるメソッドの中に未実行のメソッドが存在するかどう
かを調べる(ステップ2811)。存在しなければ、オ
ブジェクトメソッド生成処理250を起動し(ステップ
2812)、成功終了を報告して(ステップ2813)
制御を戻す。存在する場合には、そのメソッドをユーザ
が定義していることを意味し、これを実行するために次
に進む。
(1) It is checked whether an unexecuted method exists among the methods already defined for the object instance specified by the processing of the command (step 2811). If it does not exist, the object method generation processing 250 is started (step 2812), and successful completion is reported (step 2813).
Return control. If it does, it means that the method has been defined by the user and proceeds to perform this.

【0082】(2)オブジェクトに対してユーザが定義
した未実行のメソッドの中で一番はじめに定義されたも
のを選択する(ステップ2815)。この選択のために
は、各オブジェクトに対して複数のメソッドが定義され
るときには、それぞれを定義順に並べて、オブジェクト
インスタンスライブラリに並べておく。そして、選択さ
れたメソッドの引数として指定されたオブジェクトイン
スタンスを呼出しコマンドのオブジェクトインスタンス
により置き換える(ステップ2816)。
(2) The first one of the unexecuted methods defined by the user for the object is selected (step 2815). For this selection, when a plurality of methods are defined for each object, they are arranged in the order of definition and arranged in the object instance library. Then, the object instance specified as the argument of the selected method is replaced with the object instance of the call command (step 2816).

【0083】(3)そのメソッドを定義しているコマン
ド列の中の未実行のコマンドの中で、はじめのものを選
択し(ステップ2817)、このコマンドを呼び出しコ
マンドとしてオブジェクトメソッドを実行する(ステッ
プ2818)。
(3) From among the unexecuted commands in the command string defining the method, the first one is selected (step 2817), and the object method is executed using this command as a call command (step 2817). 2818).

【0084】(4)そのメソッドにまだ未実行のコマン
ドが存在するかどうか調べる(ステップ2819)。存
在しないなら、そのメソッドの実行は正常に完了したこ
とを意味しており、成功終了を報告して制御を戻す(ス
テップ2821)。まだ存在するなら、そのメソッドは
まだ完了していないため、次に進む。
(4) It is checked whether an unexecuted command exists in the method (step 2819). If it does not exist, it means that the execution of the method has been completed normally, and reports success and returns control (step 2821). If it still exists, the method is not yet complete, so proceed.

【0085】(5)(3)で実行した結果を調べる(ス
テップ2820)。実行が成功しているなら、そのメソ
ッドの実行は順調に進行しており、(3)に戻る。そう
でなく、失敗しているなら、そのメソッドの実行に支障
が生じているため、これを回復するために(1)に戻
る。
(5) The result executed in (3) is checked (step 2820). If the execution is successful, the execution of the method is proceeding smoothly and returns to (3). Otherwise, if it has failed, execution of the method has been hindered, and the procedure returns to (1) to recover this.

【0086】4.2 メソッド実行終了処理2301
(第23図) 実行対象のコマンドがsuccess_endであるためメソッド
実行終了処理2301がメソッド実行処理135により
起動された場合、第23図に示すように、呼び出したコ
マンドに従い、以下の処理を行う。呼び出したコマンド
がコマンド待ち行列スタック122のトップにあるコマ
ンド待ち行列に対応するものであれば(ステップ230
2)、以下の処理を行う。そうでなければ、制御を戻
す。コマンド待ち行列スタック122のトップにあるコ
マンド待ち行列内のコマンド列として、コマンドの指示
対象の、コマンドの命令コードメソッドに加える(ステ
ップ2303)。そして、コマンド待ち行列スタック1
22をポップし、ポップされたコマンド待ち行列がトッ
プにある間に生成されたオブジェクトインスタンスを消
去し、コマンドに対応するメソッドプログラミング画面
を消去する。(ステップ2304)そして、制御を戻
す。
4.2 Method Execution End Processing 2301
(FIG. 23) When the method execution end process 2301 is started by the method execution process 135 because the execution target command is “success_end”, the following processes are performed according to the called command as shown in FIG. If the called command corresponds to the command queue at the top of the command queue stack 122 (step 230)
2) Perform the following processing. Otherwise, return control. A command string in the command queue at the top of the command queue stack 122 is added to the command code method of the command, which is the target of the command (step 2303). And the command queue stack 1
Pop 22 to clear object instances created while the popped command queue is at the top, and clear the method programming screen corresponding to the command. (Step 2304) Then, control is returned.

【0087】4.3 オブジェクトメソッド生成処理2
812(第24図) 第24図に示すように、以下の処理を行う。呼出しコマ
ンドに対応するコマンド待ち行列を新しく生成して、こ
れをコマンド待ち行列スタック121(第2図)にプッ
シュする(ステップ2910)。また、呼び出したコマ
ンドのメソッドに対応するメソッドプログラミング画面
を生成する(ステップ2921)。そして、その画面に
メソッド名、指示対象とその属するオブジェクト名、引
数とその属するオブジェクト名を表示して(ステップ2
930)、制御を戻す。
4.3 Object Method Generation Processing 2
812 (FIG. 24) As shown in FIG. 24, the following processing is performed. A new command queue corresponding to the call command is created and pushed onto the command queue stack 121 (FIG. 2) (step 2910). In addition, a method programming screen corresponding to the method of the called command is generated (step 2921). Then, the method name, the instruction target and the object name to which it belongs, the argument and the object name to which it belongs are displayed on the screen (step 2).
930), control is returned.

【0088】4.4 組み込み命令実行処理2806 第25図に組み込み命令一覧3001を示す。この図で
は、組み込み命令の対象となるオブジェクト3002、
必要な引数3003、組み込み命令3004、命令を実
行したときの作用3004について示した。実際の対
象、引数はオブジェクトのインスタンスか、アトムであ
る。
4.4 Embedded Instruction Execution Process 2806 FIG. 25 shows an embedded instruction list 3001. In this figure, an object 3002 as a target of an embedded instruction,
The required argument 3003, the built-in instruction 3004, and the operation 3004 when the instruction is executed have been described. The actual target or argument is an instance of an object or an atom.

【0089】C.動作説明 以下、具体例を用いて本実施例によるプログラムの作成
を説明する。初めの例では電話をかけるプログラムを作
成する。2番目の例では大型汎用計算機と通信して、こ
の上の既存のアプリケーションプログラムを利用するプ
ログラムを作成する。いずれの場合にも、人物アイコン
3102が行うべき動作を指示するコマンドをプログラ
ム用のコマンドをプログラム用のコマンドとして入力
し、このコマンドを実行して、人物アイコン3102に
その動作を行なわせる。このコマンド列は人物オブジェ
クトが実行するメソッドの一つとして人物オブジェクト
に記憶させる。
C. Description of Operation Hereinafter, the creation of a program according to the present embodiment will be described using a specific example. The first example creates a program to make phone calls. In the second example, a program is created that communicates with a large-scale general-purpose computer and uses an existing application program on the computer. In any case, a command instructing an operation to be performed by the person icon 3102 is input as a program command as a program command, and the command is executed to cause the person icon 3102 to perform the operation. This command sequence is stored in the person object as one of the methods executed by the person object.

【0090】1.電話をかけるプログラムの生成 ここでは電話をかけるプログラム(メソッド)を作成す
る。人物オブジェクトにメソッドとして割りあてるメソ
ッド名はcallとする。
1. Creating a program to make a phone call Here, create a program (method) for making a phone call. The method name assigned to the person object as a method is call.

【0091】a.コマンド入力 初期状態では、オブジェクト表示画面102は第26A
図のようになっているとする。人物アイコン3102
(第1図)は第3A図の人物オブジェクト2701を表
わし、電話アイコン3104(第2図)は第3B図の電
話オブジェクト2750を表わす。電話番号オブジェク
トはまだ説明しなかったが、以下では、初期状態ですで
に定義されていると仮定する。3103はこのオブジェ
クトを表わすアイコンで、長方形形状をしており、その
中央にスロット値電話番号を有する。人物オブジェクト
のインスタンス名はrie,電話オブジェクトのインス
タンス名はtel、電話番号オブジェクトのインスタン
ス名はtnとする。以下では、これらの名称は、対応す
るオブジェクトを表わすアイコンの名称として用いる。
人物アイコン3102はどこか任意の、電話アイコン3
104からはなれた場所におり、電話アイコン3104
の受話器はかかったままである。そして、電話番号アイ
コン3103の内部には番号012−3456が表示さ
れている。また、第26B図に示すように主記憶装置1
12内のコマンド待ち行列スタック122には初期待ち
行列スタック1903だけがある。ここで人物アイコン
3102に電話をかけさせるためにはユーザは、コマン
ド(0)rie tel tn callを入力する。
ここで、call以外は処理対象を表わし、callは
メソッド名である。 (a−1)コマンドの処理対象と引数の入力 以下では、“処理対象”は、とくに断わらないがぎりあ
るいは文脈上不自然でないかぎり、コマンドの処理対象
部をさす。このコマンドの入力のためには、操作者は音
声入力装置111かマウス109かキーボード111を
用いて文字列として処理対象”rie”と、”tel”
と、”tn”とをこの順で入力する。 (a−1−1)音声入力の場合 例えば、音声によって文字列を入力するには音声入力装
置111(第1図)に向かって「りえ」と発声する。音
声は音声入力装置111から音声認識処理142(第2
図)に送られ、ここでは、第7A図に示すように候補音
声データベース125の音声データ領域のなかで最も近
い候補音声データを抽出し(ステップ601)、音声イ
ベント発声処理143を起動する(ステップ603)。
抽出された候補音声データを受取り、その候補音声デー
タのデータ種類がオブジェクトインスタンス名であるこ
とを確認して(ステップ701)、イベント種類がオブ
ジェクト選択、付加情報がその候補音声データの文字列
領域”rie”をコピーしたものであるイベントデータ
を生成し(ステップ702)入力イベント処理126を
起動する(ステップ709)。入力イベント処理126
では受け取ったイベントデータを入力イベント待ち行列
119(第2図)に加える。なお、上記候補音声データ
は人物アイコン3102を人物オブジェクト2701の
インスタンスとして先に定義したときに以下のようにし
て作成される。すなわち、この定義時に操作者がそのイ
ンスタンスの名前をキーボード入力すると同時にシステ
ムがその名前の音声入力を要求する。操作者がこの名前
を音声入力をしたとき、それを、候補音声データベース
125内のrieに対する候補音声データの内容として
格納する。イベントデイスパッチ処理127(第2図)
は操作者による入力に並行して動作可能で、メカイベン
ト待ち行列119内のイベントデータを処理する。今の
例では、「rie」に対するイベントデータはイベント
種類がオブジェクト選択であるためオブジェクト選択処
理130(第2図)が起動され、付加情報「rie」と
空白がコマンドバッファ120に格納される(ステップ
2001(第14図))。
A. Command input In the initial state, the object display screen 102
Suppose that it is as shown in the figure. Person icon 3102
(FIG. 1) represents the person object 2701 of FIG. 3A, and the telephone icon 3104 (FIG. 2) represents the telephone object 2750 of FIG. 3B. The telephone number object has not been described yet, but in the following it is assumed that it is already defined initially. Reference numeral 3103 denotes an icon representing this object, which has a rectangular shape and has a slot value telephone number at the center thereof. The instance name of the person object is rie, the instance name of the telephone object is tel, and the instance name of the telephone number object is tn. Hereinafter, these names are used as the names of the icons representing the corresponding objects.
The person icon 3102 is an arbitrary phone icon 3
104 from the phone icon 3104
The handset remains on. The number 012-3456 is displayed inside the telephone number icon 3103. In addition, as shown in FIG.
The command queue stack 122 within 12 has only an initial queue stack 1903. Here, in order to make the person icon 3102 make a call, the user inputs a command (0) rie tel tn call.
Here, other than “call” indicates a processing target, and “call” is a method name. (A-1) Command Processing Target and Argument Input In the following, the "processing target" refers to a command processing target portion unless otherwise specified or unless it is unnatural in context. In order to input this command, the operator uses the voice input device 111, the mouse 109, or the keyboard 111 to process a character string "rie" and a character string "tel".
And "tn" are input in this order. (A-1-1) In the case of voice input For example, to input a character string by voice, "Rie" is uttered toward the voice input device 111 (FIG. 1). The voice is transmitted from the voice input device 111 to the voice recognition process 142 (second
Here, as shown in FIG. 7A, the closest candidate voice data in the voice data area of the candidate voice database 125 is extracted (step 601), and the voice event utterance process 143 is started (step 601). 603).
The extracted candidate voice data is received, it is confirmed that the data type of the candidate voice data is the object instance name (step 701), the event type is object selection, and the additional information is the character string area of the candidate voice data. rie "is generated (step 702), and the input event processing 126 is started (step 709). Input event processing 126
Then, the received event data is added to the input event queue 119 (FIG. 2). Note that the candidate voice data is created as follows when the person icon 3102 is previously defined as an instance of the person object 2701. That is, at the time of this definition, at the same time as the operator inputs the name of the instance by keyboard, the system requests voice input of the name. When the operator voice-inputs this name, it is stored as the content of the candidate voice data for rie in the candidate voice database 125. Event dispatch processing 127 (FIG. 2)
Can operate in parallel with input by the operator and process event data in the mechanical event queue 119. In the present example, since the event type is "object selection" for the event data for "rie", the object selection processing 130 (FIG. 2) is started, and the additional information "rie" and a blank are stored in the command buffer 120 (step). 2001 (FIG. 14)).

【0092】(a−1−2)マウス入力の場合 マウス109(第1図)を用いて”rie”を入力する
には、オブジェクト表示画面102に表示してある人物
アイコン3102の胴体上にマウスカーソル201(第
1図)をもってきて、マウスボタン(図示せず)を押
す。それによりオブジェクト選択イベント発生処理30
4が起動される(第8A図)。この処理304では、第
8B図に示すように、マウスカーソル201の位置と3
次元形状データベース123(第2図)を参照して(人
物アイコン3102)の上でマウスボタンが押されたこ
とを認識して(ステップ801)、イベント種類にオブ
ジェクト選択、付加情報にキーボードから入力された文
字列”rie”を格納したイベントデータを生成し(ス
テップ802)、入力イベント処理126を起動する
(ステップ803)。入力イベント処理126では送ら
れてきたイベントデータを入力イベント待ち行列119
に加える。音声入力の場合と同様にこのイベントデータ
が後にデイスパッチされると、コマンドバッファ120
に「rie」と空白が格納される。
(A-1-2) Mouse Input In order to input “rie” using the mouse 109 (FIG. 1), the mouse is placed on the body of the person icon 3102 displayed on the object display screen 102. Bring the cursor 201 (FIG. 1) and press the mouse button (not shown). Thereby, the object selection event generation processing 30
4 is activated (FIG. 8A). In this processing 304, as shown in FIG.
With reference to the dimensional shape database 123 (FIG. 2), it is recognized that the mouse button has been pressed on the (person icon 3102) (step 801), and the object type is selected for the event type, and additional information is input from the keyboard. Event data storing the character string "rie" is generated (step 802), and the input event process 126 is started (step 803). In the input event processing 126, the sent event data is stored in the input event queue 119.
Add to When this event data is later dispatched as in the case of voice input, the command buffer 120
"Rie" and a blank are stored in the "."

【0093】(a−1−3)キーボード入力の場合 キーボード110(第1図)で”rie”を入力する場
合には、マウスカーソル201をオブジェクトモデリン
グ画面108(第1図)以外の所に置いた上で「r」
「i」「e」をそのままタイプする。それ焼れのキー入
力に対してキーボードイベント処理309(第2図)が
起動される。この処理309では、第9図に示すよう
に、判定1301,1303を経た上でイベント種類に
キーボード、付加情報にキーボードから与えられるキー
コードを格納したイベントデータを生成し(ステップ1
304)、入力イベント処理126を起動する(ステッ
プ1306)。入力イベント処理126はこのイベント
を入力イベント待ち行列119に加える。このような入
力に対するイベントデータが後にデイスパッチされた場
合、その中のキーコードをそのままコマンドバッファ1
20のの空きエリアに、その前方から順に入力される。
今の例では、「r」「i」「e」の各々に対するイベン
トデータからコマンドバッファ120に処理対象名「r
ie」が格納される。このように、音声入力、マウス入
力、キーボード入力のいずれを用いてもコマンド入力を
可能とするために、それぞれからの各入力をイベントデ
ータという共通の形式のデータに変換している。ここま
での操作で、入力すべきコマンドに含まれるべき処理対
象“rie”が格納された。引き続いて処理対象“te
l”、“tn”をコマンドに加える。この操作はこれま
での入力と同じようにして行われる。オブジェクト選択
に関しては、これ以降のコマンド入力についても同じこ
とである。こいうと、コマンドバッファ120には、
「rie tel tu」が格納される。
(A-1-3) Keyboard Input When "rie" is input using the keyboard 110 (FIG. 1), the mouse cursor 201 is placed at a place other than the object modeling screen 108 (FIG. 1). "R"
Type "i" and "e" as they are. The keyboard event processing 309 (FIG. 2) is started in response to the input of the burnt key. In this process 309, as shown in FIG. 9, after the judgments 1301 and 1303, the event type storing the keyboard as the event type and the key code given from the keyboard as the additional information is generated (step 1).
304), and activates the input event processing 126 (step 1306). Input event processing 126 adds this event to input event queue 119. When event data corresponding to such an input is dispatched later, the key code in the event data is used as it is in the command buffer 1.
20 empty areas are sequentially input from the front.
In this example, the processing target name “r” is stored in the command buffer 120 from the event data for each of “r”, “i”, and “e”.
ie ”is stored. As described above, in order to enable command input using any of voice input, mouse input, and keyboard input, each input from each is converted into event data in a common format. By the operation up to this point, the processing target “rie” to be included in the command to be input is stored. Subsequently, the processing target "te
l "and" tn "to the command. This operation is performed in the same manner as the previous input. The object selection is the same for the subsequent command input. Is
“Rie tel tu” is stored.

【0094】(a−2)メソッド名の入力 引き続いて、新しく定義するメソッドの名前callを
キーボード110から入力する。システム内で初めて用
いられるメソッドであるので、この入力はキーボード1
10からだけ入力可能である。この入力に応答して、前
述したのと同様にイベントデータが生成され、入力イベ
ント待ち行列119に格納される。引き続いて一つのコ
マンドの入力の終了を入力するために、コマンド入力指
示として改行コードをキー入力すると、キーボードイベ
ント処理141では第9図のステップ1303により、
イベント種類が命令入力、付加情報が空のイベントデー
タを生成し、イベント待ち行列119に加える。イベン
トディスパッチ処理127はこのイベントデータのイベ
ント種類が命令入力であるので、命令入力処理131を
起動する(ステップ1405(第13図))。この処理
131では、コマンドバッファ120の内容をコマンド
待ち行列スタック122のトップにある、初期コマンド
待ち行列1903に加え、コマンドバッファ120をク
リアする(ステップ2102,2102(第15
図))。これで、(0)rie tel tn cal
lが初期コマンド待ち行列1903に送られた。このよ
うに、コマンドバッファ120入力された文字列を一時
的に記憶し、ユーザによりその後コマンド入力指示が与
えられたとき、それまでに入力済みの文字列を一つのコ
マンドとして使用するようになっている。なお、この例
ではメソッド名の入力はキーボードで行なったが、この
メソッド名をあらわす候補音声データ501を以下のよ
うにあらかじめ記憶すれば未定義のメソッドでも音声に
よっても入力することができる。すなわち、候補音声デ
ータ501の音声データ502にこのメソッド名をあら
わす音声を、データ種類503に、オブジェクトメソッ
ドを、文字列504に“call”を記憶する。このよ
うにすれば、コマンド(0)の引き数にひきつづいてメ
ソッドcallを音声入力すれば、音声認識処理(第7
A図)で抽出された候補音声データからは、音声イベン
ト発生処理(第7B図)で、イベント種類が命令入力で
あるイベントが生成される。生成されたイベントは、先
に述べたキーボードによるメソッド名入力のキーストロ
ーク“call+改行コード”よって生成されるイベン
トと等価である。すでに述べたごとく、コマンドの処理
対象あるいは引数の場合、入力音声に対する候補データ
中のデータの種類はオブジェクトインスタンスであるか
ら、この場合、入力音声はコマンドバッファに蓄えられ
た。しかし上に述べたごとく、メソッドを表わす音声入
力は入力すべきコマンドの末尾として扱えるので、この
ように音声入力に対する候補データは、すでに入力され
た音声に対する候補データと組み合わせて一つのコマン
ドとすることができる。このように、操作者が入力する
音声の種類を判別してコマンドの入力完了か否かを判断
すれば、操作者は改行コードのような特別な入力を用い
なくてもよい。この上の音声入力は定義済みのメソッド
に対しては勿論、そのまま適用できる。なお、以上のよ
うにして初期コマンド待ち行列1903に格納された文
字列はプログラムコントロール画面106にコマンド番
号とともに表示される(第26A図)。以下において、
コマンド入力は上に述べた方法を用いて行うものとす
る。
(A-2) Input of Method Name Subsequently, the name call of a newly defined method is input from the keyboard 110. Since this is the first method used in the system,
Only from 10 can be input. In response to this input, event data is generated as described above and stored in the input event queue 119. Subsequently, in order to input the end of the input of one command, when a line feed code is key-inputted as a command input instruction, the keyboard event processing 141 proceeds to step 1303 in FIG.
Event data whose event type is command input and additional information is empty are generated and added to the event queue 119. Since the event type of the event data is a command input, the event dispatching process 127 activates a command input process 131 (step 1405 (FIG. 13)). In this process 131, the contents of the command buffer 120 are added to the initial command queue 1903 at the top of the command queue stack 122, and the command buffer 120 is cleared (steps 2102 and 2102 (15th step)).
Figure)). Thus, (0) rie tel tn cal
1 has been sent to the initial command queue 1903. As described above, the character string input to the command buffer 120 is temporarily stored, and when a command input instruction is subsequently given by the user, the character string that has been input so far is used as one command. I have. In this example, the method name is input using the keyboard. However, if the candidate voice data 501 representing this method name is stored in advance as follows, an undefined method or a voice can be input. That is, the voice representing the method name is stored in the voice data 502 of the candidate voice data 501, the object method is stored in the data type 503, and “call” is stored in the character string 504. In this way, if the method call is input by voice following the argument of the command (0), the voice recognition processing (the seventh
From the candidate audio data extracted in FIG. A), in the audio event generation process (FIG. 7B), an event whose event type is a command input is generated. The generated event is equivalent to the event generated by the keystroke “call + line feed code” of the method name input using the keyboard described above. As described above, in the case of a command processing target or an argument, the type of data in the candidate data for the input voice is an object instance, and in this case, the input voice is stored in the command buffer. However, as described above, since the voice input representing the method can be treated as the end of the command to be input, the candidate data for the voice input should be combined with the candidate data for the already input voice into one command. Can be. As described above, if it is determined whether the input of the command is completed by determining the type of voice input by the operator, the operator does not need to use a special input such as a line feed code. The voice input above can be applied to the defined method as it is, of course. The character string stored in the initial command queue 1903 as described above is displayed on the program control screen 106 together with the command number (FIG. 26A). In the following:
Command input is performed using the method described above.

【0095】b.コマンドの実行 操作者はプログラムコントロール画面106(第1図)
上の「実行」ボタン215の上にマウスカーソル201
を持ってきて、ここでマウスボタン(図示せず)を押
す。この操作により発生されるイベントデータに対して
イベントディスパッチ処理127がプログラムコントロ
ール処理132(第2図)を起動し、その処理132の
実行中にオブジェクトメソッド実行処理135が起動さ
れる(ステップ2203(第18図))。ここでコマン
ド待ち行列スタック122のトップにあるコマンド待ち
行列121は初期コマンド待ち行列1903(第26B
図)であり、その先頭のコマンドは前述のコマンド
(0)であり、メソッドcallは未定義である。しか
し、システムはコマンド中のメソッドが既定義のもので
あるかどうかに関わりなく、そのコマンドを実行するオ
ブジェクトメソッド実行処理135を起動する。その処
理135では、第22図に示すように、命令コードはs
uccess_endでなく(ステップ2801)、組
込命令でもなく(ステップ2804)、また指示オブジ
ェクト人物のメソッドとしてまだ登録されていない(ス
テップ2811)ので、オブジェクトメソッド生成処理
2812を起動する(ステップ2812)。この処理2
812では第24図に示すように、このコマンド(0)
に対応する新しいcallコマンド待ち行列(すなわ
ち、このコマンドで要求されたメソッドcallに含ま
れるべきコマンド列を格納するエリア行列)1903を
生成して、コマンド待ちエリア行列スタック122にプ
ッシュする(ステップ2910)。また、対応するメソ
ッドプログラミング画面3110を生成し(ステップ2
920)、オブジェクトメソッドプログラミング画面上
にメソッド名call、指示対象とその所属オブジェク
トの組rie[人物]、引数とその所属オブジェクトの
組tel[電話],tn[電話番号]が表示される(ス
テップ2930)。これは、新しいメソッドを定義する
ための準備である。
B. Executing the command The operator can control the program control screen 106 (Fig. 1).
Move the mouse cursor 201 over the “execute” button 215
And press the mouse button (not shown) here. The event dispatch process 127 starts the program control process 132 (FIG. 2) for the event data generated by this operation, and the object method execution process 135 is started during the execution of the process 132 (step 2203 (step 2203)). 18)). Here, the command queue 121 at the top of the command queue stack 122 is the initial command queue 1903 (26B).
), The first command of which is the command (0) described above, and the method call is undefined. However, the system invokes an object method execution process 135 that executes the command, regardless of whether the method in the command is predefined. In the process 135, the instruction code is s, as shown in FIG.
Since it is not access_end (step 2801), it is not an embedded instruction (step 2804), and it is not registered as a method of the designated object person (step 2811), the object method generation processing 2812 is started (step 2812). This process 2
At 812, as shown in FIG.
, A new call command queue 1903 (that is, an area matrix storing a command sequence to be included in the method call requested by this command) 1903 is generated and pushed onto the command queue area queue stack 122 (step 2910). . Further, a corresponding method programming screen 3110 is generated (step 2).
920), a method name "call", a set rie [person] of the instruction target and its belonging object, and a set tel [telephone] and tn [telephone number] of the argument and its belonging object are displayed on the object method programming screen (step 2930). ). This is preparation for defining a new method.

【0096】これ以降操作者は、メソッドcallのを
構成するコマンドの各々を入力し、かつ実行させる。こ
こでは、 (1)電話のところまでいって (rie tel#position goto) (2)電話をとって (rie tel tel_take) (3)与えられた電話番号のところに電話を掛ける。 (rie tel tn connect) (4)以上のことができれば成功である。 (success_end) ことをプログラムする。操作者はコマンド(1)−
(4)を順次入力する。ここで、#はオブジェクトイン
スタンスのスロット値を表現するためのものである。コ
マンド(1)−(4)はcallコマンド待ち行列31
21に順に加えられる。callメソッド待ち行列31
21に格納されたコマンドは、格納の都度対応するメソ
ッドプログラミング画面3110に表示される。ここで
プログラムコントロール画面上106の「実行」ボタン
215(第26A図)の上にマウスカーソル201を持
ってきて、マウスボタンを押すと、オブジェクトメソッ
ド実行処理135によりcallメソッドに対応するコ
マンド待ち行列3121の先頭のコマンド(1)を実行
する。ここで、メソッドgotoは、success_
endでなく(ステップ2801)、組み込み命令でも
なく(ステップ2804)、人物オブジェクトに定義さ
れていないので(ステップ2811)、オブジェクトメ
ソッド生成処理2812を行う。つまり、ここでcal
lメソッドプログラミングを一時中断して、gotoメ
ソッドプログラミングを行う。このためにこの処理28
12の中でもgotoコマンド待ち行列3020(第2
7B図)をコマンド待ち行列スタック122のトップに
形成する(ステップ2910(第24図))。さらに、
ディスプレイ装置上101には第27B図gotoメソ
ッド用のメソッドプログラミング画面3210をcal
lメソッド用のメソッドプログラミング画面3110に
重ねて形成する(ステップ2910)、このプログラミ
ング画面3210には、このコマンド(1)にしたがっ
て、メソッド名、処理対象、引数等が画面3110と同
様に表示される(ステップ2930)。このように、コ
マンド待ちエリア行列スタック122内の行列はメソッ
ドプログラミング画面の数とその対応するメソッドと等
価であり、メソッドプログラミングを制御する役割を持
つ。gotoメソッドは人間がある位置まで移動させる
プログラムする。ここでは、次のコマンド列を入力す
る。 (10)距離を格納する一時オブジェクトインスタンス
を生成する dist scalar@create (11)方向を格納する一時オブジェクトインスタンス
を生成する dir vector@create (12)rieとtelの距離を調べる rie tel#position dist getdistance (13)rieからみたte1の方向を調べる rie tel#takeposiiton dirgetdirection (14)(13)の結果をもとにrieをtelの方向
に向かせる。 rie dir rotate (15)rieに(1)の距離だけ歩かせる rie dist walk (16)rieを電話の方向に向かせる rie tel#direction rotate (17)以上のことが成功したばあいがgotoメソッ
ドを終了する。 success_end コマンド(10),(11)は人物アイコン3102と
電話アイコン3104の間の距離dist(これはスカ
ラー量)を格納する距離オブジェクトと、人物からみた
電話器の方向dir(これはベクトル量)を格納する方
向オブジェクトをそれぞれ生成するコマンドである。本
実施例ではオブジェクトを生成するコマンドは、(オブ
ジェクト名)@createであり、組み込みのもので
ある。第27A図で、3202,3203はそれぞれ距
離オブジェクト、方向オブジェクトを表わすアイコンで
あり、これらのオブジェクトの定義にしたがって、これ
らのアイコンが表示される。なお、このように、オブジ
ェクトを生成したときには、それぞれのオブジェクトの
名称(dist,dir)を音声入力する。そして、候
補音声データの音声データに入力した音声を、データ種
類にオブジェクトインスタンス、文字列データにそれぞ
れ名称を表わす文字列(“dist”、“dir”)を
記憶し、候補音声データベースに格納する。コマンド
(12)(13)では、コマンド(10)(11)で生
成した一時オブジェクトのインスタンスにそれぞれ組み
込み命令getdistance,getdirect
ionを用いて上記距離dist,方向dirの値を格
納する。そしてコマンド(14)で、人物アイコン31
02を方向dirだけ回転させ、コマンド(15)で距
離distだけ歩かせる。次に(16)で、電話の方向
に向かせる。最後にコマンド(17)(success
_end)を加える。
Thereafter, the operator inputs and executes each of the commands constituting the method "call". Here, (1) go to the telephone (rie tel # position goto) (2) pick up the telephone (rie tel tel_take) (3) make a call to the given telephone number. (Rie tel tn connect) (4) If the above is achieved, it is a success. (Success_end) is programmed. The operator issues a command (1)-
(4) is sequentially input. Here, # is for expressing the slot value of the object instance. Commands (1)-(4) are call command queues 31
21 in turn. call method queue 31
The command stored in 21 is displayed on the corresponding method programming screen 3110 each time it is stored. When the mouse cursor 201 is brought over the “execute” button 215 (FIG. 26A) on the program control screen 106 and the mouse button is pressed, a command queue 3121 corresponding to the call method is executed by the object method execution processing 135. Execute the first command (1). Here, the method goto is success_
The object method is not end (Step 2801), is not a built-in instruction (Step 2804), and is not defined as a person object (Step 2811). That is, here
(1) The method programming is suspended and goto method programming is performed. Therefore, this processing 28
12, the goto command queue 3020 (second
7B) is formed at the top of the command queue stack 122 (step 2910 (FIG. 24)). further,
The method programming screen 3210 for the goto method shown in FIG.
A method name, a processing target, arguments, and the like are displayed on the programming screen 3210 in the same manner as the screen 3110 according to the command (1) according to the command (1). (Step 2930). Thus, the queues in the command waiting area queue stack 122 are equivalent to the number of method programming screens and their corresponding methods, and serve to control method programming. The goto method is programmed to move a human to a certain position. Here, the following command sequence is input. (10) Create a temporary object instance that stores the distance dist scalar @ create (11) Create a temporary object instance that stores the direction dir vector @ create (12) Check the distance between rie and tel rie tel # position dist getdistance (13) Investigate the direction of te1 from rie. Rie tel # takeposiiton dirgetdirection (14) Turn rie in the direction of tel based on the result of (13). rie dir rotate (15) Make rie walk the distance of (1) rie dist walk (16) Turn rie in the direction of the phone rie tel # direction rotate (17) If the above is successful, use the goto method. finish. The success_end commands (10) and (11) are a distance object that stores a distance dist (this is a scalar amount) between the person icon 3102 and the telephone icon 3104, and a direction dir (this is a vector amount) of the telephone viewed from the person. This is a command for generating a direction object to be stored. In this embodiment, the command for generating an object is (object name) @create, which is a built-in command. In FIG. 27A, icons 3202 and 3203 represent a distance object and a direction object, respectively, and these icons are displayed according to the definition of these objects. When the objects are generated as described above, the names (dist, dir) of the respective objects are input by voice. Then, the voice input to the voice data of the candidate voice data is stored as an object instance in the data type, and character strings (“dist” and “dir”) each representing a name in the character string data, and stored in the candidate voice database. In the commands (12) and (13), the instances of the temporary objects generated by the commands (10) and (11) are respectively embedded instructions getdistance and getdirect.
The values of the distance dist and the direction dir are stored by using ion. Then, by the command (14), the person icon 31
02 is rotated by the direction dir, and is walked by the distance dist by the command (15). Next, in (16), the user is directed to the telephone. Finally, the command (17) (success
_End).

【0097】以上のコマンド列は最後のコマンド(1
7)の入力後gotoコマンド列エリア3230に格納
される。次に実行を指示すると、プログラム実行処理1
35(第22図)によりこのコマンド待ち行列を次々と
実行して、失敗を引き起こす要因が無くsuccess
_endまで実行が進む(ステップ2801)と、go
toメソッドのメソッド実行終了処理2301を行う
(ステップ2802)。メソッド実行終了処理2301
では、第23図に示すように、はじめにコマンド待ち行
列スタック122のトップを調べる(ステップ230
2)。これはgotoコマンド待ち行列3230である
ので、この中のコマンド列をgotoメソッドとして記
憶する(ステップ2303)。そしてコマンド待ち行列
スタック122をポップして、gotoメソッドプログ
ラミング画面3210を消去する。また、gotoメソ
ッド記述で生成した一時データであるdist320
2、dir3203をオブジェクトライブラリ124、
3次元形状データベース123、オブジェクト表示画面
102から消去する(ステップ2304)。この時点で
コマンド待ち行列スタックのトップはcallコマンド
待ち行列3121に戻る。callコマンド待ち行列3
121の残りのコマンドは (2)rie tel tel_take (3)rie tel tn connect (4)success_end である。すなわち、ここから一時中断されていたcal
lメソッドプログラミングを再開することになる。次に
改めて実行を指示すると、callコマンド待ち行列3
121の先頭コマンド(2)を実行する。tel_ta
keメソッドは指示オブジェクトhumanでは定義さ
れてないので、オブジェクトメソッド生成処理2812
が行われる。つまり、再び、callメソッドプログラ
ミングを中断してtel_takeメソッドプログラミ
ングを行う。
The above command string is the last command (1
After the input of 7), it is stored in the goto command string area 3230. Next, when execution is instructed, program execution processing 1
35 (FIG. 22), this command queue is executed one after another, and there is no cause for failure and success
_End (step 2801), go
The method execution end processing 2301 of the to method is performed (step 2802). Method execution end processing 2301
First, as shown in FIG. 23, the top of the command queue stack 122 is checked (step 230).
2). Since this is the goto command queue 3230, the command sequence in this is stored as a goto method (step 2303). Then, the command queue stack 122 is popped and the goto method programming screen 3210 is deleted. Also, dist320 which is temporary data generated by the goto method description
2, dir3203 into object library 124,
The three-dimensional shape database 123 is deleted from the object display screen 102 (step 2304). At this point, the top of the command queue stack returns to the call command queue 3121. call command queue 3
The remaining commands in 121 are (2) rie tel tel_take (3) rie tel TN connect (4) success_end. That is, cal which was temporarily suspended from here
I will resume l-method programming. Next, when the execution is instructed again, the call command queue 3
Execute the first command (2) of 121. tel_ta
Since the ke method is not defined in the instruction object human, the object method generation processing 2812
Is performed. That is, the call method programming is interrupted again, and the tel_take method programming is performed.

【0098】この処理2812の結果、コマンド待ち行
列スタック122のトップには、第28A図に示すよう
にtel_takeコマンド待ち行列3320があり、
メソッドプログラミング画面には第28B図に示すよう
にcallメソッド用の画面3110とtel_tak
eメソッド用の画面3301のが存在する。先程のgo
toメソッドの実行の結果、人物3102は電話310
4をとるのに適した位置で、電話の方向を向いて立って
いる。そこで、ここでは人物3102の右手を電話31
04の受話器の方に伸ばして、受話器をとり、受話器を
とった右手を人物の3102の右耳の近くに持ってくる
という動作をプログラムする。人物3102の右上腕と
右下腕を電話3104の受話器をとるような形にするに
は、まず、右上腕と右下腕を交互に選択してこれらに対
しモーションコントロール処理128を実行する。ここ
ではモーションコントロール画面上のx軸周り回転バリ
ュエータ220(第1図),y軸周り回転バリュエータ
221,z軸周り回転バリュエータ222を操作する。
第3A図に示すように、右上腕と右下腕は回転可能属性
が付いているので、右肩と右肘の部分で回転させること
ができる。また、両方共移動可能属性は付いてなく、こ
れを移動させようとすると図からもわかるように人間全
体が移動するため、移動は行わない。こうして、右上腕
と右下腕をうまく操作して第16図に示すモーションコ
ントロール処理128により電話の受話器の付近に右手
を置く。このように属性を与えるのは、人間などの関節
は回転できるだけであり、移動することはできないこと
を表現するためである。
As a result of this process 2812, at the top of the command queue stack 122, there is a tel_take command queue 3320 as shown in FIG. 28A.
The method programming screen includes a screen 3110 for a call method and a tel_tak as shown in FIG. 28B.
There is a screen 3301 for the e-method. Go from earlier
As a result of execution of the to method, the person 3102
Standing in a position suitable for picking up 4 and facing the phone. Therefore, here, the right hand of the person 3102 is called the telephone 31.
The operation of extending the handset to the receiver of No. 04, picking up the handset, and bringing the right hand of the picked up hand near the right ear of the person 3102 is programmed. To make the upper right arm and the lower right arm of the person 3102 pick up the telephone 3104, first, the upper right arm and the lower right arm are alternately selected, and the motion control processing 128 is performed on them. Here, the x-axis rotation valuator 220 (FIG. 1), the y-axis rotation valuator 221 and the z-axis rotation valuator 222 on the motion control screen are operated.
As shown in FIG. 3A, since the upper right arm and the lower right arm have a rotatable attribute, they can be rotated at the right shoulder and the right elbow. Further, neither of them has a movable attribute, and if the user tries to move the attribute, the whole person moves as can be seen from the figure, so that no movement is performed. In this manner, the upper right arm and the lower right arm are properly operated, and the right hand is placed near the telephone handset by the motion control process 128 shown in FIG. The attribute is given in this way to express that a joint such as a human can only rotate and cannot move.

【0099】以上のモーションコントロールの後”ri
e.ruarm”を入力し、コマンドバッファ120の
処理対象として格納し、プログラムコントロール画面1
06上の「記憶」ボタン216上にマウスカーソル20
1を持ってきてここでマウスボタン202を押すことに
よって、プログラムコントロール132が起動され、そ
の処理の中で状態記憶処理134が起動されるステップ
2204(第18図)。状態記憶処理134では、処理
対象(rie,ruarm)がコマンドバッファ120
内にあるため、処理対象用に記憶処理210を起動する
(ステップ2402(第20図))。この処理では、コ
マンドバッファ中の処理対象が人物3102の右上腕で
あり、これが回転可能属性だけが付いていることから、
右上腕を現在示されている回転角まで回転させる。次の
コマンド (20)rie.ruarm 現在回転角 rotat
e が生成され、tel_takeコマンド待ち行列332
0に加えられる(ステップ2504〜2506)。同様
にして人物3102の右下腕に対して処理対象用状態記
憶処理210を行うことによって次のコマンド (21)rie.rlarm 現在回転角 rotat
e がtel_takeコマンド待ち行列3320に加えら
れる。次に、rie3102の右手にte13104の
受話器を持たせる。このための組み込み命令1inkを
用いる。コマンドは (22)rie.rhand tel. receiv
er link である。このメソッドlinkは指示対象の下位構造に
引数オブジェクトを指定することによって実現してい
る。結果的に、これ以降受話器は人物3102の右手の
位置に従って移動、回転を行う。また、電話3104を
移動・回転しても受話器はその影響を受けない。このま
までは電話3104の動きにしたがって受話器も動くこ
とになるので、この関係を断つコマンド (23)tel.body tel. receive
r unlink を実行する。この結果、人物3102と電記3104の
オブジェクト構造は第28A図に示すようになる。次
に、再び人物3102の右上腕、右下腕をモーションコ
ントロール画面103上のバリュエータrot_x(2
20),rot_y(221),rot_z(222)
を用いて操作して、受話器が右耳の付近にちょうど位置
するような格好をとらせ、このあと状態記憶処理134
を起動する。その結果、コマンド (24)rie.ruarm 現在回転角 rotat
e (25)rie.rlarm 現在回転角 rotat
e がtel_takeコマンド待ち行列3320に加えら
れる。このメソッド用の最後のコマンドとして、 (26)success_end を加える。そしてこれらのコマンドを次々と実行してい
き、success_endにまで到達したときメソッ
ド実行終了処理2301を行う。tel_takeメソ
ッド記述してきたコマンド列(20)−(26)を記憶
し、コマンド待ち行列スタック122をポップし、te
l_takeメソッドプログラミング画面3301を消
去する。callコマンド待ち行列3121の次のコマ
ンドは、(3)rie teltn connectで
ある。connectメソッドも人間オブジェクト27
01(第3A図)の中で定義されていないので、新しい
コマンド待ち行列3430が生成され、音声登録を行
い、オブジェクトメソッド生成処理2812を行う。そ
の結果、コマンド待ち行列スタック122のトップには
connectコマンド待ち行列3430が作られ(第
29B図)、メソッドプログラミング画面はcallに
対応するもの3110と、connectに対応するも
の3420の2つが表示される(第29A図)。ここで
は、 (30)指定された電話番号に接続要求を出す tel tn connect_request (31)接続が成功したならその旨、音声出力する rie “つながりました” speak (32)以上が成功すれば終了する success_end とする。
After the above motion control, "ri"
e. "ruarm" is input and stored as a processing target in the command buffer 120, and the program control screen 1
Mouse cursor 20 on the “Remember” button 216 on
By bringing the "1" and pressing the mouse button 202 here, the program control 132 is started, and the state storage process 134 is started during the process, step 2204 (FIG. 18). In the state storage processing 134, the processing target (rie, ruarm) is stored in the command buffer 120.
Therefore, the storage processing 210 is started for the processing target (step 2402 (FIG. 20)). In this processing, since the processing target in the command buffer is the upper right arm of the person 3102, which has only the rotatable attribute,
Rotate the upper right arm to the currently indicated rotation angle. Next command (20) rie. ruarm current rotation angle rotat
e is generated and the tel_take command queue 332 is
0 (steps 2504 to 2506). Similarly, by performing the processing target state storage processing 210 on the lower right arm of the person 3102, the following command (21) rie. rlarm current rotation angle rotat
e is added to the tel_take command queue 3320. Next, the handset of te13104 is held in the right hand of rie3102. The embedded instruction 1ink for this is used. The command is (22) rie. hand tel. receive
er link. This method link is realized by designating an argument object in a lower-level structure to be specified. As a result, thereafter, the receiver moves and rotates according to the position of the right hand of the person 3102. Further, even if the telephone 3104 is moved or rotated, the handset is not affected. In this state, the handset also moves in accordance with the movement of the telephone 3104. Therefore, the command (23) tel. body tel. receive
Run runlink. As a result, the object structures of the person 3102 and the telegram 3104 are as shown in FIG. 28A. Next, the upper right arm and the lower right arm of the person 3102 are again attached to the valuator rot_x (2
20), rot_y (221), rot_z (222)
, So that the handset is positioned exactly near the right ear.
Start As a result, the command (24) rie. ruarm current rotation angle rotat
e (25) rie. rlarm current rotation angle rotat
e is added to the tel_take command queue 3320. Add (26) success_end as the last command for this method. Then, these commands are executed one after another, and when reaching the success_end, the method execution end processing 2301 is performed. The command sequence (20)-(26) describing the tel_take method is stored, the command queue stack 122 is popped,
The l_take method programming screen 3301 is deleted. The next command in the call command queue 3121 is (3) rie teln connect. The connect method is also a human object 27
01 (FIG. 3A), a new command queue 3430 is created, voice registration is performed, and object method creation processing 2812 is performed. As a result, a connect command queue 3430 is created at the top of the command queue stack 122 (FIG. 29B), and the method programming screen displays two, 3110 corresponding to call and 3420 corresponding to connect. (FIG. 29A). Here, (30) a connection request is issued to the specified telephone number. Tel TN connect_request (31) If the connection is successful, the effect is output. success_end.

【0100】このコマンド列を実行していき、(32)
success_endにまで到達した場合に、メソッ
ド実行終了処理2301を行い、connectメソッ
ドとしてコマンド列(30)−(32)を記憶し、コマ
ンド待ち行列スタック122をポップし、connec
tメソッドプログラミング画面3420を消去する。こ
こでコマンド待ち行列スタックのトップはcallコマ
ンド待ち行列3121であり、その先頭のコマンドは
(4)success_endである。これを実行する
とメソッド実行終了処理2301が起動され、(1)−
(4)コマンド列をcallメソッドとして記憶し、コ
マンド待ち行列スタック122をポップし、callメ
ソッドプログラミング画面3110を消去する。以上
で、当初意図したcallメソッドのプログラミングが
終了したことになる。また、ここでのコマンド待ち行列
スタック122のトップは初期コマンド待ち行列312
0である。これで、callメソッドプログラミングが
終了した。これ以降、「実行」を入力して「人物オブジ
ェクトインスタンス 電話オブジェクトインスタンス
電話番号オブジェクトインスタンスcall」というコ
マンドをオブジェクトメソッド実行処理135に送れ
ば、人物オブジェクトインスタンスは電話の位置まで移
動して、後を向いて受話器をとり、指定された電話番号
に接続要求を出して接続が成功したならば「つながりま
した」という音声を発することになる。また、「人物オ
ブジェクトインスタンス ベクトルオブジェクトインス
タンスgoto」、「人物オブジェクトインスタンス
電話オブジェクトインスタンス tel_take」、
「人物オブジェクトインスタンス 電話オブジェクトイ
ンスタンス 電話番号オブジェクトインスタンス co
nnect」の各コマンドもcallメソッド定義の過
程の中でに定義されている。 コマンドの実行は依頼し
たオブジェクトインスタンスの動作として、また音声と
して出力されるため、その状態の認識が容易である。し
かし、コマンドを実行中、どこかで失敗をする可能性が
ある。本例では電話の接続要求を出す次のコマンド、
(3)rie tel tn connectのなかの
(30)rie tel tn connect_re
questで相手が話し中であるなどの理由で失敗する
ことが考えられる。しかし、失敗が現に生じるまではプ
ログラムを記述する必要のないところが本発明の特徴の
1つである。
By executing this command sequence, (32)
When it reaches success_end, a method execution end process 2301 is performed, the command sequence (30)-(32) is stored as a connect method, the command queue stack 122 is popped, and the connect
The t-method programming screen 3420 is deleted. Here, the top of the command queue stack is the call command queue 3121, and the top command is (4) success_end. When this is executed, the method execution end processing 2301 is started, and (1)-
(4) The command sequence is stored as a call method, the command queue stack 122 is popped, and the call method programming screen 3110 is erased. Thus, the programming of the call method originally intended is completed. The top of the command queue stack 122 here is the initial command queue 312.
0. This completes the call method programming. From here on, enter "Execute" and enter "Person object instance Phone object instance"
If the command "telephone number object instance call" is sent to the object method execution processing 135, the person object instance moves to the telephone position, picks up the receiver, issues a connection request to the specified telephone number, and connects. If it succeeds, it will say "connected". Also, "person object instance vector object instance goto", "person object instance
Phone object instance tel_take ",
"Person object instance Phone object instance Phone number object instance co
Each command of “nect” is also defined in the process of the call method definition. Since the execution of the command is output as an operation of the requested object instance or as a voice, it is easy to recognize the state. However, it may fail somewhere while executing the command. In this example, the next command that issues a phone connection request,
(3) In rie tel TN connect (30) rie tel TN connect_re
It is conceivable that the quest fails because the other party is busy. However, one of the features of the present invention is that it is not necessary to write a program until a failure actually occurs.

【0101】何度かコマンドを実行しているうちに、コ
マンド(30)で失敗した場合には、その失敗した例を
用いてプログラムを記述することができる。第29A図
の例では、人物3102が電話を用いて、電話番号オブ
ジェクトインスタンスtn1を用いた場合に、失敗した
とする。そのコマンドは、(40)rie teltn
1 connectであり、失敗するのはコマンド(3
0)を現在の例で置き換えたコマンド(30)rie
tel tn1 connect_requestであ
る。
If the command (30) fails while the command is being executed several times, the program can be described by using the failed example. In the example of FIG. 29A, it is assumed that a failure has occurred when the person 3102 uses the telephone and uses the telephone number object instance tn1. The command is (40) rie teln
1 connect, and the command (3
0) replaced with the current example (30) rie
tel tn1 connect_request.

【0102】前述の場合と同様にコマンド(40)のオ
ブジェクトメソッド生成処理2812(第24図)を行
う。ここでのプログラムは電話の接続に失敗した場合の
ものである。ここでのコマンド列は次のようにする。 (41)“失敗しました”と音声でメッセージを出力す
る rie “失敗しました” speak (42)受話器を本体にはまる位置に回転させる rie.reciever 受話器が電話器に収まる向
き rotate (43)受話器を本体の位置に置く rie.receiver tel#position translate (44)受話器とrieの右手を切り離す rie.receiver tel. body link (45)受話器と本体をもとの関係に戻す rie.rhand rie. receiver unlink (46)直立する rie neutral (47)以上が成功したら終了する success_end とする。
The object method generation processing 2812 (FIG. 24) of the command (40) is performed in the same manner as described above. The program here is for a failed phone connection. Here, the command sequence is as follows. (41) A message is output with a voice saying “Failed” rie “Failed” spoke (42) Rotate the handset to a position that fits into the main unit rie. receiver The direction in which the handset fits in the telephone. rotate (43) Place the handset in the position of the main body rie. receiver tel # position translation (44) Disconnect the handset from rie's right hand rie. receiver tel. body link (45) Return handset and body to original relationship rie. hand rie. receiver unlink (46) erect upright rie neutral (47) If more than success, end success_end.

【0103】ここで、(44)、(45)のコマンドを
実行すると、オブジェクトの構造は第30C図3330
に示すようになる。これは人物オブジェクト2701と
電話オブジェクト2750ではじめに定義した状態であ
る。これ以降、人物と電話は通常の人物オブジェクト2
701、電話オブジェクト2750として動作する。上
のコマンドを順次実行して(47)success_e
ndコマンドまで到達すれば、メソッド実行終了処理2
301が行われ、コマンド列(41)−(47)が人物
オブジェクト2701のconnectメソッドとし
て、第29B図で定義したものを失うことなく、新たに
記憶される。これで、人物オブジェクトに対するcon
nectメソッドとしてはコマンド列(30)−(3
2)と、コマンド列(41)−(47)の2つが定義さ
れた。メソッド実行は定義順に行われるため、「人物オ
ブジェクトインスタンス 電話オブジェクトインスタン
ス 電話番号インスタンス connect」コマンド
を実行すると、はじめに(30)−(32)で定義した
コマンド列を用いて指定の接続要求を出す。その結果、
成功すれば「成功しました」との音声出力を行う。成功
しなければ、(41)−(47)の実行に移り、「接続
失敗しました」との音声出力を行い、受話器を置いて直
立する。以上で秘書は電話をかけることに関しては、一
応のメソッドを持ったことになる。人物オブジェクト2
701は第3A図に示すように、callメソッド(2
712)、gotoメソッド(2713)、tel_t
akeメソッド(2714)、connect(1)メ
ソッド(2715)、connect(2)メソッド
(2716)と第25図に示した組み込み命令コードの
群の中の、処理対象が人物であるものを持っている。
Here, when the commands of (44) and (45) are executed, the structure of the object becomes as shown in FIG.
It becomes as shown in. This is the state defined first by the person object 2701 and the telephone object 2750. From then on, the person and the phone will be the normal person object 2
701, operates as a telephone object 2750. The above commands are sequentially executed (47) success_e
If it reaches the nd command, method execution end processing 2
301 is performed, and the command sequence (41)-(47) is newly stored as the connect method of the person object 2701 without losing the one defined in FIG. 29B. Now, con for the person object
The command sequence (30)-(3
2) and two command strings (41) to (47) are defined. Since the method execution is performed in the order of definition, when the "person object instance telephone object instance telephone number instance connect" command is executed, a specified connection request is first issued using the command sequence defined in (30)-(32). as a result,
If it succeeds, an audio output of "successful" is output. If the operation is not successful, the process proceeds to steps (41) to (47), outputs a voice message "connection failed", and stands up with the handset placed. The secretary now has a method of making a phone call. Person object 2
701 is, as shown in FIG. 3A, a call method (2
712), goto method (2713), tel_t
An ake method (2714), a connect (1) method (2715), a connect (2) method (2716), and a group of embedded instruction codes shown in FIG. .

【0104】2.大型汎用計算機116との通信を用い
たプログラム 次に、大型汎用計算機を用いて会議室を予約することを
プログラムする例を用いて本発明の実施例の特徴を説明
する。ここではカメラの視野(ビュー)をプログラムす
ることにも言及する。人物オブジェクトインスタンスr
ie(3102)、端末オブジェクトインスタンスte
rm(3612)、日付オブジェクトインスタンスda
te3610、部屋オブジェクトインスタンスroom
3611を用いてメソッドyoyakuを記述する。こ
こで、オブジェクトインスタンスは第31A図に示すよ
うに、3次元空間中に配置されているものとする。はじ
めカメラオブジェクトインスタンスはビュー1(370
1)を用いており、端末オブジェクトインスタンスte
rm(3612)は、第31A図のオブジェクト表示画
面1(3601)に示すようにオブジェクト表示画面中
で仕切り3602にはばまれて表示されていないとす
る。従ってこれをマウス109で選択することもできな
いものとする。
2. Program Using Communication with Large-Scale General-Purpose Computer 116 Next, features of the embodiment of the present invention will be described using an example in which reservation of a conference room is programmed using a large-scale general-purpose computer. It also refers to programming the camera's field of view. Person object instance r
ie (3102), terminal object instance te
rm (3612), date object instance da
te3610, room object instance room
The method yoyaku is described using 3611. Here, it is assumed that the object instances are arranged in a three-dimensional space as shown in FIG. 31A. First, the camera object instance is view 1 (370
1) and the terminal object instance te
It is assumed that the rm (3612) is not displayed in a partition 3602 in the object display screen as shown in the object display screen 1 (3601) in FIG. 31A. Therefore, this cannot be selected by the mouse 109.

【0105】メソッドを (50)rie term dete room yo
yaku とする。この中でterm(3612)は音声かキーボ
ードによって入力される。これを実行すると、オブジェ
クトメソッド生成処理2812が起動され、コマンド待
ち行列スタック122にyoyakuコマンド待ち行列
3630がプッシュされ、メソッドプログラミング画面
3620が生成される。ここでは、端末が実際に表示さ
れていないと何にたいして操作をしているかわからなく
なるので、ビューコントロール画面104のバリュエー
タを操作して、term3612が見えるビューである
ビュー2(3702)に変更する。そうしてオブジェク
ト表示画面2(3602)のようにしてにterm36
12が表示されれば、これをマウス109によっても選
択することができる。このように、計算機内で3次元形
状として定義されているものをディスプレイ装置とマウ
スを用いて選択する場合に、ディスプレイ装置上に投影
されないものがある場合には、ビューを変更してディス
プレイ装置上に投影されるようにしてから、選択するこ
とができる。そして、このプログラムではこのビューで
仕事をさせたいと操作者がプログラムするとして、カメ
ラに対する状態記憶処理134を実行する。このために
は、コマンドバッファの処理対象を空にしておけばよ
い。状態記憶処理134が実行されると、 (51)カメラ termが見える位置 termが見える方向 camera_set コマン
ドが生成される。これはビューを変更するための特殊な
コマンドである。つぎに、既定義メソッドgotoを用
いて、 (52)rie term#position got
o コマンドを加えて、rie3102をterm3612
の場所まで歩いて移動させる。次のコマンド (53)term openterminal の命令コードは組み込み命令で、大型汎用機と通信路を
開き、これにログオンする。同時に、端末画面107を
ディスプレイ装置101上に表示する。次に、コマンド (54)term date room get re
servation を実行して大型汎用計算機上の予約アプリケーションプ
ログラムを実行し、date3610とroom361
1に従って会議室の予約をとる。以上のことが成功した
らコマンド (55)success_end をyoyakuコマンド待ち行列3630に加える。こ
れを実行すれば、コマンド列(51)−(55)がyo
yakuメソッドとして記憶され、コマンド待ち行列ス
タック122はポップされ、yoyakuメソッドプロ
グラミング画面3620は消去される。このようにし
て、特定のビュー位置を設定して、その位置にカメラを
置いてオブジェクトメソッドを実行するように指定する
ことができる。また、大型汎用計算機を用いた仕事を行
うこともできる。
The method is defined as (50) rie term date room yo
and yaku. The term (3612) is input by voice or a keyboard. When this is executed, the object method generation processing 2812 is started, the yoyaku command queue 3630 is pushed onto the command queue stack 122, and the method programming screen 3620 is generated. Here, if the terminal is not actually displayed, it becomes impossible to know what the user is operating. Therefore, the valuator on the view control screen 104 is operated to change the view to the view 2 (3702) in which the term 3612 is visible. Then, as shown in the object display screen 2 (3602), the term36
If 12 is displayed, it can also be selected with the mouse 109. As described above, when an object that is defined as a three-dimensional shape in the computer is selected using the display device and the mouse, if there is an object that is not projected on the display device, the view is changed to change the view. And then select it. In this program, the operator executes a state storage process 134 for the camera on the assumption that the operator wants to work in this view. For this purpose, the processing target of the command buffer may be left empty. When the state storage processing 134 is executed, (51) a position in which the camera term can be viewed A direction in which the term can be viewed A camera_set command is generated. This is a special command for changing the view. Next, using the predefined method goto, (52) rie term # position got
o command and add rie3102 to term3612
Walk to the place of. The command code of the next command (53) term parentminal is a built-in command, which opens a communication path with a large general-purpose machine and logs on to it. At the same time, the terminal screen 107 is displayed on the display device 101. Next, the command (54) term date room get re
servation is executed to execute the reservation application program on the large general-purpose computer, and date3610 and room361 are executed.
1. Make a reservation for the conference room according to 1. If the above is successful, add the command (55) success_end to the yoyaku command queue 3630. When this is executed, the command sequence (51)-(55) becomes yo
Stored as a yaku method, command queue stack 122 is popped and yoyaku method programming screen 3620 is cleared. In this way, it is possible to set a specific view position, place the camera at that position, and specify to execute the object method. In addition, work using a large general-purpose computer can be performed.

【0106】D.変形例 これまでは、3次元形状データベース123を用いて3
次元形状をオブジェクト表示画面102に表示した例を
説明したが、これは本発明にとって必ずしも本質的では
ない。ここでは、3次元形状を用いないシステムの実現
方法について説明する。例として、1.で説明した電話
をかけるプログラムについて述べる。電話をかけるプロ
グラムを2次元システムで実現する場合の問題点は、依
頼を受けたオブジェクトインスタンスが電話オブジェク
トインスタンスのところまでいって、電話をもつことを
どう表現するかである。これには、第33図に示すよう
に、依頼を受けたオブジェクトインスタンス3801を
処理の対象となるオブジェクトインスタンス3802の
ところまで移動させて、電話をとったことを表現するた
めにその電話を表すアイコンを点滅させるなどの強調処
理を行えばよい。あるいは、移動を伴わなくても、両方
を強調処理してもよい。また、第34図に示すように、
依頼を受けたオブジェクトインスタンスのアイコン39
01と処理対象のアイコン3902との表示を変更させ
てもよい。さらに、第35図に示すように、依頼を受け
たアイコン4001から処理対象のアイコン4002に
向けて、または処理対象のアイコン4002から依頼を
受けたアイコン4001に向けて、矢印を表示してもよ
い。
D. Modifications Up to now, three-dimensional
The example in which the dimensional shape is displayed on the object display screen 102 has been described, but this is not necessarily essential to the present invention. Here, a method for realizing a system that does not use a three-dimensional shape will be described. As an example, 1. The following describes the program for making a telephone call described in. The problem in realizing a program for making a telephone call in a two-dimensional system is how to express that a requested object instance goes to a telephone object instance and has a telephone. To do this, as shown in FIG. 33, the requested object instance 3801 is moved to the object instance 3802 to be processed, and an icon representing the call is displayed in order to express that the call has been taken. May be emphasized such as blinking. Alternatively, both may be emphasized without moving. Also, as shown in FIG.
Icon 39 of the requested object instance
01 and the icon 3902 to be processed may be changed. Further, as shown in FIG. 35, an arrow may be displayed from the requested icon 4001 toward the processing target icon 4002, or from the processing target icon 4002 toward the requested icon 4001. .

【0107】このように、本発明の本質的な点は、プロ
グラムの実行状態をディスプレイ装置上で表現する場合
に、プログラムライブラリの実行を管理するプログラム
を図形化して表示し、これを実行状況に応じて表示を変
化させることである。さらに、本実施例において、人物
アイコン3102に電話をとらせるのに、コマンド
(2)を入力し、このコマンドに対しコマンド列(2
0)〜(26)からなるメソッドによる定義した。しか
しながら、プログラムの実行状態を操作者に知らせると
いう目的のためには、電話をかけるコマンド(3)の命
令connectのメソッドの中に、あらかじめコマンド列
(20)〜(26)を埋め込んでおくことにより、コマ
ンド(3)の入力に応答した、電話をかける操作の近傍
で、人物3102に対して、電話器の方に移動し、受話
器を取らせるようにすることもできる。さらに、本実施
例では人物アイコン3102にリンクして受話器を移動
させたが、コマンド(3)の命令connectに応答して、
受話器を移動させるようにするとともにできる。これに
よっても作成中のプログラムから要求があった他のオブ
ジェクトのメソッドが何であるかを操作者に分からせる
ことも可能である。
As described above, the essential point of the present invention is that when the execution state of a program is represented on a display device, the program for managing the execution of the program library is displayed in a graphic form, and this is displayed in the execution state. That is, the display is changed accordingly. Further, in this embodiment, a command (2) is input to make the person icon 3102 pick up the telephone, and a command string (2
0) to (26). However, for the purpose of informing the operator of the execution state of the program, the command sequence (20) to (26) is embedded in advance in the method of the command connect of the command (3) for making a telephone call. In response to the input of the command (3), the person 3102 can be moved to the telephone near the operation of making a telephone call and made to pick up the receiver. Further, in the present embodiment, the handset is moved by linking to the person icon 3102, but in response to the command connect of the command (3),
You can move the handset and do it. This also allows the operator to know what the method of the other object requested by the program being created is.

【0108】[0108]

【発明の効果】プログラムに対応したアイコンの表示が
そのプログラムの実行の段階に応じて、他の処理対象を
表わすアイコンに関係して変化するので、ユーザはプロ
グラムの実行状態を直感的に把握することができる。ま
たプログラムに対応したアイコンをとくに人物の形にし
た場合は、ユーザから見て計算機の中に秘書がいて、仕
事を依頼する感覚でプログラムの実行を指示することが
できる。また、一般に計算機人力に用いるアイコンをと
くに3次元化した場合には、より直感的に理解しやすい
インターフェースを実現できる。また、一般の計算機入
力時にとくに音声入出力を用いた場合は簡単に操作でき
る計算機操作環境を提供できると。
According to the present invention, the display of the icon corresponding to the program changes according to the stage of execution of the program in relation to the icon representing another processing object, so that the user can intuitively grasp the execution state of the program. be able to. In the case where the icon corresponding to the program is in the form of a person, there is a secretary in the computer as viewed from the user, and the execution of the program can be instructed as if requesting a job. In general, when the icons used for the computer power are converted into three-dimensional images, an interface that is more intuitive and easy to understand can be realized. In addition, a computer operation environment that can be easily operated, particularly when voice input / output is used for general computer input, will be provided.

【図面の簡単な説明】[Brief description of the drawings]

【図1】本発明を実現するシステムの、全体の構成図で
ある。
FIG. 1 is an overall configuration diagram of a system for realizing the present invention.

【図2】第1図の主記憶装置に保持されるプログラム作
成用のプログラムの機能ブロックおよびそれに関連する
データベースを示す。
FIG. 2 shows functional blocks of a program for creating a program held in a main storage device shown in FIG. 1 and a database related thereto.

【図3】本実施例で用いるいろいろのオブジェクトイン
スタンス情報を示す図である。
FIG. 3 is a diagram showing various object instance information used in the present embodiment.

【図4】第2図に示した3次元データベース内の図形デ
ータの例を示す図、
FIG. 4 is a diagram showing an example of graphic data in the three-dimensional database shown in FIG. 2,

【図5】第2図の音声データベース内の候補音声データ
の構造と処理に関する説明図である。
FIG. 5 is an explanatory diagram concerning the structure and processing of candidate audio data in the audio database of FIG. 2;

【図6】第2図のプログラムによる処理されるイベント
データの構造および説明図である。
FIG. 6 is a structure and explanatory diagram of event data processed by the program of FIG. 2;

【図7】音声入力処理に関する流れ図である。FIG. 7 is a flowchart relating to voice input processing.

【図8】マウスの入力処理に関する流れ図である。FIG. 8 is a flowchart relating to mouse input processing.

【図9】キーボードの入力に関する流れ図である。FIG. 9 is a flowchart relating to keyboard input.

【図10】コマンドのフォーマット図である。FIG. 10 is a format diagram of a command.

【図11】コマンド待行列の構造図である。FIG. 11 is a structural diagram of a command queue.

【図12】コマンド待行列スタッフの構造図である。FIG. 12 is a structural diagram of a command queue staff.

【図13】ユーザ入力を解釈する、イベントディスパッ
チ処理の流れ図である。
FIG. 13 is a flowchart of an event dispatch process for interpreting a user input.

【図14】イベントディスパッチ処理が起動する処理に
関する流れ図である。
FIG. 14 is a flowchart relating to a process of activating an event dispatch process.

【図15】イベントディスパッチ処理が起動する処理に
関する流れ図である。
FIG. 15 is a flowchart relating to a process of activating an event dispatch process.

【図16】イベントディスパッチ処理が起動する処理に
関する流れ図である。
FIG. 16 is a flowchart relating to a process of activating an event dispatch process.

【図17】イベントディスパッチ処理が起動する処理に
関する流れ図である。
FIG. 17 is a flowchart relating to a process of activating an event dispatch process.

【図18】イベントディスパッチ処理が起動する処理に
関する流れ図である。
FIG. 18 is a flowchart relating to a process of activating an event dispatch process.

【図19】イベントディスパッチ処理が起動する処理に
関する流れ図である。
FIG. 19 is a flowchart relating to a process of activating an event dispatch process.

【図20】プログラムコントロール処理が起動する、状
態記憶処理に関する、流れ図である。
FIG. 20 is a flowchart relating to a state storage process in which a program control process is started.

【図21】プログラムコントロール処理が起動する、状
態記憶処理に関する、流れ図である。
FIG. 21 is a flowchart relating to a state storage process in which a program control process is started.

【図22】オブジェクトメソッド実行処理の中でよびだ
される、メソッド実行終了処理に関する、流れ図であ
る。
FIG. 22 is a flowchart relating to a method execution ending process called out in the object method execution process.

【図23】オブジェクトメソッド実行処理の中でよびだ
される、メソッド実行終了処理に関する、流れ図であ
る。
FIG. 23 is a flowchart relating to a method execution end process called out in the object method execution process.

【図24】オブジェクトメソッド実行処理の中でよびだ
される、メソッド実行終了処理に関する、流れ図であ
る。
FIG. 24 is a flowchart relating to a method execution ending process called out in the object method execution process.

【図25】第2図のプログラムで用いる組み込み命令群
を示す図である。
FIG. 25 is a diagram showing a group of embedded instructions used in the program of FIG. 2;

【図26】具体例を用いた実施例の説明図であり、ディ
スプレイ装置上の様子と、主記憶装置上の主な状態を説
明するものである。
FIG. 26 is an explanatory diagram of an embodiment using a specific example, explaining a state on a display device and a main state on a main storage device.

【図27】具体例を用いた実施例の説明図であり、ディ
スプレイ装置上の様子と、主記憶装置上の主な状態を説
明するものである。
FIG. 27 is an explanatory diagram of an embodiment using a specific example, explaining a state on a display device and a main state on a main storage device.

【図28】具体例を用いた実施例の説明図であり、ディ
スプレイ装置上の様子と、主記憶装置上の主な状態を説
明するものである。
FIG. 28 is an explanatory diagram of an embodiment using a specific example, illustrating a state on a display device and a main state on a main storage device.

【図29】具体例を用いた実施例の説明図であり、ディ
スプレイ装置上の様子と、主記憶装置上の主な状態を説
明するものである。
FIG. 29 is an explanatory diagram of an embodiment using a specific example, illustrating a state on a display device and a main state on a main storage device.

【図30】具体例を用いた実施例の説明図であり、ディ
スプレイ装置上の様子と、主記憶装置上の主な状態を説
明するものである。
FIG. 30 is an explanatory diagram of an embodiment using a specific example, illustrating a state on a display device and a main state on a main storage device.

【図31】具体例を用いた実施例の説明図であり、ディ
スプレイ装置上の様子と、主記憶装置上の主な状態を説
明するものである。
FIG. 31 is an explanatory diagram of an embodiment using a specific example, explaining a state on a display device and a main state on a main storage device.

【図32】オブジェクトインスタンスの3次元空間内の
配置とそれを投影するビューを説明する図である。
FIG. 32 is a diagram illustrating an arrangement of an object instance in a three-dimensional space and a view for projecting the arrangement.

【図33】それぞれ本発明を2次元システムで簡単に実
現する方法を説明する図である。
FIG. 33 is a diagram illustrating a method of easily realizing the present invention in a two-dimensional system.

【図34】それぞれ本発明を2次元システムで簡単に実
現する方法を説明する図である。
FIG. 34 is a diagram illustrating a method of easily realizing the present invention in a two-dimensional system.

【図35】それぞれ本発明を2次元システムで簡単に実
現する方法を説明する図である。
FIG. 35 is a diagram illustrating a method of easily realizing the present invention in a two-dimensional system.

【符号の説明】[Explanation of symbols]

135…オブジェクトメソッド実行処理、123…3次
元形状データベース、124…オブジェクトライブラ
リ、122…コマンド待ち行列スタック、125…候補
音声データベース、142…音声認識処理、143…音
声イベント発生処理。
135: Object method execution processing, 123: Three-dimensional shape database, 124: Object library, 122: Command queue stack, 125: Candidate voice database, 142: Voice recognition processing, 143: Voice event generation processing

─────────────────────────────────────────────────────
────────────────────────────────────────────────── ───

【手続補正書】[Procedure amendment]

【提出日】平成13年5月7日(2001.5.7)[Submission date] May 7, 2001 (2001.5.7)

【手続補正1】[Procedure amendment 1]

【補正対象書類名】明細書[Document name to be amended] Statement

【補正対象項目名】発明の名称[Correction target item name] Name of invention

【補正方法】変更[Correction method] Change

【補正内容】[Correction contents]

【発明の名称】プログラム動作状況表示方法および装置 Patent application title: Program operation status display method and apparatus

【手続補正2】[Procedure amendment 2]

【補正対象書類名】明細書[Document name to be amended] Statement

【補正対象項目名】特許請求の範囲[Correction target item name] Claims

【補正方法】変更[Correction method] Change

【補正内容】[Correction contents]

【特許請求の範囲】[Claims]

【手続補正3】[Procedure amendment 3]

【補正対象書類名】明細書[Document name to be amended] Statement

【補正対象項目名】0001[Correction target item name] 0001

【補正方法】変更[Correction method] Change

【補正内容】[Correction contents]

【0001】[0001]

【発明の属する技術分野】本発明は、計算機にて処理さ
れている状況を表示する技術に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a computer
Related to the technology of displaying the situation.

【手続補正4】[Procedure amendment 4]

【補正対象書類名】明細書[Document name to be amended] Statement

【補正対象項目名】0013[Correction target item name] 0013

【補正方法】変更[Correction method] Change

【補正内容】[Correction contents]

【0013】[0013]

【発明が解決しようとする課題】第2又は第3の公知技
術では処理対象に対応するアイコンの表示を実行段階に
応じて変化させることにより、プログラムの実行段階を
操作者に知らせている。しかし、第2、第3の公知技術
は、第1の公知技術にあるような、オブジェクトあるい
はメソッド、あるいはメッセージという概念がない。つ
まり、処理対象を直接指定するコマンドからなるプログ
ラムを作成するのみである。一方、第1の公知技術で
は、あるオブジェクトに対して作成すべきメソッド(プ
ログラム)として、他のオブジェクトに割り当てられた
メソッドによる処理を含む処理を実行するプログラムを
作成することができる。その意味できわめて、汎用的な
あるいは高度なプログラム作成法といえる。しかし、こ
の第1の公知技術の場合、作成中のプログラムの実行状
態を知ることができない。本発明の目的は、いろいろの
処理対象に割り当てられている処理を実行するプログラ
ムの実行状態を操作者が知ることを可能にする動作状況
表示方法および装置を提供するとにある
In the second or third known technique, the operator is notified of the execution stage of the program by changing the display of the icon corresponding to the processing target according to the execution stage. However, the second and third known technologies do not have the concept of an object, a method, or a message as in the first known technology. That is, only a program consisting of commands for directly specifying a processing target is created. On the other hand, in the first known technique, as a method (program) to be created for a certain object, a program for executing a process including a process by a method assigned to another object can be created. In that sense, it can be said to be a very general-purpose or advanced program creation method. However, in the case of the first known technique, the execution state of the program being created cannot be known. The purpose of the present invention is to
A program that executes the process assigned to the process target
Operation status that allows the operator to know the execution status of the program
It is to provide a display method and an apparatus .

【手続補正5】[Procedure amendment 5]

【補正対象書類名】明細書[Document name to be amended] Statement

【補正対象項目名】0015[Correction target item name] 0015

【補正方法】削除[Correction method] Deleted

【手続補正6】[Procedure amendment 6]

【補正対象書類名】明細書[Document name to be amended] Statement

【補正対象項目名】0016[Correction target item name] 0016

【補正方法】変更[Correction method] Change

【補正内容】[Correction contents]

【0016】[0016]

【課題を解決するための手段】請求項1記載の構成によ
り、上記課題を改善することができる。
According to the structure of the first aspect,
Thus, the above problem can be improved.

【作用】プログラムの実行に応じて、そのプログラムに
対応するアイコンの表示が、そのプログラムの処理内容
により変化するため、ユーザはそのプログラムの実行状
態を知ることができる。
[Function] According to the execution of a program,
The display of the corresponding icon indicates the processing content of the program
The program execution status.
You can know the state.

【手続補正7】[Procedure amendment 7]

【補正対象書類名】明細書[Document name to be amended] Statement

【補正対象項目名】0017[Correction target item name] 0017

【補正方法】削除[Correction method] Deleted

【手続補正8】[Procedure amendment 8]

【補正対象書類名】明細書[Document name to be amended] Statement

【補正対象項目名】0108[Correction target item name] 0108

【補正方法】変更[Correction method] Change

【補正内容】[Correction contents]

【0108】[0108]

【発明の効果】本発明によれば、プログラムの実行に応
じて、そのプログラムに対応するアイコンの表示が、そ
のプログラムの処理内容により変化するため、ユーザは
そのプログラムの実行状態を知ることができる。
According to the present invention, it is possible to respond to the execution of a program.
The icon corresponding to the program is displayed
Changes depending on the processing contents of the program
You can know the execution status of the program.

───────────────────────────────────────────────────── フロントページの続き (72)発明者 松田 芳樹 東京都国分寺市東恋ヶ窪1丁目280番地 株式会社日立製作所中央研究所内 Fターム(参考) 5E501 AA02 BA05 CA03 CB02 CB09 CB15 EA11 FA04 FB22 FB25 FB44  ────────────────────────────────────────────────── ─── Continuing on the front page (72) Inventor Yoshiki Matsuda 1-280 Higashi-Koigabo, Kokubunji-shi, Tokyo F-term in Central Research Laboratory, Hitachi, Ltd. 5E501 AA02 BA05 CA03 CB02 CB09 CB15 EA11 FA04 FB22 FB25 FB44

Claims (14)

【特許請求の範囲】[Claims] 【請求項1】 表示手段を有する処理装置における処理
状況表示方法において、 プログラムの動作状況を示すアイコンを前記表示手段に
表示し、 前記アイコンに対する指示に応答して所定の処理手順を
実行し、 前記アイコンにおける表示位置の変化の有無に関らず、
前記処理手順の進捗状況に応じて前記アイコンの表示態
様を変化させることを特徴とする処理状況表示方法。
1. A processing status display method in a processing device having a display unit, wherein an icon indicating an operation status of a program is displayed on the display unit, and a predetermined processing procedure is executed in response to an instruction for the icon. Regardless of whether the display position of the icon has changed,
A processing status display method, wherein a display mode of the icon is changed according to a progress status of the processing procedure.
【請求項2】 前記アイコンに対する指示は、入力され
た音声に基づいて行われることを特徴とする請求項1記
載の処理状況表示方法。
2. The processing status display method according to claim 1, wherein the instruction for the icon is performed based on an input voice.
【請求項3】 前記アイコンに対する指示に対応して複
数のイベントを割り当ておき、前記進捗状況に応じて前
記アイコンの表示態様を前記イベントに対応して変化さ
せることを特徴とする請求項1記載の処理状況表示方
法。
3. The method according to claim 1, wherein a plurality of events are allocated in accordance with an instruction for the icon, and a display mode of the icon is changed in accordance with the progress in response to the event. Processing status display method.
【請求項4】 前記アイコンの表示の変化は、首振り命
令、首上げ命令、回転命令の少なくともいずれか一つで
あることを特徴とすることを特徴とする請求項1記載の
処理状況表示方法。
4. The processing status display method according to claim 1, wherein the change in the display of the icon is at least one of a swing command, a swing command, and a rotation command. .
【請求項5】 前記指示が電話をかける指示であった場
合、電話アイコンの表示態様を受話器が上げられた状態
に変化させることを特徴とする請求項1記載の処理状況
表示方法。
5. The processing status display method according to claim 1, wherein when the instruction is an instruction to make a telephone call, the display mode of the telephone icon is changed to a state where the handset is lifted.
【請求項6】 前記アイコンの表示態様の変化は、前記
アイコンを他のアイコンの近くに表示することを特徴と
する請求項1記載の処理状況表示方法。
6. The processing status display method according to claim 1, wherein the change in the display mode of the icon displays the icon near another icon.
【請求項7】 表示手段を有する処理装置を用いた処理
状況表示装置において、 操作対象を表すアイコンと前記操作対象を操作するアイ
コンとを前記表示手段に表示する表示制御手段と、 前記アイコンに対する指示に応答して、所定の処理手順
を実行する実行手段とを備え、 前記表示制御手段は、前記アイコンにおける表示位置の
変化の有無に関らず、前記処理手順の進捗状況に応じて
前記アイコンの表示態様を変化させることを特徴とする
処理状況表示装置。
7. A processing status display device using a processing device having a display means, a display control means for displaying an icon representing an operation target and an icon for operating the operation target on the display means, and an instruction for the icon Execution means for executing a predetermined processing procedure in response to the display control means, wherein the display control means executes the processing of the icon in accordance with the progress of the processing procedure irrespective of whether or not the display position of the icon has changed. A processing status display device characterized by changing a display mode.
【請求項8】 前記アイコンに対する指示は、入力した
音声に基づいて行われうことを特徴とする請求項1記載
の処理状況表示装置。
8. The processing status display device according to claim 1, wherein the instruction for the icon is performed based on an input voice.
【請求項9】 前記表示制御手段は、前記アイコンに対
する指示に対応して複数のイベントを割り当ておき、前
記進捗状況に応じて前記アイコンの表示態様を前記イベ
ントに対応して変化させることを特徴とする請求項1記
載の処理状況表示装置。
9. The display control unit according to claim 2, wherein a plurality of events are assigned in accordance with an instruction for the icon, and a display mode of the icon is changed in accordance with the progress according to the progress. The processing status display device according to claim 1.
【請求項10】 前記アイコンの表示の変化は、首振り
命令、首上げ命令、回転命令の少なくともいずれか一つ
であることを特徴とする請求項1記載の処理状況表示装
置。
10. The processing status display device according to claim 1, wherein the change in the display of the icon is at least one of a swing command, a swing command, and a rotation command.
【請求項11】 前記指示が電話をかける指示であった
場合、電話アイコンの表示態様を受話器が上げられた状
態に変化させることを特徴とする請求項1記載の処理状
況表示装置。
11. The processing status display device according to claim 1, wherein when the instruction is an instruction to make a telephone call, the display mode of the telephone icon is changed to a state in which the handset is lifted.
【請求項12】 前記アイコンの表示態様の変化は、前
記アイコンを他のアイコンと部分的に重ねて表示するこ
とを特徴とする請求項1記載の処理状況表示装置。
12. The processing status display device according to claim 1, wherein the change in the display mode of the icon is performed by partially displaying the icon with another icon.
【請求項13】 表示手段を有する処理装置における処
理状況表示方法において、 プログラムの動作状況を示すアイコンを前記表示手段に
表示し、 前記アイコンに対する指示に応答して、所定の処理手順
を実行することを特徴とする処理状況表示方法。
13. A processing status display method in a processing device having a display means, wherein an icon indicating an operation status of a program is displayed on the display means, and a predetermined processing procedure is executed in response to an instruction for the icon. A processing status display method characterized by the following.
【請求項14】 表示手段を有する処理装置を用いた処
理状況表示方法において、 電子秘書を表す電子秘書アイコンを前記表示手段に表示
し、 前記電子秘書に対する指示に応答して、所定の処理手順
を実行し、 前記電子秘書アイコンにおける表示位置の変化の有無に
関らず、前記処理手順の進捗状況に応じて、設定された
手順に基づいて前記電子秘書アイコンの表示態様を変化
させることを特徴とする処理状況表示方法。
14. A processing status display method using a processing device having a display means, wherein an electronic secretary icon representing an electronic secretary is displayed on the display means, and a predetermined processing procedure is performed in response to an instruction for the electronic secretary. Executing, irrespective of the presence or absence of a change in the display position of the electronic secretary icon, changing the display mode of the electronic secretary icon based on a set procedure according to the progress of the processing procedure. The processing status display method to be performed.
JP2001107929A 2001-04-06 2001-04-06 Icon display method and system Expired - Lifetime JP3322264B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001107929A JP3322264B2 (en) 2001-04-06 2001-04-06 Icon display method and system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001107929A JP3322264B2 (en) 2001-04-06 2001-04-06 Icon display method and system

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2000048906A Division JP3366313B2 (en) 1990-04-24 2000-02-21 Program operation status display method and system

Publications (2)

Publication Number Publication Date
JP2001350555A true JP2001350555A (en) 2001-12-21
JP3322264B2 JP3322264B2 (en) 2002-09-09

Family

ID=18960165

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001107929A Expired - Lifetime JP3322264B2 (en) 2001-04-06 2001-04-06 Icon display method and system

Country Status (1)

Country Link
JP (1) JP3322264B2 (en)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007319698A (en) * 2007-08-06 2007-12-13 Sysmex Corp Analyzer
JP2008102148A (en) * 2007-11-27 2008-05-01 Sysmex Corp Analysis device
JP2008224694A (en) * 2008-06-23 2008-09-25 Sysmex Corp Blood analyzer for animals
JP2008224693A (en) * 2008-06-23 2008-09-25 Sysmex Corp Blood analyzer for animals
JP2008224695A (en) * 2008-06-23 2008-09-25 Sysmex Corp Analyzer for animals
JP2010520535A (en) * 2007-03-01 2010-06-10 ザ・ボーイング・カンパニー People transparency paradigm
US8668869B2 (en) 2003-07-16 2014-03-11 Sysmex Corporation Analyzer

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5957371A (en) * 1982-09-28 1984-04-02 Fujitsu Ltd Display controlling system of automatic business machine
JPS60173678A (en) * 1984-02-18 1985-09-07 Nippon Telegr & Teleph Corp <Ntt> Conversational type picture converting system
JPS62200421A (en) * 1986-02-28 1987-09-04 Hitachi Ltd Menu selecting system by graphic
JPS62249225A (en) * 1986-04-23 1987-10-30 Hitachi Ltd Display system for information processing system
JPH01173139A (en) * 1987-12-23 1989-07-07 Internatl Business Mach Corp <Ibm> Multiple task state display
JPH01240978A (en) * 1988-03-23 1989-09-26 Hitachi Ltd Interactive screen defining device
JPH01318150A (en) * 1988-06-20 1989-12-22 Fuji Xerox Co Ltd Parallel processing type document processor
JPH0285918A (en) * 1988-09-22 1990-03-27 Asahi Chem Ind Co Ltd Input device
JPH036631A (en) * 1989-05-15 1991-01-14 Internatl Business Mach Corp <Ibm> Method of monitoring status of application operation program
JPH03233750A (en) * 1990-02-09 1991-10-17 Fujitsu Ltd Process state display/conversion system

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5957371A (en) * 1982-09-28 1984-04-02 Fujitsu Ltd Display controlling system of automatic business machine
JPS60173678A (en) * 1984-02-18 1985-09-07 Nippon Telegr & Teleph Corp <Ntt> Conversational type picture converting system
JPS62200421A (en) * 1986-02-28 1987-09-04 Hitachi Ltd Menu selecting system by graphic
JPS62249225A (en) * 1986-04-23 1987-10-30 Hitachi Ltd Display system for information processing system
JPH01173139A (en) * 1987-12-23 1989-07-07 Internatl Business Mach Corp <Ibm> Multiple task state display
JPH01240978A (en) * 1988-03-23 1989-09-26 Hitachi Ltd Interactive screen defining device
JPH01318150A (en) * 1988-06-20 1989-12-22 Fuji Xerox Co Ltd Parallel processing type document processor
JPH0285918A (en) * 1988-09-22 1990-03-27 Asahi Chem Ind Co Ltd Input device
JPH036631A (en) * 1989-05-15 1991-01-14 Internatl Business Mach Corp <Ibm> Method of monitoring status of application operation program
JPH03233750A (en) * 1990-02-09 1991-10-17 Fujitsu Ltd Process state display/conversion system

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8668869B2 (en) 2003-07-16 2014-03-11 Sysmex Corporation Analyzer
JP2010520535A (en) * 2007-03-01 2010-06-10 ザ・ボーイング・カンパニー People transparency paradigm
JP2007319698A (en) * 2007-08-06 2007-12-13 Sysmex Corp Analyzer
JP4722893B2 (en) * 2007-08-06 2011-07-13 シスメックス株式会社 Veterinary blood cell counter
JP2008102148A (en) * 2007-11-27 2008-05-01 Sysmex Corp Analysis device
JP4615559B2 (en) * 2007-11-27 2011-01-19 シスメックス株式会社 Veterinary blood cell counter
JP2008224694A (en) * 2008-06-23 2008-09-25 Sysmex Corp Blood analyzer for animals
JP2008224693A (en) * 2008-06-23 2008-09-25 Sysmex Corp Blood analyzer for animals
JP2008224695A (en) * 2008-06-23 2008-09-25 Sysmex Corp Analyzer for animals
JP4615587B2 (en) * 2008-06-23 2011-01-19 シスメックス株式会社 Veterinary blood cell counter
JP4615589B2 (en) * 2008-06-23 2011-01-19 シスメックス株式会社 Veterinary blood cell counter
JP4615588B2 (en) * 2008-06-23 2011-01-19 シスメックス株式会社 Veterinary blood cell counter

Also Published As

Publication number Publication date
JP3322264B2 (en) 2002-09-09

Similar Documents

Publication Publication Date Title
US6606741B2 (en) Method for visual programming with aid of animation
US5566294A (en) Method for visual programming with aid of animation
US5561811A (en) Method and apparatus for per-user customization of applications shared by a plurality of users on a single display
Shaw et al. The decoupled simulation model for virtual reality systems
AU608236B2 (en) Cursor controlled user interface system
JP3148133B2 (en) Information retrieval device
Dragicevic et al. Input device selection and interaction configuration with ICON
CN102023706B (en) System for interacting with objects in a virtual environment
EP0404505A2 (en) Arrangement for integrating application in a digital processing system
JPH08287288A (en) Plurality of side annotations interactive three-dimensional graphics and hot link
JPH10187449A (en) Object-directed programming device, object-oriented programming backup device component generating device, object-oriented program storage medium, program storage medium for object-oriented programming, component storage means, and inter-object network display method
JPH01200480A (en) Control of computer graphic system
JP3322264B2 (en) Icon display method and system
CN114742981A (en) Post-processing special effect manufacturing system and method, AR special effect rendering method and device
JPH0439092B2 (en)
CN114117645A (en) Ship overall performance prediction integrated application system
JP3366313B2 (en) Program operation status display method and system
CN102637073B (en) Method for realizing man-machine interaction on three-dimensional animation engine lower layer
JP2000200188A (en) Operating program condition display method and device
CN113172622B (en) ROS-based mechanical arm grabbing and assembling management method, system and related equipment
JPH0410030A (en) Program production method
US6219068B1 (en) Editor and editing method in CAD system enabling efficient interactive pattern design
WO2022093723A1 (en) Systems and methods for remote manipulation of multidimensional models
JP2003162431A (en) Method and system for icon display
KR20010011272A (en) Object-oriented robot programming system and method

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080628

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080628

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090628

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100628

Year of fee payment: 8

EXPY Cancellation because of completion of term