ストロークのアイコン

ストローク Q&A

Q.

ベジェ曲線を描くには?(基本編)

A.

ドロー系ソフトウェアで、ベジェ曲線を描くには、ベジェ曲線について基本的なことを知っておく必要があります。ベジェ曲線には次数がありますが、ここでは、ドロー系ソフトで最もよく利用される 3 次ベジェ曲線について説明します。

ベジェ曲線で描かれたハート

上の図は、ベジェ曲線で表現されたハートです。この例では、ハートは、L0、L1、L2、L3 の 4 つのベジェ曲線で表現されています。ベジェ曲線を連結して 1 つの形を表したものを、ベジェスプライン曲線といいます。1 つのベジェ曲線から成る図形もベジェスプライン曲線に含まれるので、ドロー系ソフトで描ける図形は、ベジェスプライン曲線ですが、単にベジェ曲線と呼ぶことが多いです。

前の説明でわかるとおり、 L0、L1、L2、L3 は別のベジェ曲線なので、基本的には個別に捉えることができます。このことは描画の助けになるので、まずは個別の性質について説明します。

L0 の実体は、4 つの点、P0、P1、P2、P3 です。曲線の部分は、4 点からコンピューターが計算で導きだした線で、ユーザーが指定できるのは、4 つの点の位置です。

見てわかるように、4 点の最初の点 P0 と最後の点 P3 は曲線の端点になります。間の点 P1、P2 は、それぞれ P0、P3 での曲線の向きと勢いのようなもの (数学的には P1 - P0、が P0 における微分になる) になります。

L0 の形は、この 4 点のみから計算されるので、それ以外の点の影響を受けません。例えば、P4 の位置は、L0 の形に影響しません

※ ただし、多くのドロー系ソフトでは、P4 を動かしたときに、P2 が連動して動くので、間接的に影響を受ける場合があります。そうなっているのには理由があるので、後半で説明します。

ここまでの説明により、L0 の形が気に入らない場合には、P0、P1、P2、P3 の位置を変更すればよいことがわかります。

個別の性質について、もう少し知っておきましょう。ここで説明している (スプラインでない個別の) 3 次ベジェ曲線では、L0 のような山形の曲線、サインカーブのような山と谷がひとつづつある曲線、あとは直線しか表現できません。

線とサインカーブのような曲線

道路に例えると、右に曲がって、左に曲がったら、右にはもう曲がれないので、少なくとも、そのような曲線を表現するには、ベジェ曲線 1 つでは力不足なので、複数のベジェ曲線をつなげて表現します。それが、ベジェスプライン曲線です。

また、山形を描く場合でも 1 つのベジェ曲線で表現できる形は限られているので、必要に応じて、曲線の本数を増やす必要があります。最初のハートの例で、L0、L1 によりハートの半分を表現しているのは、その理由によります。

ここまでの説明で、曲線を表現するには、ベジェ曲線が少ないほど、扱う点の数が少ないのでよいこと、1 本のベジェ曲線で表現できる曲線には限界があることがわかると思います。なので、曲線を描くには、なるべく少ないベジェ曲線から始めて、必要に応じて増やすのがよいです。

多くのドロー系ソフトでは、ベジェ曲線上に、新しい制御点を追加することで、1 本のベジェ曲線を 2 本のベジェ曲線に容易に変更する機能があります。例えば、ストローク では、曲線上の右クリックメニューから、「制御点を追加」を選択すると、1 本のベジェ曲線が分割されて 2 本になります。

制御点の数と直線

3 次ベジェ曲線では、制御点の数は 4 つと説明しましたが、ハートの例の L1 は、P3、P4、P5 の 3 点しか無いように思えます。この例の場合、3 つ目の点が 4 つ目の点と同じ場所にあるので、実質的には、3 点になってます。ちなみに P4 を P3 と全く同じ位置にすると、実質的には 2 点になり、ベジェ曲線は、2 点をつなぐ直線になります。これがベジェ曲線で表現された直線です。

多くのドロー系ソフトでは、ベジェ曲線の間の点を削除したり、制御点から間の点を引きだしたりすることで、曲線と直線を自由に行き来できます。例えば ストローク では、間の点上の右クリックメニューから、「接線ハンドルを削除」でますし、端点上の右クリックメニューから、「接線ハンドルを引き出す」ことができます。

※ 多くのドロー系ソフトでは、間の 2 点のことを接線ハンドルと呼びます。曲線の端点における接線 (接する線) を制御 (ハンドル) するための点だからです。

ベジェスプライン曲線

とりあえず、個別のベジェ曲線の性質についての説明は以上なので、ここからはそれを連結した「ベジェスプライン曲線」の性質についてみていきましょう。

まずは、ベジェ曲線をつないだので、ベジェ曲線の最後の点は次のベジェ曲線の最初の点になります。よって、ベジェ曲線の最後の点を動かすと、となりのベジェ曲線の最初の点も同時に動きます。結果、端点を移動すると 2 本のベジェ曲線が変形しますが、これは端点を共有しているからです。

次に間の点について見ていきましょう。

ベジェ曲線で描かれたハート P3、P4、P5

ハートの例の P3、P4、P5 に注目してください。さきほど述べたように P3 は L0 の最後の点であり、同時に、 L1 の最初の点です。

P2 は、L0 の P3 での曲線の方向を表し、 P4 は、L1 の P3 での曲線の方向を表しています。つまり、P2、P4 は曲線の P3 での 2 つの方向を表しています。

なので、P2、P4 が P3 をはさんで、正反対 (点対称) な位置にあるとき、つまり P2、P3、P4 が直線上にならぶとき、曲線は、P3 でなめらかになります。

なめらかにつながったベジェスプライン曲線を簡単に修正できるように、多くのドロー系ソフトでは、P2 を移動したときに、 P4 も動きます。これが、P2 を動かしたときに、L0 は当然ですが、L1 も変形する原理です。

一方、P3 で曲線が滑らかにつながっている必要が無い場合、P2 と P4 の動きを独立させることができます。例えば、ストローク では、P2、P3、P4 上の右クリックメニューから「接線ハンドルを折る」を選択します。逆に滑らかさを保って欲しいときには、P3 の右クリックメニューから「接線ハンドルを引き出す」を選択します。

P2 と P4 を独立に動かした場合、副作用が無くなるので、P2 は L0 にのみ、P4 は L1 にのみ影響するようになります。

ハートの例の、P0 では曲線が滑らかにつながっている必要はない、というより、滑らかでないほうがよいので、接線ハンドルは直線上に並んでいません。P5 においては接線ハンドル自体がありませんが、この場合も滑らかにはならないので、曲線を滑らかにつなぎたい場合は、接線ハンドルが必要なので、残しておきましょう。

開いた図形、閉じた図形

ベジェスプライン曲線で、最初の点と最後の点を共有したものを閉じているといい、共有していないものを開いているといいます。中に液体を入れたときに、「開いている」方は漏れると覚えればよいと思います。

ストローク では線の作成中に、最初の点をクリックすると閉じた曲線が、右クリックして線の入力を終えると閉じた曲線が作成されます。

ベジェ曲線を描くのに必要な基礎知識は以上です。実際に、ストロークでベジェ曲線を描く方法は、ストローク 使い方 線を描く をご覧ください。

今すぐ、無料ダウンロード

ストローク ダウンロード
1.1.7.0 (2.38 MB)2018/9/27 更新

ご意見・ご要望など

ご意見・ご要望などは フォームメール から送信してください。
更新情報は、 ブログ でも配信してます。

共有

新着情報 ! NEW !
1/12 ミルノPCフォトフレーム 2.2.2 公開!
利用ライブラリの最新化など
1/12 ショートカットファイルを編集するノ 1.4.8 公開!
月額会員認証できない不具合修正ほか
1/11 HTML 自動生成するノ 1.4.7 公開!
月額会員認証できない不具合修正
8/7 イメージミラー 1.0.3 公開!
拡大縮小とレイアウトが100%以上の場合に対応(高DPI対応)
7/26 動画を見るノ 1.1.1 公開!
大量のファイル閲覧時にメモリー不足になる不具合修正
11/21 ショートカットファイルを編集するノ 1.2.7 公開!
起動時にエラーが発生する不具合修正
11/2 ショートカットファイルを編集するノ 1.2.6 公開!
「オブジェクト参照が...」エラーが発生する不具合修正
6/15 ミルノ PC フォトフレーム 2.2.1 公開!
長いしおりメニューの位置がおかしくなる不具合修正
3/23 ミルノ PC フォトフレーム 2.2.0 公開!
ルーペ機能、全画面表示で最小化ボタン表示機能など
1/18 動画を見るノ 1.1.0 公開!
Media Foundation 対応、スナップショット取得の高速化
売れ行き 順位 1位 文字に縁取りするノ
何重にも縁取りした文字をカンタンに作成できる
2位 ミルノ PC フォトフレーム
PCに保存されている写真や画像をまとめて見られる
3位 ピグチャット+
アメーバピグで、誰でも簡単にチャットできるように
4位 ピグライフタイマー
スタミナの全快や作物の収穫時期を音でお知らせ
5位 HTML 自動生成するノ
CSVとHTMLテンプレートからホームページを一括生成
配布中のソフト
動画を見るノ
動画のスナップショットを数枚ずつ、一覧表示できる
ミルノ PC フォトフレーム
PCに保存されている写真や画像をまとめて見られる
ストローク
ドロー系のお絵描きソフト。CMYK PDF でも出力できる
ストロークループアニメーター
2枚の画像から滑らかなアニメーション GIF/PNG を生成
バックアップするノ
更新日付つきのフォルダー、zip ファイルに一括コピー
シンプルマウント
iso ファイルのドライブ割り当て / 解除を自動化
メディアからファイルを移動するノ
メディアの挿入を検知してファイルを自動的に移動
ピグとも+
ピグを自由気ままにコレクションできる
ピグライフタイマー
スタミナの全快や作物の収穫時期を音でお知らせ
ピグアイランドタイマー
スタミナの全快やアイテムの完成時期を音でお知らせ
ピグチャット+
アメーバピグで、誰でも簡単にチャットできるように
ラインスタンプに変換するノ
ライン (LINE) スタンプ形式の画像に一括変換
縮小するノ
1枚の画像から、1~3種類の縮小画像を1度に生成できる
文字に縁取りするノ
何重にも縁取りした文字をカンタンに作成できる
フォントを一覧表示するノ
フォントを太さ、斜体のバリエーションを含めて一覧表示
地図印刷用ブラウザー
地図印刷用ウェブブラウザー、広い地図を印刷可能に
ローカルブラウザ
PCに保存されているHTMLやテキストをカンタンに見る
HTML 自動生成するノ
CSVとHTMLテンプレートからホームページを一括生成
キーワードツール
複合検索ワードの生成とキーワード有効度調査を簡単に
角を丸めるノ
画像の角を一括で丸めたり、ぼかしたりできる
桜が散るノ
デスクトップに桜が散るアニメーションを表示
スキャナートリマー
スキャナー原稿の傾きを自動補正、自動トリミング
反転するノ
画面の鏡像を拡縮して表示。絵のチェックにどうぞ
イメージミラー
画面の鏡像をリアルタイム表示。対称な絵をカンタンに
ピュアキャプチャー
パソコン画面を定期的に保存。PrtSc シミュレート方式
ショートカットを編集するノ
ショートカットファイルのリンク先を一括変更
管理者権限のショートカットを作成するノ
管理者権限で起動するショートカットファイルを作成
Leeyes 本棚変換
Leeyes の本棚をショートカットファイルに変換
その他のページ
ラインスタンプ特集
ラインスタンプの描き方などを紹介する予定です
初心者用検索ページ
50音のあいうえおボタンで google 検索できるページ
ピグライフ電卓
ピグライフの料理から必要な材料を計算できるページ
ピグアイランド電卓
ピグアイランドのアイテムから必要な材料を計算できる
ピグとも検索
ピグの名前で検索、マッチしたピグを一覧表示できます
c++ 使いの c# メモ
c++ プログラマ向けの c# ガイド
Windows API 実験室
Windows API の仕様を実験調査
sed 実験室
sed の仕様を実験調査
連絡先
こちらから作者に連絡できます。お気軽にどうぞ。
関連ホームページ
ミルノのブログ
オンラインソフトの更新情報やプログラミング Tips