図1は、本発明の実施の一形態である図形要素選択装置1の構成を示すブロック図である。本発明に係る図形要素選択方法は、図形要素選択装置1で実行される。図形要素選択装置1は、たとえばコンピュータシステムによって構成され、形状データ記憶装置11、形状データ読込部12、形状データ記憶部13、画面出力装置14、対話入力装置15、形状要素選択部16、配置部品選択部17、検索基本式記憶装置18、検索基本式読込部19、検索式作成部20、検索部21、検索結果記憶部22、および検索結果出力装置23を含んで構成される。
図形要素選択装置1を構成するコンピュータシステムは、図示しない記憶装置、図示しない中央処理装置(Central Processing Unit;以下「CPU」という)、図示しない入力装置および図示しない出力装置を含んで構成される。
図示しない記憶装置は、図形要素選択装置1を制御するためにCPUによって実行される制御プログラム、および図形要素選択装置1を制御するためにCPUによって用いられるデータを記憶し、形状データ記憶装置11および検索基本式記憶装置18を含む。図示しないCPUは、記憶装置に記憶される制御プログラムを実行することによって、画面出力装置14、対話入力装置15および検索結果出力装置23を制御し、形状データ読込部12、形状データ記憶部13、形状要素選択部16、配置部品選択部17、検索基本式読込部19、検索式作成部20、検索部21および検索結果記憶部22の各機能を実現する。各機能は、データを図示しない記憶装置に書き込み、かつ図示しない記憶装置に記憶されるデータを読み出すことができる。
図示しない入力装置は、情報を入力する装置であり、たとえばキーボードあるいはマウスなどの対話入力装置15によって構成される。図示しない出力装置は、情報を出力する装置であり、液晶ディスプレイなどの表示装置によって構成される画面出力装置14および検索結果出力装置23によって構成される。検索結果出力装置23は、画面出力装置14によって兼用されてもよい。
形状データ記憶装置11は、製品に関する設計データを記憶している。設計データは、製品の構成を示すアセンブリデータ、および製品を構成する部品を表す部品データを含む。部品データは、各部品を識別するための識別情報である部品名と、各部品の形状を表す形状情報と、各部品の形状を構成する図形要素を表す幾何情報と、各図形要素を識別するための図形要素識別情報たとえば要素名とを含むデータである。
形状データ読込部12は、形状データ記憶装置11から設計データを読み出し、読み出した設計データを形状データ記憶部13に送る。図形要素記憶手段および図形要素記憶部である形状データ記憶部13は、形状データ読込部12から受け取る設計データを図示しない記憶装置に記憶し、図示しない記憶装置に記憶する設計データが示す形状を画面出力装置14に出力する可能である。
対話入力装置15は、ユーザが、部品が配置される被配置物に配置する部品の部品名、およびその部品名を配置する位置にある被配置部品の形状を構成する図形要素の中からユーザが選択した図形要素の要素名を選択要素情報として入力する入力装置である。さらに、対話入力装置15は、画面出力装置14あるいは検索結果出力装置23に表示される情報に応答して、いずれかの情報を対話入力装置15によって選択することによって、選択した情報を入力することができる。対話入力装置15は、入力された選択要素情報を形状要素選択部16に送り、入力された部品名を配置部品選択部17に送る。
形状要素選択部16は、対話入力装置15から選択要素情報を受け取ると、形状データ記憶部13に記憶される部品データの幾何情報から、対話入力装置15から受け取った選択要素情報が示す図形要素の幾何情報を読み出し、読み出した幾何情報を検索式作成部20に送る。検索結果リストが図示しない記憶装置に記憶されている場合は、検索結果リストに含まれる選択要素を選択済みの要素情報として読み出し、読み出した選択済みの要素情報が示す図形要素の幾何情報を、形状データ記憶部13から読み出し、読み出した幾何情報を、対話入力装置15から受け取った選択要素情報が示す図形要素の幾何情報とともに検索式作成部20に送る。
検索結果リストは、後述する検索式の検索条件によって検索された検索結果をまとめた一覧表であり、選択要素および配置部品名を含む。選択要素は、対話入力装置15か入力された選択要素情報であり、配置部品名は、対話入力装置15か入力された部品名である。対話入力装置15および形状要素選択部16は、図形要素選択手段および第2の図形要素選択手段である。
配置部品選択部17は、対話入力装置15から受け取った部品名を検索基本式読込部19に送る。検索結果リストが図示しない記憶装置に記憶されている場合は、検索結果リストに含まれる配置部品名を部品名として読み出し、読み出した部品名を、対話入力装置15から受け取る部品名に代えて検索基本式読込部19に送る。
図2は、検索基本式記憶装置18に記憶される検索基本式情報31の一例を示す図である。検索条件情報記憶手段である検索基本式記憶装置18は、図2に示す検索基本式情報31を記憶する。検索条件情報である検索基本式情報31は、同じ形状の部品が配置される図形要素を検索するための位置関係を含む予め定める検索条件を表す情報である。検索基本式情報31は、「部品名」、「要素タイプ」、「検索式の意味」、「検索式」、「条件」および「要素数」の項目を含み、各部品名に対応付けられて「No」順に示される。
「部品名」は、各部品を識別するための識別情報であり、たとえばネジあるいはボスなどの部品名がある。「要素タイプ」は、部品名が示す部品の形状を構成する図形要素の種類を示す情報であり、たとえば「円」あるいは「円弧」などの要素タイプがある。「検索式の意味」は、対応付けられる検索式の意味を示す情報である。「検索式」は、検索条件を示す式である。「条件」は、対応する検索式が示す検索条件に合致しない場合、選択候補から除外するか否かを指定する情報であり。条件が「1」のとき、選択候補から除外し、条件が「2」のとき、選択候補から除外しない。「要素数」は、対話入力装置15から入力された選択要素情報および選択済みの要素情報が示す図形要素の数である。
No.1〜No.11のいずれについても、「部品名」は「ネジ」であり、「要素タイプ」は「円弧」である。No.1の「検索式の意味」および「検索式」は、それぞれ「半径同一」および「R1=R」であり、検索式が示す検索条件は、選択候補の図形要素の半径Rが、選択要素情報または選択済みの要素情報が示す図形要素の半径R1に等しいという条件であることを示している。
このように、前記図形要素の形状が円または円弧の形状であり、前記予め定める検索条件は、図形要素の候補の形状の半径が、前記第1の図形要素の形状の半径に等しいという条件を含むので、半径の等しい円または円弧の形状の図形要素を候補として選択することができる。
No.2の「検索式の意味」および「検索式」は、それぞれ「円弧エッジのある平面の法線方向同一」および「F1」であり、検索式が示す検索条件は、選択候補の図形要素の円弧を含む仮想平面の法線の方向と、選択要素情報または選択済みの要素情報が示す図形要素の円弧を含む仮想平面の法線の方向とが同じであるという条件であることを示している。
このように、前記予め定める検索条件は、図形要素の候補が含まれる仮想平面の法線の方向が、前記第1の図形要素が含まれる仮想平面の法線の方向と同じであるという条件をさらに含むので、図形要素の含まれる仮想平面の法線の方向が同じである図形要素を候補として選択することができる。
No.3の「検索式の意味」および「検索式」は、それぞれ「同一平面上」および「Z0=Z」であり、検索式が示す検索条件は、選択候補の図形要素のZ座標の値Zが、選択要素情報または選択済みの要素情報が示す図形要素のZ座標の値Z0に等しいという条件であることを示している。No.4の「検索式の意味」および「検索式」は、それぞれ「X同軸」および「Y0=Y」であり、検索式が示す検索条件は、選択候補の図形要素のY座標の値Yが、選択要素情報または選択済みの要素情報が示す図形要素のY座標の値Y0に等しいという条件であることを示している。No.5の「検索式の意味」および「検索式」は、それぞれ「Y同軸」および「X0=X」であり、検索式が示す検索条件は、選択候補の図形要素のX座標の値Xが、選択要素情報または選択済みの要素情報が示す図形要素のX座標の値X0に等しいという条件であることを示している。
No.6の「検索式の意味」および「検索式」は、それぞれ「XZ平面対称」および「Y0=(−1)×Y」であり、検索式が示す検索条件が、選択候補の図形要素のY座標の値Yと、選択要素情報または選択済みの要素情報が示す図形要素のY座標の値Y0とは、絶対値が等しく、かつその符号が反対であるという条件であることを示している。図2では「×(掛ける)」を「*」で表している。以下の図についても同じである。No.7の「検索式の意味」および「検索式」は、それぞれ「YZ平面対称」および「X0=(−1)×X」であり、検索式が示す検索条件は、選択候補の図形要素のX座標の値Xと、選択要素情報または選択済みの要素情報が示す図形要素のX座標の値X0とが、絶対値が等しく、かつその符号が反対であるという条件であることを示している。
このように、前記予め定める検索条件は、図形要素の中心の位置を前記被配置物の重心の位置を原点とするXYZ座標系で表すとき、X座標軸、Y座標軸およびZ座標軸のうち1つの座標軸で、図形要素の候補の中心の位置の座標の絶対値と前記第1の図形要素の中心の位置の座標の絶対値とが等しいという条件をさらに含むので、同軸あるいは平面対称の位置にある図形要素を候補として選択することができる。
No.8の「検索式の意味」および「検索式」は、それぞれ「第1要素の中心を通り、第1要素の乗る平面のエッジに平行な軸上に中心点を持つ」および「F2」であり、検索式が示す検索条件は、選択候補の図形要素の座標が、図形要素の中心の位置をXYZ座標系で表し、かつそのXYZ座標系の原点を前記被配置物の重心の位置とするとき、X座標軸、Y座標軸およびZ座標軸のうち1つの座標軸で、選択要素情報が示す図形要素の中心の位置の座標の絶対値と等しい図形要素であるという条件であることを示している。
このように、前記予め定める検索条件は、前記被配置物の表面を構成する面のうち、前記第1の図形要素を含む面が直線の外周縁を含むとき、その外周縁の直線のうちの第1の直線と図形要素の候補の中心との距離が、前記第1の直線と前記第1の図形要素の中心との距離に等しいという条件をさらに含むので、前記被配置物の直線状の外周縁から等距離に中心がある図形要素を候補として選択することができる。
No.9の「検索式の意味」および「検索式」は、それぞれ「第1、第2要素の中心点を通過する軸上に中心点を持つ」および「F3」であり、検索式が示す検索条件は、選択候補の図形要素の中心が、選択要素情報が示す図形要素の中心と選択済みの要素情報が示す図形要素の中心とを通る直線上にあるという条件であることを示している。
このように、前記予め定める検索条件は、図形要素の候補の中心が、前記第1の図形要素の中心と前記第2の図形要素の中心とを通る直線上にあるという条件をさらに含むので、すでに選択された2つの図形要素の中心と同一直線上の中心がある図形要素を候補として選択することができる。
No.10の「検索式の意味」および「検索式」は、それぞれ「第1、第2要素の中心を結ぶ直線に垂直で、第1または第2の中心を通る軸上に中心点を持つ」および「F4」であり、検索式が示す検索条件は、選択候補の図形要素の中心が、選択要素情報が示す図形要素の中心と選択済みの要素情報が示す図形要素の中心とを通る直線に垂直で、かつ選択要素情報が示す図形要素の中心または選択済みの要素情報が示す図形要素の中心を通る直線上にあるという条件であることを示している。
このように、前記予め定める検索条件は、図形要素の候補の中心が、前記第1の図形要素の中心と前記第2の図形要素の中心とを通る直線に垂直で、かつ前記第1の図形要素または前記第2の図形要素の中心を通る直線上にあるという条件をさらに含むので、すでに選択された2つの図形要素の中心を通る直線に垂直で、かついずれかの図形の中心を通る直線上に中心がある図形要素を候補として選択することができる。
No.11の「検索式の意味」および「検索式」は、それぞれ「第1、第2、第3の円弧の中心を通る円周上に中心点を持つ」および「F5」であり、検索式が示す検索条件は、選択候補の図形要素の中心が、択要素情報が示す図形要素の中心と選択済みの2つの要素情報が示す2つの図形要素のそれぞれの中心とを通る円周上にあるという条件であることを示している。
このように、対話入力装置15および形状要素選択部16によって、検索結果記憶部22および検索結果出力装置23によって選択可能に表示される要素名の中から、前記第1の図形要素および第2の図形要素の要素名と異なる第3の要素名がさらに選択される。検索式作成部20および検索部21によって、形状データ記憶部13に記憶される幾何情報のうち、対話入力装置15および形状要素選択部16によって選択された第3の要素名が示す第3の図形要素、前記第1の図形要素および前記第2の図形要素の幾何情報と、前記予め定める検索条件とに基づいて、前記第1の図形要素の位置に配置される部品と同じ形状の部品が配置される図形要素の候補が検索される。そして、前記予め定める検索条件は、図形要素の候補の中心が、前記第1の図形要素の中心と前記第2の図形要素の中心と前記第3の図形要素の中心とを通る円周上にあるという条件をさらに含む。
したがって、すでに選択された3つの図形要素の中心と同一円周上に中心がある図形要素を候補として選択することができる。
No.1〜No.3の「条件」は、「1」であり、No.4〜No.11の「条件」は、「2」である。No.1〜No.8の「要素数」は、「1」であり、No.9およびNo.10の「要素数」は、「2」であり、No.11の要素数」は、「3」である。No.2〜No.11の検索式は、位置関係を規定する検索条件である。
図1を参照して、検索基本式読込部19は、検索基本式記憶装置18に記憶される検索基本式情報31の中から、配置部品選択部17から受け取った部品名に対応付けられた検索基本式情報を読み出し、読み出した検索基本式情報を検索式作成部20に送る。検索式作成部20は、形状要素選択部16から受け取った幾何情報、および検索基本式読込部19から受け取った検索基本式情報に基づいて検索式情報を作成し、作成した検索式情報を検索部21に送る。
検索部21は、検索式作成部20から受け取った検索式情報を検索条件として、形状データ記憶部13に記憶される部品データの幾何情報を検索し、検索条件に合致する幾何情報の図形要素を抽出し、抽出した図形要素に合致した検索条件の数を算出する。そして、抽出した図形要素の要素名と、合致した検索条件の数とに基づいて検索結果リストを生成し、生成した検索結果リストを検索結果記憶部22に送る。検索式作成部20および検索部21は、検索手段である。
検索結果記憶部22は、検索部21から受け取った検索結果リストを図示しない記憶装置に記憶するとともに、検索結果リストを検索結果出力装置23に送る。検索結果出力装置23は、検索結果記憶部22から受け取った検索結果リストを、後述する選択候補リスト表示画面に出力する。検索結果記憶部22および検索結果出力装置23は、表示手段である。
すなわち、ユーザが、対話入力装置15によって、被配置物に配置する部品の部品名と、その被配置物の形状を構成する図形要素のうちその部品名の部品を配置する第1番目の図形要素(以下「第1の図形要素」という)の要素名つまり選択要素情報とを入力すると、図形要素選択装置1は、対話入力装置15によって入力された部品名および要素名に基づいて、その部品と同じ部品名の部品、つまり同じ形状の部品を配置する第2番目の図形要素の候補を選択候補として検索して、検索結果出力装置23に表示する。
次に、ユーザが、検索結果出力装置23に表示された第2の図形要素の選択候補の中から、対話入力装置15によって第2番目の図形要素(以下「第2の図形要素」という)の要素名を選択すると、図形要素選択装置1は、以前入力された第1の図形要素の要素名つまり選択済みの要素情報が示す要素名と、対話入力装置15によって選択された第2の図形要素の要素名とに基づいて、前記部品と同じ部品名の部品、つまり同じ形状の部品を配置する第3の図形要素の候補を選択候補として検索して、検索結果出力装置23に表示する。
さらに、図形要素選択装置1は、ユーザが、検索結果出力装置23に表示された選択候補の中から、対話入力装置15によって図形要素を選択する度に、選択済みの要素情報が示す要素名と対話入力装置15によって新たに選択された図形要素の要素名とに基づいて、次の図形要素の候補を選択候補として検索して、検索結果出力装置23に表示する。
図3は、配置部品が配置される被配置部品の一例であるカバー部品8の外観を示す図である。図3(a)は、カバー部品8の斜視図であり、図3(b)は、カバー部品8を構成する部品の一部を示す図である。構成部品8aには、10個の孔が形成され、構成部品8bには、2個の孔が形成されている。図3(a)には、これらの12個の孔の形状を構成する図形要素として、24個のエッジ1〜エッジ24が示されている。
図4は、被配置部品に配置される配置部品の一例であるネジ部品9の外観を示す図である。ユーザは、カバー部品8の12個の孔のうち、ネジ部品9を挿入する孔を形成する図形要素の要素名を、対話入力装置15によって入力する。
以下、図形要素選択装置1の動作の具体例を、図4に示すネジ部品9を図3に示すカバー部品8に配置する場合について、第2の図形要素の選択候補の検索、および第3の図形要素の選択候補の検索の順に説明する。
まず、第2の図形要素の選択候補の検索では、ユーザは、対話入力装置15によって、被配置物として「カバー」、および被配置物に配置する部品として「ネジ」を入力する。これらの部品名の入力は、部品名の候補を画面出力装置14に表示し、表示された部品名の候補の中から選択することによって部品名の入力を可能としてもよい。さらにユーザは、カバー部品9の形状を構成する図形要素つまりエッジ1〜24のうちネジ部品8を配置する第1の図形要素の要素名たとえば「エッジ1」を入力する。要素名の入力は、形状データ記憶部13に記憶される設計データに基づいて、被配置物の形状を図形要素も含めて画面出力装置14に表示し、表示された図形要素の中から図形要素を選択することによって要素名の入力を可能としてもよい。
対話入力装置15は、入力された要素名つまり選択要素情報「エッジ1」を形状要素選択部16に送り、入力された部品名「ネジ」を配置部品選択部17に送る。形状要素選択部16は、対話入力装置15から選択要素情報「エッジ1」を受け取ると、形状データ記憶部13に記憶される幾何情報から、対話入力装置15から受け取った選択要素情報「エッジ1」の幾何情報を読み出し、読み出した幾何情報を検索式作成部20に送る。
図5は、形状データ記憶部13に記憶される幾何情報32の一例を示す図である。幾何情報32は、「要素名」、「要素タイプ」、「半径」、「中心座標」および「法線ベクトル」の項目を含む。「要素名」は、図形要素の名称である。「要素タイプ」は、図形要素の種類を示し、具体的にはたとえば「円」または「円弧」である。「半径」は、図形要素の形状つまり円または円弧の半径であり、「中心座標」は、その円または円弧の中心の位置をXYZ座標系で示した座標である。「法線ベクトル」は、その円または円弧を含む仮想平面の法線の方向を示すベクトルの方向をXYZ座標系で示した座標である。
図5には、図形要素「エッジ1」の幾何情報32が示され、要素名が「エッジ1」であり、要素タイプが「円弧」であり、半径が「R1」であり、中心座標が「(X0,Y0,Z0)」であり、法線ベクトルが「(X1,Y1,Z1)」である。
配置部品選択部17は、対話入力装置15から受け取った部品名「ネジ」を検索基本式読込部19に送る。検索基本式読込部19は、検索基本式記憶装置18に記憶される検索基本式情報31の中から、配置部品選択部17から受け取った部品名「ネジ」に対応付けられた検索基本式情報を読み出し、読み出した検索基本式情報を検索式作成部20に送る。検索式作成部20は、形状要素選択部16から受け取った幾何情報、および検索基本式読込部19から受け取った検索基本式情報に基づいて検索式情報を作成し、作成した検索式情報を検索部21に送る。
図6は、検索式作成部20によって作成される検索式情報33の一例を示す図である。検索式情報33は、「要素タイプ」、「幾何情報」、「検索式」および「条件」の項目を含む。「要素タイプ」、「検索式」および「条件」は、それぞれ検索基本式読込部19から受け取った検索基本式情報の「要素タイプ」、「検索式」および「条件」であり、「幾何情報」は、形状要素選択部16から受け取った幾何情報の情報のうち、検索式を規定する情報である。
図6に示した検索式情報33には、「要素タイプ」、「幾何情報」、「検索式」および「条件」として、7つの組み合わせが示されている。第1番目の組み合わせは、「円弧」、「R1」、「R1=R」および「1」であり、第2番目の組み合わせは、「円弧」、「X1,Y1,Z1」、「F1」および「1」であり、第3番目の組み合わせは、「円弧」、「Z0」、「Z0=Z」および「1」であり、第4番目の組み合わせは、「円弧」、「Y0」、「Y0=Y」および「2」であり、第5番目の組み合わせは、「円弧」、「X0」、「X0=X」および「2」であり、第6番目の組み合わせは、「円弧」、「Y0」、「Y0=(−1)×Y」および「2」であり、第7番目の組み合わせは、「円弧」、「X0」、「X0=(−1)×X」および「2」であり、第8番目の組み合わせは、「円弧」、「X0,Y0,Z0」、「F2」および「2」である。
検索部21は、まず、検索式作成部20から受け取った検索式情報33のうち「円弧」を検索条件として、形状データ記憶部13によって記憶される幾何情報を検索し、検索条件に合致する幾何情報の図形要素を抽出する。カバー部品8には、円弧の図形要素として24個のエッジ1〜24があるので、検索部21はエッジ1〜24を検索するが、エッジ1は既に選択されているので、エッジ1を除外し、エッジ2〜24を抽出する。次に、検索部21は、抽出した図形要素を、条件が「1」の検索式によって絞り込む。
図7は、検索式情報33の条件が「1」の検索式で絞り込まれた検索結果34の一例を示す図である。図7には、「円弧」という条件で抽出された図形要素のうち、既に選択されているエッジ1を除いたエッジ2〜24の23個の図形要素について、検索式情報33の検索式のうち第1番目の検索式「R1=R」つまり「半径同一」、第2番目の検索式「F1」つまり「円弧エッジのある平面の法線方向同一」、および第3番目の検索式「Z0=Z」つまり「同一平面上」という検索条件によって順次絞り込んで検索した検索結果が示されている。「○」印は、検索条件に合致することを示し、「×」印は、検索条件に合致せず、除外されることと示す。
検索部21は、「半径同一」という検索条件で、エッジ5〜10と、エッジ15〜20とを除外し、「円弧エッジのある平面の法線方向同一」という検索条件で、残ったものからエッジ11〜14と、エッジ21〜24とを除外し、「同一平面上」という検索条件では、残ったものから除外するものはない。したがって、検索部21は、条件が「1」の検索式によって絞り込んだ結果、エッジ5〜24を除外し、エッジ2〜4を残す。
図8は、検索式情報33の条件が「2」の検索式で検索された検索結果34の一例を示す図である。検索部21は、検索式情報33の条件が「1」の検索式による絞り込みが終わると、条件が「2」の検索式の検索条件に合致する図形要素を検索し、合致した検索条件の数を図形要素ごとにカウントする。
図8には、検索式情報33の条件が「1」の検索式で絞り込まれた図形要素エッジ2〜4およびエッジ7〜10の7個の図形要素について、検索式情報33の検索式のうち、第1番目の検索式「Y0=Y」つまり「X同軸」、第2番目の検索式「X0=X」つまり「Y同軸」、第3番目の検索式「Y0=(−1)×Y」つまり「XZ平面対称」、第4番目の検索式「X0=(−1)×X」つまり「YZ平面対称」、および第5番目の検索式「F2」つまり「第1要素の中心を通り、第1要素の乗る平面のエッジに平行な軸上に中心点を持つ」という検索条件に合致する図形要素が検索された検索結果が示されている。「○」印は、検索条件に合致することを示し、無印は、検索条件に合致しないことを示す。欄外に示す数字は、各図形要素ごとにカウントした合致した検索条件の数である。
「X同軸」という検索条件に合致するのは、エッジ4であり、「Y同軸」という検索条件に合致するのは、エッジ2であり、「XZ平面対称」という検索条件に合致するのは、エッジ2であり、「YZ平面対称」という検索条件に合致するのは、エッジ4であり、「第1要素の中心を通り、第1要素の乗る平面のエッジに平行な軸上に中心点を持つ」という検索条件に合致する図形要素はない。したがって、合致した検索条件の数は、エッジ2,4が「2」であり、エッジ3,7〜10が「0」である。
検索部21は、条件が「2」の検索式による検索が終わると、条件が「1」の検索式で絞り込んだ図形要素の要素名と、合致した検索条件の数とに基づいて、検索結果リストを生成し、生成した検索結果リストを検索結果記憶部22に送る。検索結果記憶部22は、検索部21から受け取った検索結果リストを図示しない記憶装置に記憶するとともに、検索結果リストを編集して、具体的には、合致した検索条件の数で並べ直して検索結果出力装置23に送って表示させる。
図9は、検索部21によって生成された検索結果リスト36の一例を示す図である。検索結果リスト36は、「配置部品名」、「選択要素」、「検索リスト」および「合致数」の項目を含む。「配置部品名」は、対話入力装置15によって入力された部品名である。「選択要素」、対話入力装置15によって入力された要素名つまり選択要素情報、または選択済みの要素情報が示す要素名である。「検索リスト」は、条件が「1」の検索式で絞り込まれた図形要素の要素名である。「合致数」は、合致した検索条件の数である。
図9に示した検索結果リスト36には、配置部品名「ネジ.PRT」および選択要素「エッジ1」が示され、検索リストおよび合致数として、7つの組み合わせが示されている。第1番目の組み合わせとして、「エッジ2」および「2」、第2番目の組み合わせとして、「エッジ3」および「2」、第3番目の組み合わせとして、「エッジ4」および「0」、第4番目の組み合わせとして、「エッジ7」および「0」、第5番目の組み合わせとして、「エッジ8」および「0」、第6番目の組み合わせとして、「エッジ9」および「0」、第7番目の組み合わせとして、「エッジ10」および「0」が示されている。
図10は、検索結果リスト36が示す検索結果を表示する選択候補リスト表示画面51の一例を示す図である。検索結果記憶部22は、検索部21から受け取った検索結果リストを、合致数の多い順序に並べ直して、選択候補リストとして検索結果出力装置23に送り、選択候補リスト表示画面51として出力させる。
選択候補リスト表示画面51には、「選択候補リスト」というタイトル、選択候補表示欄511、スクロールボタン512、選択ボタン513および選択中止ボタン514が設けられる。選択候補表示欄511には、検索リストの要素名が要素タイプとともに、合致数の多い順序に並べ変えられて表示される。
スクロールボタン512は、選択候補表示欄511に表示しきれない要素名を表示させるための操作ボタンである。選択ボタン513は、選択候補表示欄511に表示される要素名の中から、対話入力装置15によって入力された部品名と同じ部品名の部品を配置する図形要素を選択するための操作ボタンである。選択中止ボタン514は、図形要素の選択を中止し、選択候補リスト表示画面51を閉じるための操作ボタンである。操作ボタンの操作は、たとえば画面に表示されるポインタをマウスによって操作ボタンの位置に移動し、マウスを左クリックすることによって操作することができる。
図10に示した選択候補表示欄511には、エッジ2を表す「円弧(EDGE2:SU」、エッジ4を表す「円弧(EDGE4:SU」、エッジ3を表す「円弧(EDGE3:SU」、エッジ7を表す「円弧(EDGE7:SU」、およびエッジ8を表す「円弧(EDGE8:SU」が示されている。
次に、第3の図形要素の選択候補の検索では、配置部品選択部17は、検索結果記憶部22によって図示しない記憶装置に記憶された検索結果リストの配置部品名「ネジ.PRT」の「ネジ」を部品名として読み込み、読み込んだ部品名「ネジ」を検索基本式読込部19に送る。形状要素選択部16は、対話入力装置15から選択要素情報「エッジ2」を受け取ると、検索結果記憶部22によって図示しない記憶装置に記憶された検索結果リストの選択要素の要素名「エッジ1」を選択済みの要素情報として読み出す。
ユーザが、図10に示した選択候補リスト表示画面51で、第2の図形要素の選択候補の中から第2の図形要素として要素名「エッジ2」を選択すると、対話入力装置15は、選択された要素名「エッジ2」を選択要素情報として形状要素選択部16に送る。
図11は、形状要素選択部16によって初期化された検索結果リスト37の一例を示す図である。形状要素選択部16は、対話入力装置15から選択要素情報として要素名「エッジ2」を受け取ると、図示しない記憶装置に記憶された検索結果リストの選択要素に、対話入力装置15から受け取った選択要素情報「エッジ2」を追加するとともに、検索結果リストの検索リストおよび合致数を消去する。図11に示した検索結果リスト37には、配置部品名「ネジ.PRT」および選択要素「エッジ1」および「エッジ2」が示され、検索リストおよび合致数は空欄である。
そして、形状要素選択部16は、形状データ記憶部13に記憶される幾何情報から、図示しない記憶装置から読み出した選択済みの要素情報「エッジ1」、および対話入力装置15から受け取った選択要素情報「エッジ2」の幾何情報を読み出し、読み出した幾何情報を検索式作成部20に送る。
図12は、第2の図形要素の幾何情報が追加された幾何情報38の一例を示す図である。幾何情報38は、図5に示した幾何情報32に、第2の図形要素つまり形状要素選択部16が対話入力装置15から受け取った選択要素情報「エッジ2」の幾何情報を追加した情報である。図12に示した幾何情報38には、要素名「エッジ2」について、要素タイプ「円弧」、半径「R1」、中心座標「(X4,Y4,Z4)」、および法線ベクトル「(X5,Y5,Z5)」が追加されている。
検索基本式読込部19は、検索基本式記憶装置18に記憶される検索基本式情報の中から、配置部品選択部17から受け取った部品名「ネジ」に対応付けられた検索基本式情報を読み出し、読み出した検索基本式情報を検索式作成部20に送る。検索式作成部20は、形状要素選択部16から受け取った幾何情報38、および検索基本式読込部19から受け取った検索基本式情報に基づいて検索式情報を作成し、作成した検索式情報を検索部21に送る。このとき、検索基本式読込部19は、要素数が「1」の検索式情報として、幾何情報38のうちのエッジ1の幾何情報に基づいて第1の検索式情報を作成し、かつ幾何情報38のうちのエッジ2の幾何情報に基づいて第2の検索式情報を作成し、さらに、要素数が「2」の検索式情報として、幾何情報38のうちのエッジ1およびエッジ2の幾何情報に基づいて第3の検索式情報を作成する。
図13は、形状要素選択部16によって作成される第1の検索式情報39の一例を示す図である。図14は、形状要素選択部16によって作成される第2の検索式情報40の一例を示す図である。図15は、形状要素選択部16によって作成される第3の検索式情報41の一例を示す図である。
図13に示す第1の検索式情報39には、「要素タイプ」、「幾何情報」、「検索式」および「条件」として、8つの組み合わせが示されている。第1番目の組み合わせは、「円弧」、「R1」、「R1=R」および「1」であり、第2番目の組み合わせは、「円弧」、「X1,Y1,Z1」、「F1」および「1」であり、第3番目の組み合わせは、「円弧」、「Z0」、「Z0=Z」および「1」であり、第4番目の組み合わせは、「円弧」、「Y0」、「Y0=Y」および「2」であり、第5番目の組み合わせは、「円弧」、「X0」、「X0=X」および「2」であり、第6番目の組み合わせは、「円弧」、「Y0」、「Y0=(−1)×Y」および「2」であり、第7番目の組み合わせは、「円弧」、「X0」、「X0=(−1)×X」および「2」であり、第8番目の組み合わせは、「円弧」、「X0,Y0,Z0」、「F2」および「2」である。
図14に示す第2の検索式情報40には、「要素タイプ」、「幾何情報」、「検索式」および「条件」として、8つの組み合わせが示されている。第1番目の組み合わせは、「円弧」、「R5」、「R5=R」および「1」であり、第2番目の組み合わせは、「円弧」、「X5,Y5,Z5」、「F1」および「1」であり、第3番目の組み合わせは、「円弧」、「Z4」、「Z4=Z」および「1」であり、第4番目の組み合わせは、「円弧」、「Y4」、「Y4=Y」および「2」であり、第5番目の組み合わせは、「円弧」、「X4」、「X4=X」および「2」であり、第6番目の組み合わせは、「円弧」、「Y4」、「Y4=(−1)×Y」および「2」であり、第7番目の組み合わせは、「円弧」、「X4」、「X4=(−1)×X」および「2」であり、第8番目の組み合わせは、「円弧」、「X4,Y4,Z4」、「F2」および「2」である。
図15に示す第3の検索式情報41には、「要素タイプ」、「幾何情報」、「検索式」および「条件」として、3つの組み合わせが示されている。第1番目の組み合わせは、「円弧」、「X0,Y0,Z0,X4,Y4,Z4」、「F3」および「2」であり、第2番目の組み合わせは、「円弧」、「X0,Y0,Z0,X4,Y4,Z4」、「F4」および「2」である。
検索部21は、検索式作成部20から受け取った第1の検索式情報39、第2の検索式情報40および第3の検索式情報41に基づいて検索を行うが、まず、第1の検索式情報39のうち「円弧」を検索条件として、検索条件に合致する図形要素を抽出し、次に、第1の検索式情報39の要素数が「1」の検索式のうち条件が「1」の検索式によって、抽出した図形要素の絞り込みを行う。
そして、検索部21は、第1の検索式情報39の要素数が「1」の検索式のうち条件が「2」の検索式の検索条件に合致する図形要素を検索し、合致した検索条件の数を図形要素ごとにカウントする。さらに、第2の検索式情報40の要素数が「1」の検索式のうち条件が「2」の検索式の検索条件に合致する図形要素を検索し、合致した検索条件の数を図形要素ごとにカウントした後、第3の検索式情報41の検索式の検索条件に合致する図形要素を検索し、合致した検索条件の数を図形要素ごとにカウントする。
具体的には、検索部21は、まず、検索式作成部20から受け取った第1の検索式情報39のうち「円弧」を検索条件として、形状データ記憶部13に記憶される部品データの幾何情報を検索し、検索条件に合致する幾何情報の図形要素を抽出する。カバー部品8には、円弧の図形要素として24個のエッジ1〜24があるので、検索部21はエッジ1〜24を検索するが、エッジ1およびエッジ2は既に選択されているので、エッジ1およびエッジ2を除外し、エッジ3〜24を抽出する。次に、検索部21は、抽出した図形要素を、第1の検索式情報39のうち、条件が「1」の検索式によって絞り込む。
図16は、第1の検索式情報39の条件が「1」の検索式で絞り込まれた検索結果42の一例を示す図である。図16には、「円弧」という条件で抽出された図形要素のうち、既に選択されているエッジ1およびエッジ2を除いたエッジ3〜24の22個の図形要素について、第1の検索式情報39が示す条件1で絞り込まれた結果が示されている。図16に示す検索結果42は、図7に示した検索結果34からエッジ2の項目を除いたものと同じであり、重複を避けるために説明は省略する。
検索部21は、第1の検索式情報39が示す条件が「1」の検索式によって図形要素の絞り込みを行った後、第1の検索式情報39の要素数が「1」の検索式のうち条件が「2」の検索式の検索条件に合致する図形要素を検索し、合致した検索条件の数を、条件が「1」の検索式によって絞り込まれた図形要素ごとにカウントする。
図17は、第1の検索式情報39の条件が「2」の検索式で検索された検索結果43の一例を示す図である。検索部21は、第1の検索式情報39の条件が「1」の検索式で絞り込まれた図形要素エッジ3,4およびエッジ7〜10の6個の図形要素について、第1の検索式情報39の検索式のうち、第1番目の検索式「Y0=Y」つまり「X同軸」、第2番目の検索式「X0=X」つまり「Y同軸」、第3番目の検索式「Y0=(−1)×Y」つまり「XZ平面対称」、第4番目の検索式「X0=(−1)×X」つまり「YZ平面対称」、および第5番目の検索式「F2」つまり「第1要素の中心を通り、第1要素の乗る平面のエッジに平行な軸上に中心点を持つ」という検索条件によって検索した検索結果が示されている。「○」印は、検索条件に合致することを示し、無印は、検索条件に合致しないことと示す。欄外に示す数字は、各図形要素ごとにカウントした合致した検索条件の数である。
「X同軸」という検索条件に合致するのは、エッジ4であり、「YZ平面対称」という検索条件に合致するのは、エッジ4であり、「Y同軸」、「XZ平面対称」および「第1要素の中心を通り、第1要素の乗る平面のエッジに平行な軸上に中心点を持つ」という検索条件に合致する図形要素はない。したがって、合致した検索条件の数は、エッジ4が「2」であり、エッジ3,7〜10が「0」である。
さらに、検索部21は、第1の検索式情報39の条件が「2」の検索式の検索条件に合致する検索条件の数をカウントした後、第2の検索式情報40の要素数が「1」の検索式のうち条件が「2」の検索式の検索条件に合致する図形要素を検索し、合致した検索条件の数を、条件が「1」の検索式によって絞り込まれた図形要素ごとにカウントする。
図18は、第2の検索式情報40の条件が「2」の検索式で検索された検索結果44の一例を示す図である。検索部21は、第1の検索式情報39の条件が「1」の検索式で絞り込まれた図形要素エッジ3,4およびエッジ7〜10の6個の図形要素について、第2の検索式情報40の検索式のうち、第1番目の検索式「Y4=Y」つまり「X同軸」、第2番目の検索式「X4=X」つまり「Y同軸」、第3番目の検索式「Y4=(−1)×Y」つまり「XZ平面対称」、第4番目の検索式「X4=(−1)×X」つまり「YZ平面対称」、および第5番目の検索式「F2」つまり「第1要素の中心を通り、第1要素の乗る平面のエッジに平行な軸上に中心点を持つ」という検索条件によって検索した検索結果が示されている。「○」印は、検索条件に合致することを示し、無印は、検索条件に合致しないことと示す。欄外に示す数字は、各図形要素ごとにカウントした合致した検索条件の数である。
「X同軸」という検索条件に合致するのは、エッジ3であり、「YZ平面対称」という検索条件に合致するのは、エッジ3であり、「Y同軸」、「XZ平面対称」および「第1要素の中心を通り、第1要素の乗る平面のエッジに平行な軸上に中心点を持つ」という検索条件に合致する図形要素はない。したがって、合致する検索条件の数は、エッジ3が「2」であり、エッジ4,7〜10が「0」である。
さらに、検索部21は、第2の検索式情報40の条件が「2」の検索式の検索条件に合致する検索条件の数をカウントした後、第3の検索式情報41の検索式の検索条件に合致する図形要素を検索し、合致した検索条件の数を、条件が「1」の検索式によって絞り込まれた図形要素ごとにカウントする。
図19は、第3の検索式情報41の検索式で検索された検索結果45の一例を示す図である。第1の検索式情報39の条件が「1」の検索式で絞り込まれた図形要素エッジ3,4およびエッジ7〜10の6個の図形要素について、第3の検索式情報41の検索式のうち、第1番目の検索式「F3」つまり「第1、第2要素の中心点を通過する軸上に中心点を持つ」、および第2番目の検索式「F4」つまり「第1、第2要素の中心を結ぶ直線に垂直で、第1または第2の中心を通る軸上に中心点を持つ」という検索条件によって検索した検索結果が示されている。「○」印は、検索条件に合致することを示し、無印は、検索条件に合致しないことと示す。欄外に示す数字は、各図形要素ごとにカウントした合致した検索条件の数である。合致した検索条件の数は、エッジ3,4,7〜10のいずれもが「0」である。
検索部21は、第3の検索式情報41の検索式による検索が終わると、検索結果43〜45に基づいて、検索結果リストを生成し、生成した検索結果リストを検索結果記憶部22に送る。検索結果記憶部22は、検索部21から受け取った検索結果リストを図示しない記憶装置に記憶するとともに、検索結果リストを編集して検索結果出力装置23に送って出力させる。
図20は、検索部21によって生成された検索結果リスト46の一例を示す図である。図20に示した検索結果リスト36に含まれる項目は、図9に示した検索結果リスト36の項目と同じ項目であり、重複を避けるために項目の説明は省略する。図20に示した検索結果リスト36には、配置部品名「ネジ.PRT」および選択要素「エッジ1」および「エッジ2」が示され、検索リストおよび合致数として、7つの組み合わせが示されている。7つの組み合わせについては、図9に示した検索結果リスト36の検索リストおよび合致数と同じであり、重複を避けるために説明は省略する。
図21は、検索結果リスト46が示す検索結果を表示する選択候補リスト表示画面52の一例を示す図である。検索結果記憶部22はは、検索部21から受け取った検索結果リスト46を、合致数の多い順序に並べ直して、選択候補リストとして検索結果出力装置23に送り、選択候補リスト表示画面52として出力させる。選択候補リスト表示画面52の構成および表示内容は、図10に示した選択候補リスト表示画面51の構成および表示内容と同じであり、重複を避けるために説明は省略する。ユーザは、図20に示した選択候補リスト表示画面52で、第3の図形要素の選択候補の中から第3の図形要素を選択することができる。
このように、形状データ記憶部13によって、部品が配置される被配置物の形状を構成する図形要素を表す幾何情報と、図形要素を識別するための要素名とが対応付けて記憶され、検索基本式記憶装置18によって、同じ形状の部品が配置される図形要素を検索するための位置関係を含む予め定める検索条件を表す検索基本式情報が記憶され、対話入力装置15および形状要素選択部16によって、形状データ記憶部13に記憶される要素名の中から1つの部品を配置する位置にある形状を構成する図形要素の要素名が選択される。
そして、検索式作成部20および検索部21によって、形状データ記憶部13に記憶される幾何情報のうち、対話入力装置15および形状要素選択部16によって選択された要素名が示す第1の図形要素の幾何情報と、検索基本式記憶装置18に記憶される検索基本式情報が示す予め定める検索条件とに基づいて、前記第1の図形要素の位置に配置される部品と同じ形状の部品が配置される図形要素の候補が検索され、検索結果記憶部22および検索結果出力装置23によって、検索式作成部20および検索部21によって検索された図形要素の候補の要素名が選択可能に表示される。
したがって、部品が配置される被配置物の形状を構成する図形要素の中から同じ形状の部品が配置される図形要素の候補を位置関係を含む条件によって絞り込むことができる。
さらに、対話入力装置15および形状要素選択部16によって、検索結果記憶部22および検索結果出力装置23によって選択可能に表示される要素名の中から、前記第1の図形要素の要素名と異なる第2の要素名が選択され、検索式作成部20および検索部21によって、形状データ記憶部13に記憶される幾何情報のうち、対話入力装置15および形状要素選択部16によって選択された第2の要素名が示す第2の図形要素および前記第1の図形要素の幾何情報と、前記予め定める検索条件とに基づいて、前記第1の図形要素の位置に配置される部品と同じ形状の部品が配置される図形要素の候補が検索される。したがって、2つの図形要素に基づいて、第3の図形要素の候補を検索することができる。
図22は、図形要素選択装置1が実行する第1要素検索処理の処理手順を示すフローチャートである。たとえば画面出力装置14に表示されるメインメニューから図形要素を選択する機能が選択されると、ステップA1に移る。
ステップA1では、配置部品を選択する。具体的には、ユーザが、対話入力装置15によって、配置部品つまり被配置物に配置する部品の部品名を選択して入力すると、配置部品選択部17は、入力された部品名を検索基本式読込部19に送る。図形要素選択ステップであるステップA2では、配置参照要素を選択する。具体的には、ユーザが、対話入力装置15によって、被配置物の形状を構成する図形要素のうち、先に入力した部品名の部品を配置する配置参照要素つまり第1の図形要素の要素名を入力すると、形状要素選択部16は、形状データ記憶部13に記憶される幾何情報から、入力された要素名が示す第1の図形要素の幾何情報を読み出し、読み出した幾何情報を検索式作成部20に送る。
ステップA3では、検索基本式の有無を判定する。検索基本式読込部19は、検索基本式記憶装置18に記憶される検索基本式情報31に、配置部品選択部17から受け取った部品名に対応付けられている検索基本式情報が記憶されていると、検索基本式があると判定し、ステップA4に進む。検索基本式記憶装置18に記憶される検索基本式情報31に、配置部品選択部17から受け取った部品名に対応付けられている検索基本式情報が記憶されていないと、検索基本式がないと判定し、第1要素検索処理を終了する。
ステップA4では、検索基本式を読み込む。具体的には、検索基本式読込部19は、検索基本式記憶装置18から、配置部品選択部17から受け取った部品名に対応付けられている検索基本式情報を読み出し、読み出した検索基本式情報を検索式作成部20に送る。ステップA5では、検索式を作成する。具体的には、検索式作成部20は、形状要素選択部16から受け取った幾何情報、および検索基本式読込部19から受け取った検索基本式情報に基づいて検索式情報を作成し、作成した検索式情報を検索部21に送る。
ステップA6では、検索する。具体的には、検索部21は、検索式作成部20から受け取った検索式情報を検索条件として、形状データ記憶部13に記憶される幾何情報を検索し、検索条件に合致する幾何情報の図形要素を抽出し、抽出した図形要素に合致した検索条件の数を算出する。そして、抽出した図形要素の要素名と、合致した検索条件の数とに基づいて検索結果リストを生成し、生成した検索結果リストを検索結果記憶部22に送る。ステップA4〜ステップA6は、検索ステップである。
表示ステップであるステップA7では、検索結果を表示して、第1要素検索処理を終了する。具体的には、検索結果記憶部22は、検索部21から受け取った検索結果リストを、図示しない記憶装置に記憶するとともに、検索結果リストを編集して検索結果出力装置23に送って、選択候補リスト表示画面として出力させ、第1要素検索処理を終了する。
このように、図22に示したフローチャートにおいて、ステップA2では、部品が配置される被配置物の形状を構成する図形要素を表す幾何情報と、図形要素を識別するための要素名とを対応付けて記憶する形状データ記憶部13に記憶される要素名の中から1つの部品を配置する位置にある形状を構成する図形要素の要素名を選択する。ステップA4〜A6では、形状データ記憶部13に記憶される幾何情報のうちステップA2で選択された要素名が示す第1の図形要素の幾何情報と、同じ形状の部品が配置される図形要素を検索するための位置関係を含む予め定める検索条件とに基づいて、前記第1の図形要素の位置に配置される部品と同じ形状の部品が配置される図形要素の候補を検索する。そして、ステップA7では、ステップA4〜A6で検索された図形要素の候補の要素名を選択可能に表示する。
したがって、本発明に係る図形要素選択方法を適用すれば、部品が配置される被配置物の形状を構成する図形要素の中から同じ形状の部品が配置される図形要素の候補を位置関係を含む条件によって絞り込むことができる。
図23は、図形要素選択装置1が実行する第2要素検索処理の処理手順を示すフローチャートである。第1要素検索処理を終了すると、ステップB1に移る。
ステップB1では、配置部品を読み込む。具体的には、配置部品選択部17は、検索結果記憶部22によって図示しない記憶装置に記憶された検索結果リストの配置部品名を部品名として読み込み、読み込んだ部品名を検索基本式読込部19に送る。ステップB2では、配置参照要素を読み込む。具体的には、形状要素選択部16は、検索結果記憶部22によって図示しない記憶装置に記憶された検索結果リストの選択要素の要素名を配置参照要素つまり選択済みの要素情報として読み出す。
ステップB3では、配置参照要素を選択する。具体的には、ユーザが、図10に示した選択候補リスト表示画面51で、第2の図形要素の選択候補の中から第2の図形要素の要素名を選択すると、検索結果記憶部22によって図示しない記憶装置に記憶された検索結果リストの選択要素の要素名を選択済みの要素情報として読み出す。そして、形状要素選択部16は、形状データ記憶部13に記憶される幾何情報から、図示しない記憶装置から読み出した選択済みの要素情報、および対話入力装置15から受け取った選択要素情報が示す図形要素の幾何情報を読み出し、読み出した幾何情報を検索式作成部20に送る。
ステップB4では、検索基本式の有無を判定する。検索基本式読込部19は、検索基本式記憶装置18に記憶される検索基本式情報31に、配置部品選択部17から受け取った部品名に対応付けられている検索基本式情報が記憶されていると、検索基本式があると判定し、ステップB5に進む。検索基本式記憶装置18に記憶される検索基本式情報31に、配置部品選択部17から受け取った部品名に対応付けられている検索基本式情報が記憶されていないと、検索基本式がないと判定し、第2要素検索処理を終了する。
ステップB5では、検索基本式を読み込む。具体的には、検索基本式読込部19は、検索基本式記憶装置18から、配置部品選択部17から受け取った部品名に対応付けられている検索基本式情報を読み出し、読み出した検索基本式情報を検索式作成部20に送る。ステップB6では、検索式を作成する。具体的には、検索式作成部20は、形状要素選択部16から受け取った幾何情報、および検索基本式読込部19から受け取った検索基本式情報に基づいて検索式情報を作成し、作成した検索式情報を検索部21に送る。
ステップB7では、検索する。具体的には、検索部21は、検索式作成部20から受け取った検索式情報を検索条件として、形状データ記憶部13に記憶される部品データの幾何情報を検索し、検索条件に合致する幾何情報の図形要素を抽出し、抽出した図形要素に合致した検索条件の数を算出する。そして、抽出した図形要素の要素名と、合致した検索条件の数とに基づいて検索結果リストを生成し、生成した検索結果リストを検索結果記憶部22に送る。
ステップB8では、検索結果を表示して、第2要素検索処理を終了する。具体的には、検索結果記憶部22は、検索部21から受け取った検索結果リストを、図示しない記憶装置に記憶するとともに、検索結果リストを編集して検索結果出力装置23に送って、選択候補リスト表示画面として出力させ、第2要素検索処理を終了する。