formule-naar-grafiek
////// HIERONDER grafiek.php ///////
Code (php)
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
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
<?
if($_POST['formule']){
$x = $HTTP_POST_VARS['x'];
$y = $HTTP_POST_VARS['y'];
if(is_numeric($x) && is_numeric($y)){
if($x <= 50 && $y <= 50 && $x >= -50 && $y >= -50){
echo "<img src='grafiek_afb.php?x=".$x."&y=".$y."'><br>";
// echo "<script language='JavaScript'> document.location = 'grafiek_afb.php?x=".$x."&y=".$y."'; </script>";
echo " <br>";
echo "<b>Formule:</b> y = ".$x." x + ".$y."<br>";
} else {
echo "X en/of Y zijn hoger als 50, of zijn lager als - 50<br>";
}
} else {
echo "Er is geen getal ingevuld voor X of Y.<br>";
}
echo " <br>";
echo "<a href='grafiek.php'>Terug</a>";
} else {
echo "<form method='post' target='_self'>";
echo "<b>Maak een grafiek met een formule: (kies getallen van -50 tot en met 50)<br>";
echo "y = <input type='text' name='x' size='1' maxlength='3'> x + <input type='text' name='y' size='1' maxlenght='3'><br>";
echo "<input type='submit' name='formule' value='Maak grafiek'>";
echo "</form>";
}
?>
if($_POST['formule']){
$x = $HTTP_POST_VARS['x'];
$y = $HTTP_POST_VARS['y'];
if(is_numeric($x) && is_numeric($y)){
if($x <= 50 && $y <= 50 && $x >= -50 && $y >= -50){
echo "<img src='grafiek_afb.php?x=".$x."&y=".$y."'><br>";
// echo "<script language='JavaScript'> document.location = 'grafiek_afb.php?x=".$x."&y=".$y."'; </script>";
echo " <br>";
echo "<b>Formule:</b> y = ".$x." x + ".$y."<br>";
} else {
echo "X en/of Y zijn hoger als 50, of zijn lager als - 50<br>";
}
} else {
echo "Er is geen getal ingevuld voor X of Y.<br>";
}
echo " <br>";
echo "<a href='grafiek.php'>Terug</a>";
} else {
echo "<form method='post' target='_self'>";
echo "<b>Maak een grafiek met een formule: (kies getallen van -50 tot en met 50)<br>";
echo "y = <input type='text' name='x' size='1' maxlength='3'> x + <input type='text' name='y' size='1' maxlenght='3'><br>";
echo "<input type='submit' name='formule' value='Maak grafiek'>";
echo "</form>";
}
?>
////// HIERONDER grafiek_afb.php ///////////
Code (php)
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
63
64
65
66
67
68
69
70
71
72
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
63
64
65
66
67
68
69
70
71
72
<?
header("content-type: image/png");
$image = ImageCreate(500, 500);
$achtergrond = ImageColorAllocate($image, 255, 255, 255);
$zwart = ImageColorAllocate($image, 0, 0, 0);
$wit = ImageColorAllocate($image, 255, 255, 255);
$grijs = ImageColorAllocate($image, 192, 192, 192);
$font = 'verdana.ttf';
// verticale strepen
$teller_h = 0;
while($teller_h <= 40){
if($teller_h < 40){
$teller_h_pix = $teller_h * 12.5;
} else {
$teller_h_pix = ($teller_h * 12.5) - 1;
}
ImageLine($image, $teller_h_pix, 0, $teller_h_pix, 500, $grijs);
$teller_h ++;
}
// horizontale strepen
$teller_v = 0;
while($teller_v <= 40){
if($teller_v < 40){
$teller_v_pix = $teller_v * 12.5;
} else {
$teller_v_pix = ($teller_v * 12.5) - 1;
}
ImageLine($image, 0, $teller_v_pix, 500, $teller_v_pix, $grijs);
$teller_v ++;
}
// assenstrepen
ImageLine($image, 250, 0, 250, 500, $zwart);
ImageLine($image, 0, 250, 500, 250, $zwart);
// 0 tekst
$grootte = 8;
$gedraait = 0;
$tekst = 0;
ImageTTFText($image, $grootte, $gedraait, 252, 248, $zwart, $font, $tekst);
// het startpunt op de y - as berekenen
$y = $_GET['y'];
$y_pix = 250 - ($y * 12.5);
$y_pix_0 = $y * 12.5;
$x = $_GET['x'];
$x_20 = $x * 20;
$x_pix = $x_20 * 12.5;
$x_pix_2 = 250 - $x_pix - $y_pix_0;
$x_min20 = $x * -20;
$x_minpix = $x_min20 * 12.5;
$x_minpix_2 = 250 - $x_minpix - $y_pix_0;
ImageLine($image, 250, $y_pix, 499, $x_pix_2, $zwart);
ImageLine($image, 250, $y_pix, 0, $x_minpix_2, $zwart);
ImagePng($image);
ImageDestroy($image);
?>
header("content-type: image/png");
$image = ImageCreate(500, 500);
$achtergrond = ImageColorAllocate($image, 255, 255, 255);
$zwart = ImageColorAllocate($image, 0, 0, 0);
$wit = ImageColorAllocate($image, 255, 255, 255);
$grijs = ImageColorAllocate($image, 192, 192, 192);
$font = 'verdana.ttf';
// verticale strepen
$teller_h = 0;
while($teller_h <= 40){
if($teller_h < 40){
$teller_h_pix = $teller_h * 12.5;
} else {
$teller_h_pix = ($teller_h * 12.5) - 1;
}
ImageLine($image, $teller_h_pix, 0, $teller_h_pix, 500, $grijs);
$teller_h ++;
}
// horizontale strepen
$teller_v = 0;
while($teller_v <= 40){
if($teller_v < 40){
$teller_v_pix = $teller_v * 12.5;
} else {
$teller_v_pix = ($teller_v * 12.5) - 1;
}
ImageLine($image, 0, $teller_v_pix, 500, $teller_v_pix, $grijs);
$teller_v ++;
}
// assenstrepen
ImageLine($image, 250, 0, 250, 500, $zwart);
ImageLine($image, 0, 250, 500, 250, $zwart);
// 0 tekst
$grootte = 8;
$gedraait = 0;
$tekst = 0;
ImageTTFText($image, $grootte, $gedraait, 252, 248, $zwart, $font, $tekst);
// het startpunt op de y - as berekenen
$y = $_GET['y'];
$y_pix = 250 - ($y * 12.5);
$y_pix_0 = $y * 12.5;
$x = $_GET['x'];
$x_20 = $x * 20;
$x_pix = $x_20 * 12.5;
$x_pix_2 = 250 - $x_pix - $y_pix_0;
$x_min20 = $x * -20;
$x_minpix = $x_min20 * 12.5;
$x_minpix_2 = 250 - $x_minpix - $y_pix_0;
ImageLine($image, 250, $y_pix, 499, $x_pix_2, $zwart);
ImageLine($image, 250, $y_pix, 0, $x_minpix_2, $zwart);
ImagePng($image);
ImageDestroy($image);
?>