Union、Difference、およびIntersectionなどのブール演算で2つのパスを結合することで、カイロでパスを構築する方法はありますか?私はレンダリングにカイロを使用するベクトルグラフィックスアプリケーションを開発しており、ユーザにこの方法でパスを結合する機能を提供したいと考えていますが、カイロでその方法を見つけることはできません。カイロパスのブール演算?
答えて
オペレータとパスを組み合わせても意味がありません。あなたは "ラインアンドカーブまたはアーク"から何を得ますか?
代わりに、あなたはcairo_set_operator()
を使用してcompositing operatorsを適用することができます:それは現在の描画操作(ということcairo_fill()
、cairo_stroke()
または何でも)は、表面の古いコンテンツと混合する方法を設定します。
私はcairoライブラリでこれを行う方法が見つかりませんでした。しかし、それは私が探していた機能です。 ntdで言及された合成演算子がこれを行うことができないように見える場合、2つのパスの組み合わせを書くなどの場合には、間違いなく役に立ちます。
その間、私はinkscape用のスクリプトを書こうとしていて、インクスケープに結合/差分をさせようとしています。私が取り組んでいる問題では受け入れられますが、あなたにとっては間違いありません。あなたはカイロか他のsvgライブラリのいずれかで運があったのですか?数日のグーグルグーグルでは、それほど些細なことではないようです。/
ps-path intersect/combine/overlayがリストされています可能な夏のコードプロジェクトとしてカイロサイトでhttp://cairographics.org/summerofcode/ideas/ – ImAlsoGreg
- 1. ブール演算
- 2. CUDAのブール演算
- 3. Thymeleaf - ブール演算子
- 4. matlabブール演算子
- 5. ブール演算SVGパスの
- 6. scipy.sparse行列のブール演算
- 7. Python Pandasでブール演算
- 8. NA認識ブール演算子
- 9. ポリゴン・シリンダのテキスト・ホール - ブール演算Maya 2010
- 10. リスト全体のブール演算子(Python)
- 11. 文字列内のブール演算子
- 12. ブール演算子の優先順位
- 13. ジャスパー・レポート:エラー:演算子は日付=ブール
- 14. メッシュの2つのグループ間の高速ブール演算
- 15. なぜ2つの '!'ブール値の演算子?
- 16. 複数のブール条件 - 演算子の優先順位
- 17. ブールと代入演算子(C++)の文字列オーバーロード
- 18. ブール論理(演算の順序)AとBまたはC
- 19. シングルビットへの参照を返すブール演算子[](int index)
- 20. ブール演算の結果を比較できますか?
- 21. ブール値の拡大演算子を使用する
- 22. ブール演算のコンテキストでキャスト(変換)演算子テンプレート(T = bool)をインスタンス化できません
- 23. "データ型がブール演算に無効です。"
- 24. PGError:ERROR:演算子が存在しません:ブール値~~ *未知数
- 25. ブール演算子をオーバーロードしたライブラリはありますか?
- 26. 演算子if演算子
- 27. C#の演算子の演算順序
- 28. プログラムで文字列を作成し、後続ブール演算子または先頭のブール演算子を処理する
- 29. C++:演算子オーバーロード、演算子+
- 30. C++演算子+演算子+ =オーバーロード
私は、Inkscapeがブーリアン演算でパスを結合する方法を示しています:http://www.usinginkscape.com/node/34。これらのエフェクトの大半は、2つの図形のパスが交差する場所に必ずしも適切な線結合がないことを除いて、一連の合成演算子を使用して実現できます。 –
私はまだ質問を理解していません:inkscape自体はバージョン0.46以降のカイロを使用しています:http://wiki.inkscape.org/wiki/index.php/Release_notes/0.46#Speed_and_interactivity – ntd