JP4459745B2 - Method and program for calculating fillet surface - Google Patents

Method and program for calculating fillet surface Download PDF

Info

Publication number
JP4459745B2
JP4459745B2 JP2004214565A JP2004214565A JP4459745B2 JP 4459745 B2 JP4459745 B2 JP 4459745B2 JP 2004214565 A JP2004214565 A JP 2004214565A JP 2004214565 A JP2004214565 A JP 2004214565A JP 4459745 B2 JP4459745 B2 JP 4459745B2
Authority
JP
Japan
Prior art keywords
intersection
line
calculating
circle
fillet
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
JP2004214565A
Other languages
Japanese (ja)
Other versions
JP2006039661A (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.)
Honda Motor Co Ltd
Original Assignee
Honda Motor Co 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 Honda Motor Co Ltd filed Critical Honda Motor Co Ltd
Priority to JP2004214565A priority Critical patent/JP4459745B2/en
Publication of JP2006039661A publication Critical patent/JP2006039661A/en
Application granted granted Critical
Publication of JP4459745B2 publication Critical patent/JP4459745B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

この発明は、コンピュータにより実施される、3次元形状モデルにおいてフィレット面を算出する方法およびそのプログラムに関する。   The present invention relates to a method for calculating a fillet plane in a computer-implemented three-dimensional shape model and a program thereof.

従来から、コンピュータを用いたCADシステムにおいて、3次元形状モデルの生成および加工などの処理が行われている。このようなシステムにおいて、任意の形状を有する2つの面を滑らかに接続する面、すなわちフィレット面の作成を要する場合がある。   Conventionally, processing such as generation and processing of a three-dimensional shape model has been performed in a CAD system using a computer. In such a system, it may be necessary to create a surface that smoothly connects two surfaces having an arbitrary shape, that is, a fillet surface.

下記の特許文献1に示される方法によれば、第1の面および第2の面の交線(以下、稜線と呼ぶ)を垂直に切断する平面を複数求める。該切断平面と第1の面との第1の交線、および該切断平面と第2の面との第2の交線を、それぞれ、該切断平面上において、法線方向にオフセットする。2つのオフセット曲線の交点を中心として、第1の交線上の点および第2の交線上の点を両端とする円弧を描く。すべての切断平面について、該円弧を生成する。該生成された円弧の端点を接続して、フィレット面を生成する。   According to the method disclosed in Patent Document 1 below, a plurality of planes that perpendicularly cut the intersecting lines (hereinafter referred to as ridge lines) of the first surface and the second surface are obtained. A first intersection line between the cutting plane and the first surface and a second intersection line between the cutting plane and the second surface are offset in the normal direction on the cutting plane, respectively. An arc is drawn with the point on the first intersection line and the point on the second intersection line as both ends, centering on the intersection of the two offset curves. The arc is generated for all cutting planes. By connecting the end points of the generated arc, a fillet surface is generated.

下記の特許文献2には、上記の円弧の半径(以下、丸め半径と呼ぶ)を徐々に変化させることができるフィレット面作成手法が記載されている。   Patent Document 2 below describes a fillet surface creation method capable of gradually changing the radius of the arc (hereinafter referred to as a rounding radius).

下記の特許文献3には、フィレット面を生成する際、丸め半径および稜線などの生成パラメータの指定を可能にする手法が記載されている。生成パラメータの変更が行われたならば、該変更された生成パラメータに従って、フィレット面を再生成し表示する。   Patent Document 3 below describes a technique that enables specification of generation parameters such as a rounding radius and a ridge line when generating a fillet surface. If the generation parameter is changed, the fillet plane is regenerated and displayed according to the changed generation parameter.

下記の特許文献4には、所定の丸め半径によるフィレット面の一部が第1および第2の面の外側にはみ出す場合、該2つの面の少なくとも一方の一部を延長した補助面を用いて、該2つの面からはみ出す仮フィレット面を生成することが記載されている。仮フィレット面が該2つの面からはみ出す位置において該仮フィレット面を切断し、該2つの面に収まるフィレット面を生成する。
特公平7−67658号公報 特開平4−220774号公報 特開2001−92866号公報 特開2001−222560号公報
In the following Patent Document 4, when a part of a fillet surface having a predetermined rounding radius protrudes outside the first and second surfaces, an auxiliary surface that extends at least a part of the two surfaces is used. , Generating a temporary fillet surface that protrudes from the two surfaces is described. The temporary fillet surface is cut at a position where the temporary fillet surface protrudes from the two surfaces, and a fillet surface that fits in the two surfaces is generated.
Japanese Patent Publication No. 7-67658 JP-A-4-220774 JP 2001-92866 A JP 2001-222560 A

フィレット面は、従来の手法に示されるように、2つの面を、所定の丸め半径Rで滑らかに接続する。フィレット面の設計者は、該丸め半径Rを指定することにより、フィレット面の形状を特徴づける。具体的には、フィレット面のカーブ度合いが、丸め半径Rにより特徴づけられる。   The fillet surface smoothly connects the two surfaces with a predetermined rounding radius R as shown in the conventional technique. The fillet surface designer characterizes the shape of the fillet surface by designating the rounding radius R. Specifically, the curve degree of the fillet surface is characterized by the rounding radius R.

従来の手法によると、丸め半径Rのみに基づいてフィレット面の形状を特徴づけるので、フィレット面が該2つの面に接する箇所において、滑らかさに欠けることがあった。また、丸め半径Rにより、フィレット面の頂点の位置が定まるが、デザイン上の観点から、該頂点の位置を維持することが望まれる場合がある。   According to the conventional method, since the shape of the fillet surface is characterized based only on the rounding radius R, there are cases where the fillet surface lacks smoothness at the point where the two surfaces are in contact with each other. Further, the position of the vertex of the fillet surface is determined by the rounding radius R, but it may be desired to maintain the position of the vertex from the viewpoint of design.

この発明は、丸め半径Rに従うフィレット面の頂点の位置を維持しつつ、フィレット面の2つの面に対する接触がより滑らかになるようフィレット面を作成することを目的とする。さらに、この発明は、フィレット面の2つの面に対する接触の滑らかさを、設計者が容易に調整しながら、フィレット面を作成することができるようにすることを目的とする。   An object of the present invention is to create a fillet surface so that contact with two surfaces of the fillet surface becomes smoother while maintaining the position of the vertex of the fillet surface according to the rounding radius R. Furthermore, an object of the present invention is to enable a designer to create a fillet surface while easily adjusting the smoothness of contact between two surfaces of the fillet surface.

この発明の一形態によると、第1の面および第2の面をつなぐフィレット面を算出する方法は、3次元形状データを処理するコンピュータシステムの処理装置により実行され、
(a)第1の面(10)および第2の面(11)の稜線(12)を定義するステップと、
(b)稜線上の複数の箇所において、該稜線を垂直に横切る法平面(14)を算出するステップと、
(c)法平面と第1の面の第1の交線(A)および法平面と第2の面の第2の交線(B)を算出するステップと、
(d)コンピュータシステムの入力装置を介してユーザにより入力された半径RおよびR止まり位置の後退量を受け取り、該コンピュータシステムの記憶装置に記憶するステップと、
(e)記憶装置から半径Rを抽出し、該半径Rを持ち、かつ第1の交線および第2の交線に接する第1の円(21)を算出するステップと、
(f)記憶装置からR止まり位置の後退量(X)を抽出し、第1の円(21)と第1の交線(A)の第1の接点(R1)、および第1の円(21)と第2の交線(B)の第2の接点(R1’)を、該R止まり位置の後退量に従って稜線から離れる方向に後退させた第1の後退位置(R2)および第2の後退位置(R2’)を、それぞれ算出するステップと、
(g)第1の接点(R1)における第1の円の接線(22)と、第2の接点(R1’)における第1の円の接線(23)との交点(Q)を算出し、該交点と、第1の円の中心(O)とを結ぶ線を中心線として算出するステップと、
(h)中心線と第1の円との第1の交点(P)を算出するステップと、
(i)第1の交点(P)、第1の後退位置(R2)および第2の後退位置(R2’)を通る曲線であって、第1の後退位置(R2)において第1の交線(A)に対し接線連続となり、かつ第2の後退位置(R2’)において第2の交線(B)に対し接線連続となる曲線を、フィレット曲線(15)として算出するステップと、
(j)前記複数の法平面上で求められたフィレット曲線に基づいて、前記フィレット面を算出するステップと、
を含む。
According to one aspect of the present invention, a method for calculating a fillet surface connecting a first surface and a second surface is executed by a processing device of a computer system that processes three-dimensional shape data,
(A) defining the ridgeline (12) of the first surface (10) and the second surface (11);
(B) calculating a normal plane (14) perpendicularly crossing the ridge line at a plurality of locations on the ridge line;
(C) calculating a first intersection line (A) between the normal plane and the first surface and a second intersection line (B) between the normal plane and the second surface;
(D) receiving the radius R and the retraction amount of the R stop position input by the user via the input device of the computer system, and storing them in the storage device of the computer system;
(E) extracting a radius R from the storage device and calculating a first circle (21) having the radius R and in contact with the first intersection line and the second intersection line;
(F) The retraction amount (X) of the R stop position is extracted from the storage device, and the first circle (21) and the first contact (R1) of the first intersection line (A) and the first circle ( 21) and the second contact point (R1 ′) of the second intersecting line (B), the first retracted position (R2) and the second retracted position in which the second contact point (R1 ′) is retracted in the direction away from the ridge line according to the retract amount of the R stop position. Calculating a reverse position (R2 ′);
(G) calculating the intersection (Q) of the tangent (22) of the first circle at the first contact (R1) and the tangent (23) of the first circle at the second contact (R1 ′); Calculating a line connecting the intersection and the center (O) of the first circle as a center line;
(H) calculating a first intersection (P) between the center line and the first circle;
(I) A curve passing through the first intersection (P), the first retracted position (R2), and the second retracted position (R2 ′), and the first intersecting line at the first retracted position (R2) Calculating a fillet curve (15) as a fillet curve (15), which is tangent continuous to (A) and tangent continuous to the second intersection line (B) at the second retracted position (R2 ′);
(J) calculating the fillet surface based on fillet curves obtained on the plurality of normal planes;
including.

また、他の一形態では、この発明は、コンピュータに上記手法を実現させるコンピュータ・プログラムである。   In another aspect, the present invention is a computer program that causes a computer to implement the above-described method.

この発明によれば、R止まり位置(第1の円と、第1および第2の交線との接点)を後退させた点(第1および第2の後退位置)を通るようフィレット曲線が描かれるので、フィレット面の第1および第2の面に対する接触を、より滑らかにすることができる。第1および第2の後退位置において、第1および第2の交線に対して接線連続となるようフィレット曲線が生成されるので、フィレット面の第1および第2の面への接触部分における不連続性を回避することができる。また、R頂点位置(第1の円と中心線との交点)を通るようフィレット曲線が描かれるので、該R頂点の位置がフィレット面に維持される。R止まり位置の後退量を、ユーザ入力により指定することができるので、フィレット面の頂点の位置を維持しながら、フィレット面の滑らかさを調整して、所望の形状のフィレット面を作成することができる。   According to the present invention, the fillet curve is drawn so as to pass through the point (first and second retracted positions) where the R stop position (contact point between the first circle and the first and second intersecting lines) is retracted. Therefore, the contact with respect to the 1st and 2nd surface of a fillet surface can be made smoother. At the first and second retracted positions, the fillet curve is generated so as to be tangential to the first and second intersecting lines, so that the fillet surface is not in contact with the first and second surfaces. Continuity can be avoided. In addition, since the fillet curve is drawn so as to pass through the R vertex position (intersection of the first circle and the center line), the position of the R vertex is maintained on the fillet plane. Since the retraction amount of the R stop position can be designated by user input, the fillet surface having a desired shape can be created by adjusting the smoothness of the fillet surface while maintaining the position of the vertex of the fillet surface. it can.

次に図面を参照してこの発明の実施の形態を説明する。図1は、本発明の一実施例に従う、3次元形状処理のためのコンピュータシステム1のブロック図を示す。記憶装置3には、3次元形状モデルに関するデータ、および該データを処理するためのプログラムが記憶されている。処理装置2はCPU(プロセッサ)を備えており、記憶装置3に記憶されたプログラムに従って、記憶装置3に記憶されたデータを用い、3次元形状モデルに関する様々な処理(生成、加工等)を実行する。記憶装置3は、ROM(読み出し専用メモリ)およびRAM(ランダムアクセスメモリ)などのメモリ、およびハードディスク装置などの補助記憶装置を含むことができる。   Next, an embodiment of the present invention will be described with reference to the drawings. FIG. 1 shows a block diagram of a computer system 1 for three-dimensional shape processing according to one embodiment of the present invention. The storage device 3 stores data related to the three-dimensional shape model and a program for processing the data. The processing device 2 includes a CPU (processor), and executes various processes (generation, processing, etc.) related to the three-dimensional shape model using the data stored in the storage device 3 in accordance with the program stored in the storage device 3. To do. The storage device 3 can include a memory such as a ROM (Read Only Memory) and a RAM (Random Access Memory), and an auxiliary storage device such as a hard disk device.

入力装置4は、キーボードおよびマウスを備えることができる。入力装置4は、ユーザに対する入力インターフェースを提供する。入力装置4を介して、ユーザは、該3次元形状処理システムにデータおよびコマンド(命令)を入力することができる。処理装置2は、入力装置4を介して入力されたデータおよびコマンドを受け取り、3次元形状モデルに関する様々な処理を実行する。   The input device 4 can include a keyboard and a mouse. The input device 4 provides an input interface for the user. The user can input data and commands (commands) to the three-dimensional shape processing system via the input device 4. The processing device 2 receives data and commands input via the input device 4 and executes various processes relating to the three-dimensional shape model.

表示装置5は、CRTなどのディスプレイを備え、処理装置2によって処理された結果、および入力装置4を介して入力されたデータなどを、ユーザに表示することができる。ユーザは、表示装置5上に表示された3次元形状モデルを参照しながら、該3次元形状モデルに関する様々な処理を処理装置2に実行させることができる。   The display device 5 includes a display such as a CRT, and can display a result processed by the processing device 2 and data input via the input device 4 to the user. The user can cause the processing device 2 to execute various processes related to the three-dimensional shape model while referring to the three-dimensional shape model displayed on the display device 5.

図示されていないが、プリンタなどの他の周辺装置を3次元形状処理システム1に含めることができる。また、3次元形状処理システム1をネットワーク上のサーバに設け、該システム1を、遠隔のコンピュータにより該ネットワークを介してアクセス可能なように構成することができる。遠隔のコンピュータは、該システム1から所望の3次元形状モデルデータを抽出して、自身のコンピュータ上で、それらを処理することができる。   Although not shown, other peripheral devices such as a printer can be included in the three-dimensional shape processing system 1. In addition, the three-dimensional shape processing system 1 can be provided in a server on a network, and the system 1 can be configured to be accessible by a remote computer via the network. A remote computer can extract desired three-dimensional shape model data from the system 1 and process them on its own computer.

図2は、本願発明に従うフィレット面を算出するプロセスのフローチャートを示す。該プロセスは、記憶装置3に記憶されたプログラムを処理装置2が実行することにより実現される。図3は、該プロセスに従って作成されるフィレット面の一例を示す。図3を参照しながら、図2のプロセスを説明する。   FIG. 2 shows a flowchart of a process for calculating a fillet surface according to the present invention. This process is realized by the processing device 2 executing the program stored in the storage device 3. FIG. 3 shows an example of a fillet surface created according to the process. The process of FIG. 2 will be described with reference to FIG.

記憶装置3には、3次元形状モデルのデータが格納されている。ユーザは、これらの3次元形状モデルのデータを、表示装置5に表示させることができる。ユーザは、入力装置4を介して、表示装置5上に表示された3次元形状モデルのデータから、第1の面10および第2の面11を選択することができる。図3の(a)に、一例として、該2つの面が示されている。図では、第1および第2の面は平面のように示されているが、これらは曲面でもよい。ステップS1において、処理装置2は、入力装置4を介して入力された、該第1の面10および第2の面11の選択を受け取る。処理装置2は、選択された2つの面を、表示装置5上に表示させることができる。   The storage device 3 stores data of a three-dimensional shape model. The user can display data of these three-dimensional shape models on the display device 5. The user can select the first surface 10 and the second surface 11 from the data of the three-dimensional shape model displayed on the display device 5 via the input device 4. FIG. 3A shows the two surfaces as an example. In the figure, the first and second surfaces are shown as planes, but these may be curved surfaces. In step S <b> 1, the processing device 2 receives the selection of the first surface 10 and the second surface 11 input via the input device 4. The processing device 2 can display the two selected surfaces on the display device 5.

ユーザは、表示装置5上に表示された第1の面10および第2の面11を参照しながら、入力装置4を介して、フィレット面を作成する方向を指定することができる。図3の(a)の例では、フィレット面を作成することができる方向として、D1からD4の4つの方向がある。この実施例では、方向D1にフィレット面を作成する。処理装置2は、ステップS2において、ユーザにより指定された方向D1を受け取り、フィレット面作成方向D1を、第1および第2の面10および11に関連づけて記憶装置3に記憶する。   The user can specify the direction in which the fillet surface is created via the input device 4 while referring to the first surface 10 and the second surface 11 displayed on the display device 5. In the example of FIG. 3A, there are four directions D1 to D4 as directions in which the fillet surface can be created. In this embodiment, a fillet surface is created in the direction D1. In step S <b> 2, the processing device 2 receives the direction D <b> 1 designated by the user, and stores the fillet surface creation direction D <b> 1 in the storage device 3 in association with the first and second surfaces 10 and 11.

ユーザは、表示装置5上に表示された第1の面10および第2の面11を参照しながら、入力装置4を介して、稜線12を指定することができる。たとえばマウスによるクリックにより、稜線となるラインを指定することができる。稜線12は、第1の面10と第2の面11とが交差する線を規定する。第1の面10と第2の面11が実際には交差していない場合には、第1の面10を延長した面と、第2の面11の延長した面とが交差する線を、稜線12として指定することができる。また、ユーザが、表示装置5上に表示された第1の面10および第2の面11の位置を調整しながら、稜線12の位置を調整してもよい。処理装置2は、指定された稜線12を表す式を、第1および第2の面10および11に関連づけて記憶装置3に記憶する。   The user can specify the ridge line 12 via the input device 4 while referring to the first surface 10 and the second surface 11 displayed on the display device 5. For example, a line to be a ridgeline can be designated by clicking with the mouse. The ridge line 12 defines a line where the first surface 10 and the second surface 11 intersect. When the first surface 10 and the second surface 11 do not actually intersect, a line where the surface that extends the first surface 10 and the surface that extends the second surface 11 intersects, The edge line 12 can be designated. In addition, the user may adjust the position of the ridge line 12 while adjusting the positions of the first surface 10 and the second surface 11 displayed on the display device 5. The processing device 2 stores the expression representing the designated ridgeline 12 in the storage device 3 in association with the first and second surfaces 10 and 11.

ステップS4において、処理装置2は、図3の(a)の点13a、13b、、、に示されるように、稜線12を所定間隔に区切る。それぞれの点13a、13b、、、は、その位置と共に記憶装置3に記憶される。ステップS5において、処理装置2は、それぞれの点13a、13b、、、において、稜線12を垂直方向に切断する平面、すなわち法平面を定義する。図3の(b)には、一例として、点13aにおける法平面14が示されている。定義された法平面を表す式は、それぞれの点13a、13b、、、に関連づけられて、記憶装置3に記憶される。   In step S <b> 4, the processing device 2 divides the ridge line 12 at a predetermined interval as indicated by points 13 a, 13 b, and FIG. Each point 13a, 13b, is stored in the storage device 3 along with its position. In step S <b> 5, the processing device 2 defines a plane that cuts the ridge line 12 in the vertical direction at each point 13 a, 13 b, that is, a normal plane. FIG. 3B shows a normal plane 14 at the point 13a as an example. The formula representing the defined normal plane is stored in the storage device 3 in association with the respective points 13a, 13b,.

ステップS6において、処理装置2は、法平面14と第1の面10との交線Aを算出し、さらに、法平面14と第2の面11との交線Bを算出する。交線AおよびBを表す式は、法平面14と関連づけられて、記憶装置3に記憶される。   In step S <b> 6, the processing device 2 calculates an intersection line A between the normal plane 14 and the first surface 10, and further calculates an intersection line B between the normal plane 14 and the second surface 11. Expressions representing the intersection lines A and B are stored in the storage device 3 in association with the normal plane 14.

ステップS7において、処理装置2は、図3の(b)に示されるような、法平面14上で、交線AおよびBを接続するフィレット曲線15を算出するルーチンを実行する。このルーチンの詳細については、後述される。   In step S <b> 7, the processing device 2 executes a routine for calculating a fillet curve 15 connecting the intersection lines A and B on the normal plane 14 as shown in FIG. 3B. Details of this routine will be described later.

ステップS8において、すべての法平面においてフィレット曲線が算出されたかどうかを判断する。最初にこのステップを実行するときは、この判断がNoであるので、ステップS7に戻り、次の法平面(点13bに関連づけられた法平面)について、フィレット曲線を算出するルーチンを実行する。   In step S8, it is determined whether fillet curves have been calculated in all normal planes. When this step is executed for the first time, since this determination is No, the routine returns to step S7, and a routine for calculating a fillet curve is executed for the next normal plane (the normal plane associated with the point 13b).

すべての法平面についてフィレット曲線が算出されると、ステップS8の判断がYesになる。ステップS9に進み、すべての法平面についてのフィレット曲線を通るよう、フィレット面16(網掛けで示されている)を求める。   When fillet curves are calculated for all normal planes, the determination in step S8 is Yes. Proceeding to step S9, a fillet surface 16 (shown by shading) is obtained so as to pass through the fillet curves for all normal planes.

本願発明は、フィレット曲線を算出する新たな手法を提案する。本願発明に従う手法は、図2のステップS7のルーチンで実行される。   The present invention proposes a new method for calculating a fillet curve. The method according to the present invention is executed in the routine of step S7 in FIG.

まず、発明の理解を助けるため、図4を参照して、本願発明の原理を説明する。図には、本願発明の一実施例に従って生成されたフィレット曲線15が示されている。   First, in order to help understanding of the invention, the principle of the present invention will be described with reference to FIG. The figure shows a fillet curve 15 generated according to one embodiment of the present invention.

フィレット曲線を生成する際に、2つのパラメータが、ユーザにより指定されることができる。第1のパラメータは、R値である。R値は、交線AおよびBに接する円21の半径を示す。R値を指定することにより、交線AおよびBに接する円21が一義的に定まる。   In generating the fillet curve, two parameters can be specified by the user. The first parameter is the R value. The R value indicates the radius of the circle 21 in contact with the intersection lines A and B. By specifying the R value, the circle 21 in contact with the intersection lines A and B is uniquely determined.

第2のパラメータは、R止まり位置の後退量である。R止まり位置は、円21の交線AおよびBの接点であり、R1およびR1’でそれぞれ示されている。R止まり位置R1およびR1’における円21の接線が、22および23でそれぞれ表されている。R止まり位置の後退量は、R止まり位置R1およびR1’を、接線22および23に沿って、それぞれ、矢印方向26(稜線12から離れる方向)に後退させる量を示す。後退させることにより得られる点R3およびR3’から、交線AおよびBに垂線をおろし、該垂線と交線AおよびBとの交点が、R2およびR2’でそれぞれ表されている。   The second parameter is the reverse amount of the R stop position. The R stop position is the contact point of the intersection lines A and B of the circle 21 and is indicated by R1 and R1 ', respectively. The tangent lines of the circle 21 at the R stop positions R1 and R1 'are represented by 22 and 23, respectively. The retreat amount of the R stop position indicates an amount of retreating the R stop positions R1 and R1 'along the tangent lines 22 and 23 in the arrow direction 26 (the direction away from the ridgeline 12). From the points R3 and R3 'obtained by retreating, perpendicular lines are drawn on the intersection lines A and B, and the intersection points of the perpendicular lines and the intersection lines A and B are represented by R2 and R2', respectively.

この実施例では、接線22および23の交点Qを求め、該交点QとR止まり位置R1との距離に対する割合で、後退量を指定する。後退量をXとすると、以下の式(1)が成立する。   In this embodiment, the intersection point Q of the tangent lines 22 and 23 is obtained, and the retreat amount is designated as a ratio to the distance between the intersection point Q and the R stop position R1. When the reverse amount is X, the following equation (1) is established.

交点Qと点R3間の距離:交点Qと点R1間の距離=X:1
ただし、X>1 (1)
点R3’についても、同様の式が成立する。
Distance between intersection Q and point R3: distance between intersection Q and point R1 = X: 1
However, X> 1 (1)
The same formula holds for the point R3 ′.

点Pは、円21と直線OQ(これは、円21の中心Oと交点Qとを結ぶ線)との交点であり、R頂点位置を示す。フィレット曲線15は、点R2、点P、および点R2’を通り、かつ交線AおよびBに対して接線連続となるように描かれる。より具体的には、点R2、点Pおよび点R2’を通り、点R2および点R2’の位置で交線AおよびBにそれぞれ接線連続となる3次のNURBS曲線が描かれる。接線連続であるので、フィレット曲線15と交線Aとは、点R2において位置的に連続しており、かつ点R2における接線方向が一致している。また、フィレット曲線15と交線Bとは、点R2’において位置的に連続しており、かつ点R2’における接線方向が一致している。   A point P is an intersection of the circle 21 and the straight line OQ (this is a line connecting the center O of the circle 21 and the intersection point Q), and indicates the R vertex position. The fillet curve 15 is drawn so as to pass through the point R2, the point P, and the point R2 'and be tangential to the intersecting lines A and B. More specifically, a third-order NURBS curve is drawn that passes through point R2, point P, and point R2 'and is tangentially continuous with intersection lines A and B at the positions of point R2 and point R2'. Since it is tangent continuous, the fillet curve 15 and the intersection line A are continuous in position at the point R2, and the tangent directions at the point R2 are the same. Further, the fillet curve 15 and the intersection line B are continuous in position at the point R2 ', and the tangential directions at the point R2' are the same.

従来、フィレット曲線は、R値のみに基づいて、その形状、特にその滑らかさが特徴づけられていた。R値のみに基づくので、フィレット曲線と、第1および第2の面10および11との接続部分における滑らかさが十分でない場合があった。また、R値のみでフィレット曲線を特徴づけようとすると、生成されるフィレット曲線の形状が限定される。前述したように、たとえばデザイン上の観点から、R頂点位置Pの位置が維持されるようにフィレット曲線を生成することが望まれることがある。   Conventionally, the fillet curve has been characterized by its shape, particularly its smoothness, based solely on the R value. Since it is based only on the R value, the smoothness at the connection between the fillet curve and the first and second surfaces 10 and 11 may not be sufficient. Further, when trying to characterize the fillet curve only by the R value, the shape of the generated fillet curve is limited. As described above, it may be desired to generate the fillet curve so that the position of the R vertex position P is maintained from the viewpoint of design, for example.

本願発明によれば、点R2およびR2’は、円21の止まり位置R1およびR1’をそれぞれ後退させたものなので、交線AおよびBに対して、フィレット曲線15をより滑らかに接触させることができる。フィレット曲線15が、交線A、Bに対して接線連続であるよう生成されるので、フィレット曲線15を、交線AおよびBに対してより滑らかに接触させることができる。R頂点位置Pを通るようにフィレット曲線が描かれるので、R頂点の位置が、フィレット曲線に維持される。また、R止まり位置の後退量は、ユーザが所望の値に設定することができる。この値を調整することにより、R頂点の位置を維持しながら、フィレット曲線15のリブ(カーブ)を、様々な形状に調整することができる。   According to the present invention, since the points R2 and R2 ′ are obtained by retreating the stop positions R1 and R1 ′ of the circle 21, respectively, the fillet curve 15 can be more smoothly brought into contact with the intersecting lines A and B. it can. Since the fillet curve 15 is generated so as to be tangential to the intersection lines A and B, the fillet curve 15 can be brought into contact with the intersection lines A and B more smoothly. Since the fillet curve is drawn so as to pass through the R vertex position P, the position of the R vertex is maintained in the fillet curve. Further, the retraction amount of the R stop position can be set to a desired value by the user. By adjusting this value, the rib (curve) of the fillet curve 15 can be adjusted to various shapes while maintaining the position of the R vertex.

図5は、図2のステップS7で実施される、フィレット曲線を算出するプロセスのフローチャートである。該プロセスは、記憶装置3に記憶されたプログラムに従い、処理装置2によって実施される。該プロセスを、図6〜図8を参照しつつ説明する。   FIG. 5 is a flowchart of a process for calculating a fillet curve, which is performed in step S7 of FIG. The process is performed by the processing device 2 according to a program stored in the storage device 3. The process will be described with reference to FIGS.

ユーザは、表示装置5上に、パラメータ入力のための画面を表示させ、入力装置4を介して、フィレット曲線に関するパラメータを入力することができる。図6は、このような画面の一例を示す。入力されるパラメータは、前述したように、R値、およびR止まり位置の後退量である。   The user can display a parameter input screen on the display device 5 and input parameters related to the fillet curve via the input device 4. FIG. 6 shows an example of such a screen. As described above, the input parameters are the R value and the retraction amount of the R stop position.

符号101に示されるボックスに入力されるのが、円21の半径Rを示すR値である。符号102に示されるボックスに入力されるのが、上記のR止まり位置の後退量Xをパーセンテージで表した値である。後退させない時、後退量は100%である。後退量の上限は、200%と示されているが、これは一例であり、他の値を設定することもできる。   An R value indicating the radius R of the circle 21 is input to the box indicated by reference numeral 101. What is input in the box indicated by reference numeral 102 is a value representing the above-described reverse amount X of the R stop position as a percentage. When not retreating, the retreating amount is 100%. Although the upper limit of the retraction amount is shown as 200%, this is an example, and other values can be set.

ユーザによるOKボタンのクリックに応答して、処理装置2は、これらの入力されたパラメータを受け取り、記憶装置3に記憶する。   In response to the user clicking the OK button, the processing device 2 receives these input parameters and stores them in the storage device 3.

ステップS22において、処理装置2は、入力パラメータとして記憶されたR値を記憶装置3から読み出し、図7の(a)に示されるように、交線AおよびBを、法平面14上で法線方向に該R値だけオフセットする。オフセット曲線A’およびB’の交点Oを算出し、該交点Oを中心とした半径Rの円21を表す式を算出する。円21における交線AおよびB上の点R1およびR1’の位置(R止まり位置)を算出する。これらの算出された円21の式、点R1およびR1’の位置は、記憶装置3に記憶される。   In step S22, the processing device 2 reads the R value stored as the input parameter from the storage device 3, and displays the intersection lines A and B on the normal plane 14 as shown in (a) of FIG. Offset in the direction by the R value. An intersection point O between the offset curves A ′ and B ′ is calculated, and an equation representing a circle 21 having a radius R centered on the intersection point O is calculated. The positions (R stop positions) of the points R1 and R1 'on the intersection lines A and B in the circle 21 are calculated. The calculated equation of the circle 21 and the positions of the points R1 and R1 'are stored in the storage device 3.

ステップS23において、図7の(b)に示されるように、処理装置2は、R止まり位置R1およびR1’における接線22および23を表す式を算出し、該接線22および23の交点Qを求める。こうして、円21の中心Oと交点Qとを結ぶ直線OQを表す式を算出する。   In step S23, as shown in FIG. 7B, the processing device 2 calculates an expression representing the tangent lines 22 and 23 at the R stop positions R1 and R1 ′, and obtains an intersection point Q of the tangent lines 22 and 23. . In this way, an equation representing the straight line OQ connecting the center O of the circle 21 and the intersection point Q is calculated.

ステップS24において、円21を表す式と、直線OQを表す式とに基づいて、円21と直線OQの交点P(R頂点位置)を算出する。   In step S24, an intersection point P (R vertex position) between the circle 21 and the straight line OQ is calculated based on the formula representing the circle 21 and the formula representing the straight line OQ.

ステップS25において、処理装置2は、記憶装置3から、ユーザによって指定されたR止まり位置の後退量パラメータXを抽出し、以下の式(2)のように、点R1を後退させる距離を求める。   In step S25, the processing device 2 extracts the retraction amount parameter X of the R stop position designated by the user from the storage device 3, and obtains the distance for retreating the point R1 as in the following equation (2).

後退距離(点R1と点R3間距離)=(点Qと点R1間の距離)×(X−1)
(2)
図8の(a)に示すように、交線Aに沿って、R止まり位置R1を、該算出した後退距離だけ後退させ、該後退により得られる点R3の位置を算出する。点R3から交線Aに垂線をおろし、該垂線と交線Aの交点R2を求める。点R2の位置が、記憶装置3に記憶される。
Retreat distance (distance between point R1 and point R3) = (distance between point Q and point R1) × (X−1)
(2)
As shown in FIG. 8A, the R stop position R1 is moved backward along the intersection line A by the calculated backward movement distance, and the position of the point R3 obtained by the backward movement is calculated. A perpendicular line is drawn from the point R3 to the intersection line A, and an intersection point R2 between the perpendicular line and the intersection line A is obtained. The position of the point R2 is stored in the storage device 3.

ステップS26において、処理装置2は、図8の(a)に示すように、交線Bに沿って、R止まり位置R1’を、該算出した後退距離だけ後退させ、該後退により得られる点R3’の位置を算出する。点R3’から交線Bに垂線をおろし、該垂線と交線Bの交点R2’を求める。点R2’の位置は、記憶装置3に記憶される。   In step S26, the processing device 2 retreats the R stop position R1 ′ by the calculated retreat distance along the intersection line B as shown in FIG. Calculate the position of '. A perpendicular line is drawn from the point R3 'to the intersection line B, and an intersection point R2' between the perpendicular line and the intersection line B is obtained. The position of the point R <b> 2 ′ is stored in the storage device 3.

ステップ27において、図8の(b)に示すように、点P、点R2および点R2’を通り、点R2において交線Aと接線連続となり、かつ点R2’において交線Bと接線連続となる曲線を、フィレット曲線15として求める。   In step 27, as shown in FIG. 8 (b), passing through point P, point R2, and point R2 ′, tangent continuation with intersection A at point R2, and continuation tangent with intersection B at point R2 ′ This curve is obtained as the fillet curve 15.

フィレット曲線15を参照すると、円21のR頂点Pの位置は、フィレット曲線15において維持されている。また、R止まり位置R1およびR1’を後退させた点R2およびR2’において、第1および第2の交線AおよびBに接するので、フィレット曲線15から交線AおよびBに対する傾きがより滑らかになる。点R2およびR2’において、交線AおよびBに接線連続となるフィレット曲線15が描かれるので、フィレット曲線15と交線A、Bに対する不連続性を回避することができる。R止まり位置の後退量を調整しながら、フィレット曲線の滑らかさを細かく調整することができる。   Referring to the fillet curve 15, the position of the R vertex P of the circle 21 is maintained in the fillet curve 15. In addition, at the points R2 and R2 ′ where the R-stop positions R1 and R1 ′ are retracted, the first and second intersecting lines A and B are in contact with each other. Become. At the points R2 and R2 ', the fillet curve 15 that is tangent continuous to the intersecting lines A and B is drawn, so that discontinuity with respect to the fillet curve 15 and the intersecting lines A and B can be avoided. The smoothness of the fillet curve can be finely adjusted while adjusting the retraction amount of the R stop position.

この発明の一実施例に従う、3次元形状システムのブロック図。The block diagram of the three-dimensional shape system according to one Example of this invention. この発明の一実施例に従う、フィレット面を作成するプロセスのフローチャート。2 is a flowchart of a process for creating a fillet surface according to one embodiment of the present invention. この発明の一実施例に従う、3次元形状モデルにおけるフィレット面を示す図。The figure which shows the fillet surface in the three-dimensional shape model according to one Example of this invention. この発明の一実施例に従う、フィレット曲線を算出する手法の原理を概略的に示す図。The figure which shows schematically the principle of the method of calculating a fillet curve according to one Example of this invention. この発明の他の実施例に従う、フィレット曲線を算出するプロセスのフローチャート。6 is a flowchart of a process for calculating a fillet curve according to another embodiment of the present invention. この発明の一実施例に従う、パラメータを入力するためのダイアログボックスの一例を示す図。The figure which shows an example of the dialog box for inputting a parameter according to one Example of this invention. この発明の一実施例に従う、フィレット曲線の算出プロセスの一過程を示す図。The figure which shows one process of the calculation process of a fillet curve according to one Example of this invention. この発明の一実施例に従う、フィレット曲線の算出プロセスの一過程を示す図。The figure which shows one process of the calculation process of a fillet curve according to one Example of this invention.

符号の説明Explanation of symbols

1 3次元形状システム
2 処理装置
3 記憶装置
4 入力装置
5 表示装置
DESCRIPTION OF SYMBOLS 1 3D shape system 2 Processing apparatus 3 Memory | storage device 4 Input device 5 Display apparatus

Claims (2)

3次元形状データを処理するコンピュータシステムの処理装置により実行され、第1の面および第2の面をつなぐフィレット面を算出する方法であって、
(a)前記第1の面および第2の面の稜線を定義するステップと、
(b)前記稜線上の複数の箇所において、該稜線を垂直に横切る法平面を算出するステップと、
(c)前記法平面と前記第1の面の第1の交線および前記法平面と前記第2の面の第2の交線を算出するステップと、
(d)前記コンピュータシステムの入力装置を介してユーザにより入力された半径RおよびR止まり位置の後退量を受け取り、該コンピュータシステムの記憶装置に記憶するステップと、
(e)前記記憶装置から前記半径Rを抽出し、該半径Rを持ち、かつ前記第1の交線および第2の交線に接する第1の円を算出するステップと、
(f)前記記憶装置から前記R止まり位置の後退量を抽出し、前記第1の円と前記第1の交線の第1の接点、および該第1の円と前記第2の交線の第2の接点を、該R止まり位置の後退量に従って前記稜線から離れる方向に後退させた第1の後退位置および第2の後退位置を、それぞれ算出するステップと、
(g)前記第1の接点における前記第1の円の接線と、前記第2の接点における前記第1の円の接線との交点を算出し、該交点と、前記第1の円の中心とを結ぶ線を中心線として算出するステップと、
(h)前記中心線と前記第1の円との第1の交点を算出するステップと、
(i)前記第1の交点、前記第1の後退位置および前記第2の後退位置を通る曲線であって、該第1の後退位置において前記第1の交線に対し接線連続となり、かつ該第2の後退位置において前記第2の交線に対し接線連続となる曲線を、フィレット曲線として算出するステップと、
(j)前記複数の法平面上で求められたフィレット曲線に基づいて、前記フィレット面を算出するステップと、
を含む方法。
A method of calculating a fillet surface connecting a first surface and a second surface, which is executed by a processing device of a computer system that processes three-dimensional shape data,
(A) defining ridge lines of the first surface and the second surface;
(B) calculating a normal plane perpendicularly crossing the ridge line at a plurality of locations on the ridge line;
(C) calculating a first intersection line between the normal plane and the first surface and a second intersection line between the normal plane and the second surface;
(D) receiving the radius R and the retraction amount of the R stop position inputted by the user via the input device of the computer system, and storing them in the storage device of the computer system;
(E) extracting the radius R from the storage device and calculating a first circle having the radius R and in contact with the first intersection line and the second intersection line;
(F) Extracting the retraction amount of the R stop position from the storage device, the first contact point of the first circle and the first intersection line, and the first circle and the second intersection line Calculating a first retracted position and a second retracted position in which the second contact is retracted in a direction away from the ridge line according to the retract amount of the R stop position;
(G) calculating an intersection between the tangent of the first circle at the first contact and the tangent of the first circle at the second contact; and the intersection and the center of the first circle Calculating a line connecting the two as a center line;
(H) calculating a first intersection of the center line and the first circle;
(I) a curve that passes through the first intersection, the first retracted position, and the second retracted position, and is tangentially continuous to the first intersecting line at the first retracted position; and Calculating a curve that is tangential to the second line of intersection at a second retracted position as a fillet curve;
(J) calculating the fillet surface based on fillet curves obtained on the plurality of normal planes;
Including methods.
3次元形状データを処理するコンピュータに、
(a)前記第1の面および第2の面の稜線を定義するステップと、
(b)前記稜線上の複数の箇所において、該稜線を垂直に横切る法平面を算出するステップと、
(c)前記法平面と前記第1の面の第1の交線および前記法平面と前記第2の面の第2の交線を算出するステップと、
(d)前記コンピュータシステムの入力装置を介してユーザにより入力された半径RおよびR止まり位置の後退量を受け取り、該コンピュータシステムの記憶装置に記憶するステップと、
(e)前記記憶装置から前記半径Rを抽出し、該半径Rを持ち、かつ前記第1の交線および第2の交線に接する第1の円を算出するステップと、
(f)前記記憶装置から前記R止まり位置の後退量を抽出し、前記第1の円と前記第1の交線の第1の接点、および該第1の円と前記第2の交線の第2の接点を、該R止まり位置の後退量に従って前記稜線から離れる方向に後退させた第1の後退位置および第2の後退位置を、それぞれ算出するステップと、
(g)前記第1の接点における前記第1の円の接線と、前記第2の接点における前記第1の円の接線との交点を算出し、該交点と、前記第1の円の中心とを結ぶ線を中心線として算出するステップと、
(h)前記中心線と前記第1の円との第1の交点を算出するステップと、
(i)前記第1の交点、前記第1の後退位置および前記第2の後退位置を通る曲線であって、該第1の後退位置において前記第1の交線に対し接線連続となり、かつ該第2の後退位置において前記第2の交線に対し接線連続となる曲線を、フィレット曲線として算出するステップと、
(j)前記複数の法平面上で求められたフィレット曲線に基づいて、前記フィレット面を算出するステップと、
を実行させて、前記第1の面および第2の面をつなぐフィレット面を算出するための、プログラム。
In a computer that processes 3D shape data,
(A) defining ridge lines of the first surface and the second surface;
(B) calculating a normal plane perpendicularly crossing the ridge line at a plurality of locations on the ridge line;
(C) calculating a first intersection line between the normal plane and the first surface and a second intersection line between the normal plane and the second surface;
(D) receiving the radius R and the retraction amount of the R stop position inputted by the user via the input device of the computer system, and storing them in the storage device of the computer system;
(E) extracting the radius R from the storage device and calculating a first circle having the radius R and in contact with the first intersection line and the second intersection line;
(F) Extracting the retraction amount of the R stop position from the storage device, the first contact point of the first circle and the first intersection line, and the first circle and the second intersection line Calculating a first retracted position and a second retracted position in which the second contact is retracted in a direction away from the ridge line according to the retract amount of the R stop position;
(G) calculating an intersection between the tangent of the first circle at the first contact and the tangent of the first circle at the second contact; and the intersection and the center of the first circle Calculating a line connecting the two as a center line;
(H) calculating a first intersection of the center line and the first circle;
(I) a curve that passes through the first intersection, the first retracted position, and the second retracted position, and is tangentially continuous to the first intersecting line at the first retracted position; and Calculating a curve that is tangential to the second line of intersection at a second retracted position as a fillet curve;
(J) calculating the fillet surface based on a fillet curve obtained on the plurality of normal planes;
Is executed to calculate a fillet surface connecting the first surface and the second surface.
JP2004214565A 2004-07-22 2004-07-22 Method and program for calculating fillet surface Expired - Fee Related JP4459745B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004214565A JP4459745B2 (en) 2004-07-22 2004-07-22 Method and program for calculating fillet surface

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004214565A JP4459745B2 (en) 2004-07-22 2004-07-22 Method and program for calculating fillet surface

Publications (2)

Publication Number Publication Date
JP2006039661A JP2006039661A (en) 2006-02-09
JP4459745B2 true JP4459745B2 (en) 2010-04-28

Family

ID=35904633

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004214565A Expired - Fee Related JP4459745B2 (en) 2004-07-22 2004-07-22 Method and program for calculating fillet surface

Country Status (1)

Country Link
JP (1) JP4459745B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5345957B2 (en) * 2010-01-21 2013-11-20 本田技研工業株式会社 Design support system and design support program

Also Published As

Publication number Publication date
JP2006039661A (en) 2006-02-09

Similar Documents

Publication Publication Date Title
EP2600315B1 (en) Creating a surface from a plurality of 3D curves
JP4857012B2 (en) Method for computer-aided design (CAD) of modeled objects having several faces
US7643026B2 (en) NURBS surface deformation apparatus and the method using 3D target curve
JP4991424B2 (en) How to generate a symmetric parametric surface for a specific symmetry operation
US9047704B2 (en) Method for filleting 3D mesh edges by subivision
JP3574202B2 (en) Graphic I / O device
KR100914218B1 (en) System and method for calculating loft surfaces using ?d scan data
KR20110111259A (en) Design of a part modeled by parallel geodesic curves
KR20130123336A (en) Designing a 3d modeled object
US8525838B2 (en) Associative fillet
JP2010277115A (en) Harness verification device and harness verification program
JPH07306888A (en) Method for execution of boolean operation regarding geometric graphic object in cad system
JP2007102595A (en) Analysis mesh generation device
JP4459745B2 (en) Method and program for calculating fillet surface
US20150206342A1 (en) Methods and Systems for Generating Continuous Surfaces from Polygonal Data
JP6150805B2 (en) Data processing apparatus, method executed by data processing apparatus, and non-volatile computer-readable medium in which instructions executable by data processing apparatus are encoded
JP2006039668A (en) Method and program for calculating fillet surface
US8990050B2 (en) Systems and methods of updating graphical objects
JP2007156604A (en) Curved surface creation method, curved surface creation program and three-dimensional shape processor
JP2009237612A (en) Program, apparatus and method for generating midplane mesh data
JP2007058748A (en) Interpolation path generation method in nc processing of curved surface
JP4912756B2 (en) Polygon data dividing method and polygon data dividing device
JP4237180B2 (en) Unprocessed shape extraction device and extraction method
JP2007331037A (en) Machining area setting method for die and its device
JP2006106938A (en) Cad apparatus, method of creating cad drawing, cad drawing creating program and program medium recording the program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20061129

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100201

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100210

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20130219

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20130219

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20140219

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees