Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP6651978B2 - Center determination program, center determination method, and center determination device - Google Patents
[go: Go Back, main page]

JP6651978B2 - Center determination program, center determination method, and center determination device - Google Patents

Center determination program, center determination method, and center determination device Download PDF

Info

Publication number
JP6651978B2
JP6651978B2 JP2016097091A JP2016097091A JP6651978B2 JP 6651978 B2 JP6651978 B2 JP 6651978B2 JP 2016097091 A JP2016097091 A JP 2016097091A JP 2016097091 A JP2016097091 A JP 2016097091A JP 6651978 B2 JP6651978 B2 JP 6651978B2
Authority
JP
Japan
Prior art keywords
center
specified
cross
dimensional model
section
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2016097091A
Other languages
Japanese (ja)
Other versions
JP2017204233A (en
Inventor
雄貴 田中
雄貴 田中
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2016097091A priority Critical patent/JP6651978B2/en
Publication of JP2017204233A publication Critical patent/JP2017204233A/en
Application granted granted Critical
Publication of JP6651978B2 publication Critical patent/JP6651978B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、中心判定プログラム、中心判定方法、および中心判定装置に関する。   The present invention relates to a center determination program, a center determination method, and a center determination device.

従来、流体解析等の数値解析を行う技術がある。数値解析を行うためには、CAD(Computer Aided Design)によって作成されたモデルに対して要素分割などが行われ、解析用の3次元モデルが作成される。   2. Description of the Related Art Conventionally, there is a technique for performing numerical analysis such as fluid analysis. In order to perform a numerical analysis, a model created by CAD (Computer Aided Design) is subjected to element division or the like, and a three-dimensional model for analysis is created.

先行技術としては、円柱外の複数の点からそれぞれ2通りの接平面とその法線ベクトルおよび2等分平面を設定し、すべての2等分平面の交線またはそれに最も近い直線である円柱中心軸の位置および向きを算出し、円柱中心軸と接平面との距離として円柱の径を算出する技術がある(例えば、以下特許文献1参照。)。   As prior art, two different tangent planes, their normal vectors, and bisecting planes are set from a plurality of points outside the cylinder, and the intersection of all the bisecting planes or the closest straight line to the center of the cylinder is set. There is a technique of calculating the position and orientation of an axis and calculating the diameter of a cylinder as the distance between the center axis of the cylinder and a tangent plane (for example, refer to Patent Document 1 below).

特開平11−051635号公報JP-A-11-051635

しかしながら、従来、解析モデルは複数の要素で表されるため、解析モデルには中心に関する中心情報がないという問題点がある。例えば、管などを流れる流体を解析する際に管の中心に関する中心情報が用いられる。中心情報がないと、解析者が手作業によって中心情報を作成するなど解析者の手間がかかる。   However, conventionally, since the analysis model is represented by a plurality of elements, there is a problem that the analysis model does not have center information about the center. For example, when analyzing a fluid flowing through a pipe or the like, center information about the center of the pipe is used. If there is no central information, it takes time for the analyst to manually create the central information.

1つの側面では、本発明は、中心情報がない解析モデルの断面の中心を判定できる中心判定プログラム、中心判定方法、および中心判定装置を提供することを目的とする。   In one aspect, an object of the present invention is to provide a center determination program, a center determination method, and a center determination device that can determine the center of a cross section of an analysis model having no center information.

本発明の一側面によれば、入力に応じて、3次元モデルの断面を特定し、特定した前記断面に含まれる複数の線分それぞれにおいて線分上を所定の立体の中心が位置する状態で移動させ、前記所定の立体を移動させた際の、前記所定の立体と前記3次元モデルとの重複領域の体積を算出し、前記複数の線分のうち、算出した前記重複領域の体積が最大である線分を特定し、特定した前記線分における、前記所定の立体を移動させた際の、前記所定の立体と前記3次元モデルとの重複領域の体積の変化に応じて、前記線分に含まれる点から前記断面の中心点を判定し、出力する中心判定プログラム、中心判定方法、および中心判定装置が提案される。   According to one aspect of the present invention, a cross-section of a three-dimensional model is specified in response to an input, and in a state where a center of a predetermined solid is located on each of the plurality of line segments included in the specified cross-section. The volume of the overlapping region between the predetermined solid and the three-dimensional model when the predetermined solid is moved is calculated, and the calculated volume of the overlapping region of the plurality of line segments is the largest. The line segment is specified according to a change in the volume of an overlapping area of the predetermined solid and the three-dimensional model when the predetermined solid is moved in the specified line segment. A center determination program, a center determination method, and a center determination device that determine and output the center point of the cross section from the points included in are provided.

本発明の一態様によれば、中心情報がない解析モデルの断面の中心を判定できる。   According to one embodiment of the present invention, the center of a cross section of an analysis model without center information can be determined.

図1は、中心判定装置の一動作例を示す説明図である。FIG. 1 is an explanatory diagram illustrating an operation example of the center determination device. 図2は、中心判定装置のハードウェア構成例を示す説明図である。FIG. 2 is an explanatory diagram illustrating an example of a hardware configuration of the center determination device. 図3は、中心判定装置の機能的構成例を示すブロック図である。FIG. 3 is a block diagram illustrating a functional configuration example of the center determination device. 図4は、CADデータによる立体モデルと解析モデルデータによる解析モデル例を示す説明図である。FIG. 4 is an explanatory diagram showing an example of a three-dimensional model based on CAD data and an analysis model based on analysis model data. 図5は、解析モデルデータのデータ構成例を示す説明図である。FIG. 5 is an explanatory diagram illustrating a data configuration example of the analysis model data. 図6は、テトラ選択による法線および3次元モデル401の断面の決定例を示す説明図である。FIG. 6 is an explanatory diagram showing an example of determining a normal line and a cross section of the three-dimensional model 401 by tetra selection. 図7は、断面が得られない例を示す説明図である。FIG. 7 is an explanatory diagram showing an example in which a cross section cannot be obtained. 図8は、複数の線分を引いた例(その1)を示す説明図である。FIG. 8 is an explanatory diagram illustrating an example (part 1) of drawing a plurality of line segments. 図9は、球体の直径の算出例を示す説明図である。FIG. 9 is an explanatory diagram illustrating an example of calculating the diameter of a sphere. 図10は、球体の移動例を示す説明図である。FIG. 10 is an explanatory diagram illustrating an example of movement of a sphere. 図11は、体積の算出例を示す説明図である。FIG. 11 is an explanatory diagram illustrating an example of calculating a volume. 図12は、線分における体積の変化例を示す説明図である。FIG. 12 is an explanatory diagram illustrating an example of a change in volume in a line segment. 図13は、断面の中心点を得る例を示す説明図である。FIG. 13 is an explanatory diagram illustrating an example of obtaining a center point of a cross section. 図14は、複数の線分を引いた例(その2)を示す説明図である。FIG. 14 is an explanatory diagram illustrating an example (part 2) of drawing a plurality of line segments. 図15は、管の中心軸を求める例を示す説明図である。FIG. 15 is an explanatory diagram illustrating an example of obtaining the center axis of the pipe. 図16は、中心判定装置による中心判定処理手順例を示すフローチャートである。FIG. 16 is a flowchart illustrating an example of a procedure of a center determination process performed by the center determination apparatus. 図17は、中心判定装置による断面の特定処理手順例を示すフローチャートである。FIG. 17 is a flowchart illustrating an example of a cross-section identification processing procedure performed by the center determination device. 図18は、中心判定装置による体積の算出処理手順例を示すフローチャートである。FIG. 18 is a flowchart illustrating an example of a volume calculation processing procedure performed by the center determination device. 図19は、中心点の特定処理手順例を示すフローチャートである。FIG. 19 is a flowchart illustrating an example of a center point specifying process procedure.

以下に添付図面を参照して、本発明にかかる中心判定プログラム、中心判定方法、および中心判定装置の実施の形態を詳細に説明する。   Hereinafter, with reference to the accompanying drawings, embodiments of a center determination program, a center determination method, and a center determination device according to the present invention will be described in detail.

図1は、中心判定装置の一動作例を示す説明図である。中心判定装置100は、管などの3次元モデル101の断面102の中心を判定するコンピュータである。3次元モデル101は、解析対象の物体や人体を近似させることにより数値解析が可能な状態にしたものであり、シミュレーション空間上に配置されるものである。   FIG. 1 is an explanatory diagram illustrating an operation example of the center determination device. The center determination device 100 is a computer that determines the center of a cross section 102 of a three-dimensional model 101 such as a pipe. The three-dimensional model 101 is in a state where numerical analysis can be performed by approximating an object or a human body to be analyzed, and is arranged in a simulation space.

シミュレーション空間とは、解析対象の物理的な物体や人体の内部とその物体や人体の外部の空間とを含む解析領域をコンピュータ上に表すために設定された空間である。解析対象モデルは、シミュレーション空間上に模擬された物体や人体を細かな小領域である要素に分割し、要素の集まりとして全体の解析対象の物体や人体の形状を表す。要素の形状としては、例えば、四面体、五面体、六面体などが挙げられる。本実施の形態では、要素の形状として四面体を例に挙げ、要素をテトラとも称する。シミュレーション空間には、例えば、x軸とy軸とz軸とを有する3次元の直交座標系が定義される。   The simulation space is a space set to represent on a computer an analysis region including a physical object or a human body to be analyzed and a space outside the object or the human body. The analysis target model divides an object or a human body simulated in a simulation space into small small elements, and represents the shape of the entire analysis target object or human body as a set of elements. Examples of the shape of the element include a tetrahedron, a pentahedron, and a hexahedron. In the present embodiment, a tetrahedron is taken as an example of the shape of the element, and the element is also referred to as tetra. In the simulation space, for example, a three-dimensional orthogonal coordinate system having an x-axis, a y-axis, and a z-axis is defined.

従来、解析モデルは複数の要素で表されるため、解析モデルには中心に関する中心情報がないという問題点がある。例えば、管などを流れる流体の解析を行うために、管の中心に関する中心情報が用いられる。しかし、3次元の形状を表すCADデータにおいて中心に関する情報があれば流用可能な場合もあるが、CADデータにも中心に関する中心情報がない場合がある。流体の解析を行う前に解析者などの利用者が手動で管の中心を判定して中心情報を作成しなければならないため、利用者の手間がかかる。   Conventionally, since an analysis model is represented by a plurality of elements, there is a problem that the analysis model has no center information about the center. For example, in order to analyze a fluid flowing through a pipe or the like, center information about the center of the pipe is used. However, if there is information on the center in the CAD data representing the three-dimensional shape, the CAD data may be diverted, but the CAD data may not have the center information on the center. Before analyzing the fluid, a user such as an analyst must manually determine the center of the pipe and create the center information, which is troublesome for the user.

そこで、本実施の形態では、中心判定装置100は、解析モデルの断面102上の各線分について線分上の各位置に立体の中心を配置した場合の該立体と該モデルとの重複領域の体積に基づいて、当該各位置から断面102の中心点を特定する。これにより、中心情報がない解析モデルの断面102の中心を判定できる。そして、中心情報を簡単に得られるため、利用者の手間を省くことができる。図1の例では、3次元モデル101は管を表すモデルである。ここでは、3次元モデル101は円柱であるが、管は円柱であるとも限らないため、利用者が中心を判定することは困難である。   Therefore, in the present embodiment, the center determination device 100 determines the volume of the overlapping region between the solid and the model when the center of the solid is placed at each position on the line for each line on the cross section 102 of the analysis model. , The center point of the cross section 102 is specified from the respective positions. Thereby, the center of the cross section 102 of the analysis model having no center information can be determined. Then, since the central information can be easily obtained, the trouble of the user can be saved. In the example of FIG. 1, the three-dimensional model 101 is a model representing a pipe. Here, the three-dimensional model 101 is a cylinder, but the tube is not necessarily a cylinder, so it is difficult for the user to determine the center.

まず、中心判定装置100は、入力に応じて、3次元モデル101の断面102を特定する。中心判定装置100は、例えば、利用者の操作によっていずれの範囲を解析対象とするかの指定を受け付けてもよい。また、中心判定装置100は、例えば、利用者の操作によって指定された高さにある3次元モデル101の断面102を特定する。   First, the center determination device 100 specifies the cross section 102 of the three-dimensional model 101 according to the input. The center determination device 100 may receive, for example, a specification of which range is to be analyzed by a user operation. In addition, the center determination device 100 specifies, for example, a cross section 102 of the three-dimensional model 101 at a height designated by a user operation.

つぎに、中心判定装置100は、特定した断面102に含まれる複数の線分のそれぞれにおいて線分上を所定の立体の中心が位置する状態で所定の立体を移動させる。図1の例では所定の立体は球体bである。図1の例では、断面102に含まれる複数の線分は線分e1〜e5である。   Next, the center determination device 100 moves the predetermined solid in a state where the center of the predetermined solid is located on each of the plurality of line segments included in the specified cross section 102. In the example of FIG. 1, the predetermined solid is a sphere b. In the example of FIG. 1, the plurality of line segments included in the cross section 102 are line segments e1 to e5.

つぎに、中心判定装置100は、球体bを移動させた際の、球体bと3次元モデル101との重複領域の体積を算出する。中心判定装置100は、球体bを移動させる移動間隔は利用者の操作に応じた入力によって決定してもよい。図1の例では、中心判定装置100は、線分e2の点p21〜p25のそれぞれに球体bを配置した際の、球体bと3次元モデル101との重複領域の体積を算出する。また、図1の例では、中心判定装置100は、線分e3の点p31〜p36のそれぞれに球体bを配置した際の、球体bと3次元モデル101との重複領域の体積を算出する。   Next, the center determination device 100 calculates the volume of the overlapping area of the sphere b and the three-dimensional model 101 when the sphere b is moved. The center determination device 100 may determine the movement interval for moving the sphere b by an input according to a user operation. In the example of FIG. 1, the center determination device 100 calculates the volume of the overlapping area of the sphere b and the three-dimensional model 101 when the sphere b is arranged at each of the points p21 to p25 of the line segment e2. Further, in the example of FIG. 1, the center determination device 100 calculates the volume of the overlapping area of the sphere b and the three-dimensional model 101 when the sphere b is arranged at each of the points p31 to p36 of the line segment e3.

中心判定装置100は、複数の線分のうち、算出した重複領域の体積が最大である線分を特定する。図1の例では、算出した重複領域の体積が最大である線分は線分e3である。   The center determination device 100 specifies a line segment having the largest volume of the calculated overlapping region among the plurality of line segments. In the example of FIG. 1, the line segment having the largest volume of the calculated overlapping area is the line segment e3.

そして、中心判定装置100は、特定した線分における、球体bを移動させた際の、球体bと3次元モデル101との重複領域の体積の変化に応じて、線分に含まれる点から断面102の中心点を判定する。中心判定装置100は、特定した線分e3の各点のうち、算出した体積が最も大きい点p34を中心点とする。つぎに、中心判定装置100は、中心点を出力する。中心判定装置100は、例えば、ディスプレイなどに3次元モデル101と断面102と中心点とを表示する。これにより、中心情報がない解析モデルの断面102の中心を判定できる。   Then, the center determination device 100 calculates a cross-section from a point included in the line segment according to a change in the volume of the overlapping area between the sphere b and the three-dimensional model 101 when the sphere b is moved in the specified line segment. The center point of 102 is determined. The center determination device 100 sets the point p34 having the largest calculated volume among the points of the specified line segment e3 as the center point. Next, the center determination device 100 outputs the center point. The center determination device 100 displays, for example, a three-dimensional model 101, a cross section 102, and a center point on a display or the like. Thereby, the center of the cross section 102 of the analysis model having no center information can be determined.

(中心判定装置100のハードウェア構成例)
図2は、中心判定装置のハードウェア構成例を示す説明図である。中心判定装置100は、CPU(Central Processing Unit)201と、ROM(Read Only Memory)202と、RAM(Random Access Memory)203と、ディスクドライブ204と、ディスク205と、を有する。中心判定装置100は、I/F(Inter/Face)206と、キーボード207と、マウス208と、ディスプレイ209と、を有する。また、CPU201と、ROM202と、RAM203と、ディスクドライブ204と、I/F206と、キーボード207と、マウス208と、ディスプレイ209とは、バス200によってそれぞれ接続される。
(Example of hardware configuration of center determination device 100)
FIG. 2 is an explanatory diagram illustrating an example of a hardware configuration of the center determination device. The center determination device 100 includes a CPU (Central Processing Unit) 201, a ROM (Read Only Memory) 202, a RAM (Random Access Memory) 203, a disk drive 204, and a disk 205. The center determination device 100 includes an I / F (Inter / Face) 206, a keyboard 207, a mouse 208, and a display 209. The CPU 201, the ROM 202, the RAM 203, the disk drive 204, the I / F 206, the keyboard 207, the mouse 208, and the display 209 are connected by the bus 200, respectively.

ここで、CPU201は、中心判定装置100の全体の制御を司る。ROM202は、ブートプログラムなどのプログラムを記憶する。RAM203は、CPU201のワークエリアとして使用される。ディスクドライブ204は、CPU201の制御にしたがってディスク205に対するデータのリード/ライトを制御する。ディスク205は、ディスクドライブ204の制御で書き込まれたデータを記憶する。ディスク205としては、磁気ディスク、光ディスクなどが挙げられる。   Here, the CPU 201 governs overall control of the center determination device 100. The ROM 202 stores a program such as a boot program. The RAM 203 is used as a work area of the CPU 201. The disk drive 204 controls reading / writing of data from / to the disk 205 under the control of the CPU 201. The disk 205 stores data written under the control of the disk drive 204. Examples of the disk 205 include a magnetic disk and an optical disk.

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

キーボード207やマウス208は、利用者の操作により、各種データの入力を受け付けるインターフェースである。ディスプレイ209は、CPU201の指示により、データを出力するインターフェースである。   The keyboard 207 and the mouse 208 are interfaces that receive input of various data by a user's operation. The display 209 is an interface that outputs data according to an instruction from the CPU 201.

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

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

(中心判定装置100の機能的構成例)
図3は、中心判定装置の機能的構成例を示すブロック図である。中心判定装置100は、受付部301と、断面作成部302と、線分作成部303と、直径決定部304と、移動部305と、算出部306と、第1特定部307と、第2特定部308と、判定部309と、第3特定部310と、出力部311と、を有する。受付部301から出力部311までの制御部の処理は、例えば、図2に示すCPU201がアクセス可能なROM202、RAM203、ディスク205などの記憶装置に記憶されたプログラムにコーディングされている。そして、CPU201が記憶装置から該プログラムを読み出して、プログラムにコーディングされている処理を実行する。これにより、制御部の処理が実現される。また、制御部の処理結果は、例えば、RAM203、ROM202、ディスク205などの記憶装置に記憶される。
(Example of Functional Configuration of Center Determination Apparatus 100)
FIG. 3 is a block diagram illustrating a functional configuration example of the center determination device. The center determination device 100 includes a receiving unit 301, a cross section creating unit 302, a line segment creating unit 303, a diameter determining unit 304, a moving unit 305, a calculating unit 306, a first identifying unit 307, and a second identifying unit. It has a unit 308, a determination unit 309, a third specifying unit 310, and an output unit 311. The processing of the control unit from the reception unit 301 to the output unit 311 is coded in a program stored in a storage device such as the ROM 202, the RAM 203, and the disk 205 that can be accessed by the CPU 201 illustrated in FIG. Then, the CPU 201 reads out the program from the storage device and executes a process coded in the program. Thereby, the processing of the control unit is realized. The processing result of the control unit is stored in a storage device such as the RAM 203, the ROM 202, and the disk 205, for example.

各部において、線分、平面、断面、点、球体、中心軸などを作成する処理は、実際の空間に作成するのではなく、シミュレーション空間に作成する。シミュレーション空間に作成するとは、解析モデルデータやCADデータにおいて線分、平面、断面、点、球体、中心軸を表す情報を生成することに相当する。   In each part, the process of creating a line segment, a plane, a cross section, a point, a sphere, a central axis, and the like is not created in an actual space but in a simulation space. Creating in the simulation space corresponds to generating information representing a line segment, a plane, a cross section, a point, a sphere, and a central axis in analysis model data and CAD data.

図4は、CADデータによる立体モデルと解析モデルデータによる解析モデル例を示す説明図である。立体モデル400は、物体や人体をポリゴンで表した3次元形状のモデルである。立体モデル400は、CADデータによって表される。CADデータは、CADを用いて作成される。   FIG. 4 is an explanatory diagram showing an example of a three-dimensional model based on CAD data and an analysis model based on analysis model data. The three-dimensional model 400 is a three-dimensional model in which an object or a human body is represented by a polygon. The three-dimensional model 400 is represented by CAD data. CAD data is created using CAD.

3次元モデル401は、物体や人体の形状を複数のメッシュに分割することによって表した3次元形状のモデルである。3次元モデル401は、解析モデルデータによって表される。解析モデルデータは、CAE(Computer Aided Engineering)を用いて立体モデル400に対してメッシュ分割を行うことにより作成される。本実施の形態では、解析対象の物体が管であるため、3次元モデル401を管とも称する。   The three-dimensional model 401 is a three-dimensional model represented by dividing the shape of an object or a human body into a plurality of meshes. The three-dimensional model 401 is represented by analysis model data. The analysis model data is created by performing mesh division on the three-dimensional model 400 using CAE (Computer Aided Engineering). In the present embodiment, since the object to be analyzed is a tube, the three-dimensional model 401 is also called a tube.

図5は、解析モデルデータのデータ構成例を示す説明図である。解析モデルデータ500は、テトラID(Identification)、節点ID、各座標などを表す情報を有する。図5には、1つのテトラを示す。テトラのIDが「10000」である。   FIG. 5 is an explanatory diagram illustrating a data configuration example of the analysis model data. The analysis model data 500 has information indicating a tetra ID (Identification), a node ID, each coordinate, and the like. FIG. 5 shows one tetra. The ID of the tetra is "10000".

解析モデルデータ500は、テトラデータ501と、節点データ510と、を有する。図5(1)に示すように、テトラデータ501は、テトラID、4つの節点IDのフィールドを有する。テトラデータ501には、各フィールドに情報が設定されることによりレコード(502−1など)として記憶される。テトラIDのフィールドには、テトラの識別情報であるテトラIDが設定される。   The analysis model data 500 has tetra data 501 and node data 510. As shown in FIG. 5A, the tetra data 501 has a tetra ID field and four node ID fields. The tetra data 501 is stored as a record (such as 502-1) by setting information in each field. In the tetra ID field, a tetra ID, which is identification information of the tetra, is set.

テトラID「10000」を例に挙げると、節点IDが「40000」〜「40003」である。   Taking the tetra ID "10000" as an example, the node IDs are "40000" to "40003".

図5(2)に示すように、節点データ510は、節点の位置情報を表す。節点データ510は、節点ID、x座標、y座標、z座標のフィールドを有する。各フィールドに情報が設定されることによりレコード(511−1など)として記憶される。節点IDのフィールドには、節点の識別情報である節点IDが設定される。x座標のフィールドには、節点のx座標値が設定される。y座標のフィールドには、節点のy座標値が設定される。z座標のフィールドには、節点のz座標値が設定される。   As shown in FIG. 5 (2), the node data 510 represents the position information of the node. The node data 510 has fields of node ID, x coordinate, y coordinate, and z coordinate. The information is set in each field and stored as a record (511-1 or the like). In the field of the node ID, a node ID which is identification information of the node is set. The x-coordinate value of the node is set in the x-coordinate field. The y-coordinate value of the node is set in the y-coordinate field. In the z coordinate field, the z coordinate value of the node is set.

図3に示す受付部301は、利用者の操作によって3次元モデル401の入口と出口の指定を受け付ける。受付部301は、ディスプレイ209などに表示された3次元モデル401において3次元モデル401の入口と出口の指定を、マウス208やキーボード207などの操作入力によって受け付ける。   The reception unit 301 illustrated in FIG. 3 receives designation of an entrance and an exit of the three-dimensional model 401 by a user operation. The accepting unit 301 accepts the designation of the entrance and the exit of the three-dimensional model 401 in the three-dimensional model 401 displayed on the display 209 or the like by an operation input using the mouse 208 or the keyboard 207.

図6は、テトラ選択による法線および3次元モデル401の断面の決定例を示す説明図である。断面作成部302は、3次元モデル401表面に含まれるテトラからいずれかのテトラを選択する。図6の例では、断面作成部302はテトラtaを選択する。   FIG. 6 is an explanatory diagram showing an example of determining a normal line and a cross section of the three-dimensional model 401 by tetra selection. The cross section creation unit 302 selects any tetra from tetra included in the surface of the three-dimensional model 401. In the example of FIG. 6, the cross section creation unit 302 selects tetra ta.

断面作成部302は、選択したテトラtaの底面から、管の内部方向に法線を生成する。つぎに、断面作成部302は、選択したテトラtaの底面のうちのいずれかの辺を選択する。そして、断面作成部302は、選択された一辺と、法線と、に基づいて、平面600を作成する。つづいて、断面作成部302は、作成した平面600と3次元モデル401との重複部分を断面601として作成する。   The cross section creation unit 302 generates a normal line from the bottom surface of the selected tetra ta in the direction toward the inside of the tube. Next, the cross section creation unit 302 selects any side of the bottom surface of the selected tetra ta. Then, the cross section creation unit 302 creates the plane 600 based on the selected one side and the normal line. Subsequently, the cross section creation unit 302 creates an overlapping portion of the created plane 600 and the three-dimensional model 401 as a section 601.

図7は、断面が得られない例を示す説明図である。図7に示すように、作成された平面700が3次元モデル401の入口701または出口702である端面と交わる場合、3次元モデル401の断面が得られない。   FIG. 7 is an explanatory diagram showing an example in which a cross section cannot be obtained. As shown in FIG. 7, when the created plane 700 intersects with the end face that is the entrance 701 or the exit 702 of the three-dimensional model 401, a cross section of the three-dimensional model 401 cannot be obtained.

そこで、断面作成部302は、平面を作成後に、作成した平面が3次元モデル401の入口701または出口702である端面と交わるか否かを判断する。そして、断面作成部302は、作成した平面が端面と交わらない場合、図6を用いて説明したように断面を作成する。   Therefore, after creating the plane, the cross-section creating unit 302 determines whether or not the created plane intersects the end face of the three-dimensional model 401 that is the entrance 701 or the exit 702. Then, when the created plane does not intersect with the end face, the section creating unit 302 creates a section as described with reference to FIG.

断面作成部302は、作成した平面が端面と交わると判断した場合、選択したテトラtaの底面のうちの未選択の辺を新たに選択する。つぎに、断面作成部302は、図6で説明したように、選択した辺と法線とに基づいて平面を作成する。そして、断面作成部302は、作成した平面と3次元モデル401との重複部分を断面として作成する。   When determining that the created plane intersects the end face, the cross section creation unit 302 newly selects an unselected side of the bottom surface of the selected tetra ta. Next, as described with reference to FIG. 6, the cross section creation unit 302 creates a plane based on the selected side and the normal line. Then, the cross section creation unit 302 creates an overlapping portion between the created plane and the three-dimensional model 401 as a cross section.

つぎに、線分作成部303は、作成された断面上において、法線の始点または断面上のいずれかの点を基準として、断面上に複数の線分を作成する。ここでは、法線の始点を基準とする例を挙げる。基準とするとは、例えば、法線の始点を各線分の始点とすることを示す。複数の線分を作成する際に法線の始点を使用することにより新たに線分の始点を求めるための時間が不要となるため、処理時間の短縮化を図ることができる。   Next, the line segment creation unit 303 creates a plurality of line segments on the cross section based on either the starting point of the normal line or any point on the cross section on the created cross section. Here, an example is described in which the starting point of the normal is used as a reference. The reference indicates, for example, that the starting point of the normal line is the starting point of each line segment. By using the start point of the normal line when creating a plurality of line segments, the time for newly finding the start point of the line segment becomes unnecessary, so that the processing time can be shortened.

線分作成部303は、始点からランダムに複数の線分を作成する。または、線分作成部303は、法線の始点を基準として、法線とある角度を成す線分を断面上に複数作成する。線分作成部303は、例えば、法線と25度を成す線分を作成する。そして、線分作成部303は、法線と50度を成す線分を作成する。さらに、線分作成部303は、法線と75度を成す線分を作成する。このように、線分作成部303は、角度を順に大きくして複数の線分を作成してもよい。   The line segment creation unit 303 creates a plurality of line segments at random from the start point. Alternatively, the line segment creating unit 303 creates a plurality of line segments that form an angle with the normal on the cross section with reference to the start point of the normal. The line segment creating unit 303 creates, for example, a line segment that forms 25 degrees with the normal line. Then, the line segment creating unit 303 creates a line segment that forms 50 degrees with the normal line. Further, the line segment creating unit 303 creates a line segment that forms 75 degrees with the normal. As described above, the line segment creation unit 303 may create a plurality of line segments by sequentially increasing the angle.

図8は、複数の線分を引いた例(その1)を示す説明図である。図8に示すように、法線は3次元モデル401である管の表面に対して垂直になるとは限らないため、法線とある角度を成す線分を作成することにより管の中心軸に近くなる線分を作成することができる。   FIG. 8 is an explanatory diagram illustrating an example (part 1) of drawing a plurality of line segments. As shown in FIG. 8, the normal is not always perpendicular to the surface of the tube, which is the three-dimensional model 401. Therefore, by creating a line segment that forms an angle with the normal, the normal is closer to the center axis of the tube. Can be created.

図8の例では、線分作成部303が、作成された断面上において、法線の始点を始点として断面上に複数の線分e1〜e5を作成する。線分e2は法線である。   In the example of FIG. 8, the line segment creating unit 303 creates a plurality of line segments e1 to e5 on the created cross section, starting from the starting point of the normal. Line segment e2 is a normal line.

つぎに、移動部305は、特定した断面に含まれる複数の線分のそれぞれにおいて線分上を所定の立体の中心が位置する状態で所定の立体を移動させる。そして、算出部306は、所定の立体を移動させた際の、所定の立体と3次元モデル401との重複領域の体積を算出する。所定の立体が球体や多面体などであると、所定の立体の中心から所定の表面の距離が均等であるほど、最終的に得られる中心点が正確である可能性が高くなる。例えば、正多面体であると、面数が多いほど、最終的な中心点の精度の向上を図ることができる。また、所定の立体が球体であると、移動部305は、中心と半径の情報によって簡単にシミュレーション空間に球体を生成することができる。このため、計算時間の短縮化を図ることができる。   Next, the moving unit 305 moves the predetermined solid in a state where the center of the predetermined solid is located on each of the plurality of line segments included in the specified cross section. Then, the calculation unit 306 calculates the volume of the overlapping area of the predetermined solid and the three-dimensional model 401 when the predetermined solid is moved. When the predetermined solid is a sphere, a polyhedron, or the like, the more uniform the distance between the center of the predetermined solid and the predetermined surface, the higher the possibility that the finally obtained center point is accurate. For example, in the case of a regular polyhedron, as the number of faces increases, the accuracy of the final center point can be improved. When the predetermined solid is a sphere, the moving unit 305 can easily generate a sphere in the simulation space based on information on the center and the radius. For this reason, the calculation time can be reduced.

本実施の形態では、所定の立体を球体として説明する。図8には、各線分について、球体が配置された例を示す。ここで、移動部305によって移動させる球体の直径について説明する。例えば、球体は少なくともテトラ単体よりも大きくなければならない。このため、直径決定部304は、球体の直径を選択されたテトラの10倍程度のように設定してもよい。   In the present embodiment, a predetermined solid is described as a sphere. FIG. 8 shows an example in which spheres are arranged for each line segment. Here, the diameter of the sphere moved by the moving unit 305 will be described. For example, the sphere must be at least larger than tetra alone. For this reason, the diameter determining unit 304 may set the diameter of the sphere to about 10 times the selected tetra.

また、直径決定部304は、球体の直径を、複数の線分のそれぞれの長さのうちの最大の長さに基づく値に決定する。最大の長さに基づく値とは、最大の長さそのものであったり、最大の長さにマージンを加算または減算した値である。図9に球体の直径の算出例を示す。   In addition, the diameter determining unit 304 determines the diameter of the sphere to be a value based on the maximum length of each of the plurality of line segments. The value based on the maximum length is the maximum length itself or a value obtained by adding or subtracting a margin from the maximum length. FIG. 9 shows an example of calculating the diameter of a sphere.

図9は、球体の直径の算出例を示す説明図である。直径決定部304は、複数の線分の各々について線分の長さを算出する。線分の長さを算出する処理は3次元のベクトルの長さを求める処理と同じである。例えば、直径決定部304は、複数の線分の各々について、線分の始点と、線分と3次元モデル401の表面との交点と、の距離を算出する。図9には、線分e3の長さD3の算出式を示す。   FIG. 9 is an explanatory diagram illustrating an example of calculating the diameter of a sphere. The diameter determining unit 304 calculates the length of each of the plurality of line segments. The process of calculating the length of a line segment is the same as the process of calculating the length of a three-dimensional vector. For example, for each of the plurality of line segments, the diameter determining unit 304 calculates the distance between the start point of the line segment and the intersection between the line segment and the surface of the three-dimensional model 401. FIG. 9 shows a formula for calculating the length D3 of the line segment e3.

そして、直径決定部304は、算出した長さD1からD5のうち最大の長さD3を球体900の直径に決定する。例えば、球体900の直径が小さすぎると、球体900を線分の各位置に移動させた際に球体900と3次元モデル401との重複領域の体積が最大となる位置の数が多くなってしまう。また、球体900の直径が断面よりも大きすぎると、球体900を線分の各位置に移動させた際に球体900と3次元モデル401との重複領域の体積が最大となる位置の数が多くなってしまう。そこで、各線分の長さのうちの最大の長さを球体900の直径とすることにより、球体900が断面の線分の方向について全体を含むことが可能となり、球体900と管との重複領域の体積が最大となる位置の数を少なくすることができる。したがって、中心点を求める精度の向上を図ることができる。   Then, the diameter determining unit 304 determines the maximum length D3 of the calculated lengths D1 to D5 as the diameter of the sphere 900. For example, if the diameter of the sphere 900 is too small, the number of positions where the volume of the overlapping area between the sphere 900 and the three-dimensional model 401 becomes maximum when the sphere 900 is moved to each position of the line segment increases. . Further, if the diameter of the sphere 900 is larger than the cross section, the number of positions where the volume of the overlapping area of the sphere 900 and the three-dimensional model 401 becomes maximum when the sphere 900 is moved to each position of the line segment is large. turn into. Therefore, by setting the maximum length of the length of each line segment as the diameter of the sphere 900, the sphere 900 can include the whole in the direction of the line segment of the cross section, and the overlapping area of the sphere 900 and the tube Can be reduced in the number of positions where the volume becomes maximum. Therefore, the accuracy of obtaining the center point can be improved.

つぎに、移動部305は、複数の線分の各々について、線分上を球体900の中心が位置する状態で移動させる。移動間隔は、例えば、3次元モデル401の表面に含まれ選択されたテトラに含まれる辺の長さ程度であってもよい。   Next, the moving unit 305 moves each of the plurality of line segments with the center of the sphere 900 positioned on the line segment. The movement interval may be, for example, about the length of a side included in the selected tetra included in the surface of the three-dimensional model 401.

図10は、球体の移動例を示す説明図である。線分e3を例に挙げると、移動部305は、線分e3の始点s1から終点snに球体900の中心が順に位置するように移動させる。算出部306は、球体900を移動させた際の、球体900と3次元モデル401との重複領域の体積を算出する。   FIG. 10 is an explanatory diagram illustrating an example of movement of a sphere. Taking the line segment e3 as an example, the moving unit 305 moves the sphere 900 so that the center of the sphere 900 is located in order from the start point s1 to the end point sn of the line segment e3. The calculation unit 306 calculates the volume of the overlapping area between the sphere 900 and the three-dimensional model 401 when the sphere 900 is moved.

図11は、体積の算出例を示す説明図である。算出部306は、体積を算出するために、球体900と3次元モデル401との重複領域を特定する。例えば、算出部306は、3次元モデル401に含まれるテトラのうち球体900に包含されるテトラを重複領域として特定する。図11の例では、算出部306が、「テトラt1、t2、t3、t4,t5・・・」などのように球体900に内包されるテトラを特定する。そして、算出部306は、特定されたテトラの体積の合計値を重複領域の体積として算出する。図11の例では、算出部306は、「テトラt1、t2、t3、t4,t5・・・」の体積の和を重複領域の体積として算出する。   FIG. 11 is an explanatory diagram illustrating an example of calculating a volume. The calculation unit 306 specifies an overlapping area between the sphere 900 and the three-dimensional model 401 in order to calculate the volume. For example, the calculation unit 306 specifies the tetra included in the sphere 900 among the tetra included in the three-dimensional model 401 as the overlapping area. In the example of FIG. 11, the calculation unit 306 specifies a tetra included in the sphere 900, such as “tetra t1, t2, t3, t4, t5. Then, the calculation unit 306 calculates the total value of the identified tetra volumes as the volume of the overlapping region. In the example of FIG. 11, the calculation unit 306 calculates the sum of the volumes of “tetra t1, t2, t3, t4, t5...” As the volume of the overlap region.

つぎに、図3に示す第1特定部307は、複数の線分のうち、算出した重複領域の体積が最大である線分を特定する。第1特定部307は、最も大きい体積が同一の線分が複数ある場合、最も大きい体積が算出された線分のうち、最も大きい体積が算出された移動点の数が最も多い線分を特定する。各線分について複数の移動点における体積が算出されるため、第1特定部307は、より多くの移動点において最大の体積となる線分を特定することにより、中心点を得るための精度の向上を図ることができる。   Next, the first specifying unit 307 illustrated in FIG. 3 specifies, from among the plurality of line segments, the line segment having the largest volume of the calculated overlapping region. When there are a plurality of line segments having the same largest volume, the first specifying unit 307 specifies a line segment having the largest number of moving points for which the largest volume has been calculated among the line segments for which the largest volume has been calculated. I do. Since the volumes at a plurality of moving points are calculated for each line segment, the first specifying unit 307 improves the accuracy for obtaining the center point by specifying the line segment having the largest volume at more moving points. Can be achieved.

図12は、線分における体積の変化例を示す説明図である。図12には、2つの線分についての各移動点における体積のグラフを示す。グラフ1200とグラフ1201とは、線分の始点から終点までの間の各移動に球体900の中心を移動させた場合における球体900に内包されるテトラの体積の和を示す。グラフ1200によって表される線分の各移動点における体積と、グラフ1201によって表される線分の各移動点における体積と、において、最大体積は同じである。このような場合、第1特定部307は、体積にピークがなく最大体積である移動点が多く存在するような線分を選択する。   FIG. 12 is an explanatory diagram illustrating an example of a change in volume in a line segment. FIG. 12 shows a graph of the volume at each moving point for two line segments. The graph 1200 and the graph 1201 show the sum of the volumes of tetra contained in the sphere 900 when the center of the sphere 900 is moved in each movement from the start point to the end point of the line segment. The maximum volume is the same between the volume at each moving point of the line segment represented by the graph 1200 and the volume at each moving point of the line segment represented by the graph 1201. In such a case, the first specifying unit 307 selects a line segment in which the volume has no peak and there are many moving points having the maximum volume.

第2特定部308は、第1特定部307によって特定された線分についての体積の変化に基づいて球体900の中心点を特定する。   The second specifying unit 308 specifies the center point of the sphere 900 based on a change in volume of the line segment specified by the first specifying unit 307.

グラフ1200のように体積のピークがある場合には、第2特定部308は、体積のピークである球体900の中心点を特定する。グラフ1201のように体積のピークがない場合には、第2特定部308は、体積が最大値となる各球体900の中心点のうちの中央に位置する中心点を特定する。   When there is a volume peak as in the graph 1200, the second specifying unit 308 specifies the center point of the sphere 900 that is the volume peak. When there is no volume peak as in the graph 1201, the second specifying unit 308 specifies the center point located at the center among the center points of the spheres 900 having the maximum volume.

判定部309は、第2特定部308によって特定された球体900の中心点に基づいて、断面の中心点を決定する。   The determination unit 309 determines the center point of the cross section based on the center point of the sphere 900 specified by the second specifying unit 308.

図13は、断面の中心点を得る例を示す説明図である。判定部309は、例えば、第2特定部308によって特定された球体900の中心点の最近傍のテトラの節点を断面の中心点に決定する。図13の例では、特定された球体900の中心点と最近傍のテトラの節点とが一致している。   FIG. 13 is an explanatory diagram illustrating an example of obtaining a center point of a cross section. The determination unit 309 determines, for example, the tetra node closest to the center point of the sphere 900 specified by the second specifying unit 308 as the center point of the cross section. In the example of FIG. 13, the center point of the specified sphere 900 coincides with the nearest tetra node.

そして、出力部311は、断面の中心点を出力する。出力部311は、例えば、ディスプレイ209などに3次元モデル401に合わせて断面の中心点を表示する。また、出力部311は、例えば、中心軸を表す情報をRAM203やディスク205などの記憶装置に格納する。   Then, the output unit 311 outputs the center point of the cross section. The output unit 311 displays the center point of the cross section on the display 209 or the like in accordance with the three-dimensional model 401, for example. The output unit 311 stores, for example, information indicating the central axis in a storage device such as the RAM 203 or the disk 205.

以上の例では、図3に示す線分作成部303は、複数の線分を作成する際に、線分の始点を法線の始点としたが、これに限らず、断面上に位置するいずれかの点であってもよい。また、線分作成部303は、複数の線分を作成する際に、線分の始点を1個所としたが、複数の始点から複数の線分を作成してもよい。   In the above example, when creating a plurality of line segments, the line segment creation unit 303 shown in FIG. 3 sets the start point of the line segment as the start point of the normal line. That may be the point. In addition, when creating a plurality of line segments, the line segment creation unit 303 sets one start point of the line segment, but it may create a plurality of line segments from a plurality of start points.

図14は、複数の線分を引いた例(その2)を示す説明図である。線分作成部303は、3次元モデル401の表面に含まれ、かつ特定した断面上の点と、3次元モデル401の表面に含まれ、かつ特定した断面上の複数の点それぞれとを結ぶ複数の線分を特定する。   FIG. 14 is an explanatory diagram illustrating an example (part 2) of drawing a plurality of line segments. The line segment creation unit 303 includes a plurality of points included on the surface of the three-dimensional model 401 and connecting the specified points on the cross section and each of the plurality of points included on the surface of the three-dimensional model 401 and specified on the cross section. Specify the line segment of.

3次元モデル401の表面に含まれ、かつ断面上の点は、例えば、線分の始点となる。始点は、断面上から無作為に選択されてもよい。また、図14(1−1)や図14(2−1)に示すように、様々な方向から線分を作成可能なように、線分作成部303は、始点st1と始点st2のように始点を複数選択してもよい。   A point included in the surface of the three-dimensional model 401 and on the cross section is, for example, a starting point of a line segment. The starting point may be randomly selected from the cross section. In addition, as shown in FIG. 14 (1-1) and FIG. 14 (2-1), the line segment creation unit 303 sets the start point st1 and the start point st2 so that line segments can be created from various directions. A plurality of starting points may be selected.

また、3次元モデル401の表面に含まれ、かつ特定した断面上の複数の点は、例えば、線分の終点となる。複数の終点は、断面上から無作為に選択されてもよい。また、図14(1−1)や図14(2−1)に示すように、線分作成部303は、断面において互いに離れた位置にある複数の終点を選択してもよい。   In addition, a plurality of points on the identified cross section that are included in the surface of the three-dimensional model 401 are, for example, end points of a line segment. The plurality of end points may be randomly selected from the cross section. Further, as shown in FIG. 14 (1-1) and FIG. 14 (2-1), the line segment creating unit 303 may select a plurality of end points that are separated from each other in the cross section.

図14(1−1)の例では、線分作成部303が、始点st1に対して終点ed11〜ed16を選択する。線分作成部303は、始点st1と、終点ed11〜ed16のそれぞれと、を結ぶ複数の線分e11〜e16を特定する。   In the example of FIG. 14A, the line segment creating unit 303 selects end points ed11 to ed16 for the start point st1. The line segment creating unit 303 specifies a plurality of line segments e11 to e16 connecting the start point st1 and the end points ed11 to ed16.

また、図14(2−1)の例では、線分作成部303が、始点st2に対して終点ed21〜ed25を選択する。線分作成部303は、始点st2と、終点ed21〜ed25のそれぞれと、を結ぶ複数の線分e21〜e25を特定する。   In the example of FIG. 14 (2-1), the line segment creation unit 303 selects end points ed21 to ed25 for the start point st2. The line segment creating unit 303 specifies a plurality of line segments e21 to e25 connecting the start point st2 and the end points ed21 to ed25.

つぎに、移動部305は、複数の線分のそれぞれに含まれる複数の点において、球体900の中心が複数の線分のそれぞれに含まれる複数の点それぞれに一致する位置に、球体900を配置する。図14(1−2)の例では、移動部305は、線分e14に含まれる始点st1,点p11〜p14,終点ed14などのそれぞれに一致する位置に、球体900を配置する。また、図14(2−2)の例では、移動部305は、線分e23に含まれる始点st2,点p21〜p24,終点ed23などのそれぞれに一致する位置に、球体900を配置する。   Next, the moving unit 305 arranges the sphere 900 at a position where the center of the sphere 900 matches each of the plurality of points included in each of the plurality of line segments at the plurality of points included in each of the plurality of line segments. I do. In the example of FIG. 14 (1-2), the moving unit 305 arranges the sphere 900 at a position corresponding to each of the start point st1, the points p11 to p14, the end point ed14, and the like included in the line segment e14. In the example of FIG. 14 (2-2), the moving unit 305 arranges the sphere 900 at a position corresponding to each of the start point st2, the points p21 to p24, and the end point ed23 included in the line segment e23.

そして、算出部306は、球体900を配置した際の球体900と3次元モデル401との重複領域の体積を算出する。そして、第1特定部307は、複数の線分のうち、複数の線分それぞれに含まれる複数の点における球体900と3次元モデル401との重複領域の体積の和が最大の線分を特定する。つぎに、判定部309は、特定した線分に含まれる複数の点における球体900と3次元モデル401との重複領域の体積に基づいて、断面の中心点を判定する。   Then, the calculation unit 306 calculates the volume of the overlapping region of the sphere 900 and the three-dimensional model 401 when the sphere 900 is arranged. Then, the first specifying unit 307 specifies the line segment having the largest sum of the volumes of the overlapping regions of the sphere 900 and the three-dimensional model 401 at a plurality of points included in each of the plurality of line segments. I do. Next, the determination unit 309 determines the center point of the cross section based on the volume of the overlapping area between the sphere 900 and the three-dimensional model 401 at a plurality of points included in the specified line segment.

以上、管を表す3次元モデル401から断面を1つ特定して断面についての中心点を求める例を挙げたが、中心判定装置100は、複数の断面の各々について中心点を求めることにより3次元モデル401の中心軸を求めてもよい。   As described above, the example in which one cross section is specified from the three-dimensional model 401 representing the pipe and the center point of the cross section is obtained is described. The central axis of the model 401 may be obtained.

図15は、管の中心軸を求める例を示す説明図である。断面作成部302は、管を表す3次元モデル401の表面に含まれるテトラから、高さの異なる複数のテトラを選択する。求める断面の数については、利用者の操作によって受け付けてもよい。例えば、受付部301は、利用者の操作によって3次元モデル401の入口701と出口702の指定を受け付ける際に、断面の数の指定を受け付ける。また、断面間の間隔や各断面の高さについても利用者の操作によって受け付けてもよい。例えば、受付部301は、利用者の操作によって3次元モデル401の入口701と出口702の指定を受け付ける際に、断面間の間隔や各断面の高さの指定を受け付ける。   FIG. 15 is an explanatory diagram illustrating an example of obtaining the center axis of the pipe. The cross-section creating unit 302 selects a plurality of tetras having different heights from tetras included on the surface of the three-dimensional model 401 representing the pipe. The number of sections to be obtained may be accepted by a user operation. For example, when accepting the designation of the entrance 701 and the exit 702 of the three-dimensional model 401 by the operation of the user, the accepting unit 301 accepts the designation of the number of cross sections. Further, the interval between the cross sections and the height of each cross section may be received by a user operation. For example, when accepting the designation of the entrance 701 and the exit 702 of the three-dimensional model 401 by the operation of the user, the accepting unit 301 accepts the specification of the interval between sections and the height of each section.

例えば、断面作成部302は、3次元モデル401の表面に含まれるテトラから、高さの異なる指定数のテトラを選択する。図15の例では、断面の数は4つである。そして、断面作成部302は、選択した各テトラについて、テトラに含まれる辺を選択する。これにより、図15に示すように、4辺が選択され、4つの断面1501〜1504が特定される。図15に示すように、管の表面に含まれる四面体は滑らかに接続されていないため、各断面は3次元モデル401である管の表面に対して垂直とは限らない。   For example, the cross section creation unit 302 selects a specified number of tetras having different heights from tetra included in the surface of the three-dimensional model 401. In the example of FIG. 15, the number of cross sections is four. Then, for each selected tetra, the cross-section creating unit 302 selects a side included in the tetra. Thus, as shown in FIG. 15, four sides are selected, and four cross sections 1501 to 1504 are specified. As shown in FIG. 15, since the tetrahedrons included in the surface of the tube are not connected smoothly, each cross section is not necessarily perpendicular to the surface of the tube, which is the three-dimensional model 401.

そして、上述した各部の処理によって各断面について中心点が特定される。断面1501については中心点1511が特定される。断面1502については中心点1512が特定される。断面1503については中心点1513が特定される。断面1504については中心点1514が特定される。   Then, the center point of each section is specified by the processing of each section described above. A center point 1511 is specified for the cross section 1501. For the cross section 1502, a center point 1512 is specified. For the cross section 1503, a center point 1513 is specified. A center point 1514 is specified for the cross section 1504.

そして、判定部309は、例えば、各断面の中心点を通過する軸を3次元モデル401の中心軸1500として特定する。出力部311は、中心軸を出力する。出力部311は、例えば、ディスプレイ209などに3次元モデル401に合わせて中心軸を表示する。また、出力部311は、例えば、中心軸を表す情報をRAM203やディスク205などの記憶装置に格納する。   Then, the determination unit 309 specifies, for example, the axis passing through the center point of each section as the center axis 1500 of the three-dimensional model 401. The output unit 311 outputs a central axis. The output unit 311 displays the central axis on the display 209 or the like in accordance with the three-dimensional model 401, for example. The output unit 311 stores, for example, information indicating the central axis in a storage device such as the RAM 203 or the disk 205.

(中心判定装置100による中心判定処理手順例)
図16は、中心判定装置による中心判定処理手順例を示すフローチャートである。中心判定装置100は、解析モデルデータ500を取得する(ステップS1601)。つぎに、中心判定装置100は、3次元モデルの管の入口701および出口02の指定を受け付けて、解析モデルの入り口および出口を設定する(ステップS1602)。
(Example of center determination processing procedure by center determination apparatus 100)
FIG. 16 is a flowchart illustrating an example of a procedure of a center determination process performed by the center determination apparatus. The center determination device 100 acquires the analysis model data 500 (Step S1601). Next, the center determination device 100 receives the designation of the entrance 701 and the exit 02 of the pipe of the three-dimensional model, and sets the entrance and the exit of the analysis model (step S1602).

そして、中心判定装置100は、3次元モデル401の管表面に含まれるテトラからそれぞれ異なる高さにあるテトラを複数選択する(ステップS1603)。中心判定装置100は、選択したテトラのうち未対象のテトラがあるか否かを判断する(ステップS1604)。未対象のテトラがあると判断された場合(ステップS1604:Yes)、中心判定装置100は、複数のテトラのうち未対象のテトラを1つ対象として選択する(ステップS1605)。そして、中心判定装置100は、断面の特定処理を行う(ステップS1606)。   Then, the center determination device 100 selects a plurality of tetras at different heights from the tetra included in the tube surface of the three-dimensional model 401 (step S1603). The center determination device 100 determines whether there is an untargeted tetra among the selected tetras (step S1604). When it is determined that there is an untargeted tetra (Step S1604: Yes), the center determination apparatus 100 selects one untargeted tetra as a target from the plurality of tetras (Step S1605). Then, the center determination device 100 performs a cross-section identification process (step S1606).

つぎに、中心判定装置100は、体積の算出処理を行う(ステップS1607)。そして、中心判定装置100は、中心点の特定処理を行い(ステップS1608)、ステップS1604へ戻る。ステップS1604において、未対象のテトラがないと判断された場合(ステップS1604:No)、中心判定装置100は、決定した各通過点を結ぶ3次元モデル401の中心軸を特定する(ステップS1609)。そして、中心判定装置100は、特定した中心軸を出力し(ステップS1610)、一連の処理を終了する。   Next, the center determination device 100 performs a volume calculation process (step S1607). Then, the center determination device 100 performs the process of specifying the center point (step S1608), and returns to step S1604. If it is determined in step S1604 that there is no untargeted tetra (step S1604: No), the center determination device 100 specifies the center axis of the three-dimensional model 401 connecting the determined passing points (step S1609). Then, center determination apparatus 100 outputs the specified center axis (step S1610), and ends a series of processing.

図17は、中心判定装置による断面の特定処理手順例を示すフローチャートである。中心判定装置100は、選択したテトラの底面から管内部方向の法線を特定する(ステップS1701)。つぎに、中心判定装置100は、選択したテトラの底面のうちの未選択の辺を選択する(ステップS1702)。   FIG. 17 is a flowchart illustrating an example of a cross-section identification processing procedure performed by the center determination device. The center determination apparatus 100 specifies a normal in the pipe inner direction from the bottom surface of the selected tetra (Step S1701). Next, the center determination device 100 selects an unselected side of the bottom surface of the selected tetra (step S1702).

つぎに、中心判定装置100は、選択した辺と、特定した法線と、に基づき平面を生成する(ステップS1703)。そして、中心判定装置100は、平面が3次元モデル401の端面と交わるか否かを判断する(ステップS1704)。端面は、入口701と出口702である。平面が3次元モデル401の端面と交わると判断された場合(ステップS1704:Yes)、中心判定装置100は、ステップS1702へ戻る。平面が3次元モデル401の端面と交わらないと判断された場合(ステップS1704:No)、中心判定装置100は、平面のうち3次元モデル401と重複する部分を3次元モデル401の管の断面として抽出し(ステップS1705)、一連の処理を終了する。   Next, the center determination apparatus 100 generates a plane based on the selected side and the specified normal (step S1703). Then, the center determination device 100 determines whether the plane intersects the end face of the three-dimensional model 401 (step S1704). The end faces are an inlet 701 and an outlet 702. When it is determined that the plane intersects the end face of the three-dimensional model 401 (step S1704: Yes), the center determination device 100 returns to step S1702. When it is determined that the plane does not intersect with the end face of the three-dimensional model 401 (step S1704: No), the center determination device 100 determines a portion of the plane that overlaps the three-dimensional model 401 as a cross section of the tube of the three-dimensional model 401. The extraction is performed (step S1705), and a series of processing ends.

図18は、中心判定装置による体積の算出処理手順例を示すフローチャートである。中心判定装置100は、断面上において、法線の始点を基準に断面上に複数の線分を作成する(ステップS1801)。そして、中心判定装置100は、複数の線分と管表面との交点の各々について、法線の始点との距離を算出する(ステップS1802)。つぎに、中心判定装置100は、最も長い距離を球体900の直径に決定する(ステップS1803)。   FIG. 18 is a flowchart illustrating an example of a volume calculation processing procedure performed by the center determination device. The center determination device 100 creates a plurality of line segments on the cross section with reference to the start point of the normal on the cross section (step S1801). Then, for each of the intersections between the plurality of line segments and the tube surface, the center determination device 100 calculates the distance from the starting point of the normal (step S1802). Next, the center determination device 100 determines the longest distance as the diameter of the sphere 900 (step S1803).

そして、中心判定装置100は、複数の線分から未選択の線分を選択する(ステップS1804)。つぎに、中心判定装置100は、選択した線分の始点に、決定した直径の球体900の中心を配置した状態における球体900と3次元モデル401との重複領域の体積を算出する(ステップS1805)。つづいて、中心判定装置100は、線分上に球体900の中心が位置する状態で終点の方向に所定の長さ移動させる(ステップS1806)。ここで、終点とは、線分の端点であり、始点と異なる点である。ステップS1806においては、中心判定装置100は、線分上を終点の方向に球体900の中心を移動させる。   Then, the center determination device 100 selects an unselected line segment from the plurality of line segments (step S1804). Next, the center determination device 100 calculates the volume of the overlapping area of the sphere 900 and the three-dimensional model 401 in a state where the center of the sphere 900 having the determined diameter is arranged at the start point of the selected line segment (step S1805). . Subsequently, the center determination device 100 moves a predetermined length in the direction of the end point in a state where the center of the sphere 900 is located on the line segment (step S1806). Here, the end point is an end point of the line segment and is different from the start point. In step S1806, the center determination device 100 moves the center of the sphere 900 on the line segment toward the end point.

つぎに、中心判定装置100は、移動できたか否かを判断する(ステップS1807)。移動できない場合とは、現在の球体900の中心を終点の方向に所定の長さ移動させると線分から外れてしまう場合である。移動できたと判断された場合(ステップS1807:Yes)、中心判定装置100は、移動後の球体900と3次元モデル401との重複領域の体積を算出し(ステップS1808)、ステップS1806へ戻る。   Next, the center determination device 100 determines whether or not it has been able to move (step S1807). The case where movement is not possible is a case where the center of the current sphere 900 moves out of a line segment by moving a predetermined length in the direction of the end point. If it is determined that the movement is possible (Step S1807: Yes), the center determination device 100 calculates the volume of the overlap area between the moved sphere 900 and the three-dimensional model 401 (Step S1808), and returns to Step S1806.

移動できないと判断された場合(ステップS1807:No)、中心判定装置100は、未選択の線分があるか否かを判断する(ステップS1809)。未選択の線分があると判断された場合(ステップS1809:Yes)、中心判定装置100は、ステップS1804へ戻る。一方、未選択の線分がないと判断された場合(ステップS1809:No)、中心判定装置100は、一連の処理を終了する。   When it is determined that the user cannot move (Step S1807: No), the center determination device 100 determines whether there is an unselected line segment (Step S1809). When it is determined that there is an unselected line segment (step S1809: Yes), the center determination device 100 returns to step S1804. On the other hand, when it is determined that there is no unselected line segment (step S1809: No), the center determination device 100 ends a series of processing.

図19は、中心点の特定処理手順例を示すフローチャートである。中心判定装置100は、体積が最大の線分を特定する(ステップS1901)。つぎに、中心判定装置100は、特定した線分についての体積の変化に基づき断面の中心点を特定する(ステップS1902)。つづいて、中心判定装置100は、特定した中心点の近傍のテトラの節点を管中心軸の通過点に決定し(ステップS1903)、一連の処理を終了する。   FIG. 19 is a flowchart illustrating an example of a center point specifying process procedure. The center determination device 100 specifies the line segment having the largest volume (step S1901). Next, the center determination device 100 specifies the center point of the cross section based on the change in volume of the specified line segment (step S1902). Subsequently, the center determination device 100 determines a tetra node near the specified center point as a passing point of the pipe center axis (step S1903), and ends a series of processing.

以上説明したように、中心判定装置100は、解析モデルの断面上の各線分について線分上の各位置に立体の中心を配置した場合の該立体と該モデルとの重複領域の体積に基づいて、当該各位置から断面の中心点を特定する。これにより、中心情報がない解析モデルの断面の中心を判定できる。そして、中心点が簡単に得られるため、利用者の手間を省くことができる。   As described above, the center determination device 100 determines the line segment on the cross section of the analysis model based on the volume of the overlapping area of the solid and the model when the center of the solid is placed at each position on the line segment. Then, the center point of the cross section is specified from the respective positions. Thereby, the center of the cross section of the analysis model having no center information can be determined. Then, since the center point can be easily obtained, the user can save time and effort.

また、中心判定装置100は、複数の四面体のうち3次元モデル401の表面に含まれるいずれかの四面体が有する面の法線を特定し、特定した法線と面に含まれる辺とに基づく平面のうち、3次元モデル401と重複する面を断面として特定する。これにより、3次元モデル401の断面を簡単に特定することができ、計算時間の短縮化を図ることができる。   In addition, the center determination device 100 specifies a normal line of a surface of any one of the tetrahedrons included in the surface of the three-dimensional model 401 among the plurality of tetrahedrons, and determines the normal line and the side included in the surface. A plane overlapping with the three-dimensional model 401 is specified as a cross section among the planes based on the three-dimensional model. Thereby, the cross section of the three-dimensional model 401 can be easily specified, and the calculation time can be reduced.

また、中心判定装置100は、所定の立体を移動させた際の、3次元モデル401に含まれる複数の四面体のうちの所定の立体に内包される四面体の体積の和を重複領域の体積として算出する。これにより、3次元モデル401と所定の立体との重複領域の体積を簡単に算出することができ、計算時間の短縮化を図ることができる。   In addition, the center determination device 100 calculates the sum of the volumes of the tetrahedrons included in the predetermined solid among the plurality of tetrahedrons included in the three-dimensional model 401 when the predetermined solid is moved, as the volume of the overlapping area. Is calculated as This makes it possible to easily calculate the volume of the overlapping area between the three-dimensional model 401 and the predetermined solid, and to reduce the calculation time.

また、所定の立体と3次元モデル401とがより大きく重複した方が所定の立体の位置が3次元モデル401の断面の中心である可能性が高くなる。このため、中心判定装置100は、特定した線分に含まれる各点のうち、算出した重複領域の体積が最大となる点を中心点として判定する。これにより、中心情報がない解析モデルの断面の中心が得られる精度の向上を図ることができる。   Further, the greater the overlap between the predetermined solid and the three-dimensional model 401, the higher the possibility that the position of the predetermined solid is the center of the cross section of the three-dimensional model 401. For this reason, the center determination device 100 determines, as the center point, a point at which the calculated volume of the overlapping region is the largest among the points included in the specified line segment. Thereby, it is possible to improve the accuracy of obtaining the center of the cross section of the analysis model having no center information.

また、中心判定装置100は、線分上で所定の立体を移動時に所定の立体と3次元モデル401との重複領域の体積が最大となる線分の点が複数ある場合、最大となる点のうちの中心の点を断面の中心点として判定する。これにより、中心情報がない解析モデルの断面の中心が得られる精度の向上を図ることができる。   In addition, when moving a predetermined solid on a line segment, the center determination device 100 determines a maximum point when there are a plurality of line segment points where the volume of the overlapping region of the predetermined solid and the three-dimensional model 401 is the largest. The center point is determined as the center point of the cross section. Accordingly, it is possible to improve the accuracy of obtaining the center of the cross section of the analysis model having no center information.

また、中心判定装置100は、複数の四面体に含まれる各節点のうち、算出した重複領域の体積が最大となる位置に最も近い節点を中心点として特定する。これにより、四面体の節点に中心を設定することができるため、解析に利用しやすくなる。   In addition, the center determination device 100 specifies, as a center point, a node closest to the position where the calculated volume of the overlapping region is maximum among the nodes included in the plurality of tetrahedrons. As a result, the center can be set at the node of the tetrahedron, so that it can be easily used for analysis.

また、中心判定装置100は、3次元モデル401の複数の断面の各々について特定した中心点に基づき中心軸を特定する。これにより、管などの中心軸を特定することが可能となり、利用者の手間を省くことができる。   In addition, the center determination device 100 specifies a center axis based on the center point specified for each of the plurality of cross sections of the three-dimensional model 401. This makes it possible to specify the central axis of a pipe or the like, and can save the user time and effort.

また、所定の立体の中心から所定の表面の距離が均等であるほど、所定の立体が断面を均等に包含することができる。このため、中心判定装置100は、所定の立体を球体900とする。これにより、所定の立体の中心から所定の表面の距離が均等となる球体900であれば、最終的に得られる中心点が正確である可能性が高くなる。   Also, the more uniform the distance of the predetermined surface from the center of the predetermined solid, the more the predetermined solid can cover the cross section evenly. For this reason, the center determination device 100 sets the predetermined solid as a sphere 900. Accordingly, if the sphere 900 has a uniform distance from the center of the predetermined solid to the predetermined surface, the possibility that the finally obtained center point is accurate is increased.

また、例えば、球体900の直径が小さすぎると、球体900を線分の各位置に移動させた際に球体900と管との重複領域の体積が最大となる位置の数が多くなってしまう。また、球体900の直径が断面よりも大きすぎると、球体900を線分の各位置に移動させた際に球体900と管との重複領域の体積が最大となる位置の数が多くなってしまう。そこで、中心判定装置100は、球体900の直径を、複数の線分のそれぞれの長さのうちの最大の長さに基づく値とする。これにより、球体900が断面の線分の方向について全体を含むことが可能となり、球体900と管との重複領域の体積が最大となる位置の数を少なくすることができる。したがって、中心点を求める精度の向上を図ることができる。   Further, for example, if the diameter of the sphere 900 is too small, the number of positions where the volume of the overlapping region of the sphere 900 and the tube becomes maximum when the sphere 900 is moved to each position of the line segment increases. If the diameter of the sphere 900 is larger than the cross section, the number of positions where the volume of the overlapping area of the sphere 900 and the tube becomes maximum when the sphere 900 is moved to each position of the line segment increases. . Therefore, the center determination device 100 sets the diameter of the sphere 900 to a value based on the maximum length of each of the plurality of line segments. Accordingly, the sphere 900 can include the entirety in the direction of the line of the cross section, and the number of positions where the volume of the overlapping region of the sphere 900 and the tube becomes maximum can be reduced. Therefore, the accuracy of finding the center point can be improved.

なお、本実施の形態で説明した中心判定方法は、予め用意された中心判定プログラムをパーソナル・コンピュータやワークステーション等のコンピュータで実行することにより実現することができる。本中心判定プログラムは、磁気ディスク、光ディスク、USB(Universal Serial Bus)フラッシュメモリなどのコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。また、中心判定プログラムは、インターネット等のネットワークを介して配布してもよい。   The center determination method described in the present embodiment can be realized by executing a prepared center determination program on a computer such as a personal computer or a workstation. The center determination program is recorded on a computer-readable recording medium such as a magnetic disk, an optical disk, and a USB (Universal Serial Bus) flash memory, and is executed by being read from the recording medium by the computer. The center determination program may be distributed via a network such as the Internet.

e1〜e5,e11〜e16,e21〜e25 線分
100 中心判定装置
101,401 3次元モデル
102,601,1501,1502,1503,1504 断面
301 受付部
302 断面作成部
303 線分作成部
304 直径決定部
305 移動部
306 算出部
307 第1特定部
308 第2特定部
309 判定部
310 第3特定部
311 出力部
500 解析モデルデータ
600,700 平面
900 球体
1500 中心軸
1511,1512,1513,1514 中心点
ta,t1〜t5 テトラ
e1 to e5, e11 to e16, e21 to e25 Line segment 100 Center determining device 101, 401 3D model 102, 601, 1501, 1502, 1503, 1504 Cross section 301 Receiving unit 302 Cross section creating unit 303 Line segment creating unit 304 Diameter determination Unit 305 moving unit 306 calculating unit 307 first specifying unit 308 second specifying unit 309 determining unit 310 third specifying unit 311 output unit 500 analysis model data 600,700 plane 900 sphere 1500 center axis 1511,1512,1513,1514 center point ta, t1-t5 tetra

Claims (12)

入力に応じて、3次元モデルの断面を特定し、
特定した前記断面に含まれる複数の線分それぞれにおいて線分上を所定の立体の中心が位置する状態で移動させ、前記所定の立体を移動させた際の、前記所定の立体と前記3次元モデルとの重複領域の体積を算出し、
前記複数の線分のうち、算出した前記重複領域の体積が最大である線分を特定し、
特定した前記線分における、前記所定の立体を移動させた際の、前記所定の立体と前記3次元モデルとの重複領域の体積の変化に応じて、前記線分に含まれる点から前記断面の中心点を判定し、出力する、
処理をコンピュータに実行させることを特徴とする中心判定プログラム。
According to the input, specify the cross section of the 3D model,
In each of the plurality of line segments included in the specified cross section, the predetermined solid and the three-dimensional model are moved when the predetermined solid is moved on the line segment in a state where the center of the predetermined solid is located. Calculate the volume of the overlapping area with
Of the plurality of line segments, the line segment in which the calculated volume of the overlapping region is the largest is specified,
In the specified line segment, when the predetermined solid is moved, a change in the volume of an overlapping area between the predetermined solid and the three-dimensional model causes a change in the volume of the cross section from a point included in the line segment. Determine the center point and output it,
A center determination program for causing a computer to execute processing.
前記断面を特定する処理は、前記3次元モデルに含まれる複数の四面体のうち、前記3次元モデルの表面に含まれるいずれかの四面体が有する面の法線を特定し、特定した前記法線と、前記いずれかの四面体が有する面に含まれる辺とに基づく平面を特定し、特定した前記平面のうち前記3次元モデルと重複する面を前記断面として特定する処理である、ことを特徴とする請求項1に記載の中心判定プログラム。   The process of specifying the cross section includes, among a plurality of tetrahedrons included in the three-dimensional model, specifying a normal of a surface of any tetrahedron included in the surface of the three-dimensional model, and specifying the specified method A process that specifies a plane based on a line and a side included in a surface of any one of the tetrahedrons, and specifies, as the cross section, a surface overlapping the three-dimensional model among the specified planes. The center determination program according to claim 1, wherein: 前記重複領域の体積を算出する処理は、前記所定の立体を移動させた際の、前記3次元モデルに含まれる複数の四面体のうちの前記所定の立体に内包される四面体の体積の和を前記重複領域の体積として算出する処理である、ことを特徴とする請求項1または2に記載の中心判定プログラム。   The process of calculating the volume of the overlapping region is performed by, when the predetermined solid is moved, a sum of volumes of tetrahedrons included in the predetermined solid among a plurality of tetrahedrons included in the three-dimensional model. The center determination program according to claim 1, wherein the calculation is performed as a volume of the overlapping area. 前記断面の中心点を判定する処理は、特定した前記線分に含まれる各点のうち算出した前記重複領域の体積が最大となる点を前記中心点として判定する処理である、ことを特徴とする請求項1〜3のいずれか一項に記載の中心判定プログラム。   The process of determining the center point of the cross section is a process of determining, as the center point, a point at which the calculated volume of the overlapping region is the largest among the points included in the specified line segment. The center determination program according to claim 1. 入力に応じて特定された前記3次元モデルの複数の断面の各々について判定した前記中心点を結ぶ中心軸を特定する、ことを特徴とする請求項1〜4のいずれか一項に記載の中心判定プログラム。   The center according to any one of claims 1 to 4, wherein a center axis connecting the center points determined for each of the plurality of cross sections of the three-dimensional model specified according to the input is specified. Judgment program. 前記所定の立体は、球体である、ことを特徴とする請求項1〜5のいずれか一項に記載の中心判定プログラム。   The center determination program according to claim 1, wherein the predetermined solid is a sphere. 前記球体の直径は、前記複数の線分のそれぞれの長さのうちの最大の長さに基づく値である、ことを特徴とする請求項6に記載の中心判定プログラム。   The computer-readable storage medium according to claim 6, wherein the diameter of the sphere is a value based on a maximum length of each of the plurality of line segments. 入力に応じて、3次元モデルの断面を特定し、
前記3次元モデルの表面に含まれ、かつ特定した前記断面上の点と、前記3次元モデルの表面に含まれ、かつ特定した前記断面上の複数の点それぞれとを結ぶ複数の線分を特定し、
特定した前記複数の線分のそれぞれに含まれる複数の点において、所定の立体の中心が前記複数の線分のそれぞれに含まれる複数の点それぞれに一致する位置に、前記所定の立体を配置した際の前記所定の立体と前記3次元モデルとの重複領域の体積を算出し、
前記複数の線分のうち、前記複数の線分それぞれに含まれる複数の点における前記所定の立体と前記3次元モデルとの重複領域の体積の和が最大の線分を特定し、
特定した前記線分に含まれる複数の点における前記所定の立体と前記3次元モデルとの重複領域の体積に基づいて、前記断面の中心点を判定する、
処理をコンピュータに実行させることを特徴とする中心判定プログラム。
According to the input, specify the cross section of the 3D model,
Identify a plurality of line segments that are included on the surface of the three-dimensional model and that specify the points on the cross section, and that are included on the surface of the three-dimensional model and that connect the plurality of points on the specified cross section, respectively. And
At a plurality of points included in each of the specified plurality of line segments, the predetermined solid is arranged at a position where the center of the predetermined solid corresponds to each of the plurality of points included in each of the plurality of line segments. Calculating the volume of the overlapping region between the predetermined solid and the three-dimensional model at the time,
Among the plurality of line segments, a line segment in which the sum of volumes of overlapping regions of the predetermined solid and the three-dimensional model at a plurality of points included in each of the plurality of line segments is specified,
Determining a center point of the cross section based on a volume of an overlapping area between the predetermined solid and the three-dimensional model at a plurality of points included in the specified line segment;
A center determination program for causing a computer to execute processing.
入力に応じて、3次元モデルの断面を特定し、
特定した前記断面に含まれる複数の線分それぞれにおいて線分上を所定の立体の中心が位置する状態で移動させ、前記所定の立体を移動させた際の、前記所定の立体と前記3次元モデルとの重複領域の体積を算出し、
前記複数の線分のうち、算出した前記重複領域の体積が最大である線分を特定し、
特定した前記線分における、前記所定の立体を移動させた際の、前記所定の立体と前記3次元モデルとの重複領域の体積の変化に応じて、前記線分に含まれる点から前記断面の中心点を判定し、出力する、
処理をコンピュータが実行することを特徴とする中心判定方法。
According to the input, specify the cross section of the 3D model,
In each of the plurality of line segments included in the specified cross section, the predetermined solid and the three-dimensional model are moved when the predetermined solid is moved on the line segment in a state where the center of the predetermined solid is located. Calculate the volume of the overlapping area with
Of the plurality of line segments, the line segment in which the calculated volume of the overlapping region is the largest is specified,
In the specified line segment, when the predetermined solid is moved, a change in the volume of an overlapping area between the predetermined solid and the three-dimensional model causes a change in the volume of the cross section from a point included in the line segment. Determine the center point and output it,
A center determination method, wherein the processing is executed by a computer.
入力に応じて、3次元モデルの断面を特定し、
前記3次元モデルの表面に含まれ、かつ特定した前記断面上の点と、前記3次元モデルの表面に含まれ、かつ特定した前記断面上の複数の点それぞれとを結ぶ複数の線分を特定し、
特定した前記複数の線分のそれぞれに含まれる複数の点において、所定の立体の中心が前記複数の線分のそれぞれに含まれる複数の点それぞれに一致する位置に、前記所定の立体を配置した際の前記所定の立体と前記3次元モデルとの重複領域の体積を算出し、
前記複数の線分のうち、前記複数の線分それぞれに含まれる複数の点における前記所定の立体と前記3次元モデルとの重複領域の体積の和が最大の線分を特定し、
特定した前記線分に含まれる複数の点における前記所定の立体と前記3次元モデルとの重複領域の体積に基づいて、前記断面の中心点を判定する、
処理をコンピュータが実行することを特徴とする中心判定方法。
According to the input, specify the cross section of the 3D model,
Identify a plurality of line segments that are included on the surface of the three-dimensional model and that specify the points on the cross section, and that are included on the surface of the three-dimensional model and that connect the plurality of points on the specified cross section, respectively. And
At a plurality of points included in each of the specified plurality of line segments, the predetermined solid is arranged at a position where the center of the predetermined solid corresponds to each of the plurality of points included in each of the plurality of line segments. Calculating the volume of the overlapping area of the predetermined solid and the three-dimensional model at the time of
Among the plurality of line segments, a line segment in which the sum of volumes of overlapping regions of the predetermined solid and the three-dimensional model at a plurality of points included in each of the plurality of line segments is specified,
Determining a center point of the cross section based on a volume of an overlapping area between the predetermined solid and the three-dimensional model at a plurality of points included in the specified line segment;
A center determination method, wherein the processing is executed by a computer.
入力に応じて、3次元モデルの断面を特定し、特定した前記断面に含まれる複数の線分それぞれにおいて線分上を所定の立体の中心が位置する状態で移動させ、前記所定の立体を移動させた際の、前記所定の立体と前記3次元モデルとの重複領域の体積を算出し、前記複数の線分のうち、算出した前記重複領域の体積が最大である線分を特定し、特定した前記線分における、前記所定の立体を移動させた際の、前記所定の立体と前記3次元モデルとの重複領域の体積の変化に応じて、前記線分に含まれる点から前記断面の中心点を判定し、出力する、制御部、
を有することを特徴とする中心判定装置。
In response to the input, a cross section of the three-dimensional model is specified, and a plurality of line segments included in the specified cross section are moved in a state where the center of the predetermined solid is located on the line segment, and the predetermined solid is moved. At this time, the volume of the overlapping region between the predetermined solid and the three-dimensional model is calculated, and among the plurality of line segments, the line segment having the largest calculated volume of the overlapping region is specified and specified. The center of the cross section from a point included in the line segment according to a change in the volume of an overlapping area between the predetermined solid and the three-dimensional model when the predetermined solid is moved in the line segment A control unit that determines and outputs a point,
A center determination device comprising:
入力に応じて、3次元モデルの断面を特定し、前記3次元モデルの表面に含まれ、かつ特定した前記断面上の点と、前記3次元モデルの表面に含まれ、かつ特定した前記断面上の複数の点それぞれとを結ぶ複数の線分を特定し、特定した前記複数の線分のそれぞれに含まれる複数の点において、所定の立体の中心が前記複数の線分のそれぞれに含まれる複数の点それぞれに一致する位置に、前記所定の立体を配置した際の前記所定の立体と前記3次元モデルとの重複領域の体積を算出し、前記複数の線分のうち、前記複数の線分それぞれに含まれる複数の点における前記所定の立体と前記3次元モデルとの重複領域の体積の和が最大の線分を特定し、特定した前記線分に含まれる複数の点における前記所定の立体と前記3次元モデルとの重複領域の体積に基づいて、前記断面の中心点を判定する、制御部、
を有することを特徴とする中心判定装置。
In response to the input, a cross section of the three-dimensional model is specified, and a point on the cross section included and specified on the surface of the three-dimensional model and a point on the cross section included and specified on the surface of the three-dimensional model are specified. A plurality of line segments connecting each of the plurality of points are specified, and at a plurality of points included in each of the specified plurality of line segments, a plurality of points in which a center of a predetermined solid is included in each of the plurality of line segments Calculating a volume of an overlapping area of the predetermined solid and the three-dimensional model when the predetermined solid is arranged at a position corresponding to each of the points, and among the plurality of line segments, the plurality of line segments A line segment having the largest sum of the volumes of the overlapping regions of the predetermined solid and the three-dimensional model at a plurality of points included therein is specified, and the predetermined solid at a plurality of points included in the specified line segment is specified. And the 3D model Based on the volume of the band, it determines the center point of the cross section, the control unit,
A center determination device comprising:
JP2016097091A 2016-05-13 2016-05-13 Center determination program, center determination method, and center determination device Expired - Fee Related JP6651978B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016097091A JP6651978B2 (en) 2016-05-13 2016-05-13 Center determination program, center determination method, and center determination device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016097091A JP6651978B2 (en) 2016-05-13 2016-05-13 Center determination program, center determination method, and center determination device

Publications (2)

Publication Number Publication Date
JP2017204233A JP2017204233A (en) 2017-11-16
JP6651978B2 true JP6651978B2 (en) 2020-02-19

Family

ID=60322363

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016097091A Expired - Fee Related JP6651978B2 (en) 2016-05-13 2016-05-13 Center determination program, center determination method, and center determination device

Country Status (1)

Country Link
JP (1) JP6651978B2 (en)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05126548A (en) * 1991-11-06 1993-05-21 Hitachi Ltd Target detection method and device, construction process design support system, operation support system
JPH07218229A (en) * 1994-01-31 1995-08-18 Kubota Corp Three-dimentional shape input device
US7814441B2 (en) * 2006-05-09 2010-10-12 Inus Technology, Inc. System and method for identifying original design intents using 3D scan data
JP5151955B2 (en) * 2008-12-12 2013-02-27 株式会社日立プラントテクノロジー Piping installation support device

Also Published As

Publication number Publication date
JP2017204233A (en) 2017-11-16

Similar Documents

Publication Publication Date Title
JP6255491B2 (en) Automatic fastener creation to simulate computer aided design (CAD) models
JP5830004B2 (en) 3D model generation apparatus, 3D model generation method, and 3D model generation program
JP4785598B2 (en) Similar shape search device
CN103092577A (en) System and method for generating three-dimensional image measuring program
JP2015001146A (en) Reinforcement bar inspection assisting device and program
US20150169796A1 (en) Piping or Wiring Support Device
WO2022249617A1 (en) Three-dimensional model generation support system, program, and recording medium
JP6651978B2 (en) Center determination program, center determination method, and center determination device
US11003816B2 (en) Structure analysis device and structure analysis method
CN107832524B (en) A method, device and system for determining the volume of reservoir stimulation
JP7285660B2 (en) DIMENSION GENERATION DEVICE, DIMENSION GENERATION METHOD AND PROGRAM
JP2010152863A (en) System and method for extracting boundary node, and program
JP5404109B2 (en) Information processing apparatus and information processing method
JP2015203675A (en) Image processing apparatus, image processing system, three-dimensional measuring instrument, image processing method, and image processing program
KR101545154B1 (en) Field line creation apparatus in overlapped grid and method thereof
CN119270781A (en) Virtual simulation method, device, equipment and readable storage medium for factory assembly line
KR101930161B1 (en) System for architectural design performance evaluation based on 3d spatial patterns
JP2015018360A (en) Analyzer
Zakharova et al. Methods of Constructing a Visual Map of Generalized Computational Experiment
KR101671908B1 (en) Apparatus and method for comparing assembly models
US20060020456A1 (en) Object oriented acoustic modeling tools and methods
RU2611892C1 (en) Method of three-dimensional simulation of specified hydrogeological feature implemented in computer system
JP2026061564A (en) Training data generation device, training data generation method, training data generation program, point cloud interpolation device, point cloud interpolation method, and point cloud interpolation program
JP6969757B2 (en) Analysis result data reduction device, analysis result data reduction method and analysis result data reduction program
KR102156336B1 (en) Method for reconstructing three-dimensional shape

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190212

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20191128

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20191224

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200106

R150 Certificate of patent or registration of utility model

Ref document number: 6651978

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees