JPH07160873A - ベジェ曲線を含む画像データの変換方法 - Google Patents

ベジェ曲線を含む画像データの変換方法

Info

Publication number
JPH07160873A
JPH07160873A JP5340708A JP34070893A JPH07160873A JP H07160873 A JPH07160873 A JP H07160873A JP 5340708 A JP5340708 A JP 5340708A JP 34070893 A JP34070893 A JP 34070893A JP H07160873 A JPH07160873 A JP H07160873A
Authority
JP
Japan
Prior art keywords
curve
bezier curve
bezier
partial
approximate
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
JP5340708A
Other languages
English (en)
Inventor
Kenichi Konno
謙一 紺野
Kazunari Iyoda
一成 伊豫田
Hiroshi Nagata
永田  寛
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.)
Dai Nippon Printing Co Ltd
Original Assignee
Dai Nippon Printing 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 Dai Nippon Printing Co Ltd filed Critical Dai Nippon Printing Co Ltd
Priority to JP5340708A priority Critical patent/JPH07160873A/ja
Publication of JPH07160873A publication Critical patent/JPH07160873A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Image Processing (AREA)

Abstract

(57)【要約】 【目的】 ベジェ曲線を含む画像データを、円弧または
直線のみを含む画像データに変換する。 【構成】 端点AB間に定義されたベジェ曲線Zに、中
間地点Cを定義し、部分ベジェ曲線Z1,Z2の2つに
分割する。各部分ベジェ曲線Z1,Z2に対して、それ
ぞれ近似円弧曲線Q1,Q2を求める。部分ベジェ曲線
と近似円弧曲線との間の誤差を評価し、誤差が許容値よ
り小さい場合には、部分ベジェ曲線を近似円弧曲線に置
き換える。誤差が許容値以上であった場合には、当該部
分ベジェ曲線を更に2つの部分ベジェ曲線に分割し、そ
れぞれについて近似円弧曲線を求めて誤差評価を行う。
こうして、誤差が許容値以上である限り、2分割を繰り
返し行い、それぞれの近似円弧曲線を求めてゆく。誤差
が有限値であれば、有限回の繰り返しにより、すべての
区間を円弧に置き換えられる。更に、半径が基準値以上
の円弧は直線に置き換える。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、ベジェ曲線を含む画像
データの変換方法、特に、ベジェ曲線を含む画像データ
を、円弧や直線のみを含む画像データに変換する方法に
関する。
【0002】
【従来の技術】コンピュータの普及とともに、CADシ
ステムによって種々の作図作業を行うことができるよう
になってきている。近年では、パーソナルコンピュータ
用のCADアプリケーションソフトウエアも充実してき
ており、直線や円弧といった幾何学図形による作図だけ
でなく、ベジェ曲線を用いて自由な曲線を作図すること
も可能である。
【0003】印刷の分野においても、このCADシステ
ムを用いた作図が普及してきており、版下図面の作成も
CADシステムを利用して行われている。作成者は、コ
ンピュータを操作しながらディスプレイ画面上で版下図
面を作成する。作成した図面をプリンタによって印画紙
に出力すれば、この印画紙出力をそのまま版下図面とし
て用いることができる。現在では、ポストスクリプト言
語に対応した高品質なプリンタが普及しており、商業印
刷の実用上、全く問題のない高品質な版下図面を印画紙
上に出力することができる。
【0004】
【発明が解決しようとする課題】上述したように、版下
作成などの作図処理をCADシステムを用いて行う技術
は、今後、より広範囲の分野に応用されてゆくものと考
えられる。前述のように、このようなCADシステムで
作成された画像データは、直線や円弧といった幾何学図
形の他に、ベジェ曲線で表現される図形を含んでいるの
が一般的である。ところが、このような画像データに基
づいて実際の図形を出力する機器には、直線や円弧とい
った幾何学図形を出力する機能は備わっているものの、
ベジェ曲線を出力する機能をもたないものが少なくな
い。たとえば、ポストスクリプト言語に対応したプリン
タであれば、ベジェ曲線の出力が可能であるが、それ以
外の多くのプリンタは、ベジェ曲線の出力機能を備えて
いない。また、印刷業界において古くから利用されてい
る写植機も、ベジェ曲線に対応していないものがほとん
どである。このため、せっかくCADシステムを利用し
て効率良い作図を行ったとしても、これらのベジェ曲線
に未対応の出力機器では、作図結果を出力することがで
きないという問題がある。
【0005】そこで本発明は、ベジェ曲線を含む画像デ
ータを、円弧や直線のみを含む画像データに変換する実
用的な変換方法を提供することにより、ベジェ曲線に未
対応の出力機器によってもCADシステムの作図結果を
出力できるようにすることを目的とする。
【0006】
【課題を解決するための手段】
(1) 本願第1の発明は、ベジェ曲線を含む画像データ
を、円弧・直線のみを含む画像データに変換する画像デ
ータの変換方法において、変換対象となるベジェ曲線に
対して任意の中間地点を定義し、この中間地点を境界と
してベジェ曲線を2つの部分ベジェ曲線に分割する第1
の段階と、各部分ベジェ曲線のそれぞれについて、近似
円弧曲線を求める第2の段階と、各部分ベジェ曲線と各
近似円弧曲線との誤差を評価する第3の段階と、誤差が
所定の許容範囲内である部分ベジェ曲線については、こ
れを近似円弧曲線に置き換え、誤差が所定の許容範囲外
である部分ベジェ曲線については、これを新たに変換対
象となるベジェ曲線として取り扱い、第1の段階から本
段階に至るまでの段階を再帰的に実行する第4の段階
と、を行うようにしたものである。
【0007】(2) 本願第2の発明は、上述の第1の発
明に係るベジェ曲線を含む画像データの変換方法におい
て、第1の段階で、0≦t≦1なる媒介変数tを用いた
X座標に関する式と、同じ媒介変数tを用いたY座標に
関する式と、により変換対象となるベジェ曲線をXY二
次元座標系で表現し、0<m<1なる所定の数値mを定
めて媒介変数t=mに相当する位置を中間地点と定義
し、部分ベジェ曲線への分割を行うようにしたものであ
る。
【0008】(3) 本願第3の発明は、上述の第1の発
明に係るベジェ曲線を含む画像データの変換方法におい
て、第2の段階で、部分ベジェ曲線の両端点のうちの一
方の端点において、この部分ベジェ曲線に対する接線を
求め、この接線に対する法線上で両端点から等距離にあ
る点を求め、求めた点を中心点とし両端点を通る円弧を
近似円弧曲線とするようにしたものである。
【0009】(4) 本願第4の発明は、上述の第1の発
明に係るベジェ曲線を含む画像データの変換方法におい
て、第3の段階で、近似円弧曲線の中心点から、部分ベ
ジェ曲線に向けて所定間隔で複数の直線を引き、これら
各直線上において、近似円弧曲線に対する交点と、部分
ベジェ曲線に対する交点と、の距離を各直線ごとに求
め、この距離の最大値をもって誤差を評価するようにし
たものである。
【0010】(5) 本願第5の発明は、上述の第1の発
明に係るベジェ曲線を含む画像データの変換方法におい
て、第4の段階で、部分ベジェ曲線を近似円弧曲線に置
き換える際に、近似円弧曲線の半径が所定の基準値以上
であった場合には、近似円弧曲線による置き換えの代わ
りに直線による置き換えを行うようにしたものである。
【0011】(6) 本願第6の発明は、ベジェ曲線を含
む画像データを、円弧・直線のみを含む画像データに変
換する画像データの変換方法において、変換対象となる
ベジェ曲線をn個の部分ベジェ曲線に分割し、これらn
個の各部分ベジェ曲線をそれぞれ円弧または直線からな
る近似線によって置換することにより、変換対象となる
ベジェ曲線をn個の近似線の集合で表現し、i番目の近
似線と(i+1)番目の近似線とを抽出する第1の段階
と、抽出した両近似線をそれぞれ含む円の中心点間距離
を求める第2の段階と、抽出した両近似線それぞれの回
転方向を求める第3の段階と、中心点間距離が所定の基
準値以下であり、かつ、両近似線の回転方向が同じであ
った場合には、両近似線の接続点、i番目の近似線の接
続点の反対側に位置する端点、(i+1)番目の近似線
の接続点の反対側に位置する端点、の3点を通る円弧に
より両近似線を置き換え、これを新たな(i+1)番目
の近似線とする第4の段階と、の4つの段階からなる手
順を、i=1からi=(n−1)まで変えながら順次実
行するようにしたものである。
【0012】
【作 用】本願発明によれば、変換対象となるベジェ曲
線は、2つの部分ベジェ曲線に分割され、それぞれにつ
いて近似円弧曲線が求められる。そして、近似による誤
差が所定の許容範囲内である場合には、求めた近似円弧
曲線による置き換えを行うが、誤差が許容範囲外であっ
た場合には、置き換えは行わず、この部分ベジェ曲線を
新たな変換対象ベジェ曲線として取り扱い、同様の処理
が行われる。すなわち、この部分ベジェ曲線を更に2つ
に分割し、分割後のそれぞれの部分ベジェ曲線について
近似円弧曲線を求め、近似による誤差が許容範囲内であ
れば置き換えを行い、許容範囲外であれば、再びこの部
分ベジェ曲線を新たな変換対象ベジェ曲線として取り扱
い、同様の処理が続けられる。このように、近似誤差が
許容範囲外である区間については、再帰的に同じ処理が
繰り返し実行されてゆくが、誤差の許容範囲が有限値で
あるため、有限回数の実行により、すべての区間を許容
範囲内の誤差をもった近似円弧曲線に置き換えることが
可能になる。また、半径が所定の基準値以上である近似
円弧曲線については、近似円弧曲線による置き換えの代
わりに直線による置き換えを行うこともできる。
【0013】結局、変換対象となるベジェ曲線をn個の
部分ベジェ曲線に分割し、これらn個の各部分ベジェ曲
線をそれぞれ円弧または直線からなる近似線によって置
換することにより、変換対象となるベジェ曲線をn個の
近似線の集合で表現することが可能になる。しかも、隣
接する2つの近似線が所定の条件を満たしている場合に
は、これらを1つの近似線に置き換える間引処理を行う
ことにより、最終的にはn個よりも小さな近似線の集合
に置き換えることが可能になる。
【0014】
【実施例】以下、本発明を図示する実施例に基づいて説
明する。はじめに、ベジェ曲線の一般的な表現方法につ
いて簡単に説明しておく。ごく一般的なベジェ曲線Zの
一例を図1に示す。このベジェ曲線Zは、2つの端点P
0,P3間に定義された自由曲線であり、それ自身は直
線でも円弧でもない。このような自由曲線を限定するた
めに、2つの端点P0,P3の他に、2つのコントロー
ルポイントP1,P2が定義される。ここで、コントロ
ールポイントP1は、ベジェ曲線Zの端点P0における
接線上の1点であり、コントロールポイントP2は、ベ
ジェ曲線Zの端点P3における接線上の1点である。こ
こで、各点のXY二次元座標系の座標値を、P0
(x,y)、P1(x,y)、P2(x,y
)、P3(x,y)とすれば、ベジェ曲線Z上の
任意の点Pの座標値(X,Y)は、0≦t≦1なる媒介
変数tを用いたX座標に関する式(1) と、同じ媒介変数
tを用いたY座標に関する式(2) とにより、次のように
表現できることが知られている(ここに示すのは、3次
のベジェ曲線の式である)。
【0015】 X=(1−t)x+3t(1−t) +3t(1−t)x+t (1) Y=(1−t)y+3t(1−t) +3t(1−t)y+t (2) この式において、媒介変数tを0〜1まで変えてゆく
と、点P(X,Y)はベジェ曲線Z上を移動することに
なる。たとえば、媒介変数t=0を上式に代入すると、
X=x,Y=yが得られ、点Pは端点P0に一致
し、媒介変数t=1を上式に代入すると、X=x,Y
=yが得られ、点Pは端点P3に一致する。媒介変数
tがこの間の値をとると、点Pは、端点P0〜P3の間
におけるベジェ曲線Z上の位置にくる。図2はこの様子
を簡単に示したものである。ここでは、ベジェ曲線Zの
両端点をA,Bと記しており、媒介変数tの値により、
点P(X,Y)がベジェ曲線Z上を動くことが示されて
いる。
【0016】本発明は、このようなベジェ曲線Zを表す
画像データを、円弧または直線のみを含む画像データに
変換することを目的とする。なお、本明細書において
は、「円弧」なる文言は、「円(中心角360°の円
弧)」を含む意味で用いているものとし、「直線」なる
文言は、「線分(有限の長さをもった直線)」を含む意
味で用いているものとする。以下、本発明に係る画像デ
ータの変換方法を、図3の流れ図に基づいて説明する。
【0017】まず、ステップS1において、変換対象と
なるベジェ曲線Zを2つの部分ベジェ曲線Z1,Z2に
分割する。ここでは、説明の便宜上、図4に示すような
具体的なベジェ曲線Zを変換対象とした例について、以
下の説明を行うことにする。図4に示すベジェ曲線Z
は、端点A,B間を結ぶ自由曲線であり、前述したよう
に、端点A,Bと、図示されていない2つのコントロー
ルポイントとを用いて、上述の式(1) ,(2) のような形
式の画像データで表現されている。このステップS1で
は、このようなベジェ曲線Zに対して任意の中間地点C
を定義し、この中間地点Cを境界としてベジェ曲線Zを
それぞれ部分ベジェ曲線Z1,Z2に分割する。なお、
中間地点Cは、ベジェ曲線Z上の点であればどの位置の
点であってもよい。別言すれば、ベジェ曲線Zの長さを
二等分する点である必要はない。ただ、後述する再帰的
処理の実行回数を小さくして効率良い変換を行う上で
は、できるだけ中央付近の位置に中間地点Cをとるのが
好ましい。この実施例では、媒介変数t=0.5に相当
する点を中間地点Cにとるようにしている。こうすれ
ば、ほぼ中央付近に中間地点Cをとることができ、しか
も、中間地点Cの座標値を非常に簡単に求めることがで
きる。
【0018】続いて、ステップS2において、各部分ベ
ジェ曲線Z1,Z2について、それぞれ近似円弧曲線Q
1,Q2を求める。すなわち、図4において、点AC間
に定義された自由曲線である部分ベジェ曲線Z1に対し
て、これに近似した円弧曲線Q1を求め、同様に、点C
B間に定義された自由曲線である部分ベジェ曲線Z2に
対して、これに近似した円弧曲線Q2を求めることにな
る。このような近似円弧曲線を求める一手法として、こ
こでは次のような方法を開示しておく。まず、図5に示
すように、両部分ベジェ曲線Z1,Z2の接続点Cにお
いて、これらに対する接線Tを引く。このような接線の
方程式は、前述した式(1) ,(2) を、tについて微分す
ることにより得ることができる。続いて、この接線Tに
対して法線Nを引く。ここで、部分ベジェ曲線Z1につ
いての近似円弧曲線Q1と部分ベジェ曲線Z2について
の近似円弧曲線Q2とが、図5において破線で示すよう
な円弧であると仮定すると、これらの円弧曲線Q1,Q
2は、次のような条件を満たす円弧である。 円弧曲線Q1は2点A,Cを通る。 円弧曲線Q2は2点C,Bを通る。 円弧曲線Q1と円弧曲線Q2とは、接続点Cにおい
て滑らかに接続する。
【0019】ところで、上記条件を満たすためには、
接続点Cにおける円弧曲線Q1の接線と、接続点Cにお
ける円弧曲線Q2の接線とが、各部分ベジェ曲線Z1,
Z2の共通接線Tに一致しなければならない。したがっ
て、円弧曲線Q1の中心点O1と、円弧曲線Q2の中心
点O2とは、いずれも法線N上に存在する点となる。し
たがって、上記条件を考慮すれば、円弧曲線Q1の中
心点O1は、法線N上において部分ベジェ曲線Z1の両
端点A,Cから等距離r1にある点として求めることが
でき、上記条件を考慮すれば、円弧曲線Q2の中心点
O2は、法線N上において部分ベジェ曲線Z2の両端点
C,Bから等距離r2にある点として求めることができ
る。こうして、各部分ベジェ曲線Z1,Z2に対して、
近似円弧曲線Q1,Q2が求まる。
【0020】次のステップS3において、部分ベジェ曲
線Z1と近似円弧曲線Q1との誤差Δ1と、部分ベジェ
曲線Z2と近似円弧曲線Q2との誤差Δ2と、が求めら
れる。これらの誤差は、要するに求めた近似円弧曲線の
近似の程度を定量的に示すことができるものであれば、
どのような評価によって求めたものでもかまわない。こ
の実施例では、次のような方法で誤差を定義している。
たとえば、部分ベジェ曲線Z1と近似円弧曲線Q1との
誤差Δ1を求める場合、図6に示すように、近似円弧曲
線Q1の中心点O1から、部分ベジェ曲線Z1に向けて
所定間隔で複数の直線を引き、これら各直線について、
近似円弧曲線Q1に対する交点Pqと、部分ベジェ曲線
Z1に対する交点Pzとを求め、これら交点間距離Δを
各直線ごとに求める。そして、この距離Δの最大値をも
って、部分ベジェ曲線Z1と近似円弧曲線Q1との誤差
Δ1とする。複数の直線を引くには、やはり媒介変数t
を利用すると便利である。たとえば、t=0.01,
0.02,0.03,0.04,…に対応する複数個の
点をベジェ曲線Z1上に定義し、中心点O1とこれら複
数個の点とを結ぶ直線を引けばよい。
【0021】こうして、誤差Δ1,Δ2が求まったら、
これらの誤差が許容値Fより小さいか否かを判断する。
ここで、許容値Fは、必要な変換精度を考慮の上、予め
所定の値に設定しておけばよい。許容値Fを小さく設定
すればするほど、最終的に得られる変換後の画像データ
によってもとのベジェ曲線Zがより忠実に表現されるこ
とになるが、後述する再帰的繰り返し実行回数が増えて
演算時間が長くかかるとともに、変換後の画像データの
容量も大きなものになってしまう。
【0022】まず、ステップS4において、許容値F
と、部分ベジェ曲線Z1と近似円弧曲線Q1との誤差Δ
1と、の大きさを比較する。前者が後者よりも大きけれ
ば、ステップS5において、部分ベジェ曲線Z1は近似
円弧曲線Q1に置き換えられる。すなわち、図5に示す
点A〜Cの区間について、実線で示した曲線Z1は破線
で示した円弧Q1に置き換えられることになる。逆に、
前者が後者よりも小さいか、両者が等しい場合には、ス
テップS4からステップS6へと進み、このステップS
6において、部分ベジェ曲線Z1について変換処理の再
帰的実行が行われる。なお、この変換処理の再帰的実行
については、後に具体例を挙げて説明する。続いて、ス
テップS7において、許容値Fと、部分ベジェ曲線Z2
と近似円弧曲線Q2との誤差Δ2と、の大きさを比較す
る。前者が後者よりも大きければ、ステップS8におい
て、部分ベジェ曲線Z2は近似円弧曲線Q2に置き換え
られる。すなわち、図5に示す点C〜Bの区間につい
て、実線で示した曲線Z2は破線で示した円弧Q2に置
き換えられることになる。逆に、前者が後者よりも小さ
いか、両者が等しい場合には、ステップS7からステッ
プS9へと進み、このステップS9において、部分ベジ
ェ曲線Z2について変換処理の再帰的実行が行われる。
こうして、図4に示すベジェ曲線Zは、複数の近似円弧
に置換されることになる。
【0023】さて、続いて、上述の流れ図におけるステ
ップS6およびステップS9の再帰的実行手順について
説明する。ここでは、ステップS4において許容値F>
Δ1と判断され、ステップS5に進み、更に、ステップ
S7において許容値F<Δ2と判断され、ステップS9
に進んだ場合を例にとって説明する。この場合、図5に
示す点A〜Cの区間については、部分ベジェ曲線Z1が
近似円弧曲線Q1に置き換えられる(ステップS5)
が、点C〜Bの区間については、部分ベジェ曲線Z2を
近似円弧曲線Q2に置き換えるのは不適当であると判断
されたことになる。そこで、この点C〜Bの区間の部分
ベジェ曲線Z2を、新たに変換対象となるベジェ曲線と
して取扱い、図3の流れ図に示すステップS1〜終了ま
での手順を行うのである。この結果、部分ベジェ曲線Z
2は、たとえば、図7に示すように、中間地点Dにおい
て2つの部分ベジェ曲線Z21,Z22に更に分割され
ることになり、これら各部分ベジェ曲線Z21,Z22
のそれぞれについて、近似円弧曲線Q21,Q22(図
示されていない)が求められ、それぞれについて誤差Δ
21,Δ22が求められる。これらの誤差が許容値Fよ
りも小さければ、それぞれについて置き換えが行われ
る。この場合は、図7において、部分ベジェ曲線Z1,
Z21,Z22は、それぞれ近似円弧曲線Q1,Q2
1,Q22によって置き換えられたことになり、結果的
にもとのベジェ曲線Zは、3つの近似円弧曲線に変換さ
れたことになる。しかし、必ずしも、誤差Δ21,Δ2
2が許容値Fよりも小さくなるとは限らない。たとえ
ば、誤差Δ22は許容値Fよりも小さくなったが、誤差
Δ21は許容値Fよりも大きいという場合には、部分ベ
ジェ曲線Z22は近似円弧曲線Q22に置き換えられる
が、部分ベジェ曲線Z21については、これを更に新た
な変換対象となるベジェ曲線として取扱い、図3の流れ
図に示すステップS1〜終了までの手順を行うことにな
る。すなわち、部分ベジェ曲線Z21は、更に部分ベジ
ェ曲線Z211,Z212に分割されることになる。
【0024】結局、このような再帰的変換処理は、図3
に示す流れ図を入れ子構造にして実行する処理というこ
とができる。すなわち、図7に示すベジェ曲線Zを「ス
テップS1における変換対象となるベジェ曲線」とした
処理手順を第1階層の手順と呼ぶことにすれば、ベジェ
曲線Z2を「ステップS1における変換対象となるベジ
ェ曲線」とした処理手順は第2階層の手順となり、この
第2階層の全手順はすべて第1階層のステップS9の中
に入ることになる。また、ベジェ曲線Z21を「ステッ
プS1における変換対象となるベジェ曲線」とした処理
手順は第3階層の手順となり、この第3階層の全手順は
すべて第2階層のステップS6の中に入ることになる。
こうして、各誤差が許容値Fよりも小さくなるまで、こ
のような再帰的な変換処理が繰り返し実行される。許容
値Fが有限値である限り、この繰り返し回数は有限回数
になる。ただし、許容値Fを小さく設定すればするほ
ど、繰り返し回数は多くなる。
【0025】なお、上述の実施例では、部分ベジェ曲線
をすべて近似円弧曲線に置き換えているが、実用上は、
近似円弧曲線または近似直線のいずれかに置き換えるの
が好ましい。具体的には、近似円弧曲線の半径について
所定の基準値を設定しておき、図3の流れ図におけるス
テップS5およびステップS8において、近似円弧曲線
による置き換えを実行する際に、この近似円弧曲線の半
径が所定の基準値よりも大きい場合には、近似円弧曲線
の代わりに、その両端点を結ぶ直線(線分)による置き
換えを実行するのである。たとえば、図5において、部
分ベジェ曲線Z2を近似円弧曲線Q2に置き換える場
合、この近似円弧曲線Q2の半径r2が所定の基準値よ
りも大きい場合には、曲線Q2の代わりに、近似直線C
Bによる置き換えを行うのである。このように、直線近
似ができる区間については、円弧による置き換えではな
く直線による置き換えを行った方が効率的である。
【0026】さて、これまで、図3の流れ図に基づい
て、ベジェ曲線を含む画像データを、円弧または直線の
みを含む画像データに変換する方法を述べた。この方法
を実行すると、結局、変換対象となるベジェ曲線はn個
の部分ベジェ曲線に分割され、これらn個の各部分ベジ
ェ曲線はそれぞれ円弧または直線からなる近似線によっ
て置換されることになる。前述のように、この方法は、
再帰的な繰り返し処理を含んでおり、多数繰り返しを行
うと、最終的に得られる近似線の総数nはかなり大きく
なる。そこで、上述の処理を行った後に、近似線の総数
nを小さくするための間引処理を行うのが好ましい。以
下、この間引処理について、図8の流れ図に基づいて説
明する。ここでは図9に示す具体例に即した説明を行う
ことにする。図9に示す例は、前述した図3の手順を実
行することにより、ベジェ曲線を、円弧または直線から
なる近似線の集合からなる曲線に置き換えた状態を示し
ており、この曲線は、近似線Q1,Q2,…,Qnとい
うn本の近似線から構成されている。ここで、近似線Q
4は直線であるが、他の近似線はいずれも円弧であるも
のとする。
【0027】この間引処理の最初の作業は、図8に示す
流れ図のステップS11において、パラメータiを初期
値1に設定することである。このパラメータiは、図9
に示す曲線を構成する近似線の番号を示すものである。
すなわち、i=1は、近似線Q1を示している。そこ
で、ステップS12において、i番目の近似線Qiと、
(i+1)番目の近似線Q(i+1)とが抽出される。
具体的には、1番目の近似線Q1と2番目の近似線Q2
とが抽出されることになる。続いて、ステップS13に
おいて、抽出した両近似線の中心点間距離Lを求める。
ここで、「中心点」とは、近似線が円弧の場合はその円
弧の中心点(正確に表現すれば、その円弧を含む円の中
心点)であり、近似線が直線の場合は無限遠方の点(別
言すれば、直線を半径無限大の円の円弧と考えたとき
の、その円の中心点)である。したがって、両近似線の
いずれか一方が直線の場合には、中心点間距離Lは無限
大となる。両近似線がともに円弧の場合には、これら各
円弧の中心点の間の距離がLである。これを具体的に示
すと図10のようになる。近似線Q1は中心点O1をも
った半径r1の円弧であり、近似線Q2は中心点O2を
もった半径r2の円弧である。したがって、中心点間距
離Lは、中心点O1,O2間の距離ということになる。
【0028】続いて、ステップS14において、抽出し
た両近似線それぞれの回転方向を求める。ここで、回転
方向とは、「1番目の近似線からn番目の近似線へ向か
う方向に各近似線を辿るときの近似線のカーブしてゆく
向き」である。たとえば、図9に示す例では、近似線Q
1は右方向、Q2は右方向、Q3は左方向、Q4は直
進、Q5は右方向、…である。
【0029】こうして、抽出したi番目の近似線Qi
と、(i+1)番目の近似線Q(i+1)とについて、
中心点間距離Lと回転方向とが求まったら、次の2つの
判断を行う。まず、ステップS15において、中心点間
距離Lが所定の基準値Gよりも小さいか否か、そして、
ステップS16において、両近似線の回転方向が同じか
否か、を判断する。この2つの判断において、いずれも
肯定的な結果が得られれば、ステップS17における間
引きを実施するのである。この2つの判断は、抽出した
2つの近似線を1つの近似線に置き換える処理(間引処
理)を実行してよいか否かを決定するための判断であ
る。中心点間距離Lが所定の基準値Gよりも小さいとい
うことは、2つの近似線がほぼ半径の等しい円弧である
ことを示しており、回転方向が同じであれば、これらの
円弧を共通の円弧に置換可能であることを示している。
したがって、両判断結果がともに肯定的であれば、ステ
ップS17における間引処理が可能になる。
【0030】このステップS17における間引処理は、
両近似線の接続点と、この接続点の反対側に位置する各
近似線のそれぞれの端点と、の3点を通る円弧により両
近似線を置き換え、これを新たな(i+1)番目の近似
線とする処理である。たとえば、i=1の場合、この処
理は、図10において、両近似線Q1,Q2の接続点C
と、この接続点Cの反対側に位置する近似線Q1の端点
Aと、この接続点Cの反対側に位置する近似線Q2の端
点Bと、の3点を通る円弧Q12(中心点O12、半径
r12、の円弧:図に破線で示す)により、両近似線Q
1,Q2を置き換え、これを新たな2番目の近似線Q2
とする処理である。一般に、3点を通る円は、幾何学的
にただ1つ求まるので、3点A,B,Cが与えられれ
ば、円弧Q12は一義的に求まる。
【0031】こうして、ステップS15,S16の判断
が肯定的であった場合のみ、ステップS17による間引
処理が行われる。そして、続くステップS18では、パ
ラメータiの値が1だけ増加させられ、ステップS19
を経てステップS12からの手順が繰り返し実行され
る。こうして、パラメータi=nまで到達したら、ステ
ップS19を経て、図8の全手順が終了する。この一連
の手順を、図9に示す具体例に基づいて説明すると、次
のようになる。まず、パラメータi=1における手順
で、近似線Q1,Q2が抽出され、ステップS15,S
16の判断処理で肯定的な判断がなされたら、図10に
示すような円弧Q12が求められ、近似線Q1,Q2は
円弧Q12に置き換えられる。そして、この円弧Q12
が新たに近似線Q2として取り扱われる。したがって、
パラメータi=2における手順では、この新たな近似線
Q2(すなわち円弧Q12)と近似線Q3とが抽出され
る。ところがこの両近似線は回転方向が異なるため、ス
テップS17の間引処理は行われない。この時点で、新
たな近似線Q2(すなわち円弧12)は確定した状態
(後に、他の近似線によって置き換えられることはない
状態)となる。次のパラメータi=3における手順で
は、近似線Q3と近似線Q4とが抽出される。ここで、
近似線Q4は直線であるから、中心点間距離Lは無限大
となり、やはりステップS17の間引処理は行われず、
近似線Q3は確定した状態となる。以下、同様に、各近
似線が順次確定してゆくことになり、最終的には近似線
の総数nをかなり低減させることができる。
【0032】以上、本発明を図示する実施例に基づいて
説明したが、本発明はこれらの実施例に限定されるもの
ではなく、この他にも種々の態様で実施可能である。た
とえば、上述の例では媒介変数tを用いた3次の式でベ
ジェ曲線を表現したが、より高次の式を用いてもかまわ
ない。また、前述の実施例では式(1),(2) として2次元
の座標系で表わされるベジェ曲線を示したが、これを3
次元へ拡張することも可能である。更に、上述の実施例
の間引処理では、直線に関しては間引きを行っておら
ず、円弧−円弧と連続した場合のみ間引きを行っている
が、円弧−直線,直線−円弧,直線−直線と連続した場
合にも間引き処理を行うこともできる 本発明に係るベジェ曲線を含む画像データの変換方法
は、種々の産業分野において利用可能である。たとえ
ば、印刷分野において、版下作成などの作図処理をCA
Dシステムを用いて行い、プリンタによって印画紙上に
版下を出力する場合を考える。この場合、CADシステ
ムがポストスクリプト言語に対応したものであれば、ベ
ジェ曲線を表現することができる。ところが、プリンタ
がポストスクリプト言語に対応していない場合、ベジェ
曲線をそのままの状態でプリンタ出力することはできな
い。このような場合、本発明に係る方法により、ベジェ
曲線を含む画像データを、円弧または直線のみを含む画
像データに変換すれば、プリンタ出力が可能になる。
【0033】図11は、CADシステムから出力された
ポストスクリプトデータを、本発明に係る変換方法によ
り変換して、ポストスクリプト言語に対応していない写
植機などに出力データを供給するシステムの一例を示す
ブロック図である。ポストスクリプトデータは、インタ
ープリタ1によって、ベジェ曲線,直線,文字という3
つのデータに分けられる。このうちベジェ曲線は変換処
理部2において、円弧,円,直線のいずれかのデータに
変換される。すなわち、この変換処理部2において図3
に示すような変換処理および必要ならば図8に示すよう
な間引処理が実行される。出力データ生成部3は、こう
してベジェ曲線を含まないデータを所定のフォーマット
で出力データとして出力する機能を有する。これらの各
ブロックは、実際にはワークステーションなどのコンピ
ュータで実現できる。
【0034】
【発明の効果】以上のとおり、本発明に係るベジェ曲線
を含む画像データの変換方法によれば、ベジェ曲線を逐
次分割して、各分割区間を円弧または直線からなる近似
線によって構成される画像データに変換し、必要に応じ
て近似線の間引処理を行うようにしたため、ベジェ曲線
に未対応の出力機器によってもベジェ曲線に対応したC
ADシステムの作図結果を出力できるようになる。
【図面の簡単な説明】
【図1】ごく一般的なベジェ曲線Zの一例を示す図であ
る。
【図2】ベジェ曲線Zを媒介変数tによって特定される
点の集合として表現した様子を示す図である。
【図3】本発明に係るベジェ曲線を含む画像データの変
換方法の手順を示す流れ図である。
【図4】図3の流れ図におけるステップS1のベジェ曲
線の分割方法を説明する図である。
【図5】図3の流れ図におけるステップS2の近似円弧
曲線Q1,Q2を求める方法を説明する図である。
【図6】図3の流れ図におけるステップS3の誤差Δ
1,Δ2を求める方法を説明する図である。
【図7】図3の流れ図におけるステップS6,S9の再
帰的変換処理を説明する図である。
【図8】図3の流れ図に基づく手順により変換を行った
後に実施すべき間引処理の手順を示す流れ図である。
【図9】図8の流れ図における間引処理の対象となる近
似線群の一例を示す図である。
【図10】図8の流れ図におけるステップS17の間引
処理を説明する図である。
【図11】本発明に係る変換方法を実施するシステム構
成例を示すブロック図である。
【符号の説明】
1…インタープリタ 2…変換処理部 3…出力データ生成部 L…中心点間距離 N…法線 O1,O2,O12…円弧の中心点 Q1,Q2,…,Qn…近似線 r1,r2,r12…円弧の半径 T…接線 Z…ベジェ曲線 Z1,Z2,Z21,Z22…部分ベジェ曲線

Claims (6)

    【特許請求の範囲】
  1. 【請求項1】 ベジェ曲線を含む画像データを、円弧・
    直線のみを含む画像データに変換する画像データの変換
    方法であって、 変換対象となるベジェ曲線に対して任意の中間地点を定
    義し、この中間地点を境界として前記ベジェ曲線を2つ
    の部分ベジェ曲線に分割する第1の段階と、 各部分ベジェ曲線のそれぞれについて、近似円弧曲線を
    求める第2の段階と、 各部分ベジェ曲線と各近似円弧曲線との誤差を評価する
    第3の段階と、 誤差が所定の許容範囲内である部分ベジェ曲線について
    は、これを近似円弧曲線に置き換え、誤差が所定の許容
    範囲外である部分ベジェ曲線については、これを新たに
    変換対象となるベジェ曲線として取り扱い、前記第1の
    段階から本段階に至るまでの段階を再帰的に実行する第
    4の段階と、 を有することを特徴とするベジェ曲線を含む画像データ
    の変換方法。
  2. 【請求項2】 請求項1に記載の変換方法において、 第1の段階で、0≦t≦1なる媒介変数tを用いたX座
    標に関する式と、同じ媒介変数tを用いたY座標に関す
    る式と、により変換対象となるベジェ曲線をXY二次元
    座標系で表現し、0<m<1なる所定の数値mを定めて
    媒介変数t=mに相当する位置を中間地点と定義し、部
    分ベジェ曲線への分割を行うことを特徴とするベジェ曲
    線を含む画像データの変換方法。
  3. 【請求項3】 請求項1に記載の変換方法において、 第2の段階で、部分ベジェ曲線の両端点のうちの一方の
    端点において、この部分ベジェ曲線に対する接線を求
    め、この接線に対する法線上で前記両端点から等距離に
    ある点を求め、求めた点を中心点とし前記両端点を通る
    円弧を近似円弧曲線とすることを特徴とするベジェ曲線
    を含む画像データの変換方法。
  4. 【請求項4】 請求項1に記載の変換方法において、 第3の段階で、近似円弧曲線の中心点から、部分ベジェ
    曲線に向けて所定間隔で複数の直線を引き、これら各直
    線上において、前記近似円弧曲線に対する交点と、前記
    部分ベジェ曲線に対する交点と、の距離を各直線ごとに
    求め、この距離の最大値をもって誤差を評価することを
    特徴とするベジェ曲線を含む画像データの変換方法。
  5. 【請求項5】 請求項1に記載の変換方法において、 第4の段階で、部分ベジェ曲線を近似円弧曲線に置き換
    える際に、前記近似円弧曲線の半径が所定の基準値以上
    であった場合には、近似円弧曲線による置き換えの代わ
    りに直線による置き換えを行うことを特徴とするベジェ
    曲線を含む画像データの変換方法。
  6. 【請求項6】 ベジェ曲線を含む画像データを、円弧・
    直線のみを含む画像データに変換する画像データの変換
    方法であって、 変換対象となるベジェ曲線をn個の部分ベジェ曲線に分
    割し、これらn個の各部分ベジェ曲線をそれぞれ円弧ま
    たは直線からなる近似線によって置換することにより、
    前記変換対象となるベジェ曲線をn個の近似線の集合で
    表現し、 i番目の近似線と(i+1)番目の近似線とを抽出する
    第1の段階と、 抽出した両近似線をそれぞれ含む円の中心点間距離を求
    める第2の段階と、 抽出した両近似線それぞれの回転方向を求める第3の段
    階と、 前記中心点間距離が所定の基準値以下であり、かつ、前
    記両近似線の回転方向が同じであった場合には、前記両
    近似線の接続点、前記i番目の近似線の前記接続点の反
    対側に位置する端点、前記(i+1)番目の近似線の前
    記接続点の反対側に位置する端点、の3点を通る円弧に
    より前記両近似線を置き換え、これを新たな(i+1)
    番目の近似線とする第4の段階と、 の4つの段階からなる手順を、i=1からi=(n−
    1)まで変えながら順次実行することを特徴とするベジ
    ェ曲線を含む画像データの変換方法。
JP5340708A 1993-12-09 1993-12-09 ベジェ曲線を含む画像データの変換方法 Pending JPH07160873A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP5340708A JPH07160873A (ja) 1993-12-09 1993-12-09 ベジェ曲線を含む画像データの変換方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5340708A JPH07160873A (ja) 1993-12-09 1993-12-09 ベジェ曲線を含む画像データの変換方法

Publications (1)

Publication Number Publication Date
JPH07160873A true JPH07160873A (ja) 1995-06-23

Family

ID=18339559

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5340708A Pending JPH07160873A (ja) 1993-12-09 1993-12-09 ベジェ曲線を含む画像データの変換方法

Country Status (1)

Country Link
JP (1) JPH07160873A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101638384B1 (ko) * 2015-05-27 2016-07-11 (주)이노시뮬레이션 선로영상구현방법
CN113706970A (zh) * 2021-08-26 2021-11-26 北京金三惠科技有限公司 展示乐谱连音线的方法及计算机程序
CN113865594A (zh) * 2021-09-29 2021-12-31 上海仙工智能科技有限公司 对含有圆弧导航路径段的曲率连续拼接优化方法、装置及存储介质
CN113989430A (zh) * 2021-09-24 2022-01-28 西安电子科技大学 一种光纤线包精密缠绕数字化模型的精确创建方法

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101638384B1 (ko) * 2015-05-27 2016-07-11 (주)이노시뮬레이션 선로영상구현방법
CN113706970A (zh) * 2021-08-26 2021-11-26 北京金三惠科技有限公司 展示乐谱连音线的方法及计算机程序
CN113706970B (zh) * 2021-08-26 2023-04-28 北京金三惠科技有限公司 展示乐谱连音线的方法及计算机程序
CN113989430A (zh) * 2021-09-24 2022-01-28 西安电子科技大学 一种光纤线包精密缠绕数字化模型的精确创建方法
CN113989430B (zh) * 2021-09-24 2023-08-11 西安电子科技大学 一种光纤线包精密缠绕数字化模型的精确创建方法
CN113865594A (zh) * 2021-09-29 2021-12-31 上海仙工智能科技有限公司 对含有圆弧导航路径段的曲率连续拼接优化方法、装置及存储介质
CN113865594B (zh) * 2021-09-29 2023-10-31 上海仙工智能科技有限公司 对含有圆弧导航路径段的曲率连续拼接优化方法、装置及存储介质

Similar Documents

Publication Publication Date Title
JPH06124314A (ja) コンピュータ支援設計システムおよびそのシステムにおける幾何学的対象を修正する方法
CN115194931B (zh) 混凝土3d打印路径的规划方法、装置、设备及存储介质
JPH07160873A (ja) ベジェ曲線を含む画像データの変換方法
JPH08180200A (ja) 図形配置装置
JP2938909B2 (ja) 曲面生成方法及びその装置
JP2829692B2 (ja) オペレーションマクロ方式cad装置
JPS63208898A (ja) 文字処理装置
EP1475751B1 (en) Design data generating apparatus and design data generating method
JP3305395B2 (ja) 図形分割装置
JP2001273016A (ja) データ処理装置及びコンピュータ読取可能な記録媒体
US20010055033A1 (en) Reduction processing method and computer readable storage medium having program stored thereon for causing computer to execute the method
JPH04373084A (ja) 文字図形変形処理装置
JPH03175504A (ja) Cad/cam装置
JPS6061866A (ja) 図形処理システムにおける面取り処理方式
JP2925397B2 (ja) 形状データ作成方法
JP2005332183A (ja) メッシュ修正装置、メッシュ修正方法及びプログラム
JP2005018545A (ja) 設計データ生成装置および設計データ生成方法
JP4089806B2 (ja) 曲線生成装置およびその方法ならびに記憶媒体
JPH0589210A (ja) Cad/cam装置
JPH09319731A (ja) データの補間方法及び補間装置
JP2006172007A (ja) 解析用メッシュ修正装置、及び、解析用メッシュ修正方法
JPH10171998A (ja) 疑似曲線作成装置
JP2002056402A (ja) 形状算出装置及び形状算出方法及びコンピュータ読み取り可能な記憶媒体
JPH03296131A (ja) 複数直線線分からなる近似円の平滑化方法
JPH03231375A (ja) 境界要素法用解析モデルの作成方法