JPH096981A - 図面作成編集装置 - Google Patents
図面作成編集装置Info
- Publication number
- JPH096981A JPH096981A JP7157410A JP15741095A JPH096981A JP H096981 A JPH096981 A JP H096981A JP 7157410 A JP7157410 A JP 7157410A JP 15741095 A JP15741095 A JP 15741095A JP H096981 A JPH096981 A JP H096981A
- Authority
- JP
- Japan
- Prior art keywords
- history
- data
- processing
- address
- history data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
- 238000000034 method Methods 0.000 claims description 75
- 238000009825 accumulation Methods 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 33
- 101000709462 Escherichia coli (strain K12) Alpha-D-glucose 1-phosphate phosphatase YihX Proteins 0.000 description 8
- 101100506205 Cryptococcus neoformans var. grubii serotype A (strain H99 / ATCC 208821 / CBS 10515 / FGSC 9487) HAD1 gene Proteins 0.000 description 7
- 101100450262 Homo sapiens HADH gene Proteins 0.000 description 7
- 102100030358 Hydroxyacyl-coenzyme A dehydrogenase, mitochondrial Human genes 0.000 description 7
- 101100161201 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) BNA1 gene Proteins 0.000 description 7
- 101000604411 Homo sapiens NADH-ubiquinone oxidoreductase chain 1 Proteins 0.000 description 4
- 102100038625 NADH-ubiquinone oxidoreductase chain 1 Human genes 0.000 description 4
- 101150112582 dad2 gene Proteins 0.000 description 4
- 101000632748 Homo sapiens NADH-ubiquinone oxidoreductase chain 2 Proteins 0.000 description 3
- 102100028488 NADH-ubiquinone oxidoreductase chain 2 Human genes 0.000 description 3
- 101150057677 DAD3 gene Proteins 0.000 description 2
- 102100039104 Dolichyl-diphosphooligosaccharide-protein glycosyltransferase subunit DAD1 Human genes 0.000 description 2
- 101000884921 Homo sapiens Dolichyl-diphosphooligosaccharide-protein glycosyltransferase subunit DAD1 Proteins 0.000 description 2
- 101150117955 dad4 gene Proteins 0.000 description 2
- 230000001174 ascending effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 239000013598 vector Substances 0.000 description 1
Landscapes
- Processing Or Creating Images (AREA)
Abstract
(57)【要約】
【目的】 作図・編集処理を取消して書き直した状態で
も作図・編集処理の取消し前の状態のような任意の状態
に復元可能とする。 【構成】 CAD処理装置2において、入力制御部4は
入力装置1から入力された命令の内容を解析し、作成・
編集処理部5は入力制御部4で解析した命令の実行を行
う。履歴制御部7は入力制御部4で解析された命令や座
標等のデータを履歴記憶部8に記憶させる。入力装置1
からアンドウ命令やリドウ命令が入力されると、入力制
御部4はそれらアンドウ命令やリドウ命令を履歴制御部
7に送る。このとき、作成・編集処理部5は履歴記憶部
8に記憶された情報を基に履歴の実行あるいは取消しを
行う。作成・編集処理部5で処理された結果は表示制御
部6の制御によって表示装置3に表示される。
も作図・編集処理の取消し前の状態のような任意の状態
に復元可能とする。 【構成】 CAD処理装置2において、入力制御部4は
入力装置1から入力された命令の内容を解析し、作成・
編集処理部5は入力制御部4で解析した命令の実行を行
う。履歴制御部7は入力制御部4で解析された命令や座
標等のデータを履歴記憶部8に記憶させる。入力装置1
からアンドウ命令やリドウ命令が入力されると、入力制
御部4はそれらアンドウ命令やリドウ命令を履歴制御部
7に送る。このとき、作成・編集処理部5は履歴記憶部
8に記憶された情報を基に履歴の実行あるいは取消しを
行う。作成・編集処理部5で処理された結果は表示制御
部6の制御によって表示装置3に表示される。
Description
【0001】
【産業上の利用分野】本発明は図面作成編集装置に関
し、特に回路図や波形図等の図面の作成処理及び編集処
理を行うためのCAD(Computer Aided
Design)システムに関する。
し、特に回路図や波形図等の図面の作成処理及び編集処
理を行うためのCAD(Computer Aided
Design)システムに関する。
【0002】
【従来の技術】従来、この種のCADシステムにおいて
は、複数のオペレーションを実行した後に任意のオペレ
ーションに遡ってデータを復元するため、CAD処理部
の作図・編集処理部で作成または編集された図形要素デ
ータ等を蓄積する要素データベースを備えている。
は、複数のオペレーションを実行した後に任意のオペレ
ーションに遡ってデータを復元するため、CAD処理部
の作図・編集処理部で作成または編集された図形要素デ
ータ等を蓄積する要素データベースを備えている。
【0003】この場合、CAD処理部の作図・編集処理
部では入力装置から入力されたコマンドを解釈し、その
結果を基に図形要素データや付加情報等を作成または編
集する。
部では入力装置から入力されたコマンドを解釈し、その
結果を基に図形要素データや付加情報等を作成または編
集する。
【0004】この作成または編集された図形要素データ
や付加情報等は表示制御部から表示装置に送出されて表
示されるとともに、図面出力制御部からプロッタ等の図
面出力装置に出力されて印刷される。
や付加情報等は表示制御部から表示装置に送出されて表
示されるとともに、図面出力制御部からプロッタ等の図
面出力装置に出力されて印刷される。
【0005】また、作図・編集処理部で作成または編集
された図形要素データや付加情報等は、書込み読出し制
御部によって要素データベースに書込まれる。尚、書込
み読出し制御部は要素データベースからの図形要素デー
タや付加情報等の読出しも制御する。
された図形要素データや付加情報等は、書込み読出し制
御部によって要素データベースに書込まれる。尚、書込
み読出し制御部は要素データベースからの図形要素デー
タや付加情報等の読出しも制御する。
【0006】上記の要素データベースは、図13に示す
ように、エントノードA1と、セグメントA2と、ポイ
ントデータベースA3と、アンドウスタックA4と、リ
ドウスタックA5とから構成されている。
ように、エントノードA1と、セグメントA2と、ポイ
ントデータベースA3と、アンドウスタックA4と、リ
ドウスタックA5とから構成されている。
【0007】エントノードA1は要素番号「1」,
「2」,「3」,「4」,……、セグメントA2へのア
ドレス「AD1」,「AD2」,「AD3」,「AD
4」,……、要素データ「Line」,「Circl
e」等を格納する。
「2」,「3」,「4」,……、セグメントA2へのア
ドレス「AD1」,「AD2」,「AD3」,「AD
4」,……、要素データ「Line」,「Circl
e」等を格納する。
【0008】セグメントA2は直線の端点「P1(始
点)」,「P2(終点)」,「P3」,「P4」や円の
各点「P5(中心)」,「P4(始点)」,「P6(終
点)」,「V1(長径)」,「V2(短径)」、及びベ
クトル等のデータのインデックスを格納する。
点)」,「P2(終点)」,「P3」,「P4」や円の
各点「P5(中心)」,「P4(始点)」,「P6(終
点)」,「V1(長径)」,「V2(短径)」、及びベ
クトル等のデータのインデックスを格納する。
【0009】ポイントデータベースA3はセグメントイ
ンデックスによって指し示される座標値「X1,Y
1」,「X2,Y2」,「X3,Y3」,「X4,Y
4」,「X5,Y5」,「X6,Y6」,「X7,Y
7」,「X8,Y8」,……を格納する。
ンデックスによって指し示される座標値「X1,Y
1」,「X2,Y2」,「X3,Y3」,「X4,Y
4」,「X5,Y5」,「X6,Y6」,「X7,Y
7」,「X8,Y8」,……を格納する。
【0010】アンドウスタックA4は実行されたオペレ
ーションを取消してそのオペレーションの実行前のデー
タを復元するアンドウ(UNDO)時にエントノードA
1に復帰させるためのエントノードA1の所定情報「N
o.」,「AD」,「TYP」をスタックする。尚、ア
ンドウスタックA4はチェイン状に格納されるアンドウ
ノードへのポインタも格納し、マルチオペレーションに
対応している。
ーションを取消してそのオペレーションの実行前のデー
タを復元するアンドウ(UNDO)時にエントノードA
1に復帰させるためのエントノードA1の所定情報「N
o.」,「AD」,「TYP」をスタックする。尚、ア
ンドウスタックA4はチェイン状に格納されるアンドウ
ノードへのポインタも格納し、マルチオペレーションに
対応している。
【0011】リドウスタックA5はアンドウを実行する
前のデータを復元するリドウ(REDO)時にエントノ
ードA1に復帰させるためのエントノードA1の所定情
報「No.」,「AD」,「TYP」をスタックする。
前のデータを復元するリドウ(REDO)時にエントノ
ードA1に復帰させるためのエントノードA1の所定情
報「No.」,「AD」,「TYP」をスタックする。
【0012】上述したCADシステムではオペレーショ
ンを1〜数回実行した後に、アンドウ操作を1〜数回行
えるようになっており、またアンドウ操作を行っていな
い状態に戻すことが可能なリドウ操作も可能となってい
る。
ンを1〜数回実行した後に、アンドウ操作を1〜数回行
えるようになっており、またアンドウ操作を行っていな
い状態に戻すことが可能なリドウ操作も可能となってい
る。
【0013】エントノードA1は図形を形作る要素デー
タの集合が順に並んで格納されるデータ領域であり、オ
ペレーションが実行されるとエントノードA1のデータ
はアンドウスタックA4に退避され、エントノードA1
にはオペレーションの実行によって生成された要素デー
タが格納される。この動作はオペレーションが実行され
る毎に繰返し行われる。
タの集合が順に並んで格納されるデータ領域であり、オ
ペレーションが実行されるとエントノードA1のデータ
はアンドウスタックA4に退避され、エントノードA1
にはオペレーションの実行によって生成された要素デー
タが格納される。この動作はオペレーションが実行され
る毎に繰返し行われる。
【0014】このオペレーションを2回実行した後にア
ンドウ操作を1回行った状態を図14に示す。この場
合、オペレーションを実行する前には何も入っていない
ことを示す“NULL”コードがエントノードA1に入
っている。
ンドウ操作を1回行った状態を図14に示す。この場
合、オペレーションを実行する前には何も入っていない
ことを示す“NULL”コードがエントノードA1に入
っている。
【0015】線を引くオペレーションが行われると、エ
ントノードA1には「Line」という要素タイプと、
セグメントA2へのアドレス「AD1」を含んだ要素と
が書込まれ、アンドウスタックA4にはエントノードA
1に入っていた“NULL”コードがスタックされる。
ントノードA1には「Line」という要素タイプと、
セグメントA2へのアドレス「AD1」を含んだ要素と
が書込まれ、アンドウスタックA4にはエントノードA
1に入っていた“NULL”コードがスタックされる。
【0016】線を引くオペレーションが2回行われる
と、エントノードA1には「Line」を含んだ要素2
つが書込まれる。これは図面に2本の直線があることを
示す。アンドウスタックA4にはエントノードA1に入
っていた“NULL”コードが要素2つ分スタックされ
る。
と、エントノードA1には「Line」を含んだ要素2
つが書込まれる。これは図面に2本の直線があることを
示す。アンドウスタックA4にはエントノードA1に入
っていた“NULL”コードが要素2つ分スタックされ
る。
【0017】入力装置からアンドウ命令が入力される
と、エントノードA1の最後尾に格納されていたデータ
(「2」,「AD2」,Line)をリドウスタックA
5に退避し、アンドウスタックA4に退避してあったデ
ータ(“NULL”コード)をエントノードA1に復帰
させる。
と、エントノードA1の最後尾に格納されていたデータ
(「2」,「AD2」,Line)をリドウスタックA
5に退避し、アンドウスタックA4に退避してあったデ
ータ(“NULL”コード)をエントノードA1に復帰
させる。
【0018】すると、エントノードA1に格納される要
素が、図14に示すように、要素タイプ「Line」の
もの1つとなる。これは1回目のオペレーションを行っ
た直後の状態に等しい。
素が、図14に示すように、要素タイプ「Line」の
もの1つとなる。これは1回目のオペレーションを行っ
た直後の状態に等しい。
【0019】この後に、入力装置からリドウ命令が入力
されると、エントノードA1の最後尾に格納されていた
データ(“NULL”コード)をエンドウスタックA4
に退避し、リドウスタックA5に退避してあったデータ
(「2」,「AD2」,Line)をエントノードA1
に復帰させる。
されると、エントノードA1の最後尾に格納されていた
データ(“NULL”コード)をエンドウスタックA4
に退避し、リドウスタックA5に退避してあったデータ
(「2」,「AD2」,Line)をエントノードA1
に復帰させる。
【0020】上記の要素データベースに関する技術につ
いては、特開平5−324555号公報に詳述されてい
る。
いては、特開平5−324555号公報に詳述されてい
る。
【0021】
【発明が解決しようとする課題】上述した従来のCAD
システムでは、アンドウ命令を実行することで複数のオ
ペレーションを行った後でもその複数のオペレーション
の取消しが可能となっており、またリドウ命令を実行す
ることでアンドウ命令の取消し、つまり複数のオペレー
ションの取消し処理自体を取消すことが可能となってい
る。
システムでは、アンドウ命令を実行することで複数のオ
ペレーションを行った後でもその複数のオペレーション
の取消しが可能となっており、またリドウ命令を実行す
ることでアンドウ命令の取消し、つまり複数のオペレー
ションの取消し処理自体を取消すことが可能となってい
る。
【0022】上記の方法ではアンドウ命令を実行する時
にエントノードの内容をリドウスタックにスタックして
おり、作図・編集オペレーションを行う際にはリドウス
タックの内容をクリアしているので、作図・編集オペレ
ーションのみを実行した直後にはリドウ命令を実行する
ことができない。
にエントノードの内容をリドウスタックにスタックして
おり、作図・編集オペレーションを行う際にはリドウス
タックの内容をクリアしているので、作図・編集オペレ
ーションのみを実行した直後にはリドウ命令を実行する
ことができない。
【0023】すなわち、ある状態まで図面を作成した後
に一部書き直したい場合にはアンドウ処理でその書き直
したい位置まで戻らなければならないが、書き直しを行
った後には書き直しを行う前の状態に戻りたくとも、ア
ンドウ処理で戻った時点までしか戻ることができない。
に一部書き直したい場合にはアンドウ処理でその書き直
したい位置まで戻らなければならないが、書き直しを行
った後には書き直しを行う前の状態に戻りたくとも、ア
ンドウ処理で戻った時点までしか戻ることができない。
【0024】そこで、本発明の目的は上記の問題点を解
消し、作図・編集処理を取消して書き直した状態でも作
図・編集処理の取消し前の状態のような任意の状態に復
元することができる図面作成編集装置を提供することに
ある。
消し、作図・編集処理を取消して書き直した状態でも作
図・編集処理の取消し前の状態のような任意の状態に復
元することができる図面作成編集装置を提供することに
ある。
【0025】
【課題を解決するための手段】本発明による図面作成編
集装置は、図面の作成処理及び編集処理を行う図面作成
編集装置であって、前記図面の作成処理及び編集処理を
行う毎にその処理内容を格納する格納手段と、前記図面
の作成処理及び編集処理を行う毎に現処理の処理内容の
前記格納手段における格納位置と前記現処理の前後に連
続して行われた前の処理及び次の処理の履歴情報の蓄積
位置と前記次の処理の後から連続して行われた前記現処
理に対する変更処理の履歴情報の蓄積位置とを対応付け
て履歴データとして蓄積する蓄積手段と、前記変更処理
の履歴情報を記憶する記憶手段と、前記現処理の処理内
容を取消して前記前の処理の処理内容を復元するアンド
ウ操作時にその取消した処理の履歴情報の蓄積位置を保
持する保持手段と、前記図面の作成処理及び編集処理と
前記アンドウ操作及び前記アンドウ操作で取消された処
理の処理内容を復元するリドウ操作とのうちのいずれか
を指示する外部指令に応じて前記格納手段の内容と前記
蓄積手段の内容と前記記憶手段の内容と前記保持手段の
内容とを基に前記図面の作成処理及び編集処理を実行す
る手段とを備えている。
集装置は、図面の作成処理及び編集処理を行う図面作成
編集装置であって、前記図面の作成処理及び編集処理を
行う毎にその処理内容を格納する格納手段と、前記図面
の作成処理及び編集処理を行う毎に現処理の処理内容の
前記格納手段における格納位置と前記現処理の前後に連
続して行われた前の処理及び次の処理の履歴情報の蓄積
位置と前記次の処理の後から連続して行われた前記現処
理に対する変更処理の履歴情報の蓄積位置とを対応付け
て履歴データとして蓄積する蓄積手段と、前記変更処理
の履歴情報を記憶する記憶手段と、前記現処理の処理内
容を取消して前記前の処理の処理内容を復元するアンド
ウ操作時にその取消した処理の履歴情報の蓄積位置を保
持する保持手段と、前記図面の作成処理及び編集処理と
前記アンドウ操作及び前記アンドウ操作で取消された処
理の処理内容を復元するリドウ操作とのうちのいずれか
を指示する外部指令に応じて前記格納手段の内容と前記
蓄積手段の内容と前記記憶手段の内容と前記保持手段の
内容とを基に前記図面の作成処理及び編集処理を実行す
る手段とを備えている。
【0026】
【作用】アンドウを行った状態(リドウ可能な状態)か
ら作成・編集を行った時点で、リドウ可能であった状態
を消去せずに保存し、新しい状態を分岐させて保存する
ので、アンドウを行った場合、分岐に達した時にどの状
態へ移行するのかが選択可能となる。
ら作成・編集を行った時点で、リドウ可能であった状態
を消去せずに保存し、新しい状態を分岐させて保存する
ので、アンドウを行った場合、分岐に達した時にどの状
態へ移行するのかが選択可能となる。
【0027】また、命令が入力されると、その命令の内
容と命令に付随する属性及びその他の情報とを一つの履
歴データとして扱い、命令が行われる毎に履歴データを
作成していく。
容と命令に付随する属性及びその他の情報とを一つの履
歴データとして扱い、命令が行われる毎に履歴データを
作成していく。
【0028】これらの履歴データは履歴記憶部に記憶す
る時にリスト構造とし、ある履歴データの次の履歴デー
タあるいは前の履歴データのアドレスを履歴データの内
部に持たせておく。
る時にリスト構造とし、ある履歴データの次の履歴デー
タあるいは前の履歴データのアドレスを履歴データの内
部に持たせておく。
【0029】さらに、履歴データの内部に分岐用のアド
レス(分岐データアドレス)を上記のデータとともに合
わせ持たせる。この分岐データアドレスで示される分岐
データには分岐先の履歴データのアドレスと、分岐を行
う毎に付与される分岐ID番号と、複数の分岐がある場
合に分岐データをリスト構造として扱うための次分岐デ
ータアドレスとを持たせる。
レス(分岐データアドレス)を上記のデータとともに合
わせ持たせる。この分岐データアドレスで示される分岐
データには分岐先の履歴データのアドレスと、分岐を行
う毎に付与される分岐ID番号と、複数の分岐がある場
合に分岐データをリスト構造として扱うための次分岐デ
ータアドレスとを持たせる。
【0030】命令を実行した場合に履歴データの領域を
確保し、命令の内容及び属性等を履歴データに書込む。
その履歴データのアドレスを、現在の履歴データのアド
レスを示す履歴ポインタに指定する。
確保し、命令の内容及び属性等を履歴データに書込む。
その履歴データのアドレスを、現在の履歴データのアド
レスを示す履歴ポインタに指定する。
【0031】アンドウ処理は履歴ポインタの示す履歴デ
ータの内容を取消す処理であるが、分岐された履歴デー
タの場合には履歴データの内容を実行する。そのとき、
履歴ポインタは該当する履歴データのアドレスを指定
し、アンドウされるデータのアドレスと分岐されたデー
タであるかどうかを示すフラグとがアンドウスタックに
退避される。
ータの内容を取消す処理であるが、分岐された履歴デー
タの場合には履歴データの内容を実行する。そのとき、
履歴ポインタは該当する履歴データのアドレスを指定
し、アンドウされるデータのアドレスと分岐されたデー
タであるかどうかを示すフラグとがアンドウスタックに
退避される。
【0032】履歴ポインタの示す履歴データが分岐デー
タアドレスを持っていれば、アンドウ命令が入力された
際に、前履歴データアドレスや次履歴データアドレス、
あるいは分岐データアドレスを辿って一覧表示し、オペ
レータに選択入力を促す。
タアドレスを持っていれば、アンドウ命令が入力された
際に、前履歴データアドレスや次履歴データアドレス、
あるいは分岐データアドレスを辿って一覧表示し、オペ
レータに選択入力を促す。
【0033】その場合の表示順序は、前履歴データアド
レスが示す履歴データ、次履歴データアドレスが示す履
歴データ、分岐ID番号の若い順に並んだ分岐データア
ドレスが示す履歴データとなる。
レスが示す履歴データ、次履歴データアドレスが示す履
歴データ、分岐ID番号の若い順に並んだ分岐データア
ドレスが示す履歴データとなる。
【0034】リドウ処理はアンドウスタックのアドレス
を復帰し、分岐データであるかをフラグで判断して履歴
データの内容の取消しまたは実行を行う。アドレスを履
歴ポインタに指定し、履歴ポインタの示す履歴データに
含まれる次履歴データアドレスがNULLでないときに
命令が実行された場合には履歴データの分岐データアド
レスに確保した分岐データ領域のアドレスを入れる。
を復帰し、分岐データであるかをフラグで判断して履歴
データの内容の取消しまたは実行を行う。アドレスを履
歴ポインタに指定し、履歴ポインタの示す履歴データに
含まれる次履歴データアドレスがNULLでないときに
命令が実行された場合には履歴データの分岐データアド
レスに確保した分岐データ領域のアドレスを入れる。
【0035】その後に、履歴データ領域を確保し、その
アドレスを分岐データの履歴データアドレスに入れる。
その履歴データアドレスで示される履歴データの領域に
は命令の内容や属性等のデータを書込み、そのアドレス
を履歴ポインタに設定する。
アドレスを分岐データの履歴データアドレスに入れる。
その履歴データアドレスで示される履歴データの領域に
は命令の内容や属性等のデータを書込み、そのアドレス
を履歴ポインタに設定する。
【0036】これによって、アンドウ処理を行った後に
作成・編集処理を行っても、リドウ操作の情報が入って
いる部分と別の領域とを分岐して確保することができる
ので、全ての操作後の状態を再現することが可能とな
る。よって、アンドウ操作後に作成・編集処理を誤って
行ってしまった場合にアンドウ操作前の状態を復元する
ことや、取消して書き直した部分を元に戻すことが可能
となる。
作成・編集処理を行っても、リドウ操作の情報が入って
いる部分と別の領域とを分岐して確保することができる
ので、全ての操作後の状態を再現することが可能とな
る。よって、アンドウ操作後に作成・編集処理を誤って
行ってしまった場合にアンドウ操作前の状態を復元する
ことや、取消して書き直した部分を元に戻すことが可能
となる。
【0037】
【実施例】次に、本発明の一実施例について図面を参照
して説明する。
して説明する。
【0038】図1は本発明の一実施例の構成を示すブロ
ック図である。図において、本発明の一実施例によるC
ADシステムは入力装置1と、CAD処理装置2と、表
示装置3とから構成されている。
ック図である。図において、本発明の一実施例によるC
ADシステムは入力装置1と、CAD処理装置2と、表
示装置3とから構成されている。
【0039】入力装置1は図示せぬキーボードやマウス
等の作図の命令を入力するための装置である。表示装置
3は入力装置1から入力された命令がCAD処理装置2
で解釈されて処理された結果を表示する。
等の作図の命令を入力するための装置である。表示装置
3は入力装置1から入力された命令がCAD処理装置2
で解釈されて処理された結果を表示する。
【0040】CAD処理装置2は入力制御部4と、作成
・編集処理部5と、表示制御部6と、履歴制御部7と、
履歴記憶部8とから構成されている。CAD処理装置2
においては入力装置1から入力された内容を入力制御部
4で解析し、入力制御部4で解析された命令の実行を作
成・編集処理部5で行う。入力制御部4で解析された命
令や座標等のデータは履歴制御部7に送られ、履歴制御
部7の制御によって履歴記憶部8に記憶される。
・編集処理部5と、表示制御部6と、履歴制御部7と、
履歴記憶部8とから構成されている。CAD処理装置2
においては入力装置1から入力された内容を入力制御部
4で解析し、入力制御部4で解析された命令の実行を作
成・編集処理部5で行う。入力制御部4で解析された命
令や座標等のデータは履歴制御部7に送られ、履歴制御
部7の制御によって履歴記憶部8に記憶される。
【0041】また、入力装置1から実行されたオペレー
ションを取消してそのオペレーションの実行前のデータ
を復元するアンドウ(UNDO)命令やアンドウ命令を
実行する前のデータを復元するリドウ(REDO)命令
が入力されると、入力制御部4はそれらアンドウ命令や
リドウ命令を履歴制御部7に送る。
ションを取消してそのオペレーションの実行前のデータ
を復元するアンドウ(UNDO)命令やアンドウ命令を
実行する前のデータを復元するリドウ(REDO)命令
が入力されると、入力制御部4はそれらアンドウ命令や
リドウ命令を履歴制御部7に送る。
【0042】このとき、作成・編集処理部5は履歴記憶
部8に記憶された情報を基に履歴の実行あるいは取消し
を行う。作成・編集処理部5で処理された結果は表示制
御部6の制御によって表示装置3に表示される。
部8に記憶された情報を基に履歴の実行あるいは取消し
を行う。作成・編集処理部5で処理された結果は表示制
御部6の制御によって表示装置3に表示される。
【0043】図2は図1の履歴記憶部8に記憶されるデ
ータの構造を示す図である。図2(a)は図1の履歴記
憶部8に記憶される履歴データ11の構造を示す図であ
り、図2(b)は図1の履歴記憶部8に記憶される分岐
データ12の構造を示す図であり、図2(c)は図1の
履歴記憶部8に記憶されるデータ値13の構造を示す図
である。
ータの構造を示す図である。図2(a)は図1の履歴記
憶部8に記憶される履歴データ11の構造を示す図であ
り、図2(b)は図1の履歴記憶部8に記憶される分岐
データ12の構造を示す図であり、図2(c)は図1の
履歴記憶部8に記憶されるデータ値13の構造を示す図
である。
【0044】図2(a)において、履歴データ11は命
令の内容を示すコマンド名11aと、データ値13の格
納位置を示すデータ値アドレス11bと、命令に関する
属性11cと、一つ前の履歴データの格納位置を示す前
履歴データアドレス11dと、分岐データの格納位置を
示す分岐データアドレス11eと、次に行われる履歴デ
ータの格納位置を示す次履歴データアドレス11fとか
ら構成されている。
令の内容を示すコマンド名11aと、データ値13の格
納位置を示すデータ値アドレス11bと、命令に関する
属性11cと、一つ前の履歴データの格納位置を示す前
履歴データアドレス11dと、分岐データの格納位置を
示す分岐データアドレス11eと、次に行われる履歴デ
ータの格納位置を示す次履歴データアドレス11fとか
ら構成されている。
【0045】図2(b)において、分岐データ12は分
岐が行われた順番を示す分岐ID番号12aと、分岐先
の履歴データを示す履歴データアドレス12bと、次の
分岐データの格納位置を示す次分岐データアドレス12
cとから構成されている。
岐が行われた順番を示す分岐ID番号12aと、分岐先
の履歴データを示す履歴データアドレス12bと、次の
分岐データの格納位置を示す次分岐データアドレス12
cとから構成されている。
【0046】図2(c)において、データ値13は作成
・編集処理部5で処理された図面要素の内容を示すデー
タ13aと、このデータ13aに連続する次のデータの
格納位置を示す次データ値アドレス13bとから構成さ
れている。
・編集処理部5で処理された図面要素の内容を示すデー
タ13aと、このデータ13aに連続する次のデータの
格納位置を示す次データ値アドレス13bとから構成さ
れている。
【0047】図3は命令実行時における図1の履歴制御
部7の処理動作を示すフローチャートであり、図4はア
ンドウ命令実行時における図1の履歴制御部7の処理動
作を示すフローチャートであり、図5はリドウ命令実行
時における図1の履歴制御部7の処理動作を示すフロー
チャートである。これら図1〜図5を用いて履歴制御部
7の処理動作について説明する。
部7の処理動作を示すフローチャートであり、図4はア
ンドウ命令実行時における図1の履歴制御部7の処理動
作を示すフローチャートであり、図5はリドウ命令実行
時における図1の履歴制御部7の処理動作を示すフロー
チャートである。これら図1〜図5を用いて履歴制御部
7の処理動作について説明する。
【0048】作成・編集処理部5が作成・編集処理を行
う場合、履歴制御部7はまずアンドウスタック(図示せ
ず)の内容をクリアする(図3ステップS1)。すなわ
ち、履歴制御部7はアンドウスタックの先頭アドレスの
内容に“NULL”を書込むことで、アンドウスタック
の内容をクリアする。
う場合、履歴制御部7はまずアンドウスタック(図示せ
ず)の内容をクリアする(図3ステップS1)。すなわ
ち、履歴制御部7はアンドウスタックの先頭アドレスの
内容に“NULL”を書込むことで、アンドウスタック
の内容をクリアする。
【0049】次に、履歴制御部7は履歴記憶部8におい
て現在履歴ポインタが示している履歴データ11に次履
歴データアドレス11fがあるかどうかを調べる(図3
ステップS2)。
て現在履歴ポインタが示している履歴データ11に次履
歴データアドレス11fがあるかどうかを調べる(図3
ステップS2)。
【0050】履歴制御部7は次履歴データアドレス11
fが“NULL”コードであれば、つまり次履歴データ
がなければ履歴記憶部8において履歴データ11の領域
を新たに確保する(図3ステップS3)。履歴制御部7
は新たな領域の確保と同時にその新たな領域のアドレス
を得るので、そのアドレスを次履歴データアドレス11
fとする。
fが“NULL”コードであれば、つまり次履歴データ
がなければ履歴記憶部8において履歴データ11の領域
を新たに確保する(図3ステップS3)。履歴制御部7
は新たな領域の確保と同時にその新たな領域のアドレス
を得るので、そのアドレスを次履歴データアドレス11
fとする。
【0051】一方、履歴データ11に次履歴データアド
レス11fがあるということは他の領域を確保する必要
がある、つまり分岐して履歴データ11を作成する必要
があるということなので、履歴制御部7は履歴記憶部8
において分岐データ12の領域を新たに確保し(図3ス
テップS4)、確保した領域のアドレスを現在履歴ポイ
ンタが示している履歴データ11の分岐データアドレス
11eに入れる。
レス11fがあるということは他の領域を確保する必要
がある、つまり分岐して履歴データ11を作成する必要
があるということなので、履歴制御部7は履歴記憶部8
において分岐データ12の領域を新たに確保し(図3ス
テップS4)、確保した領域のアドレスを現在履歴ポイ
ンタが示している履歴データ11の分岐データアドレス
11eに入れる。
【0052】その後に、履歴制御部7は履歴記憶部8に
おいて確保した分岐データ12の領域の下に新たな履歴
データ11の領域を確保し(図3ステップS5)、確保
した領域のアドレスを分岐データ12の履歴データアド
レス12bに入れる。
おいて確保した分岐データ12の領域の下に新たな履歴
データ11の領域を確保し(図3ステップS5)、確保
した領域のアドレスを分岐データ12の履歴データアド
レス12bに入れる。
【0053】履歴制御部7はステップS3及びステップ
S5で確保した履歴データ11のアドレスを履歴ポイン
タに指定する(図3ステップS6)。履歴制御部7は履
歴ポインタが示す履歴データ11の領域に命令のコマン
ド名11aと属性11cとを書込む(図3ステップS
7)。
S5で確保した履歴データ11のアドレスを履歴ポイン
タに指定する(図3ステップS6)。履歴制御部7は履
歴ポインタが示す履歴データ11の領域に命令のコマン
ド名11aと属性11cとを書込む(図3ステップS
7)。
【0054】このとき同時に、履歴制御部7は履歴記憶
部8にデータ値13の領域を確保して座標等のデータ1
3aを保存するとともに、そのデータ値13のアドレス
を履歴ポインタが示す履歴データ11のデータ値アドレ
ス11bに、また予め別に保存した一つ前の履歴データ
のアドレスを履歴ポインタが示す履歴データ11の前履
歴データアドレス11dに夫々書込む。この場合、履歴
制御部7は履歴ポインタが示す履歴データ11の分岐デ
ータアドレス11e及び次履歴データアドレス11fに
“NULL”コードを書込む。
部8にデータ値13の領域を確保して座標等のデータ1
3aを保存するとともに、そのデータ値13のアドレス
を履歴ポインタが示す履歴データ11のデータ値アドレ
ス11bに、また予め別に保存した一つ前の履歴データ
のアドレスを履歴ポインタが示す履歴データ11の前履
歴データアドレス11dに夫々書込む。この場合、履歴
制御部7は履歴ポインタが示す履歴データ11の分岐デ
ータアドレス11e及び次履歴データアドレス11fに
“NULL”コードを書込む。
【0055】履歴データ11の書込み後、履歴制御部7
は作成・編集処理部5に作成・編集処理の実行を行わせ
る(図3ステップS8)。
は作成・編集処理部5に作成・編集処理の実行を行わせ
る(図3ステップS8)。
【0056】入力制御部4を通して入力装置1からアン
ドウ処理の命令が与えられると、履歴制御部7はまず履
歴ポインタが示す履歴データ11の分岐データアドレス
11eが“NULL”コードであるか否かを調べる(図
4ステップS11)。この処理は履歴データ11が分岐
しているか否かを調べる処理である。
ドウ処理の命令が与えられると、履歴制御部7はまず履
歴ポインタが示す履歴データ11の分岐データアドレス
11eが“NULL”コードであるか否かを調べる(図
4ステップS11)。この処理は履歴データ11が分岐
しているか否かを調べる処理である。
【0057】その分岐データアドレス11eが“NUL
L”コードであれば、履歴制御部7はアンドウスタック
の最新のフラグが“1”であるかどうかを調べる(図4
ステップS12)。この処理は直前に行ったアンドウ処
理が、その命令の実行で図面を復元させたものであるか
どうかを調べる処理である。
L”コードであれば、履歴制御部7はアンドウスタック
の最新のフラグが“1”であるかどうかを調べる(図4
ステップS12)。この処理は直前に行ったアンドウ処
理が、その命令の実行で図面を復元させたものであるか
どうかを調べる処理である。
【0058】アンドウスタックの最新のフラグが“0”
または“NULL”コードであれば通常に命令の取消し
処理を行うアンドウ処理なので、履歴制御部7はアンド
ウスタックに履歴ポインタが示すアドレスを書込み、そ
のフラグに“0”を書込む(図4ステップS13)。そ
の後に、履歴制御部7は履歴ポインタが示す履歴データ
の内容を取消す処理を作成・編集処理部5に行わせるよ
う処理する(図4ステップS14)。
または“NULL”コードであれば通常に命令の取消し
処理を行うアンドウ処理なので、履歴制御部7はアンド
ウスタックに履歴ポインタが示すアドレスを書込み、そ
のフラグに“0”を書込む(図4ステップS13)。そ
の後に、履歴制御部7は履歴ポインタが示す履歴データ
の内容を取消す処理を作成・編集処理部5に行わせるよ
う処理する(図4ステップS14)。
【0059】履歴制御部7は履歴ポインタに、取消した
履歴データ11の前履歴データアドレス11dのアドレ
スを指定する(図4ステップS15)。つまり、履歴制
御部7は取消した履歴データ11の一つ前の履歴データ
が履歴ポインタで示されるようにする。
履歴データ11の前履歴データアドレス11dのアドレ
スを指定する(図4ステップS15)。つまり、履歴制
御部7は取消した履歴データ11の一つ前の履歴データ
が履歴ポインタで示されるようにする。
【0060】一方、ステップS11で履歴ポインタが示
す履歴データ11の分岐データアドレス11eが“NU
LL”コードでないと判定されると、履歴制御部7は履
歴ポインタが示す履歴データから前履歴データの方向ま
たは次履歴データの方向、あるいは分岐データの方向に
夫々前履歴データまたは次履歴データ、あるいは分岐デ
ータがなくなるまで辿り、それらの一覧を表示する(図
4ステップS16)。
す履歴データ11の分岐データアドレス11eが“NU
LL”コードでないと判定されると、履歴制御部7は履
歴ポインタが示す履歴データから前履歴データの方向ま
たは次履歴データの方向、あるいは分岐データの方向に
夫々前履歴データまたは次履歴データ、あるいは分岐デ
ータがなくなるまで辿り、それらの一覧を表示する(図
4ステップS16)。
【0061】すなわち、履歴制御部7は履歴ポインタが
示す履歴データから履歴データアドレスまたは次履歴デ
ータアドレス、あるいは分岐データアドレスが“NUL
L”コードとなるまで辿り、それらの一覧を表示する。
示す履歴データから履歴データアドレスまたは次履歴デ
ータアドレス、あるいは分岐データアドレスが“NUL
L”コードとなるまで辿り、それらの一覧を表示する。
【0062】この一覧表示された内容を基にオペレータ
が分岐先を選択入力すると(図4ステップS17)、履
歴制御部7はオペレータからの選択入力が前履歴データ
アドレス11dを選択したものかどうかを調べる(図4
ステップS18)。
が分岐先を選択入力すると(図4ステップS17)、履
歴制御部7はオペレータからの選択入力が前履歴データ
アドレス11dを選択したものかどうかを調べる(図4
ステップS18)。
【0063】履歴制御部7はオペレータからの選択入力
が前履歴データアドレス11dを選択したものであれ
ば、通常に命令の取消し処理を行うアンドウ処理と判断
し、ステップS13にてアンドウスタックに履歴ポイン
タが示すアドレスを書込み、そのフラグに“0”を書込
む。
が前履歴データアドレス11dを選択したものであれ
ば、通常に命令の取消し処理を行うアンドウ処理と判断
し、ステップS13にてアンドウスタックに履歴ポイン
タが示すアドレスを書込み、そのフラグに“0”を書込
む。
【0064】また、履歴制御部7はオペレータからの選
択入力が前履歴データアドレス11dを選択したもので
なければ、履歴ポインタが示す履歴データの内容が実行
されたものであり、しかもその取消しも行わないので、
次履歴データあるいは分岐データの履歴データアドレス
が示す履歴データをアンドウ処理で復元させるものと判
断し、履歴ポインタにその復元させる履歴データのアド
レスを指定する(図4ステップS19)。
択入力が前履歴データアドレス11dを選択したもので
なければ、履歴ポインタが示す履歴データの内容が実行
されたものであり、しかもその取消しも行わないので、
次履歴データあるいは分岐データの履歴データアドレス
が示す履歴データをアンドウ処理で復元させるものと判
断し、履歴ポインタにその復元させる履歴データのアド
レスを指定する(図4ステップS19)。
【0065】履歴制御部7はアンドウスタックに履歴ポ
インタが示すアドレスを書込み、そのフラグに命令の実
行によってアンドウ処理を実現することを示す“1”を
書込む(図4ステップS20)。その後に、履歴制御部
7は作成・編集処理部5に作成・編集処理の実行を行わ
せる(図4ステップS21)。
インタが示すアドレスを書込み、そのフラグに命令の実
行によってアンドウ処理を実現することを示す“1”を
書込む(図4ステップS20)。その後に、履歴制御部
7は作成・編集処理部5に作成・編集処理の実行を行わ
せる(図4ステップS21)。
【0066】ここで、リドウ処理はアンドウ処理が行わ
れてから作成・編集処理が行われるまでの間に行うこと
ができる処理である。つまり、リドウ処理はアンドウ処
理の取消しを行う処理である。
れてから作成・編集処理が行われるまでの間に行うこと
ができる処理である。つまり、リドウ処理はアンドウ処
理の取消しを行う処理である。
【0067】そこで、入力制御部4を通して入力装置1
からリドウ処理の命令が与えられると、履歴制御部7は
まずアンドウスタックに書込まれたアドレスとフラグと
を読出し(図5ステップS31)、履歴ポインタにその
アドレスを指定する(図5ステップS32)。
からリドウ処理の命令が与えられると、履歴制御部7は
まずアンドウスタックに書込まれたアドレスとフラグと
を読出し(図5ステップS31)、履歴ポインタにその
アドレスを指定する(図5ステップS32)。
【0068】次に、履歴制御部7は読出したフラグが
“1”かどうかを判断し(図5ステップS33)、フラ
グが“1”であれば履歴ポインタが示す履歴データの内
容を取消す処理を作成・編集処理部5に行わせ(図5ス
テップS34)、フラグが“1”でなければ命令の実行
を作成・編集処理部5に行わせる(図5ステップS3
4)。
“1”かどうかを判断し(図5ステップS33)、フラ
グが“1”であれば履歴ポインタが示す履歴データの内
容を取消す処理を作成・編集処理部5に行わせ(図5ス
テップS34)、フラグが“1”でなければ命令の実行
を作成・編集処理部5に行わせる(図5ステップS3
4)。
【0069】図6(a)は本発明の一実施例で命令を3
回行った時の履歴データの内容を示す図であり、図6
(b)は図6(a)の履歴データが記憶された時の表示
内容を示す図である。図7(a)は図6に示す状態でア
ンドウ処理を行った時の履歴データの内容を示す図であ
り、図7(b)は図7(a)の履歴データが記憶された
時の表示内容を示す図である。
回行った時の履歴データの内容を示す図であり、図6
(b)は図6(a)の履歴データが記憶された時の表示
内容を示す図である。図7(a)は図6に示す状態でア
ンドウ処理を行った時の履歴データの内容を示す図であ
り、図7(b)は図7(a)の履歴データが記憶された
時の表示内容を示す図である。
【0070】図8(a)は図7に示す状態で命令を行っ
た時の履歴データの内容を示す図であり、図8(b)は
図8(a)の履歴データが記憶された時の表示内容を示
す図である。図9(a)は図8に示す状態で図面の状態
を図6に戻した時の履歴データの内容を示す図であり、
図9(b)は図9(a)の履歴データが記憶された時の
表示内容を示す図である。
た時の履歴データの内容を示す図であり、図8(b)は
図8(a)の履歴データが記憶された時の表示内容を示
す図である。図9(a)は図8に示す状態で図面の状態
を図6に戻した時の履歴データの内容を示す図であり、
図9(b)は図9(a)の履歴データが記憶された時の
表示内容を示す図である。
【0071】図10(a)は図9に示す状態で図面の状
態を最初の命令まで戻した時の履歴データの内容を示す
図であり、図10(b)は図10(a)の履歴データが
記憶された時の表示内容を示す図である。図11(a)
は1回分岐された状態で1度アンドウ処理を行ってから
新たに命令を行った時の履歴データの内容を示す図であ
り、図11(b)は図11(a)の履歴データが記憶さ
れた時の表示内容を示す図である。
態を最初の命令まで戻した時の履歴データの内容を示す
図であり、図10(b)は図10(a)の履歴データが
記憶された時の表示内容を示す図である。図11(a)
は1回分岐された状態で1度アンドウ処理を行ってから
新たに命令を行った時の履歴データの内容を示す図であ
り、図11(b)は図11(a)の履歴データが記憶さ
れた時の表示内容を示す図である。
【0072】これら図1〜図11を用いて本発明の一実
施例による電気設計図面作成時の処理について説明す
る。
施例による電気設計図面作成時の処理について説明す
る。
【0073】図6は命令を3回実行した状態を示してお
り、図6(b)に示すように、FFシンボル61を座標
(PX,PY)に配置した後に信号線62を座標(QX
1 ,QY1 )と座標(QX2 ,QY2 )との間に配線
し、FFシンボル63を座標(RX,RY)に配置した
状態を示している。
り、図6(b)に示すように、FFシンボル61を座標
(PX,PY)に配置した後に信号線62を座標(QX
1 ,QY1 )と座標(QX2 ,QY2 )との間に配線
し、FFシンボル63を座標(RX,RY)に配置した
状態を示している。
【0074】この場合、履歴記憶部8には、図6(a)
に示すような履歴データが記憶される。すなわち、履歴
21は履歴データ31〜33で構成されている。ここ
で、履歴ポインタ23は命令の実行や取消し処理が行わ
れてから最後に実行されたことになる現在の履歴データ
33のアドレスHAD3を示すポインタである。
に示すような履歴データが記憶される。すなわち、履歴
21は履歴データ31〜33で構成されている。ここ
で、履歴ポインタ23は命令の実行や取消し処理が行わ
れてから最後に実行されたことになる現在の履歴データ
33のアドレスHAD3を示すポインタである。
【0075】履歴データアドレスHAD1の履歴データ
31にはFFシンボル61を座標(PX,PY)に配置
するときの命令内容を示すコマンド名「SYMBOL」
と、データ値の格納位置を示すデータ値アドレスDAD
1と、命令に関する属性「FF」と、一つ前の履歴デー
タの格納位置を示す前履歴データアドレス「NULL」
と、分岐データの格納位置を示す分岐データアドレス
「NULL」と、次に行われる履歴データの格納位置を
示す次履歴データアドレスHAD2とが記憶されてい
る。
31にはFFシンボル61を座標(PX,PY)に配置
するときの命令内容を示すコマンド名「SYMBOL」
と、データ値の格納位置を示すデータ値アドレスDAD
1と、命令に関する属性「FF」と、一つ前の履歴デー
タの格納位置を示す前履歴データアドレス「NULL」
と、分岐データの格納位置を示す分岐データアドレス
「NULL」と、次に行われる履歴データの格納位置を
示す次履歴データアドレスHAD2とが記憶されてい
る。
【0076】履歴データアドレスHAD2の履歴データ
32には信号線62を座標(QX1,QY1 )と座標
(QX2 ,QY2 )との間に配線するときの命令内容を
示すコマンド名「SIGNAL」と、データ値の格納位
置を示すデータ値アドレスDAD3と、命令に関する属
性「SINGLE」と、一つ前の履歴データの格納位置
を示す前履歴データアドレスHAD1と、分岐データの
格納位置を示す分岐データアドレス「NULL」と、次
に行われる履歴データの格納位置を示す次履歴データア
ドレスHAD3とが記憶されている。
32には信号線62を座標(QX1,QY1 )と座標
(QX2 ,QY2 )との間に配線するときの命令内容を
示すコマンド名「SIGNAL」と、データ値の格納位
置を示すデータ値アドレスDAD3と、命令に関する属
性「SINGLE」と、一つ前の履歴データの格納位置
を示す前履歴データアドレスHAD1と、分岐データの
格納位置を示す分岐データアドレス「NULL」と、次
に行われる履歴データの格納位置を示す次履歴データア
ドレスHAD3とが記憶されている。
【0077】履歴データアドレスHAD3の履歴データ
33にはFFシンボル63を座標(RX,RY)に配置
するときの命令内容を示すコマンド名「SYMBOL」
と、データ値の格納位置を示すデータ値アドレスDAD
7と、命令に関する属性「FF」と、一つ前の履歴デー
タの格納位置を示す前履歴データアドレスHAD2と、
分岐データの格納位置を示す分岐データアドレス「NU
LL」と、次に行われる履歴データの格納位置を示す次
履歴データアドレス「NULL」とが記憶されている。
33にはFFシンボル63を座標(RX,RY)に配置
するときの命令内容を示すコマンド名「SYMBOL」
と、データ値の格納位置を示すデータ値アドレスDAD
7と、命令に関する属性「FF」と、一つ前の履歴デー
タの格納位置を示す前履歴データアドレスHAD2と、
分岐データの格納位置を示す分岐データアドレス「NU
LL」と、次に行われる履歴データの格納位置を示す次
履歴データアドレス「NULL」とが記憶されている。
【0078】アンドウスタック22はアンドウ処理が行
われた時に該当する履歴データのアドレスと、リドウ時
に履歴データの内容を実行するか取消すかを示すフラグ
とを格納するスタックである。図6(a)に示す状態で
はアンドウ処理が行われていないので、アンドウスタッ
ク22には空であることを示す“NULL”コードが入
っている。
われた時に該当する履歴データのアドレスと、リドウ時
に履歴データの内容を実行するか取消すかを示すフラグ
とを格納するスタックである。図6(a)に示す状態で
はアンドウ処理が行われていないので、アンドウスタッ
ク22には空であることを示す“NULL”コードが入
っている。
【0079】データ値列24はデータ値41〜48で構
成されている。データ値アドレスDAD1のデータ値4
1にはFFシンボル61を配置する座標PXと、次のデ
ータの格納位置を示す次データ値アドレスDAD2とが
記憶され、データ値アドレスDAD2のデータ値42に
はFFシンボル61を配置する座標PYと、次のデータ
の格納位置を示す次データ値アドレス「NULL」とが
記憶されている。
成されている。データ値アドレスDAD1のデータ値4
1にはFFシンボル61を配置する座標PXと、次のデ
ータの格納位置を示す次データ値アドレスDAD2とが
記憶され、データ値アドレスDAD2のデータ値42に
はFFシンボル61を配置する座標PYと、次のデータ
の格納位置を示す次データ値アドレス「NULL」とが
記憶されている。
【0080】データ値アドレスDAD3のデータ値43
には信号線62を配線する始点座標QX1 と、次のデー
タの格納位置を示す次データ値アドレスDAD4とが記
憶され、データ値アドレスDAD4のデータ値44には
信号線62を配線する始点座標QY1 と、次のデータの
格納位置を示す次データ値アドレスDAD5とが記憶さ
れている。
には信号線62を配線する始点座標QX1 と、次のデー
タの格納位置を示す次データ値アドレスDAD4とが記
憶され、データ値アドレスDAD4のデータ値44には
信号線62を配線する始点座標QY1 と、次のデータの
格納位置を示す次データ値アドレスDAD5とが記憶さ
れている。
【0081】データ値アドレスDAD5のデータ値45
には信号線62を配線する終点座標QX2 と、次のデー
タの格納位置を示す次データ値アドレスDAD6とが記
憶され、データ値アドレスDAD26のータ値46には
信号線62を配線する終点座標QY2 と、次のデータの
格納位置を示す次データ値アドレス「NULL」とが記
憶されている。
には信号線62を配線する終点座標QX2 と、次のデー
タの格納位置を示す次データ値アドレスDAD6とが記
憶され、データ値アドレスDAD26のータ値46には
信号線62を配線する終点座標QY2 と、次のデータの
格納位置を示す次データ値アドレス「NULL」とが記
憶されている。
【0082】データ値アドレスDAD7のデータ値47
にはFFシンボル63を配置する座標RXと、次のデー
タの格納位置を示す次データ値アドレスDAD8とが記
憶され、データ値アドレスDAD8のデータ値48には
FFシンボル63を配置する座標RYと、次のデータの
格納位置を示す次データ値アドレス「NULL」とが記
憶されている。
にはFFシンボル63を配置する座標RXと、次のデー
タの格納位置を示す次データ値アドレスDAD8とが記
憶され、データ値アドレスDAD8のデータ値48には
FFシンボル63を配置する座標RYと、次のデータの
格納位置を示す次データ値アドレス「NULL」とが記
憶されている。
【0083】命令が実行されると、履歴制御部7は履歴
記憶部8の履歴21に履歴データ31〜33の領域を確
保し、ここに命令と属性とを書込む。このとき、履歴制
御部7は履歴データ31〜33を、各々のデータを互い
に関連付けるリスト構造をとって記憶する。
記憶部8の履歴21に履歴データ31〜33の領域を確
保し、ここに命令と属性とを書込む。このとき、履歴制
御部7は履歴データ31〜33を、各々のデータを互い
に関連付けるリスト構造をとって記憶する。
【0084】次に、履歴制御部7は履歴記憶部8のデー
タ値列24にデータ値41〜48の領域を確保し、そこ
に座標等のデータを書込む。ここで、データ値41〜4
8の領域の数が命令によって異なってくるので、履歴制
御部7は命令毎にデータ値41〜48の領域の数を変更
し、リスト構造をとって記憶する。
タ値列24にデータ値41〜48の領域を確保し、そこ
に座標等のデータを書込む。ここで、データ値41〜4
8の領域の数が命令によって異なってくるので、履歴制
御部7は命令毎にデータ値41〜48の領域の数を変更
し、リスト構造をとって記憶する。
【0085】図6(a)に示すような履歴21の場合、
最初にシンボルを配置する命令が与えられるので、履歴
制御部7は履歴21のアドレスHAD1に履歴データ3
1の領域を確保し、確保した領域にシンボル配置の命令
であることを示すコマンド名「SYMBOL」と、配置
するシンボルがフリップフロップであることを示す属性
「FF」とを書込む。
最初にシンボルを配置する命令が与えられるので、履歴
制御部7は履歴21のアドレスHAD1に履歴データ3
1の領域を確保し、確保した領域にシンボル配置の命令
であることを示すコマンド名「SYMBOL」と、配置
するシンボルがフリップフロップであることを示す属性
「FF」とを書込む。
【0086】続いて、履歴制御部7はデータ値列24の
アドレスDAD1,DAD2にデータ値41,42の領
域を確保し、確保した領域にシンボルの配置位置を示す
X座標値「PX」及びY座標値「PY」を書込む。
アドレスDAD1,DAD2にデータ値41,42の領
域を確保し、確保した領域にシンボルの配置位置を示す
X座標値「PX」及びY座標値「PY」を書込む。
【0087】この場合、履歴制御部7はアドレスDAD
1の領域に次のデータ値アドレスとしてアドレスDAD
2を入れ、データ値42に次の領域がないのでアドレス
DAD2の領域に次のデータ値アドレスとして「NUL
L」を入れる。
1の領域に次のデータ値アドレスとしてアドレスDAD
2を入れ、データ値42に次の領域がないのでアドレス
DAD2の領域に次のデータ値アドレスとして「NUL
L」を入れる。
【0088】履歴制御部7は命令が一度行われる毎に、
上記の形態で命令の内容を履歴記憶部8に記憶する。
上記の形態で命令の内容を履歴記憶部8に記憶する。
【0089】履歴データの前履歴データアドレスには一
つ前に行われた命令の内容が格納されている履歴データ
のアドレスを入れる。図6(a)に示す履歴21の場
合、アドレスHAD1の履歴データ31は最初に実行さ
れた命令の履歴なので、その前履歴データアドレスに
「NULL」が入っている。
つ前に行われた命令の内容が格納されている履歴データ
のアドレスを入れる。図6(a)に示す履歴21の場
合、アドレスHAD1の履歴データ31は最初に実行さ
れた命令の履歴なので、その前履歴データアドレスに
「NULL」が入っている。
【0090】また、アドレスHAD2の履歴データ32
の前履歴データアドレスには一つ前の履歴データ31の
アドレスHAD1が、アドレスHAD3の履歴データ3
3の前履歴データアドレスには一つ前の履歴データ32
のアドレスHAD2が夫々入っている。
の前履歴データアドレスには一つ前の履歴データ31の
アドレスHAD1が、アドレスHAD3の履歴データ3
3の前履歴データアドレスには一つ前の履歴データ32
のアドレスHAD2が夫々入っている。
【0091】図6(a)に示す履歴21の場合、各履歴
データ31〜33の分岐データアドレスには分岐が行わ
れていないので、夫々「NULL」が入っている。
データ31〜33の分岐データアドレスには分岐が行わ
れていないので、夫々「NULL」が入っている。
【0092】履歴データの次履歴データアドレスには分
岐データアドレスが示す分岐データの履歴データを使わ
ない限り、次に行う履歴データのアドレスが格納され
る。図6(a)に示す履歴21の場合、アドレスHAD
1の履歴データ31には次履歴データアドレスHAD2
が、アドレスHAD2の履歴データ32には次履歴デー
タアドレスHAD3が夫々入っている。アドレスHAD
3の履歴データ33は最後に行われた命令の履歴データ
なので、「NULL」が入っている。
岐データアドレスが示す分岐データの履歴データを使わ
ない限り、次に行う履歴データのアドレスが格納され
る。図6(a)に示す履歴21の場合、アドレスHAD
1の履歴データ31には次履歴データアドレスHAD2
が、アドレスHAD2の履歴データ32には次履歴デー
タアドレスHAD3が夫々入っている。アドレスHAD
3の履歴データ33は最後に行われた命令の履歴データ
なので、「NULL」が入っている。
【0093】図7は図6の状態から一回アンドウ命令を
行った状態を示しており、図7(b)に示すように、図
6(b)に示す状態から座標(RX,RY)に配置した
FFシンボル63を取り除いた状態を示している。
行った状態を示しており、図7(b)に示すように、図
6(b)に示す状態から座標(RX,RY)に配置した
FFシンボル63を取り除いた状態を示している。
【0094】この場合、図6(a)に示す状態で、アン
ドウ命令が与えられると、履歴ポインタ23が示すアド
レスHAD3をアンドウスタック22に書込み、このと
き同時に、アンドウスタック22のフラグにはリドウ時
に履歴データの内容を実行するデータであることを示す
“0”が書込まれる。
ドウ命令が与えられると、履歴ポインタ23が示すアド
レスHAD3をアンドウスタック22に書込み、このと
き同時に、アンドウスタック22のフラグにはリドウ時
に履歴データの内容を実行するデータであることを示す
“0”が書込まれる。
【0095】この場合、作成・編集処理部5は履歴デー
タ33の内容がFFシンボル63を座標(RX,RY)
に配置する命令なので、座標(RX,RY)に配置され
たFFシンボル63を消去する命令を行う。その後に、
履歴ポインタ23には履歴データ33の前履歴データア
ドレスHAD2が指定される。
タ33の内容がFFシンボル63を座標(RX,RY)
に配置する命令なので、座標(RX,RY)に配置され
たFFシンボル63を消去する命令を行う。その後に、
履歴ポインタ23には履歴データ33の前履歴データア
ドレスHAD2が指定される。
【0096】図8は図7の状態からシンボル配置の命令
を行った状態を示しており、図8(b)に示すように、
図7(b)に示す状態から座標(SX,SY)にAND
シンボル64を配置した状態を示している。
を行った状態を示しており、図8(b)に示すように、
図7(b)に示す状態から座標(SX,SY)にAND
シンボル64を配置した状態を示している。
【0097】図7(a)に示す状態で、シンボル配置の
命令が与えられると、履歴制御部7はアンドウスタック
22をクリアし、履歴記憶部8の履歴21のアドレスN
AD1に分岐データ34の領域を確保し、履歴ポインタ
23が示すアドレスHAD2の履歴データ32の分岐デ
ータアドレスにNAD1を格納する。
命令が与えられると、履歴制御部7はアンドウスタック
22をクリアし、履歴記憶部8の履歴21のアドレスN
AD1に分岐データ34の領域を確保し、履歴ポインタ
23が示すアドレスHAD2の履歴データ32の分岐デ
ータアドレスにNAD1を格納する。
【0098】続いて、履歴制御部7は履歴記憶部8の履
歴21のアドレスHAD4に履歴データ35の領域を確
保し、ANDシンボル64を配置する命令の内容を書込
む。その後、履歴制御部7は分岐データアドレスNAD
1の分岐データ34の履歴データアドレスに履歴データ
35のアドレスHAD4を格納し、履歴ポインタ23に
履歴データ35のアドレスHAD4を指定する。
歴21のアドレスHAD4に履歴データ35の領域を確
保し、ANDシンボル64を配置する命令の内容を書込
む。その後、履歴制御部7は分岐データアドレスNAD
1の分岐データ34の履歴データアドレスに履歴データ
35のアドレスHAD4を格納し、履歴ポインタ23に
履歴データ35のアドレスHAD4を指定する。
【0099】つまり、履歴制御部7は履歴21のアドレ
スNAD1に分岐データ34の領域を確保し、確保した
領域に分岐が行われた順番を示す分岐ID番号「1」
と、対応する履歴データ35のアドレスHAD4とを書
込む。この場合、分岐データ34の次に分岐デーがない
ので、次分岐データアドレスに「NULL」が書込まれ
る。
スNAD1に分岐データ34の領域を確保し、確保した
領域に分岐が行われた順番を示す分岐ID番号「1」
と、対応する履歴データ35のアドレスHAD4とを書
込む。この場合、分岐データ34の次に分岐デーがない
ので、次分岐データアドレスに「NULL」が書込まれ
る。
【0100】また、履歴制御部7は履歴21のアドレス
HAD4に履歴データ35の領域を確保し、確保した領
域にシンボル配置の命令であることを示すコマンド名
「SYMBOL」と、配置するシンボルがアンドゲート
であることを示す属性「AND」とを書込む。
HAD4に履歴データ35の領域を確保し、確保した領
域にシンボル配置の命令であることを示すコマンド名
「SYMBOL」と、配置するシンボルがアンドゲート
であることを示す属性「AND」とを書込む。
【0101】さらに、履歴制御部7はデータ値列24の
アドレスDAD9,DAD10にデータ値49,50の
領域を確保し、確保した領域にシンボルの配置位置を示
すX座標値「SX」及びY座標値「SY」を書込む。
アドレスDAD9,DAD10にデータ値49,50の
領域を確保し、確保した領域にシンボルの配置位置を示
すX座標値「SX」及びY座標値「SY」を書込む。
【0102】このとき、履歴制御部7はアドレスDAD
9の領域に次のデータ値アドレスとしてアドレスDAD
10を入れ、データ値50に次の領域がないのでアドレ
スDAD10の領域に次のデータ値アドレスとして「N
ULL」を入れる。
9の領域に次のデータ値アドレスとしてアドレスDAD
10を入れ、データ値50に次の領域がないのでアドレ
スDAD10の領域に次のデータ値アドレスとして「N
ULL」を入れる。
【0103】一方、履歴データ35の前履歴データアド
レスには一つ前に行われた命令の内容が格納されている
履歴データ32のアドレスHAD2が入っている。ま
た、履歴データ35の分岐データアドレスには分岐が行
われていないので「NULL」が、履歴データ35の次
履歴データアドレスには最後に行われた命令の履歴デー
タなので「NULL」が夫々入っている。
レスには一つ前に行われた命令の内容が格納されている
履歴データ32のアドレスHAD2が入っている。ま
た、履歴データ35の分岐データアドレスには分岐が行
われていないので「NULL」が、履歴データ35の次
履歴データアドレスには最後に行われた命令の履歴デー
タなので「NULL」が夫々入っている。
【0104】図9は図8の状態から二回アンドウ命令を
行った状態を示しており、図9(b)に示すように、図
8(b)に示す状態から座標(SX,SY)に配置した
ANDシンボル64を取り除き、座標(RX,RY)に
FFシンボル63を配置した状態を示している。但し、
2回目のアンドウ命令は分岐している履歴データへのア
ンドウ命令である。
行った状態を示しており、図9(b)に示すように、図
8(b)に示す状態から座標(SX,SY)に配置した
ANDシンボル64を取り除き、座標(RX,RY)に
FFシンボル63を配置した状態を示している。但し、
2回目のアンドウ命令は分岐している履歴データへのア
ンドウ命令である。
【0105】図8(a)に示す状態で、アンドウ命令が
与えられると、履歴制御部7は履歴ポインタ23が示す
アドレスHAD4の履歴データ35の内容を取消す処理
を行い、アンドウスタック22にアドレスHAD4を書
込むとともに、アンドウスタック22のフラグにリドウ
時に履歴データの内容を実行するデータであることを示
す“0”を書込む。また、履歴制御部7は履歴ポインタ
23に履歴データ35の前履歴データアドレスHAD2
を指定する。
与えられると、履歴制御部7は履歴ポインタ23が示す
アドレスHAD4の履歴データ35の内容を取消す処理
を行い、アンドウスタック22にアドレスHAD4を書
込むとともに、アンドウスタック22のフラグにリドウ
時に履歴データの内容を実行するデータであることを示
す“0”を書込む。また、履歴制御部7は履歴ポインタ
23に履歴データ35の前履歴データアドレスHAD2
を指定する。
【0106】この状態でさらにアンドウ命令が与えられ
ると、履歴制御部7は履歴ポインタ23が示すアドレス
HAD2の履歴データ32の分岐データアドレスにNA
D1が入っているので、表示装置3を通してどの履歴デ
ータを復元するのかを示す選択入力をオペレータに促
す。
ると、履歴制御部7は履歴ポインタ23が示すアドレス
HAD2の履歴データ32の分岐データアドレスにNA
D1が入っているので、表示装置3を通してどの履歴デ
ータを復元するのかを示す選択入力をオペレータに促
す。
【0107】その場合、オペレータの選択入力にはアド
レスHAD2の履歴データ32を取消して前履歴データ
アドレスHAD1の履歴データ31に戻る方向と、次履
歴データアドレスHAD3の履歴データ33に進む方向
とが考えられる。
レスHAD2の履歴データ32を取消して前履歴データ
アドレスHAD1の履歴データ31に戻る方向と、次履
歴データアドレスHAD3の履歴データ33に進む方向
とが考えられる。
【0108】図9では次の履歴データすなわちアドレス
HAD3の履歴データ33の内容を実行することで、図
6(b)に示す図面の状態を図9(b)に示すように再
現することができる。
HAD3の履歴データ33の内容を実行することで、図
6(b)に示す図面の状態を図9(b)に示すように再
現することができる。
【0109】このとき、履歴制御部7は履歴ポインタ2
3にアドレスHAD3を指定し、アンドウスタック22
にアドレスHAD3を書込むとともに、アンドウスタッ
ク22のフラグにリドウ時に履歴データの内容を取消す
ことを示す“1”を書込む。
3にアドレスHAD3を指定し、アンドウスタック22
にアドレスHAD3を書込むとともに、アンドウスタッ
ク22のフラグにリドウ時に履歴データの内容を取消す
ことを示す“1”を書込む。
【0110】図10は図9の状態からリドウ命令を一回
行い、さらにアンドウ命令を行って前の履歴データを選
択した状態、あるいは図8の状態から二回アンドウ命令
を行い、二回目のアンドウ処理で前の履歴データを選択
した状態を示している。
行い、さらにアンドウ命令を行って前の履歴データを選
択した状態、あるいは図8の状態から二回アンドウ命令
を行い、二回目のアンドウ処理で前の履歴データを選択
した状態を示している。
【0111】すなわち、図10(b)に示すように、図
9(b)に示す状態から座標(RX,RY)に配置した
FFシンボル63及び座標(QX1 ,QY1 )と座標
(QX2 ,QY2 )との間に配線した信号線62を取り
除いた状態、あるいは図8(b)に示す状態から座標
(SX,SY)に配置したANDシンボル64及び座標
(QX1 ,QY1 )と座標(QX2 ,QY2 )との間に
配線した信号線62を取り除いた状態を示している。
9(b)に示す状態から座標(RX,RY)に配置した
FFシンボル63及び座標(QX1 ,QY1 )と座標
(QX2 ,QY2 )との間に配線した信号線62を取り
除いた状態、あるいは図8(b)に示す状態から座標
(SX,SY)に配置したANDシンボル64及び座標
(QX1 ,QY1 )と座標(QX2 ,QY2 )との間に
配線した信号線62を取り除いた状態を示している。
【0112】つまり、図9(a)のアドレスHAD1の
履歴データ31の内容のみを実行した状態を再現してい
る。また、図10では図9の状態からリドウ命令を一回
行い、さらにアンドウ命令を行って前の履歴データを選
択した状態を示している。
履歴データ31の内容のみを実行した状態を再現してい
る。また、図10では図9の状態からリドウ命令を一回
行い、さらにアンドウ命令を行って前の履歴データを選
択した状態を示している。
【0113】この場合、アンドウスタック22にはアド
レスHAD4及びアドレスHAD2が、夫々対応するフ
ラグにリドウ時に履歴データの内容を実行することを示
す“0”が書込まれており、二回リドウ命令を実行する
と図8の状態を再現することができる。
レスHAD4及びアドレスHAD2が、夫々対応するフ
ラグにリドウ時に履歴データの内容を実行することを示
す“0”が書込まれており、二回リドウ命令を実行する
と図8の状態を再現することができる。
【0114】図11は1回分岐された状態で一回アンド
ウ命令を行ってから新たに命令を行った状態を示してお
り、図11(b)に示すように、FFシンボル61を座
標(PX,PY)に配置してから座標(QX1 ,QY1
)と座標(QX2 ,QY2 )との間に信号線62を配
線し、座標(TX,TY)にNANDシンボル65を配
置した状態を示している。
ウ命令を行ってから新たに命令を行った状態を示してお
り、図11(b)に示すように、FFシンボル61を座
標(PX,PY)に配置してから座標(QX1 ,QY1
)と座標(QX2 ,QY2 )との間に信号線62を配
線し、座標(TX,TY)にNANDシンボル65を配
置した状態を示している。
【0115】すなわち、一回分岐された状態で、履歴ポ
インタ23がアドレスHAD2の履歴データ32を示し
ている場合に作成・編集処理が行われた状態を示してい
る。この場合、作成・編集処理が実行されることでアン
ドウスタック22がクリアされる。
インタ23がアドレスHAD2の履歴データ32を示し
ている場合に作成・編集処理が行われた状態を示してい
る。この場合、作成・編集処理が実行されることでアン
ドウスタック22がクリアされる。
【0116】一回分岐された状態ではアドレスHAD2
の履歴データ32の分岐データアドレスが「NULL」
ではなく、アドレスNAD1を示し、分岐データ34の
次分岐データアドレスが「NULL」を示している。
の履歴データ32の分岐データアドレスが「NULL」
ではなく、アドレスNAD1を示し、分岐データ34の
次分岐データアドレスが「NULL」を示している。
【0117】その状態で、シンボル配置の命令が与えら
れると、履歴制御部7はアンドウスタック22をクリア
し、履歴記憶部8の履歴21のアドレスNAD2に分岐
データ36の領域を確保し、履歴ポインタ23が示すア
ドレスNAD1の分岐データ34の次分岐データアドレ
スにNAD2を格納する。
れると、履歴制御部7はアンドウスタック22をクリア
し、履歴記憶部8の履歴21のアドレスNAD2に分岐
データ36の領域を確保し、履歴ポインタ23が示すア
ドレスNAD1の分岐データ34の次分岐データアドレ
スにNAD2を格納する。
【0118】続いて、履歴制御部7は履歴記憶部8の履
歴21のアドレスHAD5に履歴データ37の領域を確
保し、NANDシンボル65を配置する命令の内容を書
込む。その後、履歴制御部7は分岐データアドレスNA
D2の分岐データ36の履歴データアドレスに履歴デー
タ37のアドレスHAD5を格納し、履歴ポインタ23
に履歴データ37のアドレスHAD5を指定する。
歴21のアドレスHAD5に履歴データ37の領域を確
保し、NANDシンボル65を配置する命令の内容を書
込む。その後、履歴制御部7は分岐データアドレスNA
D2の分岐データ36の履歴データアドレスに履歴デー
タ37のアドレスHAD5を格納し、履歴ポインタ23
に履歴データ37のアドレスHAD5を指定する。
【0119】つまり、履歴制御部7は履歴21のアドレ
スNAD2に分岐データ36の領域を確保し、確保した
領域に分岐が行われた順番を示す分岐ID番号「2」
と、対応する履歴データ37のアドレスHAD5とを書
込む。この場合、分岐データ36の次に分岐データがな
いので、次分岐データアドレスに「NULL」が書込ま
れる。
スNAD2に分岐データ36の領域を確保し、確保した
領域に分岐が行われた順番を示す分岐ID番号「2」
と、対応する履歴データ37のアドレスHAD5とを書
込む。この場合、分岐データ36の次に分岐データがな
いので、次分岐データアドレスに「NULL」が書込ま
れる。
【0120】また、履歴制御部7は履歴21のアドレス
HAD5に履歴データ37の領域を確保し、確保した領
域にシンボル配置の命令であることを示すコマンド名
「SYMBOL」と、配置するシンボルがナンドゲート
であることを示す属性「NAND」とを書込む。
HAD5に履歴データ37の領域を確保し、確保した領
域にシンボル配置の命令であることを示すコマンド名
「SYMBOL」と、配置するシンボルがナンドゲート
であることを示す属性「NAND」とを書込む。
【0121】さらに、履歴制御部7はデータ値列24の
アドレスDAD11,DAD12にデータ値51,52
の領域を確保し、確保した領域にシンボルの配置位置を
示すX座標値「TX」及びY座標値「TY」を書込む。
アドレスDAD11,DAD12にデータ値51,52
の領域を確保し、確保した領域にシンボルの配置位置を
示すX座標値「TX」及びY座標値「TY」を書込む。
【0122】このとき、履歴制御部7はアドレスDAD
11の領域に次のデータ値アドレスとしてアドレスDA
D12を入れ、データ値52に次の領域がないのでアド
レスDAD12の領域に次のデータ値アドレスとして
「NULL」を入れる。
11の領域に次のデータ値アドレスとしてアドレスDA
D12を入れ、データ値52に次の領域がないのでアド
レスDAD12の領域に次のデータ値アドレスとして
「NULL」を入れる。
【0123】一方、履歴データ37の前履歴データアド
レスには一つ前に行われた命令の内容が格納されている
履歴データ32のアドレスHAD2が入っている。ま
た、履歴データ37の分岐データアドレスには分岐が行
われていないので「NULL」が、履歴データ37の次
履歴データアドレスには最後に行われた命令の履歴デー
タなので「NULL」が夫々入っている。
レスには一つ前に行われた命令の内容が格納されている
履歴データ32のアドレスHAD2が入っている。ま
た、履歴データ37の分岐データアドレスには分岐が行
われていないので「NULL」が、履歴データ37の次
履歴データアドレスには最後に行われた命令の履歴デー
タなので「NULL」が夫々入っている。
【0124】図12(a)は本発明の一実施例における
アンドウ及びリドウ可能な状態を示す図であり、図12
(b)及び図12(c)は従来例におけるアンドウ及び
リドウ可能な状態を示す図である。
アンドウ及びリドウ可能な状態を示す図であり、図12
(b)及び図12(c)は従来例におけるアンドウ及び
リドウ可能な状態を示す図である。
【0125】これらの図において、状態は最初にオペ
レーションを行った状態を示し、状態は状態からオ
ペレーションを行った状態を示し、状態は状態から
オペレーションを行った状態を示し、状態は状態を
取消した後に状態からオペレーションを行った状態を
示している。
レーションを行った状態を示し、状態は状態からオ
ペレーションを行った状態を示し、状態は状態から
オペレーションを行った状態を示し、状態は状態を
取消した後に状態からオペレーションを行った状態を
示している。
【0126】従来例では、図12(b)に示すように、
最後のオペレーションを行った状態から状態及び状
態へのアンドウ及びリドウが可能となっている。しか
しながら、状態を取消した後に状態から状態にな
るようなオペレーションを行った場合、状態から状態
及び状態へのアンドウ及びリドウは可能であるが、
状態の復元は状態の情報が失われてしまうので不可
能となる。
最後のオペレーションを行った状態から状態及び状
態へのアンドウ及びリドウが可能となっている。しか
しながら、状態を取消した後に状態から状態にな
るようなオペレーションを行った場合、状態から状態
及び状態へのアンドウ及びリドウは可能であるが、
状態の復元は状態の情報が失われてしまうので不可
能となる。
【0127】これに対し、本発明の一実施例では、状態
を取消した後に状態から状態になるようなオペレ
ーションを行った場合でも、図12(a)に示すよう
に、状態の情報を分岐させて保存しておくため、状態
から状態、状態、状態のうちのいずれの状態へ
も復元することが可能である。
を取消した後に状態から状態になるようなオペレ
ーションを行った場合でも、図12(a)に示すよう
に、状態の情報を分岐させて保存しておくため、状態
から状態、状態、状態のうちのいずれの状態へ
も復元することが可能である。
【0128】このように、図面の作成処理及び編集処理
を行うCAD処理装置2において、図面の作成処理及び
編集処理を行う毎にその処理内容を示すデータ値13
と、図面の作成処理及び編集処理を行う毎に現処理のデ
ータ値アドレス11bと現処理の前後に連続して行われ
た前履歴データアドレス11d及び後履歴データアドレ
ス11fと後履歴データの後から連続して行われた現処
理に対する変更処理の履歴情報の蓄積位置を示す分岐デ
ータアドレス11eとを対応付けた履歴データ11と、
分岐データ12と、現処理の処理内容を取消して前段処
理の処理内容を復元するアンドウ操作時にその取消した
処理の履歴データアドレスを保持するアンドウスタック
22とを履歴記憶部8に記憶し、履歴記憶部8の内容を
基に通常の作成・編集命令またはアンドウ命令、あるい
はリドウ命令を履歴制御部7の制御で作成・編集処理部
5に行わせることによって、作図・編集処理を取消して
書き直した状態でも作図・編集処理の取消し前の状態の
ような任意の状態に復元することができる。
を行うCAD処理装置2において、図面の作成処理及び
編集処理を行う毎にその処理内容を示すデータ値13
と、図面の作成処理及び編集処理を行う毎に現処理のデ
ータ値アドレス11bと現処理の前後に連続して行われ
た前履歴データアドレス11d及び後履歴データアドレ
ス11fと後履歴データの後から連続して行われた現処
理に対する変更処理の履歴情報の蓄積位置を示す分岐デ
ータアドレス11eとを対応付けた履歴データ11と、
分岐データ12と、現処理の処理内容を取消して前段処
理の処理内容を復元するアンドウ操作時にその取消した
処理の履歴データアドレスを保持するアンドウスタック
22とを履歴記憶部8に記憶し、履歴記憶部8の内容を
基に通常の作成・編集命令またはアンドウ命令、あるい
はリドウ命令を履歴制御部7の制御で作成・編集処理部
5に行わせることによって、作図・編集処理を取消して
書き直した状態でも作図・編集処理の取消し前の状態の
ような任意の状態に復元することができる。
【0129】これによって、アンドウ処理を行った後に
作成・編集処理を行っても、リドウ操作の情報が入って
いる部分と別の領域とを分岐して確保することができる
ので、全ての操作後の状態を再現することが可能とな
る。つまり、アンドウ操作後に作成・編集処理を誤って
行ってしまった場合にアンドウ操作前の状態を復元する
ことや、取消して書き直した部分を元に戻すことが可能
となる。
作成・編集処理を行っても、リドウ操作の情報が入って
いる部分と別の領域とを分岐して確保することができる
ので、全ての操作後の状態を再現することが可能とな
る。つまり、アンドウ操作後に作成・編集処理を誤って
行ってしまった場合にアンドウ操作前の状態を復元する
ことや、取消して書き直した部分を元に戻すことが可能
となる。
【0130】
【発明の効果】以上説明したように本発明によれば、図
面の作成処理及び編集処理を行う図面作成編集装置にお
いて、図面の作成処理及び編集処理を行う毎にその処理
内容を格納し、図面の作成処理及び編集処理を行う毎に
現処理の処理内容の格納位置と現処理の前後に連続して
行われた前の処理及び次の処理の履歴情報の蓄積位置と
次の処理の後から連続して行われた現処理に対する変更
処理の履歴情報の蓄積位置とを対応付けて履歴データと
して蓄積するとともに、変更処理の履歴情報を記憶し、
現処理の処理内容を取消して前の処理の処理内容を復元
するアンドウ操作時にその取消した処理の履歴情報の蓄
積位置を保持してこれらの内容に基づいて図面の作成処
理及び編集処理とアンドウ操作及びアンドウ操作で取消
された処理の処理内容を復元するリドウ操作とのいずれ
かを指示する外部指令に応じた作成処理及び編集処理を
実行することによって、作図・編集処理を取消して書き
直した状態でも作図・編集処理の取消し前の状態のよう
な任意の状態に復元することができるという効果があ
る。
面の作成処理及び編集処理を行う図面作成編集装置にお
いて、図面の作成処理及び編集処理を行う毎にその処理
内容を格納し、図面の作成処理及び編集処理を行う毎に
現処理の処理内容の格納位置と現処理の前後に連続して
行われた前の処理及び次の処理の履歴情報の蓄積位置と
次の処理の後から連続して行われた現処理に対する変更
処理の履歴情報の蓄積位置とを対応付けて履歴データと
して蓄積するとともに、変更処理の履歴情報を記憶し、
現処理の処理内容を取消して前の処理の処理内容を復元
するアンドウ操作時にその取消した処理の履歴情報の蓄
積位置を保持してこれらの内容に基づいて図面の作成処
理及び編集処理とアンドウ操作及びアンドウ操作で取消
された処理の処理内容を復元するリドウ操作とのいずれ
かを指示する外部指令に応じた作成処理及び編集処理を
実行することによって、作図・編集処理を取消して書き
直した状態でも作図・編集処理の取消し前の状態のよう
な任意の状態に復元することができるという効果があ
る。
【図1】本発明の一実施例の構成を示すブロック図であ
る。
る。
【図2】(a)は図1の履歴記憶部に記憶される履歴デ
ータの構造を示す図、(b)は図1の履歴記憶部に記憶
される分岐データの構造を示す図、(c)は図1の履歴
記憶部に記憶されるデータ値の構造を示す図である。
ータの構造を示す図、(b)は図1の履歴記憶部に記憶
される分岐データの構造を示す図、(c)は図1の履歴
記憶部に記憶されるデータ値の構造を示す図である。
【図3】図1の履歴制御部の命令実行時における処理動
作を示すフローチャートである。
作を示すフローチャートである。
【図4】図1の履歴制御部のアンドウ命令実行時におけ
る処理動作を示すフローチャートである。
る処理動作を示すフローチャートである。
【図5】図1の履歴制御部のリドウ命令実行時における
処理動作を示すフローチャートである。
処理動作を示すフローチャートである。
【図6】(a)は本発明の一実施例で命令を3回行った
時の履歴データの内容を示す図、(b)は(a)の履歴
データが記憶された時の表示内容を示す図である。
時の履歴データの内容を示す図、(b)は(a)の履歴
データが記憶された時の表示内容を示す図である。
【図7】(a)は図6に示す状態でアンドウ処理を行っ
た時の履歴データの内容を示す図、(b)は(a)の履
歴データが記憶された時の表示内容を示す図である。
た時の履歴データの内容を示す図、(b)は(a)の履
歴データが記憶された時の表示内容を示す図である。
【図8】(a)は図7に示す状態で命令を行った時の履
歴データの内容を示す図、(b)は(a)の履歴データ
が記憶された時の表示内容を示す図である。
歴データの内容を示す図、(b)は(a)の履歴データ
が記憶された時の表示内容を示す図である。
【図9】(a)は図8に示す状態で図面の状態を図6に
戻した時の履歴データの内容を示す図、(b)は(a)
の履歴データが記憶された時の表示内容を示す図であ
る。
戻した時の履歴データの内容を示す図、(b)は(a)
の履歴データが記憶された時の表示内容を示す図であ
る。
【図10】(a)は図9に示す状態で図面の状態を最初
の命令まで戻した時の履歴データの内容を示す図、
(b)は(a)の履歴データが記憶された時の表示内容
を示す図である。
の命令まで戻した時の履歴データの内容を示す図、
(b)は(a)の履歴データが記憶された時の表示内容
を示す図である。
【図11】(a)は1回分岐された状態で1度アンドウ
処理を行ってから新たに命令を行った時の履歴データの
内容を示す図、(b)は(a)の履歴データが記憶され
た時の表示内容を示す図である。
処理を行ってから新たに命令を行った時の履歴データの
内容を示す図、(b)は(a)の履歴データが記憶され
た時の表示内容を示す図である。
【図12】(a)は本発明の一実施例におけるアンドウ
及びリドウ可能な状態を示す図、(b)及び(c)は従
来例におけるアンドウ及びリドウ可能な状態を示す図で
ある。
及びリドウ可能な状態を示す図、(b)及び(c)は従
来例におけるアンドウ及びリドウ可能な状態を示す図で
ある。
【図13】従来例の要素データベースの構成を示す図で
ある。
ある。
【図14】従来例においてオペレーションを2回実行し
た後にアンドウ操作を1回行った状態を示す図である。
た後にアンドウ操作を1回行った状態を示す図である。
1 入力装置 2 CAD処理装置 4 入力制御部 5 作成・編集処理部 6 表示制御部 7 履歴制御部 8 履歴記憶部 11 履歴データ 11a コマンド名 11b データ値アドレス 11c 属性 11d 前履歴データアドレス 11e 分岐アドレスアドレス 11f 次履歴データアドレス 12 分岐データ 12a 分岐ID番号 12b 履歴データアドレス 12c 次分岐データアドレス 13a データ 13b 次データ値アドレス
Claims (4)
- 【請求項1】 図面の作成処理及び編集処理を行う図面
作成編集装置であって、前記図面の作成処理及び編集処
理を行う毎にその処理内容を格納する格納手段と、前記
図面の作成処理及び編集処理を行う毎に現処理の処理内
容の前記格納手段における格納位置と前記現処理の前後
に連続して行われた前の処理及び次の処理の履歴情報の
蓄積位置と前記次の処理の後から連続して行われた前記
現処理に対する変更処理の履歴情報の蓄積位置とを対応
付けて履歴データとして蓄積する蓄積手段と、前記変更
処理の履歴情報を記憶する記憶手段と、前記現処理の処
理内容を取消して前記前の処理の処理内容を復元するア
ンドウ操作時にその取消した処理の履歴情報の蓄積位置
を保持する保持手段と、前記図面の作成処理及び編集処
理と前記アンドウ操作及び前記アンドウ操作で取消され
た処理の処理内容を復元するリドウ操作とのうちのいず
れかを指示する外部指令に応じて前記格納手段の内容と
前記蓄積手段の内容と前記記憶手段の内容と前記保持手
段の内容とを基に前記図面の作成処理及び編集処理を実
行する手段とを有することを特徴とする図面作成編集装
置。 - 【請求項2】 前記格納手段は、前記処理内容とその処
理内容に連続する処理内容の格納位置とを対応付けて格
納するよう構成したことを特徴とする請求項1記載の図
面作成編集装置。 - 【請求項3】 前記蓄積手段及び前記記憶手段は、各々
のデータを互いに関連付けるリスト構造としたことを特
徴とする請求項1または請求項2記載の図面作成編集装
置。 - 【請求項4】 前記記憶手段は、前記変更処理の履歴情
報と前記変更処理の処理順序を示す識別情報と前記変更
処理に連続する変更処理の履歴情報の記憶位置とを互い
に対応付けて記憶するよう構成したことを特徴とする請
求項1から請求項3のいずれか記載の図面作成編集装
置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP7157410A JPH096981A (ja) | 1995-06-23 | 1995-06-23 | 図面作成編集装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP7157410A JPH096981A (ja) | 1995-06-23 | 1995-06-23 | 図面作成編集装置 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH096981A true JPH096981A (ja) | 1997-01-10 |
Family
ID=15649031
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP7157410A Withdrawn JPH096981A (ja) | 1995-06-23 | 1995-06-23 | 図面作成編集装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH096981A (ja) |
Cited By (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2006051961A1 (ja) * | 2004-11-12 | 2006-05-18 | Justsystems Corporation | データ処理装置およびデータ処理方法 |
| WO2006051962A1 (ja) * | 2004-11-12 | 2006-05-18 | Justsystems Corporation | データ処理装置およびデータ処理方法 |
| WO2006051963A1 (ja) * | 2004-11-12 | 2006-05-18 | Justsystems Corporation | データ処理装置およびデータ処理方法 |
| WO2006051965A1 (ja) * | 2004-11-12 | 2006-05-18 | Justsystems Corporation | データ処理装置およびデータ処理方法 |
-
1995
- 1995-06-23 JP JP7157410A patent/JPH096981A/ja not_active Withdrawn
Cited By (10)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2006051961A1 (ja) * | 2004-11-12 | 2006-05-18 | Justsystems Corporation | データ処理装置およびデータ処理方法 |
| WO2006051962A1 (ja) * | 2004-11-12 | 2006-05-18 | Justsystems Corporation | データ処理装置およびデータ処理方法 |
| WO2006051963A1 (ja) * | 2004-11-12 | 2006-05-18 | Justsystems Corporation | データ処理装置およびデータ処理方法 |
| WO2006051965A1 (ja) * | 2004-11-12 | 2006-05-18 | Justsystems Corporation | データ処理装置およびデータ処理方法 |
| JPWO2006051963A1 (ja) * | 2004-11-12 | 2008-05-29 | 株式会社ジャストシステム | データ処理装置およびデータ処理方法 |
| JPWO2006051961A1 (ja) * | 2004-11-12 | 2008-05-29 | 株式会社ジャストシステム | データ処理装置およびデータ処理方法 |
| JPWO2006051965A1 (ja) * | 2004-11-12 | 2008-05-29 | 株式会社ジャストシステム | データ処理装置およびデータ処理方法 |
| JP4515461B2 (ja) * | 2004-11-12 | 2010-07-28 | 株式会社ジャストシステム | データ処理装置およびデータ処理方法 |
| JP4515462B2 (ja) * | 2004-11-12 | 2010-07-28 | 株式会社ジャストシステム | データ処理装置およびデータ処理方法 |
| JP4515463B2 (ja) * | 2004-11-12 | 2010-07-28 | 株式会社ジャストシステム | データ処理装置およびデータ処理方法 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US5604853A (en) | Text editor using insert, update and delete structures for undo and redo operations | |
| US4829468A (en) | Print control system | |
| JPH03266039A (ja) | フリーフォーマットデータリンク処理方式 | |
| JPH05313969A (ja) | ファイル一覧表示方法 | |
| JP3070701B2 (ja) | 対話型システムのプログラム制御方法 | |
| JPS63288357A (ja) | デ−タ編集方式 | |
| JPH05324555A (ja) | 既実行オペレーションの取消装置 | |
| JP3129889B2 (ja) | 数値制御装置 | |
| JPH04230517A (ja) | 階層メニュー処理装置 | |
| JP2934713B2 (ja) | メニュー処理装置 | |
| JPH056272A (ja) | ソフトウエア設計装置 | |
| JPH05324556A (ja) | 既実行オペレーションの取消装置 | |
| JP3722854B2 (ja) | データ編集装置 | |
| JP2980748B2 (ja) | プリント配線基板設計支援装置 | |
| JP3079825B2 (ja) | 電子計算機装置 | |
| JPH10228492A (ja) | Cadシステム | |
| JPH0822490A (ja) | レイヤー選択方法及びレイヤー属性編集方法 | |
| JPH07104876B2 (ja) | 設計支援方法及び設計支援装置 | |
| JPH04165469A (ja) | 回路図面表示装置 | |
| JPH1011512A (ja) | 補助線表示機能付き表計算システムおよび方法 | |
| JPH01271877A (ja) | 図面管理システム | |
| JPH0588951A (ja) | ライブラリデータの保存方法及びコンピユータシステム | |
| JPH01302429A (ja) | ソースプログラムの編集システム | |
| JPH07295874A (ja) | Cadシステム | |
| JPH03204722A (ja) | 仕様レビユー支援方法 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A300 | Application deemed to be withdrawn because no request for examination was validly filed |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20020903 |