JP4275593B2 - 接触定義装置、接触定義プログラム、接触定義方法 - Google Patents

接触定義装置、接触定義プログラム、接触定義方法 Download PDF

Info

Publication number
JP4275593B2
JP4275593B2 JP2004232114A JP2004232114A JP4275593B2 JP 4275593 B2 JP4275593 B2 JP 4275593B2 JP 2004232114 A JP2004232114 A JP 2004232114A JP 2004232114 A JP2004232114 A JP 2004232114A JP 4275593 B2 JP4275593 B2 JP 4275593B2
Authority
JP
Japan
Prior art keywords
data
contact
positional relationship
normal vector
array
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
JP2004232114A
Other languages
English (en)
Other versions
JP2006048583A (ja
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2004232114A priority Critical patent/JP4275593B2/ja
Priority to US10/986,137 priority patent/US20060028465A1/en
Priority to EP04257100A priority patent/EP1626358A3/en
Publication of JP2006048583A publication Critical patent/JP2006048583A/ja
Application granted granted Critical
Publication of JP4275593B2 publication Critical patent/JP4275593B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • Computer Graphics (AREA)
  • Software Systems (AREA)
  • Image Analysis (AREA)
  • Processing Or Creating Images (AREA)
  • Image Processing (AREA)

Description

本発明は、複数の物体間における接触に関する定義を行う接触定義装置、接触定義プログラムおよび接触定義方法に関するものである。
従来、接触を伴う物体の変形や運動を有限要素法などにより解析する技術が提供されている(例えば、特許文献1から3参照。)。
上記従来技術では、接触する可能性がある物体同士を物体の形状データ等に基づいてユーザが確認し、それぞれの物体における互いに接触する可能性のある面の対(いわゆる接触対)をユーザがマニュアルで選択し、選択した面の対を接触対として定義する。
特開平9−145493号公報 (第4―8頁、第2図) 特開2001−337940号公報 (第5―10頁、第1図) 特開2002−56037号公報 (第3―4頁、第1図)
しかし、上述のようなマニュアル操作は、解析対象となる物体の数が増えたり、物体間における接触箇所が多くなったりすることによって煩雑になり、接触する可能性のある面の選択や接触対の定義のミスが生じやすくなる。このようなミスは、ユーザがマニュアルで確認することもできるが、定義を行ったデータに対する解析を実際に実行したときに初めて発見される場合も少なくない。
上述のような接触対の定義ミスの発生は、当該ミスのデバッグ等の工数の増加を招き、作業の効率化の妨げとなっていた。
本発明は上述した問題点を解決するためになされたものであり、複数の物体間における互いに接触する可能性がある面の対の定義を正確かつ効率的に行うことを目的とする。
上述した課題を解決するため、本発明に係る接触定義装置は、複数の物体の表面形状に関するデータを取得する形状データ取得部と、前記複数の物体間の所定の位置関係に関する位置関係情報を取得する位置関係情報取得部と、前記複数の物体のうちの任意の物体の外表面の任意の領域における該物体の外側に向かう法線ベクトルに関する情報を取得するベクトル情報取得部と、前記表面形状に関するデータ、位置関係情報および法線ベクトルに関する情報に基づいて、前記所定の位置関係において、任意の物体の外表面の任意の領域における前記法線ベクトルの方向に位置する該法線ベクトルと略反対方向の法線ベクトルをもつ他の物体の外表面の領域のうち、該任意の領域に最も近い領域を、該任意の領域と接触する可能性のある領域と定義する接触定義部とを備えてなることを特徴とするものである。このような構成によれば、従来マニュアル操作により行っていた複数の物体間における互いに接触する可能性がある面の対の定義を、自動的に正確かつ効率的に行うことができる。
上述のような構成の接触定義装置において、前記物体の表面形状に関するデータは、複数の面要素のデータからなるものであり、前記表面形状に関するデータに基づいて、同一物体における同一平面上に存在する複数の面要素についてグループ化を行うグループ化部を有し、前記接触定義部は、前記グループ化された面要素のグループの領域毎に前記定義を行う構成とすることが好ましい。このように、グループ化された面要素のグループに対して接触対の定義を行うことで、個々の面要素に対して接触対の定義を行う場合に比べ、大幅な処理負担の軽減に寄与することができる。
また、上述のような構成の接触定義装置において、前記グループ化部は、所定の座標軸と直交する面要素については、該直交する座標軸、該面要素の座標および該面要素における法線ベクトルの方向に基づいてグループ化を行う構成とすることもできる。一般に、物体の表面形状に関するデータを構成している面要素は、座標軸(例えば、X−Y−Z座標系等におけるいずれかの座標軸)と直交している場合が多く、該直交する座標軸、該面要素の座標および該面要素における法線ベクトルの方向に基づいてグループ化を行うことで、接触対となる可能性が高い面グループ同士での効率的な接触定義の処理を行うことが可能となる。
また、本発明に係る接触定義プログラムは、複数の物体の表面形状に関するデータを取得する形状データ取得ステップと、前記複数の物体間の所定の位置関係に関する位置関係情報を取得する位置関係情報取得ステップと、前記複数の物体のうちの任意の物体の外表面の任意の領域における該物体の外側に向かう法線ベクトルに関する情報を取得するベクトル情報取得ステップと、前記表面形状に関するデータ、位置関係情報および法線ベクトルに関する情報に基づいて、前記所定の位置関係において、任意の物体の外表面の任意の領域における前記法線ベクトルの方向に位置する該法線ベクトルと略反対方向の法線ベクトルをもつ他の物体の外表面の領域のうち、該任意の領域に最も近い領域を、該任意の領域と接触する可能性のある領域と定義する接触定義ステップとをコンピュータに実行させることを特徴とするものである。
また、本発明に係る接触定義方法は、複数の物体の表面形状に関するデータを取得する形状データ取得ステップと、前記複数の物体間の所定の位置関係に関する位置関係情報を取得する位置関係情報取得ステップと、前記複数の物体のうちの任意の物体の外表面の任意の領域における該物体の外側に向かう法線ベクトルに関する情報を取得するベクトル情報取得ステップと、前記表面形状に関するデータ、位置関係情報および法線ベクトルに関する情報に基づいて、前記所定の位置関係において、任意の物体の外表面の任意の領域における前記法線ベクトルの方向に位置する該法線ベクトルと略反対方向の法線ベクトルをもつ他の物体の外表面の領域のうち、該任意の領域に最も近い領域を、該任意の領域と接触する可能性のある領域と定義する接触定義ステップとを有することを特徴とするものである。
以上に詳述したように本発明によれば、複数の物体間における互いに接触する可能性がある面の対の定義を正確かつ効率的に行うことができる。
以下、本発明の実施の形態について図面を参照しつつ説明する。
図1は、本実施の形態による接触定義装置の全体構成を示す機能ブロック図である。
本実施の形態による接触定義装置1は、ベクトル情報生成部11、ベクトル情報取得部12、グループ化部13、接触定義部14、形状データ取得部15、位置関係情報取得部16、剛性情報取得部17、データベース18、CPU19および記憶部1aを備えてなる構成となっている。
データベース18は、複数の物体の表面形状に関するデータである形状データ18a、複数の物体間の所定の位置関係に関する位置関係情報18b、複数の物体の剛性に関するデータである剛性情報18cおよび複数の物体間における接触に関する定義情報である接触定義情報18dを格納している。
形状データ取得部15は、データベース18に格納されている形状データ18aを取得する役割を有している。なお、ここでの形状データ18aにおけるそれぞれの物体の表面形状に関するデータは、複数の面要素のデータから構成されている。
位置関係情報取得部16は、データベース18に格納されている位置関係情報18bを取得する役割を有する。ベクトル情報生成部11は、形状データ18aに基づいて、複数の物体のうちの任意の物体の外表面の任意の領域における該物体の外側に向かう法線ベクトルに関する情報を生成する役割を有している。
ベクトル情報取得部12は、ベクトル情報生成部11において生成された法線ベクトルに関する情報を取得する役割を有している。
グループ化部13は、形状データ取得部15にて取得された形状データ18aに基づいて、同一物体における同一平面上に存在する複数の面要素についてグループ化を行う役割を有している。複数の面要素のグループ化についての詳細は後述する。接触定義部14は、グループ化された面要素のグループの領域毎に、形状データ18a、位置関係情報18bおよび法線ベクトルに関する情報に基づいて、複数の物体間における互いに接触する可能性がある面の対の定義(接触定義)を行う。この接触定義によって得られる接触定義に関する情報は、データベース18に接触定義情報18dとして格納される。
剛性情報取得部17は、データベース18に格納されている剛性情報18cを取得する役割を有する。
また、記憶部1aには、配列NODE、配列ELEM、配列FACEA、配列FACE、配列KT3、変数KT1、配列MENNO、配列FACEB、配列EDGE、配列EDGEA、変数ICMEN、変数ICNODE、配列MINMAX、配列EDGEB、配列AREA、配列FACEDおよび配列CPAIRといった複数のデータが格納されている。これらデータについての詳細は後述する。
なお、ここではデータベース18が接触定義装置1内に配置されている例を示したが、これに限られるものではなく、例えば、接触定義装置1と電気通信回線を通じて通信可能に接続されている外部機器にデータベース18を配置してもよい。また、ここでは形状データ18a〜接触定義情報18dが1つのデータベースに格納されている例を示しているが、これに限られるものではなく、それぞれのデータが別々の外部機器における記憶領域に格納されていてもよい。
続いて、本実施の形態による接触定義装置の動作について説明する。
図2は、本実施の形態による接触定義装置における処理の流れを示すフローチャートである。
まず、形状データ18a、位置関係情報18bおよび剛性情報18cを、データベース18から取得する(形状データ取得ステップ、位置関係情報取得ステップ、剛性情報取得ステップ)(S101)。
次に、取得した形状データ18aに基づいて、複数の物体のうちの任意の物体の外表面の任意の領域における該物体の外側に向かう法線ベクトルに関する情報を生成する(ベクトル情報生成ステップ)(S102)。
続いて、ベクトル情報生成ステップにおいて生成された法線ベクトルに関する情報を取得する(ベクトル情報取得ステップ)(S103)。
上述のステップにて取得した形状データ18aに基づいて、同一物体における同一平面上に存在する複数の面要素についてグループ化を行う(グループ化ステップ)(S104)。
そして、グループ化された面要素のグループの領域毎に、形状データ18a、位置関係情報18bおよび法線ベクトルに関する情報に基づいて、接触定義を行う(接触定義ステップ)(S105)。なお、接触定義ステップにおいて、接触定義に関する情報は、接触定義情報18dとして格納される。このように、グループ化された面要素のグループに対して接触対の定義を行うことで、個々の面要素に対して接触対の定義を行う場合に比べ、大幅な処理負担の軽減に寄与することができる。
以下、具体例を示しつつ、本実施の形態について詳細に説明する。図3に、接触定義を行う対象となる複数の物体の例としての部品A、部品Bおよび部品Cを示す。
同図に示す部品A、部品Bおよび部品Cの表面形状に関するデータは、例えば有限要素法解析に用いられる解析用入力データ(データベース18に格納されている形状データ18a、位置関係情報18bおよび剛性情報18cに相当)である。各部品は、それぞれがメッシュ分割されており、複数の要素から構成されている。これらの要素は、複数の節点によりその領域が規定されている。解析用入力データは、要素の番号、それぞれの要素を構成する節点の座標および当該部品の材質に関する情報(剛性など)を有している。
ここでは、部品Aは100mm×100mm×5mmの板形状に、部品Bは100mm×100mm×3mmの板状部材に70mm×70mmの穴が形成された形状に、部品Cは100mm×100mm×10mmの板形状に設定されている。これら部品A〜部品Cは、図4に示すように重ねて組み立てられるものであり、同図に示すように組み立てられた状態(すなわち、各部品が所定の位置関係にある状態)では、外力を受けた場合等における部材の変形等も考慮すると、部品Aの底面と部品Bの上面及び部品Cの上面、部品Bの底面と部品Cの上面が接触する可能性があると考えられる。
なお、上述の部品A〜部品Cは、組み立てられた状態において、隣接する部品間で節点を共有することのないよう、節点の位置が設定されている。
図5は、本実施の形態における解析用入力データを用いた接触定義の具体的な処理の流れを示すフローチャートである。本実施の形態における接触定義の処理は、同図に示すように解析用入力データの取得(S21)、各部品の外表面形状の抽出(S22)、面グループの分類(S23)、フリーエッジの作成(S24)、フリーエッジの領域を求める(S25)、接触対を求める(S26)、出力(S27)のステップから構成されている。
ここで、S21は、形状データ取得ステップ、位置関係情報取得ステップおよび剛性情報取得ステップに相当し、S21における処理は、主に形状データ取得部15、位置関係情報取得部16および剛性情報取得部17により実現される。
S22およびS23は、ベクトル情報生成ステップ、ベクトル情報取得ステップおよびグループ化ステップに相当し、S22およびS23における処理は、主にベクトル情報生成部11、ベクトル情報取得部12およびグループ化部13により実現される。S24〜S27は、接触定義ステップに相当し、S24〜S27における処理は、主に接触定義部14、接触定義情報18dにより実現される。以下、これらのステップ(S21〜S27)について詳細に説明する。
まず、図6のフローチャートを用いて解析用入力データの読み込み(図5のS21)について詳細に説明する。
データベース18に格納されている部品A〜部品Cの解析用入力データを取得する(S2101)。
取得すべきデータがない場合(S2102,Yes)、処理は終了する。一方、取得すべきデータがある場合(S2102,No)、取得したデータ中に含まれる要素の情報とこれら要素を構成する節点の情報とを判別し(S2103)、各部品を構成する節点の番号および節点座標を配列NODEに(S2104)、各部品の表面形状を規定する要素の番号および各要素を構成する節点の番号を配列ELEMに格納する(S2105)。なお、本実施の形態では、節点の座標値および物体間の位置関係はX−Y−Z座標系により規定されている。
図7に配列NODEにおけるデータ配列の構成例を、図8に配列ELEMにおけるデータ配列の構成例を示す。
続いて、図9のフローチャートを用いて各部品の外表面形状の抽出(図5のS22)について詳細に説明する。
まず、上述の配列ELEMに格納されているデータ配列から要素の情報を1つ分ずつ読み込み(S2201)、面要素を作成し、面要素を構成する節点番号を面要素ごとに配列FACEAに格納する(S2202)。図10に配列FACEAにおけるデータ配列の構成例を示す。
なお、面要素を構成する節点については、順序があらかじめ定義されている。図11に6面体(直方体)を、図12に5面体(三角柱)を、図13にこれら5面体および6面体における各面を構成する節点の順序の定義方法の一例を示す。図13において、例えば6面体の第1面は節点N1、節点N4、節点N3および節点N2によって構成されるように定義されていることがわかる。
続いて、配列FACEAに格納されている面のデータの読み込み(S2203)および配列FACEに格納されている面のデータの読み込み(S2204)を行う。配列FACEは、その時点において各部品の外表面とされる面のデータを格納している。図14に、配列FACEにおけるデータ配列の構成例を示す。
配列FACEAに格納されている面と配列FACEにすでに格納されている面とを比較する(S2205)。ここでは、図10および図14に示すように、配列FACEAが8×6の、配列FACEが8×100000×1000のデータ配列となっており、これら全てのデータについて比較を行う。
上述の比較(S2205)において、配列FACEAに格納されている面要素と配列FACEに格納されているいずれかの面要素との間で3節点共有していれば(S2206)、両面要素は同一面であるとし、同一面の配列FACEデータを削除する(S2207)。このとき、部品番号を配列KT3に記憶しておく(S2208)。図15に配列KT3におけるデータ配列の構成例を示す。配列KT3は、配列FACEに同じ部品が別の部品として定義されていないかどうかをチェックするために用いられるものであり、部品番号が格納されている。
一方、上述の比較(S2205)において、配列FACEAに格納されている面要素と配列FACEに格納されているいずれかの面要素との間で1節点あるいは2節点共有していれば(S2212)、配列FACEの部品番号を変数KT1に記憶する(S2213)。そして、配列FACEに格納されている全ての面要素と比較し(S2214)、3節点共有していなければ、比較している面配列FACEAを配列FACEの変数KT1で示される部品番号の領域に新たに格納する(S2215)。
また、配列FACEに格納されている全ての面要素との間で共有している節点がなければ(S2216、S2217)、新たな部品領域として配列FACEAに格納されているデータを配列FACEに格納する(S2218)。
続いて、配列FACEAに格納されているデータ全てについての比較が終了した後(S2209)、配列KT3を用いて1つの要素について、同一面が検索された部品番号が同じであるかどうかをチェックし(S2210)、部品番号が異なっていたら、同じ部品であるにも拘らず別部品として格納されているものとして、配列KT3で示される部品番号のFACEデータを結合する(すなわち、一方の部品番号のデータを他方の部品番号のデータ中に格納する)(S2211)。上述の処理を面要素のデータ数分だけ繰り返し行う。
続いて、図16のフローチャートを用いて面グループの分類(図5のS23)について詳細に説明する。
まず、配列FACEに格納されている面要素のデータを読み込む(S2301)。次に、読み込んだ面要素を構成する複数の節点の座標データを、配列NODEから取り出す(S2303)。
続いて、上述のステップにおいて取り出した節点の座標データから、当該面要素についての平面の方程式(aX+bY+cZ+d=0)を求める(S2304)。すなわち、表面形状に関するデータに基づいて、複数の物体のうちの任意の物体の外表面の任意の領域における該物体の外側に向かう法線ベクトルに関する情報を生成する(ベクトル情報生成ステップ)。
面グループ毎の平面の方程式の情報(法線ベクトルに関する情報)を格納する配列MENNOに、すでに同じ部品について同じ平面の方程式が格納されているかどうかを検索し(S2305)、格納されていなければ(S2305,No)、新たな面グループ番号を付与し、配列MENNOに格納する(S2306)。本実施の形態では、この処理(S2306)がベクトル情報取得ステップに相当する。図17に配列MENNOにおけるデータ配列の構成例を示す。
各面要素のデータを、部品番号および面の方程式が同じ面毎に配列FACEBに格納することで面要素のグループ化を行う(S2307)。すなわち、同一物体における同一平面上に存在する複数の面要素についてグループ化を行う(グループ化ステップ)。図18に配列FACEBにおけるデータ配列の構成例を示す。
上述のステップ(S2301〜S2307)の処理を、配列FACEに格納されているデータ分だけ繰り返す(S2302)。
図19に、部品A〜部品Cを構成する各面要素がグループ分けされた様子を示す。同図に示すように、部品Aは面グループ番号1(g1)〜面グループ番号6(g6)に、部品Bは面グループ番号7(g7)〜面グループ番号16(g16)に、部品Cは面グループ番号17(g17)〜面グループ番号22(g22)にグループ分けされている。
次に、図20のフローチャートを用いて、それぞれの面グループにおけるフリーエッジの作成(図5のS24)について説明する。
上述の面グループの分類によって配列FACEBに格納された面のデータを読み込み(S2401)、読み込んだ面に対してエッジ(当該面の輪郭線)を作成し、当該作成したエッジに関するデータを配列EDGEに格納する(S2402)。図21に配列EDGEにおけるデータ配列の構成例を示す。
続いて、配列FACEBに格納された面グループのデータを新たに読み込む処理を行い(S2403)、配列FACEBに読み込むべき面グループのデータがまだ格納されている場合(S2404,No)、読み込んだ面のエッジを作成して配列EDGEAに格納する(S2405)。配列FACEBに読み込むべき面グループのデータが格納されていない場合(S2404,Yes)、処理は終了する。図22に配列EDGEAにおけるデータ配列の構成例を示す。
次に、配列EDGEAに格納された面グループのエッジに関するデータと配列EDGEに格納された面グループのエッジに関するデータとを読み込み(S2406,S2407)、両者のエッジに関するデータを比較する(S2408)。
上述の比較の結果、配列EDGEAに格納された面グループのエッジの中に、配列EDGEに格納されているエッジと同じエッジがあれば、配列EDGEにおける重複するエッジのデータを削除する(S2409)。
一方、配列EDGEAに格納された面グループのエッジの中に、配列EDGEに格納されているエッジと同じエッジが存在せず、配列EDGEに次に比較すべきデータがない場合(S2410,Yes)、配列EDGEに配列EDGEAに格納されているエッジのデータを格納する(S2411)。配列EDGEに比較すべきデータがある場合(S2410,No)、配列EDGEに格納された面グループのエッジに関するデータの読み込み(S2407)に戻る。
配列EDGEAに格納された面グループのエッジに関するデータが終了している場合(S2412,Yes)、配列FACEBに格納された面グループのデータの読み込み処理(S2403)に戻る。一方、配列EDGEAに格納された面グループのエッジに関するデータが終了していない場合(S2412,No)、配列EDGEAに格納されたエッジのデータの読み込み処理(S2406)に戻る。
上述のステップ(S2403〜S2412)における処理を、面データ分繰り返し、各面グループにおけるエッジを抽出する(S2404)。
次に、図23および図24のフローチャートを用いて、それぞれの面グループにおける閉じたエッジの領域の抽出(図5のS25)について説明する。ここでは、説明の便宜上、一連のフローチャートを図23と図24に分割している。
まず、配列EDGEに格納されているエッジに関するデータを取得する(S2501)。ここで、取得したデータのエッジをエッジE1とする。
次に、配列EDGEにおけるエッジE1のデータのフラグを確認する(S2502)。フラグが1でなければ(S2502,No)、面グループ番号を変数ICMENに、節点番号を変数ICNODEに格納し、フラグを1に設定する(S2503)。
そして、配列EDGEにおけるエッジE1に関する節点番号に基づき、これらの節点番号に対応する節点座標を配列NODEから取得する(S2504)。この取得した節点座標の最小値と最大値を、配列MINMAXに格納する(S2505)。図25に配列MINMAXにおけるデータ配列の構成例を示す。
一方、フラグが1であった場合(S2502,Yes)、配列EDGEに格納されているエッジに関するデータの取得ステップ(S2501)に戻る。
配列EDGEに格納されているエッジに関するデータを新たに取得する(S2506)。ここで取得したデータのエッジをエッジE2とする。
次に、配列EDGEにおけるエッジE2のデータのフラグを確認する(S2507)。フラグが1であれば(S2507,Yes)、配列EDGEに格納されているエッジに関するデータの取得(S2506)に戻る(ループ2)。
フラグが1でなければ(S2507,No)、上述のステップ(S2503)において変数ICMENに格納された面グループ番号および変数ICNODEに格納された節点番号と、配列EDGEにおけるエッジE2の面グループ番号および節点番号とを比較し、その結果、面グループ番号が同じで且つ等しい節点番号が存在している場合(S2508,Yes)、配列EDGEにおけるエッジE2に関する節点番号に基づき、これらの節点番号に対応する節点座標を配列NODEから取得する(S2509)。この取得した節点座標の最小値と最大値を、配列MINMAX1に格納する(S2510)。なお、配列MINMAX1のデータ配列の構成は、配列MINMAXのデータ配列の構成と同様となっている。
配列EDGEにおけるエッジE2の節点番号により変数ICNODEに格納されている節点番号を更新し、フラグを1、ループ2のカウンタJを1に設定する(S2511)。
エッジE1とエッジE2の節点座標の最小値を比較し、エッジE2の最小値がエッジE1の最小値よりも小さいとき(S2512,Yes)、最小値を更新する(S2513)。
エッジE1とエッジE2の節点座標の最大値を比較し、エッジE2の最大値がエッジE1の最大値よりも大きいとき(S2514,Yes)、最大値を更新する(S2515)。エッジE2の最大値がエッジE1の最大値よりも小さいとき(S2514,No)、上述のステップ(S2512)に戻り、同様の処理を繰り返し行い、Y座標、Z座標の最大値、最小値を求める(ループ3)。
そして、上述の処理により得られた閉じたエッジの領域に関する情報を配列EDGEBに格納する(S2516)。なお、ここでの配列EDGEBとは、閉じたエッジの数と領域に関する情報であり、エッジの数によってその面グループに穴が形成されていることなどが把握できる。図26に、配列EDGEBにおけるデータ配列の構成例を示す。図27に、上述の処理によって抽出された閉じたエッジの領域の例を示す。同図では、面グループ番号7(図17に示す面グループg7)について抽出したエッジを示している。面グループg7は、節点71〜74からなるエッジ領域と、節点75〜78からなるエッジ領域の2つのエッジ領域を有している(すなわち、穴が形成されている)ことが分かる。
次に、図28および図29のフローチャートを用いて、面グループ間における接触対の定義(図5のS26)について説明する。ここでは、説明の便宜上、一連のフローチャートを図28と図29に分割している。
まず、配列MENNOから、1つの面グループのデータを取得する(S2601)。ここで取得した面グループを面M1とする。続いて、配列MENNOから新たに面グループのデータを取得する(S2602)。ここで取得した面グループを面M2とする。配列MENNOから取得した面M1および面M2に関する平面の方程式データに基づいて、面M1と面M2の法線ベクトルのなす角を求める。
ここで、法線ベクトルの方向が反対方向でなければ(S2603,No)、配列MENNOからの新たな面グループのデータの取得処理に戻る(S2602)(ループ2)。
法線ベクトルの方向が反対方向である場合(S2603,Yes)、面M2を構成する節点の座標を、面M1の平面の方程式に代入し、代入した値の正負から、面M2が面M1における法線ベクトルの方向にある面かどうかを判断する(S2604)。面M2が面M1における法線ベクトルの方向にない場合(S2604,No)、配列MENNOからの新たな面グループのデータの取得処理に戻る(S2602)(ループ2)。
一方、面M2が面M1における法線ベクトルの方向に存在する場合(S2604,Yes)、面M2の領域が面M1の範囲内にあるかどうか(すなわち、面M1全体における法線ベクトルの延長線上に、面M2の領域が存在するかどうか)を配列EDGEBに格納されているエッジ領域のデータから判断する(S2605)。
面M2の領域が面M1の範囲内になければ(S2605,No)、配列MENNOからの新たな面グループのデータの取得処理に戻る(S2602)(ループ2)。一方、面M2の領域が面M1の範囲内にある場合(S2605,Yes)、面M1の領域のうち面M2の領域により満たされる領域(すなわち、面M2全体における法線ベクトルの延長線上に存在する面M1の領域)を配列AREAに格納する(S2606)。図30に、配列AREAにおけるデータ配列の構成例を示す。
続いて、面M1と面M2との距離を計算し(S2607)、配列FACEDに既に格納されている接触対の候補と考えられる面と面M1との距離と比較する(S2608,S2609)。図31に、配列FACEDにおけるデータ配列の構成例を示す。
配列FACEDに格納されている面の領域と一致し(一致した面を面M3とする)(S2609,一致)、面M1と面M2の距離が面M1と面M3の距離よりも小さいとき(S2610,Yes)、配列FACEDに格納されている面M3のデータを面M2のデータに書き換える(S2611)。
面M2が満たす領域と配列FACEDに格納されている面が満たす領域とが一部一致するとき(一部一致した面を面M3とする)(S2609,一部一致)、面M1と面M2の距離が面M1と面M3の距離よりも小さければ(S2612,Yes)、面M2のデータを配列FACEDに新たに格納し、一部領域が一致する面M3については、面M2が満たしている領域を面M3が満たしている領域から除いた領域を面M3の満たす領域とし、配列FACEDのデータを書き換える(S2613)。
一方、面M1と面M2の距離が面M1と面M3の距離よりも大きく(S2612,No)、面M2の満たす領域が面M3の満たす領域に全て含まれない場合(S2614,No)、面M3が満たしている領域を面M2が満たしている領域から除いた領域を面M2が満たす領域として、面M2のデータを配列FACEDに新たに格納する(S2615)。
面M2が満たす領域と配列FACEDに格納されている面が満たす領域とが全く一致しないとき(S2609,不一致)、配列MENNOからの新たな面グループのデータの取得処理に戻る(S2602)。
上述のステップ(S2602〜S2615)を配列MENNOに格納されているデータ分だけ繰り返し(ループ2)、面M1に対して接触する可能性のある面を求め、接触対に関する情報が格納される配列CPAIRに当該面のデータを格納する(S2616)。図32に、配列CPAIRにおけるデータ配列の構成例を示す。
すなわち、表面形状に関するデータ、位置関係情報および法線ベクトルに関する情報に基づいて、所定の位置関係において、任意の物体の外表面の任意の領域(面要素のグループ)における法線ベクトルの方向に位置する該法線ベクトルと略反対方向の法線ベクトルをもつ他の物体の外表面の領域(面要素のグループ)のうち、該任意の領域に最も近い領域を、該任意の領域と接触する可能性のある領域と定義している(接触定義ステップ)。
上記処理を全ての面について行い(ループ1)、全ての接触対を求める。このようにして、接触対の定義を行う構成としたことにより、各面グループの面の領域を認識し、任意の1つの面グループと複数の面グループとの接触定義が可能となる。
なお、本実施の形態における接触対の定義では、接触する可能性の有無を判断するために、比較するそれぞれの面における法線ベクトルの方向が互いに反対方向を向いているかどうかを見ているが、この反対方向とは、厳密に反対方向を向いている場合のみに限定されるものではなく、互いにほぼ向かい合っている法線ベクトルの方向が、厳密に反対方向を向いている状態から例えば45°の範囲内で傾斜している場合も含むようにすることもできる。
次に、定義された接触対に関する情報の出力(図5のS27)について説明する。
ここでは、定義された接触対に関する情報(配列FACEBおよび配列CPAIR)を、有限要素解析を行うソフト(いわゆるソルバ)にて処理可能なデータ形式(解析入力ソルバ形式)で出力している。
具体的なデータ形式としては、例えば、
CONTACT−NODES 2
1 500651 500658 500663 500651
2 500743 500763 500739 500743
CONTACTPAIR 1 2 7
のように表現される。
ここで、「CONTACT−NODES」は、面グループ番号2の面グループが、節点番号が500651、500658、500663、500651の節点から構成される面番号1の面要素と、節点番号が500743、500763、500739、500743の節点から構成される面番号2の面要素とを有していることを表している。
「CONTACTPAIR」は、接触対の番号が1であり、面グループ番号が2の面グループと、面グループ番号が7の面グループとからなる接触対であることを表している。
図33は、上述のような接触対に関する情報を一覧出力した例を示す表である。同図に示す表では、接触対番号および面グループ番号に加えて、部品番号および面グループ間の距離も示している。
なお、本実施の形態では、剛性情報取得部17によって複数の部品の剛性に関するデータ(剛性や材質等)を取得し、接触定義部14における接触定義において利用することができる。
具体的には、この取得した剛性に関するデータに基づいて、接触する可能性があると定義される面グループ同士のうち、剛性が高い方の部品の面を食い込みを生じさせない面と定義する。本実施の形態では、定義した接触対に関する情報において、接触面の定義順序によって、食い込みが生じる側の面を規定しており、先に定義されている面が食い込みを生じさせない面としている(図33参照)。
この他、本実施の形態では、表面形状に関するデータがメッシュ分割された解析用入力データであることを利用して、接触する可能性があると定義される面グループ同士のうち、メッシュサイズが大きい側の面要素の領域を食い込みを生じさせない面と定義することもできる。
なお、上述の実施の形態においては、接触定義において使用する法線ベクトルに関する情報を、部品の表面形状に関するデータに基づいて、ベクトル情報生成部11にて生成する構成としているが、これに限られるものではなく、例えば、表面形状に関するデータ中に予め法線ベクトルに関する情報が含まれているような場合には、この予め含まれている法線ベクトルに関する情報を、ベクトル情報取得部12によって取得するようにしてもよい。
この他、本実施の形態では、形状データ18a、位置関係情報18bおよび剛性情報18cがそれぞれデータベース18に別々に格納されている例を示したが、これに限られるものではなく、例えば絶対座標系における座標値によって物体の表面形状を規定する等、形状データと位置関係情報が1つのデータによって表現される構成であってもよい。
本実施の形態では、処理の高速化のために複数の面要素をグループ化してから接触対の定義を行っているが、これに限られるものではなく、個々の面要素について接触対の定義を行うことも可能である。
また、曲面も面要素の集合であり、上述のような個々の面要素間での接触定義を行えば、平面と平面の間での接触定義だけでなく、平面と曲面との間での接触定義や、曲面と曲面との間での接触定義を行うこともできる。
なお、上述の実施の形態では、同一物体における同一平面上に存在する複数の面要素についてグループ化を行うようにしているが、この他、例えばグループ化部によって、所定の座標軸と直交する面要素については、該直交する座標軸、該面要素の座標および該面要素における法線ベクトルの方向に基づいてグループ化を行うようにしてもよい。このように、座標軸と直交する面要素同士をグループ化して取り扱うことで、接触対の定義処理の高速化に寄与することができる。
一般に、物体の表面形状に関するデータを構成している面要素は、座標軸(例えば、X−Y−Z座標系におけるいずれかの座標軸)と直交しているものが多く、該直交する座標軸、該面要素の座標および該面要素における法線ベクトルの方向に基づいてグループ化を行うことで、接触対となる可能性の高い面グループ同士での効率的な接触定義の処理を行うことが可能となる。
なお、上述の実施の形態では、表面形状に関するデータがメッシュ分割された解析用入力データである例を示したが、メッシュ作成前の表面形状に関するデータ(いわゆる、ジオメトリデータ)を表面形状に関するデータとして用いることも可能である。ジオメトリデータは、物体のエッジやサーフェース(上述の面グループに相当)に関する情報から構成されているデータである。
具体的に、ジオメトリデータを用いた接触定義では、部品ごとのジオメトリデータに基づいてサーフェース情報を取得し、このサーフェース情報に基づいてフリーエッジを求め、求めたフリーエッジを閉じた状態のエッジごとに分類し、エッジの領域を求める。そして、サーフェース情報およびエッジの領域に基づいて接触対の定義を行う。
上述のように、本実施の形態によれば、複数の物体の表面形状に関するデータを取得する形状データ取得ステップと、前記複数の物体間の所定の位置関係に関する位置関係情報を取得する位置関係情報取得ステップと、前記複数の物体のうちの任意の物体の外表面の任意の領域における該物体の外側に向かう法線ベクトルに関する情報を取得するベクトル情報取得ステップと、前記表面形状に関するデータ、位置関係情報および法線ベクトルに関する情報に基づいて、前記所定の位置関係において、任意の物体の外表面の任意の領域における前記法線ベクトルの方向に位置する該法線ベクトルと略反対方向の法線ベクトルをもつ他の物体の外表面の領域のうち、該任意の領域に最も近い領域を、該任意の領域と接触する可能性のある領域と定義する接触定義ステップとを有する接触定義方法を提供することができる。
また、上述のような接触定義方法において、前記物体の表面形状に関するデータは、複数の面要素のデータからなるものであり、前記表面形状に関するデータに基づいて、同一物体における同一平面上に存在する複数の面要素についてグループ化を行うグループ化ステップを有し、前記接触定義ステップは、前記グループ化された面要素のグループの領域毎に前記定義を行うことが好ましい。また、前記グループ化ステップは、所定の座標軸と直交する面要素については、該直交する座標軸、該面要素の座標および該面要素における法線ベクトルの方向に基づいてグループ化を行うようにすることもできる。なお、前記所定の位置関係は、前記複数の物体同士を組み立てた状態における位置関係であることが望ましい。
この他、上述のような接触定義方法において、前記表面形状に関するデータに基づいて、前記複数の物体のうちの任意の物体の外表面の任意の領域における該物体の外側に向かう法線ベクトルに関する情報を生成するベクトル情報生成ステップを有し、前記ベクトル情報取得ステップは、前記ベクトル情報生成ステップにおいて生成された法線ベクトルに関する情報を取得する構成としてもよい。
また、上述のような接触定義方法において、前記複数の物体の剛性に関するデータを取得する剛性情報取得ステップを有し、前記接触定義ステップは、前記取得した剛性に関するデータに基づいて、接触する可能性があると定義される領域同士のうち、剛性が高い方の物体の面を食い込みを生じさせない面と定義することもできる。
なお、上述のような接触定義方法において、前記表面形状に関するデータは、メッシュ分割された複数の面要素のデータからなるものであり、前記接触定義ステップは、接触する可能性があると定義される領域同士のうち、メッシュサイズが大きい側の面要素の領域を食い込みを生じさせない面と定義する構成とすることが好ましい。
上述した接触定義方法における各ステップは、接触定義プログラムをコンピュータ(例えば、CPU19など)に実行させることにより実現される。
なお、上述した接触定義プログラムは、コンピュータにより読取り可能な記録媒体(例えば、記憶部1aなど)に記憶させることによって、接触定義装置を構成するコンピュータに実行させることが可能となる。なお、上記コンピュータにより読取り可能な記録媒体としては、CD−ROMやフレキシブルディスク、DVDディスク、光磁気ディスク、ICカードなどの半導体記憶装置等の可搬型記憶媒体、コンピュータに実装されるROM、RAMや磁気記録装置等の固定型記憶装置や、コンピュータプログラムを保持するデータベース、或いは、他のコンピュータ並びにそのデータベースや、更に回線上の伝送媒体をも含むものである。
具体的に本実施の形態による接触定義プログラムは、複数の物体の表面形状に関するデータを取得する形状データ取得ステップと、前記複数の物体間の所定の位置関係に関する位置関係情報を取得する位置関係情報取得ステップと、前記複数の物体のうちの任意の物体の外表面の任意の領域における該物体の外側に向かう法線ベクトルに関する情報を取得するベクトル情報取得ステップと、前記表面形状に関するデータ、位置関係情報および法線ベクトルに関する情報に基づいて、前記所定の位置関係において、任意の物体の外表面の任意の領域における前記法線ベクトルの方向に位置する該法線ベクトルと略反対方向の法線ベクトルをもつ他の物体の外表面の領域のうち、該任意の領域に最も近い領域を、該任意の領域と接触する可能性のある領域と定義する接触定義ステップとをコンピュータに実行させる構成となっている。
また、上述のような接触定義プログラムにおいて、前記物体の表面形状に関するデータは、複数の面要素のデータからなるものであり、前記表面形状に関するデータに基づいて、同一物体における同一平面上に存在する複数の面要素についてグループ化を行うグループ化ステップを有し、前記接触定義ステップは、前記グループ化された面要素のグループの領域毎に前記定義を行うことが好ましい。また、前記グループ化ステップは、所定の座標軸と直交する面要素については、該直交する座標軸、該面要素の座標および該面要素における法線ベクトルの方向に基づいてグループ化を行うようにすることもできる。なお、前記所定の位置関係は、前記複数の物体同士を組み立てた状態における位置関係であることが望ましい。
この他、上述のような接触定義プログラムにおいて、前記表面形状に関するデータに基づいて、前記複数の物体のうちの任意の物体の外表面の任意の領域における該物体の外側に向かう法線ベクトルに関する情報を生成するベクトル情報生成ステップを有し、前記ベクトル情報取得ステップは、前記ベクトル情報生成ステップにおいて生成された法線ベクトルに関する情報を取得する構成としてもよい。
また、上述のような接触定義プログラムにおいて、前記複数の物体の剛性に関するデータを取得する剛性情報取得ステップを有し、前記接触定義ステップは、前記取得した剛性に関するデータに基づいて、接触する可能性があると定義される領域同士のうち、剛性が高い方の物体の面を食い込みを生じさせない面と定義することもできる。
なお、上述のような接触定義プログラムにおいて、前記表面形状に関するデータは、メッシュ分割された複数の面要素のデータからなるものであり、前記接触定義ステップは、接触する可能性があると定義される領域同士のうち、メッシュサイズが大きい側の面要素の領域を食い込みを生じさせない面と定義する構成とすることが好ましい。
以上、本実施の形態によれば、接触対の定義処理を自動的に行うことにより、ケアレスミスを防ぐことができ、接触面および接触対の定義に要する時間を大幅に短縮することができる。また、面グループの領域を認識した上で接触する可能性のある面の判別を行っているため、1つの面グループと複数の面グループとの間での接触定義が可能となる。
また、本実施の形態によれば、複数の物体間における互いに接触する可能性がある面の対の定義を正確かつ効率的に行うことのできる接触定義装置、接触定義プログラムおよび接触定義方法を提供することができる。
(付記1)複数の物体の表面形状に関するデータを取得する形状データ取得部と、
前記複数の物体間の所定の位置関係に関する位置関係情報を取得する位置関係情報取得部と、
前記複数の物体のうちの任意の物体の外表面の任意の領域における該物体の外側に向かう法線ベクトルに関する情報を取得するベクトル情報取得部と、
前記表面形状に関するデータ、位置関係情報および法線ベクトルに関する情報に基づいて、前記所定の位置関係において、任意の物体の外表面の任意の領域における前記法線ベクトルの方向に位置する該法線ベクトルと略反対方向の法線ベクトルをもつ他の物体の外表面の領域のうち、該任意の領域に最も近い領域を、該任意の領域と接触する可能性のある領域と定義する接触定義部と
を備えてなる接触定義装置。
(付記2)付記1に記載の接触定義装置において、
前記物体の表面形状に関するデータは、複数の面要素のデータからなるものであり、
前記表面形状に関するデータに基づいて、同一物体における同一平面上に存在する複数の面要素についてグループ化を行うグループ化部を有し、
前記接触定義部は、前記グループ化された面要素のグループの領域毎に前記定義を行う接触定義装置。
(付記3)付記1に記載の接触定義装置において、
前記所定の位置関係は、前記複数の物体同士を組み立てた状態における位置関係である接触定義装置。
(付記4)付記1に記載の接触定義装置において、
前記表面形状に関するデータに基づいて、前記複数の物体のうちの任意の物体の外表面の任意の領域における該物体の外側に向かう法線ベクトルに関する情報を生成するベクトル情報生成部を有し、
前記ベクトル情報取得部は、前記ベクトル情報生成部により生成された法線ベクトルに関する情報を取得する接触定義装置。
(付記5)付記1に記載の接触定義装置において、
前記複数の物体の剛性に関するデータを取得する剛性情報取得部を有し、
前記接触定義部は、前記取得した剛性に関するデータに基づいて、接触する可能性があると定義される領域同士のうち、剛性が高い方の物体の面を食い込みを生じさせない面と定義する接触定義装置。
(付記6)付記1に記載の接触定義装置において、
前記表面形状に関するデータは、メッシュ分割された複数の面要素のデータからなるものであり、
前記接触定義部は、接触する可能性があると定義される領域同士のうち、メッシュサイズが大きい側の面要素の領域を食い込みを生じさせない面と定義する接触定義装置。
(付記7)複数の物体の表面形状に関するデータを取得する形状データ取得ステップと、
前記複数の物体間の所定の位置関係に関する位置関係情報を取得する位置関係情報取得ステップと、
前記複数の物体のうちの任意の物体の外表面の任意の領域における該物体の外側に向かう法線ベクトルに関する情報を取得するベクトル情報取得ステップと、
前記表面形状に関するデータ、位置関係情報および法線ベクトルに関する情報に基づいて、前記所定の位置関係において、任意の物体の外表面の任意の領域における前記法線ベクトルの方向に位置する該法線ベクトルと略反対方向の法線ベクトルをもつ他の物体の外表面の領域のうち、該任意の領域に最も近い領域を、該任意の領域と接触する可能性のある領域と定義する接触定義ステップと
をコンピュータに実行させる接触定義プログラム。
(付記8)付記7に記載の接触定義プログラムにおいて、
前記物体の表面形状に関するデータは、複数の面要素のデータからなるものであり、
前記表面形状に関するデータに基づいて、同一物体における同一平面上に存在する複数の面要素についてグループ化を行うグループ化ステップを有し、
前記接触定義ステップは、前記グループ化された面要素のグループの領域毎に前記定義を行う接触定義プログラム。
(付記9)付記7に記載の接触定義プログラムにおいて、
前記所定の位置関係は、前記複数の物体同士を組み立てた状態における位置関係である接触定義プログラム。
(付記10)付記7に記載の接触定義プログラムにおいて、
前記表面形状に関するデータに基づいて、前記複数の物体のうちの任意の物体の外表面の任意の領域における該物体の外側に向かう法線ベクトルに関する情報を生成するベクトル情報生成ステップを有し、
前記ベクトル情報取得ステップは、前記ベクトル情報生成ステップにおいて生成された法線ベクトルに関する情報を取得する接触定義プログラム。
(付記11)付記7に記載の接触定義プログラムにおいて、
前記複数の物体の剛性に関するデータを取得する剛性情報取得ステップを有し、
前記接触定義ステップは、前記取得した剛性に関するデータに基づいて、接触する可能性があると定義される領域同士のうち、剛性が高い方の物体の面を食い込みを生じさせない面と定義する接触定義プログラム。
(付記12)付記7に記載の接触定義プログラムにおいて、
前記表面形状に関するデータは、メッシュ分割された複数の面要素のデータからなるものであり、
前記接触定義ステップは、接触する可能性があると定義される領域同士のうち、メッシュサイズが大きい側の面要素の領域を食い込みを生じさせない面と定義する接触定義プログラム。
(付記13)複数の物体の表面形状に関するデータを取得する形状データ取得ステップと、
前記複数の物体間の所定の位置関係に関する位置関係情報を取得する位置関係情報取得ステップと、
前記複数の物体のうちの任意の物体の外表面の任意の領域における該物体の外側に向かう法線ベクトルに関する情報を取得するベクトル情報取得ステップと、
前記表面形状に関するデータ、位置関係情報および法線ベクトルに関する情報に基づいて、前記所定の位置関係において、任意の物体の外表面の任意の領域における前記法線ベクトルの方向に位置する該法線ベクトルと略反対方向の法線ベクトルをもつ他の物体の外表面の領域のうち、該任意の領域に最も近い領域を、該任意の領域と接触する可能性のある領域と定義する接触定義ステップと
を有する接触定義方法。
(付記14)付記13に記載の接触定義方法において、
前記物体の表面形状に関するデータは、複数の面要素のデータからなるものであり、
前記表面形状に関するデータに基づいて、同一物体における同一平面上に存在する複数の面要素についてグループ化を行うグループ化ステップを有し、
前記接触定義ステップは、前記グループ化された面要素のグループの領域毎に前記定義を行う接触定義方法。
(付記15)付記13に記載の接触定義方法において、
前記所定の位置関係は、前記複数の物体同士を組み立てた状態における位置関係である接触定義方法。
(付記16)付記13に記載の接触定義方法において、
前記表面形状に関するデータに基づいて、前記複数の物体のうちの任意の物体の外表面の任意の領域における該物体の外側に向かう法線ベクトルに関する情報を生成するベクトル情報生成ステップを有し、
前記ベクトル情報取得ステップは、前記ベクトル情報生成ステップにおいて生成された法線ベクトルに関する情報を取得する接触定義方法。
(付記17)付記13に記載の接触定義方法において、
前記複数の物体の剛性に関するデータを取得する剛性情報取得ステップを有し、
前記接触定義ステップは、前記取得した剛性に関するデータに基づいて、接触する可能性があると定義される領域同士のうち、剛性が高い方の物体の面を食い込みを生じさせない面と定義する接触定義方法。
(付記18)付記13に記載の接触定義方法において、
前記表面形状に関するデータは、メッシュ分割された複数の面要素のデータからなるものであり、
前記接触定義ステップは、接触する可能性があると定義される領域同士のうち、メッシュサイズが大きい側の面要素の領域を食い込みを生じさせない面と定義する接触定義方法。
本発明の実施の形態による接触定義装置の全体構成を示す機能ブロック図である。 本実施の形態による接触定義装置における処理の流れを示すフローチャートである。 接触定義を行う対象となる複数の物体の例としての部品A、部品Bおよび部品Cを示す図である。 部品A、部品Bおよび部品Cが組み立てられた状態を示す図である。 本実施の形態における解析用入力データを用いた接触定義の具体的な処理の流れを示すフローチャートである。 解析用入力ファイルの読み込みについて説明するためのフローチャートである。 配列NODEにおけるデータ配列の構成例を示す図である。 配列ELEMにおけるデータ配列の構成例を示す図である。 各部品の外表面形状の抽出について説明するためのフローチャートである。 配列FACEAにおけるデータ配列の構成例を示す図である。 6面体(直方体)における節点の順序の定義方法について説明するための図である。 5面体(三角柱)における節点の順序の定義方法について説明するための図である。 節点の順序の定義方法について説明するための図である。 配列FACEにおけるデータ配列の構成例を示す図である。 配列KT3におけるデータ配列の構成例を示す図である。 面グループの分類について説明するためのフローチャートである。 配列MENNOにおけるデータ配列の構成例を示す図である。 配列FACEBにおけるデータ配列の構成例を示す図である。 部品A〜部品Cを構成する各面要素がグループ分けされた様子を示す図である。 それぞれの面グループにおけるフリーエッジの作成について説明するためのフローチャートである。 配列EDGEにおけるデータ配列の構成例を示す図である。 配列EDGEAにおけるデータ配列の構成例を示す図である。 それぞれの面グループにおける閉じたエッジの領域の抽出について説明するためのフローチャートである。 それぞれの面グループにおける閉じたエッジの領域の抽出について説明するためのフローチャートである。 配列MINMAXにおけるデータ配列の構成例を示す図である。 配列EDGEBにおけるデータ配列の構成例を示す図である。 抽出された閉じたエッジの領域の例を示す図である。 面グループ間における接触対の定義について説明するためのフローチャートである。 面グループ間における接触対の定義について説明するためのフローチャートである。 配列AREAにおけるデータ配列の構成例を示す図である。 配列FACEDにおけるデータ配列の構成例を示す図である。 配列CPAIRにおけるデータ配列の構成例を示す図である。 接触対に関する情報を一覧出力した例を示す表である。
符号の説明
11 ベクトル情報生成部、12 ベクトル情報取得部、13 グループ化部、14 接触定義部、15 形状データ取得部、16 位置関係情報取得部、17 剛性情報取得部、18 データベース、19 CPU、1a 記憶部。

Claims (5)

  1. 複数の物体の表面形状に関するデータを取得する形状データ取得部と、
    前記複数の物体間の所定の位置関係に関する位置関係情報を取得する位置関係情報取得部と、
    前記複数の物体のうちの任意の物体の外表面の任意の領域における該物体の外側に向かう法線ベクトルに関する情報を取得するベクトル情報取得部と、
    前記表面形状に関するデータ、位置関係情報および法線ベクトルに関する情報に基づいて、前記所定の位置関係において、前記ベクトル情報取得部により取得された任意の物体の外表面の任意の領域における前記法線ベクトルの方向に位置する該法線ベクトルと略反対方向の法線ベクトルをもつ他の物体の外表面の領域のうち、該任意の領域に最も近い領域を、該任意の領域と接触する可能性のある領域と定義する接触定義部と
    を備えてなる接触定義装置。
  2. 請求項1に記載の接触定義装置において、
    前記物体の表面形状に関するデータは、複数の面要素のデータからなるものであり、
    前記表面形状に関するデータに基づいて、同一物体における同一平面上に存在する複数の面要素についてグループ化を行うグループ化部を有し、
    前記接触定義部は、前記グループ化された面要素のグループの領域毎に前記定義を行う接触定義装置。
  3. 請求項2に記載の接触定義装置において、
    前記グループ化部は、所定の座標軸と直交する面要素については、該直交する座標軸、該面要素の座標および該面要素における法線ベクトルの方向に基づいてグループ化を行う接触定義装置。
  4. 複数の物体の表面形状に関するデータを取得する形状データ取得ステップと、
    前記複数の物体間の所定の位置関係に関する位置関係情報を取得する位置関係情報取得ステップと、
    前記複数の物体のうちの任意の物体の外表面の任意の領域における該物体の外側に向かう法線ベクトルに関する情報を取得するベクトル情報取得ステップと、
    前記表面形状に関するデータ、位置関係情報および法線ベクトルに関する情報に基づいて、前記所定の位置関係において、前記ベクトル情報取得ステップにより取得された任意の物体の外表面の任意の領域における前記法線ベクトルの方向に位置する該法線ベクトルと略反対方向の法線ベクトルをもつ他の物体の外表面の領域のうち、該任意の領域に最も近い領域を、該任意の領域と接触する可能性のある領域と定義する接触定義ステップと
    をコンピュータに実行させる接触定義プログラム。
  5. 複数の物体の表面形状に関するデータを取得する形状データ取得ステップと、
    前記複数の物体間の所定の位置関係に関する位置関係情報を取得する位置関係情報取得ステップと、
    前記複数の物体のうちの任意の物体の外表面の任意の領域における該物体の外側に向かう法線ベクトルに関する情報を取得するベクトル情報取得ステップと、
    前記表面形状に関するデータ、位置関係情報および法線ベクトルに関する情報に基づいて、前記所定の位置関係において、前記ベクトル情報取得ステップにより取得された任意の物体の外表面の任意の領域における前記法線ベクトルの方向に位置する該法線ベクトルと略反対方向の法線ベクトルをもつ他の物体の外表面の領域のうち、該任意の領域に最も近い領域を、該任意の領域と接触する可能性のある領域と定義する接触定義ステップと
    コンピュータに実行させる接触定義方法。
JP2004232114A 2004-08-09 2004-08-09 接触定義装置、接触定義プログラム、接触定義方法 Expired - Fee Related JP4275593B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2004232114A JP4275593B2 (ja) 2004-08-09 2004-08-09 接触定義装置、接触定義プログラム、接触定義方法
US10/986,137 US20060028465A1 (en) 2004-08-09 2004-11-12 Contact definition device, contact definition program, and contact definition method
EP04257100A EP1626358A3 (en) 2004-08-09 2004-11-16 Contact definition device, program, and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004232114A JP4275593B2 (ja) 2004-08-09 2004-08-09 接触定義装置、接触定義プログラム、接触定義方法

Publications (2)

Publication Number Publication Date
JP2006048583A JP2006048583A (ja) 2006-02-16
JP4275593B2 true JP4275593B2 (ja) 2009-06-10

Family

ID=34930807

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004232114A Expired - Fee Related JP4275593B2 (ja) 2004-08-09 2004-08-09 接触定義装置、接触定義プログラム、接触定義方法

Country Status (3)

Country Link
US (1) US20060028465A1 (ja)
EP (1) EP1626358A3 (ja)
JP (1) JP4275593B2 (ja)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE602005017144D1 (de) * 2005-08-18 2009-11-26 Honda Res Inst Europe Gmbh Fahrerassistenzsystem
FR2901043B1 (fr) * 2006-05-12 2008-07-18 Rech S De L Ecole Nationale Su Procede de realisation d'un modele par elements finis d'un corps singulier de forme et de structure complexes
JP5119877B2 (ja) * 2007-11-16 2013-01-16 富士通株式会社 解析モデル作成装置及びプログラム
JP5104298B2 (ja) * 2007-12-27 2012-12-19 富士通株式会社 解析モデル作成装置及び方法並びにプログラム
JP5241573B2 (ja) * 2009-03-05 2013-07-17 株式会社神戸製鋼所 3次元形状データの穴削除方法
JP5609302B2 (ja) * 2010-06-18 2014-10-22 富士通株式会社 接触定義装置、接触定義プログラム及び接触定義方法
JP6015377B2 (ja) * 2012-11-22 2016-10-26 富士通株式会社 設定方法、及び情報処理装置
KR102065692B1 (ko) * 2015-04-17 2020-01-13 한국전자통신연구원 3차원 프린팅을 위한 두께 모델 생성 장치 및 방법
US9542739B1 (en) * 2015-08-12 2017-01-10 General Electric Company Virtual turbomachine blade contact gap inspection

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5428717A (en) * 1991-12-30 1995-06-27 Xerox Corporation Methods for converting concave polyhedra to their convex hulls
US6473083B1 (en) * 1995-02-03 2002-10-29 Fujitsu Limited Computer graphics data generating apparatus, computer graphics animation editing apparatus, and animation path generating apparatus
JP2692668B2 (ja) 1995-10-31 1997-12-17 日本電気株式会社 有限要素法を用いた接触解析方法及びそのシステム
US6067096A (en) * 1998-03-04 2000-05-23 Nagle; John Method and system for generating realistic collisions in graphical simulations
US6407748B1 (en) * 1998-04-17 2002-06-18 Sandia Corporation Method and apparatus for modeling interactions
US6262738B1 (en) * 1998-12-04 2001-07-17 Sarah F. F. Gibson Method for estimating volumetric distance maps from 2D depth images
US6708142B1 (en) * 1999-01-14 2004-03-16 University Of Central Florida Automatic motion modeling of rigid bodies using collision detection
US6411297B1 (en) * 1999-03-03 2002-06-25 Discreet Logic Inc. Generating image data
JP3647691B2 (ja) * 1999-09-30 2005-05-18 コナミ株式会社 ポリゴン画像表示方法、ポリゴン画像作成装置及び記録媒体
US7084869B2 (en) * 2000-03-31 2006-08-01 Massachusetts Institute Of Technology Methods and apparatus for detecting and correcting penetration between objects
JP2001337940A (ja) 2000-05-26 2001-12-07 Nikon Corp 有限要素法を用いて解析する方法および装置、ならびに、コンピュータ読み取り可能な記録媒体
JP2002056037A (ja) 2000-08-08 2002-02-20 Matsushita Electric Ind Co Ltd 接触解析装置
JP2002092646A (ja) * 2000-09-14 2002-03-29 Minolta Co Ltd 3次元形状データから面を抽出する方法および装置並びに記録媒体
DE10106023A1 (de) * 2001-02-09 2002-08-29 Fraunhofer Ges Forschung Verfahren und Vorrichtung zur Kollisionserkennung von Objekten
US7136786B2 (en) * 2001-04-12 2006-11-14 Mitsubishi Electric Research Laboratories, Inc. Method and system for modeling interaction of objects
US6760038B2 (en) * 2001-05-31 2004-07-06 Geometric Software Solutions Co. Limited Method for recognizing blends in solid models
US7146297B2 (en) * 2002-03-27 2006-12-05 Intel Corporation Detecting collisions of three-dimensional models
US7716024B2 (en) * 2002-04-29 2010-05-11 Geodigm Corporation Method and apparatus for electronically generating a color dental occlusion map within electronic model images
CN1932885B (zh) * 2002-10-15 2012-02-29 诺基亚公司 三维图像处理
US7127381B2 (en) * 2002-10-30 2006-10-24 Intel Corporation Methods and apparatus for expediting detecting collision between any of N objects
EP1687777A2 (en) * 2003-11-28 2006-08-09 BRACCO IMAGING S.p.A. Method and system for distinguishing surfaces in 3d data sets ("dividing voxels")

Also Published As

Publication number Publication date
US20060028465A1 (en) 2006-02-09
JP2006048583A (ja) 2006-02-16
EP1626358A2 (en) 2006-02-15
EP1626358A3 (en) 2008-04-23

Similar Documents

Publication Publication Date Title
JP4275593B2 (ja) 接触定義装置、接触定義プログラム、接触定義方法
Lalanne Mechanical Shock
Twomey Introduction to the mathematics of inversion in remote sensing and indirect measurements
CN103514243A (zh) 时空数据管理系统、时空数据管理方法及其程序
Lescoat et al. Spectral mesh simplification
US20190317945A1 (en) Systems and methods for configuring system memory for extraction of latent information from big data
CN112257419A (zh) 一种基于词频和语义计算专利文献相似度的智能检索方法、装置、电子设备及其存储介质
JP2019109693A (ja) データ管理装置、データ管理方法、およびプログラム
EP2973046A1 (en) System and method for compressing data in database
Loroch et al. Tensorquant: A simulation toolbox for deep neural network quantization
Kumar et al. Fast and memory efficient approach for mapping NGS reads to a reference genome
CN112860685A (zh) 对数据集的分析的自动推荐
JP6095222B2 (ja) 商標侵害検知装置、商標侵害検知方法、およびプログラム
CN108710662A (zh) 语言转换方法和装置、存储介质、数据查询系统和方法
CN110019670A (zh) 一种文本检索方法及装置
CN108874871A (zh) 实时pnt服务数据溯源方法及装置
JP6880760B2 (ja) 情報処理装置、三次元造形システム、及びプログラム
EP2629218B1 (en) File management apparatus, file management method, and file management system
JP2013148684A (ja) 分割装置、分割方法、および分割プログラム
JP5190898B2 (ja) コード列検索装置、検索方法及びプログラム
CN111160517A (zh) 一种深度神经网络的卷积层量化方法及装置
CN113986828A (zh) 存储海量文件的方法、装置、电子设备及存储介质
CN113627852A (zh) 物料清单的生成方法及系统、存储介质及其电子设备
JP2013210839A (ja) 情報管理方法及び情報管理装置
JP2017062698A (ja) 情報処理システム、情報処理方法、クライアント装置、及び情報処理プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20061218

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20081104

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20081226

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: 20090303

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: 20090304

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: 20120313

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20130313

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20140313

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees