JP4664534B2 - Symbol rotation device - Google Patents

Symbol rotation device Download PDF

Info

Publication number
JP4664534B2
JP4664534B2 JP2001178881A JP2001178881A JP4664534B2 JP 4664534 B2 JP4664534 B2 JP 4664534B2 JP 2001178881 A JP2001178881 A JP 2001178881A JP 2001178881 A JP2001178881 A JP 2001178881A JP 4664534 B2 JP4664534 B2 JP 4664534B2
Authority
JP
Japan
Prior art keywords
area
rotation
segment
segment area
attribute
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.)
Expired - Fee Related
Application number
JP2001178881A
Other languages
Japanese (ja)
Other versions
JP2002373179A (en
Inventor
陽子 関本
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2001178881A priority Critical patent/JP4664534B2/en
Publication of JP2002373179A publication Critical patent/JP2002373179A/en
Application granted granted Critical
Publication of JP4664534B2 publication Critical patent/JP4664534B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

【0001】
【発明の属する技術分野】
本発明は、文字列及び図形を有するシンボルに対して回転処理を実行するシンボル回転装置、シンボル回転方法、その方法をコンピュータに実行させるプログラム、CADシステムおよび図形編集システムに関するものである。
【0002】
【従来の技術】
CAD(コンピュータが支援する設計)図面作成時には、一つのパーツをある角度で回転させて配置する作業が多く発生する。一方、回転したパーツの属性の向きは通常横書きであり、単純にパーツの回転を行うと、図形と属性とが、また属性と属性とが重なる場合がある。そのような場合には、CAD作業者が属性の位置を修正していた。
【0003】
このような属性の位置の修正を削減する方法として、特開昭62−206677号公報に記載された画像データ回転方法が知られている。この画像データ回転方法では、回転処理の際に、図形との関連座標とその座標から一番近い文字の中心座標との位置関係を保ったまま回転処理を行い、かつ、文字が図形との関連座標と重複しないように補正を行うようにしている。そして、求められた文字座標の位置に文字方向を変えずに文字を表示させる。すなわち、文字データは文字表示方向を変えず、回転後の図形に合わせて平行移動する。これにより、文字は回転せず、かつ、図形と文字が重なることがない。
【0004】
【発明が解決しようとする課題】
しかしながら、上記公報に記載された画像データ回転方法では、文字列が図形中のある点と関連付けられていることを前提としているので、関連付けがない場合は文字列と図形中のある点との関連付けを定義しなければならず、このため回転のためにパーツ情報を変更する必要がある。
【0005】
この発明は上記に鑑みてなされたもので、文字列と図形中のある点とを関連付けし無くとも、文字列と図形とが重なり合わず、しかも文字列同士が重なり合うこと無く、文字列および図形を有するシンボルを回転させることができるシンボル回転装置、シンボル回転方法、その方法をコンピュータに実行させるプログラム、CADシステムおよび図形編集システムを得ることを目的とする。
【0006】
【課題を解決するための手段】
上記目的を達成するためこの発明にかかるシンボル回転装置は、文字列及び図形を有するシンボルに対して回転処理を実行するシンボル回転装置において、前記文字列のセグメント領域を求める第1の領域求め手段と、前記図形のセグメント領域を求める第2の領域求め手段と、前記シンボルについて、前記第2の領域求め手段により求められたセグメント領域の中心点を中心として所定の回転方向に角度αをもって回転処理を実行する第1の回転処理手段と、該第1の回転処理手段による回転処理後のシンボル中の文字列について、前記第1の領域求め手段により求められたセグメント領域の中心点を中心として、回転処理前と同一の表示方向となるように角度βをもって回転処理を実行する第2の回転処理手段と、を具備したことを特徴とする。
【0007】
この発明によれば、第1の回転処理手段が、文字列及び図形を有するシンボルについて、第2の領域求め手段により求められたセグメント領域の中心点を中心として所定の回転方向に角度αをもって回転処理を実行すると、第2の回転処理手段が、第1の回転処理手段による回転処理後のシンボル中の文字列について、第1の領域求め手段により求められたセグメント領域の中心点を中心として、回転処理前と同一の表示方向となるように角度βをもって回転処理を実行する。
【0008】
つぎの発明にかかるシンボル回転装置は、上記の発明において、前記第2の回転処理手段による回転処理後の文字列のセグメント領域が前記図形のセグメント領域と重複する場合は、これら各セグメント領域が重複しないように当該文字列のセグメント領域を移動する移動手段を更に具備したことを特徴とする。
【0009】
この発明によれば、第2の回転処理手段による回転処理後の文字列のセグメント領域が図形のセグメント領域と重複する場合は、移動手段によって、前記各セグメント領域が重複しないように、当該文字列のセグメント領域が所定の位置に移動される。
【0010】
つぎの発明にかかるシンボル回転装置は、複数の文字列及び図形を有するシンボルに対して回転処理を実行するシンボル回転装置において、前記各文字列毎のセグメント領域を求める第1の領域求め手段と、前記図形のセグメント領域を求める第2の領域求め手段と、前記複数の文字列を所定の規則にしたがってグルーピングするグルーピング手段と、該グルーピング手段によりグループ化された文字列のセグメント領域を求める第3の領域求め手段と、前記シンボルについて、前記第2の領域求め手段により求められたセグメント領域の中心点を中心として所定の回転方向に角度αをもって回転処理を実行する第1の回転処理手段と、前記第1の回転処理手段による回転処理後のシンボル中の文字列について、前記第1の領域求め手段により求められたセグメント領域または前記第3の領域求め手段により求められたセグメント領域の中心点を中心として、回転処理前と同一の表示方向となるように角度βをもって回転処理を実行する第2の回転処理手段と、を具備したことを特徴とする。
【0011】
この発明によれば、第1の回転処理手段が、複数の文字列及び図形を有するシンボルについて、第2の領域求め手段により求められたセグメント領域の中心点を中心として所定の回転方向に角度αをもって回転処理を実行すると、第2の回転処理手段が、第1の領域求め手段により求められたセグメント領域または第3の領域求め手段により求められたセグメント領域の中心点を中心として、回転処理前と同一の表示方向となるように角度βをもって回転処理を実行する。
【0012】
つぎの発明にかかるシンボル回転装置は、上記の発明において、前記第2の領域求め手段により求められた図形のセグメント領域の各辺を延長して、当該図形近傍の領域を分割する分割手段を更に具備し、前記グルーピング手段は、前記分割手段による分割処理後の各領域を基準にして前記複数の文字列をグルーピングすることを特徴とする
【0013】
この発明によれば、分割手段が、第2の領域求め手段により求められた図形のセグメント領域の各辺を延長して、当該図形近傍の領域を分割すると、グルーピング手段は、分割手段による分割処理後の各領域を基準にして複数の文字列をグルーピングする。
【0014】
つぎの発明にかかるシンボル回転装置は、上記の発明において、前記第2の回転処理手段による回転処理後の文字列のセグメント領域が前記図形のセグメント領域と重複する場合は、これら各セグメント領域が重複しないように当該文字列のセグメント領域を移動する移動手段を更に具備したことを特徴とする。
【0015】
この発明によれば、第2の回転処理手段による回転処理後の文字列のセグメント領域が図形のセグメント領域と重複する場合は、移動手段によって、前記各セグメント領域が重複しないように、当該文字列のセグメント領域が所定の位置に移動される。
【0016】
つぎの発明にかかるシンボル回転装置は、上記の発明において、前記移動手段による移動処理後の複数の文字列のセグメント領域が重複する場合は、これら各セグメント領域が重複しないように前記第1の領域求め手段または前記第3の領域求め手段により求められたセグメント領域単位で、当該文字列のセグメント領域を移動する文字列移動手段を更に具備したことを特徴とする。
【0017】
この発明によれば、移動手段による移動処理後の複数の文字列のセグメント領域が重複する場合は、文字列移動手段によって、前記各セグメント領域が重複しないように第1の領域求め手段または第3の領域求め手段により求められたセグメント領域単位で、当該文字列のセグメント領域が所定の位置に移動される。
【0018】
つぎの発明にかかるシンボル回転方法は、文字列及び図形を有するシンボルに対して回転処理を実行するシンボル回転方法において、前記文字列のセグメント領域を求める第1の領域求め工程と、前記図形のセグメント領域を求める第2の領域求め工程と、前記シンボルについて、前記第2の領域求め工程により求められたセグメント領域の中心点を中心として所定の回転方向に角度αをもって回転処理を実行する第1の回転処理工程と、該第1の回転処理工程による回転処理後のシンボル中の文字列について、前記第1の領域求め工程により求められたセグメント領域の中心点を中心として、回転処理前と同一の表示方向となるように角度βをもって回転処理を実行する第2の回転処理工程と、を含むことを特徴とする。
【0019】
この発明によれば、第1の回転処理工程によって、文字列及び図形を有するシンボルについて、第2の領域求め手段により求められたセグメント領域の中心点を中心として所定の回転方向に角度αをもって回転処理を実行すると、第2の回転処理工程によって、第1の回転処理手段による回転処理後のシンボル中の文字列について、第1の領域求め手段により求められたセグメント領域の中心点を中心として、回転処理前と同一の表示方向となるように角度βをもって回転処理を実行する。
【0020】
つぎの発明にかかるシンボル回転方法は、上記の発明において、前記第2の回転処理工程による回転処理後の文字列のセグメント領域が前記図形のセグメント領域と重複する場合は、これら各セグメント領域が重複しないように当該文字列のセグメント領域を移動する移動工程を更に含むことを特徴とする。
【0021】
この発明によれば、第2の回転処理工程により回転処理された後の文字列のセグメント領域が図形のセグメント領域と重複する場合は、移動工程によって、前記各セグメント領域が重複しないように、当該文字列のセグメント領域を所定の位置に移動する。
【0022】
つぎの発明にかかるシンボル回転方法は、複数の文字列及び図形を有するシンボルに対して回転処理を実行するシンボル回転方法において、前記各文字列毎のセグメント領域を求める第1の領域求め工程と、前記図形のセグメント領域を求める第2の領域求め工程と、前記複数の文字列を所定の規則にしたがってグルーピングするグルーピング工程と、該グルーピング工程によりグループ化された文字列のセグメント領域を求める第3の領域求め工程と、前記シンボルについて、前記第2の領域求め工程により求められたセグメント領域の中心点を中心として所定の回転方向に角度αをもって回転処理を実行する第1の回転処理工程と、該第1の回転処理工程による回転処理後のシンボル中の文字列について、前記第1の領域求め工程により求められたセグメント領域または前記第3の領域求め工程により求められたセグメント領域の中心点を中心として、回転処理前と同一の表示方向となるように角度βをもって回転処理を実行する第2の回転処理工程と、を含むことを特徴とする。
【0023】
この発明によれば、第1の回転処理工程によって、複数の文字列及び図形を有するシンボルについて、第2の領域求め手段により求められたセグメント領域の中心点を中心として所定の回転方向に角度αをもって回転処理を実行すると、第2の回転処理工程によって、第1の領域求め手段により求められたセグメント領域または第3の領域求め手段により求められたセグメント領域の中心点を中心として、回転処理前と同一の表示方向となるように角度βをもって回転処理を実行する。
【0024】
つぎの発明にかかるシンボル回転方法は、上記の発明において、前記第2の領域求め工程により求められた図形のセグメント領域の各辺を延長して、当該図形近傍の領域を分割する分割工程を更に含み、前記グルーピング工程は、前記分割工程による分割処理後の各領域を基準にして前記複数の文字列をグルーピングすることを特徴とする。
【0025】
この発明によれば、分割工程によって、第2の領域求め手段により求められた図形のセグメント領域の各辺を延長して、当該図形近傍の領域を分割すると、グルーピング工程によって、分割手段による分割処理後の各領域を基準にして複数の文字列をグルーピングする。
【0026】
つぎの発明にかかるシンボル回転方法は、上記の発明において、前記第2の回転処理工程による回転処理後の文字列のセグメント領域が前記図形のセグメント領域と重複する場合は、これら各セグメント領域が重複しないように当該文字列のセグメント領域を移動する移動工程を更に含むことを特徴とする。
【0027】
この発明によれば、第2の回転処理工程により回転処理された後の文字列のセグメント領域が図形のセグメント領域と重複する場合は、移動工程によって、前記各セグメント領域が重複しないように、当該文字列のセグメント領域が所定の位置に移動される。
【0028】
つぎの発明にかかるシンボル回転方法は、上記の発明において、前記移動工程による移動処理後の複数の文字列のセグメント領域が重複する場合は、これら各セグメント領域が重複しないように前記第1の領域求め工程または前記第3の領域求め工程により求められたセグメント領域単位で、当該文字列のセグメント領域を移動する文字列移動工程を更に含むことを特徴とする。
【0029】
この発明によれば、移動工程により移動処理された後の複数の文字列のセグメント領域が重複する場合は、文字列移動工程によって、前記各セグメント領域が重複しないように第1の領域求め工程または第3の領域求め工程により求められたセグメント領域単位で、当該文字列のセグメント領域が所定の位置に移動される。
【0030】
つぎの発明にかかるプログラムは、上記の発明のいずれか一つに記載された方法をコンピュータに実行させるプログラムであり、そのプログラムがコンピュータ読み取り可能となり、これによって、上記の発明のいずれか一つの動作をコンピュータによって実行することができる。
【0031】
つぎの発明にかかるCADシステムは、上記の発明のいずれか一つに記載された方法にしたがってシンボルの回転処理を実行することを特徴とする。
【0032】
つぎの発明にかかるCADシステムは、上記プログラムを実行することにより、上記の発明のいずれか一つに記載された方法にしたがってシンボルの回転処理を実行することを特徴とする。
【0033】
つぎの発明にかかる図形編集システムは、上記の発明のいずれか一つに記載された方法にしたがってシンボルの回転処理を実行することを特徴とする。
【0034】
つぎの発明にかかる図形編集システムは、上記プログラムを実行することにより、上記の発明のいずれか一つに記載された方法にしたがってシンボルの回転処理を実行することを特徴とする。
【0035】
【発明の実施の形態】
以下に添付図面を参照して、この発明にかかるシンボル回転装置、シンボル回転方法、その方法をコンピュータに実行させるプログラム、CADシステムおよび図形編集システムの好適な実施の形態を詳細に説明する。
【0036】
実施の形態1.
図1は、この発明の実施の形態であるシンボル回転装置の構成を示すブロック図である。図1において、シンボル回転装置は、装置本体10、表示装置20、キーボード30およびマウス40から構成されている。このようなシンボル回転装置は、たとえば汎用コンピュータ、パーソナルコンピュータ、ワークステーションなどのコンピュータにより実現されるものである。
【0037】
装置本体10は、装置全体を統括的に制御するCPU11と、ハードディスク等の記録媒体で構成される補助記憶装置12と、RAM等の記録媒体で構成される主記憶装置13と、入出力制御部14とを有している。補助記憶装置12は、テキスト付き電子部品図形を示すデータ、後述する回転アルゴリズム(回転処理手順)を示すプログラムを含む図形編集エディタを記憶している。主記憶装置13は、補助記憶装置12からローディングされたプログラムやデータ、キーボード30あるいはマウス40からの入力データ、CPU11が演算処理する際に必要となるデータを記憶する。
【0038】
CPU11は、補助記憶装置12および主記憶装置13に対してアクセスして、たとえば後述する回転処理手順に基づいて処理を実行する。なお、CPU11には、入出力制御部14を介して、テキスト付き電子部品図形などの表示情報を表示する表示装置20、上記図形編集エディタの起動指示、各種の入力データを入力するためのキーボード30およびマウス40が接続されている。
【0039】
ここで、以降の説明において記載される「パーツ」、「図形」、「属性」、「パーツ属性」、「ピン属性」、「パーツのピン」、「接続線」および「セグメント領域」の用語を定義する。
【0040】
「パーツ」とは、電気図記号などのシンボルのことである。「図形」とは、パーツのうち、文字列以外の図形部分のことである。「属性」とは、図形以外の各文字列のことである。「パーツ属性」とは、パーツ全体の種類および機能を説明する文字列のことである。「ピン属性」とは、パーツのピンの機能を説明する文字列のことである。ここで、パーツの一例を、図2(a)〜(c)に示し、「図形」、「属性」、「パーツ属性」および「ピン属性」の一例を、図3に示す。
【0041】
図3の例においては、符号100で示される部分(点線で囲まれている部分)が「パーツ」を示し、また、符号110で示される部分(点線で囲まれている部分)が「図形」を示し、さらに、符号121、122で示される部分が「属性」を示している。その属性のうち、符号121で示す部分、たとえば「NFB」、「KN」、「KT」、「Z」、「AT」の文字列が「パーツ属性」を示し、一方、符号122で示す部分、たとえば「1」、「2」、「3」、「4」の文字列(数字)が「ピン属性」を示している。なお、パーツ100に付いている属性121、122には、パーツ属性かあるいはピン属性かの情報が付加されている。また、ピン属性122の場合は、図形のどのピンの属性であるかは既に定義されているものとする。
【0042】
また、「パーツのピン」とは、パーツと接続線とを繋ぐことができる点のことであり、「接続線」とは、あるパーツのピンと他のパーツのピンとを結ぶ線、あるいは接続線同士を繋ぐ線のことである。ここで、「パーツのピン」および「接続線」の一例を、図4に示す。同図4において、符号130で示される部分(記号「×」参照)が「パーツのピン」を示し、符号140で示される部分(線分)が「接続線」を示している。
【0043】
さらに、「セグメント領域」とは、図形または文字列(属性)を囲った最小の長方形(矩形)のことである。ここで、図形のセグメント領域の一例を図5に示し(符号150で示される長方形)、属性(つまり文字列)のセグメント領域の一例を図6に示す(符号160で示される長方形)。
【0044】
ところで、図3に示したようなパーツ100、すなわち図形110および属性(つまり文字列)121、122を示すデータ、図4に示したようなピン130および接続線140を示すデータは、補助記憶装置12に格納されており、図形の編集処理時に、主記憶装置13にローディングされる。
【0045】
かかる構成のシンボル回転装置による図形の編集処理について説明する。最初に、図形編集者などのユーザが、たとえばキーボード30又はマウス40を操作して、例えば表示装置20に表示される図形編集エディタ起動用のアイコンやメニューを選択することで、図形編集エディタを起動する旨の指令を入力すると共に、表示装置20に表示されるパーツ名中の編集対象のパーツ名を指定(あるいは選択)する。これら指令データや編集対象のパーツ名を示すデータは、入出力制御部14を介してCPU11に入力される。
【0046】
CPU11は、入力されたデータを基に、補助記憶装置12に記憶されている図形編集エディタ(後述する回転処理手順を示すプログラムを含む)を主記憶装置13に読み込んで起動すると共に、補助記憶装置12に記憶されている編集対象のパーツ名に対応するパーツのデータを主記憶装置13に読み込む。そして、CPU11は、図形編集エディタを実行することで編集対象のパーツに対して回転処理を施す。
【0047】
次に、シンボル回転装置のCPU11による回転処理について、図7を参照して説明する。図7は、その回転処理手順を示すフローチャートである。
【0048】
ここでは、パーツをX度回転させる回転処理について説明するものとし、また、この回転処理するに際し、図形編集エディタおよび編集対象のパーツのデータは、CPU11によって補助記憶装置12から主記憶装置13に読み込まれているものとする。
【0049】
さて、CPU11は、主記憶装置13に読み込んだパーツの属性について、当該パーツに付加されている情報を基に「パーツ属性」と「ピン属性」の二種類に分類する。ここで、読み込まれたパーツの一例を図8に示す。図8に示す例においては、「PINa」、「MEMO」、「PIN2」の各文字列がピン属性であり、それ以外の属性たとえば「PARTS」、「NFB」、「NFB22」などの各文字列がパーツ属性である。また、「PINa」および「MEMO」のピン属性は、図8中のA点のピンAについて関係した文字列であり、一方、「PIN2」のピン属性は、図8中のB点のピンBについて関係した文字列である。
【0050】
次に、CPU11は、読み込んだパーツについて、属性(文字列)ごとのセグメント領域を求めると共に(ステップS11)、図形のセグメント領域を求める(ステップS12)。ここで、求められた属性(文字列)ごとのセグメント領域の一例を図9に示す。この例では、符号201〜209で示される各パーツ属性のセグメント領域と、符号210〜212で示される各ピン属性のセグメント領域とが求められている。この図9に示した例において、さらに図形のセグメント領域220を求めた様子を、図10に示す。この図10では符号201〜212は省略している。
【0051】
なお、図9および図10中の 記号"×" 印は図形ではなく、この回転処理を説明するに際し、ピンを明示するために表記している印であり、実際の図形の一部ではない。このため、セグメント領域を求める際には無視している。
【0052】
続いて、CPU11は、ステップS12で求めたセグメント領域220の各辺を延長して、図11に示すように、図形近傍の領域を、領域1〜領域8の8つの領域に分割し(ステップS13)、さらに、パーツ属性とピン属性の各々の属性をグルーピングすると共に(ステップS14)、グルーピングした属性(文字列)についてセグメント領域を求める(ステップS15)。
【0053】
このグルーピングするに際し、パーツ属性については、ステップS13で求めた各領域について、同じ領域内にある属性同士(文字列同士)をグルーピングする。このとき、パーツ属性が複数の領域に跨っている場合は、パーツ属性のセグメント領域が最も大きく重なっている領域を、当該パーツ属性が属する領域とみなす。一方、ピン属性については、同じピンに属する属性同士(文字列同士)をグルーピングする。このようにしてグルーピングされた結果を図12に示す。
【0054】
この図12に示す例においては、符号201および符号202の各セグメント領域(図9参照)のパーツ属性がグルーピングされて、そのグルーピングされた属性について長方形(矩形)のセグメント領域231が求められている。同様に、符号203および符号204の各セグメント領域のパーツ属性がグルーピングされて、それらの属性についてセグメント領域232が求められている。同様に、符号205〜208の各セグメント領域のパーツ属性がグルーピングされて、それらの属性についてセグメント領域233が求められている。さらに、符号210および符号211の各セグメント領域のピン属性がグルーピングされて、それらの属性についてセグメント領域234が求められている。
【0055】
次に、CPU11は、図12に示したパーツ全体について、図13に示すように、ステップS12で求めた図形のセグメント領域220の中心点を中心としてX度回転する(ステップS16)。ここでは、反時計回り(左回り)方向にX=90度回転させるものとする。
【0056】
続いて、CPU11は、図13に示すパーツの状態から、属性または属性グループについて、図14に示すように、それぞれのセグメント領域の中心点を中心として(−X)度回転する(ステップS17)。ここでは、時計回り(右回り)方向にX=90度回転させている。勿論、反時計回り(左回り)方向に「360−X(=90)」=270度回転させるようにしても良い。
【0057】
最後に、CPU11は、図15に示すパーツの状態(図14に示すパーツと同一の状態)に対して、回転後の属性の重なりを補正する(ステップS18)。この補正処理の詳細については後述するが、ここでは簡単に説明する。
【0058】
まず、ピン属性と図形との重なりを補正することにより、図15に示すパーツの状態(図14に示すパーツと同一の状態)は、図16に示すパーツの状態に変化する。すなわち、図形のセグメント領域220に重なっていたセグメント領域212が、セグメント領域220と重ならない位置に移動されている。
【0059】
また、この状態から、ピン属性同士の重なりを補正すると、図16に示すパーツの状態は図17に示すパーツの状態に変化する。すなわち、互いに重なっていたセグメント領域212とセグメント領域231は、セグメント領域231が所定の位置に移動されて、重ならない状態になっている。
【0060】
さらに、この状態から、パーツ属性と図形との重なりを補正すると、図17に示すパーツの状態は図18に示すパーツの状態に変化する。すなわち、互いに重なっていたセグメント領域220とセグメント領域233は、セグメント領域233が所定の位置に移動されて、重ならない状態になっている。
【0061】
この実施の形態1では、ピン属性またはピン属性グループについては、属する図形のピンをインデックスとする配列によって管理する。たとえばピン1〜4が、図19(a)に示すような配置関係にあるものとした場合には、ピン1〜4の各値をインデックスとして、属性値(つまりピンのピン属性)が登録された配列250とする。この場合、ピン属性の配列250は、インデックス251と属性値252とから構成されている。したがって、CPU11は、パーツの回転前に、図19(b)に示すようなピン属性の配列250を主記憶装置13に作成することで、パーツに対して所定の角度をもって回転処理したとしても、ピンとそのピン属性(属性値)との関係を認識することができる。
【0062】
また、パーツ属性またはパーツ属性グループについては、属する領域をインデックスとする配列によって管理する。たとえば領域1〜8が、図20(a)に示すような配置関係にあるものとした場合には、領域1〜8の各値をインデックスとして、属性値(領域に属するパーツ属性)が登録された配列260とする。この場合、パーツ属性の配列260は、インデックス261と属性値262とから構成されている。したがって、CPU11は、パーツの回転前に、図20(b)に示すようなパーツ属性の配列260を主記憶装置13に作成することで、パーツに対して所定の角度をもって回転処理したとしても、領域とその領域に属するパーツ属性(属性値)との関係を認識することができる。
【0063】
次に、上記ステップS18での回転後の属性の重なりの補正処理について、詳細に説明する。
【0064】
この補正処理においては、回転後のパーツについて、属性同士、または図形と属性との重なりを除くため、次のステップS18−1〜S18−5の順序で属性の位置補正を行う。なお、ステップS18−1〜S18−5の各処理は、ステップS18の処理に含まれるものである。したがって、これら各ステップS18−1〜S18−5の処理手順を含んだ回転処理手順(図7参照)を示すプログラムが、コンピュータ読み取り可能な記録媒体としての補助記憶装置12に格納(記録)されている。
【0065】
ステップS18−1(「ピン属性」と「図形」との重なりの補正)
この補正は、図21に示すように、図形のセグメント領域310と複数(たとえば2つ)のピン属性のセグメント領域321、322とが重なっている場合に、セグメント領域321およびセグメント領域322を移動させることで、「ピン属性」と「図形」とが重複しないようにするためのものである。なお、単一のピン属性が図形と重なるときは、そのピン属性を移動させる。
【0066】
具体的に説明すると、CPU11は、図形中のピンの数をN個と定義して、i=1〜Nまで次の処理を繰り返す。すなわち、図形中のピンiのピン属性またはピン属性のグループのセグメント領域が、図形のセグメント領域に重なる場合、互いの距離が回転前の距離と等しくなるようにピン属性を位置移動する。この場合、位置移動は、図形が存在する方向と反対の方向に行う。
【0067】
たとえば、図22(a)に示すように、回転前の図形のセグメント領域310と回転前の「PIN2」のピン属性のセグメント領域321とが、「t1」の距離をもって配置されていた場合に、回転後でかつ補正前において、図22(b)に示すように図形のセグメント領域310と「PIN2」のピン属性のセグメント領域321とが重なるときは、図22(c)に示すように、「PIN2」のピン属性のセグメント領域321を、互いのセグメント領域の距離が回転前の距離t1と等しくなるように図形(のセグメント領域)とは反対方向(図22(c)の左方向)に移動させる。
【0068】
ステップS18−2(「ピン属性」と「ピン属性」との重なりの補正)
この補正は、図23に示すように、図形のセグメント領域310と複数(たとえば2つ)のピン属性のセグメント領域321、322とは離れているものの、その2つのセグメント領域321、322同士が重なっている場合に、何れかのピン属性を移動させることで、「ピン属性」同士が重複しないようにするためのものである。
【0069】
具体的に説明すると、CPU11は、図形中のピンの数をN個と定義して、i=1〜Nまで次の処理を繰り返す。すなわち、図形中のピンiのピン属性またはピン属性のグループのセグメント領域が、図形中のピン(i−1)のピン属性またはピン属性のグループのセグメント領域に重なる場合、互いの距離が回転前の距離と等しくなるように前者を位置移動する。この場合、位置移動は、図形が存在する方向と反対の方向に行う。
【0070】
たとえば、図24(a)に示すように、回転前の「PIN1」のピン属性のセグメント領域321と回転前の「PIN2」のピン属性のセグメント領域322とが、「t2」(この場合、t2=0)の距離をもって配置されていた場合に、回転後でかつ補正前において、図24(b)に示すように「PIN1」のピン属性のセグメント領域321と「PIN2」のピン属性のセグメント領域322とが重なるときは、図24(c)に示すように、「PIN2」のピン属性のセグメント領域321を、互いのセグメント領域の距離が回転前の距離t2と等しくなるように図形(のセグメント領域)とは反対方向(図24(c)の左方向)に移動させる。
【0071】
ステップS18−3(「パーツ属性」と「図形」との重なりの補正)
この補正は、図25に示すように、図形のセグメント領域310と複数(たとえば2つ)のパーツ属性のセグメント領域331、332とが重なっている場合に、セグメント領域331およびセグメント領域332を移動させることで、「パーツ属性」と「図形」とが重複しないようにするためのものである。なお、単一のパーツ属性が図形と重なるときは、そのパーツ属性を移動させる。
【0072】
具体的に説明すると、CPU11は、領域の数を「8」と定義して、j=1〜8まで次の処理を繰り返す。すなわち、領域jに属するパーツ属性のセグメント領域またはパーツ属性のグループのセグメント領域が、図形のセグメント領域に重なる場合、互いの距離が回転前の距離と等しくなるようにパーツ属性を位置移動する。この場合、位置移動は、図形が存在する方向と反対の方向に行う。
【0073】
たとえば、図26(a)に示すように、回転前の図形のセグメント領域310と回転前の「パーツ属性」のセグメント領域331とが、「t3」の距離をもって配置されていた場合に、回転後でかつ補正前において、図26(b)に示すように図形のセグメント領域310と「パーツ属性」のセグメント領域331とが重なるときは、図26(c)に示すように、「パーツ属性」のセグメント領域331を、互いのセグメント領域の距離が回転前の距離t3と等しくなるように図形(のセグメント領域)とは反対方向(図26(c)の左方向)に移動させる。
【0074】
ステップS18−4(「ピン属性」と「パーツ属性」との重なりの補正)
この補正は、図27に示すように、図形のセグメント領域310とピン属性のセグメント領域321およびパーツ属性のセグメント領域331とは離れているものの、ピン属性のセグメント領域321とパーツ属性のセグメント領域331とが重なっている場合に、パーツ属性を移動させることで、「ピン属性」と「パーツ属性」とが重複しないようにするためのものである。
【0075】
具体的に説明すると、CPU11は、領域の数を「8」と定義して、j=1〜8まで次の処理を繰り返す。すなわち、領域ごとの繰返しの処理において、さらに図形中のピンの数をN個と定義して、i=1〜Nまで次の処理を繰り返す。すなわち、領域jに属するパーツ属性のセグメント領域またはパーツ属性のグループのセグメント領域が、図形中のピンiのピン属性またはピン属性のグループのセグメント領域が、図形のセグメント領域に重なる場合、互いの距離が回転前の距離と等しくなるように前者を位置移動する。この場合、位置移動は、図形が存在する方向と反対の方向に行う。
【0076】
ステップS18−5(「パーツ属性」と「パーツ属性」との重なりの補正)
この補正は、図28に示すように、図形のセグメント領域310と複数(たとえば2つ)のパーツ属性のセグメント領域331、332とは離れているものの、パーツ属性のセグメント領域331とパーツ属性のセグメント領域332とが重なっている場合に、何れかのパーツ属性を移動させることで、「パーツ属性」同士が重複しないようにするためのものである。
【0077】
具体的に説明すると、CPU11は、領域の数を「8」と定義して、j=1〜8まで次の処理を繰り返す。すなわち、領域ごとの繰返しの処理において、さらに図形中のピンの数をN個と定義して、i=1〜Nまで次の処理を繰り返す。すなわち、領域jに属するパーツ属性のセグメント領域同士またはパーツ属性のグループのセグメント領域同士が重なる場合、互いの距離が回転前の距離と等しくなるように何れかの属性を位置移動する。この場合、位置移動は、図形が存在する方向と反対の方向に行う。
【0078】
ここで、「ピン属性」と「パーツ属性」との重なりの補正および「パーツ属性」と「パーツ属性」のと重なりの補正について、具体例を挙げて説明する。
【0079】
たとえば、図29(a)に示すように、回転前の「PIN1」のピン属性のセグメント領域321と回転前の「パーツ属性1」のパーツ属性のセグメント領域331とが、「t4」の距離をもって配置され、また、回転前の「パーツ属性1」のパーツ属性のセグメント領域331と回転前の「パーツ属性2」のパーツ属性のセグメント領域332とが、「t5」の距離をもって配置されていた場合とする。
【0080】
そして、回転後でかつ補正前において、図29(b)に示すように「PIN1」のピン属性のセグメント領域321と「パーツ属性1」のパーツ属性のセグメント領域331とが重なり、さらに「パーツ属性1」のパーツ属性のセグメント領域331と「パーツ属性2」のパーツ属性のセグメント領域332とが重なるときは、最初に、図29(c)に示すように、「パーツ属性1」のセグメント領域331を、「PIN1」のセグメント領域321との間の距離が回転前の距離t4と等しくなるように図形(のセグメント領域)とは反対方向(図29(c)の左方向)に移動させる。
【0081】
この図29(c)のパーツの状態においては、依然として、「パーツ属性1」のセグメント領域331と「パーツ属性2」のセグメント領域332とが重なっているので、このようなときは、図29(d)に示すように、「パーツ属性2」のセグメント領域332を、互いのセグメント領域の距離が回転前の距離t5と等しくなるように図形(のセグメント領域)とは反対方向(図29(d)の左方向)に移動させる。
【0082】
上述した回転処理手順にしたがって回転処理した場合のパーツの例を図30および図31に示す。図30に示す例では、回転前のパーツ410が、反時計回りに90度回転処理されて、パーツ410Aの状態になっている。また、図31に示す例では、回転前のパーツ420が、反時計回りに90度回転処理されてパーツ420Aの状態になり、このパーツ420Aが、反時計回りに180度回転処理されてパーツ420Bの状態になり、さらに、このパーツ420Bが、反時計回りに270度(あるいは時計回り90度)回転処理されてパーツ420Cの状態になっている。
【0083】
なお、上述した実施の形態1では、シンボル回転装置(コンピュータ)の各機能を実現し、上記回転処理の回転処理手順を示すプログラムを、記録媒体としてのハードディスク等の補助記憶装置12に記録するようにしているが、本発明はこれに限定されることなく、次のようにしても良い。
【0084】
すなわち、上記プログラムをROMに格納しておき、CPU11が、このプログラムをこのROMから主記憶装置13へローディングして実行するようにしても良い。
【0085】
また、上記プログラムを、DVD−ROM、CD−ROM、MO(光磁気ディスク)、フロッピーディスクなどのコンピュータ読み取り可能な記憶媒体に格納して配布するようにしても良い。この場合、その記録媒体に記録されたプログラムをシンボル回転装置(コンピュータ)がインストールした後、このプログラムをCPU11が実行するようにする。このプログラムのインストール先としては、RAMやEPROM等のメモリやハードディスクなどの記憶装置がある。そして、シンボル回転装置(コンピュータ)は、必要に応じてこの記憶装置に記憶したプログラムを主記憶装置13にローディングして実行するようにする。
【0086】
さらには、シンボル回転装置(コンピュータ)を電気通信回線(たとえばインターネット)を介してサーバ装置あるいはホストコンピュータ等のコンピュータと接続するようにし、当該シンボル回転装置(コンピュータ)が、サーバ装置あるいはコンピュータから上記プログラムをダウンロードした後、このプログラムをCPU11が実行するようにしても良い。この場合、このプログラムのダウンロード先としては、RAMやEPROM等のメモリやハードディスクなどの記憶装置(記録媒体)がある。そして、当該シンボル回転装置(コンピュータ)が、必要に応じてこの記憶装置に記憶された上記プログラムを主記憶装置13にローディングして実行するようにする。
【0087】
また、上述した実施の形態1においては、上述したシンボル回転装置をCAD(コンピュータ支援による設計)システムに適用することができる。このCADシステム(たとえば電気系CADシステム)においても、上述したシンボル回転装置による回転処理と同様の回転処理を実行することができ、これにより、テキスト付き電子部品図形を、図形と属性とが、また属性同士が重なり合うことなく、回転させることができる。
【0088】
さらに、上述した実施の形態1においては、上述したシンボル回転装置を図形編集システムに適用することもできる。この図形編集システムにおいても、上述したシンボル回転装置による回転処理と同様の回転処理を実行することができ、これにより、テキスト付き図形を、図形と属性とが、また属性同士が重なり合うことなく、回転させることができる。
【0089】
以上説明したように、この実施の形態1によれば、上述した回転処理手順にしたがって電子部品図形を回転させることで、互いに属性が重なり合うことが無く、しかも、図形のある点に属性を関連付けし無くても、図形と属性とが、また属性同士が重なり合わずに回転させることができる。
【0090】
また、この実施の形態1によれば、上述した回転処理手順にしたがって電子部品図形を回転させることで、電子部品図形の回転編集時に人手による修正を行う必要がなく、図面の設計作業の効率化を図ることができる。
【0091】
さらに、この実施の形態1によれば、ピン属性およびパーツ属性を配列(図19および図20参照)で管理するようにしているので、電子部品データを回転角度ごとに登録する必要がないこととなり、よって電子部品データの管理および保守の軽減を図ることができる。
【0092】
【発明の効果】
以上説明したように、この発明によれば、文字列と図形中のある点とを関連付けし無くとも、文字列と図形とが重なり合わず、しかも文字列同士が重なり合うこと無く、文字列および図形を有するシンボル(たとえば電子部品図形)を回転させることができる。また、文字列と図形とが重なり合わず、しかも文字列同士が重なり合うこと無く、シンボル(たとえば電子部品図形)を回転させることができるので、電子部品図形の回転編集時に人手による修正を行う必要がなく、図面の設計作業の効率化を図ることができる。
【0093】
つぎの発明によれば、回転処理後の文字列が図形と重なり合うような場合には、これらが重ならないように、文字列が移動されるので、確実に、文字列と図形とが重なり合わないように、シンボル(たとえば電子部品図形)を回転させることができる。
【0094】
つぎの発明によれば、文字列と図形中のある点とを関連付けし無くとも、文字列と図形とが重なり合わず、しかも文字列同士が重なり合うこと無く、文字列および図形を有するシンボル(たとえば電子部品図形)を回転させることができる。また、文字列と図形とが重なり合わず、しかも文字列同士が重なり合うこと無く、シンボル(たとえば電子部品図形)を回転させることができるので、電子部品図形の回転編集時に人手による修正を行う必要がなく、図面の設計作業の効率化を図ることができる。
【0095】
つぎの発明によれば、回転処理前の複数の文字列がグルーピングされるので、このグルーピングされた複数の文字列同士については、回転処理された後においては重なり合うことがないので、より一層、文字列同士が重なり合うことを防止することができる。
【0096】
つぎの発明によれば、回転処理後の文字列が図形と重なり合うような場合には、これらが重ならないように文字列が移動(文字列の位置が補正)されるので、確実に、文字列と図形とが重なり合わないように、シンボル(たとえば電子部品図形)を回転させることができる。
【0097】
つぎの発明によれば、回転処理後の複数の文字列同士が重なり合うような場合には、これらが重ならないように単一文字列又はグルーピングされた文字列単位で、何れかの文字列が移動(文字列の位置が補正)されるので、確実に、文字列同士が重なり合わないように、シンボル(たとえば電子部品図形)を回転させることができる。
【0098】
つぎの発明によれば、文字列と図形中のある点とを関連付けし無くとも、文字列と図形とが重なり合わず、しかも文字列同士が重なり合うこと無く、文字列および図形を有するシンボル(たとえば電子部品図形)を回転させることができる。また、文字列と図形とが重なり合わず、しかも文字列同士が重なり合うこと無く、シンボル(たとえば電子部品図形)を回転させることができるので、電子部品図形の回転編集時に人手による修正を行う必要がなく、図面の設計作業の効率化を図ることができる。
【0099】
つぎの発明によれば、回転処理後の文字列が図形と重なり合うような場合には、これらが重ならないように、文字列が移動されるので、確実に、文字列と図形とが重なり合わないように、シンボル(たとえば電子部品図形)を回転させることができる。
【0100】
つぎの発明によれば、文字列と図形中のある点とを関連付けし無くとも、文字列と図形とが重なり合わず、しかも文字列同士が重なり合うこと無く、文字列および図形を有するシンボル(たとえば電子部品図形)を回転させることができる。また、文字列と図形とが重なり合わず、しかも文字列同士が重なり合うこと無く、シンボル(たとえば電子部品図形)を回転させることができるので、電子部品図形の回転編集時に人手による修正を行う必要がなく、図面の設計作業の効率化を図ることができる。
【0101】
つぎの発明によれば、回転処理前の複数の文字列がグルーピングされるので、このグルーピングされた複数の文字列同士については、回転処理された後においては重なり合うことがないので、より一層、文字列同士が重なり合うことを防止することができる。
【0102】
つぎの発明によれば、回転処理後の文字列が図形と重なり合うような場合には、これらが重ならないように文字列が移動(文字列の位置が補正)されるので、確実に、文字列と図形とが重なり合わないように、シンボル(たとえば電子部品図形)を回転させることができる。
【0103】
つぎの発明によれば、回転処理後の複数の文字列同士が重なり合うような場合には、これらが重ならないように単一文字列又はグルーピングされた文字列単位で、何れかの文字列が移動(文字列の位置が補正)されるので、確実に、文字列同士が重なり合わないように、シンボル(たとえば電子部品図形)を回転させることができる。
【0104】
つぎの発明によれば、上記の発明のいずれか一つに記載された方法をコンピュータに実行させるプログラムをコンピュータが読み取り実行することで、文字列と図形中のある点とを関連付けし無くとも、文字列と図形とが重なり合わず、しかも文字列同士が重なり合うこと無く、文字列および図形を有するシンボル(たとえば電子部品図形)を回転させることができる。また、文字列と図形とが重なり合わず、しかも文字列同士が重なり合うこと無く、シンボル(たとえば電子部品図形)を回転させることができるので、電子部品図形の回転編集時に人手による修正を行う必要がなく、図面の設計作業の効率化を図ることができる。
【0105】
つぎの発明によれば、文字列と図形中のある点とを関連付けし無くとも、文字列と図形とが重なり合わず、しかも文字列同士が重なり合うこと無く、文字列および図形を有するシンボル(たとえば電子部品図形)を回転させることができるCADシステムを得ることができる。また、文字列と図形とが重なり合わず、しかも文字列同士が重なり合うこと無く、シンボル(たとえば電子部品図形)を回転させることができるので、電子部品図形の回転編集時に人手による修正を行う必要がなく、図面の設計作業の効率化を図ることができるCADシステムを得ることができる。
【0106】
つぎの発明によれば、文字列と図形中のある点とを関連付けし無くとも、文字列と図形とが重なり合わず、しかも文字列同士が重なり合うこと無く、文字列および図形を有するシンボル(たとえば電子部品図形)を回転させることができるCADシステムを得ることができる。また、文字列と図形とが重なり合わず、しかも文字列同士が重なり合うこと無く、シンボル(たとえば電子部品図形)を回転させることができるので、電子部品図形の回転編集時に人手による修正を行う必要がなく、図面の設計作業の効率化を図ることができるCADシステムを得ることができる。
【0107】
つぎの発明によれば、文字列と図形中のある点とを関連付けし無くとも、文字列と図形とが重なり合わず、しかも文字列同士が重なり合うこと無く、文字列および図形を有するシンボル(たとえば電子部品図形)を回転させることができる図形編集システムを得ることができる。また、文字列と図形とが重なり合わず、しかも文字列同士が重なり合うこと無く、シンボル(たとえば電子部品図形)を回転させることができるので、電子部品図形の回転編集時に人手による修正を行う必要がなく、図面の設計作業の効率化を図ることができる図形編集システムを得ることができる。
【0108】
つぎの発明によれば、文字列と図形中のある点とを関連付けし無くとも、文字列と図形とが重なり合わず、しかも文字列同士が重なり合うこと無く、文字列および図形を有するシンボルを回転させることができる図形編集システムを得ることができる。また、文字列と図形とが重なり合わず、しかも文字列同士が重なり合うこと無く、シンボルを回転させることができるので、電子部品図形の回転編集時に人手による修正を行う必要がなく、図面の設計作業の効率化を図ることができる図形編集システムを得ることができる。
【図面の簡単な説明】
【図1】 この発明の実施の形態1であるシンボル回転装置の構成を示すブロック図である。
【図2】 パーツの例を説明するための図である。
【図3】 パーツ、図形および属性の定義を説明するための図である。
【図4】 ピンおよび接続線の定義を説明するための図である。
【図5】 図形のセグメント領域を説明するための図である。
【図6】 属性のセグメント領域を説明するための図である。
【図7】 図1に示したシンボル回転装置による回転処理手順を示すフローチャートである。
【図8】 読み込まれたパーツのピン属性とパーツ属性を説明するための図である。
【図9】 図7に示した回転処理手順のステップS11の処理内容を説明するための図である。
【図10】 図7に示した回転処理手順のステップS12の処理内容を説明するための図である。
【図11】 図7に示した回転処理手順のステップS13の処理内容を説明するための図である。
【図12】 図7に示した回転処理手順のステップS14、S15の処理内容を説明するための図である。
【図13】 図7に示した回転処理手順のステップS16の処理内容を説明するための図である。
【図14】 図7に示した回転処理手順のステップS17の処理内容を説明するための図である。
【図15】 図7に示した回転処理手順のステップS18の処理内容を説明するための図である。
【図16】 図7に示した回転処理手順のステップS18の処理内容を説明するための図である。
【図17】 図7に示した回転処理手順のステップS18の処理内容を説明するための図である。
【図18】 図7に示した回転処理手順のステップS18の処理内容を説明するための図である。
【図19】 補正処理する際に参照されるピン属性の配列を説明するための図である。
【図20】 補正処理する際に参照されるパーツ属性の配列を説明するための図である。
【図21】 補正処理におけるピン属性と図形との重なりの補正を説明するための図である。
【図22】 補正処理におけるピン属性と図形との重なりの補正を説明するための図である。
【図23】 補正処理におけるピン属性とピン属性との重なりの補正を説明するための図である。
【図24】 補正処理におけるピン属性とピン属性との重なりの補正を説明するための図である。
【図25】 補正処理におけるパーツ属性と図形との重なりの補正を説明するための図である。
【図26】 補正処理におけるパーツ属性と図形との重なりの補正を説明するための図である。
【図27】 補正処理におけるピン属性とパーツ属性との重なりの補正を説明するための図である。
【図28】 補正処理におけるパーツ属性とパーツ属性との重なりの補正を説明するための図である。
【図29】 補正処理におけるピン属性とパーツ属性との重なりの補正およびパーツ属性とパーツ属性との重なりの補正を説明するための図である。
【図30】 回転処理処理手順にしたがって回転したパーツの例を説明するための図である。
【図31】 回転処理処理手順にしたがって回転したパーツの例を説明するための図である。
【符号の説明】
10 装置本体、11 CPU、12 補助記憶装置、13 主記憶装置、14 入出力制御部、20 表示装置、30 キーボード、40 マウス、100パーツ、110 図形、121 パーツ属性、122 ピン属性、130 ピン、140 接続線、150,160,201〜212,220,231〜234,310,321,322,331,332 セグメント領域、250 ピン属性の配列、260 パーツ属性の配列。
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a symbol rotation device that executes a rotation process on a symbol having a character string and a graphic, a symbol rotation method, a program that causes a computer to execute the method, a CAD system, and a graphic editing system.
[0002]
[Prior art]
When creating CAD (computer-aided design) drawings, a lot of work is required to rotate and arrange one part at a certain angle. On the other hand, the orientation of the attribute of the rotated part is normally horizontal writing, and if the part is simply rotated, the figure and the attribute may overlap with each other. In such a case, the CAD worker has corrected the position of the attribute.
[0003]
As a method for reducing such correction of attribute positions, an image data rotation method described in Japanese Patent Application Laid-Open No. 62-206777 is known. In this image data rotation method, rotation processing is performed while maintaining the positional relationship between the coordinates related to the figure and the center coordinates of the character closest to the coordinates, and the character is related to the figure. Corrections are made so as not to overlap the coordinates. Then, the character is displayed without changing the character direction at the position of the obtained character coordinate. That is, the character data is translated in accordance with the rotated figure without changing the character display direction. Thereby, the character does not rotate, and the graphic and the character do not overlap.
[0004]
[Problems to be solved by the invention]
However, the image data rotation method described in the above publication assumes that the character string is associated with a certain point in the graphic, so if there is no association, the character string is associated with a certain point in the graphic. Therefore, it is necessary to change the part information for rotation.
[0005]
The present invention has been made in view of the above, and without associating the character string with a certain point in the graphic, the character string and the graphic do not overlap with each other, and the character strings do not overlap with each other. And a symbol rotating method, a symbol rotating method, a program for causing a computer to execute the method, a CAD system, and a graphic editing system.
[0006]
[Means for Solving the Problems]
In order to achieve the above object, a symbol rotation device according to the present invention is a symbol rotation device that performs a rotation process on a symbol having a character string and a graphic, and a first area obtaining means for obtaining a segment area of the character string. A second area obtaining means for obtaining a segment area of the graphic, and a rotation process with respect to the symbol at an angle α in a predetermined rotation direction around the center point of the segment area obtained by the second area obtaining means. The first rotation processing means to be executed and the character string in the symbol after the rotation processing by the first rotation processing means are rotated around the center point of the segment area obtained by the first area obtaining means. And a second rotation processing means for executing the rotation processing at an angle β so that the same display direction as before the processing is provided. To do.
[0007]
According to this invention, the first rotation processing means rotates the symbol having the character string and the figure with an angle α in the predetermined rotation direction around the center point of the segment area obtained by the second area obtaining means. When the process is executed, the second rotation processing unit, with respect to the character string in the symbol after the rotation processing by the first rotation processing unit, centering on the center point of the segment area obtained by the first area obtaining unit, The rotation process is executed at an angle β so that the display direction is the same as that before the rotation process.
[0008]
In the symbol rotation device according to the next invention, in the above invention, when the segment area of the character string after the rotation processing by the second rotation processing means overlaps the segment area of the graphic, these segment areas overlap. It is further characterized by further comprising a moving means for moving the segment area of the character string so as not to cause the error.
[0009]
According to this invention, when the segment area of the character string after the rotation processing by the second rotation processing means overlaps with the segment area of the figure, the character string is prevented from being overlapped by the moving means. The segment area is moved to a predetermined position.
[0010]
A symbol rotation device according to the next invention is a symbol rotation device that performs a rotation process on a symbol having a plurality of character strings and figures, and a first area obtaining means for obtaining a segment area for each character string; A second area obtaining means for obtaining a segment area of the graphic; a grouping means for grouping the plurality of character strings according to a predetermined rule; and a third area for obtaining a segment area of the character strings grouped by the grouping means. Area determining means, first rotation processing means for executing a rotation process at an angle α in a predetermined rotation direction around the center point of the segment area determined by the second area determining means with respect to the symbol; The character string in the symbol after the rotation processing by the first rotation processing means is performed by the first area obtaining means. Second rotation for executing rotation processing at an angle β so as to be in the same display direction as before rotation processing around the center point of the obtained segment region or the segment region obtained by the third region obtaining means And a processing means.
[0011]
According to this invention, the first rotation processing means has an angle α in a predetermined rotation direction about the center point of the segment area obtained by the second area obtaining means with respect to a symbol having a plurality of character strings and figures. When the rotation process is executed, the second rotation processing means performs the rotation process before the rotation process around the center point of the segment area obtained by the first area obtaining means or the segment area obtained by the third area obtaining means. Rotation processing is executed at an angle β so that the same display direction is obtained.
[0012]
The symbol rotating apparatus according to the next invention is the symbol rotating apparatus according to the above invention, further comprising a dividing means for extending each side of the segment area of the figure obtained by the second area obtaining means to divide the area near the figure. And the grouping means groups the plurality of character strings on the basis of each region after the division processing by the dividing means.
[0013]
According to this invention, when the dividing means extends each side of the segment area of the graphic obtained by the second area obtaining means and divides the area near the graphic, the grouping means performs the dividing process by the dividing means. A plurality of character strings are grouped based on each subsequent area.
[0014]
In the symbol rotation device according to the next invention, in the above invention, when the segment area of the character string after the rotation processing by the second rotation processing means overlaps the segment area of the graphic, these segment areas overlap. It is further characterized by further comprising a moving means for moving the segment area of the character string so as not to cause the error.
[0015]
According to this invention, when the segment area of the character string after the rotation processing by the second rotation processing means overlaps with the segment area of the figure, the character string is prevented from being overlapped by the moving means. The segment area is moved to a predetermined position.
[0016]
In the symbol rotation device according to the next invention, in the above invention, when segment areas of a plurality of character strings after the movement process by the moving means overlap, the first area is set so that these segment areas do not overlap. Character string moving means for moving the segment area of the character string in units of segment areas obtained by the obtaining means or the third area obtaining means is further provided.
[0017]
According to the present invention, when the segment areas of a plurality of character strings after the movement process by the moving means overlap, the first area determining means or the third area by the character string moving means so that the segment areas do not overlap. The segment area of the character string is moved to a predetermined position in the segment area unit obtained by the area obtaining means.
[0018]
A symbol rotation method according to the next invention is a symbol rotation method for executing a rotation process on a symbol having a character string and a graphic, a first area determining step for determining a segment area of the character string, and a segment of the graphic A second area obtaining step for obtaining an area, and a first rotation process for the symbol with a predetermined rotation direction at an angle α about the center point of the segment area obtained by the second area obtaining step. The character string in the symbol after the rotation processing step and the rotation processing in the first rotation processing step is the same as before the rotation processing around the center point of the segment area obtained by the first area obtaining step. And a second rotation processing step of performing rotation processing at an angle β so as to be in the display direction.
[0019]
According to this invention, in the first rotation processing step, the symbol having the character string and the figure is rotated at an angle α in the predetermined rotation direction around the center point of the segment area obtained by the second area obtaining means. When the process is executed, with the second rotation processing step, the character string in the symbol after the rotation processing by the first rotation processing means is centered on the center point of the segment area obtained by the first area obtaining means. The rotation process is executed at an angle β so that the display direction is the same as that before the rotation process.
[0020]
In the symbol rotation method according to the next invention, in the above invention, when the segment region of the character string after the rotation processing in the second rotation processing step overlaps the segment region of the graphic, these segment regions overlap. It is further characterized by further including a moving step of moving the segment area of the character string so as not to cause the error.
[0021]
According to this invention, when the segment area of the character string after being rotated in the second rotation process step overlaps with the segment area of the graphic, the moving area includes the segment area so that the segment areas do not overlap. The segment area of the character string is moved to a predetermined position.
[0022]
A symbol rotation method according to the next invention is a symbol rotation method for executing a rotation process on a symbol having a plurality of character strings and figures, and a first area obtaining step for obtaining a segment area for each character string; A second region determining step for determining a segment region of the graphic; a grouping step for grouping the plurality of character strings in accordance with a predetermined rule; and a third region for determining a segment region for the character strings grouped by the grouping step. An area determining step, and a first rotation processing step for executing a rotation process at an angle α in a predetermined rotation direction around the center point of the segment area determined by the second area determining step with respect to the symbol; For the character string in the symbol after the rotation processing in the first rotation processing step, the first region determination step A second rotation that performs rotation processing at an angle β so as to be in the same display direction as before rotation processing, with the center point of the segment region determined by the third segment determination step or the determined segment region as the center And a processing step.
[0023]
According to this invention, in the first rotation processing step, the angle α in the predetermined rotation direction about the center point of the segment area obtained by the second area obtaining means for the symbol having a plurality of character strings and figures. When the rotation process is executed with the second rotation process step, the center area of the segment area obtained by the first area obtaining means or the segment area obtained by the third area obtaining means is set as the center before the rotation process. Rotation processing is executed at an angle β so that the same display direction is obtained.
[0024]
In the symbol rotation method according to the next invention, in the above invention, a dividing step of dividing each region in the vicinity of the figure by extending each side of the segment region of the figure obtained by the second region obtaining step is further provided. And the grouping step groups the plurality of character strings on the basis of each region after the division processing by the division step.
[0025]
According to the present invention, by dividing each area of the figure segment area obtained by the second area obtaining means by the dividing step and dividing the area in the vicinity of the figure, the dividing process by the dividing means is performed by the grouping process. A plurality of character strings are grouped based on each subsequent area.
[0026]
In the symbol rotation method according to the next invention, in the above invention, when the segment region of the character string after the rotation processing in the second rotation processing step overlaps the segment region of the graphic, these segment regions overlap. It is further characterized by further including a moving step of moving the segment area of the character string so as not to cause the error.
[0027]
According to this invention, when the segment area of the character string after being rotated in the second rotation process step overlaps with the segment area of the graphic, the moving area includes the segment area so that the segment areas do not overlap. The segment area of the character string is moved to a predetermined position.
[0028]
In the symbol rotation method according to the next invention, in the above invention, when segment areas of a plurality of character strings after the movement process by the movement process overlap, the first area is set so that these segment areas do not overlap. The method further includes a character string moving step of moving the segment area of the character string in units of segment areas obtained by the obtaining step or the third area obtaining step.
[0029]
According to this invention, when the segment areas of a plurality of character strings after being moved by the moving process overlap, the first area determining process or the character string moving process does not overlap the segment areas or The segment area of the character string is moved to a predetermined position in the segment area unit obtained by the third area obtaining step.
[0030]
A program according to the next invention is a program for causing a computer to execute the method described in any one of the above inventions, and the program can be read by a computer, whereby the operation according to any one of the above inventions is performed. Can be executed by a computer.
[0031]
The CAD system according to the next invention is characterized in that symbol rotation processing is executed according to the method described in any one of the above inventions.
[0032]
The CAD system according to the next invention is characterized by executing symbol rotation processing according to the method described in any one of the above inventions by executing the program.
[0033]
The graphic editing system according to the next invention is characterized by executing a symbol rotation process according to the method described in any one of the above inventions.
[0034]
The graphic editing system according to the next invention is characterized by executing symbol rotation processing according to the method described in any one of the above inventions by executing the program.
[0035]
DETAILED DESCRIPTION OF THE INVENTION
Exemplary embodiments of a symbol rotation device, a symbol rotation method, a program for causing a computer to execute the method, a CAD system, and a graphic editing system according to the present invention will be described below in detail with reference to the accompanying drawings.
[0036]
Embodiment 1.
FIG. 1 is a block diagram showing a configuration of a symbol rotation device according to an embodiment of the present invention. In FIG. 1, the symbol rotation device includes a device main body 10, a display device 20, a keyboard 30 and a mouse 40. Such a symbol rotation device is realized by a computer such as a general-purpose computer, a personal computer, or a workstation.
[0037]
The apparatus main body 10 includes a CPU 11 for overall control of the entire apparatus, an auxiliary storage device 12 configured with a recording medium such as a hard disk, a main storage device 13 configured with a recording medium such as a RAM, and an input / output control unit. 14. The auxiliary storage device 12 stores a graphic editing editor including data indicating an electronic component graphic with text and a program indicating a rotation algorithm (rotation processing procedure) described later. The main storage device 13 stores programs and data loaded from the auxiliary storage device 12, input data from the keyboard 30 or mouse 40, and data necessary for the CPU 11 to perform arithmetic processing.
[0038]
The CPU 11 accesses the auxiliary storage device 12 and the main storage device 13 and executes processing based on, for example, a rotation processing procedure described later. Note that the CPU 11 has a display device 20 for displaying display information such as electronic part graphics with text via the input / output control unit 14, a keyboard 30 for inputting instructions for starting the graphic editing editor, and various input data. A mouse 40 is connected.
[0039]
Here, the terms "part", "figure", "attribute", "part attribute", "pin attribute", "pin of part", "connection line" and "segment area" described in the following explanation Define.
[0040]
“Parts” are symbols such as electrogram symbols. “Graphic” means a graphic part other than a character string in a part. An “attribute” is a character string other than a graphic. The “part attribute” is a character string that describes the type and function of the entire part. The “pin attribute” is a character string that describes the function of the pin of the part. Here, an example of parts is shown in FIGS. 2A to 2C, and examples of “figure”, “attribute”, “part attribute”, and “pin attribute” are shown in FIG.
[0041]
In the example of FIG. 3, a portion indicated by reference numeral 100 (portion surrounded by a dotted line) indicates “parts”, and a portion indicated by reference numeral 110 (portion surrounded by a dotted line) indicates “graphics”. Further, the portions indicated by reference numerals 121 and 122 indicate “attributes”. Among the attributes, a part indicated by reference numeral 121, for example, a character string “NFB”, “KN”, “KT”, “Z”, “AT” indicates “part attribute”, while a part indicated by reference numeral 122, For example, character strings (numbers) of “1”, “2”, “3”, and “4” indicate “pin attribute”. Note that the attributes 121 and 122 attached to the part 100 are added with information indicating whether the attribute is a part attribute or a pin attribute. In the case of the pin attribute 122, it is assumed that which pin attribute of the figure is already defined.
[0042]
In addition, “part pin” is a point that can connect a part and a connection line, and “connection line” is a line that connects a pin of one part and a pin of another part, or between connection lines. It is a line that connects the two. An example of “part pins” and “connection lines” is shown in FIG. In FIG. 4, the part indicated by reference numeral 130 (see the symbol “x”) indicates “part pin”, and the part (line segment) indicated by reference numeral 140 indicates “connection line”.
[0043]
Further, the “segment area” is a minimum rectangle (rectangle) surrounding a figure or a character string (attribute). Here, an example of the segment area of the figure is shown in FIG. 5 (rectangle indicated by reference numeral 150), and an example of the segment area of the attribute (that is, a character string) is shown in FIG. 6 (rectangle indicated by reference numeral 160).
[0044]
By the way, the part 100 as shown in FIG. 3, that is, the data indicating the graphic 110 and the attributes (that is, the character strings) 121 and 122, the data indicating the pins 130 and the connection lines 140 as shown in FIG. 12 and loaded into the main storage device 13 during graphic editing processing.
[0045]
A graphic editing process performed by the symbol rotation apparatus having the above configuration will be described. First, a user such as a graphic editor operates the keyboard 30 or the mouse 40, for example, and selects the graphic editing editor start icon or menu displayed on the display device 20, for example, to start the graphic editing editor. A command to that effect is input, and a part name to be edited in the part name displayed on the display device 20 is designated (or selected). These command data and data indicating the name of the part to be edited are input to the CPU 11 via the input / output control unit 14.
[0046]
Based on the input data, the CPU 11 reads and activates a graphic editing editor (including a program showing a rotation processing procedure described later) stored in the auxiliary storage device 12 into the main storage device 13 and starts the auxiliary storage device. 12 stores the part data corresponding to the part name to be edited stored in the main memory 13. Then, the CPU 11 performs a rotation process on the part to be edited by executing the graphic editing editor.
[0047]
Next, rotation processing by the CPU 11 of the symbol rotation device will be described with reference to FIG. FIG. 7 is a flowchart showing the rotation processing procedure.
[0048]
Here, the rotation processing for rotating the part by X degrees will be described. In addition, the graphic editing editor and the data of the part to be edited are read from the auxiliary storage device 12 into the main storage device 13 by the CPU 11 during the rotation processing. It shall be assumed.
[0049]
The CPU 11 classifies the part attributes read into the main storage device 13 into two types of “part attributes” and “pin attributes” based on information added to the parts. Here, an example of the read parts is shown in FIG. In the example shown in FIG. 8, each character string “PINa”, “MEMO”, and “PIN2” is a pin attribute, and other character strings such as “PARTS”, “NFB”, “NFB22”, and the like. Is a part attribute. Further, the pin attributes of “PINa” and “MEMO” are character strings related to the pin A at point A in FIG. 8, while the pin attribute of “PIN2” is the pin B at point B in FIG. Is a related string.
[0050]
Next, the CPU 11 obtains a segment area for each attribute (character string) for the read part (step S11) and obtains a segment area for a graphic (step S12). Here, FIG. 9 shows an example of the segment area for each attribute (character string) obtained. In this example, a segment area of each part attribute indicated by reference numerals 201 to 209 and a segment area of each pin attribute indicated by reference numerals 210 to 212 are obtained. FIG. 10 shows how the segment area 220 of the graphic is further obtained in the example shown in FIG. In FIG. 10, reference numerals 201 to 212 are omitted.
[0051]
Note that the symbol “x” in FIGS. 9 and 10 is not a graphic, but is a mark that is used to clearly indicate a pin when explaining this rotation process, and is not a part of an actual graphic. For this reason, it is ignored when determining the segment area.
[0052]
Subsequently, the CPU 11 extends each side of the segment area 220 obtained in step S12, and divides the area in the vicinity of the figure into eight areas, area 1 to area 8, as shown in FIG. 11 (step S13). Further, the part attribute and the pin attribute are grouped (step S14), and a segment area is obtained for the grouped attribute (character string) (step S15).
[0053]
In this grouping, with regard to the part attributes, attributes (character strings) in the same area are grouped for each area obtained in step S13. At this time, if the part attribute extends over a plurality of areas, the area where the segment areas of the part attribute overlap most greatly is regarded as the area to which the part attribute belongs. On the other hand, for pin attributes, attributes belonging to the same pin (character strings) are grouped. The results of grouping in this way are shown in FIG.
[0054]
In the example shown in FIG. 12, the part attributes of the segment areas 201 and 202 (see FIG. 9) are grouped, and a rectangular (rectangular) segment area 231 is obtained for the grouped attributes. . Similarly, the part attributes of the segment areas 203 and 204 are grouped, and the segment area 232 is obtained for these attributes. Similarly, the part attributes of the segment areas 205 to 208 are grouped, and the segment area 233 is obtained for these attributes. Further, the pin attributes of the segment areas denoted by reference numerals 210 and 211 are grouped, and the segment area 234 is obtained for these attributes.
[0055]
Next, as shown in FIG. 13, the CPU 11 rotates the entire part shown in FIG. 12 by X degrees around the center point of the segment area 220 of the graphic obtained in step S12 (step S16). Here, it is assumed that X = 90 degrees is rotated counterclockwise (counterclockwise).
[0056]
Subsequently, the CPU 11 rotates the attribute or attribute group from the state of the part shown in FIG. 13 by (−X) degrees around the center point of each segment area as shown in FIG. 14 (step S17). Here, X = 90 degrees is rotated in the clockwise (clockwise) direction. Of course, “360−X (= 90)” = 270 degrees may be rotated counterclockwise (counterclockwise).
[0057]
Finally, the CPU 11 corrects the attribute overlap after rotation with respect to the part state shown in FIG. 15 (the same state as the part shown in FIG. 14) (step S18). Although details of this correction processing will be described later, they will be briefly described here.
[0058]
First, by correcting the overlap between the pin attribute and the figure, the state of the part shown in FIG. 15 (the same state as the part shown in FIG. 14) changes to the state of the part shown in FIG. That is, the segment area 212 that has overlapped the segment area 220 of the figure has been moved to a position that does not overlap the segment area 220.
[0059]
Further, when the overlapping of pin attributes is corrected from this state, the part state shown in FIG. 16 changes to the part state shown in FIG. That is, the segment area 212 and the segment area 231 that overlap each other are in a state in which the segment area 231 is moved to a predetermined position and does not overlap.
[0060]
Further, when the overlap between the part attribute and the figure is corrected from this state, the part state shown in FIG. 17 changes to the part state shown in FIG. That is, the segment area 220 and the segment area 233 that overlap each other are in a state in which the segment area 233 is moved to a predetermined position and does not overlap.
[0061]
In the first embodiment, the pin attribute or the pin attribute group is managed by an array in which the pin of the figure to which it belongs is used as an index. For example, if the pins 1 to 4 have the arrangement relationship shown in FIG. 19A, the attribute value (that is, the pin attribute of the pin) is registered using each value of the pins 1 to 4 as an index. Array 250. In this case, the pin attribute array 250 includes an index 251 and an attribute value 252. Therefore, the CPU 11 creates a pin attribute array 250 as shown in FIG. 19B in the main storage device 13 before rotating the part, so that even if the CPU 11 rotates the part at a predetermined angle, The relationship between a pin and its pin attribute (attribute value) can be recognized.
[0062]
In addition, the part attribute or the part attribute group is managed by an array having the area to which it belongs as an index. For example, if the areas 1 to 8 are arranged as shown in FIG. 20A, attribute values (part attributes belonging to the area) are registered using the values of the areas 1 to 8 as indexes. Array 260. In this case, the part attribute array 260 includes an index 261 and an attribute value 262. Therefore, even if the CPU 11 performs the rotation processing at a predetermined angle with respect to the part by creating the part attribute array 260 as shown in FIG. It is possible to recognize the relationship between a region and a part attribute (attribute value) belonging to the region.
[0063]
Next, the attribute overlapping correction process after the rotation in step S18 will be described in detail.
[0064]
In this correction processing, attribute positions are corrected in the order of the following steps S18-1 to S18-5 in order to remove the overlap between attributes or graphics and attributes for the rotated parts. Each process of steps S18-1 to S18-5 is included in the process of step S18. Therefore, a program showing the rotation processing procedure (see FIG. 7) including the processing procedures of these steps S18-1 to S18-5 is stored (recorded) in the auxiliary storage device 12 as a computer-readable recording medium. Yes.
[0065]
Step S18-1 (Correction of overlap between “pin attribute” and “figure”)
As shown in FIG. 21, this correction moves the segment area 321 and the segment area 322 when a segment area 310 of a graphic and a plurality of (for example, two) pin attribute segment areas 321 and 322 overlap. Thus, the “pin attribute” and the “figure” do not overlap. When a single pin attribute overlaps a figure, the pin attribute is moved.
[0066]
Specifically, the CPU 11 defines the number of pins in the figure as N, and repeats the following processing from i = 1 to N. That is, when the segment area of the pin attribute or the group of the pin attribute of the pin i in the figure overlaps the segment area of the figure, the position of the pin attribute is moved so that the mutual distance becomes equal to the distance before rotation. In this case, the position is moved in the direction opposite to the direction in which the figure exists.
[0067]
For example, as shown in FIG. 22A, when a segment area 310 of a graphic before rotation and a segment area 321 having a pin attribute of “PIN2” before rotation are arranged with a distance of “t1”, When the figure segment area 310 and the pin attribute segment area 321 of “PIN2” overlap as shown in FIG. 22B after rotation and before correction, as shown in FIG. “PIN2” pin attribute segment area 321 is moved in the opposite direction (left direction in FIG. 22C) from the figure (segment area) so that the distance between the segment areas is equal to the distance t1 before the rotation. Let
[0068]
Step S18-2 (Correction of overlap between “pin attribute” and “pin attribute”)
As shown in FIG. 23, in this correction, although the segment region 310 of the graphic is separated from the segment regions 321 and 322 having a plurality of pin attributes (for example, two), the two segment regions 321 and 322 overlap each other. In this case, by moving one of the pin attributes, the “pin attributes” do not overlap each other.
[0069]
Specifically, the CPU 11 defines the number of pins in the figure as N, and repeats the following processing from i = 1 to N. That is, when the pin attribute or pin attribute group segment area of the pin i in the figure overlaps the pin attribute or pin attribute group segment area of the pin (i-1) in the figure, the distance between them is The former is moved to be equal to the distance of. In this case, the position is moved in the direction opposite to the direction in which the figure exists.
[0070]
For example, as shown in FIG. 24A, the pin attribute segment area 321 of “PIN1” before rotation and the pin attribute segment area 322 of “PIN2” before rotation are “t2” (in this case, t2 = 0), and after rotation and before correction, as shown in FIG. 24B, the segment area 321 having the pin attribute of “PIN1” and the segment area having the pin attribute of “PIN2” When the area 322 overlaps, as shown in FIG. 24C, the segment area 321 having the pin attribute of “PIN2” is changed into the segment of the figure so that the distance between the segment areas becomes equal to the distance t2 before the rotation. The region is moved in the opposite direction (left direction in FIG. 24C).
[0071]
Step S18-3 (Correction of overlap between “part attribute” and “graphic”)
As shown in FIG. 25, this correction moves the segment area 331 and the segment area 332 when the segment area 310 of the graphic and the segment areas 331 and 332 having a plurality of (for example, two) part attributes overlap. This is to prevent the “part attribute” and the “graphic” from overlapping each other. When a single part attribute overlaps a figure, the part attribute is moved.
[0072]
More specifically, the CPU 11 defines the number of areas as “8”, and repeats the next processing from j = 1 to 8. That is, when the segment area of the part attribute belonging to the area j or the segment area of the group of part attributes overlaps the segment area of the figure, the part attributes are moved so that the mutual distance becomes equal to the distance before the rotation. In this case, the position is moved in the direction opposite to the direction in which the figure exists.
[0073]
For example, as shown in FIG. 26A, when the segment area 310 of the graphic before rotation and the segment area 331 of “part attribute” before rotation are arranged with a distance of “t3”, When the figure segment area 310 and the “part attribute” segment area 331 overlap as shown in FIG. 26B before correction, as shown in FIG. The segment area 331 is moved in the direction opposite to the figure (the segment area thereof) (the left direction in FIG. 26C) so that the distance between the segment areas becomes equal to the distance t3 before the rotation.
[0074]
Step S18-4 (Correction of overlap between “pin attribute” and “part attribute”)
As shown in FIG. 27, although the graphic segment area 310, the pin attribute segment area 321 and the part attribute segment area 331 are separated from each other, the pin attribute segment area 321 and the part attribute segment area 331 are corrected. This is to prevent the “pin attribute” and the “part attribute” from overlapping each other by moving the part attribute.
[0075]
More specifically, the CPU 11 defines the number of areas as “8”, and repeats the next processing from j = 1 to 8. That is, in the repeated processing for each region, the number of pins in the figure is further defined as N, and the next processing is repeated from i = 1 to N. That is, when the segment area of the part attribute belonging to the area j or the segment area of the group of part attributes overlaps the segment area of the group of the pin attribute of the pin i or the group of the pin attribute in the figure overlaps the segment area of the figure The former is moved so that becomes equal to the distance before rotation. In this case, the position is moved in the direction opposite to the direction in which the figure exists.
[0076]
Step S18-5 (Correction of overlap between “part attribute” and “part attribute”)
As shown in FIG. 28, this correction is performed by separating the segment area 331 of the part attribute from the segment area 331 of the part attribute and the segment area 331 and 332 of the part attribute. When the region 332 overlaps, any part attribute is moved so that the “part attributes” do not overlap each other.
[0077]
More specifically, the CPU 11 defines the number of areas as “8”, and repeats the next processing from j = 1 to 8. That is, in the repeated processing for each region, the number of pins in the figure is further defined as N, and the next processing is repeated from i = 1 to N. That is, when the part attribute segment areas belonging to the area j overlap or the part attribute group segment areas overlap, one of the attributes is moved so that the mutual distance becomes equal to the distance before the rotation. In this case, the position is moved in the direction opposite to the direction in which the figure exists.
[0078]
Here, correction of overlap between “pin attribute” and “part attribute” and correction of overlap between “part attribute” and “part attribute” will be described with specific examples.
[0079]
For example, as shown in FIG. 29A, the pin attribute segment area 321 of “PIN1” before rotation and the part attribute segment area 331 of “part attribute 1” before rotation have a distance of “t4”. When the segment area 331 of the part attribute of “part attribute 1” before the rotation and the segment area 332 of the part attribute of “part attribute 2” before the rotation are arranged at a distance of “t5” And
[0080]
Then, after rotation and before correction, as shown in FIG. 29B, the pin attribute segment area 321 of “PIN1” and the part attribute segment area 331 of “part attribute 1” overlap, When the segment area 331 having a part attribute of “1” and the segment area 332 having a part attribute of “part attribute 2” overlap, first, as shown in FIG. 29C, the segment area 331 of “part attribute 1” Is moved in the direction opposite to the figure (segment area) (left direction in FIG. 29C) so that the distance between the segment area 321 of “PIN1” is equal to the distance t4 before the rotation.
[0081]
In the state of the part shown in FIG. 29C, the segment area 331 of “part attribute 1” and the segment area 332 of “part attribute 2” still overlap each other. As shown in d), the segment area 332 of “part attribute 2” is opposite to the figure (segment area thereof) so that the distance between the segment areas becomes equal to the distance t5 before the rotation (FIG. 29D). ) To the left).
[0082]
30 and 31 show examples of parts when the rotation processing is performed according to the rotation processing procedure described above. In the example shown in FIG. 30, the part 410 before rotation is rotated 90 degrees counterclockwise to be in the state of the part 410A. In the example shown in FIG. 31, the part 420 before rotation is rotated 90 degrees counterclockwise to become a part 420A, and this part 420A is rotated 180 degrees counterclockwise to become part 420B. Further, the part 420B is rotated 270 degrees counterclockwise (or 90 degrees clockwise) to become a part 420C.
[0083]
In the first embodiment described above, each function of the symbol rotation device (computer) is realized, and a program indicating the rotation processing procedure of the rotation processing is recorded in the auxiliary storage device 12 such as a hard disk as a recording medium. However, the present invention is not limited to this, and may be as follows.
[0084]
That is, the program may be stored in the ROM, and the CPU 11 may load the program from the ROM to the main storage device 13 and execute it.
[0085]
The program may be distributed by storing it in a computer-readable storage medium such as a DVD-ROM, CD-ROM, MO (magneto-optical disk), floppy disk or the like. In this case, after the symbol rotating device (computer) installs the program recorded on the recording medium, the CPU 11 executes the program. As an installation destination of this program, there are memories such as RAM and EPROM, and storage devices such as a hard disk. The symbol rotation device (computer) loads the program stored in the storage device into the main storage device 13 and executes it as necessary.
[0086]
Further, the symbol rotation device (computer) is connected to a computer such as a server device or a host computer via an electric communication line (for example, the Internet), and the symbol rotation device (computer) is connected to the program from the server device or the computer. After downloading the program, the CPU 11 may execute this program. In this case, the download destination of the program includes a memory such as RAM and EPROM, and a storage device (recording medium) such as a hard disk. The symbol rotation device (computer) loads the program stored in the storage device into the main storage device 13 and executes it as necessary.
[0087]
In the first embodiment described above, the symbol rotation device described above can be applied to a CAD (computer-aided design) system. In this CAD system (for example, an electrical CAD system), it is possible to execute a rotation process similar to the rotation process by the symbol rotation device described above. The attributes can be rotated without overlapping.
[0088]
Furthermore, in the above-described first embodiment, the above-described symbol rotation device can be applied to a graphic editing system. Also in this graphic editing system, it is possible to execute a rotation process similar to the rotation process performed by the symbol rotation device described above, whereby a figure with text can be rotated without overlapping the attributes and attributes. Can be made.
[0089]
As described above, according to the first embodiment, by rotating the electronic component graphic according to the rotation processing procedure described above, the attributes do not overlap with each other, and the attribute is associated with a point on the graphic. Even without them, it is possible to rotate figures and attributes without overlapping each other.
[0090]
Further, according to the first embodiment, by rotating the electronic component graphic according to the above-described rotation processing procedure, it is not necessary to manually correct the electronic component graphic at the time of rotational editing, thereby improving the efficiency of the drawing design work. Can be achieved.
[0091]
Furthermore, according to the first embodiment, since pin attributes and part attributes are managed by an array (see FIGS. 19 and 20), it is not necessary to register electronic component data for each rotation angle. Therefore, management and maintenance of electronic component data can be reduced.
[0092]
【The invention's effect】
As described above, according to the present invention, even without associating a character string with a certain point in the figure, the character string and the figure do not overlap with each other, and the character strings do not overlap with each other. A symbol (for example, an electronic component figure) having a symbol can be rotated. Further, since symbols (for example, electronic component graphics) can be rotated without overlapping character strings and graphics, and without overlapping character strings, it is necessary to make manual corrections during rotational editing of electronic component graphics. In addition, the efficiency of the drawing design work can be improved.
[0093]
According to the next invention, when the character string after the rotation process overlaps with the graphic, the character string is moved so that they do not overlap with each other, so that the character string and the graphic do not overlap reliably. Thus, a symbol (for example, an electronic component figure) can be rotated.
[0094]
According to the next invention, even if the character string is not associated with a certain point in the graphic, the character string does not overlap with the graphic, and the character string does not overlap with each other. Electronic component figure) can be rotated. Further, since symbols (for example, electronic component graphics) can be rotated without overlapping character strings and graphics, and without overlapping character strings, it is necessary to make manual corrections during rotational editing of electronic component graphics. In addition, the efficiency of the drawing design work can be improved.
[0095]
According to the next invention, since a plurality of character strings before the rotation process are grouped, the plurality of grouped character strings do not overlap after the rotation process. It is possible to prevent the columns from overlapping each other.
[0096]
According to the next invention, when the character string after the rotation process overlaps with the graphic, the character string is moved so that they do not overlap (the position of the character string is corrected). A symbol (for example, an electronic component figure) can be rotated so that the figure does not overlap with the figure.
[0097]
According to the next invention, when a plurality of character strings after the rotation process are overlapped, one of the character strings is moved in units of a single character string or grouped character strings so that they do not overlap ( Since the position of the character string is corrected), it is possible to rotate the symbol (for example, electronic component figure) so that the character strings do not overlap each other.
[0098]
According to the next invention, even if the character string is not associated with a certain point in the graphic, the character string does not overlap with the graphic, and the character string does not overlap with each other. Electronic component figure) can be rotated. Further, since symbols (for example, electronic component graphics) can be rotated without overlapping character strings and graphics, and without overlapping character strings, it is necessary to make manual corrections during rotational editing of electronic component graphics. In addition, the efficiency of the drawing design work can be improved.
[0099]
According to the next invention, when the character string after the rotation process overlaps with the graphic, the character string is moved so that they do not overlap with each other, so that the character string and the graphic do not overlap reliably. Thus, a symbol (for example, an electronic component figure) can be rotated.
[0100]
According to the next invention, even if the character string is not associated with a certain point in the graphic, the character string does not overlap with the graphic, and the character string does not overlap with each other. Electronic component figure) can be rotated. Further, since symbols (for example, electronic component graphics) can be rotated without overlapping character strings and graphics, and without overlapping character strings, it is necessary to make manual corrections during rotational editing of electronic component graphics. In addition, the efficiency of the drawing design work can be improved.
[0101]
According to the next invention, since a plurality of character strings before the rotation process are grouped, the plurality of grouped character strings do not overlap after the rotation process. It is possible to prevent the columns from overlapping each other.
[0102]
According to the next invention, when the character string after the rotation process overlaps with the graphic, the character string is moved so that they do not overlap (the position of the character string is corrected). A symbol (for example, an electronic component figure) can be rotated so that the figure does not overlap with the figure.
[0103]
According to the next invention, when a plurality of character strings after the rotation process are overlapped, one of the character strings is moved in units of a single character string or grouped character strings so that they do not overlap ( Since the position of the character string is corrected), it is possible to rotate the symbol (for example, electronic component figure) so that the character strings do not overlap each other.
[0104]
According to the next invention, the computer reads and executes a program for causing the computer to execute the method described in any one of the above inventions, without associating the character string with a certain point in the figure. It is possible to rotate a symbol (for example, an electronic component graphic) having a character string and a graphic without overlapping the character string and the graphic and without overlapping the character strings. Further, since symbols (for example, electronic component graphics) can be rotated without overlapping character strings and graphics, and without overlapping character strings, it is necessary to make manual corrections during rotational editing of electronic component graphics. In addition, the efficiency of the drawing design work can be improved.
[0105]
According to the next invention, even if the character string is not associated with a certain point in the graphic, the character string does not overlap with the graphic, and the character string does not overlap with each other. A CAD system capable of rotating an electronic component figure) can be obtained. Further, since symbols (for example, electronic component graphics) can be rotated without overlapping character strings and graphics, and without overlapping character strings, it is necessary to make manual corrections during rotational editing of electronic component graphics. Therefore, it is possible to obtain a CAD system capable of improving the efficiency of drawing design work.
[0106]
According to the next invention, even if the character string is not associated with a certain point in the graphic, the character string does not overlap with the graphic, and the character string does not overlap with each other. A CAD system capable of rotating an electronic component figure) can be obtained. Further, since symbols (for example, electronic component graphics) can be rotated without overlapping character strings and graphics, and without overlapping character strings, it is necessary to make manual corrections during rotational editing of electronic component graphics. Therefore, it is possible to obtain a CAD system capable of improving the efficiency of drawing design work.
[0107]
According to the next invention, even if the character string is not associated with a certain point in the graphic, the character string does not overlap with the graphic, and the character string does not overlap with each other. A graphic editing system capable of rotating an electronic component graphic) can be obtained. Further, since symbols (for example, electronic component graphics) can be rotated without overlapping character strings and graphics, and without overlapping character strings, it is necessary to make manual corrections during rotational editing of electronic component graphics. Therefore, it is possible to obtain a graphic editing system capable of improving the efficiency of drawing design work.
[0108]
According to the next invention, even if the character string is not associated with a certain point in the graphic, the character string and the graphic are not overlapped, and the symbols having the character string and the graphic are rotated without overlapping the character strings. A graphic editing system can be obtained. Also, since symbols can be rotated without overlapping character strings and graphics, and without overlapping character strings, there is no need for manual correction during rotation editing of electronic component graphics, and drawing design work It is possible to obtain a graphic editing system capable of improving the efficiency.
[Brief description of the drawings]
FIG. 1 is a block diagram showing a configuration of a symbol rotation device according to a first embodiment of the present invention.
FIG. 2 is a diagram for explaining an example of a part.
FIG. 3 is a diagram for explaining definitions of parts, figures, and attributes;
FIG. 4 is a diagram for explaining definitions of pins and connection lines;
FIG. 5 is a diagram for explaining a segment region of a graphic.
FIG. 6 is a diagram for explaining segment regions of attributes.
FIG. 7 is a flowchart showing a rotation processing procedure by the symbol rotation device shown in FIG. 1;
FIG. 8 is a diagram for explaining pin attributes and part attributes of a read part;
9 is a diagram for explaining the processing content of step S11 of the rotation processing procedure shown in FIG. 7; FIG.
10 is a diagram for explaining the processing content of step S12 of the rotation processing procedure shown in FIG. 7; FIG.
11 is a diagram for explaining the processing content of step S13 of the rotation processing procedure shown in FIG. 7; FIG.
12 is a diagram for explaining the processing contents of steps S14 and S15 of the rotation processing procedure shown in FIG. 7; FIG.
13 is a diagram for explaining the processing content of step S16 of the rotation processing procedure shown in FIG. 7; FIG.
14 is a diagram for explaining the processing content of step S17 of the rotation processing procedure shown in FIG. 7; FIG.
15 is a diagram for explaining the processing content of step S18 of the rotation processing procedure shown in FIG. 7; FIG.
16 is a diagram for explaining the processing content of step S18 of the rotation processing procedure shown in FIG. 7; FIG.
FIG. 17 is a diagram for explaining the processing content of step S18 of the rotation processing procedure shown in FIG. 7;
18 is a diagram for explaining the processing content of step S18 of the rotation processing procedure shown in FIG. 7; FIG.
FIG. 19 is a diagram for explaining an array of pin attributes referred to when correction processing is performed;
FIG. 20 is a diagram for explaining an arrangement of part attributes referred to when correction processing is performed;
FIG. 21 is a diagram for explaining correction of overlap between a pin attribute and a figure in a correction process;
FIG. 22 is a diagram for explaining correction of overlap between a pin attribute and a figure in the correction process.
FIG. 23 is a diagram for explaining correction of overlap between a pin attribute and a pin attribute in correction processing.
FIG. 24 is a diagram for explaining correction of overlap between a pin attribute and a pin attribute in correction processing.
FIG. 25 is a diagram for explaining correction of an overlap between a part attribute and a figure in a correction process.
FIG. 26 is a diagram for explaining correction of an overlap between a part attribute and a figure in a correction process.
FIG. 27 is a diagram for explaining correction of overlap between a pin attribute and a part attribute in correction processing.
FIG. 28 is a diagram for explaining correction of overlap between part attributes and part attributes in correction processing;
FIG. 29 is a diagram for explaining the correction of the overlap between the pin attribute and the part attribute and the correction of the overlap between the part attribute and the part attribute in the correction processing.
FIG. 30 is a diagram for explaining an example of a part rotated in accordance with a rotation processing procedure;
FIG. 31 is a diagram for explaining an example of a part rotated in accordance with a rotation processing procedure;
[Explanation of symbols]
10 device main body, 11 CPU, 12 auxiliary storage device, 13 main storage device, 14 input / output control unit, 20 display device, 30 keyboard, 40 mouse, 100 parts, 110 figure, 121 part attribute, 122 pin attribute, 130 pin, 140 connection line, 150, 160, 201-212, 220, 231-234, 310, 321, 322, 331, 332 segment area, 250 pin attribute array, 260 part attribute array.

Claims (3)

複数の文字列及び図形を有するシンボルに対して回転処理を実行するシンボル回転装置において、
前記各文字列毎のセグメント領域を求める第1の領域求め手段と、
前記図形のセグメント領域を求める第2の領域求め手段と、
前記複数の文字列を所定の規則にしたがってグルーピングするグルーピング手段と、
前記グルーピング手段によりグループ化された文字列のセグメント領域を求める第3の領域求め手段と、
前記第1、第2及び第3の領域求め手段によって求められた各セグメント領域について、前記第2の領域求め手段により求められたセグメント領域の中心点を中心として所定の回転方向に角度αをもって回転処理を実行する第1の回転処理手段と、
前記第1の回転処理手段による回転処理後のシンボル中の文字列について、前記グルーピング手段によってグループ化されていない文字列については前記第1の領域求め手段により求められたセグメント領域の中心点を中心として、前記グルーピング手段によってグループ化された文字列については前記第3の領域求め手段により求められたセグメント領域の中心点を中心として、回転処理前と同一の表示方向となるように角度βをもって回転処理を実行する第2の回転処理手段と、
前記第2の領域求め手段により求められた図形のセグメント領域の各辺を延長して、当該図形近傍の領域を分割する分割手段と、
を具備し
前記グルーピング手段は、前記分割手段による分割処理後の各領域を基準にして前記複数の文字列をグルーピングすることを特徴とするシンボル回転装置。
In a symbol rotation device that executes rotation processing on a symbol having a plurality of character strings and figures,
First area obtaining means for obtaining a segment area for each character string;
Second area obtaining means for obtaining a segment area of the figure;
Grouping means for grouping the plurality of character strings according to a predetermined rule;
A third area obtaining means for obtaining a segment area of the character strings grouped by the grouping means;
For each segment area obtained by the first, second and third area obtaining means , rotation is performed at an angle α in a predetermined rotation direction around the center point of the segment area obtained by the second area obtaining means. First rotation processing means for executing processing;
The character string in symbols after rotation processing by the first rotation processing unit, the central point of the segment area determined by the first region determined means for strings that are not grouped by said grouping means For the character strings grouped by the grouping means as the center , the angle β is set so that the display direction is the same as that before the rotation process with the center point of the segment area obtained by the third area obtaining means as the center. Second rotation processing means for executing rotation processing;
Dividing means for extending each side of the segment area of the figure obtained by the second area obtaining means and dividing the area in the vicinity of the figure;
Equipped with,
The symbol rotation device , wherein the grouping unit groups the plurality of character strings based on each region after the division processing by the dividing unit.
前記第2の回転処理手段による回転処理後の文字列のセグメント領域が前記図形のセグメント領域と重複する場合は、これら各セグメント領域が重複しないように当該文字列のセグメント領域を移動する移動手段
を更に具備したことを特徴とする請求項に記載のシンボル回転装置。
If the segment area of the character string after the rotation processing by the second rotation processing means overlaps with the segment area of the graphic, moving means for moving the segment area of the character string so that these segment areas do not overlap The symbol rotation device according to claim 1 , further comprising:
前記移動手段による移動処理後の複数の文字列のセグメント領域が重複する場合は、これら各セグメント領域が重複しないように、前記グルーピング手段によってグループ化されていない文字列については前記第1の領域求め手段により求められたセグメント領域単位で、前記グルーピング手段によってグループ化された文字列については、前記第3の領域求め手段により求められたセグメント領域単位で当該文字列のセグメント領域を移動する文字列移動手段
を更に具備したことを特徴とする請求項に記載のシンボル回転装置。
When segment areas of a plurality of character strings after the movement process by the moving means overlap, the first area is obtained for character strings that are not grouped by the grouping means so that these segment areas do not overlap. character more sought segment area unit in hand stage, the grouped character string by said grouping means, for moving said third region determined segment region of the character string in the segment area units obtained by means The symbol rotation device according to claim 2 , further comprising a column moving means.
JP2001178881A 2001-06-13 2001-06-13 Symbol rotation device Expired - Fee Related JP4664534B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001178881A JP4664534B2 (en) 2001-06-13 2001-06-13 Symbol rotation device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001178881A JP4664534B2 (en) 2001-06-13 2001-06-13 Symbol rotation device

Publications (2)

Publication Number Publication Date
JP2002373179A JP2002373179A (en) 2002-12-26
JP4664534B2 true JP4664534B2 (en) 2011-04-06

Family

ID=19019510

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001178881A Expired - Fee Related JP4664534B2 (en) 2001-06-13 2001-06-13 Symbol rotation device

Country Status (1)

Country Link
JP (1) JP4664534B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5031448B2 (en) * 2007-06-01 2012-09-19 キヤノン株式会社 Image processing apparatus, control method therefor, and storage medium

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3043534B2 (en) * 1993-02-24 2000-05-22 三菱電機株式会社 Drawing input device
JPH07282074A (en) * 1994-04-04 1995-10-27 N T T Data Tsushin Kk Index character string output device for two-dimensional graphic
JP3396404B2 (en) * 1996-09-24 2003-04-14 富士通株式会社 Automatic string editing system
JPH10283383A (en) * 1997-04-04 1998-10-23 Daitetsuku:Kk Graphic processing method

Also Published As

Publication number Publication date
JP2002373179A (en) 2002-12-26

Similar Documents

Publication Publication Date Title
JP4443450B2 (en) Automatic wiring determination device
US20030135831A1 (en) Method and system for creating test component layouts
JP4664534B2 (en) Symbol rotation device
JP3227056B2 (en) Graphic processing method and graphic processing device
JPH10256386A (en) Generation of mask pattern data
JPH10307674A (en) Window display control unit, window display control method, and computer-readable recording medium recorded with program which makes computer implement the same method
JP2001154806A (en) Method for adjusting correction parameter of display integrated tablet and recording medium
JP2001195432A (en) Cad system
JP4140013B2 (en) Semiconductor integrated circuit gate resizing apparatus and method and program thereof
JP3181956B2 (en) Graphic data storage method and apparatus
JP2002351936A (en) Sizing processing system and its computer program
JPH01255937A (en) Method for setting execution control conditions
JP2017021571A (en) Semiconductor integrated circuit, and design support device and design method therefor
JPH1196040A (en) Process execution system and recording medium
JP2947216B2 (en) Electronic circuit drawing input device
JPH0822490A (en) Selecting method for layer and editing method for layer attribute
JP2003296373A (en) Cad program for disaster prevention facility
JP2000250903A (en) Document processor and recording medium recording interpretation image processing program
JP3371434B2 (en) Layout editing device
JPH07271992A (en) Hatching correcting method
JP2009025969A (en) Automatic wiring shaping method and computer program thereof
JP2001076171A (en) Three-dimensional shape processing system and its curved surface dividing method
JPH06110969A (en) Error correction device in mask pattern design for integrated circuit
JPH0683907A (en) Computer aided designing device for printed wiring board
JPH07271991A (en) Hatching correcting method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20071218

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20101013

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20101026

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101209

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110104

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110107

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20140114

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees