JP2014219789A - 曲面描画装置および曲面描画用プログラム - Google Patents

曲面描画装置および曲面描画用プログラム Download PDF

Info

Publication number
JP2014219789A
JP2014219789A JP2013097657A JP2013097657A JP2014219789A JP 2014219789 A JP2014219789 A JP 2014219789A JP 2013097657 A JP2013097657 A JP 2013097657A JP 2013097657 A JP2013097657 A JP 2013097657A JP 2014219789 A JP2014219789 A JP 2014219789A
Authority
JP
Japan
Prior art keywords
curved surface
curve
line segment
line
plane
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.)
Granted
Application number
JP2013097657A
Other languages
English (en)
Other versions
JP6026949B2 (ja
Inventor
保弘 清水
Yasuhiro Shimizu
保弘 清水
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.)
Nihon Unisys Ltd
Original Assignee
Nihon Unisys Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nihon Unisys Ltd filed Critical Nihon Unisys Ltd
Priority to JP2013097657A priority Critical patent/JP6026949B2/ja
Priority to PCT/JP2014/058770 priority patent/WO2014181598A1/ja
Publication of JP2014219789A publication Critical patent/JP2014219789A/ja
Application granted granted Critical
Publication of JP6026949B2 publication Critical patent/JP6026949B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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/30Polynomial surface description
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Geometry (AREA)
  • Computer Graphics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Analysis (AREA)
  • Software Systems (AREA)
  • Algebra (AREA)
  • Computer Hardware Design (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • Image Generation (AREA)

Abstract

【課題】多角形メッシュの分割を細かくすることなく、当該多角形メッシュの2端点を結ぶ線分を曲線補間することによって得られる曲線が大きく湾曲するといった湾曲現象の発生を防止できるようにする。【解決手段】線分の両端点をP30,P03、中間制御点をP21,P12、曲線の曲率パラメータをc、0≦ζ≦1をパラメータとして、次の3次多項式により線分を曲線補間することにより、ベジエ曲線の次数を3次に拡張した3次多項式により線分が曲線補間されるようにして、中間制御点が線分に対して大きく横にずれてしまうことを防ぐことができるようにする。x(ζ)=P30(1−ζ)3+P21・3(1−ζ)2ζ+P12・3(1−ζ)ζ2+P03ζ3ここで、P21=(x0+2P11)/3,P21=(2P11+x1)/3P11=(x0+x1)/2−c/2【選択図】図2

Description

本発明は、曲面描画装置および曲面描画用プログラムに関し、特に、多角形メッシュの各頂点と中間制御点とから多角形メッシュの辺や内部を滑らかに補間した曲線または曲面を描画する曲面描画装置に用いて好適なものである。
通常、有限要素法(FEM)による数値シミュレーションでは、対象領域を離散的な格子点群で近似して計算を行う。これに伴い、領域内に含まれる対象物表面形状は、三角形や四角形から構成される多面体モデル(三角形メッシュ、四角形メッシュ)で表される。
一方、CAD(Computer Aided Design:コンピュータ支援設計)分野では、伝統的に滑らかな曲面モデルが使われてきた。近年では、計測情報処理の発達により、多面体モデルと曲面モデルとを混在させた形状処理が行われるようになってきている。このような混在モデルでは、多面体表面を構成する各三角形や四角形の辺および内部を簡便な曲面式により滑らかに補間したい場面が生ずる。
例えば、曲面を三角形メッシュに多面体近似し、その三角形メッシュを数値シミュレーションで変形した後、変形されたメッシュに合わせて曲面を滑らかに変形するという処理を考えると、多面体の頂点位置で算出される変形量を頂点間の中間位置にも滑らかに補間する計算が必要になる。従来、補間によって曲線や曲面を描画する技術が数多く提供されている(例えば、特許文献1,2参照)。
ところで、理化学研究所のVCADプロジェクトの中で長田隆氏により創案された曲面式として、「長田パッチ」と呼ばれるものがある。長田パッチは、三角形メッシュ、四角形メッシュの各頂点に付与された法線ベクトル(形状表面に直交する方向)から、曲面の丸みを簡便に補間するのに有効な技術である。以下に、この長田パッチの概要を説明する。
長田パッチでは、多角形(三角形または四角形)の各頂点と、その各頂点に与えられた単位法線ベクトルとから、2次多項式により多角形領域内に丸みを持って補間する曲面式を定義している。なお、以下では説明の簡略化のため、三角形領域の補間に限定して説明する。長田パッチで基本となるのは、多角形の各辺(線分)を、2つの端点と各端点での単位法線ベクトルとから2次多項式で曲線補間する曲線式である。以下、この曲線式で得られる曲線を「長田セグメント」と呼ぶ。
図10に示すように、線分の始点をP0、終点をP1、各々の位置ベクトルをx0,x1、単位法線ベクトルをn0,n1とする。この場合、長田パッチでは、0≦ζ≦1をパラメータとして、次の形の2次多項式(1)でx0,x1,n0,n1を補間する。
x(ζ)=x0+(d−c)ζ+cζ2・・・(1)
ここに、xは曲線の線上点を表す位置ベクトル、dは始点から終点に向かう差ベクトル(d=x1−x0)である。また、cはx0,x1,n0,n1から算出される「曲率パラメータ」と呼ばれる未知定数ベクトルであり、曲線の膨らみを規定する。
さて、位置ベクトルx0,x1を結ぶ弦(線分)の中点の位置ベクトルをxm(=x0+d/2)とし、中点xmからベクトル(−c/2)だけ移動した位置をPm(=xm−c/2)とする。また、xj(j=0,1)を通り法線ベクトルnjに直交する平面を{xj,nj}で表す。この平面は曲線が接するべき平面なので、「接平面」とよぶ。
ここで、点Pmは、始点側接平面{x0,n0}上にも、終点側接平面{x1,n1}上にもなければならない。すなわち、両接平面{x0,n0},{x1,n1}が交線を持つ場合には、点Pmは交線上になければならない。また、両接平面{x0,n0},{x1,n1}が交線を持つ場合には、n0×n1は交線の方向ベクトルと平行なので、ベクトルcは交線と直交しなければならない。したがって、両接平面{x0,n0},{x1,n1}が交線を持つ場合、点Pmは弦の中点xmから交線に下した垂線の足ということになる。
長田パッチでは、線分の各端点P0,P1の位置ベクトルx0,x1と、点Pmの位置ベクトルとから、各端点P0,P1を結ぶ線分を2次多項式で曲線補間する。この曲線補間の2次多項式(2)として、CADでよく使われる図11のようなベジエ曲線を用いることが可能である。すなわち、2次ベジエ曲線を
x(ζ)=P20(1−ζ)2+P11・2(1−ζ)ζ+P02ζ2・・・(2)
として、P20=x0(始点P0の位置ベクトル)、P02=x1(終点P1の位置ベクトル)、P11=(x0+x1)/2−c/2(中間制御点Pmの位置ベクトル)のように当て嵌めることができる。
長田セグメントは2次多項式曲線であり、放物線の一部を切り取った形状であるため、平面曲線である。曲線が乗っている平面は始終点x0,x1を結ぶ弦を含む平面であり、これを「曲線平面」と呼ぶ。長田セグメントの2次多項式曲線を2次ベジエ曲線として表現する場合には、中間制御点Pmの位置を選ぶことにより、曲線平面が定まる。
しかしながら、始終点x0,x1に与えられる単位法線ベクトルn0,n1の方向が平行に近いとき、図12に示すように、2次ベジエ曲線で表されるパッチ形状が乱れる(曲線が大きく湾曲する)場合があるという問題があった。曲線の湾曲現象は、単位法線ベクトルn0,n1が平行に近く、始点側接平面{x0,n0}と終点側接平面{x1,n1}とが始終点x0,x1を結ぶ弦から大きく隔たった位置に交線を持つ場合に発生する。このとき、弦の中点xmから接平面交線に下した垂線の足に当たる中間制御点Pmは、弦に対して大きく横にずれ、結果として2次ベジエ曲線は湾曲するに至る。すなわち、曲線平面が接平面と平行に近い状態まで倒れるため、長田セグメントの湾曲が起きる。
長田パッチでは、このような問題が生じるのは始終点x0,x1の間隔が大き過ぎるためであるとして、精度を満たすまで三角形メッシュの分割を細かくすることが推奨されている。確かにメッシュを十分に細分すると、法線ベクトルn0 ,n1と弦は直交に近づくので、曲率パラメータc=0で長田セグメントが弦と一致しても、法線直交条件は破綻しない。しかし、現実の応用では三角形メッシュを随意に細かくすることができず、与えられた粗さのメッシュで処理を進めなければならない場合も多い。
特開平5−314268号公報 特開平9−81765号公報
本発明は、このような問題を解決するために成されたものであり、多角形メッシュの分割を細かくすることなく、当該多角形メッシュの2端点を結ぶ線分を曲線補間することによって得られる曲線が大きく湾曲するといった湾曲現象の発生を防止できるようにすることを目的とする。
上記した課題を解決するために、本発明では、線分の両端点をP30,P03、中間制御点をP21,P12、両端点の位置ベクトルをx0,x1、曲線の曲率パラメータをc、0≦ζ≦1をパラメータとして、次の3次多項式によって線分を曲線補間するようにしている。
x(ζ)=P30(1−ζ)3+P21・3(1−ζ) 2ζ+P12・3(1−ζ)ζ2+P03ζ3
ここで、
30=x0 ,P03=x1
21=(x0+2P11)/3,P21=(2P11+x1)/3
11=(x0+x1)/2−c/2
上記のように構成した本発明によれば、ベジエ曲線の次数を3次に拡張した3次多項式により線分が曲線補間されるので、中間制御点はP21,P12の2つとなり、当該中間制御点P21,P12が線分に対して大きく横にずれてしまうことを防ぐことができる。これにより、多角形メッシュの分割を細かくすることなく、当該多角形メッシュの2端点を結ぶ線分を曲線補間することによって得られる曲線が大きく湾曲するといった湾曲現象の発生を防止することができる。
本実施形態による曲面描画装置の構成例を示す機能ブロック図である。 本実施形態の曲線演算部による処理内容を説明するための図である。 本実施形態において採用する曲線平面を説明するための図である。 図3に示した曲線平面を用いるだけの対策を施した場合に生じる問題点を説明するための図である。 図3に示した曲線平面を用いるだけの対策を施した場合に生じる問題点を説明するための図である。 本実施形態による補正制御点の求め方を説明するための図である。 本実施形態によるクーンズ曲面の求め方を説明するための図である。 本実施形態によるクーンズ曲面の求め方を説明するための図である。 本実施形態によるクーンズ曲面の求め方を説明するための図である。 従来の長田パッチによる処理内容を説明するための図である。 従来の長田パッチによる処理内容を説明するための図である。 従来の長田パッチによる処理で生じる問題点を説明するための図である。
以下、本発明の一実施形態を図面に基づいて説明する。図1は、本実施形態による曲面描画装置の構成例を示す機能ブロック図である。図1に示すように、本実施形態の曲面描画装置は、多角形メッシュの各頂点と中間制御点とから多角形メッシュの辺を滑らかに補間した曲線または内部を滑らかに補間した曲面を描画するものであり、その機能構成として、曲線演算部1、曲面演算部2、曲線描画部3、曲面描画部4および表示制御部5を備えて構成されている。
上記各機能ブロック1〜5は、ハードウェア、DSP(Digital Signal Processor)、ソフトウェアの何れによっても構成することが可能である。例えばソフトウェアによって構成する場合、上記各機能ブロック1〜5は、実際にはコンピュータのCPU、RAM、ROMなどを備えて構成され、RAMやROM、ハードディスクまたは半導体メモリ等の記録媒体に記憶された曲面描画用プログラムが動作することによって実現される。
したがって、上記各機能ブロック1〜5の機能は、曲面描画用プログラムをCD−ROMのような記録媒体に記録し、コンピュータに読み込ませることによって実現できるものである。曲面描画用プログラムを記録する記録媒体としては、CD−ROM以外に、フレキシブルディスク、ハードディスク、磁気テープ、光ディスク、光磁気ディスク、DVD、不揮発性メモリカード等を用いることができる。また、曲面描画用プログラムをインターネットを介してコンピュータにダウンロードすることによっても実現できる。
図2は、曲線演算部1による処理内容を説明するための図である。図2に示すように、曲線演算部1は、線分の両端点をP30,P03、中間制御点をP21,P12、両端点P30,P03の位置ベクトルをx0 ,x1、両端点P30,P03における単位法線ベクトルをn0,n1、求める曲線の曲率パラメータをc、0≦ζ≦1をパラメータとして、次の3次多項式(3)によって線分を曲線補間する。
x(ζ)=P30(1−ζ)3+P21・3(1−ζ) 2ζ+P12・3(1−ζ)ζ2+P03ζ3・・・(3)
ここで、
30=x0 ,P03=x1
21=(x0+2P11)/3,P21=(2P11+x1)/3
11=(x0+x1)/2−c/2:2次多項式で曲線補間する場合の中間制御点
曲線描画部3は、曲線演算部1により求められた曲線を描画する。表示制御部5は、曲線描画部3により描画された曲線をディスプレイ(図示せず)に表示させる。多角形メッシュの各線分に対して曲線演算部1、曲線描画部3および表示制御部5の処理を行うことにより、各多角形メッシュの辺を滑らかに補間した曲線をディスプレイに表示させることが可能である。
以下に、曲線演算部1の処理内容を詳しく説明する。従来技術について説明したように、長田セグメントの湾曲現象は、当該長田セグメントの曲線が乗っている曲線平面が線分の両端点における接平面と平行に近い状態まで倒れるために起きる。そこで、曲線の湾曲を防止する対策の出発点として、曲線平面を両接平面{x0,n0},{x1,n1}に対して可能な限り直交に近づける。
具体的には、図3に示すように、始終点x0,x1を結ぶ線分を含み、当該線分の始点x0を通り始点側接平面{x0,n0}に直交する平面を第1平面Π0とする。また、上記線分を含み、当該線分の終点x1を通り終点側接平面{x1,n1}に直交する平面を第2平面Π1とする。そして、第1平面Π0と第2平面Π1とを等角で2等分する2等分平面のうち、第1平面Π0と第2平面Π1となす角が小さい方を曲線平面Πとして選択する。
なお、図12に示したように 両接平面{x0,n0},{x1,n1}の交線が線分(弦)から大きく隔たっている場合には、上記のように曲線平面Πを選択するだけでは問題は解決しない。式(2)のような2次多項式で線分を曲線補間する場合、始終点x0,x1で各接平面{x0,n0},{x1,n1}に接する2次ベジエ曲線を得るには、中間制御点P11は両接平面上にあるべきなので、曲線平面Πと両接平面{x0,n0},{x1,n1}の交線との交点位置に中間制御点P11を配置しなければならない。このため、接平面交線の位置が弦に対して不適切な位置にあると、図4に示すように、中間制御点P11が、弦の両端点での直交平面で挟まれた範囲の外に出てしまうことが起きる。
図4の状況を2次ベジエ曲線の数式として表現すると、
(P11−P20,P02−P20)<0または(P02−P11,P02−P20)<0・・・(4)
である。中間制御点P11と弦の端点P20,P02との差ベクトルは、端点P20,P02での曲線の接線の方向に対応しているので、式(4)の前半の不等式は、始点P20での接線方向が弦の方向(始点P20から終点P02に向かう方向)と逆行していることを表している(図5(a)参照)。また、式(4)の後半の不等式は、終点P02での接線方向が弦の方向と逆行していることを表している(図5(b)参照)。
このように、両接平面{x0,n0},{x1,n1}の交線が弦から大きく隔たっていると、接線方向と弦の方向が逆行するという問題は、2次ベジエ曲線である以上、避けられない。すなわち、各端点P20,P02での曲線への接線は、曲線平面Πと各接平面{x0,n0},{x1,n1}との交線である。中間制御点P11はこの接線上に位置するが、相手端点の接平面との交点位置が弦の方向と逆行する場合、逆行を回避するには中間制御点を接線上、相手端点側に配置しなければならない。しかしながら、これは2次ベジエ曲線では不可能である。そこで、本実施形態では、ベジエ曲線の次数を3次に拡張し、上述した3次多項式(3)により線分を曲線補間することとする。
なお、4個の制御点P30,P21,P12,P03は同一平面上にあるとは限らないので、一般に3次ベジエ曲線は平面曲線とは限らない。そこで、本実施形態では、図2に示すように、線分の両端点x0=P30,x1=P03および2つの中間制御点P21,P12を曲線平面Π上に配置することで、平面曲線として考える。ただし、3次ベジエ曲線では中間制御点がP21,P12の2個になり、その決め方を別途案出する必要が生じる。本実施形態では、2次ベジエ曲線の形状を可能な限り継承する手法を採用する。以下にこの手法を説明する。
2次多項式は、3次の項=0の場合の特別な3次多項式と言えるので、2次ベジエ曲線を3次ベジエ曲線の特別形と考えたときの制御点を計算する。これは、「ベジエ曲線の次数上げ」として知られた手法を用いて、2次ベジエ曲線の2次多項式(2)に定数1を表す恒等式1=(1−ζ)+ζを掛けて、形式的に3次式にすればよい。なお、次数上げしても、曲線の形状は変化しない。
3次ベジエ曲線の多項式(3)と、2次ベジエ曲線の多項式(2)を3次に次数上げした曲線の多項式との関係式から、以下の関係式が得られる。
30=P20(=x0)・・・(5)
21=(P20+2P11)/3・・・(6)
21=(2P11+P02)/3・・・(7)
03=P02(=x1)・・・(8)
ただし、線分の両端点での座標値と法線とから曲線を作るので、接線方向の正負は必要に応じて反転しても構わない。そこで、図5に示したように2次ベジエ曲線の接線方向が弦の方向と逆行している場合には、逆行しない側に補正した制御点から3次ベジエ曲線の制御点を決めることとする。
すなわち、次の式(9),(10)のように補正制御点P11(0),P11(1)を定める。
21=(P20+2P11(0))/3・・・(9)
21=(2P11(1)+P02)/3・・・(10)
この補正制御点P11(0),P11(1)は、逆行が起きていない場合には2次ベジエ曲線の制御点P11に一致する。一方、逆行が起きている場合には、2次ベジエ曲線の各端点の接線上で相手側(始点側接線では終点側、終点側接線では始点側)の接線を曲線平面上で弦について線対称に配置して得られる交点とする。
このことを、図6を用いて始点側を例に説明する。図6において、始点P20から両接線の交点P11に向かう方向は弦の方向と逆行しているので、交点P11自体を不採用とする。拘束条件は制御点が接線上にあることであり、接線と弦とのなす角度を維持するため、相手=終点側接線を弦について線対称(上向きの白抜き矢印)に配置して始点側接線と交点P11(0)を求める。逆に、始点側接線を弦について線対称(下向きの白抜き矢印)に配置して終点側接線と交点P11(1)を求めてから、式(9),(10)で3次ベジエ曲線の制御点P21,P12を決めると、逆行が回避される。
以上のような演算を行うことにより、多角形メッシュの分割を細かくすることなく、当該多角形メッシュの2端点を結ぶ線分を曲線補間することによって得られる曲線が大きく湾曲するといった湾曲現象の発生を防止することができる。すなわち、オリジナルの長田パッチで面質良好な場合には同等の面質を与え、オリジナルの長田パッチでは面形状が乱れる場合でも面形状の乱れを抑止することができる。
次に、与えられた枠線だけから曲面内部を内挿する方法について述べる。当該内挿の手法としてよく知られているものとして、クーンズ曲面がある。クーンズ曲面は、図7に示すように、1つの枠線とそれに対向する枠線との組合せから1次式補間される線織面(ruled surface)を全ての組合せについて足し合わせ、境界条件の余分を調整して定義される曲面である。枠線間の1次補間から“ピンと張った”曲面が得られる特性があるので、長田パッチ定義式を拡張する曲面式に適している。
図1の曲面演算部2は、多角形メッシュの各線分について曲線演算部1により算出された複数の枠線と、多角形メッシュの各頂点と、当該各頂点間の各線分に関する中間制御点とを用い、1つの枠線とそれに対向する枠線との組合せから1次式補間されるベジエ曲面を全ての組合せについて足し合わせるとともに、多角形メッシュの各頂点から1次補間で定義されるベジエ曲面を差し引いてクーンズ曲面を算出する。
曲面描画部4は、曲面演算部2により求められたクーンズ曲面を描画する。表示制御部5は、曲面描画部4により描画されたクーンズ曲面をディスプレイ(図示せず)に表示させる。例えば、3次元形状を構成する複数の多角形メッシュに対して曲面演算部2、曲面描画部4および表示制御部5の処理を行うことにより、各多角形メッシュの内部を滑らかに内挿した曲面をディスプレイに表示させることが可能である。
なお、以下では、多角形メッシュの一例として三角形メッシュをとりあげ、曲線演算部1により生成した3本の枠線(曲線)で囲まれた曲線三角形領域を内挿する三角クーンズ曲面について説明する。本実施形態では、上述したように、長田パッチの3本の枠線を3次ベジエ曲線に変更したので、ベジエ形式での曲面式は3次の三角ベジエ曲面を用いなければならない。
例えば、図8のように、3つの頂点P003,P300,P030とそれらを結ぶ3本の枠線(曲線)とがある場合、3次三角ベジエ曲面は、μ,ν,ωを三角形の重心座標と考えたとき、0≦μ,ν,ω≦1(μ+ν+ω=1)をパラメータとして、次の式(11)により表される。
x(μ,ν,ω)=P003・ω3+P102・3μω2+P201・3μ2ω+P300・μ3
+P012・3νω2+P111・6μνω+P210・3μ2ν
+P021・3ν2ω+P120・3μν2+P030・ν3・・・(11)
この式(11)から明らかなように、3次三角ベジエ曲面を描画するために必要な制御点は、3つの頂点P003,P300,P030を含めて全部で10個である。
ここで、長田パッチの3頂点との対応は、P003=x00,P300=x10,P030=x11である。また、パラメータとの対応は、μ=η−ζ,ν=ζ,ω=1−ηであり(0≦ζ≦η≦1)、各枠線には上述の方法で決められた3次ベジエ曲線を次のように当て嵌める。
x(η,0,1−η)=x00(1−η)3+P102・3(1−η)2η+P201・3(1−η)η2+x10η3・・・(12)
x(1−ζ,ζ,0)=x10(1−ζ)3+P210・3(1−ζ)2ζ+P120・3(1−ζ) ζ2+x11ζ3・・・(13)
x(0,η,1−η)=x00(1−η)3+P012・3(1−η)2η+P021・3(1−η)η2+x11η3・・・(14)
なお、式(12)ではν=ζ=0なのでμ=η、式(13)ではω=1−η=0なのでη=1、μ=1−ζ、式(14)ではμ=η−ζ=0なのでν=ζ=ηである。
上記式(12)〜(14)により、3次三角ベジエ曲面の10個の制御点のうち、曲線三角形領域の中央に位置する制御点P111を除く9個は3本の枠線から定まる。一方、中央の制御点P111については、これを決める方法が別途必要である。以下に、この方法を説明する。
3本の枠線は、式(12)〜(14)から以下のように表すことができる。
x(η,0,1−η)=P003(1−η)3+P102・3(1−η)2η+P201・3(1−η)η2+P300η3・・・(15)
x(1−ζ,ζ,0)=P300(1−ζ)3+P210・3(1−ζ)2ζ+P120・3(1−ζ) ζ2+P030ζ3・・・(16)
x(0,η,1−η)=P003(1−η)3+P012・3(1−η)2η+P021・3(1−η)η2+P030η3・・・(17)
ここで、式(15)はν=0とした枠線、式(16)はω=0とした枠線、式(17)はμ=0とした枠線を示している。
図7にて説明したように、クーンズ曲面は、1つの枠線とそれに対向する枠線とから1次式補間される線織面を全組合せについて足し合わせ、境界条件の余分を調整して定義される曲面である。これを図8の例に適用すると、以下のようになる。すなわち、ν=0枠線とμ=0枠線とから1次式補間される第1の線織面をS1、μ=0枠線とω=0枠線とから1次式補間される第2の線織面をS2、ν=0枠線とω=0枠線とから1次式補間される第3の線織面をS3、3頂点から1次補間で定義される1次三角ベジエ曲面をS4とした場合、求める三角クーンズ曲面Sは、以下の通りとなる。
S=(S1+S2+S3−S4)/2・・・(18)
ここで、第1の線織面S1は、図9に示すように、ν=0枠線の中間制御点P201とμ=0枠線の中間制御点P021とを結ぶ線分の等分点を制御点とする三角ベジエ曲面であり、以下のように表される。
1(μ,ν,ω)=P003・ω3+P102・3μω2+P201・3μ2ω+P300・μ3+P012・3νω2+{(P201+P021)/2}・6μνω+{(2P300+P030)/3}・3μ2ν+P021・3ν2ω+{(P300+2P030)/3}・3μν2+P030・ν3・・・(19)
同様に、第2の線織面S2は、μ=0枠線の中間制御点P012とω=0枠線の中間制御点P210とを結ぶ線分の等分点を制御点とする三角ベジエ曲面であり、以下のように表される。
2(μ,ν,ω)=P003・ω3+{(2P003+P300)/3}・3μω2+{(P003+2P300)/3}・3μ2ω+P300・μ3+P012・3νω2+{(P012+P210)/2}・6μνω+P210・3μ2ν+P021・3ν2ω+P120・3μν2+P030・ν3・・・(20)
同様に、第3の線織面S3は、ν=0枠線の中間制御点P102とω=0枠線の中間制御点P120とを結ぶ線分の等分点を制御点とする三角ベジエ曲面であり、以下のように表される。
3(μ,ν,ω)=P003・ω3+P102・3μω2+P201・3μ2ω+P300・μ3+{(2P003+P030)/3}・3νω2+{(P102+P120)/2}・6μνω+P210・3μ2ν+{(P003+2P030)/3}・3ν2ω+P120・3μν2+P030・ν3・・・(21)
これらの式(18)〜(21)から、3次三角ベジエ曲面の中央制御点P111を計算すると、次の式(22)となる。
111={(P201+P021)/4}+{(P012+P210)/4}+{(P102+P120)/4}−{(P003+P300+P030)/6}・・・(22)
このように、本実施形態によれば、与えられた3頂点P003,P300,P030を補間する曲面パッチとして、3次多項式(3)により曲線平面と3次ベジエ曲線とを当て嵌めてν=0枠線、ω=0枠線およびμ=0枠線を補間し、これらの各枠線から式(18)の定義式による三角クーンズ曲面を構成して3次三角ベジエ曲面を得ることができる。
なお、上記実施形態では、多角形メッシュの一例として三角形メッシュをとりあげて説明をしたが、本発明はこれに限定されない。例えば、四角形メッシュに本発明を適用することも可能である。
その他、上記実施形態は、何れも本発明を実施するにあたっての具体化の一例を示したものに過ぎず、これによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその要旨、またはその主要な特徴から逸脱することなく、様々な形で実施することができる。
1 曲線演算部
2 曲面演算部
3 曲線描画部
4 曲面描画部
5 表示制御部

Claims (6)

  1. 多角形メッシュの各頂点と中間制御点とから多角形メッシュの辺を滑らかに補間した曲線または内部を滑らかに補間した曲面を描画する曲面描画装置であって、
    上記線分の両端点をP30,P03、上記中間制御点をP21,P12、上記両端点の位置ベクトルをx0,x1、上記曲線の曲率パラメータをc、0≦ζ≦1をパラメータとして、次の3次多項式によって上記線分を曲線補間する曲線演算部と、
    x(ζ)=P30(1−ζ)3+P21・3(1−ζ) 2ζ+P12・3(1−ζ)ζ2+P03ζ3
    ここで、
    30=x0 ,P03=x1
    21=(x0+2P11)/3,P21=(2P11+x1)/3
    11=(x0+x1)/2−c/2
    上記曲線演算部により求められた上記曲線を描画する曲線描画部とを備えたことを特徴とする曲面描画装置。
  2. 上記曲線演算部は、上記線分を含み、上記線分の始点P30を通り当該始点P30の単位法線ベクトルに直交する始点側接平面に直交する第1平面と、上記線分を含み、上記線分の終点P03を通り当該始点P03の単位法線ベクトルに直交する終点側接平面に直交する第2平面との2等分平面のうち、上記第1平面と上記第2平面となす角が小さい方を曲線平面として選択し、上記線分の両端点P30,P03および上記中間制御点P21,P12を上記曲線平面上に配置することを特徴とする請求項1に記載の曲面描画装置。
  3. 上記多角形メッシュの各線分について上記曲線演算部により算出された複数の枠線と、上記多角形メッシュの各頂点と、当該各頂点間の各線分に関する上記中間制御点とを用い、1つの枠線とそれに対向する枠線との組合せから1次式補間されるベジエ曲面を全ての組合せについて足し合わせるとともに、上記多角形メッシュの各頂点から1次補間で定義されるベジエ曲面を差し引いてクーンズ曲面を算出する曲面演算部と、
    上記曲面演算部により求められた上記クーンズ曲面を描画する曲面描画部とを更に備えたことを特徴とする請求項1に記載の曲面描画装置。
  4. 上記多角形メッシュが三角形メッシュであり、当該三角形メッシュの3頂点をP003,P300,P030、当該3頂点間を結ぶ3つの線分に関する3組の上記中間制御点を(P102,P201),(P210,P120),(P012,P021)、0≦ζ≦η≦1をパラメータとして、上記曲線演算部は、次の3式により3本の枠線を算出し、
    x(η,0,1−η)=P003(1−η)3+P102・3(1−η)2η+P201・3(1−η)η2+P300η3
    x(1−ζ,ζ,0)=P300(1−ζ)3+P210・3(1−ζ)2ζ+P120・3(1−ζ) ζ2+P030ζ3
    x(0,η,1−η)=P003(1−η)3+P012・3(1−η)2η+P021・3(1−η)η2+P030η3
    上記曲面演算部は、上記3式のうち第1式と第3式との組合せから1次式補間される第1のベジエ曲面をS1、上記3式のうち第2式と第3式との組合せから1次式補間される第2のベジエ曲面をS2、上記3式のうち第1式と第2式との組合せから1次式補間される第3のベジエ曲面をS3、上記3頂点から1次補間で定義されるベジエ曲面をS4、上記三角形メッシュの中央に位置する制御点をP111とした場合、
    S=(S1+S2+S3−S4)/2
    111={(P201+P021)/4}+{(P012+P210)/4}+{(P102+P120)/4}−{(P003+P300+P030)/6}
    により上記クーンズ曲面Sを算出することを特徴とする請求項3に記載の曲面描画装置。
  5. 多角形メッシュの各頂点と中間制御点とから多角形メッシュの辺を滑らかに補間した曲線または内部を滑らかに補間した曲面を描画するための曲面描画用プログラムであって、
    上記線分の両端点をP30,P03、上記中間制御点をP21,P12、上記両端点の位置ベクトルをx0,x1、上記曲線の曲率パラメータをc、0≦ζ≦1をパラメータとして、次の3次多項式によって上記線分を曲線補間する曲線演算手段、および
    x(ζ)=P30(1−ζ)3+P21・3(1−ζ) 2ζ+P12・3(1−ζ)ζ2+P03ζ3
    ここで、
    30=x0 ,P03=x1
    21=(x0+2P11)/3,P21=(2P11+x1)/3
    11=(x0+x1)/2−c/2
    上記曲線演算手段により求められた上記曲線を描画する曲線描画部手段
    としてコンピュータを機能させるための曲面描画用プログラム。
  6. 上記多角形メッシュの各線分について上記曲線演算部により算出された複数の枠線と、上記多角形メッシュの各頂点と、当該各頂点間の各線分に関する上記中間制御点とを用い、1つの枠線とそれに対向する枠線との組合せから1次式補間されるベジエ曲面を全ての組合せについて足し合わせるとともに、上記多角形メッシュの各頂点から1次補間で定義されるベジエ曲面を差し引いてクーンズ曲面を算出する曲面演算手段、および
    上記曲面演算手段により求められた上記クーンズ曲面を描画する曲面描画手段
    としてコンピュータを更に機能させるための請求項5に記載の曲面描画用プログラム。
JP2013097657A 2013-05-07 2013-05-07 曲面描画装置および曲面描画用プログラム Active JP6026949B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2013097657A JP6026949B2 (ja) 2013-05-07 2013-05-07 曲面描画装置および曲面描画用プログラム
PCT/JP2014/058770 WO2014181598A1 (ja) 2013-05-07 2014-03-27 曲面描画装置および曲面描画用プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013097657A JP6026949B2 (ja) 2013-05-07 2013-05-07 曲面描画装置および曲面描画用プログラム

Publications (2)

Publication Number Publication Date
JP2014219789A true JP2014219789A (ja) 2014-11-20
JP6026949B2 JP6026949B2 (ja) 2016-11-16

Family

ID=51867084

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013097657A Active JP6026949B2 (ja) 2013-05-07 2013-05-07 曲面描画装置および曲面描画用プログラム

Country Status (2)

Country Link
JP (1) JP6026949B2 (ja)
WO (1) WO2014181598A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111127590B (zh) * 2019-12-26 2023-06-20 新奥数能科技有限公司 一种二阶贝塞尔曲线绘制方法及装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01120675A (ja) * 1987-11-04 1989-05-12 Sony Corp 物体の表面形状データ作成方法
JPH06215152A (ja) * 1992-11-06 1994-08-05 Canon Inc 画像データ処理方法及び装置
JPH07311858A (ja) * 1994-05-18 1995-11-28 Sony Corp 自由曲面作成方法及び自由曲面作成装置
JP2001331812A (ja) * 2000-05-18 2001-11-30 Sony Corp 図形情報生成装置、画像処理装置、情報処理装置、図形情報生成方法及び記録媒体

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01120675A (ja) * 1987-11-04 1989-05-12 Sony Corp 物体の表面形状データ作成方法
JPH06215152A (ja) * 1992-11-06 1994-08-05 Canon Inc 画像データ処理方法及び装置
JPH07311858A (ja) * 1994-05-18 1995-11-28 Sony Corp 自由曲面作成方法及び自由曲面作成装置
JP2001331812A (ja) * 2000-05-18 2001-11-30 Sony Corp 図形情報生成装置、画像処理装置、情報処理装置、図形情報生成方法及び記録媒体

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
JPN6016038360; 清水 保弘: '長田パッチの3次への拡張' ユニシス技報 第114号 Vol.32 No.3 通巻114号, 20121130, P.141-162, 日本ユニシス株式会社 *

Also Published As

Publication number Publication date
JP6026949B2 (ja) 2016-11-16
WO2014181598A1 (ja) 2014-11-13

Similar Documents

Publication Publication Date Title
JP5218993B2 (ja) 補間処理方法、および補間処理装置
KR100707841B1 (ko) 3차원 목표곡선을 이용한 곡면 변형 장치 및 그 방법
US8537158B2 (en) Parallel triangle tessellation
WO2007083602A1 (ja) 補間処理方法、補間処理装置、形状評価方法、および形状評価装置
KR20110111259A (ko) 평행 지오데식 곡선들에 의해 모델링되는 부품의 설계
US20110158555A1 (en) Curved surface area calculation device and method
JP2016524260A (ja) 非軸対称表面をモデル化する方法
JP6026949B2 (ja) 曲面描画装置および曲面描画用プログラム
CN107526859B (zh) 设计复合零件的外表面以用于生产模具的方法、装置及系统
CN108507563B (zh) 巡航路径生成方法及装置
Fernández-Jambrina et al. Developable surface patches bounded by NURBS curves
CN106981095B (zh) 一种改进的光滑自由变形方法
US10902675B2 (en) Graphical modelling by smoothing polyhedral meshes with multi-sided patches
JP2009110073A (ja) 設計支援装置、設計支援方法、および設計支援プログラム
JP6592308B2 (ja) 曲面描画装置および曲面描画用プログラム
Muraki et al. Curve Mesh Modeling Method of Trimmed Surfaces for Direct Modeling
Yu et al. Smooth geometry generation in additive manufacturing file format: problem study and new formulation
Baramidze Smooth bivariate shape-preserving cubic spline approximation
JP2008299473A (ja) 物体の三次元形状データの作成装置および作成方法
JP4093903B2 (ja) 曲面生成装置、曲面生成方法、プログラムおよび記録媒体
JP4005352B2 (ja) 3次元形状処理装置および曲面内挿プログラム
JP6727932B2 (ja) 点群面張りによる曲面生成装置および曲面生成用プログラム
JP6888771B2 (ja) 半導体チップの設計方法、半導体チップの設計プログラム、半導体デバイスの製造方法、及び演算装置
Huang et al. Research on insertion points planning of head model
JP2002328958A (ja) メッシュ生成方法、プログラム、記録媒体およびメッシュ生成システム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160331

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20161013

R150 Certificate of patent or registration of utility model

Ref document number: 6026949

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250