Inkscape-図形の角を丸くする?


78

Inkscapeでは、長方形の角を丸くするのは簡単です。オブジェクトを選択し、F4(長方形ツール)を押して、円形ノードをドラッグします。

より複雑な形状の場合はどうしますか?

多角形、およびその丸い同等物

「ダイナミックオフセット」はほぼ正しいことですが、凹型ポリゴンの内側を丸めません。

回答:


17

これはInkscapeの弱点であり、これを行う簡単な方法がないようです。私がこれまでに見つけたこれに対処する最良の方法は次のとおりです。

  1. 目的の最終コーナー半径を使用して、いくつかの角丸長方形を作成します
  2. それらを互いに突き合わせて全体の最終形状を作ります。丸みのために角が合わない場所を気にせず、
  3. それらを1つのパスに結合します
  4. ノードを削除して、余​​分なノッチを修正します。

幸いなことに、誰かがこのテクニックをイラスト付きでオンラインで説明しています(少しスクロールしてくださいhttp://www.inkscapeforum.com/viewtopic.php?f=5&t=880

私は、パス編集ツールが、あなた(そして他の5万人のInkscapeユーザー)が望むように、どこかでパスを変換できることを願っています。そうでなければ、これは素晴らしい週末のコーディングプロジェクトになります。


73
  1. 長方形または正方形を選択します
  2. ノードオプションを選択します
  3. 右側の角には、正方形のノードではなく丸いノードが表示されます。目的の角が丸くなるまでノードを下にドラッグします。

ノードオプション:

2.ノードオプション

角を丸くするためにドラッグする必要のある丸いウィジェット:

ここに画像の説明を入力してください

丸いウィジェットをドラッグするとどうなりますか:

ここに画像の説明を入力してください

他の人が指摘しているように、これは長方形でのみ機能します(しかし、これは人々をこのページに導く一般的なユースケースです)。


1
この「ノードオプション」とは何ですか?スクリーンショットは素敵でしょう。
RAnders00

15
これは長方形や正方形には最適ですが、これは問題のようなより複雑な形状にどのように役立ちますか?
トム・Pohlの

4
「Inkscapeでは、長方形の角を丸くするのは簡単です」と、長方形以外の形状を丸くすることについて質問する前に、質問の紹介に言及しました。
OJW

これは、たとえばDXFに正しくエクスポートされないことに注意してください。メニューの[パス]> [オブジェクトからパスへ(Shift-Ctrl-C)]を使用して、実際の丸いパスを作成できます。
ロッコ

質問に答えないので、これを支持したくありません。一方、質問のタイトルはあらゆる形を暗示しており、これは役立つので、私はそれを支持しました。
デイブF

22

これは、フィレット/面取りパス効果を使用して実現できます(現在、開発者バージョン0.91+develでのみ利用可能です。こちらをご覧ください)。

使用方法は次のとおりです。

  1. 変更するパスを選択し、[パスの効果]タブを開きますPath > Path Effects...

    変更されていないパス

  2. パス効果ウィンドウに新しい効果を追加し、を選択しますFillet/Chamfer

    ここに画像の説明を入力してください

  3. パスの角に適用する半径を選択し、Filletボタンを押します。

    フィレットパス

  4. 角の一部のみを丸める場合はChange only selected nodes boxFilletボタンをクリックする前に、パス編集モードで変更するノードにチェックマークを付けて選択します。


2
この効果は、このコメントを書いた時点ではリリースされていないInkscape 0.92に追加されたようです。
レヴィ・モリソン

1
フィレット/面取りは、バージョン0.92pre1に欠けている
クリスチャン・ストラング

1
@ChristianStrangは0.92リリースでもまだ欠落しているように見えます:(
Cylindric

2
ただし、2017年4月の時点では、開発バージョン(0.92.1preX)でも使用できません。この機能は、バグトラッカーで確認できるように、マイルストーン0.93に移動されました。したがって、これは実験ブランチからビルドせずに達成することはできません。
フェラン

1
良いニュースです!フィレット/面取りは、リリースされた1.0アルファで利用可能です。このビデオの説明には、プリコンパイルされたWindowsバージョンへのリンクがあります:youtube.com/watch
v

20

問題があるが、四角形以外の形状でも機能する別の間に合わせのソリューション:

  1. オブジェクトにダイナミックオフセットを適用します。
  2. オブジェクトをパスに変換します。
  3. ノードを追加します[拡張機能]→[パスの変更]の下)。これはオプションですが、ほとんどの場合、結果が大幅に改善されます。多いほどもっと良いでしょう。
  4. 動的インセット(つまり、負の動的オフセット)をオブジェクトに適用します。
  5. 必要に応じて、オブジェクトをパスにもう一度変換して単純化します。

3
inkscape.org/doc/advanced/tutorial-advanced.htmlも参照してください-インセット/オフセットはctrl +(およびctrl +)、動的オフセットはドラッグ可能なハンドルを追加するためにctrl + Jです
ジェイソンS 14

17

これは、亀裂に対してより弾力性のあるレーザーカットパースペックスデザインを作成する目的で、既存の不規則なポリゴンに角丸を追加したいときに発見した別の方法です。

  1. ノードによるパス編集(F2)ツールを選択し、丸くするコーナーノードを選択します。

  2. 押したままCtrl-Alt、コーナーから離れた水平線に沿ってわずかにクリックして、新しいノードを追加します。

  3. 同じことをもう一度行い、垂直線に沿ってわずかに新しいノードを作成し、別の新しいノードを追加します。
  4. この段階で、2つの新しいノードに戻り、両方のノードがコーナーから一定のオフセットを持っていることを確認します。たとえば、2mm離れています。
  5. コーナーノードを選択し、を押しDelて削除します。コーナーは次のようになります。

ラフコーナー

  1. 満足のいく曲線を形成するように、左下の2つのベジェポイントをドラッグします。次のように、押したまま上下Ctrlに並べます。

整列


いい解決策!ステップ3 Extensions -> Modify Path -> Add Notes ...への追加:ノードを各エッジで同じ距離に配置するために使用することをお勧めします。
ダニエル.neumann

1
ただし、オブジェクトの側面が長方形のグリッドに揃えられていないが、斜めまたは斜めになっている場合、これはそれほど簡単ではありません。
ゼルフィアカルツシュタール

5

別の方法を使用しました。慣れて、スナップオプションの使用方法を学べば、かなり速く作業できることがわかりました。これは、軸に平行な直交線で構成されるパスで最適に機能します。

  1. 正方形から希望する半径の円を引いて、「カッター」形状を作成します。円の中心を正方形の角の1つに置き、正方形を円の直径としてサイズ設定します。これにより、カッターの中心が円弧の端に揃えられます。
    ここに画像の説明を入力してください
  2. カッターを複製して再利用し、位置合わせして丸めたい角に配置します。オブジェクトとカスプノードの中心のスナップをアクティブにして、カッターを希望する場所に正確に合わせます。ここに画像の説明を入力してください
  3. 必要に応じて、中心に沿ってカッターを回転させて、円弧を下にあるパスのエッジに合わせます
  4. 元のパスとカッターを選択し、角が凸の場合はブール値の差を、凹の場合はブール値の結合を行います。角が丸くなっています!
  5. カッターを複製し、希望するすべてのコーナーで繰り返します。
  6. 初期形状が開いていた場合、ブール演算により閉じられます。プロセスの終了後に再度開く必要がある場合があります。

おそらく今のところ最高のソリューション(0.92.2)!
レイ

3

ボナッチアの 答えに触発(ありがとう)丸い角を制御するために、いくつかの追加の長方形または正方形とスニッピング機能を使用できることを発見しました。私が作成した次のGIFを確認してください。

丸い角を制御する方法


2

この問題の別の解決策は、パス分割ツールを使用することです。ここでの利点は、半径を明示的に数値として設定できることです。

  1. 長方形を作成する
  2. 希望する半径の円を作成します
  3. 円を長方形の角に揃えます
  4. 長方形と円を選択し、Path-> Divisionを使用します
  5. 不要なコーナーピースを削除する
  6. 新しい円と元の長方形の間のパス->結合を行います

2

Edit paths by nodesツールを使用してこれを解決することができました。シングルエンドをどのように処理したかを示しますが、この操作はフラットエッジを持つ任意のシェイプで機能するはずです。このような形状から始めます。

ここに画像の説明を入力してください

選択Edit paths by nodesツールをして、図形を選択します。シェイプの端が平らな場合、各コーナーに1つずつ、2つのノードが必要です。これらのノードを選択してInsert new nodes into selected segmentsボタンをクリックします。ここに画像の説明を入力してくださいこれにより、最後の2つのノードの間に3番目のノードが追加され、次のようになります。

ここに画像の説明を入力してください

中央にノードがあるので、角を丸くすることができます。ノードを選択して引き離すだけで、次のようにポイントが作成されます。

ここに画像の説明を入力してください

必ずCtrlキーを押しながらドラッグして、直線でドラッグしてください。これで、ノードをスムージングできるようにする必要があり、Make selected nodes symmetricボタンの出番ですここに画像の説明を入力してください。これによりノードにハンドルが追加され、ノードの形状を変更できるようになります。次のようになります。

ここに画像の説明を入力してください

次に、ハンドルを調整して(Ctrlを押したまますべてを真っ直ぐにする)、目的の丸みを取得します。

ノードを選択した状態


2

Inkscapeのバージョンにフィレット/面取りパス効果がない場合は、私が書いた拡張機能が役立つことがあります。

Inkscape角丸

角の丸い拡張機能の使用例


この答えに到達するには、上記のすべての答えを読む必要がありましたが、それだけの価値がありました。実際、これはFillet / Chamfer LPEに最も近いです。Inkscapeの公式ページには「フィレットと面取り」の拡張機能もありますが、私には機能しません。
user1414213562

私はそれを試してみましたが、得たこのエラーを
FOAD

おかげで、これは私のために働いた。「オブジェクト->パス」を使用して星形ポリゴンを変換しました。自動的に星の角にノードを追加しました。次に、星のパスを選択し、「拡張>パスの変更>角の丸み」を使用して半径を適用しました。[私はinkscape 0.92を使用しています]編集:この拡張機能により、エッジが角ではなく丸くなった場合は、inkscapeを再起動してください。
myDoggyWritesCode

1

ベジエ曲線を使用するだけで成功しました。例えば、私はOPのL字型を描くでしょう

|
|
|
 \
  \
   \_________

(非常に粗いASCIIアート!)つまり、角の丸いところに対角線を配置し、2つの線の結合点のベジェ制御点を調整します。


0

純粋に表面的な効果(つまり、丸いパスにならない)の場合は、フィルター>ぼかし>クロススムース効果を適用してみてください。次に、フィルターエディターを開き、標準偏差効果パラメーターを約1.0に設定します。


0

別の方法は、ストロークを作成し、JoinとCapを丸めるように設定することです。パスをコピーして所定の位置に貼り付け、コピーからストロークを削除します。次に、元のパスを選択し、パス>パスへのストロークを選択して、2つの図形を結合します。


-1

クリーンなソリューションはないので、GIMPを使用して別のソリューションに言及しましょう!

1-別のInkscapeインスタンスでこのオブジェクトのみのコピーを作成します(他のオブジェクトがある場合)

2-ビットマップへのエクスポート(PNGファイル)

3- GIMPでpngを開き、「Select by Color Tool」で形状を選択します

3-選択->ぼかし-> Rピクセル単位(半径)

4-選択範囲に色を付けて、再度PNGに保存/エクスポートします

5- Inkscapeで変更されたpngファイルを開き、「トレースビットマップ」ツールを使用して丸みのあるパスを取得します(形状は単色である必要があるため、簡単でおそらくきれいです)


上記のソリューションがいくつかあります。彼らは汚れていますか?編集のためにベクトルオブジェクトをGIMPに持ち込むことは、汚いハックです。
マーティンザスケ

1
@MartinZaske上記の回答(評価が高い)のほとんどは、長方形のような基本的な形状に限定されているか、手がかかりすぎて角が多すぎる形状には実用的ではありません。複雑な形では、このアプローチは上記の回答のほとんどよりもはるかに簡単で優れていると思います。また、これを投稿したときに明確な答えはありませんでした。
saeedgnu

-1

かなりうまくいきますが、少し形が変わります。

これはWrzlprmftのソリューションに似ています。

結果

GIFステップバイステップ

申し訳ありませんが、画像を投稿する評判が10ありません

次のようなインクスケープ拡張機能を作成することもできます。

  • これらの入力を受け取ります。

    • どの角を丸くしたいか

    • 丸めの強さr

  • それよりも:

ひどい英語でごめんなさい


-2

InkscapeのXMLエディターを使用して、角を丸くした長方形を作成できます。XMLエディターを開き、<svg:rect要素を選択します。rxおよびry属性を追加します。XMLエディターの右下に2つのフィールドとSetボタンがあります。入れてrxトップフィールドであり、10または任意の他の数、押しSet


理論的には素晴らしいアイデアです。実際には、質問で言及されているオブジェクトはもはや長方形ではありません。属性ryrx属性を設定できますが、解釈されません。
ダニエル.neumann

-4

実際には非常に簡単です。

  1. 角が長方形の形状を作成します。

  2. 長方形ツールをクリックします

  3. 四角形のハンドルではなく、形状の角にある円形のハンドルのいずれかをクリックします。

  4. Shift円形ハンドルを押してドラッグすると、自動的に角が丸くなります。

ここに画像の説明を入力してください
丸い角を作成するには、円形のハンドルをドラッグします。


3
最近変更されていない限り、これはプレーンな長方形でのみ機能するはずです。スクリーンショットでさえ、図形の左部分を構成する長方形のみを選択していることを示しています。最後に、スクリーンショットには、要求された内向きの角の丸みが表示されません。
Wrzlprmft
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.