問題タブ [graphics2d]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
1202 参照

java - Java2D:凸多角形を塗りつぶします(QuadCurves)

このようなQuadCurve(+=ノード)がある場合:

そして、Java 2Dで入力すると、結果は次のようになります:(x=色付き)

しかし、私は反対側を着色したいと思います:

これは、反対側に色を付けたい色で曲線の周りに長方形を描画してから、曲線を背景色で塗りつぶすことで成功します。

しかし、これは凸状の丸みを帯びた(QuadCurvesに基づく)ポリゴンを塗りつぶすには十分ではありません。長方形のいくつかの座標の場合(私が使用したトリックで説明したように)、ポリゴンの他の部分と重なります。これが2つの画像です(緑色の領域は私のポリゴンです):

代替テキストhttp://img204.imageshack.us/img204/7823/convexpolygon.png 代替テキストhttp://img708.imageshack.us/img708/3669/convexpolygon2.png

したがって、質問は単純です。「曲線のシェイプビルドに色を付けるにはどうすればよいですか?」
しかし、答えは簡単ではないと思います...

どんなアドバイスも非常にありがたいです。
前もって感謝します。

答えが得られない場合は、この質問に報奨金を支払うつもりです。

0 投票する
1 に答える
455 参照

java - これは悪い習慣ですか?複数の Graphics2D オブジェクト

すべてのグラフィックを保持する JPanel キャンバスを作成しました。つまり、JLabel. アニメーション化されたスプライトを機能させるには、拡張された JLabel クラスの paintComponent をオーバーライドする必要があります。この方法で、アニメーション化されたスプライトを正常に実装しました。

Graphics2D キャンバスを作成してから、独自の Graphics2D に複数の「画像」を作成するのは悪い習慣ですか?

0 投票する
4 に答える
9325 参照

java - Java - カスタムシェイプの塗りつぶし

カスタム シェイプを作成しました。基本的には、4 つの Arc2D オブジェクトのコレクションです。

これらの円弧を描くと、クローバーのような 4 点の丸い星の形と見なすことができます。1 つの弧が終わると、もう 1 つの弧が始まります。それらは中央に正方形を形成します。想像してみてください。正方形を取り、四方に半円を描きます。

この形状を Graphics2D オブジェクトに描画できますが、塗りつぶすと、中央の正方形ではなく円弧のみが塗りつぶされます。この内部の四角を埋めることが私の問題です。

getPathIterator()以下の方法を実装しました。contains()メソッドも実装しました。しかし、それでも弧を埋めるだけです。

を追加してみましたRectangle。形状を塗りつぶすと、長方形/正方形は適切に塗りつぶされますが、長方形も描画されます。これは明らかに期待されるはずですが、望ましい結果ではありません。

それで、そのような形を「埋める」方法について誰かアイデアがありますか?

0 投票する
4 に答える
2984 参照

java - JUnit を使用したグラフィック生成のテスト

Java の Graphics2D を使用して、グラフのグラフィカル表現を生成しています。また、ImageIO を使用して PNG ファイルを書き込んでいます。( ImageIO.write(image, "png", out);)

生成されたグラフィックスが期待どおりかどうかをテストするために、JUnit テストをどのように記述すればよいか疑問に思っています。PNG ファイルを事前に生成することはできますが、別のマシンでフォントが少し異なる場合はどうなりますか?

0 投票する
1 に答える
1142 参照

java - 2 つの CubicCurve2D.Float と線の内側の領域を塗りつぶします

ユーザー インターフェイスにタブを描画しています。希望通りのアウトラインができました。エリアを埋めるにはどうすればよいですか?

これは、タブの境界線を描画するコードです。

これが描画する線です (赤い線): image

赤い線の内側を埋められるようにしたいです。

0 投票する
1 に答える
346 参照

java - Javaでメモリを使い果たすことなく画像を書き込む方法は?

(この質問の完全なコード)。

jvm 属性を 3GB に設定しましたが、このコードにより Java ヒープ領域の例外が発生します。それが問題でしょうか?

とにかく少ないメモリで絵が描けるのではないか?私は印刷用に A4 サイズの BMP を探しています。テキストのみです。ほとんどの場合は白黒のみですが、場合によっては青、ピンク、グレーも使用する必要があります.

0 投票する
5 に答える
2970 参照

java - JFreeChartを飾る

生成したすべてのJFreeChartを、隅にタイムスタンプを付けて飾りたいと思います。チャートが生成された後に画像を描画する方法はJFreeChartフレームワーク内にありますか?

編集:これらのグラフはバックグラウンドスレッドで生成され、サーブレットを介して配布されているため、GUIはなく、タイムスタンプを別のコンポーネントに表示することはできません。

0 投票する
1 に答える
4982 参照

java - Java2D を使用して 3D 家を描画しますか?

Java2D を使用して単純な 3D 家を描画するにはどうすればよいですか? 家の側壁をシンプルな3D画風に描きたいです。

// House.java

//ShowHouse.java

0 投票する
1 に答える
2622 参照

java - TYPE_4BYTE_ABGR から TYPE_3BYTE_BGR への変換

透明度のある TYPE_4BYTE_ABGR imageType の BufferedImage があり、それを TYPE_3BYTE_BGR BufferedImage に変換したいと考えています。TYPE_3BYTE_BGR の上に TYPE_4BYTE_ABGR の画像を描画しようとしたのですが、色が変わってしまいました。

TYPE_4BYTE_AGBR 画像を .jpg に書き込むと、黒の透明領域が得られるため、白い背景に透明な画像を配置することが目的です。

0 投票する
4 に答える
12703 参照

java - ある画像の一部を別の画像にコピーするにはどうすればよいですか?

ある画像の一部を別の小さな画像にコピーしたい、つまり、サブ長方形をコピーしたい。

ソース用のGraphics2Dオブジェクトがあり、ターゲット用に作成でき、targetGraphics2D.drawImage(Image img,....)について知っていますが、 sourceGraphics2Dからそのimgを取得するにはどうすればよいですか?


回答 (aioobe ごと): ソースはGraphics2DではなくImageである必要があります。

Image.subImage()は、ソースの関連部分を取得するためのメソッドです。