JP2018156145A - Contact determination program, contact determination method, and contact determination device - Google Patents
Contact determination program, contact determination method, and contact determination device Download PDFInfo
- Publication number
- JP2018156145A JP2018156145A JP2017050028A JP2017050028A JP2018156145A JP 2018156145 A JP2018156145 A JP 2018156145A JP 2017050028 A JP2017050028 A JP 2017050028A JP 2017050028 A JP2017050028 A JP 2017050028A JP 2018156145 A JP2018156145 A JP 2018156145A
- Authority
- JP
- Japan
- Prior art keywords
- contact
- distance
- contact determination
- component
- elements
- 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.)
- Pending
Links
Images
Abstract
Description
本発明は、接触判定プログラム、接触判定方法、および接触判定装置に関する。 The present invention relates to a contact determination program, a contact determination method, and a contact determination device.
従来、構造物などの数値解析を行う技術がある。例えば、有限要素法などの数値解析では、解析対象の領域を小領域に分割して各小領域における方程式が解かれる。この数値解析を行うために、CAD(Computer Aided Design)によって構造物に含まれる部品別に作成された3次元のモデルの形状を小領域に分割するメッシュ生成などが行われることにより解析用の3次元モデルが作成される。そして、この数値解析は、解析用の3次元モデルを用いて行われる。CADにおける3次元モデルは、三角形などの要素によって各部品を表す。解析用の3次元モデルは、四面体などの形状の小領域によって各部品を表す。 Conventionally, there is a technique for performing numerical analysis of a structure or the like. For example, in numerical analysis such as the finite element method, an analysis target region is divided into small regions, and equations in each small region are solved. In order to perform this numerical analysis, 3D for analysis is performed by performing mesh generation that divides the shape of the 3D model created for each part included in the structure by CAD (Computer Aided Design) into small regions. A model is created. This numerical analysis is performed using a three-dimensional model for analysis. A three-dimensional model in CAD represents each part by an element such as a triangle. The three-dimensional model for analysis represents each part by a small region having a shape such as a tetrahedron.
先行技術としては、CADデータによる複数の部品モデルの表面を複数の面要素に分割し、ある部品モデルの面要素の法線ベクトルが、他の部品モデルの面要素にあたるか否かに基づいて接触判定を行う技術がある(例えば、下記特許文献1参照。)。また、先行技術としては、解析用の3次元モデルを作成する際に、CADデータによる3次元の形状の表面に閉空間を構成する表面メッシュを生成し、形状表面を構成する面と面の間に隙間がある場合、隣接面の境界辺上で同一の節点を共有するように表面メッシュを生成する技術がある(例えば、下記特許文献2参照。)。 As a prior art, the surface of a plurality of part models based on CAD data is divided into a plurality of surface elements, and a contact is made based on whether a normal vector of a surface element of one part model corresponds to a surface element of another part model. There is a technique for performing the determination (see, for example, Patent Document 1 below). In addition, as a prior art, when creating a three-dimensional model for analysis, a surface mesh that forms a closed space is generated on the surface of a three-dimensional shape by CAD data, and the surface between the surfaces constituting the shape surface is generated. When there is a gap, there is a technique for generating a surface mesh so as to share the same node on the boundary side of the adjacent surface (see, for example, Patent Document 2 below).
しかしながら、CADデータが示す3次元のモデルに含まれる複数の部品の接触面を特定することが困難な場合がある。例えば、実際には複数の部品の接触面となる部分であっても、CADデータにおいて各部品を三角形の要素によって表現する場合に、接触面に相当する異なる部品を表現する要素同士が一致しないことがある。例えば、各要素のサイズが異なれば、各要素は一致しない。このため、例えば、異なる部品を表現する要素同士の一致を判定するだけでは、各要素が複数の部品の接触面であるか否かを判定することは難しい。 However, it may be difficult to specify contact surfaces of a plurality of parts included in the three-dimensional model indicated by the CAD data. For example, even if it is a part that actually becomes a contact surface of a plurality of parts, when each part is represented by a triangular element in CAD data, elements representing different parts corresponding to the contact surface do not match each other. There is. For example, if the size of each element is different, each element does not match. For this reason, for example, it is difficult to determine whether or not each element is a contact surface of a plurality of parts only by determining a match between elements representing different parts.
1つの側面では、本発明は、3次元のモデルに含まれる複数の部品の接触面を精度よく特定することができる接触判定プログラム、接触判定方法、および接触判定装置を提供することを目的とする。 In one aspect, an object of the present invention is to provide a contact determination program, a contact determination method, and a contact determination device that can accurately specify contact surfaces of a plurality of parts included in a three-dimensional model. .
本発明の一側面によれば、第1の部品と第2の部品とを含む3次元モデルのデータを取得し、前記第1の部品を表現する要素のうち第1の要素の法線と、前記第2の部品を表現する要素のうち第2の要素を含む平面とに基づいて、前記第1の要素と前記第2の要素との間の距離を特定し、前記距離に応じて、前記第1の要素と前記第2の要素とが接触しているか否かを判定する接触判定プログラム、接触判定方法、および接触判定装置が提案される。 According to one aspect of the present invention, data of a three-dimensional model including a first part and a second part is acquired, and a normal line of a first element among elements representing the first part; A distance between the first element and the second element is specified based on a plane including the second element among elements representing the second part, and according to the distance, A contact determination program, a contact determination method, and a contact determination device for determining whether or not a first element and the second element are in contact with each other are proposed.
本発明の一態様によれば、CADデータによって表される複数の部品の接触面を精度良く特定することができる。 According to one embodiment of the present invention, contact surfaces of a plurality of parts represented by CAD data can be specified with high accuracy.
以下に図面を参照して、本発明にかかる接触判定プログラム、接触判定方法、および接触判定装置の実施の形態を詳細に説明する。 Exemplary embodiments of a contact determination program, a contact determination method, and a contact determination device according to the present invention will be described below in detail with reference to the drawings.
図1は、接触判定装置による一動作例を示す説明図である。接触判定装置100は、3次元モデルに含まれる第1の部品と第2の部品との接触を判定するコンピュータである。
FIG. 1 is an explanatory diagram illustrating an operation example of the contact determination device. The
従来、例えば、CADを用いて構造物に含まれる部品別に部品の形状を三角形(要素)で表現したモデルを示す3次元のCADデータが作成される。モデルは、例えば、コンピュータ空間上にシミュレーションされる部品や部品を含む構造物である。シミュレーション空間とは、コンピュータ上でシミュレーションされる仮想的な空間である。シミュレーション空間には、例えば、X軸とY軸とZ軸との直交座標系が定義される。汎用的なCADデータとしては、例えば、STL(Standard Triangulated Language)データがある。STLデータでは、部品ごとに、部品の形状を表すための三角形の要素を示す要素情報と、三角形の要素に含まれる頂点を示す頂点情報とを含む。要素情報は、例えば、要素ごとに、法線の情報と頂点情報によって表される。頂点情報は、例えば、頂点の座標値(x座標値,y座標値,z座標値)である。 Conventionally, for example, three-dimensional CAD data indicating a model in which the shape of a part is represented by a triangle (element) is created for each part included in the structure using CAD. The model is, for example, a structure including parts to be simulated on the computer space. The simulation space is a virtual space that is simulated on a computer. In the simulation space, for example, an orthogonal coordinate system of the X axis, the Y axis, and the Z axis is defined. As general-purpose CAD data, for example, there is STL (Standard Triangulated Language) data. The STL data includes, for each part, element information indicating a triangular element for representing the shape of the part, and vertex information indicating a vertex included in the triangular element. The element information is represented by, for example, normal information and vertex information for each element. The vertex information is, for example, vertex coordinate values (x coordinate value, y coordinate value, z coordinate value).
また、有限要素法などの数値解析を行うには、STLデータによって表される3次元のモデルをメッシュ生成によって複数の小領域に分割することにより得られる解析用のモデルが作成される。小領域の形状は、例えば四面体であるため、小領域を四面体の要素と称する。解析用のモデルを解析モデルと称する。 Further, in order to perform numerical analysis such as the finite element method, a model for analysis obtained by dividing a three-dimensional model represented by STL data into a plurality of small regions by mesh generation is created. Since the shape of the small region is, for example, a tetrahedron, the small region is referred to as a tetrahedral element. The model for analysis is called an analysis model.
CADデータがモデルの曲面の情報を含む場合、その曲面の情報によって3次元のモデルに含まれる複数の部品の接触面を判定することができる。しかしながら、上述した汎用的なSTLデータのようにCADデータがモデルの曲面の情報を含まない場合、複数の部品の接触面を精度良く判定することは困難である。 When the CAD data includes information on the curved surface of the model, the contact surfaces of a plurality of parts included in the three-dimensional model can be determined based on the curved surface information. However, when the CAD data does not include information on the curved surface of the model like the general-purpose STL data described above, it is difficult to accurately determine the contact surfaces of a plurality of parts.
例えば、部品別にモデル化し、モデル化された部品を組み合わせて構造物がモデル化される。また、部品ごとに各要素のサイズなども異なる場合がある。このため、実際には複数の部品の接触面となる部分であっても、異なる部品を表現する要素同士が面で接触しているとは限らない。この要素同士が面で接触していない例については図2に示す。 For example, the structure is modeled by modeling for each part and combining the modeled parts. In addition, the size of each element may be different for each part. For this reason, even if it is a part used as the contact surface of several components in fact, the elements which represent different components are not necessarily in contact with the surface. An example in which these elements are not in contact with each other is shown in FIG.
また、CADデータにおいて複数の部品の接触面となる要素同士が一致していない場合、CADデータに基づいて部品別に作成された複数の解析モデルの一部が干渉してしまうことがある。干渉するとは、複数の解析モデルが重なることである。異なる解析モデルに含まれる四面体の要素が重複してしまう場合がある。四面体の要素が重複するとは、同じ位置に異なる四面体の要素が複数設けられることである。四面体の要素が重複してしまうことを干渉とも称する。四面体の要素の干渉例については図3に示す。 In addition, when the elements serving as contact surfaces of a plurality of parts do not match in the CAD data, some of the plurality of analysis models created for each part based on the CAD data may interfere with each other. Interference means that a plurality of analysis models overlap. Tetrahedral elements included in different analysis models may overlap. The fact that tetrahedral elements overlap means that a plurality of different tetrahedral elements are provided at the same position. The fact that tetrahedral elements overlap is also referred to as interference. An example of interference of tetrahedral elements is shown in FIG.
従来、複数の解析モデルに干渉がある場合、設計者が、例えば、接触の有無を判定するための許容値に基づいて、解析モデル間の接触の有無を目視で判定する。そして、設計者は、例えば、接触していると判定した部分について、解析モデルを修正する。ただし、解析モデルのモデルデータが大規模な場合、個々の部品によってサイズが異なるため、この許容値を決定することは困難である。 Conventionally, when there are interferences in a plurality of analysis models, the designer visually determines the presence or absence of contact between the analysis models based on, for example, an allowable value for determining the presence or absence of contact. Then, for example, the designer corrects the analysis model for the portion determined to be in contact. However, when the model data of the analysis model is large, it is difficult to determine this allowable value because the size varies depending on individual parts.
そこで、本実施の形態では、接触判定装置100は、各部品を三角形の要素で表す場合に、第1の部品の1つの要素の法線と、第2の部品の1つの要素を含む平面とに基づく2つの要素間の距離に応じて、2つの要素が接触しているか否かを判定する。これにより、接触判定装置100は、2つの要素が、各部品の接触面であるか否かを判定することができる。したがって、接触判定装置100は、各部品を三角形の要素で表すCADデータにおいて、各部品の接触面を自動で精度よく特定することができる。
Therefore, in the present embodiment, when each part is represented by a triangular element, the
数値解析の解析者や解析モデルの設計者などの利用者は、2つの部品の接触面が分かるため、解析モデルを作成する前に、STLデータを変更して接触面におけるSTLデータの三角形を一致させるように修正することができる。したがって、異なる解析モデル間において四面体の要素が干渉するのを抑制することができる。 Users such as numerical analysis analysts and analysis model designers know the contact surface between two parts, so before creating the analysis model, change the STL data to match the STL data triangles on the contact surface. Can be modified. Therefore, interference of tetrahedral elements between different analysis models can be suppressed.
接触判定装置100は、第1の部品と第2の部品とを含む3次元モデルのデータを取得する。3次元モデルとは、構造物のモデルである。第1の部品と第2の部品とは、それぞれ部品のモデルである。3次元モデルのデータは、例えば、上述したSTLデータなどのCADデータ101である。
The
次に、接触判定装置100は、第1の部品を表現する要素のうち第1の要素e1の法線と、第2の部品を表現する要素のうち第2の要素e2を含む平面とに基づいて、第1の要素e1と第2の要素e2との間の第1の距離を特定する。要素の形状は、例えば、三角形である。第1の距離は、例えば、第1の要素e1の法線と第2の要素e2を含む平面との第1の交点と、第1の要素e1と第1の要素e1の法線との第2の交点との第1距離である。図1の例では、第2の交点は、例えば、第1の要素e1の重心aである。第1の交点は、第1の要素e1の重心aを通る法線と、第2の要素e2を含む平面との交点p1である。そして、接触判定装置100は、第1の交点と、第2の交点と、の第1距離d1を特定する。
Next, the
次に、接触判定装置100は、第1距離d1に応じて、第1の要素e1と第2の要素e2とが接触しているか否かを判定する。具体的には、接触判定装置100は、例えば、第1距離が第1閾値以上である場合に、第1の要素e1と第2の要素e2とが接触していないと判定し、第1距離が第1閾値未満である場合に、第1の要素e1と第2の要素e2とが接触していると判定する。ここの第1閾値は、利用者によって設定されればよく、特に限定しない。
Next, the
また、接触判定装置100は、第2の要素e2の法線と第1の要素e1を含む平面とに基づいて、第1の要素e1と第2の要素e2との間の第2の距離d2を特定する。具体的に、第2の距離d2は、第2の要素e2の法線と第1の要素e1を含む平面との第1の交点と、第2の要素e2と第2の要素e2の法線との第2の交点との距離である。ここでの第2の交点は第2の要素e2の重心bである。第1の交点は、第2の要素e2の重心bを通る法線と、第1の要素e1を含む平面との交点p2である。
Further, the
そして、接触判定装置100は、第2の距離d2に応じて、第1の要素e1と第2の要素e2とが接触しているか否かを判定する。具体的には、接触判定装置100は、例えば、第2距離が第2閾値以上である場合に、第1の要素e1と第2の要素e2とが接触していないと判定し、第2距離が第2閾値未満である場合に、第1の要素e1と第2の要素e2とが接触していると判定する。ここの第2閾値は、上述した第1閾値と同じであってもよいし、特に限定しない。
And the
このように、第1の距離d1と、第2の距離d2とのいずれかによって接触判定がおこなわれてもよいし、第1の距離d1と第2の距離d2との両方によって接触判定が行われてもよい。この両方によって接触判定が行われる場合、接触判定装置100は、第1の距離d1が第1閾値未満であり、かつ第2の距離が第2閾値未満である場合に、第1の要素e1と第2の要素e2とが接触していると判定する。また、接触判定装置100は、第1の距離d1が第1閾値以上である場合と第2の距離d2が第2閾値以上である場合との少なくともいずれかの場合に、第1の要素e1と第2の要素e2とが接触していないと判定する。
As described above, the contact determination may be performed based on either the first distance d1 or the second distance d2, or the contact determination may be performed based on both the first distance d1 and the second distance d2. It may be broken. When the contact determination is performed by both of them, the
これにより、接触判定装置100は、例えば曲面の情報などを有さない汎用的なSTLデータのように、三角形の要素によって部品を表現するCADデータ101であっても、異なる部品の接触面を自動で判定することができる。
As a result, the
図2は、複数の部品を含む3次元モデル例を示す説明図である。図2において、3次元モデル200は、第1の部品201と、第2の部品202と、を含む。図2において、第1の部品201と第2の部品202とは、それぞれ複数の三角形によって形状が表現されたモデルである。後述する図7に示すように、第1の部品201と第2の部品202とは厚みがある。このため、第2の部品202は、直方体の一部が欠けているような形状である。また、第1の部品201は、車輪のような形状である。3次元モデル200では、第1の部品201が第2の部品202の窪みに嵌っている状態である。このため、第1の部品201が第2の部品202に嵌っているため、3次元モデル200では、第1の部品201と第2の部品202とには接触面となる部分がある。
FIG. 2 is an explanatory diagram illustrating an example of a three-dimensional model including a plurality of parts. In FIG. 2, the three-
しかし、複数の部品の接触面となる部分を拡大した例に示すように、第1の部品201の各要素のサイズと、第2の部品202の各要素のサイズとは異なる。実際には複数の部品の接触面となる部分であっても、異なる部品を表現する要素同士が面で接触しているとは限らない。要素同士が面で接触しているとは、要素同士が一致していることを示す。要素同士が一致しているとは、異なる部品を表す2つの要素に含まれるすべての頂点の位置が同じであることを示す。なお、異なる部品間において要素のサイズが異なる要因の1つとして、部品別にモデル化されることが挙げられる。例えば、部品別にモデル化が行われるのは、1つの構造物であっても同一の部品を何度も使用する際に1回部品をモデル化するためで流用できたり、部品の設計に変更が発生した場合に構造物全体を変更しなくてよいという設計のし易さのためである。
However, the size of each element of the
図3は、3次元モデルからメッシュ生成によって得た解析モデル例を示す説明図である。解析モデル300は、3次元モデル200に対して四面体のメッシュ生成を行うことにより得られる。具体的には、解析モデル300は、第1の部品201と、第2の部品202とのそれぞれに対して四面体のメッシュ生成を行うことによって得られる。解析モデル300は、第1の部品201に対してメッシュ生成した第1の解析モデル301と、第2の部品202に対してメッシュ生成した第2の解析モデル302と、を有する。
FIG. 3 is an explanatory diagram illustrating an example of an analysis model obtained by mesh generation from a three-dimensional model. The
図2に示すように第1の部品201と第2の部品202との接触面において要素が一致していないと、図3に示すように解析モデル300では、第1の解析モデル301に含まれる四面体の要素と、第1の解析モデル301に含まれる四面体の要素と、で干渉してしまう。図3において、例えば、点cにおいて、第1の解析モデル301に含まれる四面体の要素me1と、第2の解析モデル302に含まれる四面体の要素me2と、で干渉している。
If the elements do not match on the contact surface between the
本実施の形態では、接触判定装置100は、CADデータ101において異なるモデル間の接触面を一致させておくことで、解析モデルにおいて干渉が発生するのを抑制することができる。
In the present embodiment, the
(接触判定装置100のハードウェア構成例)
図4は、接触判定装置100のハードウェア構成例を示す説明図である。接触判定装置100は、CPU(Central Processing Unit)401と、ROM(Read Only Memory)402と、RAM(Random Access Memory)403と、ディスクドライブ404と、ディスク405と、を有する。接触判定装置100は、I/F(Inter/Face)406と、キーボード407と、マウス408と、ディスプレイ409と、を有する。また、CPU401と、ROM402と、RAM403と、ディスクドライブ404と、I/F406と、キーボード407と、マウス408と、ディスプレイ409とは、バス400によってそれぞれ接続される。
(Hardware configuration example of contact determination device 100)
FIG. 4 is an explanatory diagram illustrating a hardware configuration example of the
ここで、CPU401は、接触判定装置100の全体の制御を司る。ROM402は、ブートプログラムなどのプログラムを記憶する。RAM403は、CPU401のワークエリアとして使用される。ディスクドライブ404は、CPU401の制御にしたがってディスク405に対するデータのリード/ライトを制御する。ディスク405は、ディスクドライブ404の制御で書き込まれたデータを記憶する。ディスク405としては、磁気ディスク、光ディスクなどが挙げられる。
Here, the
I/F406は、通信回線を通じてLAN(Local Area Network)、WAN(Wide Area Network)、インターネットなどのネットワーク410に接続され、このネットワーク410を介して他の装置に接続される。そして、I/F406は、ネットワーク410と内部のインターフェースを司り、外部装置からのデータの入出力を制御する。I/F406には、例えばモデムやLANアダプタなどを採用することができる。
The I /
キーボード407やマウス408は、利用者の操作により、各種データの入力を受け付けるインターフェースである。ディスプレイ409は、CPU401の指示により、データを出力するインターフェースである。
A
また、図示を省略するが、接触判定装置100には、カメラから画像や動画を取り込む入力装置やマイクから音声を取り込む入力装置が設けられていてもよい。また、図示を省略するが、接触判定装置100には、プリンタなどの出力装置が設けられていてもよい。
Although not shown, the
また、本実施の形態では、接触判定装置100のハードウェア構成として、パーソナル・コンピュータを例に挙げているが、これに限らず、サーバなどであってもよい。接触判定装置100がサーバである場合、接触判定装置100と、利用者が操作可能な装置やディスプレイ409などと、がネットワーク410を介して接続されてもよい。
In the present embodiment, a personal computer is used as an example of the hardware configuration of the
(CADデータ101のデータフォーマット例)
図5は、CADデータ101のデータフォーマット例を示す説明図である。CADデータ101のデータフォーマット例として、STLデータのデータフォーマットを例に挙げて、取得されるCADデータ101の一記憶例について説明する。CADデータ101は、部品を表現する要素の各々について、要素の法線と、要素を構成する3頂点の座標と、を有する。
(Example of data format of CAD data 101)
FIG. 5 is an explanatory diagram showing a data format example of the
ここで、CADデータ101では、部品の表面形状を表す三角形の情報を有するが、部品の内部形状を表す三角形の情報を有さない。なお、STLデータにおいて、要素や頂点は、部品別に管理される。STLデータにおいては、異なる部品において同じ位置に頂点を設ける場合、3軸の座標値が同じで異なる頂点として扱われる。本実施の形態では、理解の容易化のために、第1の部品201に含まれる要素の頂点と、この頂点と同じ座標値が設定された第2の部品202に含まれる要素の頂点とは、同一の頂点として扱う場合がある。
Here, the
(接触判定装置100の機能的構成例)
図6は、接触判定装置100の機能的構成例を示すブロック図である。接触判定装置100は、取得部601と、第1算出部602と、第2算出部603と、第3算出部604と、判定部605と、生成部606と、出力部607と、を有する。取得部601から出力部607までの制御部600の処理は、例えば、図4に示すCPU401がアクセス可能なROM402、RAM403、ディスク405などの記憶装置に記憶されたプログラムにコーディングされている。そして、CPU401が記憶装置からプログラムを読み出して、プログラムにコーディングされている処理を実行する。これにより、制御部600の処理が実現される。
(Functional configuration example of the contact determination device 100)
FIG. 6 is a block diagram illustrating a functional configuration example of the
取得部601は、例えば、第1の部品201と第2の部品202とを含む3次元モデル200のCADデータ101を取得する。具体的には、取得部601は、ネットワーク410を介して他の装置からCADデータ101を取得してもよい。又は、取得部601は、ROM402、RAM403、ディスク405などの記憶装置からCADデータ101を取得してもよい。又は、取得部601は、マウス408やキーボード407などの入力装置を介して入力されることによりCADデータ101を取得してもよい。なお、理解の容易化のために、図2に示すように3次元モデル200は、2つの部品を有する例を用いて説明するが、3つ以上の部品を有していてもよい。
For example, the
図7は、第1の部品201と第2の部品202との斜視図である。取得されたCADデータ101は、第1の部品201を示す第1部品情報701と、第2の部品202を示す第2部品情報702と、を有する。第1部品情報701は、第1の部品201を表現する要素の要素情報と、その要素に含まれる頂点の頂点情報を有する。第2部品情報702は、第2の部品202を表現する要素の要素情報と、その要素に含まれる頂点の頂点情報を有する。
FIG. 7 is a perspective view of the
第1部品情報701によって表現される第1の部品201と、第2部品情報702によって表現される第2の部品202とは、それぞれ厚みがある。図2に示す3次元モデル200では、第2の部品202に第1の部品201が嵌っているが、図7では、理解の容易化のために、第1の部品201と第2の部品202との接触面となる部分が見えるように示す。
The
次に、接触面であるか否かを判定する処理について説明する。ここで、第1算出部602から第3算出部604を用いて、接触面であるか否かの判定基準の算出例を3つ挙げる。各算出例については、図8を用いて説明する。
Next, processing for determining whether or not the contact surface is present will be described. Here, three calculation examples of the criterion for determining whether or not the contact surface is used by using the
図8は、接触面であるか否かの判定基準例を示す説明図である。まず、第1算出部602について説明する。第1算出部602は、例えば、第1の部品201を表現する要素のうち第1の要素e1の法線n1と、第2の部品202を表現する要素のうち第2の要素e2を含む平面とに基づいて、第1の要素e1と第2の要素e2との間の第1の距離d1を特定する。
FIG. 8 is an explanatory diagram illustrating an example of a criterion for determining whether or not the contact surface. First, the
具体的には、第1算出部602は、例えば、第1の部品201を表現する要素からいずれかの第1の要素e1と、第1の部品201を表現する要素からいずれかの第2の要素e2と、を選択する。第1算出部602は、第1の要素e1の法線n1と第2の要素e2を含む平面との第1の交点を特定する。第1算出部602は、第1の要素e1と第1の要素e1の法線n1との第2の交点を特定する。第1の交点は、第2の交点から第1の要素e1の法線n1の方向に線を引いた際に、その線と第2の要素e2を含む平面との交わる点p1である。第2の交点が重心aである。第1算出部602は、第1の交点(点p1)と、第2の交点(重心a)との第1の距離d1を算出する。
Specifically, the
判定部605は、第1の距離d1に応じて、第1の要素e1と第2の要素e2とが接触しているか否かを判定する。判定部605は、例えば、第1の距離d1が第1閾値以上である場合に、第1の要素e1と第2の要素e2とが接触していないと判定する。判定部605は、例えば、第1の距離d1が第1閾値未満である場合に、第1の要素e1と第2の要素e2とが接触していると判定する。
The
第2算出部603は、第2の要素e2の法線n2と第1の要素e1を含む平面とに基づいて、第1の要素e1と第2の要素e2との間の第2の距離d2を特定する。
The
具体的には、第2算出部603は、例えば、第1の部品201を表現する複数の要素からいずれかの第1の要素e1と、第2の部品202を表現する複数の要素からいずれかの第2の要素e2と、を選択する。そして、第2算出部603は、例えば、選択した第2の要素e2の法線n2と選択した第1の要素e1を含む平面との第1の交点を特定する。第1の交点は、第2の交点から第2の要素e2の法線n2方向に線を引いた際に、その線と第1の要素e1を含む平面との交わる点p2である。第2算出部603は、例えば、第2の要素e2と第2の要素e2の法線n2との第2の交点を特定する。ここでの第2の交点は、例えば、第2の要素e2の重心bである。第2算出部603は、第1の交点(点p2)と第2の交点(重心b)との第2の距離d2を算出する。
Specifically, the
判定部605は、第2の距離d2に応じて、第1の要素e1と第2の要素e2とが接触しているか否かを判定する。判定部605は、例えば、第2の距離d2が第2閾値以上である場合に、第1の要素e1と第2の要素e2とが接触していないと判定する。判定部605は、例えば、第2の距離d2が第2閾値未満である場合に、第1の要素e1と第2の要素e2とが接触していると判定する。
The
次に、第3算出部604は、例えば、第1の要素e1の法線n1と第2の要素e2の法線n2との交角θを算出する。第3算出部604は、例えば、第1の部品201を表現する複数の要素からいずれかの第1の要素e1と、第2の部品202を表現する複数の要素からいずれかの第2の要素e2と、を選択する。そして、第3算出部604は、例えば、第1の要素e1の法線n1と第2の要素e2の法線n2との交角θを算出する。
Next, the
ここで、交角θが大きいほど、第1の要素e1と第2の要素e2とが直交していることになるため、第1の要素e1と第2の要素e2とは、接触していないことになる。また、第1の要素e1の法線n1と、第2の要素e2の法線n2とが平行である場合、第1の要素e1と第2の要素e2との交角θが算出されない。このような場合、第1の要素e1と第2の要素e2とは向き合っている。そして、交角θが小さいほど、第1の要素e1と第2の要素e2とが向き合っている。例えば、第1の距離d1および/又は第2の距離d2が近くて、かつ交角θが小さいほど、第1の要素e1と第2の要素e2とが接触している可能性が高くなる。 Here, since the first element e1 and the second element e2 are orthogonal to each other as the intersection angle θ is larger, the first element e1 and the second element e2 are not in contact with each other. become. Further, when the normal line n1 of the first element e1 and the normal line n2 of the second element e2 are parallel, the intersection angle θ between the first element e1 and the second element e2 is not calculated. In such a case, the first element e1 and the second element e2 face each other. The first element e1 and the second element e2 face each other as the intersection angle θ is smaller. For example, the closer the first distance d1 and / or the second distance d2 is and the smaller the intersection angle θ is, the higher the possibility that the first element e1 and the second element e2 are in contact with each other.
そこで、判定部605は、第1の距離d1および/又は第2の距離d2と、交角θ又は交角θの有無と、に基づいて、第1の要素e1と第2の要素e2とが接触しているか否かを判定する。
Therefore, the
ここでは、第1の距離d1および第2の距離d2と、交角θと、に基づいて、第1の要素e1と第2の要素e2とが接触しているか否かを判定する例について説明する。より具体的には、判定部605は、第1の距離d1が第1閾値未満であり、第2の距離d2が第2閾値未満であり、かつ交角θが第3閾値未満である場合に、第1の要素e1と第2の要素e2とが接触していると判定する。判定部605は、第1の距離d1が第1閾値以上である場合と、第2の距離d2が第2閾値以上である場合と、交角θが第3閾値以上である場合と、の少なくともいずれかの場合に、第1の要素e1と第2の要素e2とが接触していないと判定する。
Here, an example will be described in which it is determined whether or not the first element e1 and the second element e2 are in contact with each other based on the first distance d1 and the second distance d2 and the intersection angle θ. . More specifically, the
接触判定装置100は、第1の距離d1と第2の距離d2と交角θとの3つの判定基準を用いることにより、より精度よく接触面を特定することができる。
The
ここで、判定部605は、第1の部品201について、第1の部品201を表現する要素のうち、第2の部品202を表現する要素のいずれかと接触していると判定された要素の要素情報を接触面情報として格納する。判定部605は、第1の部品201について、第1の部品201を表現する要素のうち、第2の部品202を表現する要素のいずれとも接触していると判定されていない要素の要素情報を非接触面情報として格納する。
Here, with respect to the
また、判定部605は、第2の部品202について、第2の部品202を表現する要素のうち、第1の部品201を表現する要素のいずれかと接触していると判定された要素の要素情報を接触面情報として格納する。判定部605は、第2の部品202について、第2の部品202を表現する要素のうち、第1の部品201を表現する要素のいずれかと接触していると判定されていない要素の要素情報を非接触面情報として格納する。
Further, the
出力部607は、第1の要素e1と第2の要素e2とが接触していると判定した場合、第1の部品201を表現する要素と第2の部品202を表現する要素とのうち、第1の要素e1と第2の要素e2とを区別可能に出力する。出力形式としては、例えば、ディスプレイ409への出力、I/F406による外部装置への送信、RAM403、ディスク405などの記憶装置への格納などが挙げられる。
When the
図9は、出力例を示す説明図である。出力部607は、例えば、第1の部品201を表す要素のうち、第2の部品202を表現する要素のいずれかと接触していると判定された要素と、この要素以外の要素と、を区別可能に出力する。また、出力部607は、例えば、第2の部品202を表現する要素のうち、第1の部品201を表現する要素のいずれかと接触していると判定された要素と、この要素以外の要素と、を区別可能に出力する。
FIG. 9 is an explanatory diagram illustrating an output example. The
具体的には、出力部607は、例えば、CADによって各部品をディスプレイ409などに表示する際に、接触していると判定された要素と、接触していると判定されていない要素とで異なる色を付けて表示する。また、出力部607は、例えば、接触していると判定された要素を強調表示する。図9では、第1の部品201において、接触していると判定された要素にハッチングが付されている。また、図9では、第2の部品202において、接触していると判定された要素と、接触されていないと判定された要素とで異なるハッチングが付されている。
Specifically, the
また、出力部607は、各部品について、接触していると判定された複数の要素の中で、要素間で頂点を共有しあう一連の要素を1つの接触面として特定する。そして、出力部607は、特定した接触面の数を出力してもよい。
Further, the
一連の要素を探索する方法例は、以下の通りである。出力部607は、例えば、接触していると判定された複数の要素のうちのいずれかの要素を選択する。そして、出力部607は、選択した要素と接触していると判定された複数の要素から、選択した要素と頂点を共有する要素を検出する。そして、出力部607は、選択した要素と検出した要素とを一連の要素とする。また、出力部607は、さらに、接触していると判定された複数の要素のうちの一連の要素以外の要素から、検出した要素と頂点を共有する要素を検出する。そして、出力部607は、新たに検出した要素を一連の要素に含める。このようにして、一連の要素が探索される。
An example method for searching for a series of elements is as follows. For example, the
また、図9において、第1部品情報701では、すべての要素の要素情報が、第1の部品201についての非接触面情報902と、第1の部品201についての接触面情報901と、に区別される。また、第2部品情報702では、すべての要素の要素情報が、第2の部品202についての非接触面情報912と、第2の部品202についての接触面情報911と、に区別される。
In FIG. 9, in the
次に、第1の部品201と、第2の部品202との接触面において要素を一致させる処理について説明する。
Next, processing for matching elements on the contact surface between the
また、生成部606は、第1の要素e1と第2の要素e2とが接触していると判定された場合、第1の部品201に対応する新たな部品を表現する要素を生成する。生成部606は、第1の部品201を表現する要素のうち、第1の要素e1に含まれる頂点を含む第3の要素に含まれるその頂点と異なる頂点と、第2の要素e2と、に基づいて、この新たな部品を表現する要素を生成する。新たな部品を表現する要素は、第1の部品201を表現する要素のうち第1の要素e1および第3の要素以外の要素と、第2の要素e2と同一の要素と、異なる頂点と第2の要素e2に含まれる頂点とによって生成された要素と、を有する。
Further, when it is determined that the first element e1 and the second element e2 are in contact with each other, the
新たな部品を表現する要素を生成するとは、実際にはCADデータ101を変更することである。より詳細には、本実施の形態では、生成部606は、第1の部品201に対応する新たな部品を、第1の部品201を表現する要素を変更して作成する。このため、新たな部品については、第1の部品201とも呼ぶこととする。以下の説明において、要素や頂点に対する削除や生成する処理とは、CADデータ101から要素の要素情報や頂点の頂点情報を削除することである。また、第1の部品201を表現する要素を変更する例を挙げるが、第1の部品201と第2の部品202とのいずれの要素を変更するかについては、特に限定せず、例えば利用者に選択させてもよい。
Generating an element that expresses a new part actually means changing the
次に、図10〜図13を用いて、第1の部品201と第2の部品202との間の接触面の要素を一致させる処理の詳細例を説明する。
Next, a detailed example of processing for matching the elements of the contact surface between the
図10は、フリーエッジの特定例を示す説明図である。生成部606は、第1の部品201についての接触面情報901に基づいて、接触していると判定された要素のエッジのうち、接触していると判定された要素間で共有していないエッジ(第1フリーエッジfe1とも称する。)の頂点を特定する。そして、生成部606は、特定した第1フリーエッジfe1の頂点の第1頂点情報1011を格納する。次に、生成部606は、第1の部品201についての接触面情報901を削除する。
FIG. 10 is an explanatory diagram illustrating a specific example of a free edge. The
そして、生成部606は、第2の部品202についての接触面情報911を複製する。生成部606は、第1部品情報701に、複製した接触面情報1001を入れる。これにより、第1の部品201に対応する新たな部品を表現する要素に、接触していると判定された第2の要素e2と同一の要素を含めることができる。
Then, the
生成部606は、複製した接触面情報1001に基づいて、接触していると判定された要素のエッジのうち、接触していると判定された要素間で共有していないエッジ(第2フリーエッジfe2とも称する。)の頂点を特定する。そして、生成部606は、特定した第2フリーエッジfe2の頂点の第2頂点情報1012を格納する。
Based on the copied
図11は、第1フリーエッジfe1と頂点を共有する要素の特定例を示す説明図である。図11において、第1フリーエッジfe1に囲まれた要素は、複製した接触面情報1001が示す要素である。
FIG. 11 is an explanatory diagram illustrating a specific example of an element sharing a vertex with the first free edge fe1. In FIG. 11, elements surrounded by the first free edge fe1 are elements indicated by the duplicated
生成部606は、第1の部品201についての非接触面情報902から、第1頂点情報1011が示す頂点を含む要素の要素情報1100を特定する。すなわち、生成部606は、第1フリーエッジfe1と頂点を共有する要素を特定する。そして、生成部606は、要素情報1100が示す要素に含まれる頂点のうち、第1頂点情報1011が示す頂点と異なる頂点の第3頂点情報1101を特定する。
The
図12は、第1フリーエッジfe1と頂点を共有する要素の削除例を示す説明図である。生成部606は、要素情報1100を削除する。これにより、第1フリーエッジfe1の頂点と同一の頂点を有する要素が削除される。
FIG. 12 is an explanatory diagram illustrating an example of deleting an element sharing a vertex with the first free edge fe1. The
図13は、新たな要素を生成した例を示す説明図である。生成部606は、第2頂点情報1012に含まれる頂点と、第3頂点情報1101に含まれる頂点と、に基づいて、第1の部品201についての新たな要素を生成する。これにより、第1の部品201に対応する新たな部品を表現する要素が生成される。
FIG. 13 is an explanatory diagram illustrating an example in which a new element is generated. The
そして、出力部607は、新たに生成した要素によって表現された第1の部品201と第2の部品202とを含む3次元モデル200を出力する。
Then, the
また、上述した実施の形態に限らず、種々変更可能である。実施の形態では、生成部606は、第1の部品201の接触面の要素を、第2の部品202の接触面の要素に一致させる処理を行っているが、これに限らない。例えば、第1の部品201と第2の部品202とのいずれの部品の接触面の要素を他方の部品の接触面の要素に一致させるかを利用者によって選択可能としてもよい。例えば、利用者が、接触面の表示結果に応じていずれの部品の接触面の要素を一致させるかを選択してもよい。
Further, the present invention is not limited to the above-described embodiment, and various modifications can be made. In the embodiment, the
(接触判定装置100が行う処理手順例)
図14は、接触判定装置100が行う処理手順例を示すフローチャートである。まず、接触判定装置100は、CADデータ101を取得する(ステップS1401)。接触判定装置100は、接触面の判定処理を行う(ステップS1402)。次に、接触判定装置100は、要素の生成処理を行う(ステップS1403)。
(Example of processing procedure performed by contact determination device 100)
FIG. 14 is a flowchart illustrating an example of a processing procedure performed by the
次に、接触判定装置100は、各接触面情報(1001,911)と各非接触面情報(902,912)とに基づいて、接触面である要素と接触面でない要素とを区別可能に表示し(ステップS1404)、一連の処理を終了する。
Next, the
また、接触判定装置100は、ステップS1402とステップS1403との間で、接触面である要素と接触面でない要素とを区別可能に表示する処理を行ってもよい。
Moreover, the
図15は、図14で示した接触面の判定処理の詳細な説明を示すフローチャートである。接触判定装置100は、第1の部品201を表現する要素のうち、未処理の第1の要素があるか否かを判断する(ステップS1501)。次に、未処理の第1の要素があると判断された場合(ステップS1501:Yes)、接触判定装置100は、未処理の第1の要素を選択する(ステップS1502)。
FIG. 15 is a flowchart showing a detailed description of the contact surface determination process shown in FIG. The
接触判定装置100は、第2の部品202を表現する要素のうち、選択した第1の要素において未処理の第2の要素があるか否かを判断する(ステップS1503)。未処理の第2の要素があると判断された場合(ステップS1503:Yes)、接触判定装置100は、未処理の第2の要素を選択する(ステップS1504)。次に、接触判定装置100は、選択した第1の要素の法線と、選択した第2の要素の法線と、の交角θを算出する(ステップS1505)。
The
次に、接触判定装置100は、交角θが第3閾値以上か否かを判断する(ステップS1506)。交角θが第3閾値以上であると判断された場合(ステップS1506:Yes)、接触判定装置100は、ステップS1503に戻る。交角θが第3閾値以上でないと判断された場合(ステップS1506:No)、接触判定装置100は、第1の距離d1を算出する(ステップS1507)。
Next, the
接触判定装置100は、第1の距離d1が第1閾値以上か否かを判断する(ステップS1508)。第1の距離d1が第1閾値以上であると判断された場合(ステップS1508:Yes)、接触判定装置100は、ステップS1503に戻る。第1の距離d1が第1閾値以上でないと判断された場合(ステップS1508:No)、接触判定装置100は、第2の距離d2を算出する(ステップS1509)。接触判定装置100は、第2の距離d2が第2閾値以上であるか否かを判断する(ステップS1510)。
The
第2の距離d2が第2閾値以上であると判断された場合(ステップS1510:Yes)、接触判定装置100は、ステップS1503へ戻る。第2の距離d2が第2閾値以上でないと判断された場合(ステップS1510:No)、接触判定装置100は、第1の要素を示す要素情報を第1の部品201についての接触面情報901として格納する(ステップS1511)。次に、接触判定装置100は、第2の要素を示す要素情報を第2の部品202についての接触面情報911に格納し(ステップS1512)、ステップS1501へ戻る。
When it is determined that the second distance d2 is greater than or equal to the second threshold (step S1510: Yes), the
ステップS1503において、未処理の第2の要素がないと判断された場合(ステップS1503:No)、接触判定装置100は、第1の要素を示す要素情報を第1の部品201についての非接触面情報902に格納し(ステップS1513)、ステップS1501へ戻る。次に、未処理の第1の要素がないと判断された場合(ステップS1501:No)、接触判定装置100は、第2の部品202についての接触面情報911に含まれない第2の要素を示す要素情報を第2の部品202についての非接触面情報912に格納し(ステップS1514)、一連の処理を終了する。
When it is determined in step S1503 that there is no unprocessed second element (step S1503: No), the
なお、第1の距離d1と第2の距離d2と交角θとについての算出処理および判定処理については、図15に示すように、交角θ、第1の距離d1、第2の距離d2の順に限らず、種々変更してよいし、並列処理であってもよく、特に限定しない。 As shown in FIG. 15, the calculation process and the determination process for the first distance d1, the second distance d2, and the intersection angle θ are performed in the order of the intersection angle θ, the first distance d1, and the second distance d2. Not limited to this, various changes may be made and parallel processing may be used, and there is no particular limitation.
図16は、図14で示した要素の生成処理の詳細な説明を示すフローチャートである。接触判定装置100は、第1の部品201についての接触面情報901に含まれる要素情報が示す要素のエッジのうちの第1フリーエッジfe1の頂点の第1頂点情報1011を格納する(ステップS1601)。
FIG. 16 is a flowchart showing a detailed description of the element generation processing shown in FIG. The
次に、接触判定装置100は、第1の部品201についての接触面情報901を削除する(ステップS1602)。これにより、第1の部品201を表現する要素から、第1の部品202の接触面の要素が削除される。
Next, the
そして、接触判定装置100は、第2の部品202についての接触面情報911を複製して、第1の部品201についての接触面情報901として格納する(ステップS1603)。次に、接触判定装置100は、第1の部品201についての接触面情報901に含まれる要素情報が示す要素のエッジのうちの第2フリーエッジfe2上の第2頂点情報1012を格納する(ステップS1604)。
Then, the
次に、接触判定装置100は、第1の部品201についての非接触面情報902から、第1頂点情報1011が示す頂点を含む要素を示す要素情報1100を特定する(ステップS1605)。これにより、非接触面情報902から、第1フリーエッジfe1の頂点を含む三角形が特定される。接触判定装置100は、特定した要素情報1100が示す要素の頂点のうち、第1頂点情報1011が示す頂点以外の頂点を特定して第3頂点情報1101を格納する(ステップS1606)。
Next, the
次に、接触判定装置100は、第1の部品201についての非接触面情報902から、要素情報1100を削除する(ステップS1607)。次に、接触判定装置100は、第3頂点情報1101と、第2頂点情報1012と、に基づいて、三角形の要素を再構築し(ステップS1608)、一連の処理を終了する。ステップS1608によって要素の要素情報1200が生成される。ステップS1608によって、削除した要素情報1100が示す要素の代わりとなる新たな要素が生成される。
Next, the
以上説明したように、接触判定装置100は、各部品を三角形の要素で表す場合に、第1の部品の1つの要素の法線と、第2の部品の1つの要素を含む平面とに基づく2つの要素間の距離に応じて、2つの要素が接触しているか否かを判定する。これにより、接触判定装置100は、2つの要素が近いにあるか否かによって、2つの要素が各部品の接触面であるか否かを判定することができる。したがって、接触判定装置100は、STLデータのような汎用的なCADデータであっても、各部品の接触面を自動で精度よく特定することができる。このように曲面の情報を有するような有償のCADデータを使用しなくてよいため、解析の低廉化を図ることができる。
As described above, the
また、接触判定装置100は、第1の要素と第2の要素とが接触していると判定した場合、第1の部品と第2の部品のうち、第1の要素と第2の要素とを区別可能に出力する。これにより、接触判定装置100は、部品の接触面を見易く提示することができる。
Further, when the
また、接触判定装置100は、第1の要素と第2の要素との距離として、第1の要素の法線と第2の要素を含む平面との第1の交点と、第1の要素と第1の要素の法線との第2の交点との距離を算出する。
Further, the
また、接触判定装置100は、第2の要素の法線と第1の要素を含む平面とに基づいて、第1の要素と第2の要素との間の第2の距離に応じて、第1の要素と第2の要素とが接触しているか否かを判定する。これにより、第2の要素から第1の要素を見た場合に、第1の要素と第2の要素とが接触面となるか否かが判定される。
Further, the
また、例えば、接触面では、要素の面同士が向き合っていることが考えられる。そこで、接触判定装置100は、第1の要素の法線および第2の要素の法線の交角と、第1の距離とに応じて、第1の要素と第2の要素とが接触しているか否かを判定する。これにより、接触判定装置100は、第1の要素と第2の要素とが近く、かつ第1の要素と第2の要素とが向き合っている場合に、第1の要素と第2の要素とが接触面であると判定することができる。したがって、接触判定装置100は、より精度良く部品の接触面を特定することができる。
Further, for example, it is conceivable that the element surfaces face each other on the contact surface. Therefore, the
また、接触判定装置100は、第1の部品を表現する要素のうち、第1の要素に含まれる頂点を含む第3の要素に含まれるこの頂点と異なる頂点と、第2の要素と、に基づいて、第1の部品に対応する新たな部品を表現する要素を生成する。これにより、接触判定装置100は、接触面となる部分において、第1の部品の要素と、第2の部品の要素と、を一致させることができる。したがって、接触判定装置100は、解析モデルにおいて四面体の要素が干渉するのを抑制することができる。
Further, the
なお、本実施の形態で説明した接触判定方法は、予め用意された接触判定プログラムをパーソナル・コンピュータやワークステーション等のコンピュータで実行することにより実現することができる。本接触判定プログラムは、磁気ディスク、光ディスク、USB(Universal Serial Bus)フラッシュメモリなどのコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。また、接触判定プログラムは、インターネット等のネットワークを介して配布してもよい。 The contact determination method described in this embodiment can be realized by executing a contact determination program prepared in advance on a computer such as a personal computer or a workstation. The contact determination program is recorded on a computer-readable recording medium such as a magnetic disk, an optical disk, or a USB (Universal Serial Bus) flash memory, and is executed by being read from the recording medium by the computer. Further, the contact determination program may be distributed via a network such as the Internet.
また、接触判定装置100は、スタンダードセルやストラクチャードASIC(Application Specific Integrated Circuit)などの特定用途向けIC(以下、単に「ASIC」と称す。)やFPGA(Field Programmable Gate Array)などのPLD(Programmable Logic Device)によっても実現することができる。具体的には、例えば、上述した接触判定装置の機能をHDL(Hardware Description Language)記述によって機能定義し、そのHDL記述を論理合成してASICやPLDに与えることにより、接触判定装置100を製造することができる。
In addition, the
上述した実施の形態に関し、さらに以下の付記を開示する。 The following additional notes are disclosed with respect to the embodiment described above.
(付記1)第1の部品と第2の部品とを含む3次元モデルのデータを取得し、
前記第1の部品を表現する要素のうち第1の要素の法線と、前記第2の部品を表現する要素のうち第2の要素を含む平面とに基づいて、前記第1の要素と前記第2の要素との間の距離を特定し、
前記距離に応じて、前記第1の要素と前記第2の要素とが接触しているか否かを判定する、
処理をコンピュータに実行させることを特徴とする接触判定プログラム。
(Supplementary note 1) Acquire data of a three-dimensional model including a first part and a second part,
Based on the normal of the first element among the elements representing the first part and the plane including the second element among the elements representing the second part, the first element and the Identify the distance between the second element,
Determining whether the first element and the second element are in contact according to the distance;
A contact determination program for causing a computer to execute processing.
(付記2)前記第1の要素と前記第2の要素とが接触していると判定した場合、前記第1の部品を表現する要素と前記第2の部品を表現する要素とのうち、前記第1の要素と前記第2の要素とを区別可能に出力する、
ことを特徴とする付記1に記載の接触判定プログラム。
(Supplementary Note 2) When it is determined that the first element and the second element are in contact with each other, the element representing the first part and the element representing the second part are Outputting the first element and the second element in a distinguishable manner;
The contact determination program according to Supplementary Note 1, wherein
(付記3)前記距離は、前記第1の要素の法線と前記第2の要素を含む平面との第1の交点と、前記第1の要素と前記第1の要素の法線との第2の交点との距離である、
ことを特徴とする付記1に記載の接触判定プログラム。
(Supplementary Note 3) The distance is the first intersection of the normal line of the first element and the plane including the second element, and the normal line of the first element and the normal line of the first element. The distance from the intersection of
The contact determination program according to Supplementary Note 1, wherein
(付記4)前記第2の要素の法線と前記第1の要素を含む平面とに基づいて、前記第1の要素と前記第2の要素との間の第2の距離を特定し、
前記第1の要素と前記第2の要素とが接触しているか否かの判定は、前記第2の距離に応じて判定される、
ことを特徴とする付記1に記載の接触判定プログラム。
(Supplementary Note 4) Based on a normal line of the second element and a plane including the first element, a second distance between the first element and the second element is specified,
The determination as to whether or not the first element and the second element are in contact is determined according to the second distance.
The contact determination program according to Supplementary Note 1, wherein
(付記5)前記第1の要素と前記第2の要素とが接触しているか否かの判定は、前記第1の要素の法線と前記第2の要素の法線との交角の有無又は前記交角の大きさと、前記距離とに応じて判定される、
ことを特徴とする付記1乃至4のいずれか1つに記載の接触判定プログラム。
(Supplementary Note 5) Whether or not the first element and the second element are in contact with each other is determined by whether or not there is an intersection angle between the normal line of the first element and the normal line of the second element, or It is determined according to the size of the intersection angle and the distance.
The contact determination program according to any one of supplementary notes 1 to 4, characterized in that:
(付記6)前記第1の要素と前記第2の要素とが接触している場合、前記第1の部品を表現する要素のうち、前記第1の要素に含まれる頂点を含む第3の要素に含まれる当該頂点と異なる頂点と、前記第2の要素と、に基づいて、前記第1の部品に対応する新たな部品を表現する要素を生成する、
ことを特徴とする付記1乃至5のいずれか1つに記載の接触判定プログラム。
(Additional remark 6) When the said 1st element and the said 2nd element are contacting, the 3rd element containing the vertex contained in the said 1st element among the elements expressing the said 1st component Generating an element representing a new part corresponding to the first part based on the vertex different from the vertex included in the second element and the second element;
The contact determination program according to any one of appendices 1 to 5, characterized in that:
(付記7)前記新たな部品を表現する要素は、前記第1の部品を表現する要素のうち前記第1の要素および前記第3の要素以外の要素と、前記第2の要素と同一の要素と、前記異なる頂点と前記第2の要素に含まれる頂点とによって生成された要素と、を含むことを特徴とする付記6に記載の接触判定プログラム。 (Additional remark 7) The element expressing the new part is the same element as the second element and the elements other than the first element and the third element among the elements expressing the first part And an element generated by the different vertex and the vertex included in the second element. 7. The contact determination program according to appendix 6, wherein:
(付記8)第1の部品と第2の部品とを含む3次元モデルのデータを取得し、
前記第1の部品を表現する要素のうち第1の要素の法線と、前記第2の部品を表現する要素のうち第2の要素を含む平面とに基づいて、前記第1の要素と前記第2の要素との間の距離を特定し、
前記距離に応じて、前記第1の要素と前記第2の要素とが接触しているか否かを判定する、
処理をコンピュータが実行することを特徴とする接触判定方法。
(Supplementary Note 8) Acquire data of a three-dimensional model including the first part and the second part,
Based on the normal of the first element among the elements representing the first part and the plane including the second element among the elements representing the second part, the first element and the Identify the distance between the second element,
Determining whether the first element and the second element are in contact according to the distance;
A contact determination method, wherein a computer executes a process.
(付記9)第1の部品と第2の部品とを含む3次元モデルのデータを取得し、
前記第1の部品を表現する要素のうち第1の要素の法線と、前記第2の部品を表現する要素のうち第2の要素を含む平面とに基づいて、前記第1の要素と前記第2の要素との間の距離を特定し、
前記距離に応じて、前記第1の要素と前記第2の要素とが接触しているか否かを判定する、
制御部を有することを特徴とする接触判定装置。
(Supplementary Note 9) Acquire data of a three-dimensional model including the first part and the second part,
Based on the normal of the first element among the elements representing the first part and the plane including the second element among the elements representing the second part, the first element and the Identify the distance between the second element,
Determining whether the first element and the second element are in contact according to the distance;
A contact determination device having a control unit.
100 接触判定装置
101 CADデータ
200 3次元モデル
201 第1の部品
202 第2の部品
300 解析モデル
301 第1の解析モデル
302 第2の解析モデル
600 制御部
601 取得部
602 第1算出部
603 第2算出部
604 第3算出部
605 判定部
606 生成部
607 出力部
701 第1部品情報
702 第2部品情報
901,911,1001 接触面情報
902,912 非接触面情報
1011 第1頂点情報
1012 第2頂点情報
1100,1200 要素情報
1101 第3頂点情報
DESCRIPTION OF
Claims (8)
前記第1の部品を表現する要素のうち第1の要素の法線と、前記第2の部品を表現する要素のうち第2の要素を含む平面とに基づいて、前記第1の要素と前記第2の要素との間の距離を特定し、
前記距離に応じて、前記第1の要素と前記第2の要素とが接触しているか否かを判定する、
処理をコンピュータに実行させることを特徴とする接触判定プログラム。 Acquiring data of a three-dimensional model including the first part and the second part;
Based on the normal of the first element among the elements representing the first part and the plane including the second element among the elements representing the second part, the first element and the Identify the distance between the second element,
Determining whether the first element and the second element are in contact according to the distance;
A contact determination program for causing a computer to execute processing.
ことを特徴とする請求項1に記載の接触判定プログラム。 When it is determined that the first element and the second element are in contact with each other, the first element among the element expressing the first part and the element expressing the second part And the second element are output in a distinguishable manner,
The contact determination program according to claim 1, wherein:
ことを特徴とする請求項1に記載の接触判定プログラム。 The distance is a first intersection point between a normal line of the first element and a plane including the second element, and a second intersection point between the first element and the normal line of the first element. Is the distance to
The contact determination program according to claim 1, wherein:
前記第1の要素と前記第2の要素とが接触しているか否かの判定は、前記第2の距離に応じて判定される、
ことを特徴とする請求項1に記載の接触判定プログラム。 Determining a second distance between the first element and the second element based on a normal of the second element and a plane including the first element;
The determination as to whether or not the first element and the second element are in contact is determined according to the second distance.
The contact determination program according to claim 1, wherein:
ことを特徴とする請求項1乃至4のいずれか1項に記載の接触判定プログラム。 Whether or not the first element and the second element are in contact with each other is determined by the presence or absence of the intersection angle between the normal line of the first element and the normal line of the second element or the magnitude of the intersection angle. And is determined according to the distance,
The contact determination program according to claim 1, wherein the contact determination program is any one of claims 1 to 4.
ことを特徴とする請求項1乃至5のいずれか1項に記載の接触判定プログラム。 When the first element and the second element are in contact with each other, the element included in the third element including the vertex included in the first element among the elements expressing the first part Generating an element representing a new part corresponding to the first part based on a vertex different from the vertex and the second element;
The contact determination program according to any one of claims 1 to 5, wherein:
前記第1の部品を表現する要素のうち第1の要素の法線と、前記第2の部品を表現する要素のうち第2の要素を含む平面とに基づいて、前記第1の要素と前記第2の要素との間の距離を特定し、
前記距離に応じて、前記第1の要素と前記第2の要素とが接触しているか否かを判定する、
処理をコンピュータが実行することを特徴とする接触判定方法。 Acquiring data of a three-dimensional model including the first part and the second part;
Based on the normal of the first element among the elements representing the first part and the plane including the second element among the elements representing the second part, the first element and the Identify the distance between the second element,
Determining whether the first element and the second element are in contact according to the distance;
A contact determination method, wherein a computer executes a process.
前記第1の部品を表現する要素のうち第1の要素の法線と、前記第2の部品を表現する要素のうち第2の要素を含む平面とに基づいて、前記第1の要素と前記第2の要素との間の距離を特定し、
前記距離に応じて、前記第1の要素と前記第2の要素とが接触しているか否かを判定する、
制御部を有することを特徴とする接触判定装置。 Acquiring data of a three-dimensional model including the first part and the second part;
Based on the normal of the first element among the elements representing the first part and the plane including the second element among the elements representing the second part, the first element and the Identify the distance between the second element,
Determining whether the first element and the second element are in contact according to the distance;
A contact determination device having a control unit.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017050028A JP2018156145A (en) | 2017-03-15 | 2017-03-15 | Contact determination program, contact determination method, and contact determination device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017050028A JP2018156145A (en) | 2017-03-15 | 2017-03-15 | Contact determination program, contact determination method, and contact determination device |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2018156145A true JP2018156145A (en) | 2018-10-04 |
Family
ID=63716484
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017050028A Pending JP2018156145A (en) | 2017-03-15 | 2017-03-15 | Contact determination program, contact determination method, and contact determination device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2018156145A (en) |
-
2017
- 2017-03-15 JP JP2017050028A patent/JP2018156145A/en active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6787661B2 (en) | Simulation of machining of workpieces | |
JP6513914B2 (en) | Path design connecting the first point and the second point in a 3D scene | |
JP4381743B2 (en) | Method and program for generating volume data from boundary representation data | |
JP6498872B2 (en) | Designing 3D modeled objects using 2D views | |
US11436800B2 (en) | Interactive system and method providing real-time virtual reality visualization of simulation data | |
JP2018109948A (en) | Querying database based on parametric view function | |
KR20140139984A (en) | Compression and decompression of a 3d modeled object | |
JP2013114694A (en) | Creating surface from plural 3d curves | |
CN105760570B (en) | Selecting viewpoints of a set of objects | |
JP6518517B2 (en) | Point cloud data modeling device | |
US9117300B2 (en) | Designing a modeled volume represented by dexels | |
JP6360356B2 (en) | Interference check system | |
JP2017168081A (en) | 3d object localization with descriptor | |
JP2023529790A (en) | Method, apparatus and program for generating floorplans | |
CN107567641B (en) | System and method for identifying replicas | |
JP7256005B2 (en) | Determining the set of facets representing the skin of the real object | |
Ćurković et al. | 3D shape acquisition and integral compact representation using optical scanning and enhanced shape parameterization | |
JP2017162447A (en) | Localization of 3d object with quantization | |
Bawin et al. | Automatic feature‐preserving size field for three‐dimensional mesh generation | |
JP2018156145A (en) | Contact determination program, contact determination method, and contact determination device | |
JP2010211629A (en) | Apparatus and method for processing information | |
JP2022072158A (en) | Information processing method and information processing device | |
JP6005317B1 (en) | Drawing data creation method using a system for displaying and operating two-dimensional or three-dimensional object data | |
JP2008533614A (en) | System and method for generating matched contour profiles | |
WO2023179091A1 (en) | Three-dimensional model rendering method and apparatus, and device, storage medium and program product |