Warning: copy(.htaccess): failed to open stream: Permission denied in /home/jp321/public_html/header.php on line 8
スプライン曲線作成方法 - 大阪瓦斯株式会社
米国特許情報 | 欧州特許情報 | 国際公開(PCT)情報 | Google の米国特許検索
 
     特許分類
A 農業
B 衣類
C 家具
D 医学
E スポ−ツ;娯楽
F 加工処理操作
G 机上付属具
H 装飾
I 車両
J 包装;運搬
L 化学;冶金
M 繊維;紙;印刷
N 固定構造物
O 機械工学
P 武器
Q 照明
R 測定; 光学
S 写真;映画
T 計算機;電気通信
U 核技術
V 電気素子
W 発電
X 楽器;音響


  ホーム -> 計算機;電気通信 -> 大阪瓦斯株式会社

発明の名称 スプライン曲線作成方法
発行国 日本国特許庁(JP)
公報種別 公開特許公報(A)
公開番号 特開2003−281556(P2003−281556A)
公開日 平成15年10月3日(2003.10.3)
出願番号 特願2002−84713(P2002−84713)
出願日 平成14年3月26日(2002.3.26)
代理人 【識別番号】100104606
【弁理士】
【氏名又は名称】佐藤 富徳
【テーマコード(参考)】
5B046
5B080
【Fターム(参考)】
5B046 FA12 
5B080 AA06 AA07 FA15
発明者 佐藤 富徳
要約 課題
極力少ない手順で、かつ省力的に、アンカーポイントP、P……Pを通過するスプライン曲線を決定する方法を提供することに有る。

解決手段
アンカーポイントP、P……Pが与えられ、線Lが、P0nに平行かつPを通る線として、線Lが、P(n−1)nに平行かつPを通る線として与えられた場合において、所定手順により決定されるベジェ曲線S、S……Sからなり、アンカーポイントP、P……Pを通過することを特徴とするスプライン曲線作成方法。
特許請求の範囲
【請求項1】 アンカーポイントP、P……Pが与えられ、線Lが、P0nに平行かつPを通る線として、線Lが、P(n−1)nに平行かつPを通る線として与えられた場合において、下記手順により決定されるベジェ曲線S、S……Sからなり、アンカーポイントP、P……Pを通過することを特徴とするスプライン曲線作成方法。
(1)P(i−2)に平行かつP(i−1)を通る線を線L(i−1)とし、P(i−1)(i+1)に平行かつPを通る線を線Lとする。ここに、i=2、……(n−1)である。
(2)線L(i−1)、線Lの交点を点Cとする。ここに、i=1、2……nである。
(3)そして、ハンドルH(i−1)LがベクトルP(i−1)、ハンドルHiRがベクトルPとなるように、ハンドルH(i−1)LとハンドルHiRを決定する。ここに、i=1、2……nである。
(4)アンカーポイントP(i−1)、P、ハンドルH(i−1)L、ハンドルHiRからベジェ曲線Sを決定する。ここに、i=1、2……nである。
上記(1)〜(4)の手順をi=1、2……nまで繰り返して、ベジェ曲線S、S……Sを作成する。
【請求項2】アンカーポイントP、P……P与えられ、線Lが、P0nに平行かつPを通る線として、線Lが、P(n−1)nに平行かつPを通る線として与えられた場合において、下記手順により決定されるベジェ曲線S、S……Sからなり、アンカーポイントP、P……Pを通過することを特徴とするスプライン曲線作成方法。
(1)P(i−2)に平行かつP(i−1)を通る線を線L(i−1)とし、P(i−1)(i+1)に平行かつPを通る線を線Lとする。ここに、i=2、……(n−1)である。
(2)線L(i−1)、線Lの交点を点Cとする。ここに、i=1、2……nである。
(3)次に、ベクトルP(i−1)iLの大きさ/ベクトルP(i−1)の大きさ=k、ベクトルPiRの大きさ/ベクトルPの大きさ=kとなるように線L(i−1)上の点CiL及び線L上の点CiRを決定する。ここに、i=1、2……n、kは予め設定された定数である。
(4)ハンドルH(i−1)LがベクトルP(i−1)iL、ハンドルHiRがベクトルPiRとなるように、ハンドルH(i−1)LとハンドルHiRを決定する。ここに、i=1、2……nである。
(5)アンカーポイントP(i−1)、P、ハンドルH(i−1)L、ハンドルHiRからベジェ曲線S決定する。ここに、i=1、2……nである。上記(1)〜(5)をi=1、2……nまで繰り返して、ベジェ曲線S、S……Sを作成する。
発明の詳細な説明
【0001】
【産業上の利用分野】本発明は、コンピュータによる複数のアンカーポイントを通過するスプライン曲線作成方法に関する。
【0002】
【従来の技術】スプライン曲線の一種であるベジェ曲線を、できるだけ簡単かつ分かり易く説明するために、曲線が通過する点をアンカーポイント、方向を切り替えるヒゲのようなものをハンドル(ハンドルは、ベクトルであって、単に方向のみではなく、力を有する。)と称することにする。かかるベジェ曲線によって作成されたスプライン曲線は、非常に滑らかで美しい流線形を形成するのが特徴である。従来の技術としては、ベジェ曲線を次々と繋ぎ合せた形で、アンカーポイントを通過するスプライン曲線を作成する方法があった。ここに、スプライン曲線を通過するアンカーポイントをP、P……Pとする。先ず、スプライン曲線を描こうとする者(スプライン曲線デザイナー)は、アンカーポイントP、Pを選択し、アンカーポイントP、PのハンドルHP0L、H1Rを決定し、アンカーポイントP、Pを通過するベジェ曲線Sを描く。次に、アンカーポイントP、PからハンドルH0L、H1Rをひきずりだしてやると線画がふくらみ、曲線を描くことができる。 ゆるやかな曲線であれば、アンカーポイントP、PのハンドルH0L、H1Rの調節によって表現できる。ハンドルH0L、H1Rを変えて、アンカーポイントP、Pを通過するベジェ曲線Sを自分の思い通りの曲線になるように、試行錯誤を繰り返し、最終的にベジェ曲線Sを決定する。続いて、スプライン曲線のデザイナーは、アンカーポイントP、Pを選択し、同様にして試行錯誤を繰り返すことにより、自分の思い通りの曲線になるように、アンカーポイントP、PのハンドルH1L、H2Rを決定して、最終的にアンカーポイントP、Pを通過するベジェ曲線Sを決定する。以下、アンカーポイントPとPを通過するスプライン曲線Sを決定し、同様の手順により、P(n−1)、Pを通過するスプライン曲線Sを決定する。これにより、アンカーポイントP、P……Pを通過するベジェ曲線S1、……Sを次々に繋ぎ合せた形のスプライン曲線S(=S+S+……S)を決定することができる。各設計業界においては、かなり高い割合で、ベジェ曲線を利用したアドビシステムズのイラストレータがグラフィックツールとして、導入されている。このイラストレータを素人にも簡便に利用できる2D設計ツールとして、リメイクすることが、下記の本発明課題達成のためには、最も有効な手段と判断した。なお、土木建築・機械設計・インテリアなどのあらゆる業界で、CADは必需品となっており、現在、Auto−CADが圧倒的シェアを確立し、残りを各社のCADが熾烈に争っている。どのCADも高性能3D−CADとして、目覚ましい進化を遂げてきた。ところが、利用者(素人を含む。)にとっては、高性能3D−CADがゆえの、取扱いの難しさや高価格が普及のネックとなってきていたのも紛れない事実である。従って、簡単、気軽に2D設計をこなすことができるツールを新たに開発する必要があると考えられる。
【0003】
【発明が解決しようとする課題】従来の発明では、アンカーポイントP(i−1)、Pを与えて、デザイナー好みのベジェ曲線Siとなるように、ハンドルH(i−1)L、HiRを試行錯誤によって変化させ、ハンドルHiR、HiLが一直線になるようにして、次のベジェ曲線S(i+1)を順次決定し、それらを表示していた。しかし、アンカーポイントP、P……P毎に、試行錯誤的に、各アンカーポイント間でデザイナー好みのベジェ曲線を決定し表示していたのでは煩雑であり、極力少ない手順によって、デザイナー(素人を含む。)が満足できる品質を有する複数のベジェ曲線を結合した形のスプライン曲線を作成する方法の技術出現が望まれていた。本発明の課題は、極力少ない手順で、かつ省力的に、アンカーポイントP、P……Pを通過する滑らかなスプライン曲線を決定する方法を提供することに有る。
【0004】
【課題を解決するための手段】本発明は、特許請求の範囲の各請求項に記載の発明である。
(用語の説明)権利解釈上の疑義を解消するために、本願明細書で用いる用語を以下説明する。・“アンカーポイントP、P……Pが与えられた場合”とは、ベクトルの座標値の組として与えられた場合、あるいは、コンピュータ画面上においてマウス等のクリック入力により与えられた場合等が有る。
・ベジェ曲線とは、グラフィックス等で曲線や曲面を表現するための手法の一つである。与えられたいくつかの点(制御点)を元にして、それらをつなぐ滑らかな曲線(曲面)を描くことができる。ベジェ曲線では、与えられた制御点のうち、最初と最後の制御点だけは通過するが、その間の制御点は曲線のカーブの形状を決めるためにしか使われない。(近くを通過するだけである。)以下、ベジェ曲線について詳細に検討する。ベクトルr=(x,y)と書いてベジェ曲線上の点を表すものとする。ベクトルP=(x,y)(i=0、1…………n)をアンカーポイント、ベクトルHiL=(hx(i−1)L,hy(i−1)L)、ベクトルHiR=(hxiR,hyiR)(i=0、1…………n)をハンドルとすると、次式で表現できる。
r=Pi−1(1−t)+3H(1―1)Lt(1−t)−3HiR(1−t)+P……(1)
このベクトル方程式は、同時に2個または3個の方定式があることを意味する。x,y成分につき1個ずつ、そして、三次元ならさらにz成分につき1個の方定式である。
【0005】このパラメータ3次式は、部分曲線S、S……Sに分けてデザインする上に非常に有用である。それは湾曲した曲線(曲率が符号を変える曲線)も(もちろん一様に曲がっている曲線も)表す。パラメータ三次式である(1)式は、アンカーポイントP(i―1)、PとハンドルH(i―1)L、HiRに幾何学的意味が付くので、直感的に理解し易いことが特徴である。(1)式でt=0と置くと、(x(i―1),y(i―1))という曲線上の点が得られる。(1)式でt=1と置くと、(x,y)という曲線上の点が得られる。tについて微分して、t=0でdy/dxを計算すると、ベクトル3H(i―1)Lが曲線のt=0での接線と平行であることがわかる。同様にして、tについて微分して、t=1でdy/dxを計算すると、ベクトル3HiRは、曲線のt=1における接線と平行であることがわかる。2点、3H(1―1)L、3HiRは実際に曲線上に乗ってはいないが、そのベクトルは幾何学的に意味のあるものであることに注意する必要がある。すなわち、アンカーポイント(x(1―1),y(1―1))と(x,y)を通過し、かつ両端のアンカーポイントの接線が、3H(1―1)Lと(−3HiR)に平行になるようにベジェ曲線を決定する。そしてかつ、ハンドルの大きさと向きをコントロールすることによって、好みに合ったベジェ曲線を表現することができるのである。このようにして、曲線の細片S、S……Sを加え合わせることができる。アンカーポイントP、P……P曲線の滑らかな曲線Sの作成方法について、以下具体的に説明しよう。
<曲線の細片S作成方法について>先ず、曲線の細片S作成方法について具体的に説明しよう。スプライン曲線が通過するアンカーポイントPとPをマウス等によって読み込ませる。そして、ハンドルH0LとH1Rをコントロールすることによって試行錯誤によってハンドルH0LとH1Rを決定する。アンカーポイントPとPとハンドルH0LとH1Rが決定されれば、曲線の細片S(ベジェ曲線)は一義的に決定される。
<曲線の細片S作成方法について>次に、曲線の細片S作成方法について具体的に説明しよう。スプライン曲線Sが通過するアンカーポイントPとPをマウス等によって読み込ませる。そして、ハンドルH1LとH2Rをコントロールすることによって試行錯誤でハンドルH1LとH2Rを決定する。曲線の端が滑らかに接合されるように、H1RとH1Lが一直線上にあるように決定する。アンカーポイントPでの曲線の細片SとSが接線が一致するようにする。アンカーポイントPとPとハンドルH1LとH2Rが決定されれば、曲線の細片S(ベジェ曲線)は一義的に決定される。
<曲線の細片S〜Sの作成方法について>同様の手順により、S〜S(n−1)は、一義的に決定される。スプライン曲線Sが通過するアンカーポイントP(n−1)とPをマウス等によって読み込ませる。そして、ハンドルH(n−1)LとHnRをコントロールすることによって試行錯誤でハンドルH(n−1)LとHnRを決定する。アンカーポイントP(n−1)とPとハンドルH(n−1)LとHnRが決定されれば、曲線の細片S(ベジェ曲線)は一義的に決定される。このようにして、順次繰り返すことによってアンカーポイントP、P……Pを通過するスプライン曲線S(ベジェ曲線の集合体S=S+S+……+S)が決定される。次に、ベジェのパラメータ3次式(1)式をtを0から1まで動かして当てはめることによって、各ベジェ曲線をコンピュータ画面上で描くことができる。このようにして、デザイナーの好みに応じたどんな形の曲線も、1個の簡単な方程式(1)式を繰り返し使用することによって表現する方法が得られた。しばしば曲線中の円弧を表示する必要があるが、幸いなことには、ベジェのパラメータ3次式は、制御点を正しく扱えば、工業上の精度の範囲で円弧を表すことができる。
・細片Siとは、アンカーポイントP(i―1)とP及びハンドルH(i―1とHとから一義的に決定されるベジェ曲線をいうものとする。
・スプライン曲線S(本願明細書におけるボールスプライン曲線の意味である。)とは、アンカーポイントP、P……Pを通過する滑らかな曲線をいうものとする。さらに、スプライン曲線Sは、P(i−1)とPを結ぶベジェ曲線である細片Si(i=0、……n)の和集合からなる。
・点Cとは、P(i−2)に平行なP(i−1)を通る線L(i−1)とP(i−1)(i+1)に平行なPi−1を通る線Lの交点をいうものとする。(i=1、2……n)・ハンドルH(i−1)L、ハンドルHiRとは、アンカーポイントP(i−1とPとを結ぶベジェ曲線の細片Sを決定するための制御ベクトルをいう。(i=1、2……n)P、…Pとは、スプライン曲線が通過する点をいい、アンカーポイントともいう。PとPは、スプライン曲線の端点をいう。
・ベジェ曲線Sは、スプライン曲線の要素であり、アンカーポイントP(i−1)とP及びハンドルH(i−1)LとHiRによって作成される。すなわち、ベジェ曲線Sは、アンカーポイントP(i−1)とP及びハンドルH(i−1)LとHiRの和集合と同義である。(i=1、2……n)
・線L、…Lは、それぞれハンドルH0L、ハンドルH1RとH1L、……ハンドルHnRに平行な線であって,以下の様にして、決定する。このとき、アンカーポイントP、P……Pはあらかじめ与えられているものとする。
■線Lは、P0nに平行かつPを通る線として与えられ、線Lは、P(n−1)nに平行かつPを通る線として与えられる。このようにするのは、アンカーポイントP、P……Pが与えられた場合、自動的に(コンピュータ入力手順は何ら必要なく)、線L、…Lを算出し、それに基づいてハンドルH0L、ハンドルH1RとH1L、……ハンドルHnRを決定することにより、ベジェ曲線S、S……Sからなり、アンカーポイントP、P……Pを通過するスプライン曲線を作成することができるからである。
■P(i−2)に平行かつP(i−1)を通る線を線L(i−1)とし、P(i−1)(i+1)に平行かつPを通る線を線Liとする。ここに、i=2、……(n−1)である。
・点Cは、線L(i−1)と線Lのクロスポイントをいうものとする。
・点CiLと点CiRは、以下の数式を満足するように決定する。
ベクトルP(i−1)iLの大きさ/ベクトルP(i−1)の大きさ=k、ベクトルPiRの大きさ/ベクトルPの大きさ=kとなるように線L(i−1)上の点CiL及び線L上の点CiRを決定する。ここに、i=1、2……n、kは予め設定された定数である。
・ハンドルH(i−1)LとハンドルHiRは、以下のように定義する。
【0006】ハンドルH(i−1)L=ベクトルP(i−1)iL、ハンドルHiR =ベクトルPiR【0007】
【発明の実施の態様】本発明の実施の態様は、スプライン曲線Sの作成方法をするものである。以下の様にして、スプライン曲線Sが決定される。
(1)アンカーポイントP0、……Pをマウス等でコンピュータ画面上で入力する。あるいは、数値データとして別途与える。
(2)線L、線Lについては、線Lが、Pnに平行かつPを通る線として、線Lが、P(n−1)nに平行かつPを通る線として与える。
<ハンドルH(i−1)L、ハンドルHiR 決定手順>(1)P(i−2)に平行かつP(i−1)を通る線を線L(i−1)とし、P(i−1)(i+1)に平行かつPを通る線を線Lとする。ここに、i=2、……(n−1)である。
(2)線L(i−1)と線Lのクロスポイントを点Cとする。ここに、i=1、2……nである。
(3)点CiLと点CiRは、以下の数式を満足するように決定する。ベクトルP(i−1)iLの大きさ/ベクトルP(i−1)の大きさ=k、ベクトルPiRの大きさ/ベクトルPの大きさ=kとなるように線L(i−1)上の点CL及び線L上の点CiRを決定する。ここに、i=1、2……n、kは予め設定された定数である。そして、本実施の態様では、kは、1.0 (ここに、i=1、……n)に設定される。
(4)ハンドルH(i−1)LとハンドルHiRは、以下のように定義する。ハンドルH(i−1)L=ベクトルP(i−1)iL、 ハンドルHiR =ベクトルPiR ここに、i=1、2……nである。
(5)アンカーポイントP(i−1)、P、ハンドルH(i−1)L、ハンドルHiRからベジェ曲線Sを決定する。ここに、i=1、2……nである。上記の(1)〜(5)の手順をi=1、2……nまで繰り返す。これにより、滑らかなスプライン曲線が決定される。




 

 


     NEWS
会社検索順位 特許の出願数の順位が発表

URL変更
平成6年
平成7年
平成8年
平成9年
平成10年
平成11年
平成12年
平成13年


 
   お問い合わせ info@patentjp.com patentjp.com   Copyright 2007-2013