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
|
// �bung PG 2, Teil 1
// test Shape and Polyline
// Author: Prinz / Kirch-Prinz / Weber
// Date: 26.05.05
#include <iostream>
using std::cout;
using std::endl;
using std::cin;
#include "shape.h"
int main()
{
cout << "\nGeometrische Figuren: Linienzuege\n" << endl;
Point vertices[] = { Point( -1, 0 ), Point( 0, 2 ), Point( 1, 0 ) };
Polyline poly1,
poly2( Point( 1, 2 ), Point( 2, 0 ) ),
poly3( vertices, 3 ),
poly4( poly3 ); // use of copy constructor
cout << "Die Punkte der vier Linienzuege: \n"
<< poly1.toString() << endl
<< poly2.toString() << endl
<< poly3.toString() << endl
<< poly4.toString() << endl;
cin.get();
cout << "Zuweisungen testen:" << endl; // test assignment
poly1 = poly4;
cout << poly1.toString() << endl;
poly1 = Polyline();
cout << poly1.toString() << endl << endl;
cout << "Punkte anhaengen:" << endl; // append points
poly1 += Point( 0.5, 2.5 );
cout << poly1.toString() << endl;
poly4 += Point( 2, 2 );
cout << poly4.toString() << endl;
cout << "Anzahl Linien: " << poly4.getNumberOfLines() << endl
<< "Laenge : " << poly4.getLength() << endl;
cout << "Nach der Skalierung mit dem Faktor 2.0" << endl;
poly4.scale( 2.0 );
cout << poly4.toString() << endl << endl;
cout << "Linienzuege anhaengen:" << endl; // append lines
poly2 += poly1;
cout << poly2.toString() << endl;
poly4 += poly3;
cout << poly4.toString() << endl << endl;
cout << "Linienzug verschieben:" << endl; // displacement
poly4.move( 1,0 );
cout << poly4.toString() << endl;
cout << "Neuer Anker: " << poly4.getAnchor() << endl;
return 0;
}
|