JPH10247249A - 自由曲線表現方法 - Google Patents

自由曲線表現方法

Info

Publication number
JPH10247249A
JPH10247249A JP9051220A JP5122097A JPH10247249A JP H10247249 A JPH10247249 A JP H10247249A JP 9051220 A JP9051220 A JP 9051220A JP 5122097 A JP5122097 A JP 5122097A JP H10247249 A JPH10247249 A JP H10247249A
Authority
JP
Japan
Prior art keywords
curve
rational
knot
spline
reduce
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP9051220A
Other languages
English (en)
Inventor
Yoshimasa Tokuyama
喜政 徳山
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.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP9051220A priority Critical patent/JPH10247249A/ja
Publication of JPH10247249A publication Critical patent/JPH10247249A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Image Generation (AREA)

Abstract

(57)【要約】 【課題】 有理B-spline曲線の形状を変更せず、各中
間ノットの多重度を減らすように各制御点の重みを調整
する。 【解決手段】 隣りあう2つの曲線セグメントの共有節
点をw11とし、その両側の制御点をw00,w22
する。次式により、共有節点のノットの多重度を減ら
す。 0,t1…曲線セグメントのパラメータ長 α,w2…未知数

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、自由曲線表現方
法、より詳細には、CAD/CAMを用いた3次自由曲
線表現方法に関する。
【0002】
【従来の技術】Leslie Piegl and Wayne Tiller,“A M
enagerie of Rational B-Spline Circles”,IEEE CG&
A,September,1989,pp.48-66には、4つの90度円弧
より構成された有理B-spline曲線における中間ノット
の多重度を減らすことが提案されている。しかし、上述
文献に記載された発明は、円弧から構成された有理B-s
pline曲線の場合にしか対応できなかった。
【0003】一方、有理B-spline曲線を構成する曲線
セグメントの中には、直線、円弧、または有理Bezier
曲線が混在するのが一般的である。これらのケースにつ
いて、多重度を減らせば、以下の効果が得られる。 ・曲線の制御点の数が少なくなる。つまり、データ量が
少なくなる。 ・B-splineの基底関数の連続性を改善できる。 そのため、基底関数を利用したアプリケーションの連続
性も改善できる。例えば、中間ノットの多重度は(位数
−1)である場合には、曲線の連続性がC1であって
も、基底関数の連続性はC0になる。そのため、例え
ば、その曲線を軌道として、スイープ曲線を生成するア
プリケーションにおいて、生成されたスイープ曲面が不
連続となる。このような場合には、多重度を減らした方
が望ましい。
【0004】
【発明が解決しようとする課題】本発明は、上述のごと
き知見に基づいてなされたもので、特に、有理B-splin
e曲線に対して、有理B-spline曲線の形状を変更せず、
各中間ノットの多重度を減らすように各制御点の重みを
調整することを目的とするものである。
【0005】
【課題を解決するための手段】請求項1の発明は、有理
B-spline曲線(NURBS曲線とも呼ぶ)の表現や有
理B-spline曲線の基底関数を利用した応用において、
有理B-spline曲線の形状を変更せず、各中間ノットの
多重度を減らすように各制御点の重みを調整することを
特徴とし、もって、制御点の数を少なくしてデータ量を
減らして、更には、B-splineの基底関数の連続性を改
善するようにしたものである。
【0006】請求項2の発明は、請求項1の発明におい
て、前記中間ノットの多重度を下記の式を用いて減らす
ようにしたことを特徴とするものである。
【0007】
【数2】
【0008】w11…隣り合う2つの曲線セグメントの
共有接点 w00,w22…一直線に並ぶノットの両側の制御点 t0,t1…曲線セグメントのパラメータ長 α,w2…未知数(αが決まるとw2が決まる)
【0009】
【発明の実施の形態】図1は、有理B-spline曲線の一
例を示す図で、図中、四角(黒及び白)にて示す点を制
御点、黒四角で示す点を節点という。本発明でいう有理
B-spline曲線とは、図1に示すように、複数本の曲線
セグメント(直線、円弧、または、有理Bezier曲線:
各々自由曲線)より構成された曲線(図1の実線S)で
ある。各自由曲線を区分曲線と呼び、各自由曲線の端点
を節点(黒四角にて示す)と呼ぶ。また、スプライン曲
線Sにおける各節点のパラメータをノットと呼び、各ノ
ットの集りをノット列と呼ぶ。なお、各曲線セグメント
の次数を揃え、有理B-spline曲線で表現されたものを
図3(A)に示す。
【0010】図2に示すような隣りあう2つの曲線セグ
メントS1,S2において、2つの曲線セグメントS1
2の共有節点をw11とし、一直線に並ぶノットの両
側の制御点をw00,w22とする。ここで、共有節点
11のノットの多重度を減らすため、次の式を満たす
必要がある(w0,w1,w2は重み、P0,P1,P2は制
御点)。
【0011】
【数3】
【0012】ここで、t0,t1は節点w11の左右の曲
線セグメントS1,S2のパラメータ長である。本発明で
は、α,w2を未知数とし、上記の方程式を解くことに
する。式(1)を整理すれば、
【0013】
【数4】
【0014】となり、式(4)を式(2)に代入すれ
ば、αに関する1次式となるので、αの値が次の式
(5)により求まり、
【0015】
【数5】
【0016】α(ノット)が求まれば、式(4)によ
り、w2(重み)が求まる。
【0017】隣りあう2つの曲線セグメントの2本目の
曲線セグメントの重みを調整する。例えば、次の公知文
献(Richard R.Patterson,“Projective Transformat
ionof the Parameter of a Bernsten-Bezier Curve”,
ACM Transactions on Graphics,Vol.4,No.4,1985,p
p.276-290)を利用して2本目の曲線セグメントの重み
を調整する。
【0018】この方法によると、以下に示す2本の有理
Bezierの形状が同じであることがわかる。
【0019】
【数6】
【0020】曲線セグメントが2本以上の場合にも、以
上のプロセスを次々へ繰返して適応すれば、すべてのパ
ラメータ長の比が求まるので、各節点のパラメータ(ノ
ット)や、各曲線セグメントの新しい重みを計算でき
る。
【0021】この方法を図3(A)の有理B-spline曲
線に適用した結果を図3(B)に示す。図3(A)の有
理B-spline曲線の重み及びノット列は次のようにな
る。 重み 1.000000 0.815450 0.815450 1.000000 0.906723 0.906723 1.000000 0.979269 0.979269 1.000000 0.977284 0.977284 1.000000 0.977284 0.977284 1.000000 1.000000 1.000000 1.000000 ノット列 0 0.000000 1 0.000000 2 0.000000 3 0.000000 4 0.171469 5 0.171469 6 0.171469 7 0.422291 8 0.422291 9 0.422291 10 0.543948 11 0.543948 12 0.543948 13 0.671199 14 0.671199 15 0.671199 16 0.798450 17 0.798450 18 0.798450 19 1.000000 20 1.000000 21 1.000000 22 1.000000
【0022】図3(B)の有理B-spline曲線の重み及
びノット列は次のようになる。 重み 1.000000 0.553972 0.376339 0.257078 0.232478 0.231584 0.236204 0.257217 0.275178 0.332745 0.376094 0.574081 0.757681 0.983467 ノット列 0 0.000000 1 0.000000 2 0.000000 3 0.000000 4 0.216200 5 0.216200 6 0.410488 7 0.410488 8 0.497406 9 0.497406 10 0.596610 11 0.596610 12 0.716569 13 0.716569 14 1.000000 15 1.000000 16 1.000000 17 1.000000
【0023】よって、図3(A)の有理B-spline曲線
の中間ノットの多重度は3から2に減らされ、また、そ
れによって、制御点も5個少なくなった。
【0024】
【発明の効果】以上の説明から明らかなように、本発明
によると、有理B-spline曲線(NURBS曲線とも呼
ぶ)の表現や有理B-spline曲線の基底関数を利用した
応用において、有理B-spline曲線の形状を変更せず、
各中間ノットの多重度を減らすように各制御点の重みを
調整することができ、従って、制御点の数を少なくして
データ量を減らして、更には、B-splineの基底関数の
連続性を改善するようにしたものである。
【図面の簡単な説明】
【図1】 有理B-spline曲線の一例を示す図である。
【図2】 共有節点のノットの多重度を減らす例を説明
するための図である。
【図3】 本発明を図3(A)の有理B-spline曲線に
適用した結果を図3(B)にて示す図である。
─────────────────────────────────────────────────────
【手続補正書】
【提出日】平成9年3月17日
【手続補正1】
【補正対象書類名】図面
【補正対象項目名】図1
【補正方法】変更
【補正内容】
【図1】

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】 有理B-spline曲線の表現や有理B-spli
    ne曲線の基底関数を利用した応用において、有理B-spl
    ine曲線の形状を変更せず、各中間ノットの多重度を減
    らすように各制御点の重みを調整することを特徴とする
    自由曲線表現方法。
  2. 【請求項2】 下記の式を用いて前記中間ノットの多重
    度を減らすことを特徴とする請求項1に記載の自由曲線
    表現方法。 【数1】 11…隣り合う2つの曲線セグメントの共有接点 w00,w22…一直線に並ぶノットの両側の制御点 t0,t1…曲線セグメントのパラメータ長 α,w2…未知数
JP9051220A 1997-03-06 1997-03-06 自由曲線表現方法 Pending JPH10247249A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP9051220A JPH10247249A (ja) 1997-03-06 1997-03-06 自由曲線表現方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP9051220A JPH10247249A (ja) 1997-03-06 1997-03-06 自由曲線表現方法

Publications (1)

Publication Number Publication Date
JPH10247249A true JPH10247249A (ja) 1998-09-14

Family

ID=12880858

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9051220A Pending JPH10247249A (ja) 1997-03-06 1997-03-06 自由曲線表現方法

Country Status (1)

Country Link
JP (1) JPH10247249A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100823900B1 (ko) 2004-02-06 2008-04-21 다솔 시스템므 컴퓨터-지원 설계 시스템에서 곡선을 드래프팅하는 프로세스
WO2009152583A1 (en) * 2008-06-20 2009-12-23 National Ict Australia Limited Compact representation of a reflectance spectrum

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100823900B1 (ko) 2004-02-06 2008-04-21 다솔 시스템므 컴퓨터-지원 설계 시스템에서 곡선을 드래프팅하는 프로세스
WO2009152583A1 (en) * 2008-06-20 2009-12-23 National Ict Australia Limited Compact representation of a reflectance spectrum
CN102067110A (zh) * 2008-06-20 2011-05-18 澳大利亚国家Ict有限公司 反射光谱的简洁表示
JP2011524578A (ja) * 2008-06-20 2011-09-01 ナショナル・アイシーティ・オーストラリア・リミテッド 反射率スペクトルのコンパクト表現
US8666700B2 (en) 2008-06-20 2014-03-04 National Ict Australia Limited Compact representation of a reflectance spectrum
EP2304601A4 (en) * 2008-06-20 2017-04-19 National ICT Australia Limited Compact representation of a reflectance spectrum

Similar Documents

Publication Publication Date Title
Seidel An introduction to polar forms
US7903112B2 (en) Drawing processing apparatus, texture processing apparatus, and tessellation method
JP3860859B2 (ja) 高性能プリミティブ・クリッピング・プリプロセシングを有するコンピュータ・グラフィックス・システム
JP2010191991A (ja) サーフェス法線ベクトルを求めるための装置又は方法
JP2000510268A (ja) 3次元グラフィックス補間を実行するための乗算器
EP0996094A4 (en) IMAGE PROCESSING DEVICE AND PICTURE PROCESSING PROCESS, PROGRAM DELIVERY MEDIA AND DATA DELIVERY MEDIUM
JPH04289984A (ja) ビット平面マスキングを用いた消去表面表示システムおよびその方法
JPH10283490A (ja) 自由曲面の生成方法
JPH10247249A (ja) 自由曲線表現方法
US6476819B1 (en) Apparatus and method for assigning shrinkage factor during texture mapping operations
Nasri et al. Taxonomy of interpolation constraints on recursive subdivision curves
US6008815A (en) Method for adaptive polygon rendering with fast operation speed of interpolation
US5502801A (en) Method and system for drawing narrow lines on a computer display
JP2870397B2 (ja) 図面の塗り潰し方法
Barnard et al. Combinatorial excursions in moduli space
Shirman Construction of smooth curves and surfaces from polyhedral models
JP3690501B2 (ja) 3次元モデル化方法
JP2003346177A (ja) 3角形パッチを用いたラジオシティ幾何処理方法
JPH10198812A (ja) 自由曲面の近似方法
JPH08194816A (ja) 線分近似方法および線分近似方式
JP2005301425A (ja) 座標変換装置、座標変換方法およびプログラム
Tokuyama et al. Reparameterization of piecewise rational Bézier curves and its applications
JP2828759B2 (ja) 自由曲面の分割方法
JP2000057356A (ja) 画像生成装置及び画像生成方法
KR20020064799A (ko) 전송되는 다각형 메시 데이터의 정련