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
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
|
import java.awt.*;
public class GraphCanvas extends Canvas
{
private Image imageBuffer = null;
private Graphics imageBufferGraphics;
public GraphCanvas ()
{
setSize (600, 400);
}
private void createImageBuffer ()
{
imageBuffer = createImage (this.getWidth (),
this.getHeight ());
imageBufferGraphics = imageBuffer.getGraphics ();
}
public void paint (Graphics g)
{
createImageBuffer ();
paintBufferedImage ();
if (imageBuffer != null) {
g.drawImage (imageBuffer, 0, 0, null);
}
}
private void paintBufferedImage ()
{
drawVerticalScaledLine (50, 20, 547, 20, 21);
drawHorizontalScaledLine (50, 293, 700, 20, 21, 15);
}
private void drawVerticalScaledLine (int x, int y, int size,
int scaleSize, int distance)
{
imageBufferGraphics.drawLine (x, y, x, y + (size / 2));
int j = 13;
for (int i = 1; i < 13; i++) {
j = j - 1;
imageBufferGraphics.drawLine (x - (scaleSize / 2), y + (i * distance),
x + (scaleSize / 2), y + (i * distance));
// 1-2 an der Seite ausgeben
imageBufferGraphics.drawString (String.valueOf (j), x - scaleSize,
y + (i * distance));
}
}
private void drawHorizontalScaledLine (int x, int y, int size,
int scaleSize, int distance, int num)
{
imageBufferGraphics.drawLine (x, y, x + (size / 2), y);
for (int i = 1; i < num; i++) {
imageBufferGraphics.drawLine (x+ (i * distance), y - (scaleSize / 2),
x + (i * distance), y + (scaleSize / 2));
}
}
}
|