JPH0410030A - Program production method - Google Patents

Program production method

Info

Publication number
JPH0410030A
JPH0410030A JP2110014A JP11001490A JPH0410030A JP H0410030 A JPH0410030 A JP H0410030A JP 2110014 A JP2110014 A JP 2110014A JP 11001490 A JP11001490 A JP 11001490A JP H0410030 A JPH0410030 A JP H0410030A
Authority
JP
Japan
Prior art keywords
program
command
icon
display
execution
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2110014A
Other languages
Japanese (ja)
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 JP2110014A priority Critical patent/JPH0410030A/en
Priority to US07/589,405 priority patent/US5566294A/en
Publication of JPH0410030A publication Critical patent/JPH0410030A/en
Priority to US08/659,805 priority patent/US5774122A/en
Priority to US09/015,070 priority patent/US6005576A/en
Priority to US09/405,214 priority patent/US6334211B1/en
Priority to JP2000048906A priority patent/JP3366313B2/en
Priority to US09/998,793 priority patent/US6606741B2/en
Pending legal-status Critical Current

Links

Landscapes

  • Stored Programmes (AREA)
  • Input From Keyboards Or The Like (AREA)

Abstract

PURPOSE:To enable a user to intuitively grasp the executing state of a program by changing the display of an icon corresponding to the program according to the executing stage of the program and in relation to the icons showing other processing subjects. CONSTITUTION:The display of an icon 3102 corresponding to a program under production is changed in relation to the icons 3104 - 3106 corresponding to other processing subjects at a point near the time point when the program under production requests the processing that is already assigned to another subject. For instance, the icon 3102 is moved to the places of the icons 3104 - 3106. At the same time, the display is changed at the time point when the produced program is carried out. Furthermore an object projected on a two-dimensional plane within a three-dimensional space is used as an icon for input of a computer. Thus a user can grasp the executing state of the program and can perform the input of the computer with use of a screen having a very near relation.

Description

【発明の詳細な説明】 3、発明の詳な説明 [産業上の利用分野コ 本発明は計算機の使用形態及び、プログラムの実行方法
、プログラムの作成方法に関する。
Detailed Description of the Invention 3. Detailed Description of the Invention [Field of Industrial Application] The present invention relates to the usage of a computer, a program execution method, and a program creation method.

[従来の技術] 近年、オブジェクト指向と呼ばれる計算モデルが広く用
いられるようになっている。計算モデルとは計算を行う
にあたっての基本となる考え方、とらえ方のことであり
、計算機などでこのモデルを実現する場合にはデータ構
造とデータの受渡し、データを変換する手続きをいつ、
どのようなタイミングで行うかということを規定するも
のである。
[Prior Art] In recent years, a computational model called object-oriented has become widely used. A calculation model is the basic way of thinking and understanding when performing calculations, and when realizing this model with a computer etc., it is necessary to understand the data structure, data transfer, data conversion procedure, when,
It stipulates the timing at which it is to be carried out.

オブジェクト指向計算モデルで用いる用語を以下に説明
する。
The terms used in the object-oriented computational model are explained below.

(a)オブジェクト これはデータ構造と手続きの組である。データ構造とし
て、(b)のスロットを、手続きとして(b)メソッド
をもつ。
(a) Object This is a set of data structures and procedures. It has a slot (b) as a data structure and a method (b) as a procedure.

(b)スロット オブジェクトのもつデータ構造の名前。たとえば整数オ
ブジェクトなら整数値スロットを、文書オブジェクトな
ら文書スロットをもつ。
(b) Name of the data structure of the slot object. For example, an integer object has an integer value slot, and a document object has a document slot.

(c)スロット値 オブジェクトのスロットに実際に保持するデータ。(c) Slot value The actual data held in the object's slots.

(d)メソッド オブジェクトに定義されている手続き。スロットに対す
る操作だけを許すことにより、プログラムのモジュール
性を保証する。
(d) Procedures defined in method objects. By only allowing operations on slots, program modularity is guaranteed.

(e)オブジェクトインスタンス オブジェクトは概念的に扱われ、実際に記憶装置上に配
置されることはない、スロット値を実際にもつオブジェ
クトをオブジェクトインスタンスと呼ぶ。
(e) Object Instance Objects are treated conceptually, and objects that actually have slot values are called object instances, which are not actually placed on a storage device.

(f)メツセージ メソッド実行のためのコマンド。引数とメソッド名から
構成されるが、引数をオブジェクトインスタンスに限定
することによって、プログラムのモジュール性を保証す
る。
(f) Command for executing message method. It consists of arguments and method names, but by limiting arguments to object instances, it guarantees program modularity.

オブジェクト指向計算モデルは、計算をオブジェクトイ
ンスタンス間のメツセージのやり取りによってのみ許す
計算モデルである。計算の結果はオブジェクトインスタ
ンスのスロット値の変化として表れる。例えば、整数オ
ブジェクトは、スロットとして整数値スロットを持ち、
またメソッドどして加算メソッド等を持つ。具体的な値
3をもつ整数オブジェクトインスタンスAを設計するに
は、そのスロット値を3にする。この整数オブジェクト
インスタンスAに対して4を加えたいときには、別に整
数オブジェクトインスタンスBを用意して、二〇Bの整
数値スロットの値を4として。
An object-oriented computational model is a computational 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,
It also has methods such as addition methods. To design an integer object instance A with a concrete value of 3, make its slot value 3. If you want to add 4 to this integer object instance A, prepare another integer object instance B and set the value of the integer value slot of 20B to 4.

Aに対して、「B 加算」というメツセージを送る。こ
の結果、Aの整数値スロットの値は7になり、望む結果
が得られたことになる。ただし、整数のような簡単な状
態量に対してまですべてオブジェクトインスタンスを生
成するのは煩雑であるということから、簡単な状態量は
アトムと呼び、それが引数として用いられる場合にはそ
の値をそのまま他のオブジェクトインスタントに与える
ことを許す。たとえば、上の例ではAにたいして「4 
加算Jという略式メツセージをAに送る。
Sends the message "B addition" to A. As a result, the value of the integer value slot of A becomes 7, which means that the desired result has been obtained. However, since it is cumbersome to generate object instances for all simple state quantities such as integers, simple state quantities are called atoms, and when they are used as arguments, their values are Allows to be given as is to other object instants. For example, in the above example, for A, “4
Sends an informal message called addition J to A.

この計算モデルを用いることによって、データと手続き
とが同じところに格納されるため、モジュール性に富ん
だ、判り易いプログラムを作成することができる。
By using this computational model, data and procedures are stored in the same place, making it possible to create programs that are highly modular and easy to understand.

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

また、操作者の入力をメツセージとして受は取ってこれ
を実行するだけではなく、アイコンを用いてプログラミ
ングすることが行われている。すなわち、オブジェクト
インスタンスをアイコンとしてデイスプレィ上に表示し
、これにユーザから操作して、プログラムを生成する。
In addition to receiving and executing operator input as messages, programming is also performed using icons. That is, an object instance is displayed as an icon on a display, and a program is generated by operating the object instance from the user.

これは、プログラミング・パイ・イグザンプル(P r
 o g r ammxng  by  Exampl
e:PBE)と呼ばれるもので、さまざまな計算資源で
ある、ファイルだとかアプリケーションプログラムなど
のオブジェクトインスタンスをアイコンにしてデイスプ
レィ装置上に表示し、これらのアイコンをマウスなどを
用いて操作者に操作させ、システムがこの操作を解釈し
、この操作で指示されたオブジェクトインスタンスにた
いしてこの操作を実行し、同時にその操作を表わすコマ
ンドを生成する。このように、操作、実行、コマンド生
成を繰り返すことにより所望のプログラムが得られる。
This is the Programming Pi Example (P r
o gr ammxng by Example
e:PBE), which displays object instances such as files and application programs, which are various computational resources, as icons on a display device, and allows an operator to manipulate these icons using a mouse or other device. , the system interprets this operation, performs this operation on the object instance pointed to by this operation, and simultaneously generates a command representing the operation. In this way, a desired program can be obtained by repeating operations, executions, and command generation.

オブジェクトインスタンスは具体的な値(例)を持つも
のであるが、これに対する操作をシステムが解釈してよ
り一般的なオブジェクトに対するプログラムを生成する
ことが特徴である。生成されたプログラムはプログラム
作成時にユーザが操作した例と異なる例に適用できる。
An object instance has a specific value (example), but the system interprets operations on this instance and generates a program for a more general object. The generated program can be applied to an example different from the example operated by the user when creating the program.

これは、オブジェクトインスタンスに対して、この例に
対する操作解釈をそのオブジェクトに属するものすべて
に適用可能な形に変換されているためである。また、具
体例を用いてプログラミングするため、通常のプログラ
ミングのようにプログラマが問題を一般化する必要がな
く、プログラミングの労力が軽減される。
This is because, for an object instance, the operational interpretation for this example is converted into a form that can be applied to everything belonging to that object. Furthermore, since programming is performed using specific examples, the programmer does not need to generalize the problem as in normal programming, which reduces programming effort.

PBEの一例として、プログラムの起動を管理するプロ
グラムに対応させて、エージェントと呼ばれる人物をオ
ブジェクトインスタンスとして定義してこれをデイスプ
レィ装置上にアイコンとして表示し、これに対して指示
を送ってプログラムの実行を依頼するインターフェース
を持ったシステムが、日経コンピュータ″別冊ソフトウ
ェア・マルチメディア時代のユーザ・インターフェース
”Pp、165−178 (1989,7,28発行)
に述べられている(以下、この技術を第1の公知技術と
呼ぶ)。このシステムは、デイスプレィ装置上にエージ
ェントと呼ばれる管理プログラムのオブジェクトインス
タンスを表わす、人間の顔をもった二次元図形からなる
アイコンを表し、ファイル、キャビネットなどを表すオ
ブジェクトインスタンスをそれぞれ表わす二次元図形か
らなるアイコンを表示し、操作者は表示されたエージェ
ントアイコンと表示されているその他のアイコンに対し
て、マウスやキーボードを用いて指示する。エージェン
トは、ユーザからの入力を解釈して、適当なプログラム
を選択してこれを実行する。
As an example of PBE, a person called an agent is defined as an object instance corresponding to a program that manages program startup, and this is displayed as an icon on a display device, and instructions are sent to it to execute the program. A system with an interface for requesting is published in Nikkei Computer "User Interface in the Era of Software Multimedia", Pp, 165-178 (published on July 28, 1989).
(hereinafter, this technique will be referred to as the first known technique). This system displays an icon consisting of a two-dimensional figure with a human face representing an object instance of a management program called an agent on a display device, and an icon consisting of two-dimensional figures each representing an object instance representing a file, a cabinet, etc. Icons are displayed, and the operator gives instructions to the displayed agent icon and other displayed icons using a mouse or keyboard. The agent interprets input from the user and selects and executes the appropriate program.

このシステムのPBEの機能としては、ユーザからの入
力を解釈した結果を依頼を受けたエージェントアイコン
にくくりつけて記憶して、入力列をプログラムとして生
成することである。
The function of the PBE in this system is to store the result of interpreting the input from the user by attaching it to the requested agent icon, and to generate an input string as a program.

オブジェクトあるいはメソッドという概念を用いていな
いが、アイコンを用いてプログラム作成の容易化を図る
技術として、情報処理学会第30回プログラミング・シ
ンポジウム報告集、pp。
Information Processing Society of Japan's 30th Programming Symposium Reports, pp. 2012, pp. 11-11, as a technology that does not use the concept of objects or methods, but uses icons to facilitate program creation.

9−17 (1989年1月)で発明者らが述べている
プログラム生成システム(以下第2の公知技術と呼ぶ)
がある。ここでは、デイスプレィ装置上に、数値データ
や配列データなどのデータの例をアイコンとして表示し
入力すべきコマンドの処理対象を指定するのに、それに
対応するアイコンを画面上で選択するようになっている
。また、プログラム作成時に入力したコマンドをその例
データに対して実行し、結果を操作者に通知するように
なっている。また、その結果によっては表示したアイコ
シを複数の領域に分けるようになっている。このように
、プログラムの実行状態を表示することにより1作成中
のプログラムの現在の実行状況を正確に、判り易く操作
者に通知することができる。
9-17 (January 1989), the program generation system described by the inventors (hereinafter referred to as the second known technology)
There is. Here, examples of data such as numerical data and array data are displayed as icons on the display device, and the corresponding icon is selected on the screen to specify the processing target of the input command. There is. Additionally, the commands input when creating the program are executed on the example data, and the results are notified to the operator. Also, depending on the results, the displayed icon may be divided into multiple areas. By displaying the execution status of the program in this manner, the current execution status of the program being created can be accurately and easily notified to the operator.

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

また、アイ・イー・イー・イー・ワークショップ・オン
・ビジュアルランゲージ(IEEE  Worksho
p   on   Visual   Languag
e)、pp、80−85 1989 (以下第3の従来
技術と呼ぶ)には次の技術がある。
In addition, the IEEE Workshop on Visual Language (IEEE Worksho
p on Visual Language
e), pp. 80-85 1989 (hereinafter referred to as the third prior art) includes the following technology.

処理対象の例としてハノイの塔を構成する円板を表示し
、これをアイコンのように用いて、第2の公知技術と同
様な方法でプログラムを作成する技術が表示されている
。ここでは、プログラム作成時にその一部のコマンドと
して、円板を移動させるコマンドが入力し、これを実行
するようにしている。しかも、この移動を動画として行
うようになっている。これにより、プログラムの実行状
態がより分かりやすくなっている。
A technique is displayed in which a disk forming the Tower of Hanoi is displayed as an example of a processing target, and the disk is used like an icon to create a program in a manner similar to the second known technique. Here, when creating a program, a command to move the disk is input as part of the command, and this command is executed. What's more, this movement is shown as a video. This makes it easier to understand the program execution status.

[発明が解決しようとする課題] 第2又は第3の公知技術では処理対象に対応するアイコ
ンの表示を実行段階に応じて変化させることにより、プ
ログラムの実行段階を操作者に知らせている。しかし、
第2、第3の公知技術は、第1の公知技術にあるような
、オブジェクトあるいはメソッド、あるいはメツセージ
という概念がない。つまり、処理対象を直接指定するコ
マンドからなるプログラムを作成するのみである。一方
、第1の公知技術では、あるオブジェクトに対して作成
すべきメソッド(プログラム)として、他のオブジェク
トに割りあてられたメソッドによる処理を含む処理を実
行するプログラムを作成することができる。その意味で
きわめて、汎用的なあるいは高度なプログラム作成法と
いえる。しかし。
[Problems to be Solved by the Invention] In the second or third known technique, the operator is informed of the execution stage of the program by changing the display of the icon corresponding to the processing target depending on the execution stage. but,
The second and third known techniques do not have the concept of objects, methods, or messages, as is the case with the first known technique. In other words, all you have to do is create a program consisting of commands that directly specify the processing target. 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 that executes processing including processing by a method assigned to another object. In that sense, it can be said to be an extremely versatile or advanced program creation method. but.

この第1の公知技術の場合、作成中のプログラムの実行
状態を知ることができない。
In the case of this first known technique, the execution state of the program being created cannot be known.

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

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

[課題を解決するための手段] 上記課題を解決するために1作成中のプログラムが、他
の処理対象にすでに割りあてられた処理を要求する時点
の近傍で、その作成中のプログラムに対応するアイコン
9表示を、上記他の処理対象に対応するアイコンに関連
させて変化させる。
[Means for solving the problem] In order to solve the above problem, a program being created corresponds to the program being created near the time when the program being created requests processing that has already been assigned to another processing target. The display of the icon 9 is changed in relation to the icon corresponding to the other processing target.

たとえば前者のアイコンを後者のアイコンのところに移
動させる。また、作成済のプログラムの実行段階におい
て、上記時点において上記表示の変更をする。また、計
算機入力用のアイコンとして、三次元空間内の物体を二
次元平面に投影したものを用いる。
For example, move the former icon to the latter icon. Further, in the execution stage of the created program, the above-mentioned display is changed at the above-mentioned point. Furthermore, as an icon for computer input, a projection of an object in a three-dimensional space onto a two-dimensional plane is used.

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

また、三次元アイコンを用いることにより、非常に 近
感のある画面を用いて計算機入力をすることができる。
Additionally, by using three-dimensional icons, computer input can be performed using a very close-looking screen.

[実施例] A、 概要 第1図は本発明の実施例によるプログラム生成システム
構成を示す図である。この図で示すようにシステムはデ
イスプレィ装置101と、マウス109、キーボード1
10および音声入力装置111の3つの入力装置と、プ
ログラム作成用プログラム10を格納した主記憶装置1
12と、補助記憶装置113と、CPU114と、大型
汎用計算機116や電話回線117と接続するためのネ
ットワーク装置115と、音声出力装置118とから構
成されている。
[Embodiment] A. Overview FIG. 1 is a diagram showing the configuration of a program generation system according to an embodiment of the present invention. As shown in this figure, the system includes a display device 101, a mouse 109, and a keyboard 1.
10 and a voice input device 111, and a main storage device 1 that stores 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.

デイスプレィ装置101の表示画面は図に示すように画
面領域102〜107からなる。
The display screen of display device 101 consists of screen areas 102 to 107 as shown in the figure.

オブジェクト表示画面102には、オフィス空間内のい
ろいろの備品、たとえば電話3104、机3105、端
末3106およびそこに立っている秘書を表わす人物3
1o2をある点ににある。仮想的なTVカメラ(図示せ
ず)から見たときの3次元図形があらかじめ表示される
。本実施例では、これらの図形のそれぞれに対してオブ
ジェクト指向計算モデルに言う所のオブジェクトが定義
される。これらの図形は、それぞれ対応するオブジェク
トのアイコンとして利用される。これらのアイコンを利
用して所望のプログラムが人物3102に対するメソッ
ドとして作成される。作成したプログラムの後の実行時
に、その実行状態を操作者に分からせるために、本実施
例では人物3102にプログラムの実行状況に対応した
動作をプログラム作成時にさせる。この動作を指示する
コマンドを作成すべきプログラムの一部として入力する
The object display screen 102 shows various equipment in the office space, such as a telephone 3104, a desk 3105, a terminal 3106, and a person 3 representing a secretary standing there.
1o2 at a certain point. A three-dimensional figure as viewed from a virtual TV camera (not shown) is displayed in advance. In this embodiment, an object in the object-oriented calculation model is defined for each of these figures. These figures are used as icons of the respective objects. A desired program is created as a method for the person 3102 using these icons. In order to make the operator aware of the execution status of the created program when it is subsequently executed, in this embodiment, the person 3102 is made to perform an action corresponding to the execution status of the program when the program is created. Enter a command that instructs this operation as part of the program to be created.

後述するように、この人物3102を動かしながらプロ
グラミングがなされる。モーション・コントロール画面
103には、この動きを指示するためのスライダ217
〜222が表示される。
As will be described later, programming is performed while moving this person 3102. The motion control screen 103 includes a slider 217 for instructing this movement.
~222 is displayed.

ビューコントローラ画面104には、オフィス空間を見
る視野を変化させるために、上記仮想的なVTカメラの
位置あるいは姿勢を制御するためのスライダ230〜2
35が表示される。メソッドプログラミング画面105
には作成すべきプログラムを構成するために入力された
コマンド等を表示する。プログラムコントロール画面1
06には、操作者により入力されたコマンドの実行ある
いは記憶など制御するためのメニュー等が表示される。
The view controller screen 104 includes sliders 230 to 2 for controlling the position or posture of the virtual VT camera in order to change the view of the office space.
35 is displayed. Method programming screen 105
Displays the commands entered to configure the program to be created. Program control screen 1
06 displays a menu and the like for controlling execution or storage of commands input by the operator.

端末画面107には、入力装置!109〜111、デイ
スプレィ装置101からなる端末の状態を操作者に知ら
せる制御情報が表示される。オブジェクトモデリング画
面108には、オブジェクト表示画面に表示されたいろ
いろのアイコンの内、操作者が選択したアイコンにて表
わされるオブジェクトに関する情報が表示される。20
1は、表示画面に示されたマウスカーソルを示す。
On the terminal screen 107, there is an input device! 109 to 111, control information that informs the operator of the status of the terminal consisting of the display device 101 is displayed. The object modeling screen 108 displays information regarding the object represented by the icon selected by the operator from among the various icons displayed on the object display screen. 20
1 indicates a mouse cursor shown on the display screen.

第2図において、119,120,126〜136.1
40〜413は、あらかじめ準備されたプログラム作成
用プログラム10のいろいろのモジュールを示す、この
プログラム作成用プログラム10がユーザ入力を解読し
てコマンドを作成するとともに、これらのコマンドを実
行するようになっている。
In Figure 2, 119, 120, 126 to 136.1
Reference numerals 40 to 413 indicate various modules of the program creation program 10 prepared in advance. There is.

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

(1)各オブジェクトの情報すなわち、オブジェクトイ
ンスタンスを格納するオブジェクトインスタンスライブ
ラリ124゜各オブジェクトインスタンスは、各オブジ
ェクトの構造データ、オブジェクトスロット、オブジェ
クトメソッドからなる。
(1) Object instance library 124 that stores information about each object, that is, object instances. Each object instance consists of structural data, object slots, and object methods of each object.

その−例は第3A〜3C図に示されている。Examples thereof are shown in Figures 3A-3C.

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

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

これらのデータは元々は補助記憶113中に格納されて
いるが、プログラム作成用プログラムが必要とするとき
に適宜主記憶装置!112中に置かれる。
These data are originally stored in the auxiliary memory 113, but when needed by the program creation program, they can be stored in the main memory! placed in 112.

以下、本プログラム作成用プログラム10の処理の概要
を述べる。
An overview of the processing of the program creation program 10 will be described below.

(1)マウス109、キーボード110、音声入力装置
111、の3つの入力装置からのユーザ入力情報を処理
119,126,127,140〜143により解釈し
てコマンドを作成し、コマンドバッファ120に格納し
、これをコマンド待ち行列スタック122のトップにあ
るコマンド待ち行列121に加える。以上の処理は第2
図の処理119.126,127,140−143によ
り行なわれる。コマンドとしては人物アイコン3102
等に所望の動作させるコマンドも入力される。このとき
は、モーションコントロール画面103内のいろいろの
スライダーが操作される。
(1) User input information from three input devices, the mouse 109, the keyboard 110, and the voice input device 111, is interpreted by processes 119, 126, 127, and 140 to 143 to create commands and stored in the command buffer 120. , which is added to the command queue 121 at the top of the command queue stack 122. The above process is the second
Processes 119, 126, 127, 140-143 in the figure are performed. A person icon 3102 is used as a command.
A command for a desired operation is also input. At this time, various sliders on the motion control screen 103 are operated.

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

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

(4)コマンドを実行した結果、なんらかの支障があっ
たときには、コマンド失敗が報告される。
(4) If any problem occurs as a result of executing a command, a command failure is reported.

この場合には、実行したコマンドが指定するメソッドの
、再プログラミングが行わなわれる。これもオブジェク
トメソッド実行処理135のを利用して行われる。
In this case, the method specified by the executed command is reprogrammed. This is also performed using the object method execution process 135.

このように、オブジェクトメソッド実行処理135は状
況によってさまざまの働きをするが、コマンド待ち行列
スタック122がこれを制御する働きをする。
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 this.

(5)オブジェクトインスタンスに対応する3次元形状
アイコンは任意の時点でその位置、表示状態を変更する
ことができる。これはモーションコントロール画面10
3上のスライダ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 motion control screen 10
This is done by moving the valuators (vertical thick line parts) of the sliders 217 to 222 on the top 3 left and right with the mouse. The results of changes are not stored as instructions in the program being created during programming. When the "memory" button 216 on the program control screen 106 is selected with the mouse, a command sequence is generated that reproduces the movement or position change leading up to the change, and is stored in the program being created.

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

以上のように、本実施例では、プログラム作成中にこの
プログラムを割り当てる人物アイコン3102に所要の
動きをさせるコマンドを作成すべきプログラムに属する
コマンドの一部として入力することに一つの特徴がある
。さらにプログラム作成時に、これを実行し、プログラ
ミング的に操作者に、入力したコマンドの実行状態を知
らせる。さらに、本実施例では、この人物アイコンを含
ミ、アイコンとして3次元図形をそのまま利用している
。本実施例の他の特徴は以下の詳細説明にて説明する。
As described above, one feature of this embodiment is that, during program creation, a command that causes the person icon 3102 assigned to this program to make a desired movement is input as part of the commands belonging to the program to be created. Furthermore, when creating a program, this is executed and the operator is informed of the execution status of the input command in terms of programming. Furthermore, in this embodiment, three-dimensional figures are used as they are as icons, including this person icon. Other features of this embodiment will be explained in the detailed description below.

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

B、 1  データベース 1、3次元形状データベース123(第4図)本実施例
では、オフィス空間内に配置された人物、電話器、机等
を表わす三次元図形をその空間内に配置されたカメラか
ら見たときの図形を表示画面上に表示し、この表示され
た図形をそれぞれ対応するオブジェクトを表すためのア
イコンとして用いる。
B.1 Database 1, 3D shape database 123 (Fig. 4) In this embodiment, three-dimensional figures representing people, telephones, desks, etc. placed in an office space are acquired from a camera placed in the space. The graphic as viewed is displayed on the display screen, and the displayed graphic is used as an icon to represent the corresponding object.

3次元形状データベース123はこのような3次元図形
のデータを記憶している。各3次元図形のデータは、第
4図に例示されるように、各三次元図形を構成する複数
の多面体のそれぞれの種別と位置、それぞれ多面の色、
光沢などの属性と、変換行列から構成される。第4図に
は、第3B図に示した電話オブジェクトインスタンス2
750の下位要素である受話器(recieve)オブ
ジェクトインスタンス2754の3次元図形データ27
99の一部を示す。
The three-dimensional shape database 123 stores data on such three-dimensional figures. As illustrated in FIG. 4, the data for each three-dimensional figure includes the types and positions of the plurality of polyhedra constituting each three-dimensional figure, the color of each polyhedron,
It consists of attributes such as gloss and a transformation matrix. FIG. 4 shows telephone object instance 2 shown in FIG. 3B.
3D graphic data 27 of a receiver object instance 2754 which is a lower element of 750
Part of 99 is shown.

ここでは8面体と、その頂点座標、色、光沢、その位置
、方向を表わしている。
Here, an octahedron, its vertex coordinates, color, gloss, position, and direction are shown.

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

スロット2711は人物オブジェクトの持つ属性の名前
であり、スロット値を持つ。スロット2711はそれぞ
れの属性の名前と、その属性に関するデータ型を指定す
る。第3A図の例では、人物オブジェクトインスタンス
27o1のスロツ)−2711には位置2720と方向
2721と名前2722という3つの属性の名前があり
、それぞれに関するデータの型がベクトル、ベクトル、
文字列という型のデータが格納されることを示している
A slot 2711 is the name of an attribute of the person object and has a slot value. Slot 2711 specifies the name of each attribute and the data type for that attribute. In the example of FIG. 3A, the slot 2711 of the person object instance 27o1 has three attribute names: position 2720, direction 2721, and name 2722, and the data types for each are vector, vector, vector, etc.
Indicates that string type data is stored.

オブジェクトメソッドはオブジェクト固有の手続きであ
り、ここではその名前と名前に対応する複数のコマンド
列と、引数オブジェクトの組である。実行時のメソッド
呼出しは定義順に行われる。
An object method is an object-specific procedure, and here it is a set of its name, multiple command strings corresponding to the name, and argument objects. Method calls at runtime are performed in the order of definition.

第3A図の例では、callメソッド 2712、go
toメソッド 2713、tel  takeメソッド
、2714、connect (1)メソッド 271
5、c o n n e c t (2)メソッド27
16が定義されている。ここでC0nnectメソツド
は2つの定義があるが、その定義順を表すために順序付
けが行われている。
In the example of Figure 3A, the call method 2712, go
to method 2713, tel take method, 2714, connect (1) method 271
5. CONNECT (2) Method 27
16 are defined. Here, the C0nnec method has two definitions, and they are ordered to represent the order of definition.

本実施例ではオブジェクトは要素を木構造で構成された
要素を有する。それぞれの要素もまたオブジェクトであ
る。オブジェクトインスタンスについても同じである。
In this embodiment, the object has elements configured in a tree structure. Each element is also an object. The same applies to object instances.

第3A図でオブジェクト構造データ27o2から分かる
ように、人物オブジェクトインスタンス2703は、身
体(b o d y)オブジェクトインスタンス270
4を下位要素としてもつ。身体(body)オブジェク
トインスタンス2704は右上腕(ruarm)オブジ
ェクトインスタンス2708、左上腕(l u a r
m)オブジェクトインスタンス2705、などを下位要
素として持つ。このなかでruarmオブジェクトイン
スタンス2708はrlarmオブジェクトインスタン
ス27o9を下位要素として持ち、rlarmオブジェ
クトインスタンス2709はrhandオブジェクトイ
ンスタンス2710を下位要素として持つ。要素のオブ
ジェクトインスタンスの具体例は簡単化のために図示お
よび詳細説明を省略しである。
As can be seen from the object structure data 27o2 in FIG. 3A, the person object instance 2703 is the body object instance 270.
4 as a lower element. A body object instance 2704 includes a right upper arm object instance 2708 and a left upper arm object instance 2708.
m) It has an object instance 2705, etc. as lower elements. Among these, ruarm object instance 2708 has rlarm object instance 27o9 as a lower element, and rlarm object instance 2709 has rhand object instance 2710 as a lower element. Specific examples of object instances of elements are omitted from illustration and detailed description for the sake of brevity.

本実施例では各要素は3次元形状を持っている。In this embodiment, each element has a three-dimensional shape.

3次元形状は3次元形状データベース123(第2図)
に格納されている。また、各要素のオブジェクトインス
タンス(図示せず)にはその要素の属性として、移動可
能属性と回転可能属性が保持される。第3A図の例では
、移動可能属性を持つ要素には(+)を1回転可能属性
を持つ要素には(本)を記しである。このことは他の図
、たとえば第3B、3C図でも同様である。
The 3D shape is stored in the 3D shape database 123 (Figure 2)
is stored in. Furthermore, the object instance (not shown) of each element holds a movable attribute and a rotatable attribute as attributes of that element. In the example of FIG. 3A, an element with a movable attribute is marked with a (+), and an element with a rotatable attribute is marked with a (book). This also applies to other figures, for example, figures 3B and 3C.

要素の属性の移動可能属性、回転可能属性が移動不可能
あるいは回転不可能になっている場合には、それぞれ移
動、回転できない。第3A図の例では、人物オブジェク
トインスタンス2703の下位要素はすべて移動可能属
性が不可能である。
If the movable or rotatable attributes of an element are not movable or rotatable, they cannot be moved or rotated, respectively. In the example of FIG. 3A, all of the subelements of person object instance 2703 do not have a movable attribute.

このことにより、人間の各関節は回転だけが可能で、移
動はできないという自然な状態を実現している。
This creates a natural state in which the human joints can only rotate and cannot move.

特殊なオブジェクトに対するインスタンスとしてカメラ
オブジェクトインスタンス2780 (第3C図)があ
る。カメラオブジェクトイインスタンス2780はその
スロット2790としてカメラ位置である位[2791
、カメラの視野の水平方向を示す横方向方向2792、
カメラの視野の垂直方向を示す上方向2793という3
つの属性それぞれにベクトル型のデータを格納する。ま
た、このオブジェクトインスタンスはメソッド2795
を組み込みメソッドとして持つ。このメソッドは3次元
形状データベース123内のいろいろの三次元図形のデ
ータをオブジェクト表示画面102(第1図)上の座標
系のデータに変換し、シェーディング、レンダリングを
行い、得られた図形をオブジェクト表示画面1.02に
表示する。
An instance for a special object is camera object instance 2780 (Figure 3C). Camera object instance 2780 has the camera position as its slot 2790 [2791
, a lateral direction 2792 indicating the horizontal direction of the field of view of the camera;
3, upward direction 2793, indicating the vertical direction of the camera's field of view.
Store vector type data in each of the two attributes. Also, this object instance has method 2795
has as a built-in method. This method converts the data of various three-dimensional figures in the three-dimensional shape database 123 into coordinate system data on the object display screen 102 (Fig. 1), performs shading and rendering, and displays the obtained figures as objects. Display on screen 1.02.

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

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

3、候補音声データベース125(第5図)候補音声デ
ータベース125は、音声入力装置111から入力され
た音声の認識を行うときに用いる、第5図に示す候補音
声データ501を複数格納するデータベースである。こ
こで候補音声データ501は、音声データ502、デー
タ種類5o3、文字列504の各領域から構成されてい
る。
3. Candidate speech database 125 (FIG. 5) The candidate speech database 125 is a database that stores a plurality of candidate speech data 501 shown in FIG. 5, which is used when recognizing speech input from the speech input device 111. . Here, the candidate voice data 501 is composed of areas of voice data 502, data type 5o3, and character string 504.

音声データ502は音声入力をそのまま記憶したもので
あり、データ種類503は候補音声データの種類を表す
ものであり、文字列504は音声認識の結果、出力され
る文字列である。ここで、データ種類503は、オブジ
ェクトインスタンス、オブジェクトメソッド、組み込み
命令コート、プログラムコントのいずれかを表わす。
The voice data 502 is the voice input stored as is, the data type 503 represents the type of 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 any one of an object instance, an object method, a built-in instruction code, and a program control.

はじめから登録されている候補音声データには次のもの
がある。
The candidate voice data registered from the beginning includes the following.

(1)後述する組み込み命令(第3図)に関する候補音
声データ。このデータ種類は組込命令コードである。
(1) Candidate voice data regarding the built-in command (FIG. 3), which will be described later. This data type is an embedded instruction code.

(2)カメラオブジェクトインスタンスなど、組込オブ
ジェクトインスタンスとして始めから定義されているオ
ブジェクトインスタンスに関連する候補音声データ。こ
れらのデータ種類は、オブジェクトインスタンスである
(2) Candidate audio data related to object instances that are originally defined as built-in object instances, such as camera object instances. These data types are object instances.

(3)操作者の「実行」という音声入力に対応する候補
音声データ。この候補音声データのデータ種類はプログ
ラムコントロール、文字列はeXecute”である。
(3) Candidate voice data corresponding to the operator's voice input of “execute”. The data type of this candidate audio data is program control, and the character string is "eXecute".

(4)操作者の「記憶」という音声入力に対応する候補
音声データ。この候補音声データのデータ種類はプログ
ラムコントロール、文字列はrec a r d ”で
ある。
(4) Candidate voice data corresponding to the operator's voice input of “memory”. The data type of this candidate audio data is program control, and the character string is rec a rd''.

8.2  処理 以下、第2図に示す本システム内でのいろいろのプログ
ラムによる処理について述べる。
8.2 Processing Below, processing by various programs within this system shown in FIG. 2 will be described.

1、入力処理 システムに対する入力は、キーボード109゜マウス1
10、音声入力装置111を用いて行われる。
1. Input to the input processing system is through keyboard 109 and mouse 1.
10, performed using the voice input device 111.

1.1 イベントデータ(第6図) 後述するように、システムに対する入力に応答して音声
イベント発生処理143、マウスイベント発生処理14
0とキーボードイベント発生処理141がイベントデー
タを生成するようになっている。
1.1 Event data (Figure 6) As described later, voice event generation processing 143 and mouse event generation processing 14 are performed in response to input to the system.
0 and keyboard event generation processing 141 generate event data.

イベントデータ401は、第6図に示すようにイベント
種類領域402と付加情報領域403から構成されてい
る。ここでイベント種類402は、モーションコントロ
ール、ビューコントロール、オブジェクト選択、プログ
ラムコントロール、命令入力、オブジェクトモデリング
又はキーボードのいずれかである。付加情報403はイ
ベント種類によって異なる。イベント種類がオブジェク
ト選択、命令入力、キーボードのいずれかであるとき、
そのイベントデータは作成すべきプログラムを構成する
コマンド又はその一部を構成するのに用いられる。その
他の種類のイベントデータは、コマンド生成に直接関係
しない。
The 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 one of motion control, view control, object selection, program control, command input, object modeling, or keyboard. Additional information 403 differs depending on the event type. When the event type is object selection, command input, or keyboard,
The event data is used to compose commands or parts thereof constituting the program to be created. Other types of event data are not directly related to command generation.

1.2 音声処理 1.2.1  音声入力 音声入力装置111からは、操作者は、作成すべきプロ
グラムに実行させたい処理を人物アイコン31o2へ指
示するかのように音声で入力する。
1.2 Voice Processing 1.2.1 Voice Input From the voice input device 111, the operator inputs a process by voice as if instructing the person icon 31o2 to perform a process that the program to be created should execute.

たとえば、「電話をとって」を入力する。この音声入力
処理では、この入力音声を認識し、必要な一つ又は複数
のイベントデータが生成される。音声入力装置111か
ら処理を指示する音声だけでなく、作成されたコマンド
の実行に関連する入力、たとえば「実行」なども入力可
能である。但し、いずれの種類の音声であっても、あら
かじめ登録された表現である必要がある。
For example, enter "Pick up the phone." In this voice input processing, this input voice is recognized and one or more necessary event data are generated. Not only a voice instructing a process but also an input related to the execution of a created command, such as "execute", can be input from the voice input device 111. However, regardless of the type of voice, the expression must be registered in advance.

1.2.2  音声認識処理142(第7A図)音声認
識処理142では第6図に示すように音声入力装置11
1から送られてきた入力音声の異なる部分の各々と、候
補音声データベース125のすべての候補音声データ5
01(第5図)の音声データ503とを比較し、それぞ
れの音声部分に最も似通った候補音声データを抽出しス
テップ601、それぞれの音声部分に対して音声イベン
ト発生処理143(第2図)を起動する(ステップ60
3)。似通った候補音声が存在しない場合には(ステッ
プ602)、何も出力しない。
1.2.2 Speech recognition processing 142 (Fig. 7A) In the speech recognition processing 142, as shown in Fig. 6, the voice input device 11
1 and all the candidate voice data 5 in the candidate voice database 125.
01 (FIG. 5), and extract candidate audio data that is most similar to each audio portion. In step 601, audio event generation processing 143 (FIG. 2) is performed for each audio portion. Start (step 60)
3). If there are no similar candidate voices (step 602), nothing is output.

1.2.3  音声イベント発生処理143(第7B図
) 第7B図に示すように音声認識処理142で抽出された
候補音声データ内のデータ種類領域を調べて(ステップ
701,703.705,707)その種類に依存して
特定のイベント種類のイベントデータを生成しくステッ
プ702,704.706.708)、入力イベント処
理126(第2図)を起動する(ステップ709)。
1.2.3 Voice event generation processing 143 (Figure 7B) As shown in Figure 7B, the data type area in the candidate voice data extracted by the voice recognition process 142 is examined (steps 701, 703, 705, 707). 702, 704, 706, 708) and activates the input event processing 126 (FIG. 2) (step 709).

生成されるイベントデータは次のとおりである。The event data generated is as follows.

なお、生成されるイベントデータ生成時に、その付加情
報403には、抽出された候補音声データ501の文字
列領域504をそのまま用いる。
Note that when generating event data, the character string area 504 of the extracted candidate audio data 501 is used as is for the additional information 403.

たとえば、入力音声「電話をとって」の「電話」のごと
く、処理対象を表わす音声部分に対して抽出された候補
音声データのデータ種類はオブジェクトインスタンスと
なる。その場合(ステップ701)、イベント種類がオ
ブジェクト選択であるイベントデータを生成する(ステ
ップ702)。
For example, the data type of candidate voice data extracted for a voice portion representing a processing target, such as ``telephone'' in the input voice ``Pick up the phone'', is an object instance. In that case (step 701), event data whose event type is object selection is generated (step 702).

たとえば、入力音声「電話をとって」の「とって」のご
とく、処理内容を表わす音声部分に対して抽出された候
補音声データのデータ種類はオブジェクトメソッドとな
る。この場合(ステップ703)、イベント種類が命令
入力であるイベントデータを発生する(ステップ704
)。
For example, the data type of candidate voice data extracted for a voice portion representing processing content, such as ``pick up'' in the input voice ``pick up the phone'', is an object method. In this case (step 703), event data whose event type is command input is generated (step 704).
).

入力音声中の、組み込み命令(後述)を表わす部分に対
して抽出された候補音声データのデータ種類は組み込み
命令コードとなる。この場合(ステップ705)、イベ
ント種類が命令入力であるイベントデータを生成する(
ステップ706)。
The data type of candidate voice data extracted for a portion representing a built-in command (described later) in the input voice is a built-in command code. In this case (step 705), event data whose event type is command input is generated (
Step 706).

以上の3つのイベントデータは、それぞれ生成すべきコ
マンドの処理対象又は引数としてのオブジェクトインス
タンス又はオブジェクトメソッドあるいはそのコマンド
の命令コードを、操作者が音声で入力するときに生成さ
れる。
The above three event data are generated when an operator inputs by voice 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.

たとえば、入力音声「記憶」あるいは「実行Jに対して
抽出される候補音声データのデータ種類はプログラムコ
ントロールとなる。この場合(ステップ707)=イベ
ント種類がプログラムコントロールであるイベントデー
タを生成する(ステップ708)。
For example, the data type of the candidate voice data extracted for the input voice "memory" or "execution J" is program control. In this case (step 707) = event data whose event type is program control is generated (step 708).

入力音声「実行」に対するイベントデータは、直前に生
成されたコマンドの実行を指示するがコマントの生成に
は用いられない。「記憶」はコマンドの生成に用いられ
る。
The event data for the input voice "execute" instructs the execution of the command generated immediately before, but is not used to generate the command. "Memory" is used to generate commands.

1.3 マウス入力とマウスイベント発生処理140(
第8A図) 第1図のデイスプレィ装置101内の表示画面102〜
1o4.106,108のいずれかにマウスカーソル2
01を置くことにより、画面を用いた入力可能となる。
1.3 Mouse input and mouse event generation processing 140 (
(FIG. 8A) Display screen 102 in the display device 101 in FIG.
1o4. Mouse cursor 2 on either 106 or 108
By placing 01, input using the screen becomes possible.

マウスイベント発生処理はマウスによるイベント発生処
理の総称であり、以下に述べるオブジェクト選択イベン
ト発生処理304、モーションイベント発生処理305
.ビューイベント発生処理306、プログラムコントロ
ールイベント発生処理307.オブジェクトモデリング
イベント発生処理308からなる。これらの処理304
〜3゜8は第8A図に示すとおり、それぞれ、表示画面
102.103,104,106,108にマウスカー
ソル201があるときに起動される。
Mouse event generation processing is a general term for event generation processing by the mouse, and includes object selection event generation processing 304 and motion event generation processing 305 described below.
.. View event generation processing 306, program control event generation processing 307. It consists of object modeling event generation processing 308. These processes 304
~3.8 are activated when the mouse cursor 201 is located on the display screens 102, 103, 104, 106, and 108, respectively, as shown in FIG. 8A.

なお、オブジェクト選択イベントデータ発生処理304
で発生されたイベントデータはコマンドの生成に用いら
れるが、他の処理305,306゜308により生成さ
れるイベントデータは、コマンドの生成には用いられな
い。処理307によるイベントデータはコマンド生成に
用いられるものとそでないものがある。
Note that object selection event data generation processing 304
The event data generated in 305, 306, and 308 is used to generate commands, but the event data generated in other processes 305, 306, and 308 is not used to generate commands. The event data obtained by processing 307 includes some data that is used for command generation and some that is not.

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 process is executed when the operator uses the mouse to input an object instance to be used as a processing target or argument of a command to be generated. That is, the operator places the mouse cursor 20 on the icon in the object display screen 102 that represents the object instance that the operator wishes to input.
1 and press the mouse button (not shown). In response to this mouse operation, object selection event processing 304 is activated. As shown in Figure 8B, first, 3
The object instance selected by this mouse operation is recognized by referring to the dimensional shape database 123 (step 801), and the event data containing the object selection as the event type and the character string representing the selected object instance as the additional information is stored. Generate (step 802). If the selected object instance is a component of another object instance, this additional information is a string consisting of the name of the superior object instance and the name of the selected object instance, separated by periods (,). Store. and input event processing 126 (Figure 2)
(step 803).

1.3.2  モーションイベント発生処理305(第
8C図) この処理はオブジェクト表示画面102内のアイコンの
移動(あるいは回転)を操作者がモーションコントロー
ル画面103を用いて指示するとときに起動される。す
なわち、第1図に示すようにモーションコントロール画
面103には6つのバリュエータ217〜222が表示
されている。
1.3.2 Motion event generation processing 305 (FIG. 8C) This processing is activated when the operator uses the motion control screen 103 to instruct movement (or rotation) of an icon within the object display screen 102. That is, as shown in FIG. 1, six valuators 217 to 222 are displayed on the motion control screen 103.

このうちのどれかのバリュエータがマウス109によっ
て操作された場合に、第8C図に示すように、イベント
種類にモーションコントロール、付加情報に操作された
バリュエータの名称とバリュエータのスライダの支持ガ
イド上の目盛の値(すなわち、移動量又は回転量)を格
納したイベントデータを生成する(ステップ901)。
When any of these valuators is operated by the mouse 109, as shown in FIG. 8C, the event type is motion control, the additional information is the name of the operated valuator, and the scale on the support guide of the valuator slider. Event data storing the value (that is, the amount of movement or amount of rotation) is generated (step 901).

そして、入力イベント処理126(第2図)を起動する
(ステップ9o2)。なお、このバリエータ操作の前に
は、オブジェクト表示画像102に対してオブジェクト
選択がなされなけばならない。
Then, input event processing 126 (FIG. 2) is activated (step 9o2). Note that before this variator operation, an object must be selected on the object display image 102.

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

1.3.4  プログラムコントロールイベント発生処
理307(第8E図) プログラムコントロール画面106内の「実行」ボタン
上215(第1図)にマウスカーソル201があるとき
にマウスボタン(図示せず)が押された場合には、第8
E図に示すように、イベント種類にプログラムコントロ
ール、付加情報にexecute”を格納したイベント
データを発生する。
1.3.4 Program control event generation process 307 (Figure 8E) When the mouse button (not shown) is pressed while the mouse cursor 201 is located above the "Run" button 215 (Figure 1) in the program control screen 106. If the 8th
As shown in Figure E, event data is generated in which the event type is program control and the additional information is "execute."

これは直前に完成されたコマンドの実行を指示するのに
用いられる。音声人力「実行」の場合と同様である。同
様に「記憶」ボタン216が押された場合には、イベン
ト種類にプログラムコントロール、付加情報に”rec
ord”を格納したイベントデータを生成する(ステッ
プ1101)。そして、いずれの場合も入力イベント処
理126(第2図)を起動する(ステップ1102)。
This is used to direct the execution of the most recently completed command. This is similar to the case of "execution" by human voice. Similarly, when the "Remember" button 216 is pressed, the event type is program control, and the additional information is "rec".
event data storing "ord" is generated (step 1101). In either case, the input event processing 126 (FIG. 2) is activated (step 1102).

「記憶」ボタン216は、オブジェクト画面102に表
示されるアイコンあるいはカメラ(図示せず)を移動あ
るいは回転したあと、その移動あるいは回転を実行する
コマンドを生成するときに押される。音声入力「記憶」
も同様に用いられる。
The "memory" button 216 is pressed when an icon or camera (not shown) displayed on the object screen 102 is moved or rotated, and then a command to execute the movement or rotation is generated. Voice input "memory"
is also used in the same way.

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

1.4 キーボードイベント発生処理309(第9図) キーボード110(第1図)による入力は一つのキー操
作ごとにキーボードイベント発生処理141に送られる
1.4 Keyboard event generation process 309 (FIG. 9) Input from the keyboard 110 (FIG. 1) is sent to the keyboard event generation process 141 for each key operation.

第9図に示すように、マウスカーソル201がオブジェ
クトモデリング画面108にある場合には(ステップ1
301)−イベント種類にオブジェクトモデリング、付
加情報にキーコードを格納したイベントデータを生成す
る(ステップ1302)。
As shown in FIG. 9, when the mouse cursor 201 is on the object modeling screen 108 (step 1
301) - Generate event data in which object modeling is stored as the event type and a key code is stored as additional information (step 1302).

マウスカーソル201がオブジェクトモデリング画面1
08になく、キーコードが改行コードを含まない場合に
は(1303)、イベント種類にキーボード、付加情報
にキーコード又はキーコードを格納したイベントデータ
を生成する(ステップ1304)。改行コードが入力さ
れない状態でのキー人力は、コマンド作成に必要な情報
の入力であるがコマンド作成のための最後の入力でない
ことを示している。したがってこのイベントデータの付
加情報は生成すべきコマンドの一部のデータとして利用
される。
Mouse cursor 201 is on object modeling screen 1
08 and the key code does not include a line feed code (1303), event data is generated in which the event type is the keyboard and the additional information is the key code or key code (step 1304). Key input without a line feed code input indicates that the input is information necessary to create a command, but is not the final input for command creation. Therefore, the additional information of this event data is used as part of the data of the command to be generated.

マウスカーソル201がオブジェクトモデリング画面1
08になく、キーコードが改行コードを末尾に含まない
場合には(ステップ1303)、イベント種類に命令入
力、付加情報は空のイベントデータを生成する(ステッ
プ1305)。
Mouse cursor 201 is on object modeling screen 1
08 and the key code does not include a line feed code at the end (step 1303), event data is generated in which the event type is a command input and the additional information is empty (step 1305).

改行コードは、コマンド生成のために必要な最後の情報
すなわち、命令コードの入力が完了したととを示すため
に操作者により入力される。したがってこのインベント
データは、それまでの入力データによりコマンドを完成
すべきことを指示する。
The line feed code is input by the operator to indicate the last information necessary for command generation, that is, the input of the instruction code has been completed. Therefore, this event data indicates that the command should be completed with the previous input data.

そして、入力イベント処理を起動する(ステップ130
6)。
Then, input event processing is started (step 130).
6).

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

入カイベント待ち行列119は先入り先出し待ち行列と
して実現してあり、入力イベント処理126はイベント
データの格納を入カイベント待ち行列119の最後から
行う。一方、次に述べるイベントデータを取り出すイベ
ントディスパッチ処理127は、入カイベント待ち行列
119のはじめに格納されたイベントデータから取り出
す。このことによって、入力データは損なわれることな
く1発生順に処理される。
The incoming event queue 119 is implemented as a first-in, first-out queue, and the incoming event processing 126 stores event data starting at the end of the incoming event queue 119. On the other hand, an event dispatch process 127 for extracting event data, which will be described next, extracts event data stored at the beginning of the input event queue 119. This allows the input data to be processed in chronological order without being corrupted.

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

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

(1)はじめの部分1702は処理対称である。(1) The first part 1702 is symmetrical in processing.

これはオブジェクト指向モデルでいうところの指示オブ
ジェクトに相当する。ここには処理すべきオブジェクト
インスタンスの名称が格納される。
This corresponds to an instruction object in the object-oriented model. The name of the object instance to be processed is stored here.

このオブジェクトインスタンスは、オブジェクト自身の
オブジェクトインスタンスの名称か、そのオブジェクト
インスタンスのある構成要素の名称か、そのオブジェク
トインスタンスのスロットの名称か、あるいは処理対象
は存在しないかを示す文字列のいずれかが格納される。
This object instance stores either the name of the object instance of the object itself, the name of a component of that object instance, the name of a slot of that object instance, or a string indicating whether the object to be processed does not exist. be done.

処理対象が存在しない場合は、特殊な組み込みコマンド
に限られる。
If there is no target to be processed, it is limited to special built-in commands.

ここでオブジェクトインスタンスの構成要素名は、オブ
ジェクトインスタンス名とその構成要素名の間にピリオ
ド(、)を置いたもので表現され、また、オブジェクト
インスタンスのスロット名は、オブジェクトインスタン
ス名とスロット名の間にシャープ(#)を置いたもので
表現される。このようにして、システム内で一意に名前
が与えられる。
Here, the component name of an object instance is expressed by placing a period (,) between the object instance name and its component name, and the slot name of an object instance is expressed by placing a period (,) between the object instance name and the slot name. It is expressed by putting a sharp (#) next to it. In this way, a name is given uniquely within the system.

(2)次の部分1703は引数である。引数1703は
任意値の引数オブジェクトからなる。
(2) The next part 1703 is an argument. Argument 1703 consists of an argument object with an arbitrary value.

引数オブジェクトの間は空白文字で区切られる。Argument objects are separated by spaces.

引数の個数はメソッドによって異なる6引数オブジエク
トは先に述べたオブジェクトインスタンス、またはアト
ムかのいずれかである。アトムは整数か浮動小数点数か
文字列のいずれかである。
The number of arguments varies depending on the method. The 6-argument object is either the object instance described above or an atom. Atoms can be integers, floating point numbers, or strings.

(3)3つめの部分1704は命令コードである。(3) The third part 1704 is an instruction code.

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

コマンドバッファ120はコマンド1701の一時的格
納場所であり、ここに後述するように一つ又は複数のイ
ベントデータ又はそれぞれの一つの一部が前詰めで格納
され、一つのコマンドが完成される。
The command buffer 120 is a temporary storage location for commands 1701, and as described later, one or more event data or a portion of each event data is stored in a front-justified manner to complete one command.

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

2.2 コマンド待ち行列121(第11図)第11図
に示すように、コマンド待ち行列121はコマンドバッ
ファ120を用いて完成されたコマンドを複数個、先入
れ先出し待ち行列として保持するものである。コマンド
待ち行列1801にコマンドを加える場合には、最後に
加えられたコマンドの次に加えられ、コマンド待ち行列
1801からコマンドを取り出す場合には、その中で一
番はじめに加えられたコマンドを取り出す。
2.2 Command Queue 121 (FIG. 11) 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, the first command added is taken out.

コマンド待ち行列1801はプログラムの実行状況によ
って生成されたり、消去される。
The command queue 1801 is created or deleted depending on the execution status of the program.

2.3 コマンド待ち行列スタック122(第12図) 第12図に示すように、コマンド待ち行列スタック12
2には、コマンド待ち行列121を複数個格納するスタ
ックであり、システム内に1つだけ用意される。スタッ
クに対する操作にはブツシュとポツプとがあり、ブツシ
ュは一番最近プッシュされたコマンド待ち行列の後に新
たなコマンドを加えるものであり、ポツプは一番最近に
ブツシュされたコマンド待行列を取り出す。
2.3 Command queue stack 122 (FIG. 12) As shown in FIG.
2 is a stack that stores a plurality of command queues 121, and only one is prepared in the system. Operations on the stack include push and pop; push adds a new command after the most recently pushed command queue, and pop takes out the most recently pushed command queue.

また、スタックの底には初期コマンド待ち行列1903
が置かれる。
Also, at the bottom of the stack is an initial command queue 1903.
is placed.

2.4 イベントディスパッチ処理127(第13図) イベントディスパッチ処理127は第13図に示すよう
に、入カイベント待ち行列119(第2図)の先頭から
1つずつイベントデータをとりだしくステップ1401
)、イベント種類によってそのイベントデータの処理を
以下のように選択する。なお、イベント待ち行列119
が空の場合には、何もしない。
2.4 Event dispatch processing 127 (Fig. 13) As shown in Fig. 13, the event dispatch processing 127 extracts event data one by one from the head of the input event queue 119 (Fig. 2) in step 1401.
), the processing of the event data is selected as follows depending on the event type. In addition, the event queue 119
If is empty, do nothing.

イベント種類がキーボードなら(ステップ1402)、
このイベントデータは、キーボンドイベント発生処理3
09について説明したように、コマンド作成用のデータ
であるが作成のための最後のデータでない。つまり、こ
のイベントデータの付加情報のキーコードは、処理対策
又は引数を表わしている。したがってこの付加情報のキ
ーコードをコマンドバッファ120に格納する(ステッ
プ1403)。格納位置は、コマンドバッファ12o内
のなるべく前方の空き領域。
If the event type is keyboard (step 1402),
This event data is stored in key bond event generation processing 3.
As described for 09, although this is data for command creation, it is not the final data for creation. In other words, the key code of the additional information of this event data represents 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 an empty area as far forward as possible within the command buffer 12o.

一方、イベント種類がオブジェクト選択、命令入力モー
ジョンコントロール、ビューコントロール1、プログラ
ムコントロール、オブジェクトモデリングであるなら(
ステップ141Q〜1415)それぞれ、オブジェクト
選択処理130、命令入力処理131モーシヨンコント
ロール処理128、ビューコントロール処理1291.
プログラムコントロール処理132.オブジェクトモデ
リング処理133を起動する(ステップ1404−14
09)。オブジェクト選択処理130、命令入力処理1
31では後述するようにコマンドの作成のために、イベ
ントデータをコマンドバッファ120に格納される。
On the other hand, if the event type is object selection, command input motion control, view control 1, program control, object modeling (
Steps 141Q to 1415) Object selection processing 130, command input processing 131, motion control processing 128, view control processing 1291.
Program control processing 132. Activate the object modeling process 133 (step 1404-14)
09). Object selection processing 130, command input processing 1
At step 31, event data is stored in the command buffer 120 in order to create a command as described later.

なお、ステップ1403、あるいはステップ1410−
1415が終了すれば再び入カイベント待ち行列119
(第2図)の先頭のイベントの処理に戻る。
Note that step 1403 or step 1410-
1415 is completed, the input event queue 119 is returned.
The process returns to the processing of the first event in FIG. 2.

2.5 オブジェクト選択処理130(第14図)イン
ベントディスパッチ処理127で解釈されたイベントデ
ータのイベント種類がオブジェクト選択であるとき、こ
の処理130が起動される。
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 process 130 is activated.

このようなイベントデータは、既に述べたように、マウ
スを用いて、操作者がコマンドの処理対象又は引数に用
いられるべきオブジェクトインスタンス等を選択したと
きに生成される。
As described above, such event data is generated when the operator uses the mouse to select an object instance to be processed or an argument of a command.

オブジェクト選択処理130では第14図に示すように
イベントディスパッチ処理127から送られてくるイベ
ントデータ内の付加情報(これは処理対象又は引数を表
わす)に引き続いて空白文字列をつけ加えて、コマンド
バッファ120内に前詰めで格納する(ステップ200
1)。
In the object selection process 130, as shown in FIG. 14, a blank character string is added following the additional information (this represents the processing target or argument) in the event data sent from the event dispatch process 127, and the command buffer 120 is (Step 200
1).

2.6 命令入力処理131(第15図)インベントデ
ィスパッチ処理127で解釈されたインベントデータの
イベント種類が命令入力であるとき、この処理131が
起動される。このようなイベントデータは、既に述べた
ように作成すべきコマンドに用いる情報の内の最後の情
報(すなわち、命令コード)の入カド同時あるいはそれ
の入力後の入力により生成されるもので、音声入力装[
111あるいはキーボードからの操作者の入力に応答し
て生成される。
2.6 Command input process 131 (FIG. 15) When the event type of the event data interpreted by the event dispatch process 127 is a command input, this process 131 is activated. As mentioned above, this type of event data is generated by inputting the last information (i.e., instruction code) used for the command to be created at the same time or after inputting it, and is Input device [
111 or in response to an operator's input from the keyboard.

命令入力処理131では第15図に示すようにイベント
ディスパッチ処理127から送られてくるイベントデー
タの付加情報(この末尾は命令コードである)をコマン
ドバッファ120内に前詰めでコマンドを完成する(ス
テップ2101)。
In the command input process 131, as shown in FIG. 15, the additional information (the end of which is the command code) of the event data sent from the event dispatch process 127 is front-aligned into the command buffer 120 to complete the command (step 2101).

さらにこの完成されたコマンドをコマンド待ち行列スタ
ック122のトップにあるコマンド待ち行列の最後に加
え(ステップ2102)、コマンドバッファ120をク
リアする(ステップ2103)。
Furthermore, this completed command is added to the end of the command queue at the top of the command queue stack 122 (step 2102), and the command buffer 120 is cleared (step 2103).

2.7 モーションコントロール処理128(第16図
) この処理はイベントディスパッチ処理127で解釈され
たイベントデータの種類がモーションコントロールのと
きに起動される6すでに述べたように、この種のイベン
トデータは、操作者がモーションコントロール画面10
3内のバリュエータを操作し、オブジェクト表面画面1
02内のアイコンを移動あるいは回転するときに起動さ
れる。
2.7 Motion control processing 128 (Fig. 16) This processing is activated when the type of event data interpreted by the event dispatch processing 127 is motion control.6 As already mentioned, this type of event data is The operator uses the motion control screen 10
Operate the valuator in 3 to display object surface screen 1.
It is activated when moving or rotating the icon in 02.

既述のように、このバリュータ操作の前には、移動又は
変形するアイコンを指定するためのオブジェクト選択が
なされていなければならない。つまり、このオブジェク
ト選択の結果としてコマンドバッファ312o内の処理
対象部に、モーションコントロールの対象となるオブジ
ェクトインスタンスの名称がすでに格納されていなけれ
ばならない。
As described above, before this valueter operation, an object selection must be made to specify the icon to be moved or transformed. That is, as a result of this object selection, the name of the object instance to be motion controlled must already be stored in the processing target section in the command buffer 312o.

このモーションコントロール処理128では、この処理
対称部により指定されたオブジェクトインスタンスに対
するアイコンをイベントディスパッチ処理127から与
えられたイベントデータの付加情報に格納しであるバリ
ュエータ名と移動量あるいは回転角に従って移動又は回
転する。移動又は回転は3次元形状データベース123
内の図形データを修正することにより実現される。
In this motion control processing 128, the icon for the object instance specified by this processing target section is stored in the additional information of the event data given from the event dispatch processing 127, and is moved or rotated according to the valuator name and the amount of movement or rotation angle. do. Movement or rotation is performed using the 3D shape database 123
This is achieved by modifying the graphic data within.

なお、コマンドバッファ120に処理対象が格納されて
いない場合には、以下に示す処理は行なわない。
Note that if no processing target is stored in the command buffer 120, the following processing is not performed.

より具体的には、第16図に示すように、このバリュエ
ータ名がX方向移動217の場合には(ステップ150
2)、処理対象のオブジェクトインスタンス属性をオブ
ジェクトインスタンスライブラリ124から調べ、″移
動可能”であることを確認して(ステップ1505)バ
リュエータの値に応じて処理対象で示されるオブジェク
トインスタンスに対応するアイコンをX方向に移動させ
る(ステップ1506)。
More specifically, as shown in FIG. 16, if this valuator name is X direction movement 217 (step 150
2) Check the object instance attribute of the processing target from the object instance library 124, confirm that it is "movable" (step 1505), and create an icon corresponding to the object instance indicated by the processing target according to the value of the valuator. It is moved in the X direction (step 1506).

ステップ15o5において処理対象の属性が移動可能で
ない場合でも、処理対象が何らかのオブジェクトの構成
要素の場合には、その構成要素の上位の要素の属性をオ
ブジェクトインスタンスライブラリ124から調べてそ
れが移動可能なら、その上位の要素を移動可能と判断し
これを移動させる。オブジェクトの上位構成要素をたど
っていっても移動可能なものがない場合は何も処理を行
わない。
Even if the attribute to be processed is not movable in step 15o5, if the target to be processed is a component of some object, the attribute of the element above the component is checked from the object instance library 124, and if it is movable, The element above it is determined to be movable and is moved. If there is nothing that can be moved even after tracing the upper-level components of the object, no processing is performed.

バリュエータがX方向移動218.2方向移動219の
場合も、同様に処理する(ステップ1503−1506
)。
If the valuator is moving in the X direction 218 or moving in two directions 219, the same process is performed (steps 1503-1506
).

バリュエータ名がX軸周り回転220の場合には、処理
対象の属性を調べ(ステップ1507)、″回転可能″
であることを確認して(ステップ1510)バリュエー
タの値に応じて処理対象をX軸の周りに回転させる(ス
テップ1511)。
If the valuator name is Rotation around the X axis 220, check the attribute to be processed (step 1507),
After confirming that (step 1510), the processing target is rotated around the X axis according to the value of the valuator (step 1511).

なお、ステップ1510の判定において処理対象の属性
が″回転可能″でない場合でも、指示対象がオブジェク
トの構成要素の場合には、構成要素の上位の要素の属性
を調べ、″回転可能′″なものがあれば、指示対象を″
回転可能′″と判断し、ステップ1511でこの上位の
要素を回転させることによって指示対象を回転させる。
Note that even if the attribute of the processing target is not "rotatable" in the determination in step 1510, if the referent is a component of an object, the attribute of the element above the component is checked and the attribute of the element that is "rotatable" is determined. , the referent is ″
It is determined that rotation is possible '', and in step 1511, the pointed object is rotated by rotating this higher-order element.

オブジェクトの上位構成要素をたどっていっても″回転
可能″なものがない場合には、何も処理を行わない。こ
の上の回転処理はオブジェクトライブラリ124の内容
を参照することによって行われる。バリ二二一夕がX軸
周り回転221.z軸周り回転222の場合も、同様に
処理する(ステップ1508−1511)。
If there is no "rotatable" item even after tracing the upper-level components of the object, no processing is performed. The above rotation processing is performed by referring to the contents of the object library 124. Bali 221 rotates around the X axis 221. Rotation around the z-axis 222 is similarly processed (steps 1508-1511).

2.8 ビューコントロール処理129 (第17図) ビューコントロール処理129は、第17図に示すよう
にカメラ(図示せず)の位置、その視野の水平方向、垂
直方向を操作されたバリュエータの種類、バリュエータ
のスライダ目盛に応じて制御する(ステップ1601−
1604.1650゜1651)。6つのバリュエータ
230−235(第1図)はそれぞれ、前進命令、上昇
命令、水平移動命令、首上げ命令、首振り命令、回転命
令を意味する。
2.8 View control processing 129 (Fig. 17) The view control processing 129, as shown in Fig. 17, determines the position of the camera (not shown), the type of valuator operated in the horizontal direction and vertical direction of its field of view, Control according to the slider scale of the valuator (step 1601-
1604.1650°1651). The six valuators 230-235 (FIG. 1) represent a forward command, a rise command, a horizontal movement command, a head-up command, a swing command, and a rotation command, respectively.

例えば、前進バリュエータ230が操作された場合(ス
テップ1601)には、オブジェクトインスタンスカメ
ラ2780 (第3図C)の位置スロット値2791を
、方向スロット値2792の方向に、イベントデータの
付加情報の値のスライダ目盛の値に応じて変化させる(
ステップ1602)。
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 moved in the direction of the direction slot value 2792 of the additional information value of the event data. Change according to the value of the slider scale (
Step 1602).

オブジェクトインスタンスカメラ2780が移動1回転
することによってオブジェクト表示画面102で、好き
なビューを選択することができる。
A desired view can be selected on the object display screen 102 by moving the object instance camera 2780 one rotation.

この移動、または回転はオブジェクトライブラリ124
.3次元形状データベース123を参照して行われ、移
動または回転後にはそのオブジェクトに対する3次元図
形データが更新されるのはモーションコントロール処理
128の場合と同じである。
This movement or rotation is performed in the object library 124.
.. As in the case of motion control processing 128, this is performed with reference to the three-dimensional shape database 123, and the three-dimensional graphic data for the object is updated after movement or rotation.

2.9 プログラムコントロール処理132(第18図
) この処理は、イベントディスパッチ処理127で解釈さ
れたイベントデータ内のデータ内のデータ種類がプログ
ラムコントロールのときに起動される。この種のイベン
トは、すでに述べないように、音声入力、マウス入力あ
るいはキー人力により「記憶」あるいは「実行」が指示
されたときに生成される。
2.9 Program control processing 132 (FIG. 18) This processing is activated when the data type in the event data interpreted in the event dispatch processing 127 is program control. This type of event is generated when "memory" or "execution" is instructed by voice input, mouse input, or manual keystroke, as described above.

このプログラムコントロール処理132は第18図に示
すように、そのイベントデータ内の付加情報” r e
 c o r d”なら(ステップ2201)、状態記
憶処理134(第2図)を起動しくステップ2204)
、その付加情報が”execute”なら(ステップ2
202)オブジェクトメソッド実行処理135(第2図
)を起動する(ステップ2203)。
This program control processing 132, as shown in FIG.
If "c o r d" (step 2201), start the state storage process 134 (FIG. 2) (step 2204).
, if the additional information is “execute” (step 2
202) Activate the object method execution process 135 (FIG. 2) (step 2203).

2.10 オブジェクトモデリング処理133(第19
図) この処理はイベントディスパッチ処理で解釈されたイベ
ントデータ内借データ種類がオブジェクトモデリングの
ときに起動される。この種のイベントデータは、すでに
述べたようにオブジェクトを新しく定義又は修正すると
きにマウス入力を用いて生成される。
2.10 Object modeling process 133 (19th
Figure) This process is activated when the borrowed data type in the event data interpreted in the event dispatch process is object modeling. This type of event data is generated using mouse input when an object is newly defined or modified, as described above.

オブジェクトモデリング処理133は1つの独立したア
プリケーションプログラムである。ここでは、まず第1
9図に示すように各オブジェクトを表す多面体の集合お
よびそれぞれの属性を新たに定義する(ステップ260
1)。次にこのオブジェクトを第3A〜36図に例示し
たように複数の要素から階層的に構成していき、それぞ
れの要素にたいして新しいオブジェクトを定義する。こ
の時、構成要素に移動可能属性か回転可能属性かを指定
する(ステップ2602)。次に、オブジェクト名、オ
ブジェクトスロット名、オブジェクトスロットに入るデ
ータ型を指定する(ステップ2603)。こうしてでき
た、オブジェクトを表わす図形に関する情報およびオブ
ジェクト自身に関する情報をそれぞれ3次元形状データ
ベース123、オブジェクトライブラリ124に格納す
る(ステップ2604)。
Object modeling process 133 is an independent application program. Here, the first
As shown in FIG. 9, a set of polyhedra representing each object and their respective attributes are newly defined (step 260
1). Next, this object is constructed hierarchically from a plurality of elements as illustrated in FIGS. 3A to 36, and a new object is defined for each element. At this time, whether the component is a movable attribute or a rotatable attribute is specified (step 2602). Next, the object name, object slot name, and data type to be stored in the object slot are specified (step 2603). The information about the figure representing the object and the information about the object itself thus created are stored in the three-dimensional shape database 123 and object library 124, respectively (step 2604).

任意の時点で、オブジェクトモデリング処理133で既
に定義しであるオブジェクトを編集することもできる。
At any time, it is also possible to edit objects that have already been defined in the object modeling process 133.

例えば、第3A図の人物オブジェクト2703の下位の
要素である右手2710のまた下位要素として、電話2
8o3の下位要素である受話器2805を登録するよう
に階層を作れば、人間の手の動きにしたがって受話器が
動作することになり、結果として人間が受話器をとった
ことを実現できる。後で述べる組込命令1inkはこの
ようにして実現している。
For example, as a subordinate element of the right hand 2710, which is a subordinate element of the person object 2703 in FIG. 3A, a telephone 2
If a hierarchy is created to register the handset 2805, which is a lower element of 8o3, the handset will operate according to the movement of the human hand, and as a result, it can be realized that a person has picked up the handset. The built-in instruction 1ink, which will be described later, is implemented in this way.

オブジェクトモデリング処理で定義されたオブジェクト
の名称、形状、属性はオブジェクトモデリング画面10
8(第1図)の領域236゜237.238に表示され
る。作成ずみのオブジェクトを修正する場合において、
そのオブジェクトに対して定義ずみのメソッドがある場
合には、そのメソッドの名称が領域239に表示される
The name, shape, and attributes of the object defined in the object modeling process are displayed on the object modeling screen 10.
8 (FIG. 1) in areas 236°, 237.238. When modifying an object that has already been created,
If there is a method defined for the object, the name of the method is displayed in area 239.

3、状態記憶処理134(第20図) この処理はすでに述べたごとく、作成ずみのコマンドの
記憶が操作者により指示されたときに。
3. State storage processing 134 (FIG. 20) As already mentioned, this processing is performed when the operator instructs storage of a created command.

プログラムコントロール処理132により起動される。It is activated by program control processing 132.

この状態記憶処理134では、まずコマンドバッファ1
20に処理対象を示すデータがあるかどうかを調べる(
ステップ2401)。処理対象を示すデータが存在する
場合には、処理対象用状態記憶処理2402 (第21
図)を起動する(ステップ2402)。このデータが存
在しないのはビューコントロール画面104を用いてカ
メラ(図示せず)の視野を変化させたあと現在の状態記
憶指示が操作者により与えられたときであり、オブジェ
クトインスタンスカメラの状態を記憶する。すなわち、
ビューコントロール処理129によって操作されたカメ
ラ(図示せず)の現在の状態(位置、方向、上方向を、
オブジェクトライブラリ124中のそれに対するインス
タンス2780 (第3c図)を参照して調べる(ステ
ップ2403)。そして、コマンドバッファ120に、
処理対象としてカメラオブジェクトインスタンス278
0、引数としてカメラの現在の位置、方向および、上方
向、命令コードとしてcamerasetを格納してカ
メラの視野セット用のコマンドを形成し、これをコマン
ド待ち行列スタック〕22の先頭のコマンド待ち行列の
末尾に加える(ステップ2404)。命令コードc a
 m e r aS e t、は、カメラオブジェクト
インスタンス2780に対応するカメラ(図示せず)を
コマンドの引数で指定された方向に配置させる組み込み
命令に対する命令コードである。
In this state storage process 134, first the command buffer 1
Check whether there is data indicating the processing target in 20 (
Step 2401). If data indicating the processing target exists, processing target state storage processing 2402 (21st
) (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. do. That is,
The current state (position, direction, upward direction) of the camera (not shown) operated by the view control processing 129 is
The instance 2780 (FIG. 3c) for it in the object library 124 is looked up (step 2403). Then, in the command buffer 120,
Camera object instance 278 as processing target
0, stores the camera's current position, direction, and upward direction as arguments, and cameraset as the instruction code to form a command for the camera's field of view set, and sends this to the command queue at the top of the command queue stack]22. Add to the end (step 2404). Instruction code ca
m e r aS e t is an instruction code for a built-in instruction that places a camera (not shown) corresponding to camera object instance 2780 in a direction specified by an argument of the command.

一方、判定2401の結果、処理対象を示すデータがコ
マンドバッファ120中にあると判断されたのは、現在
の状態記憶指示に先立って、操作者により、モーション
コントロール画面103(第1図)を用いたマウス入力
により、オブジェクト表示画面102中のアイコンの移
動又は回転が指示がなされたときである。したがって、
処理対象用状態記憶処理240が起動されたとき、第2
1図に示すように、コマンドバッファ120中のデータ
で示される処理対象が移動可能かどうかと回転可能かど
うかを処理対象のオブジェクトインスタンスに関する属
性データから調べる(ステップ2501.2504)。
On the other hand, as a result of the determination 2401, it is determined that the data indicating the processing target is present in the command buffer 120 because the operator uses the motion control screen 103 (FIG. 1) prior to instructing to store the current state. This is when an instruction to move or rotate an icon on the object display screen 102 is given by a mouse input. therefore,
When the processing target state storage processing 240 is started, the second
As shown in FIG. 1, whether the processing target indicated by the data in the command buffer 120 can be moved or rotated is checked from the attribute data regarding the object instance of the processing target (steps 2501 and 2504).

移動可能性又は回転可能性の判断においては、「2.7
 モーションコントロール処理129jで述べたと同じ
ようにして処理対象のオブジェクトインスタンス又はそ
の下位の構成要素たるオブジェクトインスタンスから移
動又は回転可能なものをそれぞれ移動対象、回転対象と
して選ぶ。移動あるいは回転可能な場合にはそれぞれ、
選択された移動対象オブジェクトインスタンスの現在位
置と回転対象オブジェ、クトインスタンスの現在回転角
を求める(ステップ2502)。そして、移動、回転の
各々に対して、コマンドバッファ120に移動又は回転
対象オブジェクトインスタンス、求めた現在位置又は回
転角、および、移動又は回転に関係する特殊命令コード
translate。
When determining movability or rotatability, “2.7
In the same manner as described in the motion control process 129j, objects that can be moved or rotated are selected from the object instance to be processed or the object instances that are its subordinate components as objects to be moved and objects to be rotated, respectively. If it is movable or rotatable, respectively.
The current position of the selected object instance to be moved and the current rotation angle of the object instance to be rotated are determined (step 2502). Then, for each movement or rotation, the object instance to be moved or rotated, the obtained current position or rotation angle, and a special instruction code related to the movement or rotation are stored in the command buffer 120.

又はrotateを格納し、移動又は回転用のコマンド
を生成する。それぞれのコマンドをコマンド待ち行列ス
タック122の先頭のコマンド待ち行列の末尾に加える
(ステップ2502)。
or rotate to generate a command for movement or rotation. Each command is added to the end of the command queue at the head of command queue stack 122 (step 2502).

この処理により、操作者が指示したアイコンの移動、回
転を実行するコマンドをプログラム中に埋め込むことが
できる。
Through this process, commands for moving and rotating the icon specified by the operator can be embedded in the program.

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

4.1 オブジェクトメソッド実行処理135(第22
図) 第22図に示すように、オブジェクトメソッド実行処理
135が起動されると、呼呂しコマンド(この処理の対
象となるコマンド)に従って以下の処理を行う。
4.1 Object method execution processing 135 (22nd
(Figure) As shown in Figure 22, when the object method execution process 135 is activated, it performs the following process in accordance with the command (command that is the target of this process).

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

(2)そのコマンドが5uccess endでないと
き、そのコマンドの命令用のコードが組み込み命令コー
ドかどうかを調べ(ステップ2804)、組み込み命令
用のものであれば、その組み込み命令をあらかじめその
命令に対して定めら芦プログラムライブラリを用いて実
行する(ステップ2806)。そして実行が成功すれば
(ステップ2807)、成功終了を報告して(ステップ
2809)制御を戻し、実行が成功しなければ失敗終了
を報告して(ステップ2808)制御を戻す。
(2) If the command is not 5uccess end, check whether the code for the instruction of the command is a built-in instruction code (step 2804), and if it is for a built-in instruction, the built-in instruction is written to the instruction in advance. The program is executed using the determined program library (step 2806). If the execution is successful (step 2807), a successful completion is reported (step 2809) and the control is returned; if the execution is not successful, a failed completion is reported (step 2808) and the control is returned.

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

(1)そのコマンドの処理対称で指定されるオブジェク
トインスタンスに対してすでに定義されているメソッド
の中に未実行のメソッドが存在するかどうかを調べる(
ステップ2811)。存在しなければ、オブジェクトメ
ソッド生成処理250を起動しくステップ2812)、
成功終了を報告して(ステップ2813)制御を戻す。
(1) Check whether there is an unexecuted method among the methods already defined for the object instance specified by the processing target of the command (
Step 2811). If it does not exist, start the object method generation process 250 (step 2812),
Successful completion is reported (step 2813) and control is returned.

存在する場合には、そのメソッドをユーザが定義してい
ることを意味し、これを実行するために次に進む。
If it exists, it means that the user has defined the method, and we proceed to execute it.

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

(3)そのメソッドを定義しているコマンド列の中の未
実行のコマンドの中で、はじめのものを選択しくステッ
プ2817)、このコマンドを呼び出しコマンドとして
オブジェクトメソッドを実行する(ステップ2818)
(3) Select the first command among the unexecuted commands in the command sequence that defines the method (step 2817), and execute the object method using this command as a calling command (step 2818)
.

(4)そのメソッドにまだ未実行のコマンドが存在する
かどうか調べる(ステップ2819)。存在しないなら
、そのメソッドの実行は正常に完了したことを意味して
おり、成功終了を報告して制御を戻す(ステップ282
1)。まだ存在するなら、そのメソッドはまだ完了して
いないため、次に進む。
(4) Check whether there are any unexecuted commands in the method (step 2819). If it does not exist, it means that the execution of the method has completed normally, and the process returns control by reporting successful completion (step 282).
1). If it still exists, the method has not completed yet, so proceed to the next step.

(5)(3)で実行した結果を調べる(ステップ282
0)。実行が成功しているなら、そのメソッドの実行は
順調に進行しており、(3)に戻る。
(5) Examine the results executed in (3) (step 282
0). If the execution is successful, the execution of the method is proceeding smoothly and the process returns to (3).

そうでなく、失敗しているなら、そのメソッドの実行に
支障が生じているため、これを回復するために(1)に
戻る。
Otherwise, if the method has failed, there is a problem in the execution of the method, so return to (1) to recover from this problem.

4.2 メソッド実行終了処理2301 (第23図) 実行対象のコマンドが5uccess、、−endであ
るためメソッド実行終了処理2301がメソッド実行処
理135により起動された場合、第23図に示すように
、呼び出したコマンドに従い、以下の処理を行う。
4.2 Method execution end processing 2301 (Fig. 23) When the method execution end processing 2301 is started by the method execution processing 135 because the command to be executed is 5uccess, -end, as shown in Fig. 23, Perform the following processing according to the called command.

呼び出したコマンドがコマンド待ち行列スタック122
のトップにあるコマンド待ち行列に対応するものであれ
ば(ステップ2302)、以下の処理を行う。そうでな
ければ、制御を戻す。
The called command is stored in the command queue stack 122
If the command corresponds to the command queue at the top of the command queue (step 2302), the following processing is performed. Otherwise, return control.

コマンド待ち行列スタック122のトップにあるコマン
ド待ち行列内のコマンド列として、コマンドの指示対象
の、コマンドの命令コードメソッドに加える(ステップ
2303)。
It is added as a command string in the command queue at the top of the command queue stack 122 to the instruction code method of the command to which the command is directed (step 2303).

そして、コマンド待ち行列スタック122をポツプし、
ポツプされたコマンド待ち行列がトップにある間に生成
されたオブジェクトインスタンスを消去し、コマンドに
対応するメソッドプログラミング画面を消去する。(ス
テップ2304)そして、制御を戻す。
Then pops the command queue stack 122,
Clears any object instances that were created while the popped command queue was at the top, and clears the method programming screen corresponding to the command. (Step 2304) Then, control is returned.

4.3 オブジェクトメソッド生成処理2812(第2
4図) 第24図に示すように、以下の処理を行う。
4.3 Object method generation process 2812 (second
(Figure 4) As shown in Figure 24, the following processing is performed.

呼出しコマンドに対応するコマンド待ち行列を新しく生
成して、これをコマンド待ち行列スタック121(第2
図)にブツシュする(ステップ2910)。
A new command queue corresponding to the calling command is generated and this is placed on the command queue stack 121 (second
) (step 2910).

また、呼び出したコマンドのメソッドに対応するメソッ
ドプログラミング画面を生成する(ステップ2921)
Additionally, a method programming screen corresponding to the method of the called command is generated (step 2921).
.

そして、その画面にメソッド名、指示対象とその属する
オブジェクト名、引数とその属するオブジェクト名を表
示して(ステップ2930)、制御を戻す。
Then, the method name, the instruction target and the object name to which it belongs, and the argument and the object name to which it belongs are displayed on the screen (step 2930), and control is returned.

4.4 組み込み命令実行処理2806第25図に組み
込み命令−覧3001を示す。
4.4 Built-in instruction execution processing 2806 FIG. 25 shows a built-in instruction list 3001.

この図では、組み込み命令の対象となるオブジェクト3
002.必要な引数3003、組み込み命令3004、
命令を実行したときの作用3004について示した。実
際の対象、引数はオブジェクトのインスタンスか、アト
ムである。
In this diagram, object 3 is the target of the built-in instruction.
002. Required arguments 3003, built-in instructions 3004,
The effect 3004 when the command is executed is shown. The actual target or argument is an instance of an object or an atom.

C9動作説明 以下、具体例を用いて本実施例によるプログラムの作成
を説明する。初めの例では電話をかけるプログラムを作
成する。2番目の例では大型汎用計算機と通信して、こ
の上の既存のアプリケーションプログラムを利用するプ
ログラムを作成する。
C9 Operation Description The creation of a program according to this embodiment will be explained below using a specific example. The first example creates a program that makes phone calls. In the second example, a program is created that communicates with a large general-purpose computer and uses an existing application program on the computer.

いずれの場合にも、人物マイコン3102が行うべき動
作を指示するコマンドをプログラム用のコマンドをプロ
グラム用のコマンドとして入力し、このコマンドを実行
して、人物アイコン3102にその動作を行なわせる。
In either case, a command for instructing the action to be performed by the person microcomputer 3102 is input as a program command, and this command is executed to cause the person icon 3102 to perform the action.

このコマンド列は人物オブジェクトが実行するメソッド
の一つとして人物オブジェクトに記憶させる。
This command sequence is stored in the person object as one of the methods executed by the person object.

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

a、コマンド入力 初期状態では、オブジェクト表示画面102は第26A
図のようになっているとする。
a. In the initial state of command input, the object display screen 102 is the 26th A
Suppose it is as shown in the figure.

人物アイコン3102 (第1図)は第3A図の人物オ
ブジェクト2701を表わし、電話アイコン3104 
(第2図)は第3B図の電話オブジェクト2750を表
わす。電話番号オブジェクトはまだ説明しなかったが、
以下では、初期状態ですでに定義されていると仮定する
。3103はこのオブジェクトを表わすアイコンで、長
方形形状をしており、その中央にスロット値電話番号を
有する。人物オブジェクトのインスタンス名はrie。
The person icon 3102 (FIG. 1) represents the person object 2701 in FIG. 3A, and the telephone icon 3104
(Figure 2) represents the telephone object 2750 of Figure 3B. I haven't explained the phone number object yet, but
In the following, it is assumed that it has already been defined in the initial state. 3103 is an icon representing this object, which has a rectangular shape and has a slot value telephone number in its center. The instance name of the person object is rie.

電話オブジェクトのインスタンス名はtel、電話番号
オブジェクトのインスタンス名はtnとする。
The instance name of the telephone object is tel, and the instance name of the telephone number object is tn.

以下では、これらの名称は、対応するオブジェクトを表
わすアイコンの名称として用いる。
Below, these names will be used as names of icons representing the corresponding objects.

人物アイコン3102はどこか任意の、電話アイコン3
104からはなれた場所におり、電話アイコン31o4
の受話器はかかったままである。
The person icon 3102 is an arbitrary phone icon 3
I am in a place far away from 104, and the phone icon 31o4
The receiver remains on the line.

そして、電話番号アイコン31o3の内部には番号01
2−3456が表示されている。また、第26B図に示
すように主記憶装置112内のコマンド待ち行列スタッ
ク122には初期待ち行列スタック1903だけがある
And the number 01 is inside the phone number icon 31o3.
2-3456 is displayed. Further, as shown in FIG. 26B, the command queue stack 122 in the main memory 112 includes only an initial queue stack 1903.

ここで人物アイコン3102に電話をかけさせるために
はユーザは、コマンド (0)rie  tel  tn  callを入力す
る。ここで、call以外は処理対象を表わし、cal
lはメソッド名である。
Here, in order to have the person icon 3102 make a call, the user inputs the command (0) rie tel tn call. Here, everything other than call represents the processing target, and call
l is the method name.

(a−1)コマンドの処理対象と引数の入力以下では、
′処理対象部は、とくに断わらないかぎりあるいは文脈
上不自然でないかぎり、コマンドの処理対象部をさす。
(a-1) Below the command processing target and argument input,
``Processing target section'' refers to the processing target section of a command, unless otherwise specified or unless it is unnatural in the context.

このコマンドの入力のためには、操作者は音声入力装置
111かマウス109かキーボード111を用いて文字
列として処理対象PI 、 i C13と、 ” t 
e l”と、”tn”とをこの順で入力する。
To input this command, the operator uses the voice input device 111, the mouse 109, or the keyboard 111 to input the processing target PI, i, C13, and "t" as character strings.
Enter "e l" and "tn" in this order.

(a−1−1)音声入力の場合 例えば、音声によって文字列を入力するには音声入力装
置111(第1図)に向かってrりえ」と発声する。音
声は音声入力装置111から音声認識処理142(第2
図)に送られ、ここでは、第7A図に示すように候補音
声データベース125の音声データ領域のなかで最も近
い候補音声データを抽出しくステップ601)、音声イ
ベント発生処理143を起動する(ステップ603)。
(a-1-1) In the case of voice input For example, to input a character string by voice, say ``Rie'' toward the voice input device 111 (FIG. 1). Voice is transmitted from the voice input device 111 to voice recognition processing 142 (second
Here, as shown in FIG. 7A, the closest candidate voice data is extracted from the voice data area of the candidate voice database 125 (step 601), and the voice event generation process 143 is activated (step 603). ).

抽出された候補音声データを受取り、その候補音声デー
タのデータ種類がオブジェクトインスタンス名であるこ
とを確認して(ステップ701)、イベント種類がオブ
ジェクト選択、付加情報がその候補音声データの文字列
領域II ri eI+をコピーしたものであるイベン
トデータを生成しくステップ702)入力イベント処理
126を起動する(ステップ709)。入力イベント処
理126では受は取ったイベントデータを入カイベント
待ち行列119(第2図)に加える。
Receive the extracted candidate audio data, confirm that the data type of the candidate audio data is an object instance name (step 701), and confirm that the event type is object selection and the additional information is the character string area II of the candidate audio data. Step 702) Input event processing 126 is activated to generate event data that is a copy of ri eI+ (Step 709). Input event processing 126 adds the received event data to incoming event queue 119 (FIG. 2).

なお、上記候補音声データは人物アイコン31o2を人
物オブジェクト2701のインスタンスとして先に定義
したときに以下のようにして作成される。すなわち、こ
の定義時に操作者がそのインスタンスの名前をキーボー
ド入力すると同時にシステムがその名前の音声入力を要
求する。
Note that the above candidate voice data is created as follows when the person icon 31o2 is previously defined as an instance of the person object 2701. That is, at the time of this definition, the operator inputs the name of the instance using the keyboard, and at the same time, the system requests voice input of the name.

操作者がこの名前を音声入力をしたとき、それを、候補
音声データベース125内のrieに対する候補音声デ
ータの内容として格納する。
When the operator inputs this name by voice, it is stored as the content of candidate voice data for rie in the candidate voice database 125.

イベントディスパッチ処理127(第2図)は操作者に
よる入力に並行して動作可能で、メカイベント待ち行列
119内のイベントデータを処理する。今の例では、r
rieJに対するイベントデータはイベント種類がオブ
ジェクト選択であるためオブジェクト選択処理130(
第2図)が起動され、付加情報rrie」と空白がコマ
ンドバッファ120に格納される(ステップ2001(
第14図))。
Event dispatch processing 127 (FIG. 2) can operate in parallel with operator input and processes event data in mechanical event queue 119. In the current example, r
Since the event type for event data for rieJ is object selection, object selection processing 130 (
2) is activated, and additional information "rrie" and a blank space are stored in the command buffer 120 (step 2001 (
Figure 14)).

(a −1−2)マウス入力の場合 マウス109(第1図)を用いて”rie’″を入力す
るには、オブジェクト表示画面102に表示しである人
物アイコン3102の胴体上にマウスカーソル201(
第1図)をもってきて、マウスボタン(図示せず)を押
す。それによりオブジェクト選択イベント発生処理30
4が起動される(第8A図)。この処理304では、第
8B図に示するように、マウスカーソル201の位置と
3次元形状データベース123(第2図)を参照して(
人物アイコン3102)の上でマウスボタンが押された
ことを認識して(ステップ8o1)、イベント種類にオ
ブジェクト選択、付加情報にキーボードから入力された
文字列+1rie71を格納したイベントデータを生成
しくステップ802)、入力イベント処理126を起動
する(ステップ803)。入力イベント処理126では
送られてきたイベントデータを入カイベント待ち行列1
19に加える。
(a-1-2) In the case of mouse input To input "rie'" using the mouse 109 (FIG. 1), move the mouse cursor 201 over the body of the person icon 3102 displayed on the object display screen 102. (
1) and press a mouse button (not shown). As a result, object selection event generation processing 30
4 is activated (Figure 8A). In this process 304, as shown in FIG. 8B, the position of the mouse cursor 201 and the three-dimensional shape database 123 (FIG. 2) are referred to (
It recognizes that the mouse button has been pressed on the person icon 3102) (step 8o1), and generates event data in which the event type is object selection and the additional information is the character string +1rie71 input from the keyboard.Step 802 ), the input event processing 126 is activated (step 803). In the input event processing 126, the sent event data is input to the input event queue 1.
Add to 19.

音声入力の場合と同様にこのイベントデータが後にディ
スパッチされると、コマンドバッファ120にrrie
」と空白が格納される。
When this event data is later dispatched, as in the case of voice input, it is stored in the command buffer 120.
” and spaces are stored.

(a−1−3)キーボード入力の場合 キーボード110(第1図)で#rieI+を入力する
場合には、マウスカーソル201をオブジェクトモデリ
ング画面108(第1図)以外の所に置いた上で「r」
 「i」 「e」をそのままタイプする。それ焼れのキ
ー人力に対してキーボードイベント処理309(第2図
)が起動される。この処理309では、第9図に示すよ
うに、判定1301.1303を経た上でイベント種類
にキーボード、付加情報にキーボードから与えられるキ
ーコードを格納したイベントデータを生成しくステップ
1304)、入力イベント処理126を起動する(ステ
ップ1306)。入力イベント処理126はこのイベン
トを入カイベント待ち行列119に加える。
(a-1-3) In the case of keyboard input When inputting #rieI+ on the keyboard 110 (Fig. 1), place the mouse cursor 201 anywhere other than the object modeling screen 108 (Fig. 1), and then click r”
Type "i" and "e" as they are. Keyboard event processing 309 (FIG. 2) is activated in response to a burnt-out key. In this process 309, as shown in FIG. 9, after going through determinations 1301 and 1303, event data is generated in which the event type is the keyboard and the additional information is the key code given from the keyboard.Step 1304), input event processing 126 (step 1306). Input event processing 126 adds this event to incoming event queue 119.

このような入力に対するイベントデータが後にディスパ
ッチされた場合、その中のキーコードをそのままコマン
ドバッファ120のの空きエリアに、その前方から順に
入力される。今の例では、「r」 「i」 「e」の各
々に対するイベントデータからコマンドバッファ120
に処理対象名「rie」が格納される。
When event data for such an input is dispatched later, the key codes therein are inputted as they are into the empty areas of the command buffer 120 in order from the front. In the present example, the command buffer 120 receives event data for each of "r", "i", and "e".
The processing target name "rie" is stored in .

このように、音声入力、マウス入力、キーボード入力の
いずれを用いてもコマンド入力を可能とするために、そ
れぞれからの各入力をイベントデータという共通の形式
のデータに変換している。
In this way, in order to enable command input using voice input, mouse input, or keyboard input, each input from each is converted into data in a common format called event data.

ここまでの操作で、入力すべきコマンドに含まれるべき
処理対象+1rie IIが格納された。づき続いて処
理対象II tel II 、 II tnI+をコマ
ンドに加える。この操作はこれまでの入力と同じように
して行われる。オブジェクト選択に関しては、これ以降
のコマンド入力についても同じことである。こいうど、
コマンドバッファ120には、rrie  tel  
tuJが格納される。
Through the operations up to this point, the processing target +1rie II that should be included in the command to be input has been stored. Next, the processing targets II tel II and II tnI+ are added to the command. This operation is performed in the same way as the previous inputs. Regarding object selection, the same applies to subsequent command inputs. This is it,
The command buffer 120 contains rrie tel
tuJ is stored.

(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  callが初期コ
マンド待ち行列1903に送られた。このように、コマ
ンドバッファ120人力された文字列を一時的に記憶し
、ユーザによりその後コマンド入力指示が与えられたと
き、それまでに入力済みの文字列を一つのコマンドとし
て使用するようになっている。
(a-2) Input of method name Subsequently, the name call of the newly defined method is input from the keyboard 110. Since this is the first method used in the system, this input is
It is possible to input only from 10 onwards. In response to this input, event data is generated and stored in incoming event queue 119 in the same manner as described above. Subsequently, in order to input the end of the input of one command, when a line feed code is input manually as a command input instruction, the keyboard event processing 141 executes step 1303 in FIG.
Event data whose event type is command input and whose additional information is empty is generated and added to the event queue 119. Since the event type of this event data is a command input, the event dispatch process 127 starts the 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 (step 2102.degree. 2102 (FIG. 15)). The (0)rie tel tn call has now been sent to the initial command queue 1903. In this way, the command buffer 120 stores the entered character strings temporarily, and when the user subsequently gives command input instructions, the previously entered character strings are used as one command. There is.

なお、この例ではメソッド名の入力はキーボードで行な
ったが、このメソッド名をあられす候補音声データ50
1を以下のようにあらかじめ記憶すれば未定義のメソッ
ドでも音声によっても入力することができる。すなわち
、候補音声データ501の音声データ502にこのメソ
ッド名をあられす音声を、データ種類503にオブジェ
クトメソッドを、文字列504に”call”を記憶す
る。このようにすれば、コマンド(○)の引き数にひき
つづいてメソッドcallを音声入力すれば、音声認識
処理(第7A図)で抽出された候補音声データは、音声
イベント発生処理(第7B図)で、イベント種類が命令
入力であるイベントが生成される。生成されたイベント
は、先に述べたキーボードによるメソッド名人力のキー
ストローク9call十改行コード”によって生成され
るイベントと等価である。すでに述べたごとく。
Note that in this example, the method name was entered using the keyboard, but the method name can be entered using the candidate voice data 50.
If 1 is memorized in advance as shown below, input can be made using an undefined method or by voice. That is, the voice that indicates this 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 voice input following the argument of the command (○), the candidate voice data extracted in the voice recognition process (Figure 7A) will be transferred to the voice event generation process (Figure 7B). , an event whose event type is command input is generated. The event generated is equivalent to the event generated by the keyboard method virtuoso keystroke 9call ten new line code'' described above.As already mentioned.

コマンドの処理を対象あるいは引数の場合、入力音声に
対する候補データ中のデータの種類はオブジェクトイン
スタンスであるから、この場合、入力音声はコマンドバ
ッファに蓄えられた。しかし上に述べたごとく、メソッ
ドを表わす音声入力は入力すべきコマンドの末尾として
扱えるので、このように音声入力に対する候補データは
、すでに入力された音声に対する候補データは、すでに
入力された音声に対する候補データと組み合わせて一つ
のコマンドとすることができる。
When the command processing is the target or argument, the type of data in the candidate data for the input voice is an object instance, so in this case, the input voice is stored in the command buffer. However, as mentioned above, voice input representing a method can be treated as the end of the command to be input, so candidate data for voice input can be treated as candidate data for voice that has already been input, and candidate data for voice that has already been input is It can be combined with data to form a single command.

このように、操作者が入力する音声の種類を判別してコ
マンドの入力完了か否かを判断すれば、操作者は改行コ
ードのような特別な入力を用いなくてもよい。この上の
音声入力は定義済みのメソッドに対しては勿論、そのま
ま適用できる。
In this way, if the type of voice input by the operator is determined to determine whether or not the input of the command is complete, the operator does not need to use special input such as a line feed code. The above voice input can of course be applied as is to predefined methods.

なお1以上のようにして初期コマンド待ち行列1903
に格納された文字列はプログラムコントロール画面10
6にコマンド番号とともに表示される(第26A図)。
Note that the initial command queue 1903 is
The string stored in the program control screen 10
6 along with the command number (FIG. 26A).

以下において、コマンド入力は上に述べた方法を用いて
行うものとする。
In the following, it is assumed that command input is performed using the method described above.

b、コマンドの実行 操作者はプログラムコントロール画面106(第1図)
上の「実行」ボタン215の上にマウスカーソル201
を持ってきて、ここでマウスボタン(図示せず)を押す
。この操作により発生されるイベントデータに対してイ
ベントディスパッチ処理127がプログラムコントロー
ル処理132(第2図)を起動し、その処理132の実
行中にオブジェクトメソッド実行処理135が起動され
る(ステップ2203 (第18図))。ここでコマン
ド待ち行列スタック122のトップにあるコマンド待ち
行列121は初期コマンド待ち行列1903 (第26
B図)であり、その先頭のコマンドは前述のコマンド(
0)であり、メソッドcallは未定義である。しかし
、システムはコマンド中のメソッドが既定義のものであ
るかどうかに関わりなく、そのコマンドを実行するオブ
ジェクトメソッド実行外R1A135を起動する。
b. The operator who executes the command uses the program control screen 106 (Fig. 1)
Mouse cursor 201 on top of “Run” 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 during the execution of the process 132, the object method execution process 135 is started (step 2203 (Fig. 2)). Figure 18)). Here, the command queue 121 at the top of the command queue stack 122 is the initial command queue 1903 (26th
Figure B), and the first command is the above command (Figure B).
0), and the method call is undefined. However, the system invokes the object method execution outside R1A 135 that executes the command regardless of whether the method in the command is a predefined one.

その処理135では、第22図に示すよう番こ。In the process 135, the number is set as shown in FIG.

命令コードは5uccess  endでなく(ステッ
プ2801)、組込命令でもなく(ステップ2804)
、また指示オブジェクト人物のメソッドとしてまだ登録
されていない(ステップ2811)ので、オブジェクト
メソッド生成処理2812を起動する(ステップ281
2)。
The instruction code is neither 5uccess end (step 2801) nor a built-in instruction (step 2804).
, and since it has not yet been registered as a method for the instruction object person (step 2811), the object method generation process 2812 is started (step 281).
2).

この処理2812では第24図に示すように、このコマ
ンド(0)に対応する新しいcallコマンド待ち行列
(すなわち、このコマンドで要求されたメソッドcal
lに含まれるべきコマンド列を格納するエリア行列)1
903を生成して、コマンド待ちエリア行列スタック1
22にブツシュする(ステップ2910)。また、対応
するメソッドプログラミング画面3110を生成しくス
テップ2920)、オブジェクトメソッドプログラミン
グ画面上にメソッド名call、指示対象とその所属オ
ブジェクトの組rie[人物コ、引数とその所属オブジ
ェクトの組tel [電話]。
In this process 2812, as shown in FIG.
Area matrix for storing command sequences to be included in l)1
903 and command waiting area queue stack 1
22 (step 2910). In addition, a corresponding method programming screen 3110 is generated (Step 2920), and on the object method programming screen, the method name call, the set of the referent and its belonging object rie [person], the set of argument and its belonging object tel [telephone] are displayed.

tn[電話番号]が表示される(ステップ2930)、
これは、新しいメソッドを定義するための準備である。
tn [telephone number] is displayed (step 2930),
This is preparation for defining a new method.

これ以降操作者は、メソッドcallのを構成するコマ
ンドの各々を入力し、かつ実行させる。
From this point on, the operator inputs and executes each of the commands that make up the method call.

ここでは、 (1)電話のところまでいって (rie  tel#positiongoto) (2)電話をとって (rie  tel  tel  take)(3)与
えられた電話番号のところに電話を掛ける。
Here, (1) Go to the telephone (rie tel#positiongoto) (2) Pick up the telephone (rie tel tel take) (3) Make a call to the given telephone number.

(rie  tel  tn  connect)(4
)以上のことができれば成功である。
(rie tel tn connect) (4
) If you can do the above, you will be successful.

(success  end) ことをプログラムする。(success end) Program something.

操作者はコマンド(1)−(4)を順次入力する。ここ
で、#はオブジェクトインスタンスのスロット値を表現
するためのものである。コマンド(1)−(4)はca
llコマンド待ち行列3121に順に加えられる。ca
llメソッド待ち行列3121に格納されたコマンドは
、格納の都度対応するメソッドプログラミング画面31
10に表示される。
The operator inputs commands (1) to (4) in sequence. Here, # is for expressing the slot value of the object instance. Commands (1)-(4) are ca
The commands are added to the ll command queue 3121 in order. ca
The commands stored in the method queue 3121 are displayed on the corresponding method programming screen 31 each time they are stored.
10 is displayed.

ここでプログラムコントロール画面上106の「実行」
ボタン215(第26A図)の上にマウスカーソル20
1を持ってきて、マウスボタンを押すと、オブジェクト
メソッド実行処理135によりcallメソッドに対応
するコマンド待ち行列3121の先頭のコマンド(1)
を実行する。
Click "Run" on 106 on the program control screen.
Mouse cursor 20 is placed on button 215 (Figure 26A).
1 and press the mouse button, the object method execution process 135 executes the command (1) at the head of the command queue 3121 corresponding to the call method.
Execute.

ここで、メソッドgotoは、5uccessendで
なく(ステップ2801)、組み込み命令でもなく(ス
テップ2804)、人物オブジェクトに定義されていな
いので(ステップ2811)、オブジェクトメソッド生
成処理2812を行う。つまり、ここでcallメソッ
ドプログラミングを一時中断して、gotoメソッドプ
ログラミングを行う。このためにこの処理2812の中
でもgotoコマンド待ち行列3020 (第27B図
)をコマンド待ち行列スタック122のトップに形成す
る(ステップ2910 (第24図))。
Here, since the method goto is not 5uccesssend (step 2801), is not a built-in command (step 2804), and is not defined in the person object (step 2811), object method generation processing 2812 is performed. In other words, call method programming is temporarily interrupted and goto method programming is performed. For this purpose, a goto command queue 3020 (FIG. 27B) is created at the top of the command queue stack 122 during this process 2812 (step 2910 (FIG. 24)).

さらに、デイスプレィ装置上101には第27B図go
toメソッド用のメソッドプログラミング画面3210
をcallメソッド用のメソッドプログラミング画面3
110に重ねて形成する(ステップ2910)、このプ
ログラミング画面3210には、このコマンド(1)に
したがって、メソッド名、処理対象、引数等が画面31
10と同様に表示される(ステップ2930)。このよ
うに、コマンド待ちエリア行列スタック122内の行列
はメソッドプログラミング画面の数とその対応するメソ
ッドと等価であり、メソッドプログラミングを制御する
役割を持つ。
Further, on the display device 101, there is a message shown in FIG.
Method programming screen 3210 for to method
Method programming screen 3 for call method
110 (step 2910), the method name, processing target, arguments, etc. are displayed on the programming screen 3210 according to this command (1).
10 (step 2930). Thus, the queues in the command queue area queue stack 122 are equivalent to the number of method programming screens and their corresponding methods, and have the role of controlling method programming.

gotoメソッドは人間がある位置まで移動させるプロ
グラムする。ここでは、次のコマンド列を入力する。
The goto method programs a person to move to a certain position. Here, enter the following command string.

(10)距離を格納する一時オブジェクトインスタンス
を生成する dist 5calar@create(11)方向を
格納する一時オブジェクトインスタンスを生成する dir vector@create (12)rieとtelの距離を調べるrie te1
4position dist getdistanc
e(13)rieからみたtelの方向を調べるrie
 tel#takeposiiton dirgetd
irection (14)(13)の結果をもとにrieをtelの方向
に向かせる。
(10) Create a temporary object instance that stores the distance dist 5calar@create (11) Create a temporary object instance that stores the direction dir vector@create (12) Check the distance between rie and tel rie te1
4position dist get distance
e(13) Check the direction of tel from rie
tel#takeposiitondirgetd
Direction (14) Directs rie in the direction of tel based on the results of (13).

rie dir rotate (15)rieに(1)の距離だけ歩かせるrie  
dist  walk (16)rieを電話の方向に向かせるrie  te
l#direction  rotate(17)以上
のことが成功したばあいがgot。
rie dir rotate (15) Make rie walk the distance of (1)
dist walk (16) point rie in the direction of the phone
l#direction rotate (17) If the above is successful, you got it.

メソッドを終了する。Terminate the method.

5uccess end コマンド(10)、(11)は人物アイコン3102と
電話アイコン3104の間の距離dist (これはス
カラー量)を格納する距離オブジェクトと、人物からみ
た電話器の方向dir(これはベクトル量)を格納する
方向オブジェクトをそれぞれ生成するコマンドである。
5uccess end commands (10) and (11) create a distance object that stores the distance dist (this is a scalar quantity) between the person icon 3102 and the telephone icon 3104, and the direction dir of the phone as seen from the person (this is a vector quantity) This is a command that creates direction objects that store each.

本実施例ではオブジェクトを生成するコマンドは、(オ
ブジェクト名)@createであり、組み込みのもの
である。第27A図で、3202,3203はそれぞれ
距離オブジェクト、方向オブジェクトを表わすアイコン
であり、これらのオブジェクトの定義にしたがって、こ
れらのアイコンが表示される。なお、このように、オブ
ジェクトを生成したときには、それぞれのオブジェクト
の名称(dist、dir)を音声入力する。そして、
候補音声データの音声データに入力した音声を。
In this embodiment, the command for creating 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 definitions of these objects. Note that when objects are generated in this way, the names (dist, dir) of each object are input by voice. and,
The voice input to the voice data of candidate voice data.

データ種類にオブジェクトインスタンス、文字列データ
にそれぞれ名称を表わす文字列 (”dist”dir”)を記憶し、候補音声データベ
ースに格納する。
An object instance is stored as the data type, and a character string ("dist"dir") representing the name is stored as the character string data, and stored in the candidate voice database.

コマンド(12)  (13)では、コマンド(10)
(11)で生成した一時オブジェクトのインスタンスに
それぞれ組み込み命令 getdistance+ getdirectionを用いて上記距離dist、
方向dirの値を格納する。そしてコマンド(14)で
、人物アイコン3102を方向dirだけ回転させ、コ
マンド(15)で距離distだけ歩かせる。次に (16)で、電話の方向に向かせる。最後にコマンド(
17)(success  end)を加える。
command (12) (13), command (10)
The above distance dist,
Stores the value of direction dir. Then, with a command (14), the person icon 3102 is rotated in the direction dir, and with a command (15), it is made to walk a distance dist. Next, at step (16), make the user face the phone. Finally, the command (
17) Add (success end).

以上のコマンド列は最後のコマンド(17)の入力後g
otoコマンド列エリア3230に格納される。次に実
行を指示すると、プログラム実行処理135(第22図
)によりこのコマンド待ち行列を次々と実行して、失敗
を引き起こす要因が無<5uccess  endまで
実行が進む(ステップ2801)と、gotoメソッド
のメソッド実行終了処理2301を行う(ステップ28
02)。メソッド実行終了処理2301では。
The above command sequence is g after inputting the last command (17).
It is stored in the oto command string area 3230. Next, when execution is instructed, the program execution processing 135 (Figure 22) executes this command queue one after another, and when the execution progresses until there is no factor causing failure <5 success end (step 2801), the goto method is Perform method execution termination processing 2301 (step 28
02). In method execution end processing 2301.

第23図に示すように、はじめにコマンド待ち行列スタ
ック122のトップを調べる(ステップ2302)。こ
れはgotoコマンド待ち行列3230であるので、こ
の中のコマンド列をgotoメソッドとして記憶する(
ステップ2303)。そしてコマンド待ち行列スタック
122をポツプして、got’oメソッドプログラミン
グ画面3210を消去する。また、got。
As shown in FIG. 23, the top of the command queue stack 122 is first examined (step 2302). Since this is the goto command queue 3230, the command string in this is stored as a goto method (
Step 2303). Then, the command queue stack 122 is popped and the got'o method programming screen 3210 is cleared. Also, got.

メソッド記述で生成した一時データであるdist32
02、dir3203をオブジェクトライブラリ124
.3次元形状データベース123、オブジェクト表示画
面102から消去する(ステップ2304)。
dist32, which is temporary data generated by method description
02, dir3203 to object library 124
.. It is deleted from the three-dimensional shape database 123 and object display screen 102 (step 2304).

この時点でコマンド待ち行列スタックのトップはcal
lコマンド待ち行列3121に戻る。
At this point, the top of the command queue stack is cal
Return to l command queue 3121.

callコマンド待ち行列3121の残りのコマンドは (2)rie  tel  tel  take(3)
rie  tel  tn  connect(4)s
uccess  end である。すなわち、ここから−時中断されていたcal
lメソッドプログラミングを再開することになる。
The remaining commands in the call command queue 3121 are (2) rie tel tel take (3)
rie tel tn connect(4)s
Success end. That is, from here on - the cal that was suspended
l method programming will be restarted.

次に改めて実行を指示すると、callコマンド待ち行
列3121の先頭コマンド(2)を実行する。tel 
 takeメソッドは指示オブジェクトhumanでは
定義されてないので、オブジェクトメソッド生成処理2
812が行われる。つまり、再び、callメソッドプ
ログラミングを中断してtel  takeメソッドプ
ログラミングを行う。
Next, when execution is instructed again, the first command (2) in the call command queue 3121 is executed. tel
Since the take method is not defined in the instruction object human, object method generation processing 2
812 is performed. That is, call method programming is interrupted and tel take method programming is performed again.

この処理2812の結果、コマンド待ち行列スタック1
22のトップには、第28A図に示すようにtel  
takeコマンド待ち行列3320があり、メソッドプ
ログラミング画面には第28B図に示すようにcall
メソッド用の画面3110とtel  takeメソッ
ド用の画面3301のが存在する。
As a result of this process 2812, command queue stack 1
At the top of 22, there is a tel number as shown in Figure 28A.
There is a take command queue 3320, and the method programming screen has a call command queue 3320 as shown in Figure 28B.
There is a screen 3110 for the method and a screen 3301 for the tel take method.

先程のgotoメソッドの実行の結果、人物3102は
電話3104をとるのに適した位置で、電話の方向を向
いて立っている。そこで、ここでは人物3102の右手
を電話3104の受話器の方に伸ばして、受話器をとり
、受話器をとった右手を人物の3102の右耳の近くに
持ってくるという動作をプログラムする。
As a result of the previous execution of the goto method, person 3102 is standing in a position suitable for picking up telephone 3104 and facing the direction of the telephone. Therefore, here, an action is programmed in which the right hand of the person 3102 is extended toward the receiver of the telephone 3104, the receiver is picked up, and the right hand that has picked up the receiver is brought near the right ear of the person 3102.

人物3102の右上腕と右下腕を電話3104の受話器
をとるような形にするには、まず、右上腕と右下腕を交
互に選択してこれらに対しモーションコントロール処理
128を実行する。ここではモーションコントロール画
面上のX軸周り回転バリュエータ220(第1図)、X
軸周り回転バリュエータ221.z軸周り回転バリュエ
ータ222を操作する。第3A図に示すように、右上腕
と右下腕は回転可能属性が付いているので、右肩と右肩
の部分で回転させることができる。また、両方弁移動可
能属性は付いてなく、これを移動させようとすると図か
らもわかるように人間全体が移動するため、移動は行わ
ない。こうして、右上腕と右下腕をうまく操作して第1
6図に示すモーションコントロール処理128により電
話の受話器の付近に右手を置く。このように属性を与え
るのは、人間などの関節は回転できるだけであり、移動
することはできないことを表現するためである。
To shape the upper right arm and lower right arm of the person 3102 into a shape that looks like a receiver of the telephone 3104, first, the upper right arm and the lower right arm are alternately selected and motion control processing 128 is performed on them. Here, the rotation valuator 220 around the X axis on the motion control screen (Fig. 1),
Rotation around axis valuator 221. The rotation valuator 222 around the z-axis is operated. As shown in FIG. 3A, the upper right arm and lower right arm have a rotatable attribute, so the right shoulder and right shoulder portions can be rotated. Also, both valves do not have the movable attribute, and if you try to move them, as you can see from the figure, the entire person will move, so they will not be moved. In this way, by skillfully controlling the upper right arm and lower right arm,
The motion control process 128 shown in FIG. 6 places the right hand near the telephone receiver. The reason why attributes are given in this way is to express that the joints of humans and the like can only rotate and cannot move.

以上のモーションコントロールの後′″rie。After the above motion control'rie.

ruarm”を入力し、コマンドバッファ120の処理
対象として格納し、プログラムコントロール画面106
上の「記憶」ボタン216上にマウスカーソル201を
持ってきてここでマウスボタン202を押すことによっ
て、プログラムコントロール132が起動され、その処
理の中で状態記憶処理134が起動されるステップ 2204 (第18図)。状態記憶処理134では、処
理対象(rie、ruarm)がコマンドバッファ12
0内にあるため、処理対象用に記憶処理210を起動す
ル(ステップ2402(第20図))。
ruarm”, stores it as a processing target in the command buffer 120, and displays it on the program control screen 106.
By moving the mouse cursor 201 over the "memory" button 216 above and pressing the mouse button 202, the program control 132 is activated, during which step 2204 (step 2204) the state storage process 134 is activated. Figure 18). In the state storage process 134, the processing target (rie, ruarm) is the command buffer 12.
Since it is within 0, the storage process 210 is activated for the processing target (step 2402 (FIG. 20)).

この処理では、コマンドバッファ中の処理対象が人物3
102の右上腕であり、これが回転可能属性だけが付い
ていることから、右上腕を現在示されている回転角まで
回転させる0次のコマンド(20)rie、ruarm
  現在回転角otate が生成され、tel  takeコマンド待ち行列33
20に加えられる(ステップ25o4〜2506)。同
様にして人物3102の右下腕に対して処理対象用状態
記憶処理210を行うことによって次のコマンド (21)rie、rlarm  現在回転角otate がtel  takeコマンド待ち行列3320に加え
られる。
In this process, the processing target in the command buffer is person 3.
102, and since this has only the rotatable attribute, the 0th order command (20) rie, ruarm rotates the right upper arm to the currently indicated rotation angle.
The current rotation angle otate is generated and the tel take command queue 33
20 (steps 25o4 to 2506). Similarly, by performing processing target state storage processing 210 on the lower right arm of the person 3102, the next command (21) rie, rlarm current rotation angle otate is added to the tel take command queue 3320.

次に、rie3102の右手にte13104の受話器
を持たせる。このための組み込み命令1inkを用いる
。コマンドは (22)rie、rhand  tel。
Next, the receiver of te13104 is held in the right hand of rie3102. The built-in instruction 1ink is used for this purpose. The command is (22) rie, rhand tel.

receiver  1ink である。このメソッド1inkは指示対象の下位構造に
引数オブジェクトを指定することによって実現している
。結果的に、これ以降受話器は人物3102の右手の位
置に従って移動、回転を行う。
It is receiver 1ink. This method 1ink is realized by specifying an argument object in the lower structure of the referent. As a result, from now on, the receiver moves and rotates according to the position of the person's 3102 right hand.

また、電話3104を移動・回転しても受話器はその影
響を受けない。
Further, even if the telephone 3104 is moved or rotated, the handset is not affected by the movement or rotation.

このままでは電話31o4の動きにしたがって受話器も
動くことになるので、この関係を断つコマンド (23)tel、body  tel。
If this continues, the handset will move according to the movement of the telephone 31o4, so use the command (23) tel, body tel to break this relationship.

receiver  unlink を実行する。receiver unlink Execute.

この結果、人物3102と電話3104のオブジェクト
構造は第28A図に示すようになる。
As a result, the object structure of the person 3102 and the telephone 3104 becomes as shown in FIG. 28A.

次に、再び人物3102の右上腕、右下腕をモーション
コントロール画面103上のバリュエータrot  x
 (220)、rot  y (221)+rot  
z (222)を用いて操作して、受話器が右耳の付近
にちょうど位置するような格好をとらせ、このあと状態
記憶処理134を起動する。
Next, move the upper right arm and lower right arm of the person 3102 again to the valuator rot x on the motion control screen 103.
(220), rot y (221) + rot
z (222) to position the receiver so that it is positioned just near the right ear, and then the state storage process 134 is activated.

その結果、コマンド (24)rie、ruarm  現在回転角otate (25)rie、rlarm  現在回転角otate がtel  takeコマンド待ち行列3320に加え
られる。
As a result, the command (24) rie, rarm current rotation angle otate (25) rie, rlarm current rotation angle otate is added to the tel take command queue 3320 .

このメソッド用の最後のコマンドとして。As the last command for this method.

(26)success  end を加える。そしてこれらのコマンドを次々と実行してい
き、5uccess  endにまで到達したときメソ
ッド実行終了処理2301を行う。
(26) Add success end. Then, these commands are executed one after another, and when the 5th success end is reached, method execution end processing 2301 is performed.

tel  takeメソッド記述してきたコマンド列(
20)−(26)を記憶し、コマンド待ち行列スタック
122をポツプし、tel  takeメソッドプログ
ラミング画面3301を消去する。
The command string written in the tel take method (
20)-(26), pops the command queue stack 122, and clears the tel take method programming screen 3301.

ca11コマンド待ち行列3121の次のコマンドは、 (3)rie tel  tn  connectであ
る。connectメソッドも人間オブジェクト270
1 (第3A図)の中で定義されていないので、新しい
コマンド待ち行列3430が生成され、音声登録を行い
、オブジェクトメソッド生成処理2812を行う。
The next command in the ca11 command queue 3121 is (3) rie tel tn connect. The connect method is also a human object 270
1 (FIG. 3A), a new command queue 3430 is created, voice registration is performed, and object method generation processing 2812 is performed.

その結果、コマンド待ち行列スタック122のトップに
はconnectコマンド待ち行列3430が作られ(
第29B図)、メソッドプログラミング画面はcall
に対応するもの3110と、connectに対応する
もの3420の2つが表示される(第29A図)。
As a result, a connect command queue 3430 is created at the top of the command queue stack 122 (
Figure 29B), the method programming screen is called
Two items are displayed: one 3110 corresponding to , and one 3420 corresponding to connect (Fig. 29A).

ここでは、 (30)指定された電話番号に接続要求を出すtel 
  tn   connectrequest (31)接続が成功したならその旨、音声出力する rie  ”つながりました″ peak (32)以上が成功すれば終了する 5uccess   end とする。
Here, (30) Send a connection request to the specified phone number.
tn connectrequest (31) If the connection is successful, output a voice to that effect. rie "Connected" peak (32) If the above steps are successful, the process ends. 5uccess end.

このコマンド列を実行していき、(32)succes
s  endにまで到達した場合に、メソッド実行終了
処理2301を行い、connectメソッドとしてコ
マンド列(30)−(32)を記憶し、コマンド待ち行
列スタック122をポツプし、connectメソッド
プログラミング画面3420を消去する。
Execute this command sequence, (32) success
When reaching s end, method execution end processing 2301 is performed, command strings (30) to (32) are stored as the connect method, the command queue stack 122 is popped, and the connect method programming screen 3420 is erased. .

ここでコマンド待ち行列スタックのトップはcallコ
マンド待ち行列3121であり、その先頭のコマンドは
(4)success  endである。これを実行す
るとメソッド実行終了処理2301が起動され、(1)
−(4)コマンド列をcallメソッドとして記憶し、
コマンド待ち行列スタック122をポツプし、call
メソッドプログラミング画面3110を消去する6以上
で、当初意図したcallメソッドのプログラミングが
終了したことになる。また、ここでのコマンド待ち行列
スタック122のトップは初期コマンド待ち行列312
0である。これで、callメソッドプログラミングが
終了した。
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, method execution termination processing 2301 is started, and (1)
-(4) Store the command string as a call method,
Pop the command queue stack 122 and call
When the method programming screen 3110 is cleared 6 or more, programming of the originally intended call method is completed. Also, the top of the command queue stack 122 here is the initial command queue 312.
It is 0. This completes the call method programming.

これ以降、「実行」を入力して「人物オブジェクトイン
スタンス 電話オブジェクトインスタン入 電話番号オ
ブジェクトインスタンスcallJというコマンドをオ
ブジェクトメソッド実行処理135に送れば、人物オブ
ジェクトインスタンスは電話の位置まで移動して、後を
向いて受話器をとり、指定された電話番号に接続要求を
出して接続が成功したならば「つながりました」という
音声を発することになる。
From now on, if you input "Execute" and send the command "Person object instance Telephone object instance enter Telephone number object instance callJ" to the object method execution processing 135, the person object instance will move to the position of the telephone and turn around. The user then picks up the receiver, issues a connection request to the specified phone number, and if the connection is successful, a voice saying ``Connected'' will be emitted.

また、「人物オブジェクトインスタンス ベクトルオブ
ジェクトインスタンス gotoJ。
Also, "Person object instance Vector object instance gotoJ.

「人物オブジェクトインスタンス 電話オブジェクトイ
ンスタンス tel  takeJ、「人物オブジェク
トインスタンス 電話オブジェクトインスタンス 電話
番号オブジェクトインスタンスC0nnectJの各コ
マンドもcallメソッド定義の過程の中でに定義され
ている。 コマンドの実行は依頼したオブジェクトイン
スタンスの動作として、また音声として出力されるため
、その状態の認識が容易である。
The following commands are defined in the process of defining the call method: "Person object instance Telephone object instance tel takeJ", "Person object instance Telephone object instance Telephone number object instance C0nnectJ". Command execution is the action of the requested object instance. It is easy to recognize the state because it is output as a message or as a voice.

しかし、コマンドを実行中、どこかで失敗をする可能性
がある。本例では電話の接続要求を出す次のコマンド、 (3)rie  tel  tn  connectの
なかの (30)rie  tel  tn  connect
request で相手が話し中であるなどの理由で失敗することが考え
られる。しかし、失敗が現に生じるまではプログラムを
記述する必要のないところが本発明の特徴の1つである
However, there is a possibility that a failure will occur somewhere during the execution of the command. In this example, the next command that requests a telephone connection is (30) rie tel tn connect in (3) rie tel tn connect.
It is conceivable that request may fail due to reasons such as the other party is busy talking. However, one of the features of the present invention is that there is no need to write a program until a failure actually occurs.

何度かコマンドを実行しているうちに、コマンド(30
)で失敗した場合には、その失敗した例を用いてプログ
ラムを記述することができる。第29A図の例では1人
物3102が電話を用いて、電話番号オブジェクトイン
スタンスtnlを用いた場合に、失敗したとする。その
コマンドは、(40)rie  tel  tnl connect であり、失敗するのはコマンド(30)を現在の例で置
き換えたコマンド (30)’  rie  tel  tnlconne
ct   request である。
While executing the command several times, the command (30
), you can write a program using the failed example. In the example of FIG. 29A, it is assumed that one person 3102 uses a telephone and fails when using the telephone number object instance tnl. The command is (40) rie tel tnl connect and what fails is the command (30)' rie tel tnlconne which replaces command (30) with the current example.
ct request.

前述の場合と同様にコマンド(4o)のオブジェクトメ
ソッド生成処理2812 (第24図)を行う。
The object method generation process 2812 (FIG. 24) of command (4o) is performed in the same way as in the previous case.

ここでのプログラムは電話の接続に失敗した場合のもの
である。ここでのコマンド列は次のようにする。
The program here is for when telephone connection fails. The command sequence here is as follows.

(41)”失敗しました″と音声でメツセージを出力す
る rie  ”接続失敗しました” peak (42)受話器を本体にはまる位置に回転させるrie
、reciever  受話器が電話器に収まる向き 
rotate (43)受話器を本体の位置に置く rie、recexver tel#pos1txon translate (44)受話器とrieの右手を切り離すrie、re
cexver   tel。
(41) rie outputs a voice message saying “Failed” “Connection failed” peak (42) rie rotates the handset to fit into the main body
, receiver The direction in which the handset fits into the telephone
rotate (43) Place the handset at the main body position, rie, recexver tel#pos1txon translate (44) Separate the handset from rie's right hand, rie
cexver tel.

body   1ink (45)受話器と本体をもとの関係に戻すrie、rh
and  rie。
body 1ink (45) Return the receiver and main body to their original relationship rie, rh
and rie.

receiver  unlink (46)直立する rxe  neutral (47)以上が成功したら終了する 5uccess  end とする。receiver unlink (46) Stand upright rxe neutral (47) If the above is successful, end 5uccess end shall be.

ここで、(44)、(45)のコマンドを実行すると、
オブジェクトの構造は第30C図3330に示すように
なる。これは人物オブジェクト27o1と電話オブジェ
クト2750ではじめに定義した状態である。これ以降
、人物と電話は通常の人物オブジェクト2701、電話
オブジェクト2750として動作する。
Now, if you execute the commands (44) and (45),
The structure of the object is as shown in Figure 30C 3330. This is the state initially defined for the person object 27o1 and the telephone object 2750. From this point on, the person and the phone operate as a normal person object 2701 and phone object 2750.

上のコマンドを順次実行して(47)success 
 endコマンドまで到達すれば、メソッド実行終了処
理2301が行われ、コマンド列(41)−(47)が
人物オブジェクト2701のconnectメソッドと
して、第29B図で定義したものを失うことなく、新た
に記憶される。
Execute the above commands one after another (47) success
When the end command is reached, method execution termination processing 2301 is performed, and the command sequence (41) to (47) is newly stored as the connect method of the person object 2701 without losing what was defined in FIG. 29B. Ru.

これで、人物オブジェクトに対するconnectメソ
ッドとしてはコマンド列(30)−(32)と、コマン
ド列(41)−(47)の2つが定義さ九た。メソッド
実行は定義順に行われるため、「人物オブジェクトイン
スタンス 電話オブジェクトインスタンス 電話番号イ
ンスタンス C0nnec、tJコマンドを実行すると
、はじめに(30)−(32)で定義したコマンド列を
用いて指定の接続要求を出す。その結果、成功すれば「
成功しました」との音声出力を行う。成功しなければ、
(41)−(47)の実行に移り、r接続失敗しました
Jとの音声出力を行い、受話器を置いて直立する。
Now, two command strings (30)-(32) and command strings (41)-(47) are defined as connect methods for the person object. Since method execution is performed in the order of definition, when the command ``Person object instance Telephone object instance Telephone number instance C0nnec, tJ'' is executed, a specified connection request is issued using the command sequence defined in (30) to (32). As a result, if successful,
"Successful" is output. If you don't succeed,
Proceed to execute steps (41) to (47), output audio to J (r connection failed), hang up the receiver, and stand upright.

以上で秘書は電話をかけることに関しては、−応のメソ
ッドを持ったことになる。人物オブジェクト2701は
第3A図に示すように、callメソッド(2712)
、gotoメソッド(2713)、tel  take
メソッド(2714)+ connect (1)メソ
ッド(2715) 、 c o n n e c t 
(2)メソッド(2716)と第25図に示した組み込
み命令コードの群の中の、処理対象が人物であるものを
持っている。
The secretary now has a method for making telephone calls. As shown in FIG. 3A, the person object 2701 uses a call method (2712)
, goto method (2713), tel take
Method (2714) + connect (1) Method (2715), connect
(2) It has a method (2716) and one among the group of built-in instruction codes shown in FIG. 25 whose processing target is a person.

2、大型汎用計算機116との通信を用いたプログラム 次に、大型汎用計算機を用いて会議室を予約することを
プログラムする例を用いて本発明の実施例の特徴を説明
する。ここではカメラの視野(ビュー)をプログラムす
ることにも言及する。
2. Program using communication with large general-purpose computer 116 Next, features of the embodiment of the present invention will be explained using an example of programming to reserve a conference room using a large general-purpose computer. It also refers to programming the camera's field of view.

人物オブジェクトインスタンスrie (3102)、端末オブジェクトインスタンスterm
 (3612) 、84寸オブジェクトインスタンスd
ate3610、部屋オブジェクトインスタンスr o
 o m 3611を用いてメソッドyoyakuを記
述する。
Person object instance rie (3102), terminal object instance term
(3612), 84-inch object instance d
ate3610, room object instance r o
Write the method yoyaku using om3611.

ここで、オブジェクトインスタンスは第31図に示すよ
うに、3次元空間中に配置されているものとする。
Here, it is assumed that the object instances are arranged in a three-dimensional space as shown in FIG.

はじめカメラオブジェクトインスタンスはビュー1 (
37Ql)を用いており、端末オブジェクトインスタン
スterm (3612)は、第31A図のオブジェク
ト表示画面1 (3601)に示すようにオブジェクト
表示画面中で仕切り3602にはばまれて表示されてい
ないとする。
Initially, the camera object instance is view 1 (
37Ql), and the terminal object instance term (3612) is not displayed on the object display screen because it is sandwiched between partitions 3602, as shown in object display screen 1 (3601) in FIG. 31A.

従ってこれをマウス109で選択することもできないも
のとする。
Therefore, it is assumed that this cannot be selected with the mouse 109 either.

メソッドを (50)rie  term  date  roor
noyaku とする。この中でterm (3612)は音声かキー
ボードによって入力される。
method (50) rie term date roor
Let's say noyaku. Among these, term (3612) is input by voice or keyboard.

これを実行すると、オブジェクトメソッド生成処理28
12が起動され、コマンド待ち行列スタック122にy
oyakuコマンド待ち行列3630がブツシュされ、
メソッドプログラミング画面3620が生成される。
When you execute this, object method generation process 28
12 is started and y is placed on the command queue stack 122.
The oyaku command queue 3630 is booted and
A method programming screen 3620 is generated.

ここでは、端末が実際に表示されていないと何にたいし
て操作をしているかわからなくなるので、ビューコント
ロール画面104のバリュエータを操作して、term
3612が見えるビューであるビュー2 (3702)
に変更する。そうしてオブジェクト表示画面2 (36
02)のようにしでにterm3612が表示されれば
、これをマウス109によっても選択することができる
Here, if the terminal is not actually displayed, you will not know what you are doing, so operate the valuator on the view control screen 104 to change the term.
View 2 (3702) is the view where 3612 is visible
Change to Then object display screen 2 (36
If term 3612 is already displayed as in 02), it can also be selected using the mouse 109.

このように、計算機内で3次元形状として定義されてい
るものをデイスプレィ装置とマウスを用いて選択する場
合に、デイスプレィ装置上に投影されないものがある場
合には、ビューを変更してデイスプレィ装置上に投影さ
れるようにしてから、選択することができる。
In this way, when selecting something that is defined as a three-dimensional shape in the computer using a display device and a mouse, if there is something that is not projected on the display device, you can change the view and select it on the display device. You can then select it.

そして、このプログラムではこのビューで仕事をさせた
いと操作者がプログラムするとして、カメラに対する状
態記憶処理134を実行する。このためには、コマンド
バッファの処理対象を空にしておけばよい。状態記憶処
理134が実行さ九ると、 (51)カメラ termが見える位置termが見え
る方向 camera  setコマンドが生成される
。これはビューを変更するための特殊なコマンドである
This program executes state storage processing 134 for the camera, assuming that the operator wants to work in this view. To do this, it is sufficient to empty the command buffer for processing. When the state storage process 134 is executed, (51) a camera set command is generated for the position in which the camera term is visible and the direction in which the term is visible. This is a special command for changing views.

つぎに、既定義メソッドgotoを用いて、(52)r
je  term#positiongot。
Next, using the predefined method goto, (52) r
je term#positiongot.

コマンドを加えて、rie3102をterm3612
の場所まで歩いて移動させる。
Add command to change rie3102 to term3612
Walk to the location and move it.

次のコマンド (53)term  openterminalの命令
コードは組み込み命令で、大型汎用機と通信路を開き、
これにログオンする。同時に、端末画面107をデイス
プレィ装置101上に表示する。
The instruction code for the next command (53) term openterminal is a built-in instruction that opens a communication path with a large general-purpose machine.
Log on to this. At the same time, a terminal screen 107 is displayed on the display device 101.

次に、コマンド (54)term  date  room  get
reservatxon を実行して大型汎用計算機上の予約アプリケーションプ
ログラムを実行し、date3610とroom361
1に従って会議室の予約をとる。
Next, command (54) term date room get
Execute reservexon to run the reservation application program on the large general-purpose computer, and save date3610 and room361.
Make a reservation for a conference room according to step 1.

以上のことが成功したらコマンド (55)success  end をyoyakuコマンド待ち行列3630に加える。こ
れを実行すれば、コマンド列(51)−(55)がyo
yakuメソッドとして記憶され、コマンド待ち行列ス
タック122はポツプされ、yoyakuメソッドプロ
グラミング画面3620は消去される。
If the above is successful, the command (55) success end is added to the yoyaku command queue 3630. If you execute this, the command sequence (51)-(55) will be yo
It is stored as a yaku method, the command queue stack 122 is popped, and the yoyaku method programming screen 3620 is cleared.

このようにして、特定のビュー位置を設定して、その位
置にカメラを置いてオブジェクトメソッドを実行するよ
うに指定することができる。また、大型汎用計算機を用
いた仕事を行うこともできる。
In this way, you can set a particular view position and specify that the camera should be placed at that position and an object method executed. They can also perform work using large general-purpose computers.

D、変形例 これまでは、3次元形状データベース123を用いて3
次元形状をオブジェクト表示画面102に表示した例を
説明したが、これは本発明にとって必ずしも本質的では
ない。ここでは、3次元形状を用いないシステムの実現
方法について説明する。例として、1.で説明した電話
をかけるプログラムについて述べる。
D. Modified example Up until now, the three-dimensional shape database 123 has been used to
Although an example has been described in which a dimensional shape is displayed on the object display screen 102, this is not necessarily essential to the present invention. Here, a method for realizing a system that does not use three-dimensional shapes will be described. For example, 1. This section describes the program that makes phone calls, which was explained in .

電話をかけるプログラムを2次元システムで実現する場
合の問題点は、依頼を受けたオブジェクトインスタンス
が電話オブジェクトインスタンスのところまでいって、
電話をもつことをどう表現するかである。これには、第
33図に示すように、依頼を受けたオブジェクトインス
タンス3801を処理の対象となるオブジェクトインス
タンス3802のところまで移動させて、電話をとった
ことを表現するためにその電話を表すアイコンを点滅さ
せるなどの強調処理を行えばよい。あるいは、移動を伴
わなくても、両方を強調処理してもよい。また、第34
図に示すように、依頼を受けたオブジェクトインスタン
スのアイコン3901と処理対象のアイコン3902と
の表示を変更させてもよい。さらに、第35図に示すよ
うに、依頼を受けたアイコン4001から処理対象のア
イコン4002に向けて、または処理対象のアイコン4
002から依頼を受けたアイコン4001に向けて、矢
印を表示してもよい。
The problem with implementing a program to make a telephone call in a two-dimensional system is that the object instance that received the request goes to the telephone object instance,
It's about how to express having a phone. As shown in FIG. 33, this involves moving the object instance 3801 that received the request to the object instance 3802 that is the object of processing, and then placing an icon representing the phone to indicate that the person has picked up the phone. Emphasis processing such as blinking may be performed. Alternatively, both may be emphasized without any movement. Also, the 34th
As shown in the figure, the display of the requested object instance icon 3901 and the processing target icon 3902 may be changed. Furthermore, as shown in FIG. 35, from the requested icon 4001 to the icon 4002 to be processed,
An arrow may be displayed pointing toward the icon 4001 that received the request from 002.

このように、本発明の本質的な点は、プログラムの実行
状態をデイスプレィ装置上で表現する場合に、プログラ
ムライブラリの実行を管理するプログラムを図形化して
表示し、これを実行状況に応じて表示を変化させること
である。
As described above, the essential point of the present invention is that when the execution state of a program is expressed on a display device, the program that manages the execution of a program library is displayed graphically, and this is displayed according to the execution state. It is to change the.

さらに、本実施例において、人物アイコン3102に電
話をとらせるのに、コマンド(2)を入力し、このコマ
ンドに対しコマンド列(20)〜(26)からなるメソ
ッドによる定義した。しかしながら、プログラムの実行
状態を操作者に知らせるという目的のためには、電話を
かけるコマンド(3)の命令connectのメソッド
の中に、あらかじめコマンド列(20)〜(26)を埋
め込んでおくことにより、コマンド(3)の入力に応答
した、電話をかける操作の近傍で、人物3102に対し
て、電話器の方に移動し、受話器を取らせるようにする
こともできる。
Furthermore, in this embodiment, to make the person icon 3102 pick up the phone, command (2) is input, and this command is defined by a method consisting of command strings (20) to (26). However, for the purpose of notifying the operator of the execution status of the program, it is possible to embed the command strings (20) to (26) in advance in the method of the command connect of command (3) to make a call. It is also possible to have the person 3102 move toward the telephone set and pick up the telephone receiver near the operation of making a telephone call in response to the input of command (3).

さらに、本実施例では人物アイコン3102にリンクし
て受話器を移動させたが、コマンド(3)の命令con
nectに応答して、受話器を移動させるようにすると
ともにできる。これによっても作成中のプログラムから
要求があった他のオブジェクトのメソッドが何であるか
を操作者に分からせることも可能である。
Furthermore, in this embodiment, the handset is moved by linking to the person icon 3102, but the command (3) con
nect, the handset can be moved. This also allows the operator to know the methods of other objects requested by the program being created.

[発明の効果コ プログラムに対応したアイコンの表示がそのプログラム
の実行の段階に応じて、他の処理対象を表わすアイコン
に関係して変化するので、ユーザはプログラムの実行状
態を直感的に把握することができる。
[Effects of the Invention] The display of the icon corresponding to the co-program changes depending on the stage of execution of the program and in relation to the icons representing other processing targets, so the user can intuitively grasp the execution status of the program. be able to.

またプログラムに対応したアイコンをとくに人物の形に
した場合は、ユーザから見て計算機の中に秘書がいて、
仕事を依頼する感覚でプログラムの実行を指示すること
ができる。
Also, if the icon corresponding to the program is in the shape of a person, the user may see a secretary inside the computer.
You can instruct the execution of a program as if you were requesting a job.

また、一般に計算機人力に用いるアイコンをとくに3次
元化した場合には、より直感的に理解しやすいインター
フェースを実現できる。
Furthermore, if icons that are generally used for computer-based computers are made three-dimensional, an interface that is easier to intuitively understand can be realized.

また、一般の計算機入力時にとくに音声入出力を用いた
場合は簡単に操作できる計算機操作環境を提供できると
In addition, it is possible to provide a computer operating environment that is easy to operate, especially when voice input/output is used for general computer input.

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

第1図は1本発明を実現するシステムの、全体の構成図
である。第2図は第1図の主記憶装置に保持されるプロ
グラム作成用のプログラムの機能ブロックおよびそれに
関連するデータベースを示す。第3A〜3C図は本実施
例で用いるいろいろのオブジェクトインスタンス情輔を
示す図、第4図は、第2図に示した3次元データベース
内の図形データの例を示す図、第S図は、第2図の音声
データベース内の候補音声データの構造と処理に関する
説明図である。第6図は第2図のプログラムによる処理
されるイベントデータの構造および説明図である。第7
図は音声入力処理に関する流れ図である。第8図は、マ
ウスの入力処理に関する流れ図である。第9図は、キー
ボードの入力に関する流れ図である。第10図はコマン
ドのフォーマット図、第11図はコマンド待行列の構造
図、第12図はコマンド待行列スタッフの構造図、第1
3図は、ユーザ入力を解釈する、イベントディスパッチ
処理の流れ図である。第14図から第19図は1.イベ
ントディスパッチ処理が起動する処理に関する流れ図で
ある。第20図と第21図は、プログラムコントロール
処理が起動する、状態記憶処理に関する。流れ図である
。第22図から第24図は、オブジェクトメソッド実行
処理の中でよびだされる。メソッド実行終了処理に関す
る、流れ図である。第25図は第2図のプログラムで用
いる組み込み命令群を示す図である。 第26図から、第3(各図は、具体例を用いた実施例の
説明図であり、デイスプレィ装置上の様子と、主記憶装
置上の主な状態を説明するものである。第32図は、オ
ブジェクトインスタンスの3次元空間内の配置とそれを
投影するビューを説明する図である。第33図から第3
5図は、それぞれ本発明を2次元システムで簡単に実現
する方法を説明する図である。 符号の説明 135−一オブジェクトメソッド実行処理、123−−
3次元形状データベース、124−−オブジェクトライ
ブラリ、122−−コマンド待ち行列スタック、125
−一候補音声データベース、142−一音声認諏処理、
143−一音声イベント発生処理。 染 3△ 川 ネれ助番乙考を装″L  773つ′う躬3C圓 ζむ カメラオフ’、/”xクト1ンスグンス篤+困 ダ51!1 − ゾロ7クムフントロー/L 4弘図 第1.B圀 入カイベントp理 G萱正D ル 8△諺 築 ワ ]1 第 脣 口 ■ /ρ 図 (う主)・尺碌舛( オフ゛シ′°エクト4〉入タンスリスロットル又nf=
L 、帝hコー[ プフ′シ゛17トのメソ−11−″鳥 IIlみ仝二部4ト午ブート ス(J 〕う /ノ ra /2/ 第 LぞL ロフン)4弄り1に’17.;’vフ鵞1+区 オフ列りトハ#tgメ旦工里 策15国 命令入力定理 第23 図 73ノ ア’rJ7−’71− j ン1I7−1し/6J!第 り 図 Jj オフ゛シーシフト 七テパ1ルア゛夕ξ工! 210μm1串本741こ仇規V 第22u 13ぢオフレ1り1メンlド°大KjfiJLK第 図 第 q 第27A図 茅27BTA ノ22 づマント争15行つソス2−/2 第2疫図 $ x’lya図 第30A図 不32図
FIG. 1 is an overall configuration diagram of a system that implements the present invention. FIG. 2 shows functional blocks of a program for program creation held in the main storage device of FIG. 1 and a database related thereto. 3A to 3C are diagrams showing various object instance information used in this embodiment, FIG. 4 is a diagram showing an example of graphic data in the three-dimensional database shown in FIG. 2, and FIG. FIG. 3 is an explanatory diagram regarding the structure and processing of candidate voice data in the voice database of FIG. 2; FIG. 6 is an explanatory diagram of the structure of event data processed by the program of FIG. 2. 7th
The figure is a flowchart regarding voice input processing. FIG. 8 is a flowchart regarding mouse input processing. FIG. 9 is a flowchart regarding keyboard input. Figure 10 is a command format diagram, Figure 11 is a command queue structure diagram, Figure 12 is a command queue staff structure diagram,
FIG. 3 is a flow diagram of an event dispatch process that interprets user input. 14 to 19 are 1. 3 is a flowchart regarding processing initiated by event dispatch processing. FIGS. 20 and 21 relate to the state storage process that is activated by the program control process. This is a flowchart. 22 to 24 are called during object method execution processing. 3 is a flowchart regarding method execution termination processing. FIG. 25 is a diagram showing a group of built-in instructions used in the program of FIG. 2. 26 to 3 (Each figure is an explanatory diagram of an embodiment using a specific example, and explains the state on the display device and the main state on the main storage device. FIG. 32 33 to 3 are diagrams explaining the arrangement of object instances in three-dimensional space and the views that project them.
FIG. 5 is a diagram illustrating a method for easily realizing the present invention in a two-dimensional system. Explanation of symbols 135--One object method execution process, 123--
3D shape database, 124--Object library, 122--Command queue stack, 125
- one candidate speech database, 142- one speech recognition processing,
143-1 Audio event generation processing. Dye 3△ Kawanere Sukeban Otsuko is equipped with "L 773 Tsu'u 3C circle ζmu camera off', /" 1. B field entry event p processing G 萱正D ru 8 △ proverbial construction wa] 1st 辣口■ /ρ fig.
L, Emperor hko [puff's 17th meso-11-''bird IIl second part 4 boots (J] u / no ra / 2/ no. ;'vFu1+kuoff columnToha#tgmethodanfactorystrategy15commandinputtheoremNo.23Figure 73Noah'rJ7-'71-j Seven tapers 1 lure evening ξ work! 210 μm 1 skewer 741 rules V 22u 13 13 offre 1 1 men l de ° large Kjfi JLK q 27A 27 BTA 22 zu cloak fight 15 lines sosu 2- /2 2nd Epidemic Map $ x'lya Figure 30A Figure 32

Claims (1)

【特許請求の範囲】 1、それぞれに施すべき少なくとも一つの処理が定めら
れている、複数の処理対象の一つをそれぞれ表す複数の
アイコン、および作成すべきプログラムに割り当てられ
たアイコンを表示し、該複数の処理対象の少なくとも一
つに対して定められた、少なくとも一つの処理を含む所
望の処理を実行するプログラムを構成するためのコマン
ドの列を入力して該プログラムを作成するプログラム作
成方法において、 該一つの処理の実行を要求する第一のコマンドが入力さ
れた時点の近傍で入力された、あらかじめ定めた一つの
コマンドに応答して、該一つの処理が定められている一
つの処理対象を表す一つのアイコンが識別可能となるよ
うに、該割り当てられたアイコンの表示を変更する、ス
テップを有するプログラム作成方法。 2、該コマンド列の入力は、該割り当てられたアイコン
の表示の変更を求める少なくとも一つの第二のコマンド
を、該第一のコマンドが入力された時点の近傍で入力す
るステップ有し、 該表示変更は、該第二のコマンドの入力に応答して行な
われる第1項のプログラム作成方法。 3、該表示の変更は、該第一のコマンドの入力に応答し
て行なわれる第1項のプログラム作成方法。 4、該表示変更は、該割り当てられたアイコンを該一つ
のアイコンの方向に移動するステップからなる第1項の
プログラム作成方法。 5、該表示変更は、該割り当てられたアイコンを、該一
つのアイコンに関連して変形するステップからなる第1
項のプログラム作成方法。 6、該表示変更は、該一つのアイコンを指し示す矢印を
、該割り当てられたアイコンに付加するステップからな
る第1項のプログラム作成方法。 7、該コマンド列の入力は、該第一のコマンドが入力さ
れた時点の近傍で、該割り当てられたアイコンの表示の
変更を求める少なくとも一つの第二のコマンドを入力す
るステップ有し、 該表示変更は、該第二のコマンドに応答して行なわれる
第4項から第6項のプログラム作成方法。 8、該表示変更は、該第一のコマンドに応答して行なわ
れる第4項から第6項のプログラム作成方法。 9、該割り当てられたアイコンは人物の形状を有する第
1項のプログラム作成方法。 10、該表示変更は、該人物の形状を有するアイコンを
該一つのアイコンの方向に移動するステップからなる第
9項のプログラム作成方法。 11、該表示変更は、該人物の形状を有するアイコンの
移動の状態を動画として表示するステップからなる第1
0項のプログラム作成方法。 12、該表示変更は、該人物が歩くように該人物の形状
を有するアイコンを表示するステップからなる第11項
のプログラム作成方法。 13、該複数のアイコンの各々は、3次元空間内に配置
された、対応する処理対象を表す三次元物体を表示画面
に投影して得られる形状を有し、該割り当てられたアイ
コンは、該3次元空間内に配置された人物を、該表示画
面に投影して得られる形状を有し、 該表示変更は、該人物の形状と位置の少なくとも一方を
該一つのアイコンに関連して変化した後の該人物を該表
示画面に投影して得られる図形を表示するステップから
なる第1項のプログラム作成方法。 14、該コマンド列の入力は、該第一のコマンドが入力
された時点の近傍で、該人物を構成する複数の部分をそ
れぞれ選択的に動かすための複数の第二のコマンドを入
力するステップ有し、該表示変更は、該複数の第二のコ
マンドに応答して、該人物のいずれか一つのを構成する
複数の部分をそれぞれ選択的に動かすステップからなる
第9項から第13項のプログラム作成方法。 15、該表示の変更は、該第一のコマンドに応答して、
該表示の変更を行うステップからなる第9項から第13
項のプログラム作成方法。 16、入力されたコマンドの各々を実行し、結果を操作
者に通知するステップを更に有し、 該表示の変更は、該一つのコマンドの実行に応答して行
われる第1項から第15項のいずれか一つのプログラム
作成方法。 17、該第一のコマンドの実行に応答して、該一つの処
理を実行するためのあらかじめ定めたプログラムを実行
し、 該あらかじめ定めたプログラム内のコマンドに応答して
、該一つのアイコンが他のアイコンから識別可能となる
ように、該一つのアイコンの表示を変更する ステップを更に有する第1項から第16項のいずれか一
つのプログラム作成方法。 18、それぞれに施すべき少なくとも一つの処理が定め
られている、複数の処理対象の一つをそれぞれ表す、複
数のアイコンを表示し、 該複数の処理対象の少なくとも一つに対して定められた
、少なくとも一つの処理を含む所望の処理を実行するプ
ログラムを構成するためのコマンドの列を入力して該プ
ログラムを作成するプログラム作成方法において、 該一つの処理の実行を要求する第一のコマンドの入力に
応答して、該一つの処理が定められている一つの処理対
象を表す一つのアイコンが他のアイコンから識別可能と
なるように、該一つのアイコンの表示を変更する プログラム作成方法。 19、入力されたコマンドの各々を実行し、結果を操作
者に通知し、 該第一コマンドの実行に応答して、該一つの処理を実行
するためのあらかじめ定めたプログラムを実行する ステップを更に有し、 該表示変更は、該あらかじめ定めたプログラム内の一つ
のコマンドの実行に応答して、該一つのアイコンが他の
アイコンから識別可能となるように、該一つのアイコン
の表示を変更するステップからなる第18項のプログラ
ム作成方法。 20、該表示の変更は、該あらかじめ定めたプログラム
内の該一つのコマンドの実行に応答して、該一つのアイ
コンの少なくとも一部の位置を変えるステップからなる
第18項のプログラム作成方法。 21、それぞれに施すべき少なくとも一つの処理が割当
てられている、複数のオブジェクトの一つをそれぞれ表
す複数のアイコン、および作成すべきプログラムが割り
当てられるオブジェクトを表すアイコンを表示し、該複
数のオブジェクトの少なくとも一つに対して定められた
、少なくとも一つのメソッドを含む所望のメソッドを実
行するプログラムを構成するためのコマンドの列を入力
して該プログラムを作成するオブジェクト指向のプログ
ラム作成方法において、該一つのメソッドの実行を要求
する第一のコマンドが入力された時点の近傍で入力され
た、あらかじめ一つのコマンドに応答して、該一つのメ
ソッドが定められている一つのオブジェクトを表す一つ
のアイコンが識別可能となるように、該プログラムに割
り当てられたオブジェクトを表すアイコンの表示を変更
する、ステップを有するプログラム作成方法。 22、該コマンド列の入力は、該プログラムに割り当て
られたオブジェクトを表すアイコンの表示の変更を求め
る少なくとも一つの第二のコマンドを、該第一のコマン
ドが入力された時点の近傍で入力するステップ有し、 該表示の変更は、該第二のコマンドの入力に応答して行
なわれる 第21項のプログラム作成方法。 23、該表示変更は、該第一のコマンドの入力に応答し
て行なわれる第21項のプログラム作成方法。 24、該表示の変更は、該プログラムに割り当てられた
オブジェクトを表すアイコンを該一つのアイコンの方向
に移動するステップからなる第21項のプログラム作成
方法。 25、該表示変更は、該プログラムに割り当てられたオ
ブジェクトを表すアイコンを、該一つのアイコンに関連
して変形するステップからなる第21項のプログラム作
成方法。 26、該表示変更は、該一つのアイコンを指し示す矢印
を、該プログラムに割り当てられたオブジェクトを表す
アイコンに付加するステップからなる第21項のプログ
ラム作成方法。 27、該コマンド列の入力は、該第一のコマンドが入力
された時点の近傍で、該プログラムに割り当てられたオ
ブジェクトを表すアイコンの表示の変更を求める少なく
とも一つの第二のコマンドを入力するステップ有し、 該表示変更は、該第二のコマンドに応答して行なわれる
第24項から第26項のいずれか一つかのプログラム作
成方法。 28、該表示の変更は、該第一のコマンドである第24
項から第26項いずれか一つのプログラム作成方法。 29、該プログラムに割り当てられたオブジェクトを表
すアイコンは人物の形状を有する第21項のプログラム
作成方法。 30、該表示変更は、該人物の形状を有するアイコンを
該一つのアイコンの方向に移動するステップからなる第
29項のプログラム作成方法。 31、該表示変更は、該人物の形状を有するアイコンの
移動の状態を動画として表示するステップからなる第3
0項のプログラム作成方法。 32、該表示変更は、該人物が歩くように該人物の形状
を有するアイコンを表示するステップからなる第31項
のプログラム作成方法。 33、該複数のアイコンの各々は、3次元空間内に配置
された、対応する処理対象を表す三次元物体を表示画面
に投影して得られる形状を有し、該プログラムに割り当
てられたオブジェクトを表すアイコンは、該3次元空間
内に配置された、人物を該表示画面に投影して得られる
形状を有し、 該表示変更は、該人物の形状と位置の少なくとも一方を
該一つのアイコンに関連して変化した後の該人物を該表
示画面に投影して得られる図形を表示するステップから
なる 第31項のプログラム作成方法。 34、該コマンド列の入力は、該第一のコマンドが入力
された時点の近傍で、該人物を構成する複数の部分をそ
れぞれ選択的に動かすための複数の第二のコマンドを入
力するステップ有し、該表示の変更は、該複数の第二の
コマンドに応答して、該人物を構成する複数の部分をそ
れぞれ選択的に動かすステップからなる第29項から第
33項のいずれか一つのプログラム作成方法。 35、該表示変更は、該第一のコマンドに応答して、該
表示の変更を行うステップからなる第29項から第33
項のいずれか一つのプログラム作成方法。 36、入力されたコマンドの各々を実行し、結果を操作
者に通知するステップを更に有し、 該表示変更は、該一つのコマンドの実行に応答して行わ
れる第21項から第35項のいずれか一つのプログラム
作成方法。 37、該第一のコマンドの実行に応答して、該一つのメ
ソッドを実行するためのあらかじめ定めたプログラムを
実行し、 該あらかじめ定めたプログラム内のコマンドに応答して
、該一つのアイコンが他のアイコンから識別可能となる
ように、該一つのアイコンの表示を変更する ステップを更に有する第21項から第36項のいずれか
一つのプログラム作成方法。 38、それぞれに施すべき少なくとも一つのメソッドが
定められている、複数のオブジェクトの一つをそれぞれ
表す、複数のアイコンを表示し、該複数のオブジェクト
の少なくとも一つに対して定められた、少なくとも一つ
の処理を含む所望のメソッドを実行するオブジェクト指
向のプログラムを構成するためのコマンドの列を入力し
て該プログラムを作成するプログラム作成方法において
、 該一つのメソッドの実行を要求する第一のコマンドの入
力に応答して、該一つのメソッドが定められている一つ
のオブジェクトを表す一つのアイコンが他のアイコンか
ら識別可能となるように、該一つのアイコンの表示を変
更するプログラム作成方法。 39、入力されたコマンドの各々を実行し、結果を操作
者に通知し、 該第一のコマンドの実行に応答して、該一つの処理を実
行するためのあらかじめ定めたプログラムを実行する ステップを更に有し、 該表示の変更は、該あらかじめ定めたプログラム内のあ
らかじめ定めた少くとも一つのコマンドの実行に応答し
て、該一つのアイコンが他のアイコンから識別可能とな
るように、該一つのアイコンの表示を変更するステップ
からなる第38項のプログラム作成方法。 40、該表示変更は、該あらかじめ定めたプログラム内
の該一つのコマンドの実行に応答して、該一つのアイコ
ンの少なくとも一部の位置を変えるステップからなる第
18項のプログラム作成方法。 41、それぞれに施すべき少なくとも一つの処理が定め
られている、複数の処理対象の一つをそれぞれ表す複数
のアイコン、および作成すべきプログラムに割り当てら
れたアイコンを表示し、該複数の処理対象の少なくとも
一つに対して定められた、少なくとも一つの処理を含む
所望の処理を実行するプログラムを実行するプログラム
実行方法において、 該プログラムを構成するコマンド列のうち、該一つの処
理の実行を要求する第一のコマンドの近傍にある、あら
かじめ定めた一つのコマンドの実行に応答して、該一つ
の処理が定められている一つの処理対象を表す一つのア
イコンが識別可能となるように、該割り当てられたアイ
コンの表示を変更する、ステップを有するプログラム実
行方法。 42、該コマンド列は、該割り当てられたアイコンの表
示の変更を求める少なくとも一つの第二のコマンドを、
該第一のコマンドの近傍に有し、該表示の変更は、該第
二のコマンドの実行に応答して行なわれる、第41項の
プログラム実行方法。 43、該表示変更は、該第一のコマンドの実行に応答し
て行なわれる第41項のプログラム実行方法。 44、該表示変更は、該割り当てられたアイコンを該一
つのアイコンの方向に移動するステップからなる第41
項のプログラム実行方法。 45、該表示変更は、該割り当てられたアイコンを、該
一つのアイコンに関連して変形するステップからなる第
41項のプログラム実行方法。 46、該表示変更は、該一つのアイコンを指し示す矢印
を、該割り当てられたアイコンに付加するステップから
なる第41項のプログラム実行方法。 47、該コマンド列は、該第一のコマンドの近傍に、該
割り当てられたアイコンの表示の変更を求める少なくと
も一つの第二のコマンドを有し、該表示変更は、該第二
のコマンドの実行に応答して行なわれる第44項から第
46項のいずれか一つのプログラム実行方法。 48、該表示の変更は、該第一のコマンドの実行に応答
して行なわれる第44項から第46項のいずれか一つの
プログラム実行方法。 49、該割り当てられたアイコンは人物の形状を有する
第41項のプログラム実行方法。50、該表示変更は、
該人物の形状を有するアイコンを該一つのアイコンの方
向に移動するステップからなる第49項のプログラム実
行方法。 51、該表示変更は、該人物の形状を有するアイコンの
移動の状態を動画として表示するステップからなる第5
0項のプログラム実行方法。 52、該表示変更は、該人物が歩くように該人物の形状
を有するアイコンを表示するステップからなる第51項
のプログラム実行方法。 53、該複数のアイコンの各々は、3次元空間内に配置
された、対応する処理対象を表す三次元物体を表示画面
に投影して得られる形状を有し、該割り当てられたアイ
コンは、該3次元空間内に配置された、人物を該表示画
面に投影して得られる形状を有し、 該表示変更は、該人物の形状と位置の少なくとも一方を
該一つのアイコンに関連して変化した後の該入物を該表
示画面に投影して得られる図形を表示するステップから
なる第41項のプログラム実行方法。 54、該コマンド列は、該第一のコマンドの近傍に、該
人物を構成する複数の部分をそれぞれ選択的に動かすた
めの複数の第二のコマンドを有し、該表示変更は、該複
数の第二のコマンドの実行に応答して、該人物を構成す
る複数の部分をそれぞれ選択的に動かすステップからな
る第49項から第53項のいずれかプログラム実行方法
。 55、該表示変更は、該第一のコマンドの実行に応答し
て、該表示の変更を行うステップからなる第49項から
第53項のいずれか一つのプログラム実行方法。 56、該第一のコマンドの実行に応答して、該一つの処
理を実行するためのあらかじめ定めたプログラムを実行
し、 該あらかじめ定めたプログラム内のコマンドの実行に応
答して、該一つのアイコンが他のアイコンから識別可能
となるように、該一つのアイコンの表示を変更する ステップを更に有する第51項から第55項のいずれか
一つのプログラム実行方法。 57、それぞれに施すべき少なくとも一つの処理が定め
られている、複数の処理対象の一つをそれぞれ表す、複
数のアイコンを表示し、 該複数の処理対象の少なくとも一つに対して定められた
、少なくとも一つの処理を含む所望の処理を実行するプ
ログラムを実行するプログラム実行方法において、 該一つの処理の実行を要求する第一のコマンド実行に応
答して、該一つの処理が定められている一つの処理対象
を表す一つのアイコンが他のアイコンから識別可能とな
るように、該一つのアイコンの表示を変更する プログラム実行方法。 58、該第一のコマンドの実行に応答して、該一つの処
理を実行するためのあらかじめ定めたプログラムを実行
する ステップを更に有し、 該表示変更は、該あらかじめ定めたプログラム内の一つ
のコマンドの実行に応答して、該一つのアイコンが他の
アイコンから識別可能となるように、該一つのアイコン
の表示を変更するステップからなる第57項のプログラ
ム実行方法。 59、それぞれに施すべき少なくとも一つの処理が割当
てられている、複数のオブジェクトの一つをそれぞれ表
す複数のアイコン、および作成すべきオブジェクト指向
のプログラムが割り当てられるオブジェクトを表すアイ
コンを表示し、該複数の処理対象の少なくとも一つに対
して定められた、少なくとも一つのメソッドを含む所望
のメソッドを実行するオブジェクト指向のプログラムを
実行するプログラム実行方法において、 該プログラムを構成するコマンド列のうち、該一つの処
理の実行を要求する第一のコマンドの近傍にある、あら
かじめ定めた一つのコマンドの実行に応答して、該一つ
のメソッドが割当てられている一つのオブジェクトを表
す一つのアイコンが識別可能となるように、該プログラ
ムに割り当てられたオブジェクトを表すアイコンの表示
を変更する、ステップを有するプログラム実行方法。 60、該コマンド列は、該プログラムに割り当てられた
オブジェクトを表すアイコンの表示の変更を求める少な
くとも一つの第二のコマンドを、該第一のコマンドの近
傍に有し、該表示変更は、該第二のコマンドの実行に応
答して行なわれる、第59項のプログラム実行方法。 61、該表示変更は、該第一のコマンドの実行に応答し
て行なわれる第59項のプログラム作成方法。 62、該表示変更は、該プログラムに割り当てられたオ
ブジェクトを表すアイコンを該一つのアイコンの方向に
移動するステップからなる第59項のプログラム実行方
法。 63、該表示変更は、該プログラムに割り当てられたオ
ブジェクトを表すアイコンを、該一つのアイコンに関連
して変形するステップからなる第59項のプログラム実
行方法。 64、該表示の変更は、該一つのアイコンを指し示す矢
印を、該プログラムに割り当てられたオブジェクトを表
すアイコンに付加するステップからなる第59項のプロ
グラム実行方法。 65、該コマンド列は、該第一のコマンドの近傍に、該
プログラムに割り当てられたオブジェクトを表すアイコ
ンの表示の変更を求める少なくとも一つの第二のコマン
ドを有し、該表示の変更は、該第二のコマンドの実行に
応答して行なわれる第60項から第64項のプログラム
実行方法。 66、該表示変更は、該第一のコマンドの実行に応答し
て行なわれる第60項から第64項のいずれか一つのプ
ログラム実行方法。 67、該プログラムに割り当てられたオブジェクトを表
すアイコンは人物の形状を有する第39項のプログラム
実行方法。 68、該表示変更は、該人物の形状を有するアイコンを
該一つのアイコンの方向に移動するステップからなる第
67項のプログラム実行方法。 69、該表示変更は、該人物の形状を有するアイコンの
移動の状態を動画として表示するステップからなる第6
7項のプログラム実行方法。 70、該表示の変更は、該人物が歩くように該人物の形
状を有するアイコンを表示するステップからなる第69
項のプログラム実行方法。 71、該複数のアイコンの各々は、3次元空間内に配置
された、対応する処理対象を表す三次元物体を表示画面
に投影して得られる形状を有し、該割り当てられたアイ
コンは、該3次元空間内に配置された、人物を該表示画
面に投影して得られる形状を有し、 該表示変更は、該人物の形状と位置の少なくとも一方を
該一つのアイコンに関連して変化した後の該人物を該表
示画面に投影して得られる図形を表示するステップから
なる 第59項のプログラム実行方法。 72、該コマンド列は、該第一のコマンドの近傍に、該
人物を構成する複数の部分をそれぞれ選択的に動かすた
めの複数の第二のコマンドを有し、該表示の変更は、該
複数の第二のコマンドの実行に応答して、該人物を構成
する複数の部分をそれぞれ選択的に動かすステップから
なる第67項から第71項のいずれか一つのプログラム
実行方法。 73、該表示の変更は、該第一のコマンドの実行に応答
して、該表示の変更を行うステップからなる第67項か
ら第71項のいずれか一つのプログラム実行方法。 74、該第一のコマンドの実行に応答して、該一つのメ
ソッドを実行するためのあらかじめ定めたプログラムを
実行し、 該あらかじめ定めたプログラム内のあらかじめ定めたコ
マンドの実行に応答して、該一つのアイコンが他のアイ
コンから識別可能となるように、該一つのアイコンの表
示を変更する ステップを更に有する第59項から第73項のいずれか
一つのプログラム実行方法。 75、それぞれに施すべき少なくとも一つの処理が定め
られている、複数のオブジェクトの一つをそれぞれ表す
、複数のアイコンを表示し、 該複数のオブジェクトの少なくとも一つに対して定めら
れた、少なくとも一つのメソッドを含む所望のメソッド
を実行するオブジェクトプログラムを実行するプログラ
ム実行方法において、 該一つのメソッドの実行を要求する第一のコマンド実行
に応答して、該一つのメソッドが定められている一つの
オブジェクトを表す一つのアイコンが他のアイコンから
識別可能となるように、該一つのアイコンの表示を変更
する プログラム実行方法。 76、該第一のコマンドの実行に応答して、該一つの処
理を実行するためのあらかじめ定めたプログラムを実行
する ステップを更に有し、 該表示変更は、該あらかじめ定めたプログラム内の一つ
のコマンドの実行に応答して、該一つのアイコンが他の
アイコンから識別可能となるように、該一つのアイコン
の表示を変更するステップからなる第75項のプログラ
ム実行方法。 77、それぞれプログラムの処理の対象を表すものとし
て計算機へ入力するために、操作者により選択させる複
数のアイコンを表示装置に表示する方法において、 3次元空間内に配置された、複数の三次元物体を第一の
視点から見たときに見える図形を、二次元平面に投影し
、 投影により得られた複数の図形のそれぞれを、該複数の
アイコンの一つとして表示する アイコン表示方法。 78、該複数の三次元物体の一つは人物の形状を有する
第77項のアイコン表示方法。 79、該複数の三次元物体を見る視点を第二の視点に変
化し、 該第二の視点から見たときの、該複数の三次元物体の図
形を二次元平面に投影し、 得られた新たな複数の図形のそれぞれを、該複数のアイ
コンの新たな図形として表示する第77項のアイコン表
示方法。 80、該視点の変化を実質的に連続して行う第79項の
アイコン表示方法。 81、該複数の三次元物体の内、該第一の視点から見え
ないある部分が見えるように、該、第二の視点を選択す
る第79項のアイコン表示方法。 82、操作者が指示する点に、視点を変化する第79項
のアイコン表示方法。 83、該複数のアイコンは、プログラムを作成するため
にもちいられるアイコンである第77項から第82項の
いずれか一つのアイコン表示方法。 84、処理内容を表わす第1の部分と処理対象あるいは
引数を表わす少くとも一つの第2の部分からなるコマン
ドを音声によって入力する場合、入力音声の種類が該第
1、第2の部分のいずれであるかを判断し、該第2の部
分であるならこれを入力すべきコマンドの一部として記
憶し、第1の部分であるならすでに記憶された第2の部
分に該第1の部分を組み合わせ、該入力すべきコマンド
の入力が完了したものとして利用することを特徴とする
、音声によるコマンド入力方法。  85、計算機内で表現される3次元形状が、部品に分解
されて、部品が階層的に構成されている場合、 それぞれの部品に移動可能属性と回転可能属性を与えて
おき、 これを移動または回転させる場合に、移動可能属性また
は回転可能属性を調べてこれが可能になっている場合に
のみ、移動または回転を許すことを特徴とする3次元形
状操作方法。
[Claims] 1. Displaying a plurality of icons each representing one of a plurality of processing targets, each of which has at least one process to be performed, and an icon assigned to a program to be created; In a program creation method, the program is created by inputting a sequence of commands for configuring a program that executes a desired process including at least one process determined for at least one of the plurality of processing targets. , one process target for which the one process is determined in response to one predetermined command that is input near the time when the first command requesting execution of the one process is input. A program creation method comprising the steps of changing the display of the assigned icon so that the one icon representing the icon can be identified. 2. Inputting the command string includes the step of inputting at least one second command that requests a change in the display of the assigned icon near the time when the first command is input; The method for creating a program according to item 1, wherein the change is made in response to input of the second command. 3. The method for creating a program according to item 1, wherein the display change is performed in response to input of the first command. 4. The program creation method according to item 1, wherein the display change comprises the step of moving the assigned icon in the direction of the one icon. 5. The display modification includes a first step of transforming the assigned icon in relation to the one icon.
How to create a program in section. 6. The program creation method according to item 1, wherein the display change comprises the step of adding an arrow pointing to the one icon to the assigned icon. 7. Inputting the command sequence includes the step of inputting at least one second command that requests a change in the display of the assigned icon near the time when the first command is input; The method for creating a program according to items 4 to 6, wherein the change is made in response to the second command. 8. The method for creating a program according to items 4 to 6, wherein the display change is performed in response to the first command. 9. The method for creating a program according to item 1, wherein the assigned icon has the shape of a person. 10. The program creation method according to item 9, wherein the display change comprises the step of moving the icon having the shape of the person in the direction of the one icon. 11. The display change includes a first step of displaying the state of movement of the icon having the shape of the person as a moving image.
How to create a program for item 0. 12. The program creation method according to item 11, wherein the display change comprises the step of displaying an icon having the shape of the person so that the person walks. 13. Each of the plurality of icons has a shape obtained by projecting a three-dimensional object representing the corresponding processing object arranged in three-dimensional space onto the display screen, and the assigned icon It has a shape obtained by projecting a person placed in a three-dimensional space onto the display screen, and the display change involves changing at least one of the shape and position of the person in relation to the one icon. 1. The method for creating a program according to item 1, further comprising the step of displaying a figure obtained by projecting the person onto the display screen. 14. Inputting the command sequence includes a step of inputting a plurality of second commands for selectively moving a plurality of parts constituting the person in the vicinity of the time point at which the first command is input. and the display change comprises the step of selectively moving a plurality of parts constituting any one of the persons in response to the plurality of second commands. How to make. 15. The display change is performed in response to the first command,
Items 9 to 13 consisting of the step of changing the display.
How to create a program in section. 16. The method further comprises the step of executing each of the input commands and notifying the operator of the results, and the display change is performed in response to execution of the one command. One of the following program creation methods. 17. In response to execution of the first command, execute a predetermined program for executing the one process, and in response to a command in the predetermined program, the one icon changes to another. 17. The program creation method according to any one of paragraphs 1 to 16, further comprising the step of changing the display of the one icon so that the icon can be identified from the icon. 18. Displaying a plurality of icons each representing one of a plurality of processing targets, each of which has at least one process determined for the plurality of processing targets; In a program creation method that creates a program by inputting a sequence of commands to configure a program that executes a desired process including at least one process, inputting a first command requesting execution of the one process. A program creation method for changing the display of one icon so that the one icon representing one processing target for which the one processing is determined can be identified from other icons in response to the above. 19. Further steps of executing each of the input commands, notifying the operator of the results, and executing a predetermined program for executing the one process in response to the execution of the first command. and the display change changes the display of the one icon so that the one icon is distinguishable from other icons in response to execution of one command in the predetermined program. 18. The method for creating a program consisting of steps. 20. The method for creating a program according to item 18, wherein the display change comprises the step of changing the position of at least a portion of the one icon in response to execution of the one command in the predetermined program. 21. Displaying a plurality of icons each representing one of a plurality of objects to which at least one process to be performed is assigned, and an icon representing an object to which a program to be created is assigned; In an object-oriented program creation method, the program is created by inputting a sequence of commands for configuring a program that executes a desired method including at least one method defined for at least one method. In response to one command input in advance near the time when the first command requesting the execution of one method was input, one icon representing one object for which one method is defined is displayed. A method for creating a program comprising the steps of changing the display of an icon representing an object assigned to the program so that the object can be identified. 22. Inputting the command string is a step of inputting at least one second command that requests a change in the display of an icon representing an object assigned to the program near the time when the first command is input. 22. The program creation method according to claim 21, wherein the display is changed in response to input of the second command. 23. The program creation method according to item 21, wherein the display change is performed in response to input of the first command. 24. The program creation method according to item 21, wherein the display change comprises the step of moving an icon representing an object assigned to the program in the direction of the one icon. 25. The program creation method according to item 21, wherein the display change comprises the step of transforming an icon representing an object assigned to the program in relation to the one icon. 26. The program creation method according to item 21, wherein said display change comprises the step of adding an arrow pointing to said one icon to an icon representing an object assigned to said program. 27. The input of the command sequence is a step of inputting at least one second command that requests a change in the display of an icon representing an object assigned to the program near the time when the first command is input. The method for creating a program according to any one of paragraphs 24 to 26, wherein the display change is performed in response to the second command. 28. The display change is performed using the 24th command, which is the first command.
A method for creating a program according to any one of paragraphs 26 to 26. 29. The method for creating a program according to item 21, wherein the icon representing the object assigned to the program has the shape of a person. 30. The program creation method according to item 29, wherein the display change comprises the step of moving the icon having the shape of the person in the direction of the one icon. 31. The display change includes a third step of displaying the state of movement of the icon having the shape of the person as a moving image.
How to create a program for item 0. 32. The method for creating a program according to item 31, wherein the display change comprises the step of displaying an icon having the shape of the person so that the person walks. 33. Each of the plurality of icons has a shape obtained by projecting a three-dimensional object placed in a three-dimensional space and representing a corresponding processing target onto the display screen, and each icon has a shape obtained by projecting a three-dimensional object representing the corresponding processing target placed in a three-dimensional space, and has an object assigned to the program. The represented icon has a shape obtained by projecting a person placed in the three-dimensional space onto the display screen, and the display change involves changing at least one of the shape and position of the person to the one icon. 32. The method for creating a program according to item 31, comprising the step of displaying a graphic obtained by projecting the person after the relevant change onto the display screen. 34. Inputting the command sequence includes a step of inputting a plurality of second commands for selectively moving each of the plurality of parts constituting the person in the vicinity of the time point at which the first command is input. and the change of the display is performed by the program according to any one of paragraphs 29 to 33, which comprises the step of selectively moving a plurality of parts constituting the person in response to the plurality of second commands. How to make. 35. The display change comprises the step of changing the display in response to the first command.
How to create a program in any one of the sections. 36, further comprising the step of executing each of the input commands and notifying the operator of the results, wherein the display change is performed in response to the execution of the one command according to paragraphs 21 to 35. One of the program creation methods. 37. In response to execution of the first command, execute a predetermined program for executing the one method, and in response to a command within the predetermined program, the one icon changes to another. 37. The program creation method according to any one of paragraphs 21 to 36, further comprising the step of changing the display of the one icon so that the icon can be identified from the icon. 38. Displaying a plurality of icons each representing one of a plurality of objects, each of which has at least one method defined for each object, and at least one method defined for at least one of the plurality of objects. In a program creation method in which a program is created by inputting a sequence of commands to configure an object-oriented program that executes a desired method including two processes, the first command that requests execution of the one method is A program creation method for changing the display of one icon representing one object for which one method is defined in response to an input so that the one icon is distinguishable from other icons. 39, executing each of the input commands, notifying the operator of the results, and executing a predetermined program for executing the one process in response to the execution of the first command; further comprising: changing the display so that the one icon is distinguishable from other icons in response to execution of at least one predetermined command within the predetermined program; 39. The method for creating a program according to item 38, comprising the step of changing the display of two icons. 40. The program creation method according to item 18, wherein the display change comprises the step of changing the position of at least a portion of the one icon in response to execution of the one command in the predetermined program. 41. Display a plurality of icons each representing one of a plurality of processing targets, each of which has at least one process to be performed, and an icon assigned to a program to be created, In a program execution method for executing a program that executes a desired process including at least one process defined for at least one process, the method includes: requesting execution of the one process among the command strings forming the program; The assignment is made such that in response to execution of one predetermined command in the vicinity of the first command, one icon representing one processing target for which one processing is determined can be identified. A program execution method comprising the steps of changing the display of an icon. 42, the command string includes at least one second command that requests a change in the display of the assigned icon;
42. The program execution method according to item 41, wherein the program execution method is provided near the first command, and the display is changed in response to execution of the second command. 43. The program execution method according to item 41, wherein the display change is performed in response to execution of the first command. 44. The display change comprises the step of moving the assigned icon in the direction of the one icon.
How to run the program in section. 45. The program execution method according to item 41, wherein the display change comprises the step of transforming the assigned icon in relation to the one icon. 46. The program execution method according to item 41, wherein the display change comprises the step of adding an arrow pointing to the one icon to the assigned icon. 47. The command string has at least one second command near the first command that requests a change in the display of the assigned icon, and the display change is performed by executing the second command. The program execution method according to any one of paragraphs 44 to 46, which is carried out in response to. 48. The program execution method according to any one of items 44 to 46, wherein the display change is performed in response to execution of the first command. 49. The program execution method according to item 41, wherein the assigned icon has the shape of a person. 50. The display change is
49. The program execution method according to item 49, comprising the step of moving the icon having the shape of the person in the direction of the one icon. 51. The display change includes a fifth step of displaying the state of movement of the icon having the shape of the person as a moving image.
How to run the program in item 0. 52. The program execution method according to item 51, wherein the display change comprises the step of displaying an icon having the shape of the person so that the person walks. 53. Each of the plurality of icons has a shape obtained by projecting a three-dimensional object placed in a three-dimensional space and representing the corresponding processing target onto the display screen, and the assigned icon A person placed in a three-dimensional space has a shape obtained by projecting the person onto the display screen, and the display change includes changing at least one of the shape and position of the person in relation to the one icon. 42. The program execution method according to item 41, comprising the step of displaying a figure obtained by projecting the container onto the display screen. 54, the command string has a plurality of second commands for selectively moving each of the plurality of parts constituting the person in the vicinity of the first command, and the display change is performed by the plurality of parts constituting the person. 53. The program execution method according to any one of items 49 to 53, which comprises the step of selectively moving a plurality of parts constituting the person in response to execution of the second command. 55. The program execution method according to any one of items 49 to 53, wherein the display change comprises the step of changing the display in response to execution of the first command. 56. In response to the execution of the first command, execute a predetermined program for executing the one process, and in response to the execution of the command in the predetermined program, display the one icon. 56. The program execution method according to any one of paragraphs 51 to 55, further comprising the step of changing the display of the one icon so that the icon is distinguishable from other icons. 57. Displaying a plurality of icons each representing one of a plurality of processing targets, each of which has at least one process determined for the plurality of processing targets; In a program execution method for executing a program that executes a desired process including at least one process, in response to execution of a first command requesting execution of the one process, the one process for which the one process is specified is executed. A program execution method for changing the display of one icon so that the icon representing one processing object can be identified from other icons. 58, further comprising the step of executing a predetermined program for executing the one process in response to execution of the first command, and the display change is performed by executing one of the predetermined programs in the predetermined program. 58. The program execution method according to item 57, comprising the step of changing the display of the one icon so that the one icon is distinguishable from other icons in response to execution of the command. 59, displaying a plurality of icons each representing one of a plurality of objects to which at least one process to be performed is assigned, and an icon representing an object to which an object-oriented program to be created is assigned; A program execution method for executing an object-oriented program that executes a desired method including at least one method defined for at least one processing target, the method comprising: In response to the execution of one predetermined command near the first command that requests the execution of one process, one icon representing one object to which one method is assigned can be identified. A program execution method comprising the steps of changing the display of an icon representing an object assigned to the program so that the object is assigned to the program. 60, the command sequence has at least one second command near the first command that requests a change in the display of an icon representing an object assigned to the program, and the display change is performed by the first command; 59. The program execution method according to item 59, which is carried out in response to execution of the second command. 61. The program creation method according to item 59, wherein the display change is performed in response to execution of the first command. 62. The program execution method according to item 59, wherein the display change comprises the step of moving an icon representing an object assigned to the program in the direction of the one icon. 63. The program execution method according to item 59, wherein the display change comprises the step of transforming an icon representing an object assigned to the program in relation to the one icon. 64. The method of executing a program according to item 59, wherein said changing of the display comprises the step of adding an arrow pointing to said one icon to an icon representing an object assigned to said program. 65, the command sequence has at least one second command near the first command that requests a change in the display of an icon representing an object assigned to the program, and the change in the display includes 64. The program execution method according to paragraphs 60 to 64, which is carried out in response to execution of a second command. 66. The program execution method according to any one of items 60 to 64, wherein the display change is performed in response to execution of the first command. 67. The program execution method according to item 39, wherein the icon representing the object assigned to the program has the shape of a person. 68. The program execution method according to item 67, wherein the display change comprises the step of moving the icon having the shape of the person in the direction of the one icon. 69. The display change includes the step of displaying the state of movement of the icon having the shape of the person as a moving image.
How to run the program in Section 7. 70. Changing the display comprises the step of displaying an icon having the shape of the person so that the person walks
How to run the program in section. 71. Each of the plurality of icons has a shape obtained by projecting a three-dimensional object placed in a three-dimensional space and representing the corresponding processing target onto the display screen, and the assigned icon It has a shape obtained by projecting a person placed in a three-dimensional space onto the display screen, and the display change involves changing at least one of the shape and position of the person in relation to the one icon. 59. The program execution method according to item 59, comprising the step of displaying a figure obtained by projecting the person on the display screen. 72, the command string has a plurality of second commands for selectively moving each of the plurality of parts constituting the person in the vicinity of the first command, and the display change is performed by the plurality of parts. 72. The program execution method according to any one of items 67 to 71, comprising the step of selectively moving a plurality of parts constituting the person in response to execution of the second command. 73. The program execution method according to any one of items 67 to 71, wherein changing the display comprises changing the display in response to execution of the first command. 74. In response to execution of the first command, execute a predetermined program for executing the one method; and in response to execution of a predetermined command within the predetermined program, 74. The program execution method according to any one of paragraphs 59 to 73, further comprising the step of changing the display of one icon so that the one icon is distinguishable from other icons. 75, displaying a plurality of icons, each representing one of a plurality of objects, for which at least one process to be performed is determined; In a program execution method for executing an object program that executes a desired method including two methods, in response to execution of a first command requesting execution of the one method, one method for which the one method is defined is executed. A program execution method for changing the display of one icon representing an object so that the icon can be identified from other icons. 76, further comprising the step of executing a predetermined program for executing the one process in response to execution of the first command, and the display change is performed by executing a predetermined program in the predetermined program. 76. The program execution method according to item 75, comprising the step of changing the display of the one icon so that the one icon is distinguishable from other icons in response to execution of the command. 77. In a method for displaying a plurality of icons on a display device for selection by an operator, each of which is input to a computer as representing an object to be processed by a program, a plurality of three-dimensional objects arranged in a three-dimensional space. An icon display method that projects a figure visible when viewed from a first viewpoint onto a two-dimensional plane, and displays each of a plurality of figures obtained by the projection as one of the plurality of icons. 78. The icon display method according to item 77, wherein one of the plurality of three-dimensional objects has the shape of a person. 79. Change the viewpoint from which the plurality of three-dimensional objects are viewed to a second viewpoint, project the figures of the plurality of three-dimensional objects as seen from the second viewpoint onto a two-dimensional plane, and obtain the following: 78. The icon display method according to item 77, wherein each of the new plurality of figures is displayed as a new figure of the plurality of icons. 80. The icon display method according to item 79, wherein the viewpoint is changed substantially continuously. 81. The icon display method according to item 79, wherein the second viewpoint is selected so that a certain part of the plurality of three-dimensional objects that cannot be seen from the first viewpoint is visible. 82. The icon display method according to item 79, in which the viewpoint is changed to a point specified by the operator. 83. The icon display method according to any one of items 77 to 82, wherein the plurality of icons are icons used for creating a program. 84. When inputting a command consisting of a first part representing the processing content and at least one second part representing the processing target or argument by voice, the type of the input voice is either the first part or the second part. If it is the second part, it is stored as part of the command to be input, and if it is the first part, the first part is added to the already stored second part. A method for inputting commands by voice, characterized in that the commands are combined and used as if the input of the commands to be inputted has been completed. 85. When a three-dimensional shape expressed in a computer is decomposed into parts and the parts are structured hierarchically, each part is given a movable attribute and a rotatable attribute, and this can be moved or rotated. A method for manipulating a three-dimensional shape, which allows the movement or rotation only when a movable attribute or a rotatable attribute is checked and the rotation is possible.
JP2110014A 1989-09-29 1990-04-27 Program production method Pending JPH0410030A (en)

Priority Applications (7)

Application Number Priority Date Filing Date Title
JP2110014A JPH0410030A (en) 1990-04-27 1990-04-27 Program production method
US07/589,405 US5566294A (en) 1989-09-29 1990-09-28 Method for visual programming with aid of animation
US08/659,805 US5774122A (en) 1989-09-29 1996-06-07 Method for visual programming with aid of animation
US09/015,070 US6005576A (en) 1989-09-29 1998-01-28 Method for visual programming with aid of animation
US09/405,214 US6334211B1 (en) 1989-09-29 1999-09-27 Method for visual programming with aid of animation
JP2000048906A JP3366313B2 (en) 1990-04-24 2000-02-21 Program operation status display method and system
US09/998,793 US6606741B2 (en) 1989-09-29 2001-12-03 Method for visual programming with aid of animation

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2110014A JPH0410030A (en) 1990-04-27 1990-04-27 Program production method

Related Child Applications (2)

Application Number Title Priority Date Filing Date
JP2000048906A Division JP3366313B2 (en) 1990-04-24 2000-02-21 Program operation status display method and system
JP2000048907A Division JP2000200188A (en) 2000-01-01 2000-02-21 Operating program condition display method and device

Publications (1)

Publication Number Publication Date
JPH0410030A true JPH0410030A (en) 1992-01-14

Family

ID=14524938

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2110014A Pending JPH0410030A (en) 1989-09-29 1990-04-27 Program production method

Country Status (1)

Country Link
JP (1) JPH0410030A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003022092A (en) * 2001-07-09 2003-01-24 Fujitsu Ten Ltd Dialog system
WO2019163728A1 (en) 2018-02-23 2019-08-29 株式会社トクヤマ Functional multilayer body and functional lens using functional multilayer body

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003022092A (en) * 2001-07-09 2003-01-24 Fujitsu Ten Ltd Dialog system
WO2019163728A1 (en) 2018-02-23 2019-08-29 株式会社トクヤマ Functional multilayer body and functional lens using functional multilayer body
KR20200124667A (en) 2018-02-23 2020-11-03 가부시끼가이샤 도꾸야마 Functional laminate and functional lens using functional laminate

Similar Documents

Publication Publication Date Title
US6606741B2 (en) Method for visual programming with aid of animation
US5774122A (en) Method for visual programming with aid of animation
Shaw et al. The decoupled simulation model for virtual reality systems
US10235412B2 (en) Detecting, representing, and interpreting three-space input: gestural continuum subsuming freespace, proximal, and surface-contact modes
EP0664026B1 (en) Object oriented notification framework system
Billinghurst et al. Advanced interaction techniques for augmented reality applications
König et al. Interactive design of multimodal user interfaces: reducing technical and visual complexity
CN110889161B (en) Three-dimensional display system and method for sound control building information model
CN111191322B (en) Virtual maintainability simulation method based on depth perception gesture recognition
WO2010129599A1 (en) Gesture-based control systems including the representation, manipulation, and exchange of data
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
CN115661412A (en) Aero-engine auxiliary assembly system and method based on mixed reality
JP3322264B2 (en) Icon display method and system
JPH0410030A (en) Program production method
JPH09190549A (en) Interactive video presenting device
JP3366313B2 (en) Program operation status display method and system
CN113172622B (en) ROS-based mechanical arm grabbing and assembling management method, system and related equipment
CN114035677A (en) Universal interface implementation method for interaction between both hands and virtual glove peripherals
JP2000200188A (en) Operating program condition display method and device
Broll et al. Interactive bits: Prototyping of mixed reality applications and interaction techniques through visual programming
KR20010011272A (en) Object-oriented robot programming system and method
JP2003162431A (en) Method and system for icon display
JPH0782473B2 (en) User interface management device and method
Remy et al. An object oriented approach to finite element programming (Phase I): a system independent windowing environment for developing interactive scientific programs
JP2001229398A (en) Method and device for acquiring performance animation gesture and reproducing the same on animation character