JP2018156145A - Contact determination program, contact determination method, and contact determination device - Google Patents

Contact determination program, contact determination method, and contact determination device Download PDF

Info

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
Application number
JP2017050028A
Other languages
Japanese (ja)
Inventor
洋平 宮崎
Yohei Miyazaki
洋平 宮崎
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 JP2017050028A priority Critical patent/JP2018156145A/en
Publication of JP2018156145A publication Critical patent/JP2018156145A/en
Pending legal-status Critical Current

Links

Images

Abstract

PROBLEM TO BE SOLVED: To identify contact surfaces of a plurality of parts indicated by CAD data with high accuracy.SOLUTION: A contact determination device 100 acquires CAD data 101 of a 3-dimensional model including a first part and a second part. The contact determination device 100 identifies a first distance d1 between a first element e1 and a second element e2, on the basis of a normal of the first element e1 of elements expressing the first part, and a plane including the second element e2 of elements expressing the second part. The contact determination device 100 determines whether or not the first element e1 is brought into contact with the second element e2 according to the first distance d1.SELECTED DRAWING: Figure 1

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).

特開2004−265050号公報JP 2004-265050 A 特開2006−113802号公報JP 2006-113802 A

しかしながら、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.

図1は、接触判定装置による一動作例を示す説明図である。FIG. 1 is an explanatory diagram illustrating an operation example of the contact determination device. 図2は、複数の部品を含む3次元モデル例を示す説明図である。FIG. 2 is an explanatory diagram illustrating an example of a three-dimensional model including a plurality of parts. 図3は、3次元モデルからメッシュ生成によって得た解析モデル例を示す説明図である。FIG. 3 is an explanatory diagram illustrating an example of an analysis model obtained by mesh generation from a three-dimensional model. 図4は、接触判定装置100のハードウェア構成例を示す説明図である。FIG. 4 is an explanatory diagram illustrating a hardware configuration example of the contact determination device 100. 図5は、CADデータ101のデータフォーマット例を示す説明図である。FIG. 5 is an explanatory diagram showing a data format example of the CAD data 101. 図6は、接触判定装置100の機能的構成例を示すブロック図である。FIG. 6 is a block diagram illustrating a functional configuration example of the contact determination device 100. 図7は、第1の部品201と第2の部品202との斜視図である。FIG. 7 is a perspective view of the first component 201 and the second component 202. 図8は、接触面であるか否かの判定基準例を示す説明図である。FIG. 8 is an explanatory diagram illustrating an example of a criterion for determining whether or not the contact surface. 図9は、出力例を示す説明図である。FIG. 9 is an explanatory diagram illustrating an output example. 図10は、フリーエッジの特定例を示す説明図である。FIG. 10 is an explanatory diagram illustrating a specific example of a free edge. 図11は、第1フリーエッジfe1と頂点を共有する要素の特定例を示す説明図である。FIG. 11 is an explanatory diagram illustrating a specific example of an element sharing a vertex with the first free edge fe1. 図12は、第1フリーエッジfe1と頂点を共有する要素の削除例を示す説明図である。FIG. 12 is an explanatory diagram illustrating an example of deleting an element sharing a vertex with the first free edge fe1. 図13は、新たな要素を生成した例を示す説明図である。FIG. 13 is an explanatory diagram illustrating an example in which a new element is generated. 図14は、接触判定装置100が行う処理手順例を示すフローチャートである。FIG. 14 is a flowchart illustrating an example of a processing procedure performed by the contact determination device 100. 図15は、図14で示した接触面の判定処理の詳細な説明を示すフローチャートである。FIG. 15 is a flowchart showing a detailed description of the contact surface determination process shown in FIG. 図16は、図14で示した要素の生成処理の詳細な説明を示すフローチャートである。FIG. 16 is a flowchart showing a detailed description of the element generation processing shown in FIG.

以下に図面を参照して、本発明にかかる接触判定プログラム、接触判定方法、および接触判定装置の実施の形態を詳細に説明する。   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 contact determination device 100 is a computer that determines contact between the first component and the second component included in the three-dimensional model.

従来、例えば、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 contact determination device 100 includes a normal line of one element of the first part and a plane including one element of the second part. It is determined whether or not the two elements are in contact with each other according to the distance between the two elements. Thereby, the contact determination apparatus 100 can determine whether two elements are the contact surfaces of each component. Therefore, the contact determination device 100 can automatically and accurately specify the contact surface of each component in the CAD data representing each component as a triangular element.

数値解析の解析者や解析モデルの設計者などの利用者は、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 contact determination device 100 acquires data of a three-dimensional model including the first part and the second part. A three-dimensional model is a model of a structure. The first part and the second part are models of the parts, respectively. The data of the three-dimensional model is, for example, CAD data 101 such as the above-described STL data.

次に、接触判定装置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 contact determination apparatus 100 is based on the normal line of the first element e1 among the elements representing the first part and the plane including the second element e2 among the elements representing the second part. Thus, the first distance between the first element e1 and the second element e2 is specified. The shape of the element is, for example, a triangle. The first distance is, for example, the first intersection of the normal line of the first element e1 and the plane including the second element e2 and the normal line of the first element e1 and the first element e1. The first distance from the intersection of two. In the example of FIG. 1, the second intersection is, for example, the center of gravity a of the first element e1. The first intersection point is an intersection point p1 between the normal passing through the center of gravity a of the first element e1 and the plane including the second element e2. And the contact determination apparatus 100 specifies the 1st distance d1 of a 1st intersection and a 2nd intersection.

次に、接触判定装置100は、第1距離d1に応じて、第1の要素e1と第2の要素e2とが接触しているか否かを判定する。具体的には、接触判定装置100は、例えば、第1距離が第1閾値以上である場合に、第1の要素e1と第2の要素e2とが接触していないと判定し、第1距離が第1閾値未満である場合に、第1の要素e1と第2の要素e2とが接触していると判定する。ここの第1閾値は、利用者によって設定されればよく、特に限定しない。   Next, the contact determination device 100 determines whether or not the first element e1 and the second element e2 are in contact with each other according to the first distance d1. Specifically, the contact determination device 100 determines, for example, that the first element e1 and the second element e2 are not in contact when the first distance is greater than or equal to the first threshold, and the first distance Is less than the first threshold value, it is determined that the first element e1 and the second element e2 are in contact with each other. The first threshold here may be set by the user and is not particularly limited.

また、接触判定装置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 contact determination device 100 determines the second distance d2 between the first element e1 and the second element e2 based on the normal line of the second element e2 and the plane including the first element e1. Is identified. Specifically, the second distance d2 includes the first intersection of the normal line of the second element e2 and the plane including the first element e1, and the normal line of the second element e2 and the second element e2. And the second intersection point. The second intersection point here is the center of gravity b of the second element e2. The first intersection point is an intersection point p2 between a normal line passing through the center of gravity b of the second element e2 and a plane including the first element e1.

そして、接触判定装置100は、第2の距離d2に応じて、第1の要素e1と第2の要素e2とが接触しているか否かを判定する。具体的には、接触判定装置100は、例えば、第2距離が第2閾値以上である場合に、第1の要素e1と第2の要素e2とが接触していないと判定し、第2距離が第2閾値未満である場合に、第1の要素e1と第2の要素e2とが接触していると判定する。ここの第2閾値は、上述した第1閾値と同じであってもよいし、特に限定しない。   And the contact determination apparatus 100 determines whether the 1st element e1 and the 2nd element e2 are contacting according to the 2nd distance d2. Specifically, for example, when the second distance is equal to or greater than the second threshold, the contact determination device 100 determines that the first element e1 and the second element e2 are not in contact, and the second distance Is less than the second threshold value, it is determined that the first element e1 and the second element e2 are in contact with each other. The second threshold value here may be the same as the first threshold value described above, and is not particularly limited.

このように、第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 contact determination apparatus 100 determines that the first element e1 and the first element e1 when the first distance d1 is less than the first threshold and the second distance is less than the second threshold. It determines with the 2nd element e2 contacting. In addition, the contact determination device 100 determines whether the first element e1 is the first element e1 when at least one of the first distance d1 is equal to or greater than the first threshold and the second distance d2 is equal to or greater than the second threshold. It determines with the 2nd element e2 not contacting.

これにより、接触判定装置100は、例えば曲面の情報などを有さない汎用的なSTLデータのように、三角形の要素によって部品を表現するCADデータ101であっても、異なる部品の接触面を自動で判定することができる。   As a result, the contact determination device 100 automatically detects contact surfaces of different parts even if the CAD data 101 represents parts by triangular elements, such as general-purpose STL data that does not have curved surface information. Can be determined.

図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-dimensional model 200 includes a first part 201 and a second part 202. In FIG. 2, a first part 201 and a second part 202 are models whose shapes are represented by a plurality of triangles, respectively. As shown in FIG. 7 described later, the first component 201 and the second component 202 have a thickness. For this reason, the second component 202 has such a shape that a part of the rectangular parallelepiped is missing. The first component 201 is shaped like a wheel. In the three-dimensional model 200, the first component 201 is in a state where the second component 202 is fitted in the recess. For this reason, since the first component 201 is fitted in the second component 202, the first component 201 and the second component 202 have a portion that becomes a contact surface in the three-dimensional model 200.

しかし、複数の部品の接触面となる部分を拡大した例に示すように、第1の部品201の各要素のサイズと、第2の部品202の各要素のサイズとは異なる。実際には複数の部品の接触面となる部分であっても、異なる部品を表現する要素同士が面で接触しているとは限らない。要素同士が面で接触しているとは、要素同士が一致していることを示す。要素同士が一致しているとは、異なる部品を表す2つの要素に含まれるすべての頂点の位置が同じであることを示す。なお、異なる部品間において要素のサイズが異なる要因の1つとして、部品別にモデル化されることが挙げられる。例えば、部品別にモデル化が行われるのは、1つの構造物であっても同一の部品を何度も使用する際に1回部品をモデル化するためで流用できたり、部品の設計に変更が発生した場合に構造物全体を変更しなくてよいという設計のし易さのためである。   However, the size of each element of the first component 201 is different from the size of each element of the second component 202, as shown in the enlarged example of the contact surface of the plurality of components. Actually, even in a portion that becomes a contact surface of a plurality of parts, elements representing different parts are not necessarily in contact with each other on the surface. The fact that the elements are in contact with each other means that the elements are matched. The fact that the elements match each other indicates that the positions of all the vertices included in the two elements representing different parts are the same. One factor that causes the size of elements to differ between different parts is that each part is modeled. For example, modeling is performed for each part, even if it is a single structure, when the same part is used many times, it can be used for modeling the part once, or the design of the part can be changed. This is because it is easy to design that it is not necessary to change the entire structure when it occurs.

図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 analysis model 300 is obtained by generating a tetrahedral mesh for the three-dimensional model 200. Specifically, the analysis model 300 is obtained by generating a tetrahedral mesh for each of the first component 201 and the second component 202. The analysis model 300 includes a first analysis model 301 generated with a mesh for the first component 201 and a second analysis model 302 generated with a mesh for the second component 202.

図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 first component 201 and the second component 202 as shown in FIG. 2, the analysis model 300 is included in the first analysis model 301 as shown in FIG. Interference occurs between the tetrahedral element and the tetrahedral element included in the first analysis model 301. In FIG. 3, for example, at a point c, the tetrahedron element me1 included in the first analysis model 301 and the tetrahedron element me2 included in the second analysis model 302 interfere with each other.

本実施の形態では、接触判定装置100は、CADデータ101において異なるモデル間の接触面を一致させておくことで、解析モデルにおいて干渉が発生するのを抑制することができる。   In the present embodiment, the contact determination device 100 can suppress the occurrence of interference in the analysis model by matching the contact surfaces between different models in the CAD data 101.

(接触判定装置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 contact determination device 100. The contact determination apparatus 100 includes a CPU (Central Processing Unit) 401, a ROM (Read Only Memory) 402, a RAM (Random Access Memory) 403, a disk drive 404, and a disk 405. The contact determination device 100 includes an I / F (Inter / Face) 406, a keyboard 407, a mouse 408, and a display 409. Further, the CPU 401, the ROM 402, the RAM 403, the disk drive 404, the I / F 406, the keyboard 407, the mouse 408, and the display 409 are connected by a bus 400, respectively.

ここで、CPU401は、接触判定装置100の全体の制御を司る。ROM402は、ブートプログラムなどのプログラムを記憶する。RAM403は、CPU401のワークエリアとして使用される。ディスクドライブ404は、CPU401の制御にしたがってディスク405に対するデータのリード/ライトを制御する。ディスク405は、ディスクドライブ404の制御で書き込まれたデータを記憶する。ディスク405としては、磁気ディスク、光ディスクなどが挙げられる。   Here, the CPU 401 governs overall control of the contact determination device 100. The ROM 402 stores programs such as a boot program. The RAM 403 is used as a work area for the CPU 401. The disk drive 404 controls reading / writing of data with respect to the disk 405 according to the control of the CPU 401. The disk 405 stores data written under the control of the disk drive 404. Examples of the disk 405 include a magnetic disk and an optical disk.

I/F406は、通信回線を通じてLAN(Local Area Network)、WAN(Wide Area Network)、インターネットなどのネットワーク410に接続され、このネットワーク410を介して他の装置に接続される。そして、I/F406は、ネットワーク410と内部のインターフェースを司り、外部装置からのデータの入出力を制御する。I/F406には、例えばモデムやLANアダプタなどを採用することができる。   The I / F 406 is connected to a network 410 such as a LAN (Local Area Network), a WAN (Wide Area Network), and the Internet through a communication line, and is connected to other devices via the network 410. The I / F 406 controls an internal interface with the network 410 and controls input / output of data from an external device. For example, a modem or a LAN adapter may be employed as the I / F 406.

キーボード407やマウス408は、利用者の操作により、各種データの入力を受け付けるインターフェースである。ディスプレイ409は、CPU401の指示により、データを出力するインターフェースである。   A keyboard 407 and a mouse 408 are interfaces that accept input of various data in accordance with user operations. A display 409 is an interface that outputs data in accordance with an instruction from the CPU 401.

また、図示を省略するが、接触判定装置100には、カメラから画像や動画を取り込む入力装置やマイクから音声を取り込む入力装置が設けられていてもよい。また、図示を省略するが、接触判定装置100には、プリンタなどの出力装置が設けられていてもよい。   Although not shown, the contact determination device 100 may be provided with an input device that captures images and moving images from a camera and an input device that captures audio from a microphone. Although not shown, the contact determination device 100 may be provided with an output device such as a printer.

また、本実施の形態では、接触判定装置100のハードウェア構成として、パーソナル・コンピュータを例に挙げているが、これに限らず、サーバなどであってもよい。接触判定装置100がサーバである場合、接触判定装置100と、利用者が操作可能な装置やディスプレイ409などと、がネットワーク410を介して接続されてもよい。   In the present embodiment, a personal computer is used as an example of the hardware configuration of the contact determination device 100. However, the present invention is not limited to this, and a server or the like may be used. When the contact determination device 100 is a server, the contact determination device 100 may be connected to the device operable by the user, the display 409, and the like via the network 410.

(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 data 101. As an example of the data format of the CAD data 101, a storage example of the acquired CAD data 101 will be described using the data format of the STL data as an example. The CAD data 101 includes, for each element representing a part, an element normal and coordinates of three vertices constituting the element.

ここで、CADデータ101では、部品の表面形状を表す三角形の情報を有するが、部品の内部形状を表す三角形の情報を有さない。なお、STLデータにおいて、要素や頂点は、部品別に管理される。STLデータにおいては、異なる部品において同じ位置に頂点を設ける場合、3軸の座標値が同じで異なる頂点として扱われる。本実施の形態では、理解の容易化のために、第1の部品201に含まれる要素の頂点と、この頂点と同じ座標値が設定された第2の部品202に含まれる要素の頂点とは、同一の頂点として扱う場合がある。   Here, the CAD data 101 has triangle information representing the surface shape of the component, but does not have triangle information representing the internal shape of the component. In the STL data, elements and vertices are managed for each part. In STL data, when vertices are provided at the same position in different parts, the coordinate values of the three axes are the same and are treated as different vertices. In the present embodiment, for easy understanding, the vertex of the element included in the first component 201 and the vertex of the element included in the second component 202 set with the same coordinate value as this vertex are defined. May be treated as the same vertex.

(接触判定装置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 contact determination device 100. The contact determination apparatus 100 includes an acquisition unit 601, a first calculation unit 602, a second calculation unit 603, a third calculation unit 604, a determination unit 605, a generation unit 606, and an output unit 607. The processing of the control unit 600 from the acquisition unit 601 to the output unit 607 is coded in a program stored in a storage device such as the ROM 402, the RAM 403, and the disk 405 that can be accessed by the CPU 401 shown in FIG. Then, the CPU 401 reads the program from the storage device and executes the process coded in the program. Thereby, the process of the control part 600 is implement | achieved.

取得部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 acquisition unit 601 acquires the CAD data 101 of the three-dimensional model 200 including the first component 201 and the second component 202. Specifically, the acquisition unit 601 may acquire the CAD data 101 from another device via the network 410. Alternatively, the acquisition unit 601 may acquire the CAD data 101 from a storage device such as the ROM 402, the RAM 403, and the disk 405. Alternatively, the acquisition unit 601 may acquire the CAD data 101 by being input via an input device such as a mouse 408 or a keyboard 407. In order to facilitate understanding, the three-dimensional model 200 will be described using an example having two parts as shown in FIG. 2, but may have three or more parts.

図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 first component 201 and the second component 202. The acquired CAD data 101 includes first component information 701 indicating the first component 201 and second component information 702 indicating the second component 202. The first component information 701 includes element information of an element representing the first component 201 and vertex information of vertices included in the element. The second part information 702 includes element information of an element representing the second part 202 and vertex information of vertices included in the element.

第1部品情報701によって表現される第1の部品201と、第2部品情報702によって表現される第2の部品202とは、それぞれ厚みがある。図2に示す3次元モデル200では、第2の部品202に第1の部品201が嵌っているが、図7では、理解の容易化のために、第1の部品201と第2の部品202との接触面となる部分が見えるように示す。   The first component 201 expressed by the first component information 701 and the second component 202 expressed by the second component information 702 each have a thickness. In the three-dimensional model 200 shown in FIG. 2, the first part 201 is fitted to the second part 202, but in FIG. 7, the first part 201 and the second part 202 are shown for ease of understanding. The part that becomes the contact surface with is shown.

次に、接触面であるか否かを判定する処理について説明する。ここで、第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 first calculation unit 602 to the third calculation unit 604 will be given. Each calculation example will be described with reference to FIG.

図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 first calculation unit 602 will be described. The first calculation unit 602 includes, for example, a normal line n1 of the first element e1 among the elements representing the first part 201 and a second element e2 among the elements representing the second part 202. Based on the above, the first distance d1 between the first element e1 and the second element e2 is specified.

具体的には、第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 first calculation unit 602, for example, selects any first element e1 from an element representing the first component 201 and any second element from an element representing the first component 201. Element e2 is selected. The first calculation unit 602 specifies a first intersection between the normal line n1 of the first element e1 and the plane including the second element e2. The first calculation unit 602 specifies the second intersection point of the first element e1 and the normal line n1 of the first element e1. The first intersection point is a point p1 where the line and the plane including the second element e2 intersect when a line is drawn from the second intersection point in the direction of the normal line n1 of the first element e1. The second intersection is the center of gravity a. The first calculation unit 602 calculates a first distance d1 between the first intersection (point p1) and the second intersection (center of gravity a).

判定部605は、第1の距離d1に応じて、第1の要素e1と第2の要素e2とが接触しているか否かを判定する。判定部605は、例えば、第1の距離d1が第1閾値以上である場合に、第1の要素e1と第2の要素e2とが接触していないと判定する。判定部605は、例えば、第1の距離d1が第1閾値未満である場合に、第1の要素e1と第2の要素e2とが接触していると判定する。   The determination unit 605 determines whether or not the first element e1 and the second element e2 are in contact with each other according to the first distance d1. For example, the determination unit 605 determines that the first element e1 and the second element e2 are not in contact when the first distance d1 is equal to or greater than the first threshold. For example, when the first distance d1 is less than the first threshold, the determination unit 605 determines that the first element e1 and the second element e2 are in contact with each other.

第2算出部603は、第2の要素e2の法線n2と第1の要素e1を含む平面とに基づいて、第1の要素e1と第2の要素e2との間の第2の距離d2を特定する。   The second calculation unit 603 calculates the second distance d2 between the first element e1 and the second element e2 based on the normal line n2 of the second element e2 and the plane including the first element e1. Is identified.

具体的には、第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 second calculation unit 603, for example, selects any one of a plurality of elements expressing the first component 201 and one of a plurality of elements expressing the second component 202. And the second element e2. Then, the second calculation unit 603 specifies, for example, a first intersection between the normal line n2 of the selected second element e2 and the plane including the selected first element e1. The first intersection point is a point p2 where the line intersects the plane including the first element e1 when a line is drawn from the second intersection point in the direction of the normal line n2 of the second element e2. For example, the second calculation unit 603 identifies the second intersection point of the second element e2 and the normal line n2 of the second element e2. The second intersection point here is, for example, the center of gravity b of the second element e2. The second calculation unit 603 calculates a second distance d2 between the first intersection (point p2) and the second intersection (center of gravity b).

判定部605は、第2の距離d2に応じて、第1の要素e1と第2の要素e2とが接触しているか否かを判定する。判定部605は、例えば、第2の距離d2が第2閾値以上である場合に、第1の要素e1と第2の要素e2とが接触していないと判定する。判定部605は、例えば、第2の距離d2が第2閾値未満である場合に、第1の要素e1と第2の要素e2とが接触していると判定する。   The determination unit 605 determines whether or not the first element e1 and the second element e2 are in contact with each other according to the second distance d2. For example, the determination unit 605 determines that the first element e1 and the second element e2 are not in contact when the second distance d2 is equal to or greater than the second threshold. For example, when the second distance d2 is less than the second threshold, the determination unit 605 determines that the first element e1 and the second element e2 are in contact with each other.

次に、第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 third calculation unit 604 calculates, for example, the intersection angle θ between the normal line n1 of the first element e1 and the normal line n2 of the second element e2. For example, the third calculation unit 604 selects any first element e1 from a plurality of elements representing the first part 201 and any second element from a plurality of elements representing the second part 202. e2 is selected. Then, the third calculation unit 604 calculates, for example, the intersection angle θ between the normal line n1 of the first element e1 and the normal line n2 of the second element e2.

ここで、交角θが大きいほど、第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 determination unit 605 contacts the first element e1 and the second element e2 based on the first distance d1 and / or the second distance d2 and the presence or absence of the intersection angle θ or the intersection angle θ. It is determined whether or not.

ここでは、第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 determination unit 605 determines that the first distance d1 is less than the first threshold, the second distance d2 is less than the second threshold, and the intersection angle θ is less than the third threshold. It is determined that the first element e1 and the second element e2 are in contact. The determination unit 605 includes at least one of the case where the first distance d1 is equal to or greater than the first threshold, the case where the second distance d2 is equal to or greater than the second threshold, and the case where the intersection angle θ is equal to or greater than the third threshold. In such a case, it is determined that the first element e1 and the second element e2 are not in contact with each other.

接触判定装置100は、第1の距離d1と第2の距離d2と交角θとの3つの判定基準を用いることにより、より精度よく接触面を特定することができる。   The contact determination apparatus 100 can specify the contact surface with higher accuracy by using the three determination criteria of the first distance d1, the second distance d2, and the intersection angle θ.

ここで、判定部605は、第1の部品201について、第1の部品201を表現する要素のうち、第2の部品202を表現する要素のいずれかと接触していると判定された要素の要素情報を接触面情報として格納する。判定部605は、第1の部品201について、第1の部品201を表現する要素のうち、第2の部品202を表現する要素のいずれとも接触していると判定されていない要素の要素情報を非接触面情報として格納する。   Here, with respect to the first component 201, the determination unit 605 is an element of an element determined to be in contact with one of the elements expressing the second component 202 among the elements expressing the first component 201. Information is stored as contact surface information. For the first part 201, the determination unit 605 obtains element information of elements that are not determined to be in contact with any of the elements that represent the second part 202 among the elements that represent the first part 201. Store as non-contact surface information.

また、判定部605は、第2の部品202について、第2の部品202を表現する要素のうち、第1の部品201を表現する要素のいずれかと接触していると判定された要素の要素情報を接触面情報として格納する。判定部605は、第2の部品202について、第2の部品202を表現する要素のうち、第1の部品201を表現する要素のいずれかと接触していると判定されていない要素の要素情報を非接触面情報として格納する。   Further, the determination unit 605 includes, for the second component 202, element information of an element determined to be in contact with any one of the elements expressing the first component 201 among the elements expressing the second component 202. Is stored as contact surface information. The determination unit 605 obtains element information of an element that is not determined to be in contact with any of the elements expressing the first part 201 among the elements expressing the second part 202 with respect to the second part 202. Store as non-contact surface information.

出力部607は、第1の要素e1と第2の要素e2とが接触していると判定した場合、第1の部品201を表現する要素と第2の部品202を表現する要素とのうち、第1の要素e1と第2の要素e2とを区別可能に出力する。出力形式としては、例えば、ディスプレイ409への出力、I/F406による外部装置への送信、RAM403、ディスク405などの記憶装置への格納などが挙げられる。   When the output unit 607 determines that the first element e1 and the second element e2 are in contact with each other, the element expressing the first part 201 and the element expressing the second part 202 are: The first element e1 and the second element e2 are output so as to be distinguishable. Examples of the output format include output to the display 409, transmission to an external device through the I / F 406, storage in a storage device such as the RAM 403 and the disk 405, and the like.

図9は、出力例を示す説明図である。出力部607は、例えば、第1の部品201を表す要素のうち、第2の部品202を表現する要素のいずれかと接触していると判定された要素と、この要素以外の要素と、を区別可能に出力する。また、出力部607は、例えば、第2の部品202を表現する要素のうち、第1の部品201を表現する要素のいずれかと接触していると判定された要素と、この要素以外の要素と、を区別可能に出力する。   FIG. 9 is an explanatory diagram illustrating an output example. The output unit 607 distinguishes, for example, an element determined to be in contact with any one of the elements representing the second part 202 among the elements representing the first part 201 and an element other than this element. Output as possible. In addition, the output unit 607 includes, for example, an element that is determined to be in contact with any one of the elements that express the first part 201 among the elements that express the second part 202, and an element other than this element Are output in a distinguishable manner.

具体的には、出力部607は、例えば、CADによって各部品をディスプレイ409などに表示する際に、接触していると判定された要素と、接触していると判定されていない要素とで異なる色を付けて表示する。また、出力部607は、例えば、接触していると判定された要素を強調表示する。図9では、第1の部品201において、接触していると判定された要素にハッチングが付されている。また、図9では、第2の部品202において、接触していると判定された要素と、接触されていないと判定された要素とで異なるハッチングが付されている。   Specifically, the output unit 607 differs between an element determined to be in contact and an element not determined to be in contact, for example, when displaying each component on the display 409 by CAD. Display with color. Further, the output unit 607 highlights, for example, an element determined to be in contact. In FIG. 9, in the first component 201, elements that are determined to be in contact are hatched. In FIG. 9, in the second part 202, different hatching is given to an element determined to be in contact with an element determined to be not in contact.

また、出力部607は、各部品について、接触していると判定された複数の要素の中で、要素間で頂点を共有しあう一連の要素を1つの接触面として特定する。そして、出力部607は、特定した接触面の数を出力してもよい。   Further, the output unit 607 identifies, as a single contact surface, a series of elements that share vertices among the elements determined to be in contact with each other. Then, the output unit 607 may output the specified number of contact surfaces.

一連の要素を探索する方法例は、以下の通りである。出力部607は、例えば、接触していると判定された複数の要素のうちのいずれかの要素を選択する。そして、出力部607は、選択した要素と接触していると判定された複数の要素から、選択した要素と頂点を共有する要素を検出する。そして、出力部607は、選択した要素と検出した要素とを一連の要素とする。また、出力部607は、さらに、接触していると判定された複数の要素のうちの一連の要素以外の要素から、検出した要素と頂点を共有する要素を検出する。そして、出力部607は、新たに検出した要素を一連の要素に含める。このようにして、一連の要素が探索される。   An example method for searching for a series of elements is as follows. For example, the output unit 607 selects any one of the plurality of elements determined to be in contact with each other. Then, the output unit 607 detects an element sharing a vertex with the selected element from the plurality of elements determined to be in contact with the selected element. Then, the output unit 607 sets the selected element and the detected element as a series of elements. The output unit 607 further detects an element sharing a vertex with the detected element from elements other than the series of elements among the plurality of elements determined to be in contact. Then, the output unit 607 includes the newly detected element in a series of elements. In this way, a series of elements are searched.

また、図9において、第1部品情報701では、すべての要素の要素情報が、第1の部品201についての非接触面情報902と、第1の部品201についての接触面情報901と、に区別される。また、第2部品情報702では、すべての要素の要素情報が、第2の部品202についての非接触面情報912と、第2の部品202についての接触面情報911と、に区別される。   In FIG. 9, in the first component information 701, element information of all elements is classified into non-contact surface information 902 for the first component 201 and contact surface information 901 for the first component 201. Is done. Further, in the second part information 702, element information of all elements is classified into non-contact surface information 912 for the second part 202 and contact surface information 911 for the second part 202.

次に、第1の部品201と、第2の部品202との接触面において要素を一致させる処理について説明する。   Next, processing for matching elements on the contact surface between the first component 201 and the second component 202 will be described.

また、生成部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 generation unit 606 generates an element that represents a new part corresponding to the first part 201. The generation unit 606 includes, among the elements representing the first component 201, a vertex different from the vertex included in the third element including the vertex included in the first element e1, and the second element e2. Based on this, an element representing this new part is generated. The elements expressing the new part are elements other than the first element e1 and the third element among the elements expressing the first part 201, the same element as the second element e2, a different vertex and the first element. And an element generated by a vertex included in the second element e2.

新たな部品を表現する要素を生成するとは、実際には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 CAD data 101. More specifically, in the present embodiment, the generation unit 606 creates a new part corresponding to the first part 201 by changing an element representing the first part 201. For this reason, the new part is also referred to as the first part 201. In the following description, the process of deleting or generating an element or a vertex means deleting the element information of the element or the vertex information of the vertex from the CAD data 101. Moreover, although the example which changes the element showing the 1st component 201 is given, it is not specifically limited about which element of the 1st component 201 and the 2nd component 202 is changed, for example, a user May be selected.

次に、図10〜図13を用いて、第1の部品201と第2の部品202との間の接触面の要素を一致させる処理の詳細例を説明する。   Next, a detailed example of processing for matching the elements of the contact surface between the first component 201 and the second component 202 will be described with reference to FIGS.

図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 generation unit 606, based on the contact surface information 901 for the first component 201, among the edges of the elements that are determined to be in contact, the edges that are not shared between the elements that are determined to be in contact A vertex of (also referred to as a first free edge fe1) is specified. Then, the generation unit 606 stores first vertex information 1011 of the identified first free edge fe1. Next, the generation unit 606 deletes the contact surface information 901 for the first component 201.

そして、生成部606は、第2の部品202についての接触面情報911を複製する。生成部606は、第1部品情報701に、複製した接触面情報1001を入れる。これにより、第1の部品201に対応する新たな部品を表現する要素に、接触していると判定された第2の要素e2と同一の要素を含めることができる。   Then, the generation unit 606 duplicates the contact surface information 911 regarding the second component 202. The generation unit 606 puts the copied contact surface information 1001 in the first part information 701. As a result, the element representing the new part corresponding to the first part 201 can include the same element as the second element e2 determined to be in contact.

生成部606は、複製した接触面情報1001に基づいて、接触していると判定された要素のエッジのうち、接触していると判定された要素間で共有していないエッジ(第2フリーエッジfe2とも称する。)の頂点を特定する。そして、生成部606は、特定した第2フリーエッジfe2の頂点の第2頂点情報1012を格納する。   Based on the copied contact surface information 1001, the generation unit 606 generates an edge (second free edge) that is not shared among elements determined to be contacted among edges of elements determined to be contacted. (also referred to as fe2)). Then, the generation unit 606 stores the second vertex information 1012 on the vertexes of the identified second free edge fe2.

図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 contact surface information 1001.

生成部606は、第1の部品201についての非接触面情報902から、第1頂点情報1011が示す頂点を含む要素の要素情報1100を特定する。すなわち、生成部606は、第1フリーエッジfe1と頂点を共有する要素を特定する。そして、生成部606は、要素情報1100が示す要素に含まれる頂点のうち、第1頂点情報1011が示す頂点と異なる頂点の第3頂点情報1101を特定する。   The generation unit 606 identifies element information 1100 of an element including a vertex indicated by the first vertex information 1011 from the non-contact surface information 902 regarding the first component 201. That is, the generation unit 606 specifies an element that shares a vertex with the first free edge fe1. Then, the generation unit 606 identifies third vertex information 1101 of a vertex different from the vertex indicated by the first vertex information 1011 among the vertices included in the element indicated by the element information 1100.

図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 generation unit 606 deletes the element information 1100. As a result, the element having the same vertex as that of the first free edge fe1 is deleted.

図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 generation unit 606 generates a new element for the first component 201 based on the vertices included in the second vertex information 1012 and the vertices included in the third vertex information 1101. Thereby, an element representing a new part corresponding to the first part 201 is generated.

そして、出力部607は、新たに生成した要素によって表現された第1の部品201と第2の部品202とを含む3次元モデル200を出力する。   Then, the output unit 607 outputs the three-dimensional model 200 including the first component 201 and the second component 202 expressed by the newly generated element.

また、上述した実施の形態に限らず、種々変更可能である。実施の形態では、生成部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 generation unit 606 performs the process of matching the element of the contact surface of the first component 201 with the element of the contact surface of the second component 202, but the present invention is not limited to this. For example, the user may be able to select which part of the contact surface of the first part 201 and the second part 202 matches the element of the contact surface of the other part. For example, the user may select which component of the contact surface of which component is matched according to the display result of the contact surface.

(接触判定装置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 contact determination device 100. First, the contact determination apparatus 100 acquires CAD data 101 (step S1401). The contact determination device 100 performs a contact surface determination process (step S1402). Next, the contact determination apparatus 100 performs an element generation process (step S1403).

次に、接触判定装置100は、各接触面情報(1001,911)と各非接触面情報(902,912)とに基づいて、接触面である要素と接触面でない要素とを区別可能に表示し(ステップS1404)、一連の処理を終了する。   Next, the contact determination device 100 displays the elements that are the contact surfaces and the elements that are not the contact surfaces in a distinguishable manner based on the contact surface information (1001, 911) and the non-contact surface information (902, 912). Then (step S1404), a series of processing is terminated.

また、接触判定装置100は、ステップS1402とステップS1403との間で、接触面である要素と接触面でない要素とを区別可能に表示する処理を行ってもよい。   Moreover, the contact determination apparatus 100 may perform the process which displays so that the element which is a contact surface and the element which is not a contact surface can be distinguished between step S1402 and step S1403.

図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 contact determination device 100 determines whether or not there is an unprocessed first element among the elements representing the first component 201 (step S1501). Next, when it is determined that there is an unprocessed first element (step S1501: Yes), the contact determination device 100 selects an unprocessed first element (step S1502).

接触判定装置100は、第2の部品202を表現する要素のうち、選択した第1の要素において未処理の第2の要素があるか否かを判断する(ステップS1503)。未処理の第2の要素があると判断された場合(ステップS1503:Yes)、接触判定装置100は、未処理の第2の要素を選択する(ステップS1504)。次に、接触判定装置100は、選択した第1の要素の法線と、選択した第2の要素の法線と、の交角θを算出する(ステップS1505)。   The contact determination device 100 determines whether there is an unprocessed second element in the selected first element among the elements representing the second component 202 (step S1503). When it is determined that there is an unprocessed second element (step S1503: Yes), the contact determination device 100 selects an unprocessed second element (step S1504). Next, the contact determination apparatus 100 calculates an intersection angle θ between the normal line of the selected first element and the normal line of the selected second element (step S1505).

次に、接触判定装置100は、交角θが第3閾値以上か否かを判断する(ステップS1506)。交角θが第3閾値以上であると判断された場合(ステップS1506:Yes)、接触判定装置100は、ステップS1503に戻る。交角θが第3閾値以上でないと判断された場合(ステップS1506:No)、接触判定装置100は、第1の距離d1を算出する(ステップS1507)。   Next, the contact determination apparatus 100 determines whether or not the intersection angle θ is equal to or greater than a third threshold (step S1506). When it is determined that the intersection angle θ is equal to or greater than the third threshold (step S1506: Yes), the contact determination device 100 returns to step S1503. When it is determined that the intersection angle θ is not greater than or equal to the third threshold (step S1506: No), the contact determination device 100 calculates the first distance d1 (step S1507).

接触判定装置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 contact determination device 100 determines whether or not the first distance d1 is greater than or equal to the first threshold (step S1508). When it is determined that the first distance d1 is greater than or equal to the first threshold (step S1508: Yes), the contact determination device 100 returns to step S1503. When it is determined that the first distance d1 is not equal to or greater than the first threshold (step S1508: No), the contact determination device 100 calculates the second distance d2 (step S1509). The contact determination device 100 determines whether or not the second distance d2 is greater than or equal to the second threshold (step S1510).

第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 contact determination device 100 returns to step S1503. When it is determined that the second distance d2 is not equal to or greater than the second threshold (step S1510: No), the contact determination device 100 sets the element information indicating the first element as the contact surface information 901 for the first component 201. Store (step S1511). Next, the contact determination apparatus 100 stores element information indicating the second element in the contact surface information 911 for the second component 202 (step S1512), and returns to step S1501.

ステップ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 contact determination device 100 displays element information indicating the first element as a non-contact surface for the first component 201. The information is stored in the information 902 (step S1513) and the process returns to step S1501. Next, when it is determined that there is no unprocessed first element (step S1501: No), the contact determination device 100 selects a second element that is not included in the contact surface information 911 for the second component 202. The element information to be shown is stored in the non-contact surface information 912 for the second component 202 (step S1514), and the series of processes is terminated.

なお、第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 contact determination device 100 stores the first vertex information 1011 of the vertex of the first free edge fe1 among the edges of the elements indicated by the element information included in the contact surface information 901 for the first component 201 (step S1601). .

次に、接触判定装置100は、第1の部品201についての接触面情報901を削除する(ステップS1602)。これにより、第1の部品201を表現する要素から、第1の部品202の接触面の要素が削除される。   Next, the contact determination apparatus 100 deletes the contact surface information 901 for the first component 201 (step S1602). Thereby, the element of the contact surface of the first component 202 is deleted from the element representing the first component 201.

そして、接触判定装置100は、第2の部品202についての接触面情報911を複製して、第1の部品201についての接触面情報901として格納する(ステップS1603)。次に、接触判定装置100は、第1の部品201についての接触面情報901に含まれる要素情報が示す要素のエッジのうちの第2フリーエッジfe2上の第2頂点情報1012を格納する(ステップS1604)。   Then, the contact determination device 100 duplicates the contact surface information 911 for the second component 202 and stores it as the contact surface information 901 for the first component 201 (step S1603). Next, the contact determination apparatus 100 stores the second vertex information 1012 on the second free edge fe2 among the edges of the elements indicated by the element information included in the contact surface information 901 for the first component 201 (step) S1604).

次に、接触判定装置100は、第1の部品201についての非接触面情報902から、第1頂点情報1011が示す頂点を含む要素を示す要素情報1100を特定する(ステップS1605)。これにより、非接触面情報902から、第1フリーエッジfe1の頂点を含む三角形が特定される。接触判定装置100は、特定した要素情報1100が示す要素の頂点のうち、第1頂点情報1011が示す頂点以外の頂点を特定して第3頂点情報1101を格納する(ステップS1606)。   Next, the contact determination apparatus 100 identifies element information 1100 indicating an element including a vertex indicated by the first vertex information 1011 from the non-contact surface information 902 for the first component 201 (step S1605). Thereby, the triangle including the vertex of the first free edge fe1 is specified from the non-contact surface information 902. The contact determination apparatus 100 specifies vertices other than the vertices indicated by the first vertex information 1011 among the vertices of the elements indicated by the specified element information 1100, and stores the third vertex information 1101 (step S1606).

次に、接触判定装置100は、第1の部品201についての非接触面情報902から、要素情報1100を削除する(ステップS1607)。次に、接触判定装置100は、第3頂点情報1101と、第2頂点情報1012と、に基づいて、三角形の要素を再構築し(ステップS1608)、一連の処理を終了する。ステップS1608によって要素の要素情報1200が生成される。ステップS1608によって、削除した要素情報1100が示す要素の代わりとなる新たな要素が生成される。   Next, the contact determination device 100 deletes the element information 1100 from the non-contact surface information 902 for the first component 201 (step S1607). Next, the contact determination apparatus 100 reconstructs a triangular element based on the third vertex information 1101 and the second vertex information 1012 (step S1608), and ends a series of processes. In step S1608, element information 1200 of the element is generated. In step S1608, a new element is generated in place of the element indicated by the deleted element information 1100.

以上説明したように、接触判定装置100は、各部品を三角形の要素で表す場合に、第1の部品の1つの要素の法線と、第2の部品の1つの要素を含む平面とに基づく2つの要素間の距離に応じて、2つの要素が接触しているか否かを判定する。これにより、接触判定装置100は、2つの要素が近いにあるか否かによって、2つの要素が各部品の接触面であるか否かを判定することができる。したがって、接触判定装置100は、STLデータのような汎用的なCADデータであっても、各部品の接触面を自動で精度よく特定することができる。このように曲面の情報を有するような有償のCADデータを使用しなくてよいため、解析の低廉化を図ることができる。   As described above, the contact determination device 100 is based on the normal of one element of the first part and the plane including one element of the second part when each part is represented by a triangular element. Whether or not the two elements are in contact is determined according to the distance between the two elements. Thereby, the contact determination apparatus 100 can determine whether or not the two elements are contact surfaces of each component depending on whether or not the two elements are close to each other. Therefore, the contact determination apparatus 100 can automatically and accurately specify the contact surface of each component even if it is general-purpose CAD data such as STL data. Thus, since it is not necessary to use paid CAD data having curved surface information, the analysis can be made inexpensive.

また、接触判定装置100は、第1の要素と第2の要素とが接触していると判定した場合、第1の部品と第2の部品のうち、第1の要素と第2の要素とを区別可能に出力する。これにより、接触判定装置100は、部品の接触面を見易く提示することができる。   Further, when the contact determination device 100 determines that the first element and the second element are in contact with each other, the first element and the second element among the first part and the second part Are output in a distinguishable manner. Thereby, the contact determination apparatus 100 can show the contact surface of components easily.

また、接触判定装置100は、第1の要素と第2の要素との距離として、第1の要素の法線と第2の要素を含む平面との第1の交点と、第1の要素と第1の要素の法線との第2の交点との距離を算出する。   Further, the contact determination device 100 determines the distance between the first element and the second element as a first intersection between the normal of the first element and the plane including the second element, and the first element. The distance from the second intersection with the normal of the first element is calculated.

また、接触判定装置100は、第2の要素の法線と第1の要素を含む平面とに基づいて、第1の要素と第2の要素との間の第2の距離に応じて、第1の要素と第2の要素とが接触しているか否かを判定する。これにより、第2の要素から第1の要素を見た場合に、第1の要素と第2の要素とが接触面となるか否かが判定される。   Further, the contact determination device 100 determines the first distance based on the normal line of the second element and the plane including the first element according to the second distance between the first element and the second element. It is determined whether or not the first element and the second element are in contact with each other. Thereby, when the first element is viewed from the second element, it is determined whether or not the first element and the second element are contact surfaces.

また、例えば、接触面では、要素の面同士が向き合っていることが考えられる。そこで、接触判定装置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 contact determination device 100 makes contact between the first element and the second element according to the intersection angle between the normal line of the first element and the normal line of the second element and the first distance. It is determined whether or not. Thereby, the contact determination device 100 is configured such that when the first element and the second element are close to each other and the first element and the second element face each other, the first element and the second element Can be determined to be a contact surface. Therefore, the contact determination device 100 can specify the contact surface of the component with higher accuracy.

また、接触判定装置100は、第1の部品を表現する要素のうち、第1の要素に含まれる頂点を含む第3の要素に含まれるこの頂点と異なる頂点と、第2の要素と、に基づいて、第1の部品に対応する新たな部品を表現する要素を生成する。これにより、接触判定装置100は、接触面となる部分において、第1の部品の要素と、第2の部品の要素と、を一致させることができる。したがって、接触判定装置100は、解析モデルにおいて四面体の要素が干渉するのを抑制することができる。   Further, the contact determination device 100 includes, among elements representing the first part, a vertex different from the vertex included in the third element including the vertex included in the first element, and a second element. Based on this, an element representing a new part corresponding to the first part is generated. Thereby, the contact determination apparatus 100 can make the element of a 1st component and the element of a 2nd component correspond in the part used as a contact surface. Therefore, the contact determination apparatus 100 can suppress interference of tetrahedral elements in the analysis model.

なお、本実施の形態で説明した接触判定方法は、予め用意された接触判定プログラムをパーソナル・コンピュータやワークステーション等のコンピュータで実行することにより実現することができる。本接触判定プログラムは、磁気ディスク、光ディスク、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 contact determination device 100 is a PLD (Programmable Gate Array) such as a standard cell or a specific application IC (hereinafter simply referred to as “ASIC”) such as a structured ASIC (Application Specific Integrated Circuit) or an FPGA (Field Programmable Gate Array). It can also be realized by Device). Specifically, for example, the function of the contact determination device described above is defined by a HDL (Hardware Description Language) description, and the HDL description is logically synthesized and given to the ASIC or PLD to manufacture the contact determination device 100. be able to.

上述した実施の形態に関し、さらに以下の付記を開示する。   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 SYMBOLS 100 Contact determination apparatus 101 CAD data 200 3D model 201 1st part 202 2nd part 300 Analysis model 301 1st analysis model 302 2nd analysis model 600 Control part 601 Acquisition part 602 1st calculation part 603 2nd Calculation unit 604 Third calculation unit 605 Determination unit 606 Generation unit 607 Output unit 701 First component information 702 Second component information 901, 911, 1001 Contact surface information 902, 912 Non-contact surface information 1011 First vertex information 1012 Second vertex Information 1100, 1200 Element information 1101 Third vertex information

Claims (8)

第1の部品と第2の部品とを含む3次元モデルのデータを取得し、
前記第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の要素と前記第2の要素とが接触していると判定した場合、前記第1の部品を表現する要素と前記第2の部品を表現する要素とのうち、前記第1の要素と前記第2の要素とを区別可能に出力する、
ことを特徴とする請求項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の要素の法線と前記第2の要素とを含む平面との第1の交点と、前記第1の要素と前記第1の要素の法線との第2の交点との距離である、
ことを特徴とする請求項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:
前記第2の要素の法線と前記第1の要素を含む平面とに基づいて、前記第1の要素と前記第2の要素との間の第2の距離を特定し、
前記第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の要素と前記第2の要素とが接触しているか否かの判定は、前記第1の要素の法線と前記第2の要素の法線との交角の有無又は前記交角の大きさと、前記距離とに応じて判定される、
ことを特徴とする請求項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の要素と前記第2の要素とが接触している場合、前記第1の部品を表現する要素のうち、前記第1の要素に含まれる頂点を含む第3の要素に含まれる当該頂点と異なる頂点と、前記第2の要素と、に基づいて、前記第1の部品に対応する新たな部品を表現する要素を生成する、
ことを特徴とする請求項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の部品と第2の部品とを含む3次元モデルのデータを取得し、
前記第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の部品と第2の部品とを含む3次元モデルのデータを取得し、
前記第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.
JP2017050028A 2017-03-15 2017-03-15 Contact determination program, contact determination method, and contact determination device Pending JP2018156145A (en)

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)

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