(57)【特許請求の範囲】
【請求項１】
解析対象のデータに含まれるランナーシステムモデルに基づいて、前記ランナーシステムモデルが示すランナーシステムにおいて、断面の形状が円である突出した部分を特定することで、前記ランナーシステムのスプルーを検出し、
前記データ、およびゲートの形状に基づいて、前記ランナーシステムのゲートを検出し、
前記ランナーシステムモデル、前記スプルー、および前記ゲートに基づいて、前記ランナーシステムのランナーを検出する
処理をコンピュータに実行させることを特徴とする検出プログラム。
【請求項２】
前記ゲートを検出する処理は、前記データ、および前記ゲートの形状であるテーパー形状であって、金型キャビティ側ほど開口面積が狭くなるテーパー形状、若しくは直方体、または直円柱に基づいて、前記ゲートを検出することを特徴とする請求項１に記載の検出プログラム。
【請求項３】
前記ランナーを検出する処理は、前記スプルーと前記ゲートとの間の前記ランナーシステムモデルの部分を前記ランナーとして検出することを特徴とする請求項１または２に記載の検出プログラム。
【請求項４】
前記ゲートを検出する処理は、前記ランナーシステムの形状が広くなる部分までの前記ランナーシステムモデルの部分を、前記ゲートとして検出することを特徴とする請求項１〜３の何れか１項に記載の検出プログラム。
【請求項５】
コンピュータが実行する検出方法であって、
解析対象のデータに含まれるランナーシステムモデルに基づいて、前記ランナーシステムモデルが示すランナーシステムにおいて、断面の形状が円である突出した部分を特定することで、前記ランナーシステムのスプルーを検出し、
前記データ、およびゲートの形状に基づいて、前記ランナーシステムのゲートを検出し、
前記ランナーシステムモデル、前記スプルー、および前記ゲートに基づいて、前記ランナーシステムのランナーを検出する
ことを特徴とする検出方法。
【請求項６】
解析対象のデータに含まれるランナーシステムモデルに基づいて、前記ランナーシステムモデルが示すランナーシステムにおいて、断面の形状が円である突出した部分を特定することで、前記ランナーシステムのスプルーを検出する第１の検出部と、
前記データ、およびゲートの形状に基づいて、前記ランナーシステムのゲートを検出する第２の検出部と、
前記ランナーシステムモデル、前記スプルー、および前記ゲートに基づいて、前記ランナーシステムのランナーを検出する第３の検出部と
を有することを特徴とする検出装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、検出プログラム、検出方法および検出装置に関する。
【背景技術】
【０００２】
近年、世界的に、環境性能指向が進んでいる。そのため、樹脂製品の需要性が高まっている。そして、樹脂製品の成形性を製造前に検証する樹脂流動解析の普及が進んでいる。樹脂流動解析では、３次元Ｃｏｍｐｕｔｅｒ  Ａｉｄｅｄ  Ｄｅｓｉｇｎ（ＣＡＤ）で作成したモデルをＣｏｍｐｕｔｅｒ  Ａｉｄｅｄ  Ｅｎｇｉｎｅｅｒｉｎｇ（ＣＡＥ）に取り込む技術が一般的である。
【０００３】
樹脂流動解析の一例では、樹脂成形するためのランナーシステムのモデルを含むＣＡＤデータがＣＡＥに取り込まれて、所定のランナーシステムを用いて樹脂製品を製造した場合の所定時間内における金型への溶融樹脂の充填量などが予測される。樹脂流動解析の他の例では、ランナーシステムのモデルを含むＣＡＤデータがＣＡＥに取り込まれて、金型への溶融樹脂の充填率が所定の値を満たす場合のランナーシステムのゲートの出射部分の開口面積が予測される。
【０００４】
このような樹脂流動解析では、ＣＡＤデータがＣＡＥに取り込まれた場合に、解析を行うユーザは、表示装置に表示されたランナーシステムを目視で識別する。そして、ユーザは、識別したランナーシステムに対して、キーボードやマウスなどの入力部を介して、手動で、ランナーシステムであることを示す属性を割り当てる。かかる属性の割り当て方法の一例としては、ランナーシステム全体に、ランナーシステムであることを示す属性を割り当てる方法がある。また、他の例では、ランナーシステムのスプルー、ゲート、ランナーの各々に、スプルー、ゲート、ランナーの各々であることを示す属性を割り当てる方法がある。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００６−３４４０９６号公報
【特許文献２】特開平１０−１３８３１０号公報
【特許文献３】特開２００５−３０１４５０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、上記の従来の技術では、ユーザが、ランナーシステムに対して手動で属性を割り当てるため、余分な手間がかかるという問題がある。これは、従来の技術では、データに含まれるランナーシステムを自動的に検出できないからである。そのため、従来の技術では、バッチ処理による解析の自動実行を行うことができず、現在の流行である最適化の適用の障害となっている。
【０００７】
開示の技術は、上記に鑑みてなされたものであって、データに含まれるランナーシステムを自動的に検出することができる検出プログラム、検出方法および検出装置を提供することを目的とする。
【課題を解決するための手段】
【０００８】
本願の開示する検出プログラムは、一つの態様において解析対象のデータに含まれるランナーシステムモデルに基づいて、次のような処理をコンピュータに実行させる。すなわち、本願の開示する検出プログラムは、前記ランナーシステムモデルが示すランナーシステムにおいて、断面の形状が円である突出した部分を特定することで、前記ランナーシステムのスプルーを検出する処理をコンピュータに実行させる。そして、本願の開示する検出プログラムは、前記データ、およびゲートの形状に基づいて、前記ランナーシステムのゲートを検出する処理をコンピュータに実行させる。そして、本願の開示する検出プログラムは、前記ランナーシステムモデル、前記スプルー、および前記ゲートに基づいて、前記ランナーシステムのランナーを検出する処理をコンピュータに実行させる。
【発明の効果】
【０００９】
本願の開示する検出プログラムの一つの態様によれば、データに含まれるランナーシステムを自動的に検出することができる。
【図面の簡単な説明】
【００１０】
【図１】図１は、実施例１に係る検出装置の構成を示す図である。
【図２】図２は、ＣＡＤデータの形式の一例を示す図である。
【図３】図３は、ランナーシステムモデルが示すランナーシステム、および製品モデルが示す製品の一例を示す図である。
【図４】図４は、ランナーシステムモデルが示すランナーシステムの一例を示す図である。
【図５】図５は、実施例１におけるスプルーの検出方法の一例を説明するための図である。
【図６】図６は、第２の検出部の処理の一例を説明するための図である。
【図７】図７は、実施例１に係る検出処理の手順を示すフローチャートである。
【図８】図８は、実施例１に係るスプルー検出処理の手順を示すフローチャートである。
【図９】図９は、実施例１に係るゲート候補検出処理の手順を示すフローチャートである。
【図１０】図１０は、実施例１に係るゲート・ランナー検出処理の手順を示すフローチャートである。
【図１１】図１１は、検出プログラムを実行するコンピュータを示す図である。
【発明を実施するための形態】
【００１１】
以下に、本願の開示する検出プログラム、検出方法および検出装置の各実施例を図面に基づいて詳細に説明する。なお、各実施例は開示の技術を限定するものではない。
【実施例１】
【００１２】
［検出装置の構成］
図１は、実施例１に係る検出装置の構成を示す図である。本実施例に係る検出装置１０は、ランナーシステムモデルを含むＣＡＤデータから、ランナーシステムモデルが示すランナーシステムのスプルー、ゲートを検出する。また、本実施例に係る検出装置１０は、スプルーとゲートとの間のランナーシステムモデルの部分をランナーとして検出する。
【００１３】
図１に示すように、検出装置１０は、入力部１１と、出力部１２と、記憶部１３と、制御部１４とを有する。
【００１４】
入力部１１は、各種情報を制御部１４に入力する。例えば、入力部１１は、ユーザから、後述の検出処理を実行する指示を受け付けて、受け付けた指示を制御部１４に入力する。入力部１１は、マウスやキーボードなどの操作受付デバイスである。
【００１５】
出力部１２は、各種の情報を出力する。出力部１２のデバイスの一例としては、ＬＣＤ（Liquid  Crystal  Display）やＣＲＴ（Cathode  Ray  Tube）などの表示デバイスや、音声を出力する音声出力デバイスなどが挙げられる。例えば、出力部１２が表示デバイスである場合には、出力部１２は、後述のシミュレート部１４ｄから送信されたシミュレーション結果を表示する。また、出力部１２が音声デバイスである場合には、出力部１２は、後述のシミュレート部１４ｄから送信されたシミュレーション結果を音声で出力する。
【００１６】
記憶部１３は、各種情報を記憶する。例えば、記憶部１３は、ランナーシステムのモデルであるランナーシステムモデル１３ａと、ランナーシステムにより溶融樹脂が金型に流し込まれて成形された製品のモデルである製品モデル１３ｂとを含むＣＡＤデータ１３ｃを記憶する。ＣＡＤデータ１３ｃは、解析対象のデータであり、後述のシミュレート部１４ｄによるシミュレーションに用いられる。
【００１７】
ＣＡＤデータのデータ構造としては、例えば、面（face）、線（edge）を含むデータ構造が挙げられる。例えば、面は、モデルが示す物体を形成するものである。面は、「ＩＤ（Identification）」、「形状」、「かかる形状を形成する各線の各ＩＤ」の各情報を含む。また、線は、線が閉じていない場合には「両端部の位置座標」、線が閉じている場合には両端部が存在しないので「線が示す形状」、および「ＩＤ」の各情報を含む。図２は、ＣＡＤデータの形式の一例を示す図である。図２の例では、所定のモデルが示す物体の一部分を示す面１５ａおよび面１５ｂが示されている。
【００１８】
図２の例では、面１５ａは、「ＩＤ」が「１」で、「形状」が四角形で、四角形を構成する４つの線１００〜１０３の各ＩＤが「１００」、「１０１」、「１０２」、「１０３」である場合が示されている。また、図２の例では、面１５ｂは、「ＩＤ」が「２」で、「形状」が四角形で、四角形を構成する４つの線１００、１０４〜１０６の各ＩＤが「１００」、「１０４」、「１０５」、「１０６」である場合が示されている。したがって、ＣＡＤデータの形式がこのような場合には、２つの面で共通する線が存在する場合には、両面がつながっていると判断することができる。例えば、図２の例では、面１５ａと面１５ｂとの両面では、ＩＤが「１００」である線が共通するので、面１５ａと面１５ｂとはつながっている、すなわち連続性があると判断することができる。なお、面が「円」である場合には、円を形成する線は閉じており、線が示す形状が「円」となるため、線の情報には、「線が示す形状」が「円」であることが含まれる。また、直方体を構成する６つの面のうち、直方体の周りを一周した場合の４つの面を一つの「面」とする場合もある。このような場合に、面の形状は、「四角形」となる。また、かかる「四角形」を形成する線は閉じており、線が示す形状も「四角形」となる。このため、線の情報には、「線が示す形状」が「四角形」であることが含まれる。
【００１９】
図３は、ランナーシステムモデルが示すランナーシステム、および製品モデルが示す製品の一例を示す図である。図３に示すように、ランナーシステムモデル１３ａが示すランナーシステム２０は、製品モデル１３ｂが示す製品２１に接続されている。
【００２０】
図４は、ランナーシステムモデルが示すランナーシステムの一例を示す図である。図４に示すように、ランナーシステム２０は、スプルー２０ａと、ゲート２０ｂと、ランナー２０ｃとを有する。
【００２１】
スプルー２０ａは、図示しない射出成形機のノズルに接する部分からランナー２０ｃに至るまでの溶融樹脂の流入通路を形成する部品である。スプルー２０ａの形状の一例としては、円柱に勾配をつけた形状である円形テーパーが挙げられる。また、スプルー２０ａの断面の一例としては、円形が挙げられる。また、他形状と接していない円断面を、ランナーシステムモデル１３ａから読み取れば、その円断面を入り口とするスプルー２０ａを検出することが可能となる。なお、上記のような円形テーパーをスプルー２０ａに採用する場合には、スプルー２０ａの開口面積は、射出成形機のノズル側ほど、狭くなる。
【００２２】
ゲート２０ｂは、溶融樹脂がランナー２０ｃから金型キャビティに流入するための部品である。成形品の形状、外観、品質などを考慮して種々のゲートが使用される。ゲート２０ｂの形状の一例としては、円形テーパーまたは直方体が挙げられる。また、ゲート２０ｂの形状の他の例としては、直円柱が挙げられる。また、ゲート２０ｂの断面の一例としては、円形または四角が挙げられる。また、ゲート２０ｂの開口面積は、金型キャビティ側ほど、狭くなるか、全て同一となる。したがって、溶融樹脂が流れる上流側の長さが、下流側の長さよりも短くなるような線により形成される面をランナーシステムモデル１３ａから読み取れば、その面の位置からゲート２０ｂを検出することができる。
【００２３】
ランナー２０ｃは、溶融樹脂がスプルー２０ａからゲート２０ｂに至る中間の通路を形成する部品である。ランナー２０ｃの形状の一例としては、円形、直方体または台形が挙げられる。また、ランナー２０ｃの断面の一例としては、円形、四角形または台形が挙げられる。
【００２４】
記憶部１３は、例えば、フラッシュメモリなどの半導体メモリ素子、または、ハードディスク、光ディスクなどの記憶装置である。なお、記憶部１３は、上記の種類の記憶装置に限定されるものではなく、ＲＡＭ（Random  Access  Memory）、ＲＯＭ（Read  Only  Memory）であってもよい。
【００２５】
制御部１４は、各種の処理手順を規定したプログラムや制御データを格納するための内部メモリを有し、これらによって種々の処理を実行する。制御部１４は、図１に示すように、第１の検出部１４ａと、第２の検出部１４ｂと、第３の検出部１４ｃと、シミュレート部１４ｄとを有する。
【００２６】
第１の検出部１４ａは、スプルーを検出する。例えば、第１の検出部１４ａは、記憶部１３からＣＡＤデータ１３ｃを取得する。第１の検出部１４ａは、ＣＡＤデータ１３ｃに含まれる面のうち、形状が「円」で、ＸＹ平面に平行で、かつ面の位置がＺ軸方向で最大となる面を特定する。そして、第１の検出部１４ａは、特定した面を、スプルー２０ａの入り口の面として検出する。なお、ＣＡＤデータ１３ｃを生成する際に、Ｚ軸の正の方向に、スプルー２０ａの入り口が設定されているものとする。また、面の位置は、面を形成する線の両端末の位置のうち、Ｚ軸方向の位置が最大のものを面の位置として採用することができる。
【００２７】
図５は、実施例１におけるスプルーの検出方法の一例を説明するための図である。図５の例では、第１の検出部１４ａは、形状が「円」で、ＸＹ平面に平行で、かつＺ軸方向の座標値が最大の面２５を特定し、特定した面２５をスプルー２０ａの入り口として検出する。
【００２８】
そして、第１の検出部１４ａは、スプルー２０ａの入り口として検出した面とつながっている面のＩＤを検出する。続いて、第１の検出部１４ａは、検出したＩＤが示す面を形成する各線の各ＩＤを検出する。そして、第１の検出部１４ａは、検出した面のＩＤおよび各線の各ＩＤを、スプルー２０ａを形成する面および線のＩＤとして記憶部１３に格納する。このように、第１の検出部１４ａは、スプルー２０ａを形成する面および線の各ＩＤを検出することで、スプルー２０ａを検出する。
【００２９】
そして、第１の検出部１４ａは、スプルー２０ａを形成する面および線の各ＩＤに対応付けて、スプルーであることを示す属性を記憶部１３に格納する。このように、第１の検出部１４ａは、断面の形状が円である突出した部分を特定することで、スプルー２０ａを検出する。
【００３０】
図５の例では、面２５に、円筒面である面２６がつながっている。このような場合には、第１の検出部１４ａは、面２６のＩＤ「２６」を検出する。また、図５の例では、第１の検出部１４ａは、面２６を形成する各線２７、２８の各ＩＤ「２７」、「２８」を検出する。そして、図５の例では、第１の検出部１４ａは、スプルー２０ａを形成する面および線のＩＤとして、ＩＤ「２６」、ＩＤ「２７」、ＩＤ「２８」を記憶部１３に格納する。
【００３１】
また、第１の検出部１４ａは、面および線に対してＩＤを新たに割り当てる。例えば、第１の検出部１４ａは、スプルー２０ａの入り口に近い側から順番に、面および線のそれぞれに、それぞれ独立して、ＩＤとして正の整数を昇順で割り当てる。ここで、例えば、整数「１」をＩＤとして割り当てられた面を、「ｆａｃｅ（１）」と表す。同様に、整数「Ｎ」をＩＤとして割り当てられた面を、「ｆａｃｅ（Ｎ）」と表す。また、整数「１」をＩＤとして割り当てられた線を、「ｅｄｇｅ（１）」と表す。同様に、整数「Ｎ」をＩＤとして割り当てられた線を、「ｅｄｇｅ（Ｎ）」と表す。また、ｆａｃｅ（Ｎ）の面の形状を形成する線のうち、最もスプルー２０ａ側に位置する線を「ｅｄｇｅＮ」と表現し、最も金型キャビティ側に位置する線を「ｅｄｇｅＮ＋１」と表現する。
【００３２】
第２の検出部１４ｂは、ゲートを検出する。ここで、第２の検出部１４ｂは、ゲート２０ｂに含まれる任意の一つの面を形成する線のうち、金型キャビティ側に位置する線の長さは、スプルー２０ａ側に位置する線の長さ以下であることを利用して、ゲートを検出する。ゲート２０ｂの開口面積が金型キャビティ側ほど広くなるように設計すると、溶融樹脂を射出する圧力が弱くなり、所望の溶融樹脂を金型キャビティに充填することができなくなり、製品の射出成形に支障をきたす場合がある。そのため、ゲート２０ｂの開口面積が金型キャビティ側ほど広くならないように設計するのが一般的である。
【００３３】
具体例を挙げて説明すると、例えば、第２の検出部１４ｂは、ｆａｃｅ（ｎ）の面の形状が「円筒面」であり、ｅｄｇｅｎの形状が「円」であり、ｅｄｇｅｎ＋１の形状が「円」である場合には、次のような処理を行う。すなわち、第２の検出部１４ｂは、ｅｄｇｅｎおよびｅｄｇｅｎ＋１の各線をＸＹ平面に投影するとともに、ＸＺ平面に投影する。そして、第２の検出部１４ｂは、ＸＹ平面に投影されたｅｄｇｅｎ＋１の長さが、ｅｄｇｅｎの長さ以下である場合、または、ＸＺ平面に投影されたｅｄｇｅｎ＋１の長さが、ｅｄｇｅｎの長さ以下である場合には、次のような処理を行う。すなわち、第２の検出部１４ｂは、（ｅｄｇｅｎ，ｆａｃｅ（ｎ），ｅｄｇｅｎ＋１）の組をゲート候補として検出し、検出したゲート候補を配列Ａ［ｎ］に格納する。
【００３４】
また、第２の検出部１４ｂは、ｆａｃｅ（ｎ）の面の形状が「四角形」であり、ｅｄｇｅｎの形状が「四角形」であり、ｅｄｇｅｎ＋１の形状が「四角形」である場合には、次のような処理を行う。すなわち、第２の検出部１４ｂは、ｅｄｇｅｎおよびｅｄｇｅｎ＋１の各線をＸＹ平面に投影するとともに、ＸＺ平面に投影する。そして、第２の検出部１４ｂは、ＸＹ平面に投影されたｅｄｇｅｎ＋１の長さが、ｅｄｇｅｎの長さ以下である場合、または、ＸＺ平面に投影されたｅｄｇｅｎ＋１の長さが、ｅｄｇｅｎの長さ以下である場合には、次のような処理を行う。すなわち、第２の検出部１４ｂは、（ｅｄｇｅｎ，ｆａｃｅ（ｎ），ｅｄｇｅｎ＋１）の組をゲート候補として、配列Ａに格納する。
【００３５】
第２の検出部１４ｂは、上記の処理をｎの値が２から、面に割り当てられたＩＤの数の最大値となるまで、繰り返し行う。このようにして、第２の検出部１４ｂは、配列Ａにゲート候補の組を格納する。なお、配列Ａ［ｉ］は、配列Ａに格納されたｉ番目のゲート候補を指す。
【００３６】
そして、第２の検出部１４ｂは、配列Ａに格納された各ゲート候補の面および線のＩＤに基づいて、面がつながっている各ゲート候補どうしを組み合わせて一つの要素として、配列Ｒに格納する。なお、配列Ｒ［ｉ］は、配列Ｒに格納されたｉ番目の要素を指す。
【００３７】
そして、第２の検出部１４ｂは、配列Ｒの各要素に含まれる各線に、スプルー２０ａの入り口に近い側から順番に、ＩＤとして正の整数を昇順で新たに割り当てる。
【００３８】
図６は、第２の検出部の処理の一例を説明するための図である。図６の例には、模擬されたランナーシステム２０の一例の上面図が示されている。図６の例では、線５１が「ｅｄｇｅ５」、面５２が「ｆａｃｅ（５）」、線５３が「ｅｄｇｅ６」、面５４が「ｆａｃｅ（６）」、線５５が「ｅｄｇｅ７」、面５６が「ｆａｃｅ（７）」、線５７が「ｅｄｇｅ８」に対応する。また、図６の例では、線５８が「ｅｄｇｅ１０」、面５９が「ｆａｃｅ（１０）」、線６０が「ｅｄｇｅ１１」、面６１が「ｆａｃｅ（１１）」、線６２が「ｅｄｇｅ１２」、面６３が「ｆａｃｅ（１２）」、線６４が「ｅｄｇｅ１３」に対応する。また、図６の例では、線６５が「ｅｄｇｅ１５」、面６６が「ｆａｃｅ（１５）」、線６７が「ｅｄｇｅ１６」、面６８が「ｆａｃｅ（１６）」、線６９が「ｅｄｇｅ１７」、面７０が「ｆａｃｅ（１７）」、線７１が「ｅｄｇｅ１８」に対応する。
【００３９】
また、図６の例では、線７２が「ｅｄｇｅ２０」、面７３が「ｆａｃｅ（２０）」、線７４が「ｅｄｇｅ２１」、面７５が「ｆａｃｅ（２１）」、線７６が「ｅｄｇｅ２２」、面７７が「ｆａｃｅ（２２）」、線７８が「ｅｄｇｅ２３」に対応する。また、図６の例では、線７９が「ｅｄｇｅ２５」、面８０が「ｆａｃｅ（２５）」、線８１が「ｅｄｇｅ２６」、面８２が「ｆａｃｅ（２６）」、線８３が「ｅｄｇｅ２７」、面８４が「ｆａｃｅ（２７）」、線８５が「ｅｄｇｅ２８」に対応する。また、図６の例では、線８６が「ｅｄｇｅ３０」、面８７が「ｆａｃｅ（３０）」、線８８が「ｅｄｇｅ３１」、面８９が「ｆａｃｅ（３１）」、線９０が「ｅｄｇｅ３２」、面９１が「ｆａｃｅ（３２）」、線９２が「ｅｄｇｅ３３」に対応する。
【００４０】
なお、図６の例では、線５５、面５６及び線５７により構成される部分は、製品である。また、図６の例では、線６２、面６３及び線６４により構成される部分は、製品である。また、図６の例では、線６９、面７０及び線７１により構成される部分は、製品である。また、図６の例では、線７６、面７７及び線７８により構成される部分は、製品である。また、図６の例では、線８３、面８４及び線８５により構成される部分は、製品である。また、図６の例では、線９０、面９１及び線９２により構成される部分は、製品である。
【００４１】
図６の例では、第２の検出部１４ｂは、（ｅｄｇｅ５，ｆａｃｅ（５），ｅｄｇｅ６）を配列Ａ［１］に、（ｅｄｇｅ６，ｆａｃｅ（６），ｅｄｇｅ７）を配列Ａ［２］に、（ｅｄｇｅ７，ｆａｃｅ（７），ｅｄｇｅ８）を配列Ａ［３］に格納する。また、図６の例では、第２の検出部１４ｂは、（ｅｄｇｅ１０，ｆａｃｅ（１０），ｅｄｇｅ１１）を配列Ａ［４］に、（ｅｄｇｅ１１，ｆａｃｅ（１１），ｅｄｇｅ１２）を配列Ａ［５］に、（ｅｄｇｅ１２，ｆａｃｅ（１２），ｅｄｇｅ１３）を配列Ａ［６］に格納する。
【００４２】
また、図６の例では、第２の検出部１４ｂは、（ｅｄｇｅ１５，ｆａｃｅ（１５），ｅｄｇｅ１６）を配列Ａ［７］に、（ｅｄｇｅ１６，ｆａｃｅ（１６），ｅｄｇｅ１７）を配列Ａ［８］に格納する。また、図６の例では、第２の検出部１４ｂは、（ｅｄｇｅ１７，ｆａｃｅ（１７），ｅｄｇｅ１８）を配列Ａ［９］に格納する。また、図６の例では、第２の検出部１４ｂは、（ｅｄｇｅ２０，ｆａｃｅ（２０），ｅｄｇｅ２１）を配列Ａ［１０］に、（ｅｄｇｅ２１，ｆａｃｅ（２１），ｅｄｇｅ２２）を配列Ａ［１１］に格納する。また、図６の例では、第２の検出部１４ｂは、（ｅｄｇｅ２２，ｆａｃｅ（２２），ｅｄｇｅ２３）を配列Ａ［１２］に格納する。
【００４３】
また、図６の例では、第２の検出部１４ｂは、（ｅｄｇｅ２５，ｆａｃｅ（２５），ｅｄｇｅ２６）を配列Ａ［１３］に、（ｅｄｇｅ２６，ｆａｃｅ（２６），ｅｄｇｅ２７）を配列Ａ［１４］に格納する。また、図６の例では、第２の検出部１４ｂは、（ｅｄｇｅ２７，ｆａｃｅ（２７），ｅｄｇｅ２８）を配列Ａ［１５］に格納する。また、図６の例では、第２の検出部１４ｂは、（ｅｄｇｅ３０，ｆａｃｅ（３０），ｅｄｇｅ３１）を配列Ａ［１６］に、（ｅｄｇｅ３１，ｆａｃｅ（３１），ｅｄｇｅ３２）を配列Ａ［１７］に格納する。また、図６の例では、第２の検出部１４ｂは、（ｅｄｇｅ３２，ｆａｃｅ（３２），ｅｄｇｅ３３）を配列Ａ［１８］に格納する。このように、図６の例において、第２の検出部１４ｂは、要素数が１８となる配列Ａを生成する。
【００４４】
そして、図６の例では、第２の検出部１４ｂは、（ｅｄｇｅ５，ｆａｃｅ（５），ｅｄｇｅ６）、（ｅｄｇｅ６，ｆａｃｅ（６），ｅｄｇｅ７）および（ｅｄｇｅ７，ｆａｃｅ（７），ｅｄｇｅ８）のゲート候補同士を組み合わせて一つの要素とする。そして、第２の検出部１４ｂは、かかる要素を配列Ｒ［１］に格納する。
【００４５】
また、図６の例では、第２の検出部１４ｂは、（ｅｄｇｅ１０，ｆａｃｅ（１０），ｅｄｇｅ１１）、（ｅｄｇｅ１１，ｆａｃｅ（１１），ｅｄｇｅ１２）および（ｅｄｇｅ１２，ｆａｃｅ（１２），ｅｄｇｅ１３）のゲート候補同士を組み合わせて一つの要素とする。そして、第２の検出部１４ｂは、かかる要素を配列Ｒ［２］に格納する。
【００４６】
また、図６の例では、第２の検出部１４ｂは、（ｅｄｇｅ１５，ｆａｃｅ（１５），ｅｄｇｅ１６）、（ｅｄｇｅ１６，ｆａｃｅ（１６），ｅｄｇｅ１７）および（ｅｄｇｅ１７，ｆａｃｅ（１７），ｅｄｇｅ１８）のゲート候補同士を組み合わせて一つの要素とする。そして、第２の検出部１４ｂは、かかる要素を配列Ｒ［３］に格納する。
【００４７】
また、図６の例では、第２の検出部１４ｂは、（ｅｄｇｅ２０，ｆａｃｅ（２０），ｅｄｇｅ２１）、（ｅｄｇｅ２１，ｆａｃｅ（２１），ｅｄｇｅ２２）および（ｅｄｇｅ２２，ｆａｃｅ（２２），ｅｄｇｅ２３）のゲート候補同士を組み合わせて一つの要素とする。そして、第２の検出部１４ｂは、かかる要素を配列Ｒ［４］に格納する。
【００４８】
また、図６の例では、第２の検出部１４ｂは、（ｅｄｇｅ２５，ｆａｃｅ（２５），ｅｄｇｅ２６）、（ｅｄｇｅ２６，ｆａｃｅ（２６），ｅｄｇｅ２７）および（ｅｄｇｅ２７，ｆａｃｅ（２７），ｅｄｇｅ２８）のゲート候補同士を組み合わせて一つの要素とする。そして、第２の検出部１４ｂは、かかる要素を配列Ｒ［５］に格納する。
【００４９】
また、図６の例では、第２の検出部１４ｂは、（ｅｄｇｅ３０，ｆａｃｅ（３０），ｅｄｇｅ３１）、（ｅｄｇｅ３１，ｆａｃｅ（３１），ｅｄｇｅ３２）および（ｅｄｇｅ３２，ｆａｃｅ（３２），ｅｄｇｅ３３）のゲート候補同士を組み合わせて一つの要素とする。そして、第２の検出部１４ｂは、かかる要素を配列Ｒ［６］に格納する。
【００５０】
このように、図６の例において、第２の検出部１４ｂは、要素数が６となる配列Ｒを生成する。
【００５１】
そして、図６の例では、第２の検出部１４ｂは、配列Ｒ［１］の要素に含まれるｅｄｇｅ５、ｅｄｇｅ６およびｅｄｇｅ７のそれぞれの線に対して、新たにＩＤとして１，２，３のそれぞれを割り当てる。これにより、ｅｄｇｅ［１］、ｅｄｇｅ［２］およびｅｄｇｅ［３］のそれぞれは、ｅｄｇｅ５、ｅｄｇｅ６およびｅｄｇｅ７の各線を示す。
【００５２】
また、図６の例では、第２の検出部１４ｂは、配列Ｒ［２］の要素に含まれるｅｄｇｅ１０、ｅｄｇｅ１１およびｅｄｇｅ１２のそれぞれの線に対して、新たにＩＤとして４，５，６のそれぞれを割り当てる。これにより、ｅｄｇｅ［４］、ｅｄｇｅ［５］およびｅｄｇｅ［６］のそれぞれは、ｅｄｇｅ１０、ｅｄｇｅ１１およびｅｄｇｅ１２の各線を示す。
【００５３】
また、図６の例では、第２の検出部１４ｂは、配列Ｒ［３］の要素に含まれるｅｄｇｅ１５、ｅｄｇｅ１６およびｅｄｇｅ１７のそれぞれの線に対して、新たにＩＤとして７，８，９のそれぞれを割り当てる。これにより、ｅｄｇｅ［７］、ｅｄｇｅ［８］およびｅｄｇｅ［９］のそれぞれは、ｅｄｇｅ１５、ｅｄｇｅ１６およびｅｄｇｅ１７の各線を示す。
【００５４】
また、図６の例では、第２の検出部１４ｂは、配列Ｒ［４］の要素に含まれるｅｄｇｅ２０、ｅｄｇｅ２１およびｅｄｇｅ２２のそれぞれの線に対して、新たにＩＤとして１０，１１，１２のそれぞれを割り当てる。これにより、ｅｄｇｅ［１０］、ｅｄｇｅ［１１］およびｅｄｇｅ［１２］のそれぞれは、ｅｄｇｅ２０、ｅｄｇｅ２１およびｅｄｇｅ２２の各線を示す。
【００５５】
また、図６の例では、第２の検出部１４ｂは、配列Ｒ［５］の要素に含まれるｅｄｇｅ２５、ｅｄｇｅ２６およびｅｄｇｅ２７のそれぞれの線に対して、新たにＩＤとして１３，１４，１５のそれぞれを割り当てる。これにより、ｅｄｇｅ［１３］、ｅｄｇｅ［１４］およびｅｄｇｅ［１５］のそれぞれは、ｅｄｇｅ２５、ｅｄｇｅ２６およびｅｄｇｅ２７の各線を示す。
【００５６】
また、図６の例では、第２の検出部１４ｂは、配列Ｒ［６］の要素に含まれるｅｄｇｅ３０、ｅｄｇｅ３１およびｅｄｇｅ３２のそれぞれの線に対して、新たにＩＤとして１６，１７，１８のそれぞれを割り当てる。これにより、ｅｄｇｅ［１６］、ｅｄｇｅ［１７］およびｅｄｇｅ［１８］のそれぞれは、ｅｄｇｅ３０、ｅｄｇｅ３１およびｅｄｇｅ３２の各線を示す。
【００５７】
そして、第２の検出部１４ｂは、配列Ｒの各要素ごとに、各線をＸＹ平面に投影するとともに、ＸＺ平面に投影する。そして、第２の検出部１４ｂは、配列Ｒの各要素ごとに、ＸＹ平面に投影されたｅｄｇｅ［ｍ＋１］の長さが、ｅｄｇｅ［ｍ］の長さ以下であるか、ＸＺ平面に投影されたｅｄｇｅ［ｍ＋１］の長さが、ｅｄｇｅ［ｍ］の長さ以下である場合には、次の処理を行う。すなわち、第２の検出部１４ｂは、（ｅｄｇｅ［ｍ］，（ｅｄｇｅ［ｍ］およびｅｄｇｅ［ｍ＋１］の各線を有する面），ｅｄｇｅ［ｍ＋１］）の組をゲートとして検出する。すなわち、第２の検出部１４ｂは、ｅｄｇｅ［ｍ＋１］の長さが、ｅｄｇｅ［ｍ］の長さ以下とならない場合のｅｄｇｅ［ｍ］およびｅｄｇｅ［ｍ＋１］の各線を有する面は、製品を形成する面であるため、ゲートを形成する面として検出しない。
【００５８】
図６の例では、第２の検出部１４ｂは、（ｅｄｇｅ［１］，ｆａｃｅ（５），ｅｄｇｅ［２］）の組をゲートとして検出する。また、図６の例では、第２の検出部１４ｂは、（ｅｄｇｅ［４］，ｆａｃｅ（１０），ｅｄｇｅ［５］）の組をゲートとして検出する。また、図６の例では、第２の検出部１４ｂは、（ｅｄｇｅ［７］，ｆａｃｅ（１５），ｅｄｇｅ［８］）の組をゲートとして検出する。また、図６の例では、第２の検出部１４ｂは、（ｅｄｇｅ［１０］，ｆａｃｅ（２０），ｅｄｇｅ［１１］）の組をゲートとして検出する。また、図６の例では、第２の検出部１４ｂは、（ｅｄｇｅ［１３］，ｆａｃｅ（２５），ｅｄｇｅ［１４］）の組をゲートとして検出する。また、図６の例では、第２の検出部１４ｂは、（ｅｄｇｅ［１６］，ｆａｃｅ（３０），ｅｄｇｅ［１７］）の組をゲートとして検出する。
【００５９】
そして、第２の検出部１４ｂは、ゲートとして検出したＩＤの組を、ゲート２０ｂを形成する面および線のＩＤとして記憶部１３に格納する。このように、第２の検出部１４ｂは、ゲート２０ｂを形成する面および線のＩＤを検出することで、ゲート２０ｂを検出する。
【００６０】
そして、第２の検出部１４ｂは、ゲート２０ｂを形成する面および線のＩＤに対応付けて、ゲートであることを示す属性を記憶する。
【００６１】
第３の検出部１４ｃは、スプルー２０ａと、ゲート２０ｂとの間のランナーシステムモデル１３ａの部分をランナー２０ｃとして検出する。第３の検出部１４ｃは、ランナー２０ｃとして検出した部分の線および面の各ＩＤに、ランナーであることを示す属性を対応付けて記憶部１３に記憶する。
【００６２】
シミュレート部１４ｄは、ランナーシステム２０を用いてシミュレーションを行う。例えば、シミュレート部１４ｄは、記憶部１３から、対応付けられた各属性とともにスプルー２０ａ、ゲート２０ｂおよびランナー２０ｃをランナーシステム２０として取得し、ランナーシステム２０を用いてシミュレーションを行う。シミュレーションの一例としては、シミュレート部１４ｄは、ランナーシステム２０を用いて樹脂製品を製造した場合の所定時間内における金型への溶融樹脂の充填量などを予測する。また、他の例では、シミュレート部１４ｄは、金型への溶融樹脂の充填率が所定の値を満たす場合のランナーシステム２０のゲート２０ｂの出射部分の開口面積を予測する。そして、シミュレート部１４ｄは、シミュレーション結果を出力部１２に送信する。
【００６３】
制御部１４は、例えば、ＡＳＩＣ（Application  Specific  Integrated  Circuit）やＦＰＧＡ（Field  Programmable  Gate  Array）などの集積回路、または、ＣＰＵ（Central  Processing  Unit）やＭＰＵ（Micro  Processing  Unit）などの電子回路である。
【００６４】
［処理の流れ］
次に、本実施例に係る検出装置１０の処理の流れを説明する。図７は、実施例１に係る検出処理の手順を示すフローチャートである。この検出処理は、入力部１１から制御部１４に検出処理を実行する指示が入力された場合に実行される。
【００６５】
図７に示すように、第１の検出部１４ａは、スプルー２０ａを検出するスプルー検出処理を実行する（ステップＳ１０１）。第２の検出部１４ｂは、ゲート候補を検出するゲート候補検出処理を実行する（ステップＳ１０２）。第２の検出部１４ｂおよび第３の検出部１４ｃは、ゲート２０ｂおよびランナー２０ｃを検出するゲート・ランナー検出処理を実行する（ステップＳ１０３）。そして、シミュレート部１４ｄは、検出したスプルー２０ａ、ゲート２０ｂおよびランナー２０ｃを用いてシミュレーションを行い、シミュレーション結果を出力部１２に送信し（ステップＳ１０４）、処理を終了する。
【００６６】
続いて、上記のステップＳ１０１で実行するスプルー検出処理について説明する。図８は、実施例１に係るスプルー検出処理の手順を示すフローチャートである。
【００６７】
図８に示すように、第１の検出部１４ａは、記憶部１３からＣＡＤデータ１３ｃを取得する（ステップＳ２０１）。続いて、第１の検出部１４ａは、形状が「円」で、ＸＹ平面に平行で、かつＺ軸方向の座標値が最大の面を特定し、特定した面をスプルー２０ａの入り口として検出する（ステップＳ２０２）。そして、第１の検出部１４ａは、スプルー２０ａの入り口に近い側から順番に、面および線のそれぞれに、それぞれ独立して、ＩＤとして正の整数を昇順で割り当てる（ステップＳ２０３）。続いて、第１の検出部１４ａは、スプルー２０ａの入り口として検出した面とつながっている面、すなわち、スプルー２０ａを形成する面のＩＤを検出する（ステップＳ２０４）。
【００６８】
そして、第１の検出部１４ａは、検出したＩＤが示す面を形成する各線の各ＩＤを検出する（ステップＳ２０５）。続いて、第１の検出部１４ａは、検出した面のＩＤおよび各線の各ＩＤを、スプルー２０ａを形成する面および線のＩＤとして記憶部１３に格納する（ステップＳ２０６）。そして、第１の検出部１４ａは、スプルー２０ａを形成する面および線のＩＤに対応付けて、スプルーであることを示す属性を記憶部１３に格納し（ステップＳ２０７）、処理結果を制御部１４の内部メモリに格納し、リターンする。
【００６９】
続いて、上記のステップＳ１０２で実行するゲート候補検出処理について説明する。図９は、実施例１に係るゲート候補検出処理の手順を示すフローチャートである。
【００７０】
図９に示すように、第２の検出部１４ｂは、変数ｎの値を「２」に設定する（ステップＳ３０１）。
【００７１】
続いて、第２の検出部１４ｂは、次の２つの判定の少なくとも一方を行う（ステップＳ３０２）。一つ目の判定は、ｆａｃｅ（ｎ）の面の形状が「円筒面」であり、ｅｄｇｅｎの形状が「円」であり、ｅｄｇｅｎ＋１の形状が「円」であるか否かの判定である。二つ目の判定は、ｆａｃｅ（ｎ）の面の形状が「四角形（直方体の６面のうち４面の場合）」であり、ｅｄｇｅｎの形状が「四角形」であり、ｅｄｇｅｎ＋１の形状が「四角形」であるか否かの判定である。
【００７２】
ステップＳ３０２で両方の判定で否定判定の場合には、ステップＳ３０６へ進む。ここで、ステップＳ３０２で少なくとも一方の判定で肯定判定の場合には、第２の検出部１４ｂは、ｅｄｇｅｎおよびｅｄｇｅｎ＋１の各線をＸＹ平面に投影するとともに、ＸＺ平面に投影する（ステップＳ３０３）。続いて、第２の検出部１４ｂは、ＸＹ平面に投影されたｅｄｇｅｎ＋１の長さが、ｅｄｇｅｎの長さ以下である場合、または、ＸＺ平面に投影されたｅｄｇｅｎ＋１の長さが、ｅｄｇｅｎの長さ以下である場合（ステップＳ３０４肯定）には、次のような処理を行う。すなわち、第２の検出部１４ｂは、（ｅｄｇｅｎ，ｆａｃｅ（ｎ），ｅｄｇｅｎ＋１）の組をゲート候補として、配列Ａに格納する（ステップＳ３０５）。また、ＸＹ平面に投影されたｅｄｇｅｎ＋１の長さが、ｅｄｇｅｎの長さ以下でなく、かつＸＺ平面に投影されたｅｄｇｅｎ＋１の長さが、ｅｄｇｅｎの長さ以下でない場合（ステップＳ３０４否定）には、ステップＳ３０６へ進む。
【００７３】
そして、第２の検出部１４ｂは、変数ｎの値を一つインクリメントする（ステップＳ３０６）。続いて、第２の検出部１４ｂは、変数ｎの値が、面に割り当てられたＩＤの数の最大値を超えたか否かを判定する（ステップＳ３０７）。変数ｎの値が、面に割り当てられたＩＤの数の最大値を超えた場合（ステップＳ３０７肯定）には、第２の検出部１４ｂは、処理結果を制御部１４の内部メモリに格納し、リターンする。一方、変数ｎの値が、面に割り当てられたＩＤの数の最大値を超えていない場合（ステップＳ３０７否定）には、ステップＳ３０２へ戻る。
【００７４】
続いて、上記のステップＳ１０３で実行するゲート・ランナー検出処理について説明する。図１０は、実施例１に係るゲート・ランナー検出処理の手順を示すフローチャートである。
【００７５】
図１０に示すように、第２の検出部１４ｂは、配列Ａに格納された各ゲート候補の面および線のＩＤに基づいて、面がつながっている各ゲート候補どうしを組み合わせて一つの要素として、配列Ｒに格納する（ステップＳ４０１）。
【００７６】
そして、第２の検出部１４ｂは、配列Ｒの各要素に含まれる各線に、スプルー２０ａの入り口に近い側から順番に、ＩＤとして正の整数を昇順で新たに割り当てる（ステップＳ４０２）。
【００７７】
続いて、第２の検出部１４ｂは、変数ｉ、ｍの各値を１に設定する（ステップＳ４０３）。そして、配列Ｒ［ｉ］の要素のｅｄｇｅ［ｍ＋１］およびｅｄｇｅ［ｍ］の各線をＸＹ平面に投影するとともに、ＸＺ平面に投影する（ステップＳ４０４）。なお、ステップＳ４０４の処理は、すでに投影された線については省略できる。
【００７８】
そして、第２の検出部１４ｂは、次の２つの判定の少なくとも一方を行う（ステップＳ４０５）。一つ目の判定は、ＸＹ平面に投影されたｅｄｇｅ［ｍ＋１］の長さが、ｅｄｇｅ［ｍ］の長さ以下であるか否かの判定である。二つめの判定は、ＸＺ平面に投影されたｅｄｇｅ［ｍ＋１］の長さが、ｅｄｇｅ［ｍ］の長さ以下であるか否かの判定である。
【００７９】
ステップＳ４０５で、両方の判定で否定判定の場合には、ステップＳ４１２へ進む。また、ステップＳ４０５で少なくとも一方の判定で肯定判定の場合には、第２の検出部１４ｂは、（ｅｄｇｅ［ｍ］，（ｅｄｇｅ［ｍ］およびｅｄｇｅ［ｍ＋１］の各線を有する面），ｅｄｇｅ［ｍ＋１］）の組をゲートとして検出する（ステップＳ４０６）。
【００８０】
そして、第２の検出部１４ｂは、ゲート２０ｂを形成する面および線のＩＤに対応付けて、ゲートであることを示す属性を記憶部１３に格納する（ステップＳ４０７）。そして、第３の検出部１４ｃは、スプルー２０ａと、ゲート２０ｂとの間のランナーシステムモデル１３ａの部分をランナー２０ｃとして検出する（ステップＳ４０８）。その後、第３の検出部１４ｃは、ランナー２０ｃとして検出した部分の線および面の各ＩＤに、ランナーであることを示す属性を対応付けて記憶部１３に格納する（ステップＳ４０９）。
【００８１】
その後、第３の検出部１４ｃは、変数ｍの値を一つインクリメントする（ステップＳ４１０）。続いて、第３の検出部１４ｃは、変数ｍの値が配列Ｒ［ｉ］の要素に含まれる線の個数以上となったか否かを判定する（ステップＳ４１１）。変数ｍの値が配列Ｒ［ｉ］の要素に含まれる線の個数以上となっていない場合（ステップＳ４１１否定）には、ステップＳ４０４に戻る。
【００８２】
一方、変数ｍの値が配列Ｒ［ｉ］の要素に含まれる線の個数以上となった場合（ステップＳ４１１肯定）には、第３の検出部１４ｃは、変数ｉの値を一つインクリメントする（ステップＳ４１２）。そして、第３の検出部１４ｃは、変数ｉの値が配列Ｒの要素数を超えたか否かを判定する（ステップＳ４１３）。変数ｉの値が配列Ｒの要素数を超えていない場合（ステップＳ４１３否定）には、ステップＳ４０４に戻る。一方、変数ｉの値が配列Ｒの要素数を超えた場合（ステップＳ４１３肯定）には、第２の検出部１４ｂおよび第３の検出部１４ｃは、処理結果を制御部１４の内部メモリに格納し、リターンする。
【００８３】
［実施例１の効果］
上述してきたように、本実施例に係る検出装置１０は、解析対象のＣＡＤデータ１３ｃに含まれるランナーシステムモデル１３ａに基づいて、次のような処理を行う。すなわち、本実施例に係る検出装置１０は、ランナーシステムモデル１３ａが示すランナーシステム２０において、断面の形状が円である突出した部分を特定することで、ランナーシステム２０のスプルー２０ａを検出する。また、本実施例に係る検出装置１０は、ＣＡＤデータ１３ｃ、およびゲートの形状、例えばテーパー形状、直方体または直円柱に基づいて、ランナーシステム２０のゲート２０ｂを検出する。また、本実施例に係る検出装置１０は、ランナーシステムモデル１３ａ、スプルー２０ａ、およびゲート２０ｂに基づいて、ランナーシステム２０のランナー２０ｃを検出する。よって、本実施例に係る検出装置１０によれば、ＣＡＤデータ１３ｃに含まれるランナーシステム２０を自動的に検出することができる。
【００８４】
また、本実施例に係る検出装置１０は、スプルー２０ａとゲート２０ｂとの間のランナーシステムモデル２０の部分をランナー２０ｃとして検出する。よって、本実施例に係る検出装置１０によれば、複雑な処理を行うことなく簡易にランナー２０ｃを検出することができる。
【００８５】
また、本実施例に係る検出装置１０は、ランナーシステム２０の形状が広くなる部分までのランナーシステムモデル１３ａの部分を、ゲート２０ｂとして検出する。本実施例に係る検出装置１０によれば、ランナーシステム２０と、ランナーシステム２０に接続されている製品２１とを高い精度で切り分けることができ、より高い精度でランナーシステム２０の検出を行うことができる。
【００８６】
さて、これまで開示の装置に関する実施例について説明したが、本発明は上述した実施例以外にも、種々の異なる形態にて実施されてよいものである。そこで、以下では、本発明に含まれる他の実施例を説明する。
【００８７】
上記の実施例では、ＣＡＤデータ１３ｃを生成する際に、Ｚ軸の正の方向に、スプルー２０ａの入り口が設定された場合について例示したが、開示の装置はこれに限定されない。例えば、ＣＡＤデータ１３ｃを生成する際に、Ｘ軸またはＹ軸の正の方向に、スプルー２０ａの入り口を設定するようにしてもよい。
【００８８】
また、上記の実施例では、各処理で割り当てたＩＤを元のランナーシステムモデル１３ａに含まれている、対応するＩＤに変換しない場合について例示したが、開示の装置はこれに限定されない。例えば、各処理で割り当てたＩＤを元のランナーシステムモデル１３ａに含まれている、対応するＩＤに変換するようにしてもよい。
【００８９】
また、実施例１において説明した各処理のうち、自動的に行われるものとして説明した処理の全部または一部を手動的に行うこともできる。また、本実施例において説明した各処理のうち、手動的に行われるものとして説明した処理の全部または一部を公知の方法で自動的に行うこともできる。例えば、図８のステップＳ２０１において、ユーザが入力部１１を操作して、ＣＡＤデータを入力するようにしてもよい。
【００９０】
また、各種の負荷や使用状況などに応じて、各実施例において説明した各処理の各ステップでの処理を任意に細かくわけたり、あるいはまとめたりすることができる。また、ステップを省略することもできる。例えば、ステップＳ３０３、ステップＳ４０４で全ての平面について図形の長さを算出したが、開示の装置はこれに限られない。例えば、開示の装置は、ステップＳ３０３、ステップＳ４０４において、各線をＸＹ平面またはＸＺ平面の何れかの平面に投影するようにしてもよい。
【００９１】
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的状態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。例えば、図１に示す第３の検出部１４ｃとシミュレート部１４ｄとが統合されてもよい。また、図１に示す第１の検出部１４ａと第２の検出部１４ｂと第３の検出部１４ｃとが統合されてもよい。
【実施例２】
【００９２】
［検出プログラム］
また、上記の実施例で説明した検出装置１０の各種の処理は、あらかじめ用意されたプログラムをパーソナルコンピュータやワークステーションなどのコンピュータシステムで実行することによって実現することもできる。そこで、以下では、図１１を用いて、上記の実施例で説明した検出装置と同様の機能を有する検出プログラムを実行するコンピュータの一例を説明する。図１１は、検出プログラムを実行するコンピュータを示す図である。
【００９３】
図１１に示すように、実施例２におけるコンピュータ３００は、ＣＰＵ（Central  Processing  Unit）３１０、ＲＯＭ（Read  Only  Memory）３２０、ＨＤＤ（Hard  Disk  Drive）３３０、ＲＡＭ（Random  Access  Memory）３４０を有する。これら３００〜３４０の各部は、バス４００を介して接続される。
【００９４】
ＲＯＭ３２０には、上記の実施例１で示す第１の検出部１４ａと、第２の検出部１４ｂと、第３の検出部１４ｃと、シミュレート部１４ｄと同様の機能を発揮する検出プログラムが予め記憶される。すなわち、ＲＯＭ３２０には、図１１に示すように、検出プログラム３２０ａが記憶される。なお、検出プログラム３２０ａについては、適宜分離しても良い。
【００９５】
そして、ＣＰＵ３１０が、検出プログラム３２０ａをＲＯＭ３２０から読み出して実行する。
【００９６】
そして、ＨＤＤ３３０には、ＣＡＤデータ３３０ａが設けられる。ＣＡＤデータ３３０ａは、図１に示したＣＡＤデータ１３ｃに対応する。
【００９７】
そして、ＣＰＵ３１０は、ＣＡＤデータ３３０ａを読み出してＲＡＭ３４０に格納する。ＣＰＵ３１０は、ＲＡＭ３４０に格納されたＣＡＤデータ３４０ａを用いて、検出プログラム３２０ａを実行する。なお、ＲＡＭ３４０に格納される各データは、常に全てのデータがＲＡＭ３４０に格納される必要はなく、処理に必要なデータのみがＲＡＭ３４０に格納されれば良い。
【００９８】
なお、上記した検出プログラムについては、必ずしも最初からＨＤＤ３３０に記憶させておく必要はない。
【００９９】
例えば、コンピュータ３００に挿入されるフレキシブルディスク（ＦＤ）、ＣＤ−ＲＯＭ、ＤＶＤディスク、光磁気ディスク、ＩＣカードなどの「可搬用の物理媒体」にプログラムを記憶させておく。そして、コンピュータ３００がこれらからプログラムを読み出して実行するようにしてもよい。  
【０１００】
さらには、公衆回線、インターネット、ＬＡＮ、ＷＡＮなどを介してコンピュータ３００に接続される「他のコンピュータ（またはサーバ）」などにプログラムを記憶させておく。そして、コンピュータ３００がこれらからプログラムを読み出して実行するようにしてもよい。
【０１０１】
以上の各実施例を含む実施形態に関し、さらに以下の付記を開示する。
【０１０２】
（付記１）解析対象のデータに含まれるランナーシステムモデルに基づいて、前記ランナーシステムモデルが示すランナーシステムにおいて、断面の形状が円である突出した部分を特定することで、前記ランナーシステムのスプルーを検出し、
前記データ、およびゲートの形状に基づいて、前記ランナーシステムのゲートを検出し、
前記ランナーシステムモデル、前記スプルー、および前記ゲートに基づいて、前記ランナーシステムのランナーを検出する
処理をコンピュータに実行させることを特徴とする検出プログラム。
【０１０３】
（付記２）前記ゲートを検出する処理は、前記データ、および前記ゲートの形状であるテーパー形状であって、樹脂の射出に近づくほど開口面積が狭くなるテーパー形状、若しくは直方体、または直円柱に基づいて、前記ゲートを検出することを特徴とする付記１に記載の検出プログラム。
【０１０４】
（付記３）前記ランナーを検出する処理は、前記スプルーと前記ゲートとの間の前記ランナーシステムモデルの部分を前記ランナーとして検出することを特徴とする付記１または２に記載の検出プログラム。
【０１０５】
（付記４）前記ゲートを検出する処理は、前記ランナーシステムの形状が広くなる部分までの前記ランナーシステムモデルの部分を、前記ゲートとして検出することを特徴とする付記１〜３の何れか１つに記載の検出プログラム。
【０１０６】
（付記５）コンピュータが実行する検出方法であって、
解析対象のデータに含まれるランナーシステムモデルに基づいて、前記ランナーシステムモデルが示すランナーシステムにおいて、断面の形状が円である突出した部分を特定することで、前記ランナーシステムのスプルーを検出し、
前記データ、およびゲートの形状に基づいて、前記ランナーシステムのゲートを検出し、
前記ランナーシステムモデル、前記スプルー、および前記ゲートに基づいて、前記ランナーシステムのランナーを検出する
ことを特徴とする検出方法。
【０１０７】
（付記６）前記データ、および前記ゲートの形状であるテーパー形状であって、樹脂の射出に近づくほど開口面積が狭くなるテーパー形状、若しくは直方体、または直円柱に基づいて、前記ゲートを検出することを特徴とする付記５に記載の検出方法。
【０１０８】
（付記７）前記スプルーと前記ゲートとの間の前記ランナーシステムモデルの部分を前記ランナーとして検出することを特徴とする付記５または６に記載の検出方法。
【０１０９】
（付記８）前記ランナーシステムの形状が広くなる部分までの前記ランナーシステムモデルの部分を、前記ゲートとして検出することを特徴とする付記５〜７の何れか１つに記載の検出方法。
【０１１０】
（付記９）解析対象のデータに含まれるランナーシステムモデルに基づいて、前記ランナーシステムモデルが示すランナーシステムにおいて、断面の形状が円である突出した部分を特定することで、前記ランナーシステムのスプルーを検出する第１の検出部と、
前記データ、およびゲートの形状に基づいて、前記ランナーシステムのゲートを検出する第２の検出部と、
前記ランナーシステムモデル、前記スプルー、および前記ゲートに基づいて、前記ランナーシステムのランナーを検出する第３の検出部と
を有することを特徴とする検出装置。
【０１１１】
（付記１０）前記第２の検出部は、前記データ、および前記ゲートの形状であるテーパー形状であって、樹脂の射出に近づくほど開口面積が狭くなるテーパー形状、若しくは直方体、または直円柱に基づいて、前記ゲートを検出することを特徴とする付記９に記載の検出装置。
【０１１２】
（付記１１）前記第３の検出部は、前記スプルーと前記ゲートとの間の前記ランナーシステムモデルの部分を前記ランナーとして検出することを特徴とする付記９または１０に記載の検出装置。
【０１１３】
（付記１２）前記第２の検出部は、前記ランナーシステムの形状が広くなる部分までの前記ランナーシステムモデルの部分を、前記ゲートとして検出することを特徴とする付記９〜１１の何れか１つに記載の検出装置。
【符号の説明】
【０１１４】
１０        検出装置
１１        入力部
１２        出力部
１３        記憶部
１３ａ      ランナーシステムモデル
１３ｂ      製品モデル
１３ｃ      ＣＡＤデータ
１４        制御部
１４ａ      第１の検出部
１４ｂ      第２の検出部
１４ｃ      第３の検出部
１４ｄ      シミュレート部
【図１】
0005699572.tif 000002
【図２】
0005699572.tif 000003
【図３】
0005699572.tif 000004
【図４】
0005699572.tif 000005
【図５】
0005699572.tif 000006
【図６】
0005699572.tif 000007
【図７】
0005699572.tif 000008
【図８】
0005699572.tif 000009
【図９】
0005699572.tif 000010
【図１０】
0005699572.tif 000011
【図１１】
0005699572.tif 000012