JP4241778B2 - Surface element distortion detection apparatus, surface element distortion detection method, and program - Google Patents

Surface element distortion detection apparatus, surface element distortion detection method, and program Download PDF

Info

Publication number
JP4241778B2
JP4241778B2 JP2006206918A JP2006206918A JP4241778B2 JP 4241778 B2 JP4241778 B2 JP 4241778B2 JP 2006206918 A JP2006206918 A JP 2006206918A JP 2006206918 A JP2006206918 A JP 2006206918A JP 4241778 B2 JP4241778 B2 JP 4241778B2
Authority
JP
Japan
Prior art keywords
distortion
curvature
ridge line
surface element
surface elements
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2006206918A
Other languages
Japanese (ja)
Other versions
JP2008033678A (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.)
Toyota Motor Corp
Original Assignee
Toyota Motor Corp
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 Toyota Motor Corp filed Critical Toyota Motor Corp
Priority to JP2006206918A priority Critical patent/JP4241778B2/en
Priority to PCT/IB2007/002152 priority patent/WO2008012668A2/en
Publication of JP2008033678A publication Critical patent/JP2008033678A/en
Application granted granted Critical
Publication of JP4241778B2 publication Critical patent/JP4241778B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T13/00Animation
    • G06T13/203D [Three Dimensional] animation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/20Finite element generation, e.g. wire-frame surface description, tesselation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2210/00Indexing scheme for image generation or computer graphics
    • G06T2210/44Morphing

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Graphics (AREA)
  • Geometry (AREA)
  • Software Systems (AREA)
  • Processing Or Creating Images (AREA)
  • Image Generation (AREA)
  • Image Processing (AREA)

Description

本発明は、設計支援技術に関する。   The present invention relates to design support technology.

画像データを滑らかに変化させて変形する処理技術としてモーフィングが知られている。さらに、このモーフィング技術を3次元CAD(Computer Aided Design)に適用した
システムも知られている。そのようなシステムでは、ポインティングデバイスのような操作手段によってユーザ操作を受け付け、3次元モデルを変形する。このような3次元モデルは、一般に、ポリゴン、パッチ(ポリゴンそのもの、または、複数のポリゴンの組合せ)、サーフェイスと呼ばれる曲面等を組み合わせて形成される。
Morphing is known as a processing technique for smoothly changing and deforming image data. Furthermore, a system in which this morphing technology is applied to a three-dimensional CAD (Computer Aided Design) is also known. In such a system, a user operation is accepted by an operating means such as a pointing device, and the three-dimensional model is deformed. Such a three-dimensional model is generally formed by combining polygons, patches (polygons themselves or a combination of a plurality of polygons), curved surfaces called surfaces, and the like.

一般に3次元CADでは、立体モデルが作成されたのち、種々の解析のため、立体モデルが、複数のメッシュ(例えば、テトラメッシュ等)に分解される。そして、解析が実行されるが、解析結果が満足できるものでない場合、立体モデルに変更を加える必要が生じることがある。この場合、3次元CADによって元の立体モデルを変更したのでは、再度メッシュへの分解が必要となり、工数が多くなる。そこで、メッシュに分解された状態で、3次元形状をモーフィングにより変形することが行われている。   In general, in a three-dimensional CAD, after a three-dimensional model is created, the three-dimensional model is decomposed into a plurality of meshes (for example, a tetra mesh) for various analyses. Then, the analysis is performed, but if the analysis result is not satisfactory, it may be necessary to change the three-dimensional model. In this case, if the original three-dimensional model is changed by three-dimensional CAD, decomposition into a mesh is necessary again, and man-hours increase. Therefore, a three-dimensional shape is deformed by morphing in a state of being decomposed into a mesh.

しかし、従来のモーフィング技術を適用したCADシステムでは、3次元形状データの変形処理の結果、形状データの表面、すなわち、3次元形状を構成するポリゴン、あるいはパッチにシワ、たるみ、あるいは、よたり等の形状の歪みが発生することがあった。このような形状の歪みは、3次元形状の見映えと品質を悪くする。特に、変形後の3次元形状を利用してCAE(Computer Aided Engineering)による解析を実行する際に、表面を修正・整備する必要が生じ、工数が大きくなる場合がある。   However, in the CAD system to which the conventional morphing technology is applied, the surface of the shape data, that is, the polygon or patch constituting the three-dimensional shape is wrinkled, sagging, or distorted as a result of the deformation processing of the three-dimensional shape data. In some cases, distortion of the shape occurred. Such distortion of the shape deteriorates the appearance and quality of the three-dimensional shape. In particular, when performing analysis by CAE (Computer Aided Engineering) using the deformed three-dimensional shape, it is necessary to correct and maintain the surface, which may increase man-hours.

このような3次元形状の変形操作に関連する技術としては、例えば、下記特許文献1が知られている。
特開平11−195054号公報 特開2005−275596号公報 特開2000−172742号公報
As a technique related to such a three-dimensional shape deformation operation, for example, the following Patent Document 1 is known.
JP-A-11-195054 JP 2005-275596 A JP 2000-172742 A

しかし、上記従来の技術では、平面形状のパッチ、あるいはポリゴンが想定されているため、3次元形状の変形に伴い、3次元形状を構成するパッチ、あるいは、パッチに含まれるポリゴンの伸縮限界を超える変形を受けた場合に、歪みを認識できないことがある。例えば、本来、パッチ(あるいはポリゴン)内に、複数の法線ベクトルが定義される曲面の場合には、従来の技術では、パッチ自体、ポリゴン自体の歪みを把握できない場合がある。また、伸縮限界を超えた変形操作がなされたことを検知できない場合がある。   However, since the above-described conventional technique assumes a planar patch or polygon, the deformation limit of the polygon constituting the three-dimensional shape or the polygon included in the patch is exceeded with the deformation of the three-dimensional shape. When it is deformed, the distortion may not be recognized. For example, in the case of a curved surface in which a plurality of normal vectors are originally defined in a patch (or polygon), for example, the conventional technique may not be able to grasp the distortion of the patch itself or the polygon itself. Further, it may not be possible to detect that a deformation operation exceeding the expansion limit has been performed.

本発明の目的は、複数の法線ベクトルが定義されるパッチあるいはポリゴンからなる3次元モデルの変形操作において、パッチあるいはポリゴンの伸縮限界を検知し、パッチあるいはポリゴンのシワ、たるみのような形状の歪みの発生を低減する技術を提供することである。   An object of the present invention is to detect the expansion or contraction limit of a patch or a polygon in a deformation operation of a patch or polygon defined by a plurality of normal vectors and to form a shape such as a wrinkle or sagging of the patch or polygon. It is to provide a technique for reducing the occurrence of distortion.

本発明は前記課題を解決するために、以下の手段を採用した。すなわち、本発明は、立
体モデルの少なくとも一部分を被覆する面要素の組合せによって、前記立体モデルの表面を形成する、そのような設計支援装置によって作成された前記面要素の歪みを検出する面要素の歪み検出装置であって、面要素上の異なる位置でそれぞれの法線ベクトルを求める手段と、隣接する前記法線ベクトルの相対関係を示す値を算出する手段と、前記隣接する法線ベクトルの相対関係を示す値が予め設定した所定の値を超えた場合に、前記面要素に歪みが発生したと判定する面要素歪み発生判定手段と、を備えることを特徴とする面要素の歪み検出装置である。
The present invention employs the following means in order to solve the above problems. That is, the present invention provides a surface element for detecting a distortion of the surface element created by such a design support device that forms the surface of the three-dimensional model by a combination of surface elements covering at least a part of the three-dimensional model. A distortion detection apparatus, a unit for obtaining respective normal vectors at different positions on a surface element, a unit for calculating a value indicating a relative relationship between the adjacent normal vectors, and a relative of the adjacent normal vectors A surface element distortion detection device comprising: a surface element distortion generation determination unit that determines that distortion has occurred in the surface element when a value indicating a relationship exceeds a predetermined value set in advance. is there.

本発明によれば、面要素上の異なる位置でそれぞれの法線ベクトルを求め、隣接する前記法線ベクトルの相対関係を示す値を算出し、前記隣接する法線ベクトルの相対関係を示す値が予め設定した所定の値を超えた場合に、前記面要素に歪みが発生したと判定する。したがって、面要素内に、限度を超えた歪みが発生したか否かを定量的に判定できる。   According to the present invention, respective normal vectors are obtained at different positions on the surface element, a value indicating a relative relationship between the adjacent normal vectors is calculated, and a value indicating the relative relationship between the adjacent normal vectors is calculated. When it exceeds a predetermined value set in advance, it is determined that distortion has occurred in the surface element. Therefore, it can be quantitatively determined whether or not distortion exceeding the limit has occurred in the surface element.

その場合、前記歪みが発生した面要素を表示する手段をさらに備えてもよい。これにより、ユーザに歪みの発生を報知し、ユーザの注意を喚起できる。   In that case, it may further comprise means for displaying the surface element in which the distortion has occurred. Thereby, generation | occurrence | production of distortion can be alert | reported to a user and a user's attention can be called.

前記面要素が複数集合して形成される面データについて、前記面要素歪み発生判定手段によって歪みの発生がないと判定された場合、前記面要素の法線ベクトルと前記面要素に隣接する面要素の法線ベクトルとの相対関係を示す値を算出する手段と、前記面要素の法線ベクトルと前記面要素に隣接する面要素の法線ベクトルとの相対関係を示す値が予め設定した所定の値を超えた場合に、前記面データに歪みが発生したと判定する手段と、を備えてもよい。   When the surface element formed by a plurality of the surface elements is determined to have no distortion by the surface element distortion occurrence determination means, the surface element adjacent to the surface element and the normal vector of the surface element A means for calculating a value indicating a relative relationship with the normal vector of the surface element, and a value indicating the relative relationship between the normal vector of the surface element and the normal vector of the surface element adjacent to the surface element is set to a predetermined value. And a means for determining that the surface data is distorted when the value is exceeded.

このような構成により、例えば、面要素内で歪みが発生していないと判定された場合でも、隣接する面要素との関係から歪みの発生を定量的に判定できる。   With such a configuration, for example, even when it is determined that no distortion has occurred in the surface element, the occurrence of distortion can be quantitatively determined from the relationship with the adjacent surface element.

前記相対関係は隣接する法線ベクトル間の角度が望ましい。法線ベクトル間の角度を判定することで、面要素上の変形を検知できるからである。   The relative relationship is preferably an angle between adjacent normal vectors. This is because the deformation on the surface element can be detected by determining the angle between the normal vectors.

また、本発明は、立体モデルの少なくとも一部分を被覆する面要素の組合せによって、前記立体モデルの表面を形成する、そのような設計支援装置によって作成された前記面要素の歪みを検出する面要素の歪み検出装置であって、前記面要素が複数集合して形成される面データにおいて、面要素と面要素との境界線である稜線を抽出する稜線抽出手段と、前記稜線抽出手段により抽出された稜線の曲率を算出する曲率算出手段と、前記曲率算出手段によって算出された曲率が予め設定した所定の値を超えた場合、および前記曲率の変化が所定の限度を超えた場合の少なくともいずれか一方の場合に、前記稜線に歪みが発生したと判定する稜線歪み判定手段と、を備えるようにしてもよい。   Further, the present invention provides a surface element for detecting distortion of the surface element created by such a design support device that forms a surface of the three-dimensional model by a combination of surface elements covering at least a part of the three-dimensional model. A distortion detection device, wherein surface data formed by collecting a plurality of the surface elements is extracted by a ridge line extraction unit that extracts a ridge line that is a boundary line between the surface elements, and the ridge line extraction unit. Curvature calculation means for calculating the curvature of the ridge line, at least one of the case where the curvature calculated by the curvature calculation means exceeds a predetermined value set in advance, and the case where the change in curvature exceeds a predetermined limit In this case, ridge line distortion determination means for determining that distortion has occurred in the ridge line may be provided.

すなわち、本発明では、面要素と面要素との境界線である稜線を抽出し、抽出された稜線の曲率を算出し、その曲率が予め設定した所定の値を超えた場合、および前記曲率の変化が所定の限度を超えた場合の少なくともいずれか一方の場合に、前記稜線に歪みが発生したと判定する。このため、面要素と面要素との境界に歪みが発生したか否かを定量的に判定できる。ここで、曲率の変化とは、例えば、1つの稜線上での曲率の方向の変化、曲率の大きさの変化等をいう。また、曲率の変化とは、例えば、稜線上の変曲点の数の変化、及び多さ(例えば3つ以上)等をもいう。また、稜線歪み判定手段が、稜線ごとに曲率を逐一記録しておき、前回判定時点と今回時点での曲率の差分を曲率の変化としてもよい。   That is, in the present invention, a ridge line that is a boundary line between the surface elements is extracted, the curvature of the extracted ridge line is calculated, and when the curvature exceeds a predetermined value set in advance, and the curvature When at least one of the cases where the change exceeds a predetermined limit, it is determined that distortion has occurred in the ridgeline. For this reason, it can be quantitatively determined whether or not distortion has occurred at the boundary between the surface elements. Here, the change in curvature means, for example, a change in the direction of curvature on one ridge line, a change in the magnitude of curvature, and the like. Further, the change in curvature also means, for example, the change in the number of inflection points on the ridgeline and the number (for example, three or more). Further, the ridge line distortion determination means may record the curvature for each ridge line one by one, and the difference in curvature between the previous determination time point and the current time point may be used as the change in curvature.

また、本発明は、立体モデルの少なくとも一部分を被覆する面要素の組合せによって、前記立体モデルの表面を形成する、そのような設計支援装置によって作成された前記面要
素の歪みを検出する面要素の歪み検出装置であって、前記面要素が複数集合して形成される面データから頂点を抽出する手段と、前記頂点近傍において面要素と面要素との境界線である稜線を抽出する近傍稜線抽出手段と、前記頂点での前記面データの法線ベクトルと前記頂点近傍での前記稜線の接線ベクトルとから平面を形成し、形成された平面上に前記稜線を投影する投影手段と、前記投影手段により投影された平面上の稜線の曲率を算出する投影曲率算出手段と、前記投影曲率算出手段によって算出された曲率が予め設定した所定の値を超えた場合、および前記曲率の変化が所定の限度を超えた場合の少なくともいずれか一方の場合に、前記稜線に歪みが発生したと判定する稜線歪み判定手段と、を備えるものでもよい。
Further, the present invention provides a surface element for detecting distortion of the surface element created by such a design support device that forms a surface of the three-dimensional model by a combination of surface elements covering at least a part of the three-dimensional model. A distortion detection device, a means for extracting vertices from surface data formed by collecting a plurality of the surface elements, and a neighboring ridge line extracting a ridge line that is a boundary line between the surface elements in the vicinity of the vertices And a projection unit that forms a plane from the normal vector of the surface data at the vertex and a tangent vector of the ridge line in the vicinity of the vertex, and projects the ridge line on the formed plane; Projected curvature calculating means for calculating the curvature of the ridge line on the plane projected by the above, and when the curvature calculated by the projected curvature calculating means exceeds a predetermined value set in advance, and before In the case of at least one of the case where the change in curvature exceeds a predetermined limit, the ridgeline distortion determination means determines that distortion has occurred in the ridge, it may be those comprising a.

本発明によれば、平面上に前記稜線を投影し、投影された平面上の稜線の曲率を算出し、その曲率が予め設定した所定の値を超えた場合、および前記曲率の変化が所定の限度を超えた場合の少なくともいずれか一方の場合に、前記稜線に歪みが発生したと判定するので、稜線の歪みを定量的に判定できる。   According to the present invention, the ridgeline is projected on a plane, the curvature of the ridgeline on the projected plane is calculated, and when the curvature exceeds a predetermined value, and the change in curvature is a predetermined Since it is determined that distortion has occurred in the ridge line in at least one of cases where the limit is exceeded, distortion of the ridge line can be quantitatively determined.

なお、本発明は、以上のいずれかの処理をコンピュータに実行させるプログラムであってもよい。また、本発明は、そのようなプログラムを記録したコンピュータ読み取り可能な記録媒体、例えば、CD−ROM、DVD、フラッシュメモリカード等であってもよい。また、本発明は、コンピュータがそのような処理を実行する方法として実現してもよい。   The present invention may be a program for causing a computer to execute any one of the processes described above. Further, the present invention may be a computer-readable recording medium in which such a program is recorded, for example, a CD-ROM, a DVD, a flash memory card, or the like. Further, the present invention may be realized as a method in which a computer executes such processing.

本発明によれば、複数の法線ベクトルが定義されるパッチあるいはポリゴンからなる3次元モデルの変形操作において、パッチあるいはポリゴンの伸縮限界を検知し、パッチあるいはポリゴンのシワ、たるみのような形状の歪みの発生を低減することができる。   According to the present invention, in a deformation operation of a three-dimensional model composed of patches or polygons in which a plurality of normal vectors are defined, the expansion limit of the patch or polygon is detected, and the shape of the patch or polygon such as wrinkles or sagging is detected. Generation of distortion can be reduced.

以下、図面を参照して本発明を実施するための最良の形態(以下、実施形態という)に係る設計支援装置について説明する。以下の実施形態の構成は例示であり、本発明は実施形態の構成に限定されない。   A design support apparatus according to the best mode for carrying out the present invention (hereinafter referred to as an embodiment) will be described below with reference to the drawings. The configuration of the following embodiment is an exemplification, and the present invention is not limited to the configuration of the embodiment.

<発明の骨子>
本設計支援装置は、ポリゴンあるいはポリゴンを組み合わせたパッチによって構成されている立体モデルに対して、ポインティングデバイスのような操作手段によってユーザ操作を受け付け、3次元モデルを変形(モーフィング)する。立体モデルを構成するポリゴンは、曲面ポリゴンと呼ばれるものであり、ポリゴン面内に複数方向の法線ベクトルを有している。
<Outline of the invention>
The design support apparatus accepts a user operation by an operating means such as a pointing device for a three-dimensional model constituted by polygons or patches combining polygons, and deforms (morphs) the three-dimensional model. Polygons constituting the three-dimensional model are called curved polygons, and have normal vectors in a plurality of directions within the polygon surface.

図1は、曲面ポリゴンで構成されている立体モデルを変形した例である。図1の符号C1で示される円形内で、歪みが発生している。図2は、図1の曲面ポリゴンをメッシュに分割した例を示す。この例では、曲面ポリゴンは、複数の三角形のメッシュを組み合わせて構成される。このような曲面は、例えば、ベジエ曲面として知られている。   FIG. 1 shows an example in which a three-dimensional model composed of curved polygons is modified. Distortion occurs in a circle indicated by a reference C1 in FIG. FIG. 2 shows an example in which the curved polygon of FIG. 1 is divided into meshes. In this example, the curved polygon is configured by combining a plurality of triangular meshes. Such a curved surface is known as a Bezier curved surface, for example.

ベジエ曲線は制御点と呼ばれる複数の点(一連の点)にしたがって定義される多項式曲線であり、さらに、ベジエ曲面は2次元状に配置された複数の点に基づいて定義される曲面である。なお、本実施形態では、曲面を構成する単位をパッチといい、パッチは、1または複数の曲面ポリゴンから構成される。すなわち、複数の曲面ポリゴン(例えば、3次三角ベジエ曲面)を複数個集めてパッチを構成する場合もある。   A Bezier curve is a polynomial curve defined according to a plurality of points (a series of points) called control points, and a Bezier curved surface is a curved surface defined based on a plurality of points arranged two-dimensionally. In this embodiment, a unit constituting a curved surface is called a patch, and the patch is composed of one or a plurality of curved polygons. That is, a plurality of curved polygons (for example, a cubic triangular Bezier curved surface) may be collected to form a patch.

このような曲面ポリゴンで被覆されている立体モデルの変形時に、本設計支援装置は、
それぞれの曲面ポリゴン内の複数の法線ベクトルを監視する。そして、隣接する法線ベクトル間の角度の値、および立体モデル変形に伴って生じる隣接する法線ベクトル間の角度の変化率(元の角度に対する変化した角度の割合)を求める。そして、隣接する法線ベクトル間の角度が所定値を超えた場合、および隣接する法線ベクトル間の角度の変化率が所定値を越えた場合に、曲面ポリゴンの面に歪みが発生したと判定する。
At the time of deformation of a solid model covered with such a curved polygon, this design support device
Monitor multiple normal vectors in each curved polygon. Then, the value of the angle between the adjacent normal vectors and the rate of change of the angle between the adjacent normal vectors caused by the three-dimensional model deformation (the ratio of the changed angle to the original angle) are obtained. When the angle between adjacent normal vectors exceeds a predetermined value, and when the rate of change in angle between adjacent normal vectors exceeds a predetermined value, it is determined that the surface of the curved polygon is distorted. To do.

図3に、三角形のパッチによる立体モデルの例を示す。図3では、三角形の平面で構成された多面体が示されている。図3では、簡易に表示するため、三角形のパッチを平面で表示している。しかし、一般にパッチ、あるいは、曲面ポリゴンは、制御点を基に、多項式によって定義される曲面であるため、実際には、図3のそれぞれの三角形内で複数の法線を有している。図3に、曲面ポリゴン上の法線を矢印で示す。   FIG. 3 shows an example of a three-dimensional model using triangular patches. In FIG. 3, a polyhedron composed of triangular planes is shown. In FIG. 3, triangular patches are displayed in a plane for simple display. However, in general, a patch or a curved polygon is a curved surface defined by a polynomial on the basis of control points, and thus actually has a plurality of normal lines in each triangle in FIG. In FIG. 3, the normal line on the curved polygon is indicated by an arrow.

本設計支援装置は、このような個々の曲面ポリゴン内の法線ベクトルを監視し、曲面ポリゴンの歪み発生を検知する。   The design support apparatus monitors the normal vector in such individual curved polygons and detects the occurrence of distortion of the curved polygons.

さらに、本設計支援装置は、以上の法線ベクトルの監視の結果、各ポリゴン自体に歪みの発生がないことを確認した上で、注目する曲面ポリゴンとその曲面ポリゴンに隣接する曲面ポリゴンとにおいて、それぞれ代表となる法線ベクトルを選出し、2つの隣接する曲面ポリゴン間で、同様に歪みの発生を検知する。   Furthermore, this design support apparatus confirms that each polygon itself has no distortion as a result of monitoring the normal vector, and then in the curved polygon to be noticed and the curved polygon adjacent to the curved polygon, Each representative normal vector is selected, and the occurrence of distortion is similarly detected between two adjacent curved polygons.

すなわち、2つの隣接する曲面ポリゴンに属する法線ベクトル間の角度が所定の所定値を超えた場合、および隣接する法線ベクトル間の角度の変化率が所定値を越えた場合に、曲面ポリゴンの面に歪みが発生したと判定する。   That is, when the angle between normal vectors belonging to two adjacent curved polygons exceeds a predetermined value, and when the rate of change in angle between adjacent normal vectors exceeds a predetermined value, It is determined that the surface is distorted.

さらにまた、曲面ポリゴン上に注目するサンプル点を設定し、そのサンプル点またはサンプル点の近傍を通る稜線を抽出して、稜線の曲率を求める。そして、曲率が所定値を越えたときに、曲面ポリゴンの面に歪みが発生したと判定する。ここで、稜線は、曲面ポリゴンと曲面ポリゴンとの間の境界線をいう。   Furthermore, a sample point of interest is set on the curved polygon, a ridge line passing through the sample point or the vicinity of the sample point is extracted, and the curvature of the ridge line is obtained. Then, when the curvature exceeds a predetermined value, it is determined that distortion has occurred on the surface of the curved polygon. Here, the ridge line is a boundary line between the curved polygon and the curved polygon.

このようにして、3次元形状の変形に際して、曲面ポリゴンの歪みが検知された場合、設計支援装置は、曲面ポリゴンの歪みが検知されたことを示す警告を表示する。この警告により、ユーザは、歪みが発生したことを認識し、立体モデルの変形を停止する。そして、ユーザは、変形操作の手順を変更することによって、曲面ポリゴンの歪みがない変形された立体モデルを得る。   In this way, when the distortion of the curved polygon is detected during the deformation of the three-dimensional shape, the design support apparatus displays a warning indicating that the distortion of the curved polygon has been detected. By this warning, the user recognizes that the distortion has occurred and stops the deformation of the three-dimensional model. Then, the user obtains a deformed three-dimensional model with no distortion of the curved polygon by changing the procedure of the deforming operation.

または、ユーザは、歪みが発生したことを認識した上で変形作業を続行し、作業完了した後に、曲面ポリゴンの歪みが発生した箇所を修正すればよい。   Alternatively, the user may continue the deformation work after recognizing that the distortion has occurred, and correct the portion where the distortion of the curved polygon has occurred after completing the work.

以上の機能は、コンピュータ上に実現されるCADシステムの1つの機能として、コンピュータ上で実行されるコンピュータプログラムによって実現される。ここで、コンピュータは、CPU(Central Processing Unit)、メモリ、入出力インターフェース、入出力インターフェースに接続される外部記憶装置、表示装置、入力装置、通信装置等を有する。   The above functions are realized by a computer program executed on the computer as one function of the CAD system realized on the computer. Here, the computer includes a CPU (Central Processing Unit), a memory, an input / output interface, an external storage device connected to the input / output interface, a display device, an input device, a communication device, and the like.

外部記憶装置は、例えば、ハードディスク駆動装置である。また、外部記憶装置は、着脱可能な記憶媒体の駆動装置、例えば、CD−ROM(Compact Disc Read Only Memory)、DVD(Digital Versatile Disk)等の駆動装置を含む。さらに、外部記憶装置として、フラッシュメモリカードの入出力装置を用いてもよい。   The external storage device is, for example, a hard disk drive device. The external storage device includes a drive device for a removable storage medium, for example, a drive device such as a CD-ROM (Compact Disc Read Only Memory) or a DVD (Digital Versatile Disk). Further, a flash memory card input / output device may be used as an external storage device.

表示装置は、例えば、CRT(Cathode Ray Tube)、液晶ディスプレイ等である。また、入力装置は、キーボード、ポインティングデバイス等である。ポインティングデバイスには、マウス、ジョイスティック、タッチパネル、静電方式のフラットなポインティングデバイス、スティック形状のポインティングデバイス等を含む。通信装置は、例えば、LAN基板等である。   The display device is, for example, a CRT (Cathode Ray Tube), a liquid crystal display, or the like. The input device is a keyboard, a pointing device, or the like. Examples of the pointing device include a mouse, a joystick, a touch panel, an electrostatic flat pointing device, a stick-shaped pointing device, and the like. The communication device is, for example, a LAN board.

<立体モデルの曲面のデータ構造>
図4から図10により、本設計支援装置が立体モデルの曲面を規定するときのデータ構造例を示す。図4は、3次ベジエ曲線を示している。一般に、n+1個の制御点を基に、多項式で規定される曲線をn次ベジエ曲線という。n次ベジエ曲線は、以下の一般式である数1によって与えられる。ここで、Qnは、制御点の位置ベクトルであり、tはパラメータであり、Pは、n次ベジエ曲線上の位置ベクトルである。
<Data structure of the curved surface of the solid model>
4 to 10 show an example of the data structure when the design support apparatus defines the curved surface of the three-dimensional model. FIG. 4 shows a cubic Bezier curve. In general, a curve defined by a polynomial based on n + 1 control points is referred to as an nth-order Bezier curve. The n-th order Bezier curve is given by the following general formula (1). Here, Qn is a position vector of the control point, t is a parameter, and P is a position vector on the nth-order Bezier curve.

Figure 0004241778
Figure 0004241778

例えば、3次ベジエ曲線Pは、P=(1−t)3Q0+3t(1−t)2 Q1+3t2(1−t)Q2+t3Q3で与えられる。 For example, the cubic Bezier curve P is given by P = (1-t) 3 Q0 + 3t (1-t) 2 Q1 + 3t 2 (1-t) Q2 + t 3 Q3.

図5に、4角形パッチによる3次ベジエ曲面の例を示す。一般に、(n+1)×(n+1)個の配列状の制御点によって構成されるベジエ曲面をn次ベジエ曲面という。4角形パッチによるn次ベジエ曲面は、以下の一般式である数2によって与えられる。ここで、Qijは、制御点の位置ベクトルであり、uおよびvはパラメータであり、Pは、n次ベジエ曲面上の位置ベクトルである。   FIG. 5 shows an example of a cubic Bezier curved surface using a quadrangular patch. In general, a Bezier curved surface constituted by (n + 1) × (n + 1) arrayed control points is called an nth-order Bezier curved surface. The nth-order Bezier curved surface by the quadrangular patch is given by the following general formula (2). Here, Qij is a position vector of the control point, u and v are parameters, and P is a position vector on the nth-order Bezier surface.

Figure 0004241778
Figure 0004241778

4角形パッチによる3次ベジエ曲面は、16個の制御点(4個の内部制御点)を有する。このような四角形のベジエ曲面を接続することによって立体モデルの表面を形成できる。   A cubic Bézier curved surface with a quadrangular patch has 16 control points (4 internal control points). The surface of the three-dimensional model can be formed by connecting such square Bezier curved surfaces.

図6に、3次四角パッチとのその内部制御点の配置を示す。また、図7に、4次四角パッチとのその内部制御点の配置を示す。四角パッチの場合には、内部制御点は、次数が3次、4次、5次・・・のように次数が増えるとともに、4、9、16・・・と増加する。   FIG. 6 shows the arrangement of the internal control points with the tertiary square patch. FIG. 7 shows the arrangement of the internal control points with the quaternary square patch. In the case of a square patch, the internal control points increase to 4, 9, 16... As the order increases to 3rd order, 4th order, 5th order,.

図8に、三角形パッチによる3次ベジエ曲面の例を示す。三角形パッチによるn次ベジエ曲面は、以下の一般式である数3によって与えられる。ここで、Qijkは、制御点の位置ベクトルであり、u、vおよびwはパラメータである。   FIG. 8 shows an example of a cubic Bezier curved surface using triangular patches. An n-order Bezier curved surface by a triangular patch is given by the following general formula (3). Here, Qijk is a position vector of the control point, and u, v, and w are parameters.

Figure 0004241778
Figure 0004241778

三角形パッチによる3次ベジエ曲面は、10個の制御点(1個の内部制御点)を有する。このような三角形のベジエ曲面を接続することによって立体モデルの表面を形成できる。   A cubic Bézier curved surface with a triangular patch has 10 control points (one internal control point). The surface of the three-dimensional model can be formed by connecting such triangular Bezier curved surfaces.

図9に、3次三角パッチとのその内部制御点の配置を示す。また、図10に、4次三角パッチとのその内部制御点の配置を示す。三角パッチの場合には、内部制御点は、次数が3次、4次、5次、6次・・・のように次数が増えるとともに、1、3、6、9・・・と増加する。   FIG. 9 shows the arrangement of the internal control points with the tertiary triangular patch. FIG. 10 shows the arrangement of the internal control points with the quaternary triangular patch. In the case of a triangular patch, the internal control points increase to 1, 3, 6, 9... As the order increases to 3rd order, 4th order, 5th order, 6th order,.

本設計支援装置は、n次ベジエ曲面(例えば、図6に示した三角形状の3次ベジエ曲面)を曲面ポリゴン(パッチともいう)として、そのような曲面ポリゴンを組み合わせて立体モデルを構成する。なお、複数の曲面ポリゴンを組み合わせてパッチを構成し、そのようなパッチによって立体モデルを構成してもよい。   The design support apparatus uses an n-order Bezier curved surface (for example, the triangular cubic Bezier curved surface shown in FIG. 6) as a curved polygon (also referred to as a patch), and configures a three-dimensional model by combining such curved polygons. Note that a patch may be configured by combining a plurality of curved polygons, and a three-dimensional model may be configured by such a patch.

<歪み検出機能>
本設計支援装置は、曲面ポリゴン内の法線の角度の一致・不一致、法線の角度の変化率、サンプル点付近の複数の曲面ポリゴン間での法線の一致・不一致、それらの法線間の角度の変化率、およびサンプル点またはサンプル点近傍の稜線での曲率の変化率から、歪みの発生を検知する。なお、本実施形態では、2以上の曲面ポリゴンの境界線を稜線と呼ぶ。
(1)曲面ポリゴン内の法線一致チェック
単一の曲面ポリゴンについては、その内部の複数の法線ベクトルは、いずれも一致するか、または、それらの法線ベクトル間の角度の相違は、所定の基準値(E1)以内の場合が多い。
<Distortion detection function>
This design support device is able to match / disagree normal angle in curved polygon, change rate of normal angle, match / mismatch normal between multiple curved polygons near sample point, The occurrence of distortion is detected from the rate of change of the angle of and the rate of change of curvature at the sample point or the ridgeline in the vicinity of the sample point. In the present embodiment, a boundary line between two or more curved polygons is called a ridge line.
(1) Normal match check in curved polygons For a single curved polygon, all of the normal vectors inside it match, or the difference in angle between the normal vectors is predetermined. Is often within the reference value (E1).

そこで、本設計支援装置は、それぞれの曲面ポリゴン内に複数の位置にて法線ベクトルを算出し、法線ベクトル間の角度が、所定の基準値(E1)以内か否かを判定する。今、曲面ポリゴン上の位置ベクトルをS(u,v)とすると、その位置での法線ベクトルは、以下の数4で与えられる。   Therefore, the present design support device calculates normal vectors at a plurality of positions in each curved polygon, and determines whether or not the angle between the normal vectors is within a predetermined reference value (E1). If the position vector on the curved polygon is S (u, v), the normal vector at that position is given by the following equation (4).

Figure 0004241778
Figure 0004241778

すなわち、曲面ポリゴン(表面形状)上の位置ベクトルを線要素u方向と、線要素v方向で、それぞれ偏微分し、その外積を求めればよい。さらに、法線ベクトル間の角度は、法線ベクトルの内積と逆三角関数とによって求めればよい。これにより、曲面ポリゴン内での歪みの発生を検知する。
(2)曲面ポリゴン間の法線一致チェック
曲面ポリゴン内での歪みの発生が検知されない場合であっても、曲面ポリゴン間の位置
関係で歪みが発生する場合がある。通常、立体モデルの表面を被覆する隣接する曲面ポリゴンについては、本来稜線で不連続に傾きが変化した部分(面が折れ曲がった箇所)以外の箇所では、それぞれの曲面ポリゴンの法線ベクトルが一致するか、法線ベクトル間の角度の相違は、所定の基準値(E1)以内の場合が多い。一方、本来稜線で不連続に傾きが変化した部分では、それぞれの曲面ポリゴンの法線ベクトル間の角度の相違は、前記基準津E1より大きな基準値(E2)以上となることが多い。そこで、一般的な立体形状に関する経験則をコンピュータ上の処理に組み込む。
That is, the position vector on the curved polygon (surface shape) may be partially differentiated in the line element u direction and the line element v direction, respectively, to obtain the outer product. Furthermore, the angle between the normal vectors may be obtained from the inner product of the normal vectors and the inverse trigonometric function. Thereby, the occurrence of distortion in the curved polygon is detected.
(2) Normal line matching check between curved polygons Even when the occurrence of distortion in the curved polygon is not detected, distortion may occur due to the positional relationship between the curved polygons. Normally, for adjacent curved polygons that cover the surface of a three-dimensional model, the normal vectors of the curved polygons match at locations other than the portion where the slope changes discontinuously on the ridgeline (the portion where the surface is bent). In many cases, the difference in angle between normal vectors is within a predetermined reference value (E1). On the other hand, in a portion where the slope changes discontinuously on the original ridgeline, the difference in angle between the normal vectors of the respective curved polygons is often greater than the reference value (E2) greater than the reference tsu E1. Therefore, an empirical rule related to a general three-dimensional shape is incorporated into the processing on the computer.

図11に、指定のサンプル点Paとその周囲に存在する複数の曲面ポリゴン11−15の法線ベクトルN1−N5との関係を示す。この場合、サンプル点Psの法線ベクトルは、以下の数5で与えられる。   FIG. 11 shows the relationship between the designated sample point Pa and the normal vectors N1-N5 of the plurality of curved polygons 11-15 existing around it. In this case, the normal vector of the sample point Ps is given by the following formula 5.

Figure 0004241778
Figure 0004241778

数5は、複数の法線ベクトルの重み加算を示している。重みは、例えば、個々のパッチの面積によって決定してもよい。また、重みを1としてもよい。これらの法線ベクトルN1−N5、およびサンプル点PAの法線ベクトルNAとの間で、それらの間の角度が基準値E1から基準値E2の範囲にあるか否かによって歪みの発生を検知する。
(3)稜線上の法線一致チェック
2つの曲面ポリゴンの境界に位置する稜線上で、曲面ポリゴンの法線を複数個求め、法線間の角度が所定の基準値(E1)以内か否かを判定する。処理手順は、法線を求める位置が稜線上にあること以外は、上記(1)と同様である。
(4)稜線の曲率解析
曲面パッチの境界線である稜線上で稜線の曲率を求める。そして、変形操作時に稜線の曲率を監視し、曲率が基準値より大きい点を検知する。あるいは、曲率の変化の大きな点(例えば、曲率方向の内積<0の点、すなわち、角度90度より大きな変化)を検知する。すなわち、曲率の変化として、1つの稜線上での曲率の方向の変化を検知してもよい。また、1つの稜線上の大きさの変化を検知してもよい。すなわち、稜線上で、曲率の方向が、極端に大きく変化し、あるいは、曲率の値が極端に大きく変化する点を検知してもよい。さらに、稜線上の変曲点の数の変化等を検出し、変曲点数が所定以上の稜線を歪みの検出された稜線としてもよい。さらにまた、稜線歪み判定手段が、稜線ごとに曲率を逐一記録しておき、前回判定時点と今回時点での曲率の差分を曲率の変化としてもよい。
Equation 5 shows the weight addition of a plurality of normal vectors. The weight may be determined by the area of each patch, for example. Also, the weight may be 1. The generation of distortion is detected depending on whether or not the angle between these normal vectors N1-N5 and the normal vector NA of the sample point PA is in the range of the reference value E1 to the reference value E2. .
(3) Normal line coincidence check on ridge lines On the ridge line located at the boundary between two curved polygons, a plurality of curved polygon normals are obtained, and whether or not the angle between the normal lines is within a predetermined reference value (E1). Determine. The processing procedure is the same as (1) except that the position for obtaining the normal is on the ridge line.
(4) Curvature analysis of ridgeline The curvature of a ridgeline is calculated | required on the ridgeline which is a boundary line of a curved surface patch. And the curvature of a ridgeline is monitored at the time of deformation | transformation operation, and the point where a curvature is larger than a reference value is detected. Alternatively, a point having a large change in curvature (for example, a point where the inner product in the curvature direction <0, that is, a change greater than an angle of 90 degrees) is detected. That is, as a change in curvature, a change in the direction of curvature on one ridge line may be detected. Moreover, you may detect the change of the magnitude | size on one ridgeline. That is, it is possible to detect a point on the ridge line where the direction of curvature changes significantly or the value of curvature changes extremely greatly. Furthermore, a change in the number of inflection points on the ridge line or the like may be detected, and a ridge line having a predetermined number of inflection points or more may be used as a ridge line in which distortion is detected. Furthermore, the ridge line distortion determination means may record the curvature for each ridge line one by one, and the difference in curvature between the previous determination time and the current time may be used as the change in curvature.

曲率は、曲線上の点の位置ベクトルPに対して、その2次微分として求めることができる。曲線上の点の位置ベクトルPの曲線の長さsによる1次微分P’=dP/dsは、以下の数6で与えられる。ここで、ピードット(ベクトルPの上部に黒丸を付加したもの)は、ベクトルPの時間微分を表す。ピードットは、曲線の接線方向のベクトルを表し、数6は、接線方向の単位ベクトルとなっている。   The curvature can be obtained as the second derivative of the position vector P of the point on the curve. The first derivative P ′ = dP / ds with respect to the length s of the position vector P of the point on the curve is given by the following equation (6). Here, a pea dot (a vector P added with a black circle) represents a time derivative of the vector P. Pedot represents a vector in the tangential direction of the curve, and Equation 6 is a unit vector in the tangential direction.

Figure 0004241778
Figure 0004241778

数6をさらに、曲線の長さsによって微分すると、曲率となる。曲率R=P”を以下の数7で示す。ここで、ピーツードット(ベクトルPの上部に黒丸を2個付加したもの)は、ベクトルPの2次の時間微分(加速度)を表す。   When the equation 6 is further differentiated by the length s of the curve, the curvature is obtained. The curvature R = P ″ is expressed by the following formula 7. Here, the P2 dot (the one in which two black circles are added to the top of the vector P) represents the second-order time differentiation (acceleration) of the vector P.

Figure 0004241778
Figure 0004241778

曲率Rは、以下の数8の形式で表すこともできる。   The curvature R can also be expressed in the following formula 8.

Figure 0004241778
Figure 0004241778

曲線上の点の位置ベクトルをPとした場合、曲率R=P”、速度ピードット、加速度ピーツードットの関係は、概念的には、図12に示すことができる。ここで、速度ピードットは、曲線の接線方向のベクトルであり、曲率P”は、接線と直交する方向である。   When the position vector of the point on the curve is P, the relationship between the curvature R = P ″, the speed pea dot, and the acceleration pe two dot can be conceptually shown in FIG. , A tangential vector of the curve, and the curvature P ″ is a direction orthogonal to the tangent.

速度ピードットに対して、その加速度ピーツードットを求め、速度ピードットを一辺とし、対辺が加速度ピーツードットの先端を通る長方形22を作図する。この場合に、速度ピードットの先端21を通り、長方形22の対角線23に直交する直線24と、速度ピードットの曲線との接点20から引いた速度ピードットに直交する直線25との交点26を求める。この場合、接点20から交点26までの長さが曲率P”になる。
(5)曲面ポリゴンの曲率解析
図13に、曲面ポリゴンの曲率解析の概念を示す図である。曲面ポリゴン、すなわち、パッチは、例えば、1以上のベジエ曲面で構成される。稜線と異なり、曲面ポリゴンでは、一般式による曲率解析(数7、数8参照)ができない。そこで、本実施形態の設計支援装置では、以下の手順で、曲面ポリゴンの曲率解析を実行する。
(a)解析の対象となる立体モデルの領域を特定する。これは、例えば、ユーザ操作によって対象となる解析領域の選択を受ければよい。
(b)上記解析領域に含まれる曲面ポリゴンの頂点、例えば、ベジエ曲面の外部制御点(稜線上の制御点)を抽出する。
(c)各頂点にて、法線ベクトルN(頂点ごとに区別する場合は、法線Nkという)を求める。
(d)各頂点に接続される稜線L(稜線ごとに区別する場合は、稜線Liという)を求める。また、頂点から所定距離のすべての稜線を選択してもよい。そして、頂点近傍での稜線Lの接線T(稜線ごとに区別する場合は、接線Tiという)を求める。
(e)稜線Lを頂点の法線Nと稜線Lの接線Tがなす平面に投影する。これによって、3次元空間上の稜線Lが平面上の投影線となる。この投影線上の曲率を数7、または数8によって算出する。さらに、投影線上の曲率の最大値R(稜線ごとに区別する場合は、曲率の最大値Riという)を求める。
(f)このような曲率の最大値のうち、解析領域内のすべての頂点について、それぞの頂点に接続されるすべての稜線に対して、(c)〜(e)を繰り返す。これによって、解析領域内での最大の曲率を求め、これを曲面ポリゴンの曲率とする。この曲面ポリゴンが所
定の基準値E3を越えるか否かによって、歪みの発生を判定する。なお、(c)〜(e)を繰り返して得られた曲率Riをヒストグラムで表示して歪みの発生状況を表示してもよい。
The acceleration pe-to-dot is obtained for the speed pea dot, and the rectangle 22 is drawn with the speed pea dot as one side and the opposite side passing through the tip of the acceleration pe-dot. In this case, an intersection 26 of a straight line 24 that passes through the tip 21 of the speed peadot and is orthogonal to the diagonal line 23 of the rectangle 22 and a straight line 25 that is perpendicular to the speed peadot drawn from the contact point 20 with the curve of the speed peadot. Ask. In this case, the length from the contact 20 to the intersection 26 is the curvature P ″.
(5) Curvature Analysis of Curved Polygon FIG. 13 is a diagram showing the concept of curvature analysis of a curved polygon. The curved polygon, that is, the patch is configured by one or more Bezier curved surfaces, for example. Unlike edge lines, curved surface polygons cannot perform curvature analysis using general formulas (see Equations 7 and 8). Therefore, in the design support apparatus of the present embodiment, the curvature analysis of the curved polygon is executed by the following procedure.
(A) A region of the three-dimensional model to be analyzed is specified. For example, it is only necessary to select a target analysis region by a user operation.
(B) Extract vertices of curved polygons included in the analysis region, for example, external control points (control points on ridge lines) of Bezier curved surfaces.
(C) At each vertex, a normal vector N (referred to as normal Nk when distinguished for each vertex) is obtained.
(D) A ridgeline L connected to each vertex (referred to as ridgeline Li when distinguished for each ridgeline) is obtained. Moreover, you may select all the ridgelines of predetermined distance from the vertex. Then, a tangent line T of the ridge line L in the vicinity of the vertex (referred to as tangent line Ti when distinguished for each ridge line) is obtained.
(E) The ridge line L is projected onto the plane formed by the normal line N of the vertex and the tangent line T of the ridge line L. Thus, the ridge line L in the three-dimensional space becomes a projection line on the plane. The curvature on the projection line is calculated by Equation 7 or Equation 8. Furthermore, the maximum value R of the curvature on the projection line (referred to as the maximum value Ri of the curvature when distinguished for each ridgeline) is obtained.
(F) Of such maximum values of curvature, (c) to (e) are repeated for all vertices connected to each vertex for all vertices in the analysis region. As a result, the maximum curvature in the analysis region is obtained and used as the curvature of the curved polygon. The occurrence of distortion is determined by whether or not the curved polygon exceeds a predetermined reference value E3. It should be noted that the curvature Ri obtained by repeating (c) to (e) may be displayed as a histogram to display the occurrence of distortion.

<処理フロー>
図14に、本設計支援装置による立体モデルの変形操作処理の処理フローを示す。これらの処理は、設計支援装置のCPU上で実行されるコンピュータプログラムとして実現される。
<Processing flow>
FIG. 14 shows a processing flow of the deformation operation processing of the three-dimensional model by this design support apparatus. These processes are realized as a computer program executed on the CPU of the design support apparatus.

この処理では、まず、ユーザが、ポインティングデバイス等の入力装置を操作し、表示装置の画面上で立体モデルに変形を加える。設計支援装置は、入力装置を通じたユーザの入力を検知し、立体モデルを順次変形させる。すなわち、モーフィングが実行される(S1)。   In this process, first, the user operates an input device such as a pointing device, and deforms the three-dimensional model on the screen of the display device. The design support device detects a user input through the input device and sequentially transforms the three-dimensional model. That is, morphing is executed (S1).

このモーフィングの過程で、設計支援装置は、歪み発生検知処理を実行する(S2)。この処理を実行する設計支援装置のCPUが、本発明の面要素の歪み検出装置に相当する。そして、歪みが検知された場合に、設計支援装置は、表示装置に警告を表示する(S3)。その場合、立体モデル上で、歪みの発生したと判断される箇所(パッチ等)の色を変えて表示してもよい。さらに、この場合、スピーカから音を出力して注意を喚起してもよい。この処理を実行する設計支援装置のCPUが、本発明の歪みが発生した面要素を表示する手段に相当する。   In the process of morphing, the design support apparatus executes a distortion occurrence detection process (S2). The CPU of the design support apparatus that executes this process corresponds to the surface element distortion detection apparatus of the present invention. When the distortion is detected, the design support device displays a warning on the display device (S3). In that case, the color of a portion (such as a patch) determined to be distorted may be displayed on the three-dimensional model. Further, in this case, attention may be drawn by outputting a sound from a speaker. The CPU of the design support apparatus that executes this processing corresponds to means for displaying the surface element in which the distortion has occurred in the present invention.

警告が表示されると、ユーザは、変形操作を停止し、作業をやり直す(S4)。このような設計支援装置のガイドにより、ユーザは、面にシワ、たるみ等の歪みのないデータを作成できる(S7)。   When the warning is displayed, the user stops the deformation operation and starts the work again (S4). With such a guide of the design support apparatus, the user can create data without distortion such as wrinkles and sagging on the surface (S7).

ただし、警告が表示された場合でも、ユーザがそのまま作業を続行してもよい。その場合、ユーザは、立体モデルの歪みを軽減するため、入力装置を通じて画面上の立体モデルを修正する作業を実行する必要がある(S6)。しかし、その場合でも、S3での警告によって、立体モデルのどの位置に歪みが生じているのかをユーザが概ね認識しているので、修正作業の効率が従来よりも向上する。このような修正作業により、ユーザは、面にシワ、たるみ等の歪みのないデータを作成できる(S7)。   However, even when a warning is displayed, the user may continue the work as it is. In this case, the user needs to perform an operation of correcting the stereo model on the screen through the input device in order to reduce the distortion of the stereo model (S6). However, even in that case, the user generally recognizes which position of the stereo model is distorted by the warning in S3, so that the efficiency of the correction work is improved as compared with the conventional case. Through such correction work, the user can create data without distortion such as wrinkles and sagging on the surface (S7).

図15に、歪み発生検知処理(図14のS2)の詳細を示す。歪み発生検知処理は、ユーザが立体モデルの変形操作を実行するときに、立体モデルの変形とともに、繰り返し実行される。これにより、所定のインターバルで、曲面ポリゴンの歪みが検知される。   FIG. 15 shows details of the distortion occurrence detection process (S2 in FIG. 14). The distortion generation detection process is repeatedly executed along with the deformation of the stereo model when the user executes the deformation operation of the stereo model. Thereby, the distortion of the curved polygon is detected at a predetermined interval.

歪み発生検知処理では、設計支援装置は、まず、曲面ポリゴン内の法線ベクトルチェック処理を実行する(S21)。次に、設計支援装置は、曲面ポリゴン間の法線ベクトルチェック処理を実行する(S22)。次に、設計支援装置は、稜線上の法線ベクトルチェック処理を実行する(S23)。次に、設計支援装置は、稜線上の曲率解析処理を実行する(S24)。さらに、設計支援装置は、曲面ポリゴンの曲率解析処理を実行する(S25)。   In the distortion occurrence detection process, the design support apparatus first executes a normal vector check process in the curved polygon (S21). Next, the design support apparatus executes a normal vector check process between curved polygons (S22). Next, the design support apparatus executes a normal vector check process on the ridge line (S23). Next, the design support apparatus executes a curvature analysis process on the ridgeline (S24). Furthermore, the design support apparatus executes curvature polygon curvature analysis processing (S25).

以上の処理は、S21−S25の順序で実行される必要はなく、実行順序を入れ替えてもよい。また、S21−S25のすべての処理を実行する必要はない。それぞれの処理を異なる時間間隔で独立に実行してもよい。   The above processes need not be executed in the order of S21 to S25, and the execution order may be changed. Further, it is not necessary to execute all the processes of S21 to S25. Each process may be executed independently at different time intervals.

また、S21の曲面ポリゴン内の補正ベクトルチェック処理において、歪みの発生がなかった場合に(それぞれの曲面ポリゴン内では、法線ベクトルが略一致していた場合に)
、S22の曲面ポリゴン間の法線ベクトルチェック処理を実行するようにしてもよい。そのようにすることで、曲面ポリゴン内の法線ベクトルの一致を確認した上で(曲面ポリゴン内に単一の法線ベクトルが存在することが確認された後)、曲面ポリゴン間での法線ベクトルを比較できる。
In addition, in the correction vector check processing in the curved polygon in S21, when there is no distortion (when the normal vectors substantially match in each curved polygon).
The normal vector check process between curved polygons in S22 may be executed. By doing so, after confirming that the normal vectors in the curved polygons match (after confirming that there is a single normal vector in the curved polygons), the normals between the curved polygons Compare vectors.

図16に、曲面ポリゴン内の法線ベクトルチェック処理(図15のS21)の詳細を示す。この処理では、設計支援装置は、歪み発生検知対象の曲面ポリゴンを選択する(S211)。曲面ポリゴンの選択の仕方としては、例えば、全曲面ポリゴンを選択の対象としてもよい。また、例えば、ランダムに所定個数の曲面ポリゴンを選択の対象としてもよい。また、例えば、ユーザが入力装置で指定した立体モデル上の領域に含まれる曲面ポリゴンを選択の対象としてもよい。なお、本実施形態では、曲面ポリゴンは、それぞれの曲面ポリゴンを識別する識別情報と、曲面ポリゴンを構成する制御点の個数(曲面の次数)と、制御点の座標とによって規定される。   FIG. 16 shows details of the normal vector check process (S21 in FIG. 15) in the curved polygon. In this process, the design support apparatus selects a curved polygon that is a distortion detection target (S211). As a method of selecting curved polygons, for example, all curved polygons may be selected. For example, a predetermined number of curved polygons may be selected at random. In addition, for example, a curved polygon included in a region on the stereo model designated by the user with the input device may be selected. In the present embodiment, the curved polygon is defined by identification information for identifying each curved polygon, the number of control points constituting the curved polygon (degree of the curved surface), and the coordinates of the control points.

次に、本設計支援装置は、曲面ポリゴン内のサンプル点を設定する(S212)。サンプル点は、例えば、曲面ポリゴンS(u,v)上で、事前に設定されたu,vの値(例えば、ユーザの設定値、あるいは、システムのデフォルトのパラメータ)にしたがって、決定すればよい。設計支援装置が、サンプル点として制御点そのものを指定するようにしてもよい。   Next, the design support apparatus sets sample points in the curved polygon (S212). The sample points may be determined, for example, according to u and v values (for example, user set values or system default parameters) set in advance on the curved polygon S (u, v). . The design support apparatus may designate the control point itself as the sample point.

次に、設計支援装置は、各サンプル点での各法線ベクトルを算出する(S213)。法線ベクトルの算出は、数4にしたがって算出する。この処理を実行する設計支援装置の不図示のCPUが、本発明の法線ベクトルを求める手段に相当する。   Next, the design support apparatus calculates each normal vector at each sample point (S213). The normal vector is calculated according to Equation 4. A CPU (not shown) of the design support apparatus that executes this processing corresponds to means for obtaining a normal vector of the present invention.

次に、設計支援装置は、法線ベクトル相互の間の角度を算出する(S214)。法線ベクトル間の角度は、内積計算と逆三角関数による。この処理を実行する設計支援装置のCPUが、本発明の法線ベクトルの相対関係を示す値を算出する手段に相当する。   Next, the design support apparatus calculates an angle between the normal vectors (S214). The angle between normal vectors is based on inner product calculation and inverse trigonometric function. The CPU of the design support apparatus that executes this processing corresponds to means for calculating a value indicating the relative relationship of the normal vectors of the present invention.

そして、設計支援装置は、それらの角度がいずれも基準値E1より大きいか否かを判定する(S215)。基準値E1は、例えば、ユーザ指定値、あるいは、システムのデフォルトのパラメータである。基準値E1は、歪みとして許容できる経験値から設定すればよい。この処理を実行する設計支援装置のCPUが、本発明の面要素歪み発生判定手段に相当する。   Then, the design support apparatus determines whether or not those angles are larger than the reference value E1 (S215). The reference value E1 is, for example, a user-specified value or a system default parameter. The reference value E1 may be set from an empirical value that is acceptable as distortion. The CPU of the design support apparatus that executes this processing corresponds to the surface element distortion occurrence determination means of the present invention.

そして、いずれかの法線ベクトル間の角度が、基準値E1より大きい場合、当該曲面ポリゴンを歪みありの表示とし、曲面ポリゴンの識別情報、あるいは、制御点の座標とともにエラーコードを設定する(S216)。曲面ポリゴンを歪みありとする表示としては、例えば、その曲面ポリゴンの表示色を変更すればよい。エラーコードは、例えば、図14のS3の警告表示で読み出され、表示装置に表示される。なお、曲面ポリゴンの表示色の変更を図14のS3の時点で実行してもよい。   If the angle between any of the normal vectors is larger than the reference value E1, the curved polygon is displayed with distortion, and an error code is set together with the identification information of the curved polygon or the coordinates of the control point (S216). ). For example, the display color of the curved polygon may be changed as the display indicating that the curved polygon is distorted. The error code is read, for example, in the warning display in S3 of FIG. 14 and displayed on the display device. Note that the display color of the curved polygon may be changed at S3 in FIG.

次に、設計支援装置は、チェック対象の曲面ポリゴンをすべてチェックしたか否かを判定する。チェック対象の曲面ポリゴンをすべてチェックしていない場合、設計支援装置は、制御をS211に戻す。一方、チェック対象の曲面ポリゴンをすべてチェックした場合、設計支援装置は、処理を終了する。   Next, the design support apparatus determines whether or not all the curved polygons to be checked have been checked. When not all the curved polygons to be checked are checked, the design support apparatus returns the control to S211. On the other hand, when all the curved polygons to be checked are checked, the design support apparatus ends the process.

図17に、曲面ポリゴン間の法線ベクトルチェック処理(図15のS22)の詳細を示す。この処理では、設計支援装置は、立体モデル上で監視対象のサンプル点を選択する(S221)。サンプル点の選択の仕方としては、例えば、全曲面ポリゴンから1点ずつ所定の点(例えば、稜線上の1つの制御点)を選択し、監視対象としてもよい。また、例え
ば、ランダムに所定個数の曲面ポリゴンを選択し、それらに含まれる所定の点をそれぞれ1つずつ選択して監視対象としてもよい。また、例えば、ユーザが入力装置で指定した立体モデル上の領域に含まれる曲面ポリゴンから所定の点を選択の対象としてもよい。また、図15のS21の処理で、曲面ポリゴン内に歪みが検出されなかったものを抽出して、本処理の対象としてもよい。
FIG. 17 shows details of the normal vector check process between curved polygons (S22 in FIG. 15). In this process, the design support apparatus selects a sample point to be monitored on the three-dimensional model (S221). As a method of selecting the sample points, for example, a predetermined point (for example, one control point on the ridge line) may be selected one by one from all the curved polygons and may be monitored. Further, for example, a predetermined number of curved polygons may be selected at random, and each of the predetermined points included therein may be selected and monitored. Further, for example, a predetermined point may be selected from curved polygons included in a region on the stereo model designated by the user with the input device. In addition, in the process of S21 in FIG. 15, an object in which no distortion is detected in the curved polygon may be extracted and used as the target of this process.

次に、本設計支援装置は、サンプル点周囲の曲面ポリゴンを検索する(S222)。曲面ポリゴンは、S221で選択されたサンプル点が所属する曲面ポリゴンを抽出すればよい。   Next, the design support apparatus searches for a curved polygon around the sample point (S222). As the curved polygon, the curved polygon to which the sample point selected in S221 belongs may be extracted.

次に、設計支援装置は、各曲面ポリゴンで法線ベクトルを算出する(S223)。法線ベクトルは、例えば、それぞれの曲面ポリゴン内の内部制御点のいずれか、あるいは、曲面ポリゴンの重心位置等において、算出すればよい。法線ベクトルの算出は、数4にしたがって算出する。   Next, the design support apparatus calculates a normal vector for each curved polygon (S223). The normal vector may be calculated, for example, at any of the internal control points in each curved polygon, or at the center of gravity of the curved polygon. The normal vector is calculated according to Equation 4.

次に、設計支援装置は、法線ベクトル相互の間の角度を算出する(S224)。法線ベクトル間の角度は、内積計算および逆三角関数したがって求める。   Next, the design support apparatus calculates an angle between the normal vectors (S224). The angle between the normal vectors is determined according to the inner product calculation and the inverse trigonometric function.

そして、設計支援装置は、それらの角度がいずれも基準値E1〜E2の範囲にあるか否かを判定する(S215)。基準値E1、E2は、例えば、ユーザ指定値、あるいは、システムのデフォルトのパラメータである。基準値E1は、歪みとして許容できる経験値から設定すればよい。また、基準値E2は、本来、曲面ポリゴン間に、折れ目がある場合に、そのような折れ目を境界線とする2つのポリゴンをチェックの対象から除外するための値(十分に大きな角度、例えば、20度以上の値)を設定すればよい。この処理を実行する設計支援装置のCPUが、本発明の面データに歪みが発生したと判定する手段に相当する。   Then, the design support apparatus determines whether or not those angles are within the range of the reference values E1 to E2 (S215). The reference values E1 and E2 are, for example, user-specified values or system default parameters. The reference value E1 may be set from an empirical value that is acceptable as distortion. The reference value E2 is originally a value for excluding two polygons having a boundary between such folds as a boundary when there is a fold between curved polygons (a sufficiently large angle, For example, a value of 20 degrees or more may be set. The CPU of the design support apparatus that executes this processing corresponds to means for determining that distortion has occurred in the surface data of the present invention.

そして、いずれかの法線ベクトル間の角度が、基準値E1〜E2の範囲にある場合、当該曲面ポリゴンを歪みありの表示とし、曲面ポリゴンの識別情報、あるいは、制御点の座標とともにエラーコードを設定する(S216)。このようにして、設計支援装置は、許容値を超える法線ベクトルの角度の差違から歪みを検知するともに、本来折れ目として存在していた箇所を除外し、誤ったエラー表示を低減できる。   If the angle between any of the normal vectors is within the range of the reference values E1 to E2, the curved polygon is displayed with distortion, and an error code is displayed together with the identification information of the curved polygon or the coordinates of the control point. The setting is made (S216). In this way, the design support apparatus can detect distortion from the difference in the angle of the normal vector exceeding the allowable value, and can exclude a portion that originally existed as a fold and reduce erroneous error display.

次に、設計支援装置は、チェック対象のサンプル点をすべてチェックしたか否かを判定する。チェック対象の曲面ポリゴンをすべてチェックしていない場合、設計支援装置は、制御をS221に戻す。一方、チェック対象の曲面ポリゴンをすべてチェックした場合、設計支援装置は、処理を終了する。   Next, the design support apparatus determines whether all sample points to be checked have been checked. If not all the curved polygons to be checked are checked, the design support apparatus returns the control to S221. On the other hand, when all the curved polygons to be checked are checked, the design support apparatus ends the process.

なお、稜線ベクトルのチェック処理(図15のS23)の処理は、曲面ポリゴン内の法線ベクトルチェック処理(図16)において、サンプル点を稜線上に限定すればよい。したがって、チェック手順は、図16の場合と同様であるので、その説明を省略する。   In the ridge line vector check process (S23 in FIG. 15), the sample points may be limited to the ridge line in the normal vector check process in the curved polygon (FIG. 16). Therefore, the check procedure is the same as that in FIG.

図18に、稜線上の曲率解析処理(図15のS24)の詳細を示す。この処理では、設計支援装置は、サンプル点を選択する(S241)。この処理は、図17のS221と同様である。   FIG. 18 shows details of the curvature analysis process on the ridgeline (S24 in FIG. 15). In this process, the design support apparatus selects a sample point (S241). This process is the same as S221 in FIG.

次に、設計支援装置は、サンプル点周囲の稜線を選択する(S242)。この処理では、例えば、サンプル点周囲の曲面ポリゴンを検索し、その曲面ポリゴンに所属する稜線を選択すればよい。選択する稜線の数は、例えば、サンプル点に所定個数の上限を定めておけばよい。また、サンプル点から所定距離のすべての稜線を選択してもよい。この処理を
実行する設計支援装置のCPUが、本発明の稜線抽出手段に相当する。
Next, the design support apparatus selects a ridge line around the sample point (S242). In this process, for example, a curved polygon around the sample point may be searched and a ridge line belonging to the curved polygon may be selected. The number of ridge lines to be selected may be determined, for example, by setting a predetermined number of upper limits for sample points. Further, all the ridgelines at a predetermined distance from the sample point may be selected. The CPU of the design support apparatus that executes this processing corresponds to the ridge line extraction means of the present invention.

次に、設計支援装置は、稜線上で曲率の最大値Rを求める(S243)。最大値は、例えば、稜線上で所定間隔ごとに曲率を求めて、その最大値を選択すればよい。あるいは、稜線の両端から二分法において、曲率が増加する方向に絞り込んでいってもよい。そして、曲率の増加率が所定の限度に収まった時点で、曲率の最大値として判定すればよい。曲率は、数7あるいは数8にしたがって求めればよい。この処理を実行する設計支援装置のCPUが、本発明の稜線歪み判定手段に相当する。   Next, the design support apparatus obtains the maximum curvature value R on the ridge line (S243). For example, the maximum value may be obtained by obtaining the curvature at predetermined intervals on the ridgeline and selecting the maximum value. Or you may narrow down to the direction where a curvature increases in the bisection method from the both ends of a ridgeline. Then, when the increase rate of the curvature falls within a predetermined limit, it may be determined as the maximum value of the curvature. The curvature may be obtained according to Equation 7 or Equation 8. The CPU of the design support apparatus that executes this processing corresponds to the ridge line distortion determination means of the present invention.

次に、設計支援装置は、曲率の最大値Rが所定の基準値E3を越えたか否かを判定する(S245)。この処理を実行する設計支援装置のCPUが、本発明の曲率算出手段に相当する。曲率の最大値Rが所定の基準値E3を越えた場合、設計支援装置は、当該稜線を含む曲面ポリゴンを歪みありとして表示し、曲面ポリゴンの識別情報、あるいは、制御点の座標とともにエラーコードを設定する(S246)。   Next, the design support apparatus determines whether or not the maximum curvature value R exceeds a predetermined reference value E3 (S245). The CPU of the design support apparatus that executes this process corresponds to the curvature calculation means of the present invention. When the maximum curvature value R exceeds the predetermined reference value E3, the design support apparatus displays the curved polygon including the ridge line as being distorted, and displays an error code together with the identification information of the curved polygon or the coordinates of the control point. Setting is made (S246).

なお、上記処理では、曲率の大きさが所定の基準値E3を越えたか否かを判定したが、これに代えて曲率の変化が所定の限度を超えたか否かを判定してもよい。   In the above process, it is determined whether or not the magnitude of the curvature exceeds a predetermined reference value E3. Alternatively, it may be determined whether or not the change in the curvature exceeds a predetermined limit.

さらにまた、当所から折れている部位をチェックの対象から除外するようにしてもよい。すなわち、S242およびS243の処理で、変形操作開始時にすでに曲率が、所定の限界値E4を超えているものを除外してもよい。また、S245の判定で、変形操作開始時にすでに曲率の最大値Rが所定の限界値E4を超えている場合に、その曲率の最大値Rを無視するようにしてもよい。   Furthermore, a part that is broken from this place may be excluded from the check target. That is, in the processing of S242 and S243, it may be excluded that the curvature has already exceeded the predetermined limit value E4 at the start of the deformation operation. Further, if it is determined in S245 that the maximum curvature value R has already exceeded a predetermined limit value E4 at the start of the deformation operation, the maximum curvature value R may be ignored.

また、立体モデルの変形操作時に屈曲操作がなされた場合に、その屈曲操作によって折られた部位をチェックの対象から除外するようにしてもよい。すなわち、変形操作とともに、曲率を監視し、S242およびS243の処理で、曲率が所定の限界値E4を超えているものを除外すればよい。また、変形操作ともに、曲率を監視し、S245の判定で、曲率の最大値Rが所定の限界値E4を超えている場合に、その曲率の最大値Rを無視すればよい。   Further, when a bending operation is performed during the deformation operation of the three-dimensional model, a portion folded by the bending operation may be excluded from the check target. That is, the curvature is monitored together with the deformation operation, and it is only necessary to exclude those in which the curvature exceeds the predetermined limit value E4 in the processes of S242 and S243. In addition, in the deformation operation, the curvature is monitored, and if the maximum value R of the curvature exceeds a predetermined limit value E4 in the determination in S245, the maximum value R of the curvature may be ignored.

次に、設計支援装置は、サンプル点の周囲で、監視対象の稜線をすべてチェックしたか否かを判定する(S247)。監視対象のすべての稜線をチェックしていない場合、設計支援装置は、制御をS242に戻す。当該サンプル点の周囲で監視対象のすべての稜線をチェックした場合、設計支援装置は、チェック対象のすべてのサンプル点をチェックしたか否かを判定する(S248)。   Next, the design support apparatus determines whether or not all the ridgelines to be monitored have been checked around the sample point (S247). When not all the ridgelines to be monitored are checked, the design support apparatus returns the control to S242. When all the ridgelines to be monitored are checked around the sample point, the design support apparatus determines whether or not all the sample points to be checked have been checked (S248).

チェック対象のすべてのサンプル点をチェックしていない場合、設計支援装置は、制御をS241に戻す。一方、チェック対象のすべてのサンプル点をチェックした場合、設計支援装置は、処理を終了する。   If all sample points to be checked have not been checked, the design support apparatus returns the control to S241. On the other hand, when all the sample points to be checked are checked, the design support apparatus ends the process.

図19に、曲面ポリゴン(パッチ)の曲率解析処理(図15のS25)の詳細を示す。この処理では、設計支援装置は、入力装置を通じたユーザ操作によって、立体モデル上での解析対象となる解析領域の指定を受ける(変形操作前に事前に設定を受けておいてもよい)(S250)。   FIG. 19 shows details of the curvature polygon (patch) curvature analysis processing (S25 in FIG. 15). In this process, the design support apparatus receives designation of an analysis region to be analyzed on the three-dimensional model by a user operation through the input device (may be set in advance before the deformation operation) (S250). ).

次に、設計支援装置は、解析領域内の頂点を選択する(S251)。そして、設計支援装置は、頂点の法線Niと、その頂点につながる稜線Li(または頂点近傍の稜線)の接線Tiを算出する(S252)。この処理を実行する設計支援装置のCPUが近傍稜線抽出手段に相当する。   Next, the design support apparatus selects a vertex in the analysis area (S251). Then, the design support apparatus calculates the normal Ni of the vertex and the tangent line Ti of the ridge line Li (or the ridge line near the vertex) connected to the vertex (S252). The CPU of the design support apparatus that executes this process corresponds to the neighborhood ridge line extraction means.

次に、設計支援装置は、稜線Liを法線Nkと接線Tiのなす平面に投影し、平面上で投影線上の最大の曲率Riを求める(S253)。投影線上の最大の曲率Riは、図18のS243と同様の手順で求めればよい。すなわち、投影線上で、所定の間隔で、順次数7または数8にしたがって曲率Riを求めてもよい。また、投影線上で両端から二分法にて、曲率Riが最大となる方向を探索してもよい。この処理を実行する設計支援装置のCPUが投影曲率算出手段に相当する。   Next, the design support apparatus projects the ridgeline Li onto a plane formed by the normal line Nk and the tangent line Ti, and obtains the maximum curvature Ri on the projection line on the plane (S253). The maximum curvature Ri on the projection line may be obtained by a procedure similar to S243 in FIG. That is, the curvature Ri may be obtained sequentially according to Equation 7 or Equation 8 at predetermined intervals on the projection line. Further, a direction in which the curvature Ri is maximized may be searched by a bisection method from both ends on the projection line. The CPU of the design support apparatus that executes this process corresponds to the projection curvature calculation means.

次に、設計支援装置は、頂点周囲の稜線すべてをチェックしたか否かを判定する(S254)。頂点周囲の稜線すべてのチェックが終了していない場合、設計支援装置は、制御をS252に戻し、次の稜線に対して処理を繰り返す。   Next, the design support apparatus determines whether or not all the ridge lines around the vertex have been checked (S254). If all the ridge lines around the vertex have not been checked, the design support apparatus returns the control to S252 and repeats the process for the next ridge line.

頂点周囲の稜線すべてのチェックが終了した場合、設計支援装置は、チェック対象である解析領域の頂点すべてをチェックしたか否かを判定する(S255)。解析領域のすべての頂点のチェックが終了していない場合、設計支援装置は、制御をS251に戻し、次の頂点に対して処理を繰り返す。   When all the ridge lines around the vertices have been checked, the design support apparatus determines whether all the vertices in the analysis area to be checked have been checked (S255). If all the vertices in the analysis area have not been checked, the design support apparatus returns the control to S251 and repeats the process for the next vertex.

チェック対象のすべての頂点のチェックが終了した場合、設計支援装置は、求めた稜線ごとの最大の曲率Riのうちの最大値Rmaxを求める(S256)。そして、設計支援装置は、稜線ごとの最大の曲率Riのうちの最大値Rmaxが、所定の基準値E3を越えるか否かを判定する(S257)。この処理を実行する設計支援装置のCPUが、本発明の稜線歪み判定手段に相当する。最大値Rmaxが基準値E3を越える場合、設計支援装置は、当該曲面ポリゴンを歪みありの表示とし、曲面ポリゴンの識別情報とともにエラーコードを設定する(S258)。   When the check of all the vertices to be checked is completed, the design support apparatus obtains the maximum value Rmax of the maximum curvature Ri for each obtained ridgeline (S256). Then, the design support device determines whether or not the maximum value Rmax of the maximum curvature Ri for each ridge line exceeds a predetermined reference value E3 (S257). The CPU of the design support apparatus that executes this processing corresponds to the ridge line distortion determination means of the present invention. When the maximum value Rmax exceeds the reference value E3, the design support apparatus sets the curved polygon as a display with distortion, and sets an error code together with the identification information of the curved polygon (S258).

なお、上記処理では、曲率の大きさが所定の基準値E3を越えたか否かを判定したが、これに代えて曲率の変化が所定の限度を超えたか否かを判定してもよい。   In the above process, it is determined whether or not the magnitude of the curvature exceeds a predetermined reference value E3. Alternatively, it may be determined whether or not the change in the curvature exceeds a predetermined limit.

さらにまた、当所から折れている部位をチェックの対象から除外するようにしてもよい。すなわち、S253の処理で、変形操作開始時にすでに最大の曲率Riが、所定の限界値E4を超えているものを除外してもよい。また、S257の判定で、変形操作開始時にすでに最大の曲率がRiが所定の限界値E4を超えている場合に、その最大の曲率Riを無視するようにしてもよい。   Furthermore, a part that is broken from this place may be excluded from the check target. That is, in the process of S253, a case where the maximum curvature Ri has already exceeded the predetermined limit value E4 at the start of the deformation operation may be excluded. In addition, when the maximum curvature Ri already exceeds a predetermined limit value E4 at the start of the deformation operation in the determination of S257, the maximum curvature Ri may be ignored.

また、立体モデルの変形操作時に、屈曲操作がなされた場合に、その屈曲操作によって折られた部位をチェックの対象から除外するようにしてもよい。すなわち、変形操作ともに、曲率を監視し、S253の処理で、最大の曲率Riが所定の限界値E4を超えているものを除外すればよい。また、変形操作ともに、曲率を監視し、S257の判定で、最大の曲率Riが所定の限界値E4を超えている場合に、その最大の曲率Riを無視すればよい。   Further, when a bending operation is performed during the deformation operation of the three-dimensional model, a portion folded by the bending operation may be excluded from the check target. In other words, the curvature is monitored in both the deformation operations, and it is only necessary to exclude those in which the maximum curvature Ri exceeds the predetermined limit value E4 in the process of S253. In addition, in the deformation operation, the curvature is monitored, and if the maximum curvature Ri exceeds a predetermined limit value E4 in the determination in S257, the maximum curvature Ri may be ignored.

以上述べたように、本実施形態の設計支援装置は、立体モデルの変形操作時に、立体モデルを構成する曲面ポリゴン内の歪みの発生を監視する。歪みは、曲面ポリゴン上の複数点の法線ベクトルの角度(または角度の変化量)が所定の基準値を超えたか否かによって判断される。そして、曲面ポリゴンの歪みの発生が検知された場合、警告表示される。   As described above, the design support apparatus according to the present embodiment monitors the occurrence of distortion in the curved polygon constituting the stereo model when the stereo model is deformed. The distortion is determined based on whether or not the angle (or the amount of change in angle) of normal vectors at a plurality of points on the curved polygon exceeds a predetermined reference value. When the occurrence of distortion of the curved polygon is detected, a warning is displayed.

さらに、曲面ポリゴン内の歪みが検知されなかった場合でも、本設計支援装置は、曲面ポリゴン間の法線ベクトルの角度を求め、その角度(または角度の変化量)が基準値E1〜E2の範囲にあるか否かを判定することによって歪みの発生を検知する。この場合、法線ベクトル間の角度(または角度の変化量)が基準値E1を越えた場合、歪みが許容量を
超えたと判断できる。また、法線ベクトル間の角度(または角度の変化量)が基準値E2を越えた場合には、本来、2つの曲面ポリゴンは、折れた状態の位置関係にあり、歪み検出の対象から除外することができる。このようにして、本設計支援装置は、不要な警告表示を抑制した状態で、検知すべき歪みの発生を報告できる。
Further, even when no distortion in the curved polygon is detected, the present design support apparatus obtains the angle of the normal vector between the curved polygons, and the angle (or the amount of change in the angle) is in the range of the reference values E1 to E2. The occurrence of distortion is detected by determining whether or not it exists. In this case, when the angle between the normal vectors (or the amount of change in the angle) exceeds the reference value E1, it can be determined that the distortion has exceeded the allowable amount. When the angle between the normal vectors (or the amount of change in angle) exceeds the reference value E2, the two curved polygons are inherently in a broken state and are excluded from distortion detection targets. be able to. In this way, the present design support apparatus can report the occurrence of distortion to be detected while suppressing unnecessary warning display.

さらに、本設計支援装置は、曲面ポリゴン間の境界線である稜線上の複数の法線ベクトル間で角度を解析し、その角度(または角度の変化率)が所定の基準値E1を越えたか否かによって歪みの発生を検知する。   Furthermore, this design support apparatus analyzes an angle between a plurality of normal vectors on a ridge line that is a boundary line between curved polygons, and whether or not the angle (or change rate of the angle) exceeds a predetermined reference value E1. The occurrence of distortion is detected.

さらに、本設計支援装置は、曲面ポリゴン間の境界線である稜線の曲率を監視し、曲率が所定の基準値E1を越えたか否かによって曲面ポリゴンの歪みの発生を検知する。またはその曲率の変化が所定の限度を越えたか否かによって曲面ポリゴンの歪みの発生を検知する。   Further, the design support apparatus monitors the curvature of the ridge line that is a boundary line between the curved polygons, and detects the occurrence of the distortion of the curved polygon depending on whether or not the curvature exceeds a predetermined reference value E1. Alternatively, the occurrence of distortion of the curved polygon is detected based on whether or not the change in curvature exceeds a predetermined limit.

さらに、本設計支援装置は、曲面領域上で頂点の法線ベクトルと、その頂点近傍での稜線の接線とが構成する平面に、その稜線を投影し、稜線の曲率を求め、曲率が所定の基準値E1を越えたか否かによって曲面ポリゴンの歪みの発生を検知する。またはその曲率の変化が所定の限度を越えたか否かによって曲面ポリゴンの歪みの発生を検知する。このようにして、例えば、特定の領域の指定を受けて、その領域を被覆する曲面全体の歪みを監視することができる。   Further, the design support apparatus projects the ridge line on the plane formed by the normal vector of the vertex on the curved surface area and the tangent line of the ridge line in the vicinity of the vertex, obtains the curvature of the ridge line, and the curvature is predetermined. The occurrence of distortion of the curved polygon is detected based on whether or not the reference value E1 is exceeded. Alternatively, the occurrence of distortion of the curved polygon is detected based on whether or not the change in curvature exceeds a predetermined limit. In this way, for example, when a specific area is designated, the distortion of the entire curved surface covering the area can be monitored.

このように、本設計支援装置は、複数の判断基準によって立体モデル上の歪みの発生を監視し、歪みが発生した場合には、その旨を警告できる。その結果、ユーザは、変形操作を停止し、そのような歪みの発生のない操作手順で変形操作を再開すればよい。また、ユーザは、そのまま変形操作を継続し、変形操作完了後に、歪みの発生が検知された付近を再度変形操作することによって歪みを除去できる。   As described above, the present design support apparatus can monitor the occurrence of distortion on the three-dimensional model according to a plurality of determination criteria, and can warn that the distortion occurs. As a result, the user may stop the deformation operation and restart the deformation operation with an operation procedure that does not cause such distortion. Further, the user can continue the deformation operation as it is, and after the deformation operation is completed, the user can remove the distortion by performing the deformation operation again in the vicinity where the occurrence of the distortion is detected.

さらに、当所から折れている部位を除外し、あるいは、変形操作の過程で屈曲操作がなされたときに、その屈曲操作によって折られた部位を除外することで、不要なエラー表示を低減でき、本来の認識されるべきエラー表示が多数のノイズ的なエラー表示に埋もれてしまう弊害を低減できる。   Furthermore, by excluding the part that has been folded from this site, or by excluding the part that has been folded by the bending operation when the bending operation has been performed in the course of the deformation operation, unnecessary error display can be reduced. It is possible to reduce the adverse effect that the error display to be recognized is buried in a number of noisy error displays.

<変形例>
上記実施形態では、ユーザによる変形操作とともに、曲面ポリゴン内の法線ベクトル、異なる曲面ポリゴン間の法線ベクトルを監視し、法線ベクトルの角度、角度の変化率から歪みの発生を検知した。また、ユーザによる変形操作とともに、稜線の曲率、曲面ポリゴンの曲率を監視し、歪みの発生を検知した。
<Modification>
In the above embodiment, along with the deformation operation by the user, the normal vector in the curved polygon and the normal vector between different curved polygons are monitored, and the occurrence of distortion is detected from the angle of the normal vector and the angle change rate. In addition to the deformation operation by the user, the curvature of the ridgeline and the curvature of the curved polygon were monitored to detect the occurrence of distortion.

しかし、このような処理に代えて、変形操作とは切り離して、すでに存在する立体モデル上で歪みが発生しているか否かを判定してもよい。判定処理の手順は、変形操作とは切り離して実施すること以外は、上記実施形態と同様である。   However, instead of such processing, it may be determined whether or not distortion has occurred on the existing three-dimensional model separately from the deformation operation. The procedure of the determination process is the same as that in the above embodiment except that the determination process is performed separately from the deformation operation.

図20は、データ作成時の法線ベクトルによる歪み検知処理の概念を説明する図である。設計支援装置は、検査対象部分、例えば、円で示された箇所に存在する曲面ポリゴンに対して、複数のサンプル点で法線ベクトルを算出し、相互の角度が所定の基準値以内かどうかを判定すればよい。また、稜線の曲率が所定の基準値以内かどうかを判定すればよい。   FIG. 20 is a diagram for explaining the concept of distortion detection processing using normal vectors at the time of data creation. The design support device calculates a normal vector at a plurality of sample points for a curved polygon existing in a portion to be inspected, for example, a circle, and determines whether the mutual angle is within a predetermined reference value. What is necessary is just to judge. Moreover, what is necessary is just to determine whether the curvature of a ridgeline is less than a predetermined reference value.

図21に、そのようなデータ作成時の法線ベクトルによる歪み検知処理の手順を示す。この処理では、設計支援装置は、ユーザ操作に応答して製品データの作図を実行する(S
80)。そして、製品データの作図を完了する(S81)。
FIG. 21 shows the procedure of distortion detection processing using a normal vector when creating such data. In this process, the design support apparatus executes product data drawing in response to a user operation (S
80). Then, the product data drawing is completed (S81).

すると、設計支援装置は、上記図15−図18で説明した不具合のある面(歪みの発生した面)をすべて摘出する(S82)。   Then, the design support apparatus extracts all the defective surfaces (surfaces where distortion has occurred) described in FIGS. 15 to 18 (S82).

ユーザは、摘出結果を基に、面を修正し、立体モデルを整備する操作を実施する。設計支援装置は、そのユーザ操作を受け付けて、面の修正・整備を実行する(S83)。   Based on the extraction result, the user corrects the surface and performs an operation for maintaining the three-dimensional model. The design support apparatus receives the user operation and executes surface correction / maintenance (S83).

なお、このように立体モデルの全体で歪みを検出する代わりに、所定の作業単位ごと、あるいは、立体モデルの部分ごとに歪みを検出してもよい(S91)。ユーザは、そのような作業単位ごと、部分ごとに、面を修正し、立体モデルを整備する操作を実施する。設計支援装置は、そのユーザ操作を受け付けて、そのような作業単位ごと、部分ごとに、面の修正・整備を実行する(S92)。このような作業を繰り返して、製品データの作成が完了する(S93)。   Instead of detecting the distortion in the entire stereo model in this way, the distortion may be detected for each predetermined work unit or for each part of the stereo model (S91). The user performs an operation of correcting the surface and maintaining the three-dimensional model for each work unit and each part. The design support apparatus receives the user operation and executes surface correction / maintenance for each unit of work or for each part (S92). Such work is repeated to complete the creation of product data (S93).

このような処理によって、シワ、よたりというような歪みのない製品データを作成できる。   By such processing, product data free from distortion such as wrinkles and distortion can be created.

上記実施形態では、曲面ポリゴンによって3次元モデルを構成する設計支援装置を例にして、立体モデル変形時のの歪み、あるいは立体モデル形成時の歪みを検出する処理を説明した。しかし、3次元モデルとしては、曲面ポリゴンによって構成されるものに限定される分けではない。例えば、曲面ポリゴンを組み合わせる代わりに、スプライン曲線等の曲線、円、楕円、多項式関数による曲線を所定の回転軸で回転した曲面、上記曲線を所定方向に移動した軌跡である曲面等の組合せによって3次元モデルを構成した場合でも、本発明の実施は可能である。例えば、それぞれの曲面上で、所定の間隔で、サンプル点を設定し、隣接サンプル点間で法線ベクトルの角度、角度の変化等を監視すればよい。また、法線ベクトルとサンプル点近傍の曲面の接線ベクトルから平面を形成し、そのような平面への曲面の投影によって投影された稜線を形成し、図19と同様の手順で、曲率を監視すればよい。   In the above-described embodiment, the process of detecting distortion at the time of deforming a three-dimensional model or detecting distortion at the time of forming a three-dimensional model has been described using a design support apparatus that forms a three-dimensional model by curved polygons as an example. However, the three-dimensional model is not limited to those composed of curved polygons. For example, instead of combining curved polygons, a combination of a curved line such as a spline curve, a circle, an ellipse, or a curved surface obtained by rotating a polynomial function with a predetermined rotation axis, or a curved surface that is a trajectory obtained by moving the curve in a predetermined direction is used. Even when a dimensional model is configured, the present invention can be implemented. For example, sample points may be set at predetermined intervals on each curved surface, and the angle of the normal vector, change in angle, etc. may be monitored between adjacent sample points. Also, a plane is formed from the normal vector and the tangent vector of the curved surface near the sample point, and a projected ridge line is formed by projecting the curved surface onto such a plane, and the curvature is monitored in the same procedure as in FIG. That's fine.

曲面ポリゴンで構成されている立体モデルを変形した例を示す図である。It is a figure which shows the example which deform | transformed the solid model comprised by the curved surface polygon. 曲面ポリゴンをメッシュに分割した例を示す図である。It is a figure which shows the example which divided | segmented the curved-surface polygon into the mesh. 三角形のパッチによる立体モデルの例を示す図である。It is a figure which shows the example of the solid model by a triangular patch. 3次ベジエ曲線を示す図である。It is a figure which shows a cubic Bezier curve. 4角形パッチによる3次ベジエ曲面の例を示す図である。It is a figure which shows the example of the cubic Bezier curved surface by a quadrangular patch. 3次四角パッチとのその内部制御点の配置を示す図である。It is a figure which shows arrangement | positioning of the internal control point with a tertiary square patch. 4次四角パッチとのその内部制御点の配置を示す図である。It is a figure which shows arrangement | positioning of the internal control point with a quartic square patch. 三角形パッチによる3次ベジエ曲面の例を示す図である。It is a figure which shows the example of the cubic Bezier curved surface by a triangular patch. 3次三角パッチとのその内部制御点の配置を示す図である。It is a figure which shows arrangement | positioning of the internal control point with a tertiary triangular patch. 4次三角パッチとのその内部制御点の配置を示す図である。It is a figure which shows arrangement | positioning of the internal control point with a quartic triangular patch. サンプル点とその周囲に存在する複数の曲面ポリゴンとの関係を示す図である。It is a figure which shows the relationship between a sample point and the some curved surface polygon which exists around it. 曲線上の点の位置ベクトルと、その1次微分、2次微分の関係を示す図である。It is a figure which shows the position vector of the point on a curve, and the relationship between the 1st derivative and the 2nd derivative. 曲面ポリゴンの曲率解析の概念を示す図である。It is a figure which shows the concept of the curvature analysis of a curved-surface polygon. 立体モデルの変形操作処理の処理フローを示す図である。It is a figure which shows the processing flow of a deformation | transformation operation process of a stereo model. 歪み発生検知処理の詳細を示す図である。It is a figure which shows the detail of distortion generation | occurrence | production detection processing. 曲面ポリゴン内の法線ベクトルチェック処理の詳細を示す図である。It is a figure which shows the detail of the normal vector check process in a curved surface polygon. 曲面ポリゴン間の法線ベクトルチェック処理の詳細を示す図である。It is a figure which shows the detail of the normal vector check process between curved surface polygons. 稜線上の曲率解析処理の詳細を示す図である。It is a figure which shows the detail of the curvature analysis process on a ridgeline. 曲面ポリゴン(パッチ)の曲率解析処理の詳細を示す図である。It is a figure which shows the detail of the curvature analysis process of a curved surface polygon (patch). データ作成時の法線ベクトルによる歪み検知処理の概念を説明する図である。It is a figure explaining the concept of the distortion detection process by the normal vector at the time of data creation. データ作成時の法線ベクトルによる歪み検知処理の手順を示す図である。It is a figure which shows the procedure of the distortion detection process by the normal vector at the time of data creation.

Claims (17)

立体モデルの少なくとも一部分を被覆する面要素の組合せによって、前記立体モデルの表面を形成する、そのような設計支援装置によって作成された前記面要素の歪みを検出する面要素の歪み検出装置であって、
前記立体モデル上のサンプル点の周囲の複数の面要素上でそれぞれの法線ベクトルを求める手段と、
前記それぞれの面要素に指定される重み係数によって、前記それぞれの面要素の法線ベクトルを重み平均する手段と、
前記それぞれの面要素の法線ベクトル、および、前記重み平均によって求めた法線ベクトルの間の相対関係を示す値を算出する手段と、
前記相対関係を示す値が予め設定した所定の値を超えた場合に、前記面要素に歪みが発生したと判定する面要素歪み発生判定手段と、
を備えることを特徴とする面要素の歪み検出装置。
A surface element distortion detecting device for detecting distortion of the surface element created by such a design support device, which forms a surface of the three-dimensional model by a combination of surface elements covering at least a part of the three-dimensional model. ,
Means for obtaining respective normal vectors on a plurality of surface elements around sample points on the solid model;
Means for weighted average of normal vectors of the respective surface elements by a weighting factor designated for the respective surface elements;
Means for calculating a value indicating a relative relationship between the normal vector of each of the surface elements and the normal vector obtained by the weighted average ;
Surface element distortion occurrence determination means for determining that distortion has occurred in the surface element when a value indicating the relative relationship exceeds a predetermined value set in advance;
A surface element distortion detection device comprising:
前記歪みが発生した面要素を表示する手段をさらに備えることを特徴とする請求項1に記載の面要素の歪み検出装置。   2. The surface element distortion detection apparatus according to claim 1, further comprising means for displaying the surface element in which the distortion has occurred. 前記面要素が複数集合して形成される面データについて、互いに隣接する面要素の法線ベクトル間の相対関係を示す値を算出する手段と、
前記互いに隣接する面要素の法線ベクトル間の相対関係を示す値が予め設定した所定の値を超えた場合に、前記面データに歪みが発生したと判定する手段と、を備えることを特徴とする請求項1または2に記載の面要素の歪み検出装置。
For the face data to which the surface element is formed by a plurality sets, means for calculating a value indicating a relative relationship between the normal vector of the adjacent surface elements to each other,
Characterized in that it comprises when the value indicating the relative relationship between the normal vector of the adjacent surface elements to each other exceeds a predetermined value set in advance, and a determining means and distortion occurs in the surface data The surface element distortion detection device according to claim 1 or 2.
前記歪みが発生したと判定された隣接する2つの面要素を表示する手段をさらに備えることを特徴とする請求項3に記載の面要素の歪み検出装置。   The surface element distortion detection apparatus according to claim 3, further comprising means for displaying two adjacent surface elements determined to have the distortion. 前記相対関係は法線ベクトル間の角度であることを特徴とする請求項1から4のいずれかに記載の面要素の歪み検出装置。 Distortion detection unit of the surface element according to any one of claims 1 to 4, wherein the relative relationship, which is a angle between the legal line vector. 立体モデルの少なくとも一部分を被覆する面要素の組合せによって、前記立体モデルの表面を形成する、そのような設計支援装置によって作成された前記面要素の歪みを検出す
る面要素の歪み検出装置であって、
前記面要素が複数集合して形成される面データから頂点を抽出する手段と、
前記頂点近傍において面要素と面要素との境界線である稜線を複数抽出する近傍稜線抽出手段と、
前記頂点での前記面データの法線ベクトルと前記頂点近傍での前記稜線の接線ベクトルとから平面を形成し、形成された平面上に前記稜線を投影する投影手段と、
前記投影手段により投影された平面上の稜線の曲率を算出する投影曲率算出手段と、
前記投影手段および前記投影曲率算出手段を前記複数抽出されたそれぞれの稜線に適用することによって、それぞれの稜線の曲率を算出し、算出されたそれぞれの稜線の曲率から最大曲率を取得する最大曲率取得手段と、
前記最大曲率取得手段によって取得された最大曲率が予め設定した所定の値を超えた場合に、前記稜線に歪みが発生したと判定する稜線歪み判定手段と、を備えることを特徴とする面要素の歪み検出装置。
A surface element distortion detecting device for detecting distortion of the surface element created by such a design support device, which forms a surface of the three-dimensional model by a combination of surface elements covering at least a part of the three-dimensional model. ,
Means for extracting vertices from surface data formed by collecting a plurality of the surface elements;
A neighboring ridge line extracting means for extracting a plurality of ridge lines that are boundary lines between the surface elements in the vicinity of the vertex;
A projection unit that forms a plane from a normal vector of the surface data at the vertex and a tangent vector of the ridge line in the vicinity of the vertex, and projects the ridge line on the formed plane;
Projected curvature calculating means for calculating the curvature of the ridgeline on the plane projected by the projecting means;
By applying the projection unit and the projection curvature calculation unit to the plurality of extracted ridge lines, the curvature of each ridge line is calculated, and the maximum curvature acquisition is performed from the calculated curvature of each ridge line. Means,
Surface elements, characterized in that the maximum curvature maximum curvature acquired by the acquiring means if exceeding a predetermined value set in advance, and a ridge line distortion determination means determines that distortion has occurred in the ridge Distortion detection device.
最大曲率取得手段は、前記面データから複数の頂点が抽出された場合に、さらに、前記投影手段および前記投影曲率算出手段を前記複数抽出されたそれぞれの頂点の稜線に適用することによって、それぞれの頂点近傍から抽出されるそれぞれの稜線の曲率を算出し、算出されたそれぞれの頂点近傍のそれぞれの稜線の曲率から最大曲率を取得する請求項6に記載の面要素の歪み検出装置。When a plurality of vertices are extracted from the surface data, the maximum curvature acquisition unit further applies the projection unit and the projection curvature calculation unit to the ridgelines of the plurality of extracted vertices. The surface element distortion detection device according to claim 6, wherein the curvature of each ridge line extracted from the vicinity of the vertex is calculated, and the maximum curvature is obtained from the calculated curvature of each ridge line near the vertex. 歪みが発生した稜線に関連する面要素を表示する手段をさらに備えることを特徴とする請求項6または7に記載の面要素の歪み検出装置。   8. The surface element distortion detection apparatus according to claim 6, further comprising means for displaying a surface element related to a ridge line in which distortion has occurred. 前記面要素はポリゴンまたはサーフェイスのいずれかとしたことを特徴とする請求項1から7のいずれかに記載の面要素の歪み検出装置。   The distortion detection apparatus for a surface element according to claim 1, wherein the surface element is either a polygon or a surface. 立体モデルの少なくとも一部分を被覆する面要素の組合せによって、前記立体モデルの表面を形成する、そのような設計支援装置によって作成された前記面要素の歪みをコンピュータが検出する面要素の歪み検出方法であって、前記コンピュータが、
入力手段からの面要素の歪み検出の指示入力に応じて、前記立体モデル上のサンプル点の周囲の複数の面要素上でそれぞれの法線ベクトルを求める工程と、
前記それぞれの面要素に指定される重み係数によって、前記それぞれの面要素の法線ベクトルを重み平均するステップと、
前記それぞれの面要素の法線ベクトル、および、前記重み平均によって求めた法線ベクトルの間の相対関係を示す値を算出する工程と、
前記相対関係を示す値が予め設定した所定の値を超えた場合に、前記面要素に歪みが発生したと判定する面要素歪み判定工程と、を実行することを特徴とする面要素の歪み検出方法。
A surface element distortion detection method in which a computer detects a distortion of the surface element created by such a design support device, which forms a surface of the solid model by combining surface elements that cover at least a part of the three-dimensional model. And the computer
Obtaining normal vectors on a plurality of surface elements around sample points on the stereo model in response to an instruction input for detecting the distortion of the surface elements from the input means;
A weighted average of normal vectors of the respective surface elements by a weighting factor specified for the respective surface elements;
Calculating a value indicating a relative relationship between the normal vector of each of the surface elements and the normal vector obtained by the weighted average ;
And a surface element distortion determination step for determining that distortion has occurred in the surface element when a value indicating the relative relationship exceeds a predetermined value set in advance. Method.
面要素が複数集合して形成される面データについて、互いに隣接する面要素の法線ベクトル間の相対関係を示す値を算出する工程と、
前記互いに隣接する面要素の法線ベクトル間の相対関係を示す値が予め設定した所定の値を超えた場合に、前記面データに歪みが発生したと判定する工程と、をさらに実行することを特徴とする請求項10に記載の面要素の歪み検出方法。
For the surface data surface element is formed by a plurality sets, calculating a value indicating the relative relationship between the normal vector of the adjacent surface elements to each other,
If the value indicating the relative relationship between the normal vector of the adjacent surface elements to each other exceeds a predetermined value set in advance, and determining the distortion occurs on the surface data, it further executes The surface element distortion detection method according to claim 10.
立体モデルの少なくとも一部分を被覆する面要素の組合せによって、前記立体モデルの表面を形成する、そのような設計支援装置によって作成された前記面要素の歪みをコンピュータが検出する面要素の歪み検出方法であって、前記コンピュータが、
面要素が複数集合して形成される面データから頂点を抽出する工程と、
前記頂点近傍において面要素と面要素との境界線である稜線を複数抽出する近傍稜線抽
出工程と、
前記頂点での前記面データの法線ベクトルと前記稜線の前記頂点近傍での接線ベクトルとから平面を形成し、形成された平面上に前記稜線を投影する投影工程と、
前記投影工程により投影された平面上の稜線の曲率を算出する投影曲率算出工程と、
前記投影手段および前記投影曲率算出手段を前記複数抽出されたそれぞれの稜線に適用することによって、それぞれの稜線の曲率を算出し、算出されたそれぞれの稜線の曲率から最大曲率を取得する最大曲率取得工程と、
前記最大曲率取得工程において取得された最大曲率が予め設定した所定の値を超えた場合に、前記稜線に歪みが発生したと判定する稜線歪み判定工程と、実行することを特徴とする面要素の歪み検出方法。
A surface element distortion detection method in which a computer detects a distortion of the surface element created by such a design support device, which forms a surface of the solid model by combining surface elements that cover at least a part of the three-dimensional model. And the computer
Extracting vertices from surface data formed by collecting a plurality of surface elements;
A neighboring ridge line extracting step of extracting a plurality of ridge lines that are boundary lines between the surface elements in the vicinity of the vertex;
Forming a plane from a normal vector of the surface data at the vertex and a tangent vector near the vertex of the ridge, and projecting the ridge on the formed plane;
A projected curvature calculating step of calculating a curvature of a ridge line on the plane projected by the projecting step;
By applying the projection unit and the projection curvature calculation unit to the plurality of extracted ridge lines, the curvature of each ridge line is calculated, and the maximum curvature acquisition is performed from the calculated curvature of each ridge line. Process,
Surface elements, characterized in if it exceeds a predetermined value the maximum curvature obtained at the maximum curvature acquisition process has been set in advance, and the ridge line distortion determination step determines that distortion has occurred in the ridge, to perform Distortion detection method.
最大曲率取得工程では、前記コンピュータは、前記面データから複数の頂点が抽出された場合に、さらに、前記投影工程および前記投影曲率算出工程を前記複数抽出されたそれぞれの頂点の稜線に適用することによって、それぞれの頂点近傍から抽出されるそれぞれの稜線の曲率を算出し、算出されたそれぞれの頂点近傍のそれぞれの稜線の曲率から最大曲率を取得する請求項12に記載の面要素の歪み検出方法。In the maximum curvature obtaining step, when a plurality of vertices are extracted from the surface data, the computer further applies the projection step and the projected curvature calculation step to the ridge lines of the plurality of extracted vertices. The distortion detection method for a surface element according to claim 12, wherein the curvature of each ridge line extracted from each vertex vicinity is calculated, and the maximum curvature is obtained from the calculated curvature of each ridge line near each vertex. . 立体モデルの少なくとも一部分を被覆する面要素の組合せによって、前記立体モデルの表面を形成する、そのような設計支援装置によって作成された前記面要素の歪みを検出するコンピュータ実行可能なプログラムであって、コンピュータに、
入力手段からの面要素の歪み検出の指示入力に応じて、前記立体モデル上のサンプル点の周囲の複数の面要素上でそれぞれの法線ベクトルを求める工程と、
前記それぞれの面要素に指定される重み係数によって、前記それぞれの面要素の法線ベクトルを重み平均するステップと、
前記それぞれの面要素の法線ベクトル、および、前記重み平均によって求めた法線ベクトルの間の相対関係を示す値を算出する工程と、
前記相対関係を示す値が予め設定した所定の値を超えた場合に、前記面要素に歪みが発生したと判定する工程と、を実行させることを特徴とする面要素の歪みを検出させるコンピュータ実行可能なプログラム。
A computer-executable program for detecting distortion of the surface element created by such a design support device, which forms the surface of the three-dimensional model by a combination of surface elements covering at least a part of the three-dimensional model, On the computer,
Obtaining normal vectors on a plurality of surface elements around sample points on the stereo model in response to an instruction input for detecting the distortion of the surface elements from the input means;
A weighted average of normal vectors of the respective surface elements by a weighting factor specified for the respective surface elements;
Calculating a value indicating a relative relationship between the normal vector of each of the surface elements and the normal vector obtained by the weighted average ;
And a step of determining that distortion has occurred in the surface element when a value indicating the relative relationship exceeds a predetermined value set in advance. Possible program.
面要素が複数集合して形成される面データについて、互いに隣接する面要素の法線ベクトル間の相対関係を示す値を算出する工程と、
前記互いに隣接する面要素の法線ベクトル間の相対関係を示す値が予め設定した所定の値を超えた場合に、前記面データに歪みが発生したと判定する工程と、をさらに実行することを特徴とする請求項14に記載の面要素の歪みを検出させるコンピュータ実行可能なプログラム。
For the surface data surface element is formed by a plurality sets, calculating a value indicating the relative relationship between the normal vector of the adjacent surface elements to each other,
If the value indicating the relative relationship between the normal vector of the adjacent surface elements to each other exceeds a predetermined value set in advance, and determining the distortion occurs on the surface data, it further executes 15. A computer-executable program for detecting distortion of a surface element according to claim 14.
立体モデルの少なくとも一部分を被覆する面要素の組合せによって、前記立体モデルの表面を形成する、そのような設計支援装置によって作成された前記面要素の歪みを検出するコンピュータ実行可能なプログラムであって、コンピュータに、
面要素が複数集合して形成される面データから頂点を抽出する工程と、
前記頂点近傍において面要素と面要素との境界線である稜線を複数抽出する近傍稜線抽出工程と、
前記頂点での前記面データの法線ベクトルと前記稜線の前記頂点近傍での接線ベクトルとから平面を形成し、形成された平面上に前記稜線を投影する投影工程と、
前記投影工程により投影された平面上の稜線の曲率を算出する投影曲率算出工程と、
前記投影手段および前記投影曲率算出手段を前記複数抽出されたそれぞれの稜線に適用することによって、それぞれの稜線の曲率を算出し、算出されたそれぞれの稜線の曲率から最大曲率を取得する最大曲率取得工程と、
前記最大曲率取得工程において取得された最大曲率が予め設定した所定の値を超えた場
合に、前記稜線に歪みが発生したと判定する稜線歪み判定工程と、を実行させることを特徴とするコンピュータ実行可能なプログラム。
A computer-executable program for detecting distortion of the surface element created by such a design support device, which forms the surface of the three-dimensional model by a combination of surface elements covering at least a part of the three-dimensional model, On the computer,
Extracting vertices from surface data formed by collecting a plurality of surface elements;
A neighboring ridge line extracting step of extracting a plurality of ridge lines that are boundary lines between the surface elements in the vicinity of the vertex;
Forming a plane from a normal vector of the surface data at the vertex and a tangent vector near the vertex of the ridge, and projecting the ridge on the formed plane;
A projected curvature calculating step of calculating a curvature of a ridge line on the plane projected by the projecting step;
By applying the projection unit and the projection curvature calculation unit to the plurality of extracted ridge lines, the curvature of each ridge line is calculated, and the maximum curvature acquisition is performed from the calculated curvature of each ridge line. Process,
Wherein the maximum curvature acquisition process prescribed value field <br/> case beyond that obtained maximum curvature preset at a ridgeline distortion determination step determines that distortion has occurred in the ridge, that is the execution A computer-executable program characterized.
最大曲率取得工程では、前記コンピュータに、前記面データから複数の頂点が抽出された場合に、さらに、前記投影工程および前記投影曲率算出工程を前記複数抽出されたそれぞれの頂点の稜線に適用することによって、それぞれの頂点近傍から抽出されるそれぞれの稜線の曲率を算出し、算出されたそれぞれの頂点近傍のそれぞれの稜線の曲率から最大曲率を取得させる請求項16に記載のコンピュータ実行可能なプログラム。In the maximum curvature acquisition step, when a plurality of vertices are extracted from the surface data, the projection step and the projection curvature calculation step are further applied to the ridge lines of the plurality of extracted vertices. The computer-executable program according to claim 16, wherein the curvature of each ridge line extracted from each vertex vicinity is calculated, and the maximum curvature is obtained from the calculated curvature of each ridge line near each vertex.
JP2006206918A 2006-07-28 2006-07-28 Surface element distortion detection apparatus, surface element distortion detection method, and program Active JP4241778B2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2006206918A JP4241778B2 (en) 2006-07-28 2006-07-28 Surface element distortion detection apparatus, surface element distortion detection method, and program
PCT/IB2007/002152 WO2008012668A2 (en) 2006-07-28 2007-07-27 Plane-element distortion detection system, and plane-element distortion detecting method and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006206918A JP4241778B2 (en) 2006-07-28 2006-07-28 Surface element distortion detection apparatus, surface element distortion detection method, and program

Publications (2)

Publication Number Publication Date
JP2008033678A JP2008033678A (en) 2008-02-14
JP4241778B2 true JP4241778B2 (en) 2009-03-18

Family

ID=38858916

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006206918A Active JP4241778B2 (en) 2006-07-28 2006-07-28 Surface element distortion detection apparatus, surface element distortion detection method, and program

Country Status (2)

Country Link
JP (1) JP4241778B2 (en)
WO (1) WO2008012668A2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9057363B2 (en) 2007-12-10 2015-06-16 Bayer Medical Care, Inc. Continuous fluid delivery system

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9057363B2 (en) 2007-12-10 2015-06-16 Bayer Medical Care, Inc. Continuous fluid delivery system

Also Published As

Publication number Publication date
WO2008012668A3 (en) 2008-06-26
JP2008033678A (en) 2008-02-14
WO2008012668A2 (en) 2008-01-31

Similar Documents

Publication Publication Date Title
US8531456B2 (en) Automatic remeshing by mapping a 2D grid on 3D genus-G meshes based on topological analysis
CN106504331B (en) Tooth modeling method based on three-dimensional model retrieval
OuYang et al. On the normal vector estimation for point cloud data from smooth surfaces
EP3040797B1 (en) Simulating the machining of a workpiece
KR101159855B1 (en) Geometric model forming method, and computer program and geometric model forming system therefor
CN111382777B (en) Extracting feature trees from a grid
Chang et al. 3D shape engineering and design parameterization
Li et al. Detail feature recognition and decomposition in solid model
JP2018526744A (en) Mesh generation system and method
JP2013542435A (en) Method for preprocessing a three-dimensional image of a tire surface used for tire surface inspection
CN103093036A (en) Simulation of the machining of a workpiece
Li et al. Fast global and partial reflective symmetry analyses using boundary surfaces of mechanical components
Kim et al. 3D as-built modeling from incomplete point clouds using connectivity relations
Tang et al. Modeling developable folds on a strip
JP4967989B2 (en) Design support apparatus, design support method, and design support program
JP4241778B2 (en) Surface element distortion detection apparatus, surface element distortion detection method, and program
CN112805754A (en) Feature-based abstraction and meshing
Nieser et al. Patch layout from feature graphs
JP4845761B2 (en) Three-dimensional model shape simplification device and three-dimensional model shape simplification program
KR101890536B1 (en) Method and system for differentially reducing data for comparative analysis between 3D design model data and laser scan data in construction stage
Bénière et al. Recovering primitives in 3D CAD meshes
Joonghyun et al. Computation of molecular surface using Euclidean Voronoi Diagram
CN110570524B (en) Method for simplifying median plane of three-dimensional model for topology maintenance
JP2006277712A (en) Fitting device, method and program for three-dimensional model
JP2008310576A (en) Design support method and design support system

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080715

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080729

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080929

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

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

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

Free format text: PAYMENT UNTIL: 20120109

Year of fee payment: 3

R151 Written notification of patent or utility model registration

Ref document number: 4241778

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

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

Free format text: PAYMENT UNTIL: 20120109

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20130109

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20130109

Year of fee payment: 4