激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|JAVA教程|ASP教程|

服務器之家 - 編程語言 - JAVA教程 - Java的繪圖模式使用淺析

Java的繪圖模式使用淺析

2020-01-08 14:45goldensun JAVA教程

這篇文章主要介紹了Java的繪圖模式使用淺析,以一個小例子大概列舉了XOR模式下能干的一些事情,需要的朋友可以參考下

繪圖模式是指后繪制的圖形與早先繪制的圖形有重疊時,如何確定重疊部分的顏色。例如,后繪制的覆蓋早先繪制的;或者后繪制與早先繪制的兩種顏色按某種規則混合。主要有正常模式和異或模式兩種:正常模式是后繪制的圖形覆蓋在早先繪制的圖形之上,使早先販圖形的重疊部分不再可見。異或模式把繪圖看作是按圖形著色。異或模式繪圖時,將當前正要繪圖的顏色、原先繪制的顏色以及異或模式設定的顏色作特定的運算,得到實際繪圖顏色。設置繪圖模式的方法有:
setPaintMode():設置繪圖模式為覆蓋模式(正常模式)。正常模式是繪圖的默認模式。
setXORMode(Color c):設置繪圖模式為異或模式,參數c為異或模式設定的繪圖顏色。

設背景色為B,用setXORMode()設置的顏色為C,另用某個非背景色D繪圖,XOR模式有以下確定實際繪圖顏色的法則:

  • B + B = C,用背景色繪圖,出現C顏色。
  • D + D = B,當一個圖形重畫時就能清除原先畫的圖形。
  • B + D = B和D的混合色(當B,D不相同時)。

如果某區域已用D著色,再用E著色,則結果是:

  • D + E = D和E的混合色(當D,E不相同時)。

XOR繪圖模式實例

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
import javax.swing.*;
import java.awt.*;
public class Example7_4 extends JFrame{
  public static void main(String args[]){
    GraphicsDemo myGraphicsFrame = new GraphicsDemo();
  }
}
class ShapesPanel extends JPanel{
  SharpesPanel(){
    setBackground(Color.white);
  }
  public void paintComponent(Graphics g){
    super.paintComponent(g);
    setBackground(Color.yellow); //背景色為黃色
    g.setXORMode(Color.red); //設置XOR繪圖模式,顏色為紅色
    g.setColor(Color.green);
    g.fillRect(20, 20, 80, 40); //實際顏色是green + yellow的混合色=灰色
    g.setColor(Color.yellow);
    g.fillRect(60, 20, 80, 40); //后一半是yellow+yellow=read,前一半是yellow+灰色
    g.setColor(Color.green);
    g.fillRect(20, 70, 80, 40); //實際顏色是green+yellow的混合色=灰色.
    g.fillRect(60, 70, 80, 40);
    //前一半是(green+yellow)+gray =背景色,后一半是green+yellow = gray
    g.setColor(Color.green);
    g.drawLine(80, 100, 180, 200); //該直線是green+yellow = gray
    g.drawLine(100, 100, 200, 200); //同上
    /*再繪制部分重疊的直線.原直線中間段是灰色+灰色=背景色,延長部分是green+yellow=gray.*/
    g.drawLine(140, 140, 220, 220);
    g.setColor(Color.yellow); //分析下列直線顏色變化,與早先的力有重疊
    g.drawLine(20, 30, 160, 30);
    g.drawLine(20, 75, 160, 75);
  }
}
class GraphicsDemod extends JFrame{
  public GraphicsDemo(){
    this.getContentPane().add(new ShapesPanel());
    setTile("基本繪圖方法演示");
    setSize(300, 300);
    setVisible(true);
  }
}

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 免费观看视频91 | 久久精品欧美一区二区三区不卡 | 欧美又黄又嫩大片a级 | 日韩三区视频 | 奇米影视8888狠狠狠狠 | 色婷婷久久一区二区 | 高清在线国产 | 成人在线免费观看小视频 | 成人羞羞网站入口 | 成人综合一区二区 | 欧美性生视频 | 欧美一级欧美 | 久久精品免费网站 | 久国久产久精永久网页 | 黄色免费在线电影 | 最新福利在线 | 久色亚洲 | 性看小视频 | 激情影院在线观看 | 国产精品视频中文字幕 | 在线视频观看国产 | 在线成人免费视频 | 欧美视频国产精品 | 成人福利在线免费观看 | 亚洲人成综合第一网 | 免费视频xxxx | 日本高清在线播放 | 狠狠99 | 国产精品久久久久久久久久久久久久久久 | 一区二区三区在线观看国产 | 欧美巨根 | 欧美一级高清片_欧美高清aa | 性色吧 | 久久老司机精品视频 | 成人在线观看免费爱爱 | 成人颜色视频 | 亚洲一区二区国产 | 美国一级毛片片aa久久综合 | 欧美黑人xx | 草久视频在线观看 | 久久毛片免费 |