first commit
This commit is contained in:
106
Lab1/array.h
Normal file
106
Lab1/array.h
Normal file
@@ -0,0 +1,106 @@
|
||||
//##################################################################
|
||||
// LAB 1
|
||||
// ADVANCED PROGRAMMING IN C++
|
||||
// MATRIX/ARRAY WITH DEEP COPY
|
||||
//==================================================================
|
||||
// array.h
|
||||
// CLASS IMPLEMENTATION AND DEFINITION FOR
|
||||
// THE ARRAY
|
||||
// Christian Ohlsson
|
||||
// Daniel Alfredsson
|
||||
// Karlstad 990907
|
||||
//==================================================================
|
||||
|
||||
#include <iostream.h>
|
||||
class Array {
|
||||
private:
|
||||
int size; //The size of the Array
|
||||
int *buffer; //Pointer to an int-buffer
|
||||
public:
|
||||
~Array();
|
||||
Array(const int s=0);
|
||||
Array(const Array &src);
|
||||
void operator = (const Array &src);
|
||||
Array Array::operator +(const Array &src);
|
||||
int &operator [] (int index) const;
|
||||
int getSize() const;
|
||||
};
|
||||
//################################################################
|
||||
// Constructor
|
||||
// Creates a new Array
|
||||
//================================================================
|
||||
Array::Array(const int s=0) {
|
||||
buffer = new int[s];
|
||||
size= s;
|
||||
}
|
||||
//################################################################
|
||||
// Constructor
|
||||
// Copys an array
|
||||
//================================================================
|
||||
Array::Array(const Array &src) {
|
||||
size = src.size;
|
||||
buffer = new int[size];
|
||||
for(int i=0 ; i<size ; i++)
|
||||
buffer[i] = src.buffer[i];
|
||||
}
|
||||
//################################################################
|
||||
// Operator overload
|
||||
// Allows to assign a Array to another
|
||||
//================================================================
|
||||
void Array::operator = (const Array &src) {
|
||||
delete [] buffer;
|
||||
size = src.size;
|
||||
buffer = new int[size];
|
||||
for(int i=0 ; i<size ; i++)
|
||||
buffer[i] = src.buffer[i];
|
||||
}
|
||||
//################################################################
|
||||
// Operator overload
|
||||
// Returns a element in the Array
|
||||
//================================================================
|
||||
int &Array::operator [] (int index) const{
|
||||
return buffer[index];
|
||||
}
|
||||
//################################################################
|
||||
// Operator overload
|
||||
// Allows to add a Array to another
|
||||
//================================================================
|
||||
Array Array::operator + (const Array &src) {
|
||||
Array tmp(size);
|
||||
for(int i=0 ; i<size ; i++)
|
||||
tmp.buffer[i] = buffer[i] + src.buffer[i];
|
||||
return (tmp);
|
||||
}
|
||||
//################################################################
|
||||
// Destructor
|
||||
// Deallocates memory, used by the Array
|
||||
//================================================================
|
||||
Array::~Array() {
|
||||
delete [] buffer;
|
||||
}
|
||||
//################################################################
|
||||
// Operator overload
|
||||
// Allows input in the Array, using STDIN
|
||||
//================================================================
|
||||
istream &operator >> (istream &is, Array &v) {
|
||||
for(int l=0 ; l<v.getSize() ; l++)
|
||||
is >> v[l];
|
||||
return is;
|
||||
}
|
||||
//################################################################
|
||||
// Operator overload
|
||||
// Prints out an Array, using STDOUT
|
||||
//================================================================
|
||||
ostream &operator << (ostream &os, const Array &v) {
|
||||
for(int k=0 ; k<v.getSize() ; k++)
|
||||
os << v[k];
|
||||
return os;
|
||||
}
|
||||
//################################################################
|
||||
// Function getSize()
|
||||
// Returns the size of the Array
|
||||
//================================================================
|
||||
int Array::getSize() const{
|
||||
return size;
|
||||
}
|
||||
|
||||
BIN
Lab1/lab_one
Normal file
BIN
Lab1/lab_one
Normal file
Binary file not shown.
16
Lab1/matrix.cpp
Normal file
16
Lab1/matrix.cpp
Normal file
@@ -0,0 +1,16 @@
|
||||
//matrix.cpp
|
||||
#include "matrix.h"
|
||||
int main() {
|
||||
Array a (2);
|
||||
Matrix b (2,2);
|
||||
cout << "input Array: " << endl;
|
||||
cin>>a;
|
||||
cout << "input Matrix: " << endl;
|
||||
cin >>b;
|
||||
//b[2] = a;
|
||||
b[1] = a + b[1];
|
||||
Matrix c(b);
|
||||
b[1][1] = a[1];
|
||||
cout << "c:\n" <<c << "a:\n"<< a << "\nb:\n" << b;
|
||||
return 0;
|
||||
}
|
||||
111
Lab1/matrix.h
Normal file
111
Lab1/matrix.h
Normal file
@@ -0,0 +1,111 @@
|
||||
//##################################################################
|
||||
// LAB 1
|
||||
// ADVANCED PROGRAMMING IN C++
|
||||
// MATRIX/ARRAY WITH DEEP COPY
|
||||
//==================================================================
|
||||
// matrix.h
|
||||
// CLASS IMPLEMENTATION AND DEFINITION FOR
|
||||
// THE MATRIX
|
||||
// Christian Ohlsson
|
||||
// Daniel Alfredsson
|
||||
// Karlstad 990907
|
||||
//==================================================================
|
||||
|
||||
#include "array.h"
|
||||
class Matrix {
|
||||
private:
|
||||
int cols, rows; //# of cols and rows in the matrix
|
||||
Array *myMatrix; //Array-pointer to our matrix
|
||||
public:
|
||||
void Matrix::operator = (const Matrix &src);
|
||||
int getCols() const { return cols;};
|
||||
int getRows() const { return rows;};
|
||||
Array &Matrix::operator [] (int index) const;
|
||||
Matrix(const Matrix &src);
|
||||
Matrix(int cols, int rows);
|
||||
~Matrix();
|
||||
|
||||
};
|
||||
//################################################################
|
||||
// Constructor
|
||||
// Creates a new Matrix with 'c' columns and 'r' rows
|
||||
//================================================================
|
||||
Matrix::Matrix(int c, int r) {
|
||||
myMatrix = new Array[r];
|
||||
for(int i=0; i < c; i++)
|
||||
myMatrix[i] = Array(c);
|
||||
cols = c;
|
||||
rows = r;
|
||||
}
|
||||
//################################################################
|
||||
// Constructor
|
||||
// Creates a new copy of a Matrix
|
||||
//================================================================
|
||||
Matrix::Matrix(const Matrix &src) {
|
||||
cols = src.cols;
|
||||
rows = src.rows;
|
||||
int i,j;
|
||||
myMatrix = new Array[rows];
|
||||
for(i=0; i < cols; i++)
|
||||
myMatrix[i] = Array(cols);
|
||||
for(i=0 ; i < cols ; i++)
|
||||
for(j=0 ; j < rows ; j++)
|
||||
myMatrix[i][j] = src.myMatrix[i][j];
|
||||
}
|
||||
//################################################################
|
||||
// Destructor
|
||||
// De-allocates memory for a Matrix
|
||||
//================================================================
|
||||
Matrix::~Matrix() {
|
||||
delete [] myMatrix;
|
||||
}
|
||||
//################################################################
|
||||
// Operator overload
|
||||
// Sets one Matrix equal to another
|
||||
//================================================================
|
||||
void Matrix::operator = (const Matrix &src) {
|
||||
delete [] myMatrix;
|
||||
cols = src.cols;
|
||||
rows = src.rows;
|
||||
myMatrix = new Array[rows];
|
||||
for(int i=0 ; i<cols ; i++)
|
||||
for(int j=0 ; j<rows ; j++)
|
||||
myMatrix[i][j] = src.myMatrix[i][j];
|
||||
}//################################################################
|
||||
// Operator overload
|
||||
// Reyurns a row in a Matrix, and checks for bad indexes.
|
||||
//================================================================
|
||||
Array &Matrix::operator [] (int index) const {
|
||||
if(index>=rows || index<0) {
|
||||
cout <<"\nIndex out of bounds! Quitting...\n";
|
||||
exit(0);
|
||||
}
|
||||
else
|
||||
return myMatrix[index];
|
||||
}
|
||||
//################################################################
|
||||
// Operator overload
|
||||
// Allow inserts in a Matrix, using STDIN
|
||||
//================================================================
|
||||
istream &operator >> (istream &is, Matrix &v) {
|
||||
int i,j;
|
||||
for(i=0 ; i<v.getCols() ; i++)
|
||||
for (j=0 ; j<v.getRows() ; j++)
|
||||
is >> v[i][j];
|
||||
return is;
|
||||
}
|
||||
//################################################################
|
||||
// Operator overload
|
||||
// Prints the Matrix on the screen, using STDUOT
|
||||
//================================================================
|
||||
ostream &operator << (ostream &os, const Matrix &v) {
|
||||
int i,j;
|
||||
for(i=0 ; i < v.getCols() ; i++)
|
||||
for(j=0 ; j < v.getRows() ; j++)
|
||||
os << i << "," << j<< " = " << v[i][j] << "\n";
|
||||
return os;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
12
Lab1/read_me
Normal file
12
Lab1/read_me
Normal file
@@ -0,0 +1,12 @@
|
||||
Avancerad programmering i C++
|
||||
|
||||
==========================================
|
||||
|
||||
|
||||
|
||||
Denna lab skapades under Linux med
|
||||
|
||||
kommandot:
|
||||
|
||||
g++ -Wall -o lab_one *.cpp
|
||||
|
||||
130
Lab2/array.h
Normal file
130
Lab2/array.h
Normal file
@@ -0,0 +1,130 @@
|
||||
//##################################################################
|
||||
// LAB 2
|
||||
// ADVANCED PROGRAMMING IN C++
|
||||
// MATRIX/ARRAY WITH SHALLOW COPY
|
||||
//==================================================================
|
||||
// array.h
|
||||
// CLASS IMPLEMENTATION AND DEFINITION FOR
|
||||
// THE ARRAY
|
||||
// Christian Ohlsson
|
||||
// Daniel Alfredsson
|
||||
// Karlstad 990907
|
||||
//==================================================================
|
||||
|
||||
#include <iostream.h>
|
||||
#include "contract.h"
|
||||
class Array {
|
||||
private:
|
||||
Contract *myContract;
|
||||
public:
|
||||
~Array();
|
||||
Array(const int s=0);
|
||||
Array(const Array &src);
|
||||
const Array operator + (const Array &src);
|
||||
void operator = (const Array &src);
|
||||
const int &operator [] (int index) const;
|
||||
int &operator [] (int index);
|
||||
int getSize() const;
|
||||
};
|
||||
//################################################################
|
||||
// Constructor
|
||||
// Creates a new Array
|
||||
//================================================================
|
||||
Array::Array(const int s) {
|
||||
myContract = new Contract();
|
||||
myContract->size = s;
|
||||
myContract->buffer = new int[s];
|
||||
}
|
||||
//################################################################
|
||||
// Constructor
|
||||
// Copys an array
|
||||
//================================================================
|
||||
Array::Array(const Array &src) {
|
||||
src.myContract->owners++;
|
||||
myContract = src.myContract;
|
||||
}
|
||||
//################################################################
|
||||
// Operator overload
|
||||
// Allows to assign a Array to another
|
||||
//================================================================
|
||||
void Array::operator = (const Array &src) {
|
||||
if(myContract->owners>1) {
|
||||
myContract->owners--;
|
||||
myContract = new Contract;
|
||||
}
|
||||
else
|
||||
delete [] myContract->buffer;
|
||||
myContract->size = src.myContract->size;
|
||||
myContract->buffer = new int[src.myContract->size];
|
||||
for(int i=0 ; i<src.myContract->size ; i++)
|
||||
myContract->buffer[i] = src.myContract->buffer[i];
|
||||
}
|
||||
//################################################################
|
||||
// Operator overload
|
||||
// Returns a element in the Array
|
||||
//================================================================
|
||||
const int &Array::operator [] (int index) const{
|
||||
return (myContract->buffer[index]);
|
||||
}
|
||||
//################################################################
|
||||
// Operator overload
|
||||
// Returns a element in the Array
|
||||
//================================================================
|
||||
int &Array::operator [] (int index) {
|
||||
if(myContract->owners>1) {
|
||||
myContract->owners--;
|
||||
Contract *tmp = new Contract;
|
||||
tmp->size = myContract->size;
|
||||
tmp->buffer = new int[tmp->size];
|
||||
for(int i=0 ; i<tmp->size ; i++)
|
||||
tmp->buffer[i] = myContract->buffer[i];
|
||||
}
|
||||
return (myContract->buffer[index]);
|
||||
}
|
||||
//################################################################
|
||||
// Operator overload
|
||||
// Allows to add a Array to another
|
||||
//================================================================
|
||||
const Array Array::operator + (const Array &src) {
|
||||
Array tmp(myContract->size);
|
||||
for(int i=0 ; i<myContract->size ; i++)
|
||||
tmp.myContract->buffer[i] = myContract->buffer[i] + src.myContract->buffer[i];
|
||||
return (tmp);
|
||||
}
|
||||
//################################################################
|
||||
// Destructor
|
||||
// Deallocates memory, used by the Array
|
||||
//================================================================
|
||||
Array::~Array() {
|
||||
myContract->owners--;
|
||||
if(myContract->owners == 0) {
|
||||
delete [] myContract->buffer;
|
||||
delete myContract;
|
||||
}
|
||||
}
|
||||
//################################################################
|
||||
// Operator overload
|
||||
// Allows input in the Array, using STDIN
|
||||
//================================================================
|
||||
istream &operator >> (istream &is, Array &a) {
|
||||
for(int l=0 ; l<a.getSize() ; l++)
|
||||
is >> a[l];
|
||||
return is;
|
||||
}
|
||||
//################################################################
|
||||
// Operator overload
|
||||
// Prints out an Array, using STDOUT
|
||||
//================================================================
|
||||
ostream &operator << (ostream &os, const Array &a) {
|
||||
for(int k=0 ; k<a.getSize() ; k++)
|
||||
os << a[k];
|
||||
return os;
|
||||
}
|
||||
//################################################################
|
||||
// Function getSize()
|
||||
// Returns the size of the Array
|
||||
//================================================================
|
||||
int Array::getSize() const{
|
||||
return myContract->size;
|
||||
}
|
||||
|
||||
26
Lab2/contract.h
Normal file
26
Lab2/contract.h
Normal file
@@ -0,0 +1,26 @@
|
||||
//##################################################################
|
||||
|
||||
// LAB 2
|
||||
// ADVANCED PROGRAMMING IN C++
|
||||
// MATRIX/ARRAY WITH SHALLOW COPY
|
||||
//==================================================================
|
||||
// contract.h
|
||||
// CLASS IMPLEMENTATION AND DEFINITION FOR
|
||||
// THE CONTRACT
|
||||
// Christian Ohlsson
|
||||
// Daniel Alfredsson
|
||||
// Karlstad 990907
|
||||
//==================================================================
|
||||
class Contract {
|
||||
|
||||
public:
|
||||
|
||||
int *buffer;
|
||||
|
||||
int size;
|
||||
|
||||
int owners;
|
||||
|
||||
Contract() {
|
||||
|
||||
size=0;
|
||||
BIN
Lab2/lab_two
Normal file
BIN
Lab2/lab_two
Normal file
Binary file not shown.
16
Lab2/matrix.cpp
Normal file
16
Lab2/matrix.cpp
Normal file
@@ -0,0 +1,16 @@
|
||||
//matrix.cpp
|
||||
#include "matrix.h"
|
||||
int main() {
|
||||
Array a (2);
|
||||
Matrix b (2,2);
|
||||
cout << "input Array: " << endl;
|
||||
cin>>a;
|
||||
cout << "input Matrix: " << endl;
|
||||
cin >>b;
|
||||
//b[2] = a;
|
||||
b[1] = a + b[1];
|
||||
Matrix c(b);
|
||||
b[1][1] = a[1];
|
||||
cout << "c:\n" <<c << "a:\n"<< a << "\nb:\n" << b;
|
||||
return 0;
|
||||
}
|
||||
110
Lab2/matrix.h
Normal file
110
Lab2/matrix.h
Normal file
@@ -0,0 +1,110 @@
|
||||
//##################################################################
|
||||
// LAB 1
|
||||
// ADVANCED PROGRAMMING IN C++
|
||||
// MATRIX/ARRAY WITH DEEP COPY
|
||||
//==================================================================
|
||||
// matrix.h
|
||||
// CLASS IMPLEMENTATION AND DEFINITION FOR
|
||||
// THE MATRIX
|
||||
// Christian Ohlsson
|
||||
// Daniel Alfredsson
|
||||
// Karlstad 990907
|
||||
//==================================================================
|
||||
#include <stdlib.h>
|
||||
#include "array.h"
|
||||
class Matrix {
|
||||
private:
|
||||
int cols, rows; //# of cols and rows in the matrix
|
||||
Array *myMatrix; //Array-pointer to our matrix
|
||||
public:
|
||||
void Matrix::operator = (const Matrix &src);
|
||||
int getCols() const { return cols;};
|
||||
int getRows() const { return rows;};
|
||||
Array &Matrix::operator [] (int index) const;
|
||||
Matrix(const Matrix &src);
|
||||
Matrix(int cols, int rows);
|
||||
~Matrix();
|
||||
|
||||
};
|
||||
//################################################################
|
||||
// Constructor
|
||||
// Creates a new Matrix with 'c' columns and 'r' rows
|
||||
//================================================================
|
||||
Matrix::Matrix(int c, int r) {
|
||||
myMatrix = new Array[r];
|
||||
for(int i=0; i < c; i++)
|
||||
myMatrix[i] = Array(c);
|
||||
cols = c;
|
||||
rows = r;
|
||||
}
|
||||
//################################################################
|
||||
// Constructor
|
||||
// Creates a new copy of a Matrix
|
||||
//================================================================
|
||||
Matrix::Matrix(const Matrix &src) {
|
||||
cols = src.cols;
|
||||
rows = src.rows;
|
||||
int i,j;
|
||||
myMatrix = new Array[rows];
|
||||
for(i=0; i < cols; i++)
|
||||
myMatrix[i] = Array(cols);
|
||||
for(i=0 ; i < cols ; i++)
|
||||
for(j=0 ; j < rows ; j++)
|
||||
myMatrix[i][j] = src.myMatrix[i][j];
|
||||
}
|
||||
//################################################################
|
||||
// Destructor
|
||||
// De-allocates memory for a Matrix
|
||||
//================================================================
|
||||
Matrix::~Matrix() {
|
||||
delete [] myMatrix;
|
||||
}
|
||||
//################################################################
|
||||
// Operator overload
|
||||
// Sets one Matrix equal to another
|
||||
//================================================================
|
||||
void Matrix::operator = (const Matrix &src) {
|
||||
delete [] myMatrix;
|
||||
cols = src.cols;
|
||||
rows = src.rows;
|
||||
myMatrix = new Array[rows];
|
||||
for(int i=0 ; i<cols ; i++)
|
||||
for(int j=0 ; j<rows ; j++)
|
||||
myMatrix[i][j] = src.myMatrix[i][j];
|
||||
}//################################################################
|
||||
// Operator overload
|
||||
// Reyurns a row in a Matrix, and checks for bad indexes.
|
||||
//================================================================
|
||||
Array &Matrix::operator [] (int index) const {
|
||||
if(index>=rows || index<0) {
|
||||
cout <<"\nIndex out of bounds! Quitting...\n";
|
||||
exit(0);
|
||||
}
|
||||
return myMatrix[index];
|
||||
}
|
||||
//################################################################
|
||||
// Operator overload
|
||||
// Allow inserts in a Matrix, using STDIN
|
||||
//================================================================
|
||||
istream &operator >> (istream &is, Matrix &v) {
|
||||
int i,j;
|
||||
for(i=0 ; i<v.getCols() ; i++)
|
||||
for (j=0 ; j<v.getRows() ; j++)
|
||||
is >> v[i][j];
|
||||
return is;
|
||||
}
|
||||
//################################################################
|
||||
// Operator overload
|
||||
// Prints the Matrix on the screen, using STDUOT
|
||||
//================================================================
|
||||
ostream &operator << (ostream &os, const Matrix &v) {
|
||||
int i,j;
|
||||
for(i=0 ; i < v.getCols() ; i++)
|
||||
for(j=0 ; j < v.getRows() ; j++)
|
||||
os << i << "," << j<< " = " << v[i][j] << "\n";
|
||||
return os;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
13
Lab2/read_me
Normal file
13
Lab2/read_me
Normal file
@@ -0,0 +1,13 @@
|
||||
Avancerad programmering i C++
|
||||
|
||||
==========================================
|
||||
|
||||
|
||||
|
||||
Denna lab skapades under Linux med
|
||||
|
||||
kommandot:
|
||||
|
||||
g++ -Wall -o lab_two *.cpp
|
||||
|
||||
|
||||
15
Lab3/atm.h
Normal file
15
Lab3/atm.h
Normal file
@@ -0,0 +1,15 @@
|
||||
//atm.h
|
||||
|
||||
#ifndef __ATM_H__
|
||||
|
||||
#define __ATM_H__
|
||||
|
||||
#include <stdlib.h>
|
||||
|
||||
#include "cashcard.h"
|
||||
|
||||
class ATM {
|
||||
|
||||
public:
|
||||
|
||||
double withDraw(Cashcard &myCard, double money) {
|
||||
14
Lab3/bank.cpp
Normal file
14
Lab3/bank.cpp
Normal file
@@ -0,0 +1,14 @@
|
||||
//bank.cpp
|
||||
|
||||
#ifndef __BANK_CPP__
|
||||
|
||||
#define __BANK_CPP__
|
||||
|
||||
#include "person.h"
|
||||
|
||||
#include "bank.h"
|
||||
|
||||
Cashcard* Bank::makeCashcard(Passport &P) {
|
||||
|
||||
if(&P) {
|
||||
|
||||
16
Lab3/bank.h
Normal file
16
Lab3/bank.h
Normal file
@@ -0,0 +1,16 @@
|
||||
//bank.h
|
||||
|
||||
#ifndef __BANK_H__
|
||||
|
||||
#define __BANK_H__
|
||||
|
||||
#include "passport.h"
|
||||
|
||||
#include "person.h"
|
||||
|
||||
class Bank {
|
||||
|
||||
public:
|
||||
|
||||
Bank(){}
|
||||
|
||||
19
Lab3/cashcard.h
Normal file
19
Lab3/cashcard.h
Normal file
@@ -0,0 +1,19 @@
|
||||
//cashcard.h
|
||||
|
||||
#ifndef __CASHCARD_H__
|
||||
|
||||
#define __CASHCARD_H__
|
||||
|
||||
#include "name.h"
|
||||
|
||||
class ATM;
|
||||
|
||||
class Bank;
|
||||
|
||||
class Cashcard {
|
||||
|
||||
friend ATM;
|
||||
|
||||
friend Bank;
|
||||
|
||||
private:
|
||||
17
Lab3/main.cpp
Normal file
17
Lab3/main.cpp
Normal file
@@ -0,0 +1,17 @@
|
||||
//main.cpp
|
||||
|
||||
#include "person.h"
|
||||
|
||||
|
||||
|
||||
void main() {
|
||||
|
||||
Person myPerson(Name("Kalle !"), 20);
|
||||
|
||||
Police myStation;
|
||||
|
||||
Bank myBank;
|
||||
|
||||
ATM myATM;
|
||||
|
||||
if(myPerson.getPassport(myStation)) //Person gets a passport
|
||||
49
Lab3/name.cpp
Normal file
49
Lab3/name.cpp
Normal file
@@ -0,0 +1,49 @@
|
||||
//name.cpp
|
||||
|
||||
#ifndef __NAME_CPP__
|
||||
|
||||
#define __NAME_CPP__
|
||||
|
||||
#include <iostream.h>
|
||||
|
||||
#include <string.h>
|
||||
|
||||
#include <stdlib.h>
|
||||
|
||||
#include "name.h"
|
||||
|
||||
//##################################################
|
||||
|
||||
// Name
|
||||
|
||||
// Puts name into a buffer
|
||||
|
||||
//==================================================
|
||||
|
||||
Name::Name(char *txt) {
|
||||
|
||||
buff = new char[strlen(txt) + 1];
|
||||
|
||||
strcpy(buff, txt);
|
||||
|
||||
}
|
||||
|
||||
//##################################################
|
||||
|
||||
// Destructor
|
||||
|
||||
// Delets buffer
|
||||
|
||||
//==================================================
|
||||
|
||||
Name::~Name() {
|
||||
|
||||
delete [] buff;
|
||||
|
||||
}
|
||||
|
||||
//##################################################
|
||||
|
||||
// Operator overload
|
||||
|
||||
// Deletes buffer and makes a new one
|
||||
14
Lab3/name.h
Normal file
14
Lab3/name.h
Normal file
@@ -0,0 +1,14 @@
|
||||
//name.h
|
||||
|
||||
#ifndef __NAME_H__
|
||||
|
||||
#define __NAME_H__
|
||||
|
||||
class Name {
|
||||
|
||||
private:
|
||||
|
||||
char* buff;
|
||||
|
||||
public:
|
||||
|
||||
14
Lab3/passport.h
Normal file
14
Lab3/passport.h
Normal file
@@ -0,0 +1,14 @@
|
||||
//passport.h
|
||||
|
||||
#ifndef __PASSPORT_H__
|
||||
|
||||
#define __PASSPORT_H__
|
||||
|
||||
#include "name.h"
|
||||
|
||||
class Passport {
|
||||
|
||||
private:
|
||||
|
||||
Name myName; //The name in the passport
|
||||
|
||||
54
Lab3/person.h
Normal file
54
Lab3/person.h
Normal file
@@ -0,0 +1,54 @@
|
||||
//person.h
|
||||
|
||||
#ifndef __PERSON_H__
|
||||
|
||||
#define __PERSON_H__
|
||||
|
||||
#include "police.h"
|
||||
|
||||
#include "atm.h"
|
||||
|
||||
|
||||
|
||||
#include "cashcard.h"
|
||||
|
||||
#include "bank.h"
|
||||
|
||||
#include <stdlib.h>
|
||||
|
||||
|
||||
|
||||
class Person {
|
||||
|
||||
private:
|
||||
|
||||
Name myName;
|
||||
|
||||
int myAge;
|
||||
|
||||
double cash;
|
||||
|
||||
Passport *myPass;
|
||||
|
||||
Cashcard *myCard;
|
||||
|
||||
public:
|
||||
|
||||
Person(Name &N, int &age):myName(N) { //Constructor
|
||||
|
||||
myPass=NULL;
|
||||
|
||||
myCard=NULL;
|
||||
|
||||
cash=0;
|
||||
|
||||
myAge=age;
|
||||
|
||||
}
|
||||
|
||||
~Person(){}
|
||||
|
||||
const Name &getName() { return myName; }
|
||||
|
||||
int getPassport(Police &myStation) {
|
||||
|
||||
11
Lab3/police.cpp
Normal file
11
Lab3/police.cpp
Normal file
@@ -0,0 +1,11 @@
|
||||
//police.cpp
|
||||
|
||||
#ifndef __POLICE_CPP__
|
||||
|
||||
#define __POLICE_CPP__
|
||||
|
||||
#include "person.h"
|
||||
|
||||
#include "police.h"
|
||||
|
||||
Passport* Police::makePassport(Person &P) {
|
||||
14
Lab3/police.h
Normal file
14
Lab3/police.h
Normal file
@@ -0,0 +1,14 @@
|
||||
//police.h
|
||||
|
||||
#ifndef __POLICE_H__
|
||||
|
||||
#define __POLICE_H__
|
||||
|
||||
#include "passport.h"
|
||||
|
||||
#include "person.h"
|
||||
|
||||
class Person;
|
||||
|
||||
class Police {
|
||||
|
||||
13
Lab3/read_me
Normal file
13
Lab3/read_me
Normal file
@@ -0,0 +1,13 @@
|
||||
Avancerad programmering i C++
|
||||
|
||||
==========================================
|
||||
|
||||
|
||||
|
||||
Denna lab skapades med Borland C++ 5.0
|
||||
|
||||
Lägg alla .cpp i projektet.
|
||||
|
||||
Kompilera för EasyWin.
|
||||
|
||||
|
||||
7079
Lab4/RoseModel.mdl
Normal file
7079
Lab4/RoseModel.mdl
Normal file
File diff suppressed because it is too large
Load Diff
106
Lab4/circle.cpp
Normal file
106
Lab4/circle.cpp
Normal file
@@ -0,0 +1,106 @@
|
||||
//## begin module.cm preserve=no
|
||||
|
||||
// %X% %Q% %Z% %W%
|
||||
|
||||
//## end module.cm
|
||||
|
||||
|
||||
|
||||
//## begin module.cp preserve=no
|
||||
|
||||
//## end module.cp
|
||||
|
||||
|
||||
|
||||
//## Module: Circle; Pseudo Package body
|
||||
|
||||
//## Subsystem: Figures
|
||||
|
||||
//## Source file: H:\WebDocs\skola\Avancerad_C++\Lab4\Rose\Circle.cpp
|
||||
|
||||
|
||||
|
||||
//## begin module.additionalIncludes preserve=no
|
||||
|
||||
//## end module.additionalIncludes
|
||||
|
||||
|
||||
|
||||
//## begin module.includes preserve=yes
|
||||
|
||||
//## end module.includes
|
||||
|
||||
|
||||
|
||||
// Circle
|
||||
|
||||
#include "H:\WebDocs\skola\Avancerad_C++\Lab4\Rose\Circle.h"
|
||||
|
||||
//## begin module.additionalDeclarations preserve=yes
|
||||
|
||||
//## end module.additionalDeclarations
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
// Class Circle
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
Circle::Circle()
|
||||
|
||||
//## begin Circle::Circle%.hasinit preserve=no
|
||||
|
||||
//## end Circle::Circle%.hasinit
|
||||
|
||||
//## begin Circle::Circle%.initialization preserve=yes
|
||||
|
||||
//## end Circle::Circle%.initialization
|
||||
|
||||
{
|
||||
|
||||
//## begin Circle::Circle%.body preserve=yes
|
||||
|
||||
//## end Circle::Circle%.body
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
Circle::Circle (int x, int y, int r, Color color)
|
||||
|
||||
//## begin Circle::Circle%939623931.hasinit preserve=no
|
||||
|
||||
//## end Circle::Circle%939623931.hasinit
|
||||
|
||||
//## begin Circle::Circle%939623931.initialization preserve=yes
|
||||
|
||||
//## end Circle::Circle%939623931.initialization
|
||||
|
||||
{
|
||||
|
||||
//## begin Circle::Circle%939623931.body preserve=yes
|
||||
|
||||
setColor(color);
|
||||
|
||||
center.setx(x);
|
||||
|
||||
center.sety(y);
|
||||
|
||||
radius=r;
|
||||
|
||||
//## end Circle::Circle%939623931.body
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
Circle::~Circle()
|
||||
|
||||
108
Lab4/circle.h
Normal file
108
Lab4/circle.h
Normal file
@@ -0,0 +1,108 @@
|
||||
//## begin module.cm preserve=no
|
||||
|
||||
// %X% %Q% %Z% %W%
|
||||
|
||||
//## end module.cm
|
||||
|
||||
|
||||
|
||||
//## begin module.cp preserve=no
|
||||
|
||||
//## end module.cp
|
||||
|
||||
|
||||
|
||||
//## Module: Circle; Pseudo Package specification
|
||||
|
||||
//## Subsystem: Figures
|
||||
|
||||
//## Source file: H:\WebDocs\skola\Avancerad_C++\Lab4\Rose\Circle.h
|
||||
|
||||
|
||||
|
||||
#ifndef Circle_h
|
||||
|
||||
#define Circle_h 1
|
||||
|
||||
|
||||
|
||||
//## begin module.additionalIncludes preserve=no
|
||||
|
||||
//## end module.additionalIncludes
|
||||
|
||||
|
||||
|
||||
//## begin module.includes preserve=yes
|
||||
|
||||
//## end module.includes
|
||||
|
||||
|
||||
|
||||
// Point
|
||||
|
||||
#include "H:\WebDocs\skola\Avancerad_C++\Lab4\Rose\Point.h"
|
||||
|
||||
// Figure
|
||||
|
||||
#include "H:\WebDocs\skola\Avancerad_C++\Lab4\Rose\Figure.h"
|
||||
|
||||
//## begin module.additionalDeclarations preserve=yes
|
||||
|
||||
//## end module.additionalDeclarations
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
//## Class: Circle
|
||||
|
||||
//## Category: Figures
|
||||
|
||||
//## Subsystem: Figures
|
||||
|
||||
//## Persistence: Transient
|
||||
|
||||
//## Cardinality/Multiplicity: n
|
||||
|
||||
|
||||
|
||||
class Circle : public Figure //## Inherits: <unnamed>
|
||||
|
||||
{
|
||||
|
||||
//## begin Circle.initialDeclarations preserve=yes
|
||||
|
||||
//## end Circle.initialDeclarations
|
||||
|
||||
|
||||
|
||||
public:
|
||||
|
||||
//## Constructors (generated)
|
||||
|
||||
Circle();
|
||||
|
||||
|
||||
|
||||
//## Constructors (specified)
|
||||
|
||||
//## Operation: Circle%939623931
|
||||
|
||||
Circle (int x, int y, int r, Color color);
|
||||
|
||||
|
||||
|
||||
//## Destructor (generated)
|
||||
|
||||
~Circle();
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
//## Other Operations (specified)
|
||||
|
||||
//## Operation: draw%937398670
|
||||
|
||||
void draw (Graphics &g);
|
||||
|
||||
87
Lab4/cmplxfgr.cpp
Normal file
87
Lab4/cmplxfgr.cpp
Normal file
@@ -0,0 +1,87 @@
|
||||
//## begin module.cm preserve=no
|
||||
|
||||
// %X% %Q% %Z% %W%
|
||||
|
||||
//## end module.cm
|
||||
|
||||
|
||||
|
||||
//## begin module.cp preserve=no
|
||||
|
||||
//## end module.cp
|
||||
|
||||
|
||||
|
||||
//## Module: ComplexFigure; Pseudo Package body
|
||||
|
||||
//## Subsystem: Figures
|
||||
|
||||
//## Source file: H:\WebDocs\skola\Avancerad_C++\Lab4\Rose\CmplxFgr.cpp
|
||||
|
||||
|
||||
|
||||
//## begin module.additionalIncludes preserve=no
|
||||
|
||||
//## end module.additionalIncludes
|
||||
|
||||
|
||||
|
||||
//## begin module.includes preserve=yes
|
||||
|
||||
//## end module.includes
|
||||
|
||||
|
||||
|
||||
// ComplexFigure
|
||||
|
||||
#include "H:\WebDocs\skola\Avancerad_C++\Lab4\Rose\CmplxFgr.h"
|
||||
|
||||
//## begin module.additionalDeclarations preserve=yes
|
||||
|
||||
#include "H:\WebDocs\skola\Avancerad_C++\Lab4\Rose\Graphic\Graphics.h"
|
||||
|
||||
//## end module.additionalDeclarations
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
// Class ComplexFigure
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
ComplexFigure::ComplexFigure()
|
||||
|
||||
//## begin ComplexFigure::ComplexFigure%.hasinit preserve=no
|
||||
|
||||
//## end ComplexFigure::ComplexFigure%.hasinit
|
||||
|
||||
//## begin ComplexFigure::ComplexFigure%.initialization preserve=yes
|
||||
|
||||
//## end ComplexFigure::ComplexFigure%.initialization
|
||||
|
||||
{
|
||||
|
||||
//## begin ComplexFigure::ComplexFigure%.body preserve=yes
|
||||
|
||||
//## end ComplexFigure::ComplexFigure%.body
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
ComplexFigure::~ComplexFigure()
|
||||
|
||||
{
|
||||
|
||||
//## begin ComplexFigure::~ComplexFigure%.body preserve=yes
|
||||
|
||||
//## end ComplexFigure::~ComplexFigure%.body
|
||||
|
||||
}
|
||||
|
||||
|
||||
100
Lab4/cmplxfgr.h
Normal file
100
Lab4/cmplxfgr.h
Normal file
@@ -0,0 +1,100 @@
|
||||
//## begin module.cm preserve=no
|
||||
|
||||
// %X% %Q% %Z% %W%
|
||||
|
||||
//## end module.cm
|
||||
|
||||
|
||||
|
||||
//## begin module.cp preserve=no
|
||||
|
||||
//## end module.cp
|
||||
|
||||
|
||||
|
||||
//## Module: ComplexFigure; Pseudo Package specification
|
||||
|
||||
//## Subsystem: Figures
|
||||
|
||||
//## Source file: H:\WebDocs\skola\Avancerad_C++\Lab4\Rose\CmplxFgr.h
|
||||
|
||||
|
||||
|
||||
#ifndef CmplxFgr_h
|
||||
|
||||
#define CmplxFgr_h 1
|
||||
|
||||
|
||||
|
||||
//## begin module.additionalIncludes preserve=no
|
||||
|
||||
//## end module.additionalIncludes
|
||||
|
||||
|
||||
|
||||
//## begin module.includes preserve=yes
|
||||
|
||||
//## end module.includes
|
||||
|
||||
|
||||
|
||||
// Figure
|
||||
|
||||
#include "H:\WebDocs\skola\Avancerad_C++\Lab4\Rose\Figure.h"
|
||||
|
||||
// FList
|
||||
|
||||
#include "H:\WebDocs\skola\Avancerad_C++\Lab4\Rose\FList.h"
|
||||
|
||||
//## begin module.additionalDeclarations preserve=yes
|
||||
|
||||
//## end module.additionalDeclarations
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
//## Class: ComplexFigure
|
||||
|
||||
//## Category: Figures
|
||||
|
||||
//## Subsystem: Figures
|
||||
|
||||
//## Persistence: Transient
|
||||
|
||||
//## Cardinality/Multiplicity: n
|
||||
|
||||
|
||||
|
||||
class ComplexFigure : public Figure //## Inherits: <unnamed>
|
||||
|
||||
{
|
||||
|
||||
//## begin ComplexFigure.initialDeclarations preserve=yes
|
||||
|
||||
//## end ComplexFigure.initialDeclarations
|
||||
|
||||
|
||||
|
||||
public:
|
||||
|
||||
//## Constructors (generated)
|
||||
|
||||
ComplexFigure();
|
||||
|
||||
|
||||
|
||||
//## Destructor (generated)
|
||||
|
||||
~ComplexFigure();
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
//## Other Operations (specified)
|
||||
|
||||
//## Operation: draw%939104770
|
||||
|
||||
void draw (Graphics &g);
|
||||
|
||||
61
Lab4/fgrhlder.cpp
Normal file
61
Lab4/fgrhlder.cpp
Normal file
@@ -0,0 +1,61 @@
|
||||
//## begin module.cm preserve=no
|
||||
|
||||
// %X% %Q% %Z% %W%
|
||||
|
||||
//## end module.cm
|
||||
|
||||
|
||||
|
||||
//## begin module.cp preserve=no
|
||||
|
||||
//## end module.cp
|
||||
|
||||
|
||||
|
||||
//## Module: FigureHolder; Pseudo Package body
|
||||
|
||||
//## Subsystem: Figures
|
||||
|
||||
//## Source file: H:\WebDocs\skola\Avancerad_C++\Lab4\Rose\FgrHlder.cpp
|
||||
|
||||
|
||||
|
||||
//## begin module.additionalIncludes preserve=no
|
||||
|
||||
//## end module.additionalIncludes
|
||||
|
||||
|
||||
|
||||
//## begin module.includes preserve=yes
|
||||
|
||||
//## end module.includes
|
||||
|
||||
|
||||
|
||||
// FigureHolder
|
||||
|
||||
#include "H:\WebDocs\skola\Avancerad_C++\Lab4\Rose\FgrHlder.h"
|
||||
|
||||
//## begin module.additionalDeclarations preserve=yes
|
||||
|
||||
//## end module.additionalDeclarations
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
// Class FigureHolder
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
FigureHolder::FigureHolder()
|
||||
|
||||
//## begin FigureHolder::FigureHolder%.hasinit preserve=no
|
||||
|
||||
//## end FigureHolder::FigureHolder%.hasinit
|
||||
|
||||
//## begin FigureHolder::FigureHolder%.initialization preserve=yes
|
||||
|
||||
//## end FigureHolder::FigureHolder%.initialization
|
||||
94
Lab4/fgrhlder.h
Normal file
94
Lab4/fgrhlder.h
Normal file
@@ -0,0 +1,94 @@
|
||||
//## begin module.cm preserve=no
|
||||
|
||||
// %X% %Q% %Z% %W%
|
||||
|
||||
//## end module.cm
|
||||
|
||||
|
||||
|
||||
//## begin module.cp preserve=no
|
||||
|
||||
//## end module.cp
|
||||
|
||||
|
||||
|
||||
//## Module: FigureHolder; Pseudo Package specification
|
||||
|
||||
//## Subsystem: Figures
|
||||
|
||||
//## Source file: H:\WebDocs\skola\Avancerad_C++\Lab4\Rose\FgrHlder.h
|
||||
|
||||
|
||||
|
||||
#ifndef FgrHlder_h
|
||||
|
||||
#define FgrHlder_h 1
|
||||
|
||||
|
||||
|
||||
//## begin module.additionalIncludes preserve=no
|
||||
|
||||
//## end module.additionalIncludes
|
||||
|
||||
|
||||
|
||||
//## begin module.includes preserve=yes
|
||||
|
||||
//## end module.includes
|
||||
|
||||
|
||||
|
||||
// Figure
|
||||
|
||||
#include "H:\WebDocs\skola\Avancerad_C++\Lab4\Rose\Figure.h"
|
||||
|
||||
//## begin module.additionalDeclarations preserve=yes
|
||||
|
||||
//## end module.additionalDeclarations
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
//## Class: FigureHolder
|
||||
|
||||
//## Category: Figures
|
||||
|
||||
//## Subsystem: Figures
|
||||
|
||||
//## Persistence: Transient
|
||||
|
||||
//## Cardinality/Multiplicity: n
|
||||
|
||||
|
||||
|
||||
class FigureHolder
|
||||
|
||||
{
|
||||
|
||||
//## begin FigureHolder.initialDeclarations preserve=yes
|
||||
|
||||
public:
|
||||
|
||||
FigureHolder(Figure& f)
|
||||
|
||||
{
|
||||
|
||||
myFigure = f.clone();
|
||||
|
||||
}
|
||||
|
||||
//## end FigureHolder.initialDeclarations
|
||||
|
||||
|
||||
|
||||
public:
|
||||
|
||||
//## Constructors (generated)
|
||||
|
||||
FigureHolder();
|
||||
|
||||
|
||||
|
||||
//## Destructor (generated)
|
||||
|
||||
68
Lab4/figure.cpp
Normal file
68
Lab4/figure.cpp
Normal file
@@ -0,0 +1,68 @@
|
||||
//## begin module.cm preserve=no
|
||||
|
||||
// %X% %Q% %Z% %W%
|
||||
|
||||
//## end module.cm
|
||||
|
||||
|
||||
|
||||
//## begin module.cp preserve=no
|
||||
|
||||
//## end module.cp
|
||||
|
||||
|
||||
|
||||
//## Module: Figure; Pseudo Package body
|
||||
|
||||
//## Subsystem: Figures
|
||||
|
||||
//## Source file: H:\WebDocs\skola\Avancerad_C++\Lab4\Rose\Figure.cpp
|
||||
|
||||
|
||||
|
||||
//## begin module.additionalIncludes preserve=no
|
||||
|
||||
//## end module.additionalIncludes
|
||||
|
||||
|
||||
|
||||
//## begin module.includes preserve=yes
|
||||
|
||||
//## end module.includes
|
||||
|
||||
|
||||
|
||||
// Figure
|
||||
|
||||
#include "H:\WebDocs\skola\Avancerad_C++\Lab4\Rose\Figure.h"
|
||||
|
||||
//## begin module.additionalDeclarations preserve=yes
|
||||
|
||||
//## end module.additionalDeclarations
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
// Class Figure
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
Figure::Figure()
|
||||
|
||||
//## begin Figure::Figure%.hasinit preserve=no
|
||||
|
||||
//## end Figure::Figure%.hasinit
|
||||
|
||||
//## begin Figure::Figure%.initialization preserve=yes
|
||||
|
||||
//## end Figure::Figure%.initialization
|
||||
|
||||
{
|
||||
|
||||
//## begin Figure::Figure%.body preserve=yes
|
||||
|
||||
//## end Figure::Figure%.body
|
||||
|
||||
103
Lab4/figure.h
Normal file
103
Lab4/figure.h
Normal file
@@ -0,0 +1,103 @@
|
||||
//## begin module.cm preserve=no
|
||||
|
||||
// %X% %Q% %Z% %W%
|
||||
|
||||
//## end module.cm
|
||||
|
||||
|
||||
|
||||
//## begin module.cp preserve=no
|
||||
|
||||
//## end module.cp
|
||||
|
||||
|
||||
|
||||
//## Module: Figure; Pseudo Package specification
|
||||
|
||||
//## Subsystem: Figures
|
||||
|
||||
//## Source file: H:\WebDocs\skola\Avancerad_C++\Lab4\Rose\Figure.h
|
||||
|
||||
|
||||
|
||||
#ifndef Figure_h
|
||||
|
||||
#define Figure_h 1
|
||||
|
||||
|
||||
|
||||
//## begin module.additionalIncludes preserve=no
|
||||
|
||||
//## end module.additionalIncludes
|
||||
|
||||
|
||||
|
||||
//## begin module.includes preserve=yes
|
||||
|
||||
//## end module.includes
|
||||
|
||||
|
||||
|
||||
// Graphics
|
||||
|
||||
#include "Graphic\Graphics.h"
|
||||
|
||||
//## begin module.additionalDeclarations preserve=yes
|
||||
|
||||
//## end module.additionalDeclarations
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
//## Class: Figure; Abstract
|
||||
|
||||
//## Category: Figures
|
||||
|
||||
//## Subsystem: Figures
|
||||
|
||||
//## Persistence: Transient
|
||||
|
||||
//## Cardinality/Multiplicity: n
|
||||
|
||||
|
||||
|
||||
//## Uses: <unnamed>; Graphics { -> }
|
||||
|
||||
|
||||
|
||||
class Figure
|
||||
|
||||
{
|
||||
|
||||
//## begin Figure.initialDeclarations preserve=yes
|
||||
|
||||
//## end Figure.initialDeclarations
|
||||
|
||||
|
||||
|
||||
public:
|
||||
|
||||
//## Constructors (generated)
|
||||
|
||||
Figure();
|
||||
|
||||
|
||||
|
||||
//## Destructor (generated)
|
||||
|
||||
~Figure();
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
//## Other Operations (specified)
|
||||
|
||||
//## Operation: draw%937398679
|
||||
|
||||
virtual void draw (Graphics &g) = 0;
|
||||
|
||||
|
||||
|
||||
//## Operation: erase%937398680
|
||||
30
Lab4/flist.cpp
Normal file
30
Lab4/flist.cpp
Normal file
@@ -0,0 +1,30 @@
|
||||
//## begin module.cm preserve=no
|
||||
|
||||
// %X% %Q% %Z% %W%
|
||||
|
||||
//## end module.cm
|
||||
|
||||
|
||||
|
||||
//## begin module.cp preserve=no
|
||||
|
||||
//## end module.cp
|
||||
|
||||
|
||||
|
||||
//## Module: FList; Pseudo Package body
|
||||
|
||||
//## Subsystem: Figures
|
||||
|
||||
//## Source file: H:\WebDocs\skola\Avancerad_C++\Lab4\Rose\FList.cpp
|
||||
|
||||
|
||||
|
||||
//## begin module.additionalIncludes preserve=no
|
||||
|
||||
//## end module.additionalIncludes
|
||||
|
||||
|
||||
|
||||
//## begin module.includes preserve=yes
|
||||
|
||||
48
Lab4/flist.h
Normal file
48
Lab4/flist.h
Normal file
@@ -0,0 +1,48 @@
|
||||
//## begin module.cm preserve=no
|
||||
|
||||
// %X% %Q% %Z% %W%
|
||||
|
||||
//## end module.cm
|
||||
|
||||
|
||||
|
||||
//## begin module.cp preserve=no
|
||||
|
||||
//## end module.cp
|
||||
|
||||
|
||||
|
||||
//## Module: FList; Pseudo Package specification
|
||||
|
||||
//## Subsystem: Figures
|
||||
|
||||
//## Source file: H:\WebDocs\skola\Avancerad_C++\Lab4\Rose\FList.h
|
||||
|
||||
|
||||
|
||||
#ifndef FList_h
|
||||
|
||||
#define FList_h 1
|
||||
|
||||
|
||||
|
||||
//## begin module.additionalIncludes preserve=no
|
||||
|
||||
//## end module.additionalIncludes
|
||||
|
||||
|
||||
|
||||
//## begin module.includes preserve=yes
|
||||
|
||||
//## end module.includes
|
||||
|
||||
|
||||
|
||||
// List
|
||||
|
||||
#include "H:\WebDocs\skola\Avancerad_C++\Lab4\Rose\List.h"
|
||||
|
||||
// FigureHolder
|
||||
|
||||
#include "H:\WebDocs\skola\Avancerad_C++\Lab4\Rose\FgrHlder.h"
|
||||
|
||||
71
Lab4/graphic/dbggrphc.cpp
Normal file
71
Lab4/graphic/dbggrphc.cpp
Normal file
@@ -0,0 +1,71 @@
|
||||
//## begin module.cm preserve=no
|
||||
|
||||
// %X% %Q% %Z% %W%
|
||||
|
||||
//## end module.cm
|
||||
|
||||
|
||||
|
||||
//## begin module.cp preserve=no
|
||||
|
||||
//## end module.cp
|
||||
|
||||
|
||||
|
||||
//## Module: DebugGraphics; Pseudo Package body
|
||||
|
||||
//## Subsystem: Graphic
|
||||
|
||||
//## Source file: H:\WebDocs\skola\Avancerad_C++\Lab4\Rose\Graphic\DbgGrphc.cpp
|
||||
|
||||
|
||||
|
||||
//## begin module.additionalIncludes preserve=no
|
||||
|
||||
//## end module.additionalIncludes
|
||||
|
||||
|
||||
|
||||
//## begin module.includes preserve=yes
|
||||
|
||||
//## end module.includes
|
||||
|
||||
|
||||
|
||||
// DebugGraphics
|
||||
|
||||
#include "Graphic\DbgGrphc.h"
|
||||
|
||||
//## begin module.additionalDeclarations preserve=yes
|
||||
|
||||
//## end module.additionalDeclarations
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
// Class DebugGraphics
|
||||
|
||||
|
||||
|
||||
DebugGraphics::DebugGraphics()
|
||||
|
||||
//## begin DebugGraphics::DebugGraphics%.hasinit preserve=no
|
||||
|
||||
//## end DebugGraphics::DebugGraphics%.hasinit
|
||||
|
||||
//## begin DebugGraphics::DebugGraphics%.initialization preserve=yes
|
||||
|
||||
//## end DebugGraphics::DebugGraphics%.initialization
|
||||
|
||||
{
|
||||
|
||||
//## begin DebugGraphics::DebugGraphics%.body preserve=yes
|
||||
|
||||
//## end DebugGraphics::DebugGraphics%.body
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
89
Lab4/graphic/dbggrphc.h
Normal file
89
Lab4/graphic/dbggrphc.h
Normal file
@@ -0,0 +1,89 @@
|
||||
//## begin module.cm preserve=no
|
||||
|
||||
// %X% %Q% %Z% %W%
|
||||
|
||||
//## end module.cm
|
||||
|
||||
|
||||
|
||||
//## begin module.cp preserve=no
|
||||
|
||||
//## end module.cp
|
||||
|
||||
|
||||
|
||||
//## Module: DebugGraphics; Pseudo Package specification
|
||||
|
||||
//## Subsystem: Graphic
|
||||
|
||||
//## Source file: H:\WebDocs\skola\Avancerad_C++\Lab4\Rose\Graphic\DbgGrphc.h
|
||||
|
||||
|
||||
|
||||
#ifndef DbgGrphc_h
|
||||
|
||||
#define DbgGrphc_h 1
|
||||
|
||||
|
||||
|
||||
//## begin module.additionalIncludes preserve=no
|
||||
|
||||
//## end module.additionalIncludes
|
||||
|
||||
|
||||
|
||||
//## begin module.includes preserve=yes
|
||||
|
||||
//## end module.includes
|
||||
|
||||
|
||||
|
||||
// Graphics
|
||||
|
||||
#include "Graphic\Graphics.h"
|
||||
|
||||
//## begin module.additionalDeclarations preserve=yes
|
||||
|
||||
#include "H:\WebDocs\skola\Avancerad_C++\Lab4\Rose\Graphic\DbgGrphc.h"
|
||||
|
||||
//## end module.additionalDeclarations
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
//## Class: DebugGraphics
|
||||
|
||||
//## Category: Graphic
|
||||
|
||||
//## Subsystem: Graphic
|
||||
|
||||
//## Persistence: Transient
|
||||
|
||||
//## Cardinality/Multiplicity: n
|
||||
|
||||
|
||||
|
||||
class DebugGraphics : public Graphics //## Inherits: <unnamed>
|
||||
|
||||
{
|
||||
|
||||
//## begin DebugGraphics.initialDeclarations preserve=yes
|
||||
|
||||
//## end DebugGraphics.initialDeclarations
|
||||
|
||||
|
||||
|
||||
public:
|
||||
|
||||
//## Constructors (generated)
|
||||
|
||||
DebugGraphics();
|
||||
|
||||
|
||||
|
||||
//## Destructor (generated)
|
||||
|
||||
~DebugGraphics();
|
||||
|
||||
|
||||
82
Lab4/graphic/graphics.cpp
Normal file
82
Lab4/graphic/graphics.cpp
Normal file
@@ -0,0 +1,82 @@
|
||||
//## begin module.cm preserve=no
|
||||
|
||||
// %X% %Q% %Z% %W%
|
||||
|
||||
//## end module.cm
|
||||
|
||||
|
||||
|
||||
//## begin module.cp preserve=no
|
||||
|
||||
//## end module.cp
|
||||
|
||||
|
||||
|
||||
//## Module: Graphics; Pseudo Package body
|
||||
|
||||
//## Subsystem: Graphic
|
||||
|
||||
//## Source file: H:\WebDocs\skola\Avancerad_C++\Lab4\Rose\Graphic\Graphics.cpp
|
||||
|
||||
|
||||
|
||||
//## begin module.additionalIncludes preserve=no
|
||||
|
||||
//## end module.additionalIncludes
|
||||
|
||||
|
||||
|
||||
//## begin module.includes preserve=yes
|
||||
|
||||
//## end module.includes
|
||||
|
||||
|
||||
|
||||
// Graphics
|
||||
|
||||
#include "Graphic\Graphics.h"
|
||||
|
||||
//## begin module.additionalDeclarations preserve=yes
|
||||
|
||||
#include <iostream.h>
|
||||
|
||||
//## end module.additionalDeclarations
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
// Class Graphics
|
||||
|
||||
|
||||
|
||||
Graphics::Graphics()
|
||||
|
||||
//## begin Graphics::Graphics%.hasinit preserve=no
|
||||
|
||||
//## end Graphics::Graphics%.hasinit
|
||||
|
||||
//## begin Graphics::Graphics%.initialization preserve=yes
|
||||
|
||||
//## end Graphics::Graphics%.initialization
|
||||
|
||||
{
|
||||
|
||||
//## begin Graphics::Graphics%.body preserve=yes
|
||||
|
||||
//## end Graphics::Graphics%.body
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
Graphics::~Graphics()
|
||||
|
||||
{
|
||||
|
||||
//## begin Graphics::~Graphics%.body preserve=yes
|
||||
|
||||
//## end Graphics::~Graphics%.body
|
||||
|
||||
95
Lab4/graphic/graphics.h
Normal file
95
Lab4/graphic/graphics.h
Normal file
@@ -0,0 +1,95 @@
|
||||
//## begin module.cm preserve=no
|
||||
|
||||
// %X% %Q% %Z% %W%
|
||||
|
||||
//## end module.cm
|
||||
|
||||
|
||||
|
||||
//## begin module.cp preserve=no
|
||||
|
||||
//## end module.cp
|
||||
|
||||
|
||||
|
||||
//## Module: Graphics; Pseudo Package specification
|
||||
|
||||
//## Subsystem: Graphic
|
||||
|
||||
//## Source file: H:\WebDocs\skola\Avancerad_C++\Lab4\Rose\Graphic\Graphics.h
|
||||
|
||||
|
||||
|
||||
#ifndef Graphics_h
|
||||
|
||||
#define Graphics_h 1
|
||||
|
||||
|
||||
|
||||
//## begin module.additionalIncludes preserve=no
|
||||
|
||||
//## end module.additionalIncludes
|
||||
|
||||
|
||||
|
||||
//## begin module.includes preserve=yes
|
||||
|
||||
#include "Point.h"
|
||||
|
||||
//## end module.includes
|
||||
|
||||
|
||||
|
||||
// Point
|
||||
|
||||
#include "H:\WebDocs\skola\Avancerad_C++\Lab4\Rose\Point.h"
|
||||
|
||||
//## begin module.additionalDeclarations preserve=yes
|
||||
|
||||
typedef int Color;
|
||||
|
||||
//## end module.additionalDeclarations
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
//## Class: Graphics; Abstract
|
||||
|
||||
//## Category: Graphic
|
||||
|
||||
//## Subsystem: Graphic
|
||||
|
||||
//## Persistence: Transient
|
||||
|
||||
//## Cardinality/Multiplicity: n
|
||||
|
||||
|
||||
|
||||
//## Uses: <unnamed>; Point { -> }
|
||||
|
||||
|
||||
|
||||
class Graphics
|
||||
|
||||
{
|
||||
|
||||
//## begin Graphics.initialDeclarations preserve=yes
|
||||
|
||||
//## end Graphics.initialDeclarations
|
||||
|
||||
|
||||
|
||||
public:
|
||||
|
||||
//## Constructors (generated)
|
||||
|
||||
Graphics();
|
||||
|
||||
|
||||
|
||||
//## Destructor (generated)
|
||||
|
||||
~Graphics();
|
||||
|
||||
|
||||
120
Lab4/line.cpp
Normal file
120
Lab4/line.cpp
Normal file
@@ -0,0 +1,120 @@
|
||||
//## begin module.cm preserve=no
|
||||
|
||||
// %X% %Q% %Z% %W%
|
||||
|
||||
//## end module.cm
|
||||
|
||||
|
||||
|
||||
//## begin module.cp preserve=no
|
||||
|
||||
//## end module.cp
|
||||
|
||||
|
||||
|
||||
//## Module: Line; Pseudo Package body
|
||||
|
||||
//## Subsystem: Figures
|
||||
|
||||
//## Source file: H:\WebDocs\skola\Avancerad_C++\Lab4\Rose\Line.cpp
|
||||
|
||||
|
||||
|
||||
//## begin module.additionalIncludes preserve=no
|
||||
|
||||
//## end module.additionalIncludes
|
||||
|
||||
|
||||
|
||||
//## begin module.includes preserve=yes
|
||||
|
||||
//## end module.includes
|
||||
|
||||
|
||||
|
||||
// Line
|
||||
|
||||
#include "H:\WebDocs\skola\Avancerad_C++\Lab4\Rose\Line.h"
|
||||
|
||||
//## begin module.additionalDeclarations preserve=yes
|
||||
|
||||
#include <iostream.h>
|
||||
|
||||
//## end module.additionalDeclarations
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
// Class Line
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
Line::Line (int x1, int y1, int x2, int y2, Color color)
|
||||
|
||||
//## begin Line::Line%939623930.hasinit preserve=no
|
||||
|
||||
//## end Line::Line%939623930.hasinit
|
||||
|
||||
//## begin Line::Line%939623930.initialization preserve=yes
|
||||
|
||||
//## end Line::Line%939623930.initialization
|
||||
|
||||
{
|
||||
|
||||
//## begin Line::Line%939623930.body preserve=yes
|
||||
|
||||
setColor(color);
|
||||
|
||||
|
||||
|
||||
Point start, end;
|
||||
|
||||
start.setx(x1);
|
||||
|
||||
start.sety(y1);
|
||||
|
||||
end.setx(x2);
|
||||
|
||||
end.sety(y2);
|
||||
|
||||
myPoints.add(myPoints.getSize(), start);
|
||||
|
||||
myPoints.add(myPoints.getSize(), end);
|
||||
|
||||
//## end Line::Line%939623930.body
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
Line::~Line()
|
||||
|
||||
{
|
||||
|
||||
//## begin Line::~Line%.body preserve=yes
|
||||
|
||||
//## end Line::~Line%.body
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
//## Other Operations (implementation)
|
||||
|
||||
void Line::draw (Graphics &g)
|
||||
|
||||
{
|
||||
|
||||
//## begin Line::draw%937398668.body preserve=yes
|
||||
|
||||
Point start,end;
|
||||
|
||||
101
Lab4/line.h
Normal file
101
Lab4/line.h
Normal file
@@ -0,0 +1,101 @@
|
||||
//## begin module.cm preserve=no
|
||||
|
||||
// %X% %Q% %Z% %W%
|
||||
|
||||
//## end module.cm
|
||||
|
||||
|
||||
|
||||
//## begin module.cp preserve=no
|
||||
|
||||
//## end module.cp
|
||||
|
||||
|
||||
|
||||
//## Module: Line; Pseudo Package specification
|
||||
|
||||
//## Subsystem: Figures
|
||||
|
||||
//## Source file: H:\WebDocs\skola\Avancerad_C++\Lab4\Rose\Line.h
|
||||
|
||||
|
||||
|
||||
#ifndef Line_h
|
||||
|
||||
#define Line_h 1
|
||||
|
||||
|
||||
|
||||
//## begin module.additionalIncludes preserve=no
|
||||
|
||||
//## end module.additionalIncludes
|
||||
|
||||
|
||||
|
||||
//## begin module.includes preserve=yes
|
||||
|
||||
//## end module.includes
|
||||
|
||||
|
||||
|
||||
// pList
|
||||
|
||||
#include "H:\WebDocs\skola\Avancerad_C++\Lab4\Rose\pList.h"
|
||||
|
||||
// Figure
|
||||
|
||||
#include "H:\WebDocs\skola\Avancerad_C++\Lab4\Rose\Figure.h"
|
||||
|
||||
//## begin module.additionalDeclarations preserve=yes
|
||||
|
||||
//## end module.additionalDeclarations
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
//## Class: Line
|
||||
|
||||
//## Category: Figures
|
||||
|
||||
//## Subsystem: Figures
|
||||
|
||||
//## Persistence: Transient
|
||||
|
||||
//## Cardinality/Multiplicity: n
|
||||
|
||||
|
||||
|
||||
class Line : public Figure //## Inherits: <unnamed>
|
||||
|
||||
{
|
||||
|
||||
//## begin Line.initialDeclarations preserve=yes
|
||||
|
||||
//## end Line.initialDeclarations
|
||||
|
||||
|
||||
|
||||
public:
|
||||
|
||||
//## Constructors (specified)
|
||||
|
||||
//## Operation: Line%939623930
|
||||
|
||||
Line (int x1, int y1, int x2, int y2, Color color);
|
||||
|
||||
|
||||
|
||||
//## Destructor (generated)
|
||||
|
||||
~Line();
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
//## Other Operations (specified)
|
||||
|
||||
//## Operation: draw%937398668
|
||||
|
||||
void draw (Graphics &g);
|
||||
136
Lab4/list.cpp
Normal file
136
Lab4/list.cpp
Normal file
@@ -0,0 +1,136 @@
|
||||
//## begin module.cm preserve=no
|
||||
|
||||
// %X% %Q% %Z% %W%
|
||||
|
||||
//## end module.cm
|
||||
|
||||
|
||||
|
||||
//## begin module.cp preserve=no
|
||||
|
||||
//## end module.cp
|
||||
|
||||
|
||||
|
||||
//## Module: List; Pseudo Package body
|
||||
|
||||
//## Subsystem: Figures
|
||||
|
||||
//## Source file: H:\WebDocs\skola\Avancerad_C++\Lab4\Rose\List.cpp
|
||||
|
||||
|
||||
|
||||
//## begin module.additionalIncludes preserve=no
|
||||
|
||||
//## end module.additionalIncludes
|
||||
|
||||
|
||||
|
||||
//## begin module.includes preserve=yes
|
||||
|
||||
//## end module.includes
|
||||
|
||||
|
||||
|
||||
// List
|
||||
|
||||
#include "H:\WebDocs\skola\Avancerad_C++\Lab4\Rose\List.h"
|
||||
|
||||
//## begin module.additionalDeclarations preserve=yes
|
||||
|
||||
#include <stdio.h>
|
||||
|
||||
#include <iostream.h>
|
||||
|
||||
//## end module.additionalDeclarations
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
// Parameterized Class List
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
template <class T>
|
||||
|
||||
List<T>::List()
|
||||
|
||||
//## begin List::List%.hasinit preserve=no
|
||||
|
||||
: size(0)
|
||||
|
||||
//## end List::List%.hasinit
|
||||
|
||||
//## begin List::List%.initialization preserve=yes
|
||||
|
||||
//## end List::List%.initialization
|
||||
|
||||
{
|
||||
|
||||
//## begin List::List%.body preserve=yes
|
||||
|
||||
head=NULL;
|
||||
|
||||
//## end List::List%.body
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
template <class T>
|
||||
|
||||
List<T>::~List()
|
||||
|
||||
{
|
||||
|
||||
//## begin List::~List%.body preserve=yes
|
||||
|
||||
delete head;
|
||||
|
||||
//## end List::~List%.body
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
//## Other Operations (implementation)
|
||||
|
||||
template <class T>
|
||||
|
||||
void List<T>::add (int position, T item)
|
||||
|
||||
{
|
||||
|
||||
//## begin List::add%937398674.body preserve=yes
|
||||
|
||||
|
||||
|
||||
size++;
|
||||
|
||||
Node<T>* newPtr = new Node<T>(item);
|
||||
|
||||
|
||||
|
||||
if (position==0) {
|
||||
|
||||
newPtr->next=head;
|
||||
|
||||
head=newPtr;
|
||||
|
||||
}
|
||||
|
||||
else {
|
||||
|
||||
Node<T>* prev=head;
|
||||
|
||||
111
Lab4/list.h
Normal file
111
Lab4/list.h
Normal file
@@ -0,0 +1,111 @@
|
||||
//## begin module.cm preserve=no
|
||||
|
||||
// %X% %Q% %Z% %W%
|
||||
|
||||
//## end module.cm
|
||||
|
||||
|
||||
|
||||
//## begin module.cp preserve=no
|
||||
|
||||
//## end module.cp
|
||||
|
||||
|
||||
|
||||
//## Module: List; Pseudo Package specification
|
||||
|
||||
//## Subsystem: Figures
|
||||
|
||||
//## Source file: H:\WebDocs\skola\Avancerad_C++\Lab4\Rose\List.h
|
||||
|
||||
|
||||
|
||||
#ifndef List_h
|
||||
|
||||
#define List_h 1
|
||||
|
||||
|
||||
|
||||
//## begin module.additionalIncludes preserve=no
|
||||
|
||||
//## end module.additionalIncludes
|
||||
|
||||
|
||||
|
||||
//## begin module.includes preserve=yes
|
||||
|
||||
//## end module.includes
|
||||
|
||||
|
||||
|
||||
// Node
|
||||
|
||||
#include "H:\WebDocs\skola\Avancerad_C++\Lab4\Rose\Node.h"
|
||||
|
||||
//## begin module.additionalDeclarations preserve=yes
|
||||
|
||||
//## end module.additionalDeclarations
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
//## Class: List; Parameterized Class
|
||||
|
||||
//## Category: Figures
|
||||
|
||||
//## Subsystem: Figures
|
||||
|
||||
//## Persistence: Transient
|
||||
|
||||
//## Cardinality/Multiplicity: n
|
||||
|
||||
|
||||
|
||||
template <class T>
|
||||
|
||||
class List
|
||||
|
||||
{
|
||||
|
||||
//## begin List.initialDeclarations preserve=yes
|
||||
|
||||
//## end List.initialDeclarations
|
||||
|
||||
|
||||
|
||||
public:
|
||||
|
||||
//## Constructors (generated)
|
||||
|
||||
List();
|
||||
|
||||
|
||||
|
||||
//## Destructor (generated)
|
||||
|
||||
~List();
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
//## Other Operations (specified)
|
||||
|
||||
//## Operation: add%937398674
|
||||
|
||||
// Denna sätter in grejjer i listan...
|
||||
|
||||
void add (int position, T item);
|
||||
|
||||
|
||||
|
||||
//## Operation: del%937398675
|
||||
|
||||
void del (int position);
|
||||
|
||||
|
||||
|
||||
//## Operation: isEmpty%937398676
|
||||
|
||||
bool isEmpty ();
|
||||
61
Lab4/main.cpp
Normal file
61
Lab4/main.cpp
Normal file
@@ -0,0 +1,61 @@
|
||||
//#
|
||||
|
||||
//# main.c
|
||||
|
||||
//#
|
||||
|
||||
//# =======================================================
|
||||
|
||||
//# Lab i Avacerad C++
|
||||
|
||||
//# 4. Figures
|
||||
|
||||
//#
|
||||
|
||||
//#
|
||||
|
||||
//# Christian Ohlsson
|
||||
|
||||
//# Daniel Alfredsson
|
||||
|
||||
//# Karlstads universitet
|
||||
|
||||
//# 991013
|
||||
|
||||
//# =======================================================
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
#include <iostream.h>
|
||||
|
||||
#include "Graphic\Graphics.h"
|
||||
|
||||
#include "line.h"
|
||||
|
||||
#include "rectngle.h"
|
||||
|
||||
#include "circle.h"
|
||||
|
||||
#include "flist.h"
|
||||
|
||||
#include "CmplxFgr.h"
|
||||
|
||||
|
||||
|
||||
void main(void) {
|
||||
|
||||
ComplexFigure cf;
|
||||
|
||||
FList myList;
|
||||
|
||||
Graphics g;
|
||||
|
||||
|
||||
|
||||
Line l(0,0,0,10, 9);
|
||||
|
||||
l.add(20,20);
|
||||
|
||||
|
||||
66
Lab4/node.cpp
Normal file
66
Lab4/node.cpp
Normal file
@@ -0,0 +1,66 @@
|
||||
//## begin module.cm preserve=no
|
||||
|
||||
// %X% %Q% %Z% %W%
|
||||
|
||||
//## end module.cm
|
||||
|
||||
|
||||
|
||||
//## begin module.cp preserve=no
|
||||
|
||||
//## end module.cp
|
||||
|
||||
|
||||
|
||||
//## Module: Node; Pseudo Package body
|
||||
|
||||
//## Subsystem: Figures
|
||||
|
||||
//## Source file: H:\WebDocs\skola\Avancerad_C++\Lab4\Rose\Node.cpp
|
||||
|
||||
|
||||
|
||||
//## begin module.additionalIncludes preserve=no
|
||||
|
||||
//## end module.additionalIncludes
|
||||
|
||||
|
||||
|
||||
//## begin module.includes preserve=yes
|
||||
|
||||
//## end module.includes
|
||||
|
||||
|
||||
|
||||
// Node
|
||||
|
||||
#include "H:\WebDocs\skola\Avancerad_C++\Lab4\Rose\Node.h"
|
||||
|
||||
//## begin module.additionalDeclarations preserve=yes
|
||||
|
||||
//## end module.additionalDeclarations
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
// Parameterized Class Node
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
template <class T>
|
||||
|
||||
Node<T>::Node()
|
||||
|
||||
//## begin Node::Node%.hasinit preserve=no
|
||||
|
||||
//## end Node::Node%.hasinit
|
||||
|
||||
//## begin Node::Node%.initialization preserve=yes
|
||||
|
||||
//## end Node::Node%.initialization
|
||||
|
||||
97
Lab4/node.h
Normal file
97
Lab4/node.h
Normal file
@@ -0,0 +1,97 @@
|
||||
//## begin module.cm preserve=no
|
||||
|
||||
// %X% %Q% %Z% %W%
|
||||
|
||||
//## end module.cm
|
||||
|
||||
|
||||
|
||||
//## begin module.cp preserve=no
|
||||
|
||||
//## end module.cp
|
||||
|
||||
|
||||
|
||||
//## Module: Node; Pseudo Package specification
|
||||
|
||||
//## Subsystem: Figures
|
||||
|
||||
//## Source file: H:\WebDocs\skola\Avancerad_C++\Lab4\Rose\Node.h
|
||||
|
||||
|
||||
|
||||
#ifndef Node_h
|
||||
|
||||
#define Node_h 1
|
||||
|
||||
|
||||
|
||||
//## begin module.additionalIncludes preserve=no
|
||||
|
||||
//## end module.additionalIncludes
|
||||
|
||||
|
||||
|
||||
//## begin module.includes preserve=yes
|
||||
|
||||
//## end module.includes
|
||||
|
||||
|
||||
|
||||
//## begin module.additionalDeclarations preserve=yes
|
||||
|
||||
//## end module.additionalDeclarations
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
//## Class: Node; Parameterized Class
|
||||
|
||||
// detta är lite dokumentation
|
||||
|
||||
//## Category: Figures
|
||||
|
||||
//## Subsystem: Figures
|
||||
|
||||
//## Persistence: Transient
|
||||
|
||||
//## Cardinality/Multiplicity: n
|
||||
|
||||
|
||||
|
||||
template <class T>
|
||||
|
||||
class Node
|
||||
|
||||
{
|
||||
|
||||
//## begin Node.initialDeclarations preserve=yes
|
||||
|
||||
public:
|
||||
|
||||
Node(T theData):data(theData){next = (Node<T>*)0;}
|
||||
|
||||
//## end Node.initialDeclarations
|
||||
|
||||
|
||||
|
||||
public:
|
||||
|
||||
//## Constructors (generated)
|
||||
|
||||
Node();
|
||||
|
||||
|
||||
|
||||
//## Destructor (generated)
|
||||
|
||||
~Node();
|
||||
|
||||
|
||||
|
||||
// Additional Public Declarations
|
||||
|
||||
//## begin Node.public preserve=yes
|
||||
|
||||
Node *next;
|
||||
30
Lab4/plist.cpp
Normal file
30
Lab4/plist.cpp
Normal file
@@ -0,0 +1,30 @@
|
||||
//## begin module.cm preserve=no
|
||||
|
||||
// %X% %Q% %Z% %W%
|
||||
|
||||
//## end module.cm
|
||||
|
||||
|
||||
|
||||
//## begin module.cp preserve=no
|
||||
|
||||
//## end module.cp
|
||||
|
||||
|
||||
|
||||
//## Module: pList; Pseudo Package body
|
||||
|
||||
//## Subsystem: Figures
|
||||
|
||||
//## Source file: H:\WebDocs\skola\Avancerad_C++\Lab4\Rose\pList.cpp
|
||||
|
||||
|
||||
|
||||
//## begin module.additionalIncludes preserve=no
|
||||
|
||||
//## end module.additionalIncludes
|
||||
|
||||
|
||||
|
||||
//## begin module.includes preserve=yes
|
||||
|
||||
48
Lab4/plist.h
Normal file
48
Lab4/plist.h
Normal file
@@ -0,0 +1,48 @@
|
||||
//## begin module.cm preserve=no
|
||||
|
||||
// %X% %Q% %Z% %W%
|
||||
|
||||
//## end module.cm
|
||||
|
||||
|
||||
|
||||
//## begin module.cp preserve=no
|
||||
|
||||
//## end module.cp
|
||||
|
||||
|
||||
|
||||
//## Module: pList; Pseudo Package specification
|
||||
|
||||
//## Subsystem: Figures
|
||||
|
||||
//## Source file: H:\WebDocs\skola\Avancerad_C++\Lab4\Rose\pList.h
|
||||
|
||||
|
||||
|
||||
#ifndef pList_h
|
||||
|
||||
#define pList_h 1
|
||||
|
||||
|
||||
|
||||
//## begin module.additionalIncludes preserve=no
|
||||
|
||||
//## end module.additionalIncludes
|
||||
|
||||
|
||||
|
||||
//## begin module.includes preserve=yes
|
||||
|
||||
//## end module.includes
|
||||
|
||||
|
||||
|
||||
// List
|
||||
|
||||
#include "H:\WebDocs\skola\Avancerad_C++\Lab4\Rose\List.h"
|
||||
|
||||
// Point
|
||||
|
||||
#include "H:\WebDocs\skola\Avancerad_C++\Lab4\Rose\Point.h"
|
||||
|
||||
83
Lab4/point.cpp
Normal file
83
Lab4/point.cpp
Normal file
@@ -0,0 +1,83 @@
|
||||
//## begin module.cm preserve=no
|
||||
|
||||
// %X% %Q% %Z% %W%
|
||||
|
||||
//## end module.cm
|
||||
|
||||
|
||||
|
||||
//## begin module.cp preserve=no
|
||||
|
||||
//## end module.cp
|
||||
|
||||
|
||||
|
||||
//## Module: Point; Pseudo Package body
|
||||
|
||||
//## Subsystem: Figures
|
||||
|
||||
//## Source file: H:\WebDocs\skola\Avancerad_C++\Lab4\Rose\Point.cpp
|
||||
|
||||
|
||||
|
||||
//## begin module.additionalIncludes preserve=no
|
||||
|
||||
//## end module.additionalIncludes
|
||||
|
||||
|
||||
|
||||
//## begin module.includes preserve=yes
|
||||
|
||||
//## end module.includes
|
||||
|
||||
|
||||
|
||||
// Point
|
||||
|
||||
#include "H:\WebDocs\skola\Avancerad_C++\Lab4\Rose\Point.h"
|
||||
|
||||
//## begin module.additionalDeclarations preserve=yes
|
||||
|
||||
//## end module.additionalDeclarations
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
// Class Point
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
Point::Point()
|
||||
|
||||
//## begin Point::Point%.hasinit preserve=no
|
||||
|
||||
//## end Point::Point%.hasinit
|
||||
|
||||
//## begin Point::Point%.initialization preserve=yes
|
||||
|
||||
//## end Point::Point%.initialization
|
||||
|
||||
{
|
||||
|
||||
//## begin Point::Point%.body preserve=yes
|
||||
|
||||
//## end Point::Point%.body
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
Point::~Point()
|
||||
|
||||
{
|
||||
|
||||
//## begin Point::~Point%.body preserve=yes
|
||||
|
||||
//## end Point::~Point%.body
|
||||
101
Lab4/point.h
Normal file
101
Lab4/point.h
Normal file
@@ -0,0 +1,101 @@
|
||||
//## begin module.cm preserve=no
|
||||
|
||||
// %X% %Q% %Z% %W%
|
||||
|
||||
//## end module.cm
|
||||
|
||||
|
||||
|
||||
//## begin module.cp preserve=no
|
||||
|
||||
//## end module.cp
|
||||
|
||||
|
||||
|
||||
//## Module: Point; Pseudo Package specification
|
||||
|
||||
//## Subsystem: Figures
|
||||
|
||||
//## Source file: H:\WebDocs\skola\Avancerad_C++\Lab4\Rose\Point.h
|
||||
|
||||
|
||||
|
||||
#ifndef Point_h
|
||||
|
||||
#define Point_h 1
|
||||
|
||||
|
||||
|
||||
//## begin module.additionalIncludes preserve=no
|
||||
|
||||
//## end module.additionalIncludes
|
||||
|
||||
|
||||
|
||||
//## begin module.includes preserve=yes
|
||||
|
||||
//## end module.includes
|
||||
|
||||
|
||||
|
||||
//## begin module.additionalDeclarations preserve=yes
|
||||
|
||||
//## end module.additionalDeclarations
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
//## Class: Point
|
||||
|
||||
//## Category: Figures
|
||||
|
||||
//## Subsystem: Figures
|
||||
|
||||
//## Persistence: Transient
|
||||
|
||||
//## Cardinality/Multiplicity: n
|
||||
|
||||
|
||||
|
||||
class Point
|
||||
|
||||
{
|
||||
|
||||
//## begin Point.initialDeclarations preserve=yes
|
||||
|
||||
//## end Point.initialDeclarations
|
||||
|
||||
|
||||
|
||||
public:
|
||||
|
||||
//## Constructors (generated)
|
||||
|
||||
Point();
|
||||
|
||||
|
||||
|
||||
//## Destructor (generated)
|
||||
|
||||
~Point();
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
//## Other Operations (specified)
|
||||
|
||||
//## Operation: getx%937398664
|
||||
|
||||
int getx ();
|
||||
|
||||
|
||||
|
||||
//## Operation: gety%937398665
|
||||
|
||||
int gety ();
|
||||
|
||||
|
||||
|
||||
//## Operation: setx%937398666
|
||||
107
Lab4/rectngle.cpp
Normal file
107
Lab4/rectngle.cpp
Normal file
@@ -0,0 +1,107 @@
|
||||
//## begin module.cm preserve=no
|
||||
|
||||
// %X% %Q% %Z% %W%
|
||||
|
||||
//## end module.cm
|
||||
|
||||
|
||||
|
||||
//## begin module.cp preserve=no
|
||||
|
||||
//## end module.cp
|
||||
|
||||
|
||||
|
||||
//## Module: Rectangle; Pseudo Package body
|
||||
|
||||
//## Subsystem: Figures
|
||||
|
||||
//## Source file: H:\WebDocs\skola\Avancerad_C++\Lab4\Rose\Rectngle.cpp
|
||||
|
||||
|
||||
|
||||
//## begin module.additionalIncludes preserve=no
|
||||
|
||||
//## end module.additionalIncludes
|
||||
|
||||
|
||||
|
||||
//## begin module.includes preserve=yes
|
||||
|
||||
//## end module.includes
|
||||
|
||||
|
||||
|
||||
// Rectangle
|
||||
|
||||
#include "H:\WebDocs\skola\Avancerad_C++\Lab4\Rose\Rectngle.h"
|
||||
|
||||
//## begin module.additionalDeclarations preserve=yes
|
||||
|
||||
#include <iostream.h>
|
||||
|
||||
//## end module.additionalDeclarations
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
// Class Rectangle
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
Rectangle::Rectangle()
|
||||
|
||||
//## begin Rectangle::Rectangle%.hasinit preserve=no
|
||||
|
||||
//## end Rectangle::Rectangle%.hasinit
|
||||
|
||||
//## begin Rectangle::Rectangle%.initialization preserve=yes
|
||||
|
||||
//## end Rectangle::Rectangle%.initialization
|
||||
|
||||
{
|
||||
|
||||
//## begin Rectangle::Rectangle%.body preserve=yes
|
||||
|
||||
//## end Rectangle::Rectangle%.body
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
Rectangle::Rectangle (int x1, int y1, int x2, int y2, Color color)
|
||||
|
||||
//## begin Rectangle::Rectangle%939623932.hasinit preserve=no
|
||||
|
||||
//## end Rectangle::Rectangle%939623932.hasinit
|
||||
|
||||
//## begin Rectangle::Rectangle%939623932.initialization preserve=yes
|
||||
|
||||
//## end Rectangle::Rectangle%939623932.initialization
|
||||
|
||||
{
|
||||
|
||||
//## begin Rectangle::Rectangle%939623932.body preserve=yes
|
||||
|
||||
setColor(color);
|
||||
|
||||
leftTop.setx(x1);
|
||||
|
||||
leftTop.sety(y1);
|
||||
|
||||
rightBottom.setx(x2);
|
||||
|
||||
rightBottom.sety(y2);
|
||||
|
||||
//## end Rectangle::Rectangle%939623932.body
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
106
Lab4/rectngle.h
Normal file
106
Lab4/rectngle.h
Normal file
@@ -0,0 +1,106 @@
|
||||
//## begin module.cm preserve=no
|
||||
|
||||
// %X% %Q% %Z% %W%
|
||||
|
||||
//## end module.cm
|
||||
|
||||
|
||||
|
||||
//## begin module.cp preserve=no
|
||||
|
||||
//## end module.cp
|
||||
|
||||
|
||||
|
||||
//## Module: Rectangle; Pseudo Package specification
|
||||
|
||||
//## Subsystem: Figures
|
||||
|
||||
//## Source file: H:\WebDocs\skola\Avancerad_C++\Lab4\Rose\Rectngle.h
|
||||
|
||||
|
||||
|
||||
#ifndef Rectngle_h
|
||||
|
||||
#define Rectngle_h 1
|
||||
|
||||
|
||||
|
||||
//## begin module.additionalIncludes preserve=no
|
||||
|
||||
//## end module.additionalIncludes
|
||||
|
||||
|
||||
|
||||
//## begin module.includes preserve=yes
|
||||
|
||||
//## end module.includes
|
||||
|
||||
|
||||
|
||||
// Point
|
||||
|
||||
#include "H:\WebDocs\skola\Avancerad_C++\Lab4\Rose\Point.h"
|
||||
|
||||
// Figure
|
||||
|
||||
#include "H:\WebDocs\skola\Avancerad_C++\Lab4\Rose\Figure.h"
|
||||
|
||||
//## begin module.additionalDeclarations preserve=yes
|
||||
|
||||
//## end module.additionalDeclarations
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
//## Class: Rectangle
|
||||
|
||||
//## Category: Figures
|
||||
|
||||
//## Subsystem: Figures
|
||||
|
||||
//## Persistence: Transient
|
||||
|
||||
//## Cardinality/Multiplicity: n
|
||||
|
||||
|
||||
|
||||
class Rectangle : public Figure //## Inherits: <unnamed>
|
||||
|
||||
{
|
||||
|
||||
//## begin Rectangle.initialDeclarations preserve=yes
|
||||
|
||||
//## end Rectangle.initialDeclarations
|
||||
|
||||
|
||||
|
||||
public:
|
||||
|
||||
//## Constructors (generated)
|
||||
|
||||
Rectangle();
|
||||
|
||||
|
||||
|
||||
//## Constructors (specified)
|
||||
|
||||
//## Operation: Rectangle%939623932
|
||||
|
||||
Rectangle (int x1, int y1, int x2, int y2, Color color);
|
||||
|
||||
|
||||
|
||||
//## Destructor (generated)
|
||||
|
||||
~Rectangle();
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
//## Other Operations (specified)
|
||||
|
||||
//## Operation: draw%937398672
|
||||
|
||||
196
Lab4/rose.dsp
Normal file
196
Lab4/rose.dsp
Normal file
@@ -0,0 +1,196 @@
|
||||
# Microsoft Developer Studio Project File - Name="Rose" - Package Owner=<4>
|
||||
# Microsoft Developer Studio Generated Build File, Format Version 6.00
|
||||
# ** DO NOT EDIT **
|
||||
|
||||
# TARGTYPE "Win32 (x86) Console Application" 0x0103
|
||||
|
||||
CFG=Rose - Win32 Debug
|
||||
!MESSAGE This is not a valid makefile. To build this project using NMAKE,
|
||||
!MESSAGE use the Export Makefile command and run
|
||||
!MESSAGE
|
||||
!MESSAGE NMAKE /f "Rose.mak".
|
||||
!MESSAGE
|
||||
!MESSAGE You can specify a configuration when running NMAKE
|
||||
!MESSAGE by defining the macro CFG on the command line. For example:
|
||||
!MESSAGE
|
||||
!MESSAGE NMAKE /f "Rose.mak" CFG="Rose - Win32 Debug"
|
||||
!MESSAGE
|
||||
!MESSAGE Possible choices for configuration are:
|
||||
!MESSAGE
|
||||
!MESSAGE "Rose - Win32 Release" (based on "Win32 (x86) Console Application")
|
||||
!MESSAGE "Rose - Win32 Debug" (based on "Win32 (x86) Console Application")
|
||||
!MESSAGE
|
||||
|
||||
# Begin Project
|
||||
# PROP AllowPerConfigDependencies 0
|
||||
# PROP Scc_ProjName ""
|
||||
# PROP Scc_LocalPath ""
|
||||
CPP=cl.exe
|
||||
RSC=rc.exe
|
||||
|
||||
!IF "$(CFG)" == "Rose - Win32 Release"
|
||||
|
||||
# PROP BASE Use_MFC 0
|
||||
# PROP BASE Use_Debug_Libraries 0
|
||||
# PROP BASE Output_Dir "Release"
|
||||
# PROP BASE Intermediate_Dir "Release"
|
||||
# PROP BASE Target_Dir ""
|
||||
# PROP Use_MFC 0
|
||||
# PROP Use_Debug_Libraries 0
|
||||
# PROP Output_Dir "Release"
|
||||
# PROP Intermediate_Dir "Release"
|
||||
# PROP Target_Dir ""
|
||||
# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
|
||||
# ADD CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
|
||||
# ADD BASE RSC /l 0x41d /d "NDEBUG"
|
||||
# ADD RSC /l 0x41d /d "NDEBUG"
|
||||
BSC32=bscmake.exe
|
||||
# ADD BASE BSC32 /nologo
|
||||
# ADD BSC32 /nologo
|
||||
LINK32=link.exe
|
||||
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
|
||||
# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
|
||||
|
||||
!ELSEIF "$(CFG)" == "Rose - Win32 Debug"
|
||||
|
||||
# PROP BASE Use_MFC 0
|
||||
# PROP BASE Use_Debug_Libraries 1
|
||||
# PROP BASE Output_Dir "Debug"
|
||||
# PROP BASE Intermediate_Dir "Debug"
|
||||
# PROP BASE Target_Dir ""
|
||||
# PROP Use_MFC 0
|
||||
# PROP Use_Debug_Libraries 1
|
||||
# PROP Output_Dir "Debug"
|
||||
# PROP Intermediate_Dir "Debug"
|
||||
# PROP Target_Dir ""
|
||||
# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c
|
||||
# ADD CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /FR /YX /FD /GZ /c
|
||||
# ADD BASE RSC /l 0x41d /d "_DEBUG"
|
||||
# ADD RSC /l 0x41d /d "_DEBUG"
|
||||
BSC32=bscmake.exe
|
||||
# ADD BASE BSC32 /nologo
|
||||
# ADD BSC32 /nologo
|
||||
LINK32=link.exe
|
||||
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
|
||||
# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
|
||||
|
||||
!ENDIF
|
||||
|
||||
# Begin Target
|
||||
|
||||
# Name "Rose - Win32 Release"
|
||||
# Name "Rose - Win32 Debug"
|
||||
# Begin Group "Source Files"
|
||||
|
||||
# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Circle.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\CmplxFgr.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Graphic\DbgGrphc.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\FgrHlder.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Figure.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Flist.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Graphic\Graphics.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Line.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\main.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\pList.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Point.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Rectngle.cpp
|
||||
# End Source File
|
||||
# End Group
|
||||
# Begin Group "Header Files"
|
||||
|
||||
# PROP Default_Filter "h;hpp;hxx;hm;inl"
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Circle.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\CmplxFgr.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Graphic\DbgGrphc.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\FgrHlder.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Figure.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Flist.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Graphic\Graphics.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Line.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\List.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Node.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\pList.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Point.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Rectngle.h
|
||||
# End Source File
|
||||
# End Group
|
||||
# Begin Group "Resource Files"
|
||||
|
||||
# PROP Default_Filter "ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"
|
||||
# End Group
|
||||
# End Target
|
||||
# End Project
|
||||
29
Lab4/rose.dsw
Normal file
29
Lab4/rose.dsw
Normal file
@@ -0,0 +1,29 @@
|
||||
Microsoft Developer Studio Workspace File, Format Version 6.00
|
||||
# WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE!
|
||||
|
||||
###############################################################################
|
||||
|
||||
Project: "Rose"=".\Rose.dsp" - Package Owner=<4>
|
||||
|
||||
Package=<5>
|
||||
{{{
|
||||
}}}
|
||||
|
||||
Package=<4>
|
||||
{{{
|
||||
}}}
|
||||
|
||||
###############################################################################
|
||||
|
||||
Global:
|
||||
|
||||
Package=<5>
|
||||
{{{
|
||||
}}}
|
||||
|
||||
Package=<3>
|
||||
{{{
|
||||
}}}
|
||||
|
||||
###############################################################################
|
||||
|
||||
118
Lab5/array.h
Normal file
118
Lab5/array.h
Normal file
@@ -0,0 +1,118 @@
|
||||
//##################################################################
|
||||
|
||||
// LAB 5
|
||||
|
||||
// ADVANCED PROGRAMMING IN C++
|
||||
|
||||
// MATRIX/ARRAY WITH TRY-CATCH
|
||||
|
||||
//==================================================================
|
||||
|
||||
// array.h
|
||||
|
||||
// CLASS IMPLEMENTATION AND DEFINITION FOR
|
||||
|
||||
// THE ARRAY
|
||||
|
||||
// Christian Ohlsson
|
||||
|
||||
// Daniel Alfredsson
|
||||
|
||||
// Karlstad 990927
|
||||
|
||||
//==================================================================
|
||||
|
||||
|
||||
|
||||
#include <iostream.h>
|
||||
|
||||
class Array {
|
||||
|
||||
private:
|
||||
|
||||
int size; //The size of the Array
|
||||
|
||||
int *buffer; //Pointer to an int-buffer
|
||||
|
||||
public:
|
||||
|
||||
~Array();
|
||||
|
||||
Array(const int s=0);
|
||||
|
||||
Array(const Array &src);
|
||||
|
||||
void operator = (const Array &src);
|
||||
|
||||
Array Array::operator +(const Array &src);
|
||||
|
||||
int &operator [] (int index) const;
|
||||
|
||||
int getSize() const;
|
||||
|
||||
};
|
||||
|
||||
//################################################################
|
||||
|
||||
// Constructor
|
||||
|
||||
// Creates a new Array
|
||||
|
||||
//================================================================
|
||||
|
||||
Array::Array(const int s) {
|
||||
|
||||
try {
|
||||
|
||||
buffer = new int[s];
|
||||
|
||||
}catch(MemoryError &e){ e.Print(); }
|
||||
|
||||
size= s;
|
||||
|
||||
}
|
||||
|
||||
//################################################################
|
||||
|
||||
// Constructor
|
||||
|
||||
// Copys an array
|
||||
|
||||
//================================================================
|
||||
|
||||
Array::Array(const Array &src) {
|
||||
|
||||
size = src.size;
|
||||
|
||||
try {
|
||||
|
||||
buffer = new int[size];
|
||||
|
||||
}catch(MemoryError &e){ e.Print(); }
|
||||
|
||||
for(int i=0 ; i<size ; i++)
|
||||
|
||||
buffer[i] = src.buffer[i];
|
||||
|
||||
}
|
||||
|
||||
//################################################################
|
||||
|
||||
// Operator overload
|
||||
|
||||
// Allows to assign a Array to another
|
||||
|
||||
//================================================================
|
||||
|
||||
void Array::operator = (const Array &src) {
|
||||
|
||||
delete [] buffer;
|
||||
|
||||
size = src.size;
|
||||
|
||||
try {
|
||||
|
||||
buffer = new int[size];
|
||||
|
||||
}catch(MemoryError &e){ e.Print(); }
|
||||
|
||||
44
Lab5/except.h
Normal file
44
Lab5/except.h
Normal file
@@ -0,0 +1,44 @@
|
||||
//##################################################################
|
||||
|
||||
// LAB 5
|
||||
|
||||
// ADVANCED PROGRAMMING IN C++
|
||||
|
||||
// MATRIX/ARRAY WITH TRY-CATCH
|
||||
|
||||
//==================================================================
|
||||
|
||||
// except.h
|
||||
|
||||
// CLASS IMPLEMENTATION AND DEFINITION FOR
|
||||
|
||||
// ALL ERRORS
|
||||
|
||||
// Christian Ohlsson
|
||||
|
||||
// Daniel Alfredsson
|
||||
|
||||
// Karlstad 990927
|
||||
|
||||
//==================================================================
|
||||
|
||||
|
||||
|
||||
#ifndef _EXCEPT_H_
|
||||
|
||||
#define _EXCEPT_H_
|
||||
|
||||
#include <iostream.h>
|
||||
|
||||
|
||||
|
||||
class Error{
|
||||
|
||||
public:
|
||||
|
||||
virtual void Print() = 0;
|
||||
|
||||
};
|
||||
|
||||
|
||||
|
||||
112
Lab5/lab5.dsp
Normal file
112
Lab5/lab5.dsp
Normal file
@@ -0,0 +1,112 @@
|
||||
# Microsoft Developer Studio Project File - Name="Lab5" - Package Owner=<4>
|
||||
# Microsoft Developer Studio Generated Build File, Format Version 6.00
|
||||
# ** DO NOT EDIT **
|
||||
|
||||
# TARGTYPE "Win32 (x86) Console Application" 0x0103
|
||||
|
||||
CFG=Lab5 - Win32 Debug
|
||||
!MESSAGE This is not a valid makefile. To build this project using NMAKE,
|
||||
!MESSAGE use the Export Makefile command and run
|
||||
!MESSAGE
|
||||
!MESSAGE NMAKE /f "Lab5.mak".
|
||||
!MESSAGE
|
||||
!MESSAGE You can specify a configuration when running NMAKE
|
||||
!MESSAGE by defining the macro CFG on the command line. For example:
|
||||
!MESSAGE
|
||||
!MESSAGE NMAKE /f "Lab5.mak" CFG="Lab5 - Win32 Debug"
|
||||
!MESSAGE
|
||||
!MESSAGE Possible choices for configuration are:
|
||||
!MESSAGE
|
||||
!MESSAGE "Lab5 - Win32 Release" (based on "Win32 (x86) Console Application")
|
||||
!MESSAGE "Lab5 - Win32 Debug" (based on "Win32 (x86) Console Application")
|
||||
!MESSAGE
|
||||
|
||||
# Begin Project
|
||||
# PROP AllowPerConfigDependencies 0
|
||||
# PROP Scc_ProjName ""
|
||||
# PROP Scc_LocalPath ""
|
||||
CPP=cl.exe
|
||||
RSC=rc.exe
|
||||
|
||||
!IF "$(CFG)" == "Lab5 - Win32 Release"
|
||||
|
||||
# PROP BASE Use_MFC 0
|
||||
# PROP BASE Use_Debug_Libraries 0
|
||||
# PROP BASE Output_Dir "Release"
|
||||
# PROP BASE Intermediate_Dir "Release"
|
||||
# PROP BASE Target_Dir ""
|
||||
# PROP Use_MFC 0
|
||||
# PROP Use_Debug_Libraries 0
|
||||
# PROP Output_Dir "Release"
|
||||
# PROP Intermediate_Dir "Release"
|
||||
# PROP Target_Dir ""
|
||||
# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
|
||||
# ADD CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
|
||||
# ADD BASE RSC /l 0x41d /d "NDEBUG"
|
||||
# ADD RSC /l 0x41d /d "NDEBUG"
|
||||
BSC32=bscmake.exe
|
||||
# ADD BASE BSC32 /nologo
|
||||
# ADD BSC32 /nologo
|
||||
LINK32=link.exe
|
||||
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
|
||||
# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
|
||||
|
||||
!ELSEIF "$(CFG)" == "Lab5 - Win32 Debug"
|
||||
|
||||
# PROP BASE Use_MFC 0
|
||||
# PROP BASE Use_Debug_Libraries 1
|
||||
# PROP BASE Output_Dir "Debug"
|
||||
# PROP BASE Intermediate_Dir "Debug"
|
||||
# PROP BASE Target_Dir ""
|
||||
# PROP Use_MFC 0
|
||||
# PROP Use_Debug_Libraries 1
|
||||
# PROP Output_Dir "Debug"
|
||||
# PROP Intermediate_Dir "Debug"
|
||||
# PROP Target_Dir ""
|
||||
# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c
|
||||
# ADD CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c
|
||||
# ADD BASE RSC /l 0x41d /d "_DEBUG"
|
||||
# ADD RSC /l 0x41d /d "_DEBUG"
|
||||
BSC32=bscmake.exe
|
||||
# ADD BASE BSC32 /nologo
|
||||
# ADD BSC32 /nologo
|
||||
LINK32=link.exe
|
||||
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
|
||||
# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
|
||||
|
||||
!ENDIF
|
||||
|
||||
# Begin Target
|
||||
|
||||
# Name "Lab5 - Win32 Release"
|
||||
# Name "Lab5 - Win32 Debug"
|
||||
# Begin Group "Source Files"
|
||||
|
||||
# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\matrix.cpp
|
||||
# End Source File
|
||||
# End Group
|
||||
# Begin Group "Header Files"
|
||||
|
||||
# PROP Default_Filter "h;hpp;hxx;hm;inl"
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\array.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\except.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\matrix.h
|
||||
# End Source File
|
||||
# End Group
|
||||
# Begin Group "Resource Files"
|
||||
|
||||
# PROP Default_Filter "ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"
|
||||
# End Group
|
||||
# End Target
|
||||
# End Project
|
||||
29
Lab5/lab5.dsw
Normal file
29
Lab5/lab5.dsw
Normal file
@@ -0,0 +1,29 @@
|
||||
Microsoft Developer Studio Workspace File, Format Version 6.00
|
||||
# WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE!
|
||||
|
||||
###############################################################################
|
||||
|
||||
Project: "Lab5"=".\Lab5.dsp" - Package Owner=<4>
|
||||
|
||||
Package=<5>
|
||||
{{{
|
||||
}}}
|
||||
|
||||
Package=<4>
|
||||
{{{
|
||||
}}}
|
||||
|
||||
###############################################################################
|
||||
|
||||
Global:
|
||||
|
||||
Package=<5>
|
||||
{{{
|
||||
}}}
|
||||
|
||||
Package=<3>
|
||||
{{{
|
||||
}}}
|
||||
|
||||
###############################################################################
|
||||
|
||||
24
Lab5/matrix.cpp
Normal file
24
Lab5/matrix.cpp
Normal file
@@ -0,0 +1,24 @@
|
||||
//matrix.cpp
|
||||
|
||||
#include "matrix.h"
|
||||
|
||||
int main() {
|
||||
|
||||
Array a(2); //Sätt till 3 om du vill ha SizeError
|
||||
|
||||
Matrix b (2,2);
|
||||
|
||||
cout << "input Array: " << endl;
|
||||
|
||||
cin>>a;
|
||||
|
||||
cout << "input Matrix: " << endl;
|
||||
|
||||
cin >>b;
|
||||
|
||||
|
||||
|
||||
try {
|
||||
|
||||
// b[2] = a; //Ta med om du vill ha RangeError
|
||||
|
||||
120
Lab5/matrix.h
Normal file
120
Lab5/matrix.h
Normal file
@@ -0,0 +1,120 @@
|
||||
//##################################################################
|
||||
|
||||
// LAB 5
|
||||
|
||||
// ADVANCED PROGRAMMING IN C++
|
||||
|
||||
// MATRIX/ARRAY WITH TRY-CATCH
|
||||
|
||||
//==================================================================
|
||||
|
||||
// matrix.h
|
||||
|
||||
// CLASS IMPLEMENTATION AND DEFINITION FOR
|
||||
|
||||
// THE MATRIX
|
||||
|
||||
// Christian Ohlsson
|
||||
|
||||
// Daniel Alfredsson
|
||||
|
||||
// Karlstad 990907
|
||||
|
||||
//==================================================================
|
||||
|
||||
|
||||
|
||||
#include <stdlib.h>
|
||||
|
||||
#include "except.h"
|
||||
|
||||
#include "array.h"
|
||||
|
||||
|
||||
|
||||
class Matrix {
|
||||
|
||||
private:
|
||||
|
||||
int cols, rows; //# of cols and rows in the matrix
|
||||
|
||||
Array *myMatrix; //Array-pointer to our matrix
|
||||
|
||||
public:
|
||||
|
||||
void Matrix::operator = (const Matrix &src);
|
||||
|
||||
int getCols() const { return cols;};
|
||||
|
||||
int getRows() const { return rows;};
|
||||
|
||||
Array &Matrix::operator [] (int index) const;
|
||||
|
||||
Matrix(const Matrix &src);
|
||||
|
||||
Matrix(int cols, int rows);
|
||||
|
||||
~Matrix();
|
||||
|
||||
|
||||
|
||||
};
|
||||
|
||||
//################################################################
|
||||
|
||||
// Constructor
|
||||
|
||||
// Creates a new Matrix with 'c' columns and 'r' rows
|
||||
|
||||
//================================================================
|
||||
|
||||
Matrix::Matrix(int c, int r) {
|
||||
|
||||
try {
|
||||
|
||||
myMatrix = new Array[r];
|
||||
|
||||
}catch(MemoryError &e){ e.Print(); }
|
||||
|
||||
|
||||
|
||||
for(int i=0; i < c; i++)
|
||||
|
||||
myMatrix[i] = Array(c);
|
||||
|
||||
cols = c;
|
||||
|
||||
rows = r;
|
||||
|
||||
}
|
||||
|
||||
//################################################################
|
||||
|
||||
// Constructor
|
||||
|
||||
// Creates a new copy of a Matrix
|
||||
|
||||
//================================================================
|
||||
|
||||
Matrix::Matrix(const Matrix &src) {
|
||||
|
||||
cols = src.cols;
|
||||
|
||||
rows = src.rows;
|
||||
|
||||
int i,j;
|
||||
|
||||
try {
|
||||
|
||||
myMatrix = new Array[rows];
|
||||
|
||||
}catch(MemoryError &e){ e.Print(); }
|
||||
|
||||
|
||||
|
||||
for(i=0; i < cols; i++)
|
||||
|
||||
myMatrix[i] = Array(cols);
|
||||
|
||||
for(i=0 ; i < cols ; i++)
|
||||
|
||||
7910
Lab6/RoseModel.mdl
Normal file
7910
Lab6/RoseModel.mdl
Normal file
File diff suppressed because it is too large
Load Diff
105
Lab6/circle.cpp
Normal file
105
Lab6/circle.cpp
Normal file
@@ -0,0 +1,105 @@
|
||||
//## begin module.cm preserve=no
|
||||
|
||||
// %X% %Q% %Z% %W%
|
||||
|
||||
//## end module.cm
|
||||
|
||||
|
||||
|
||||
//## begin module.cp preserve=no
|
||||
|
||||
//## end module.cp
|
||||
|
||||
|
||||
|
||||
//## Module: Circle; Pseudo Package body
|
||||
|
||||
//## Subsystem: Figures
|
||||
|
||||
//## Source file: Circle.cpp
|
||||
|
||||
|
||||
|
||||
//## begin module.additionalIncludes preserve=no
|
||||
|
||||
//## end module.additionalIncludes
|
||||
|
||||
|
||||
|
||||
//## begin module.includes preserve=yes
|
||||
|
||||
//## end module.includes
|
||||
|
||||
|
||||
|
||||
// Circle
|
||||
|
||||
#include "Circle.h"
|
||||
|
||||
//## begin module.additionalDeclarations preserve=yes
|
||||
|
||||
//## end module.additionalDeclarations
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
// Class Circle
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
Circle::Circle()
|
||||
|
||||
//## begin Circle::Circle%.hasinit preserve=no
|
||||
|
||||
//## end Circle::Circle%.hasinit
|
||||
|
||||
//## begin Circle::Circle%.initialization preserve=yes
|
||||
|
||||
//## end Circle::Circle%.initialization
|
||||
|
||||
{
|
||||
|
||||
//## begin Circle::Circle%.body preserve=yes
|
||||
|
||||
//## end Circle::Circle%.body
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
Circle::Circle (int x, int y, int r, Color color)
|
||||
|
||||
//## begin Circle::Circle%939623931.hasinit preserve=no
|
||||
|
||||
//## end Circle::Circle%939623931.hasinit
|
||||
|
||||
//## begin Circle::Circle%939623931.initialization preserve=yes
|
||||
|
||||
//## end Circle::Circle%939623931.initialization
|
||||
|
||||
{
|
||||
|
||||
//## begin Circle::Circle%939623931.body preserve=yes
|
||||
|
||||
setColor(color);
|
||||
|
||||
center.setx(x);
|
||||
|
||||
center.sety(y);
|
||||
|
||||
radius=r;
|
||||
|
||||
//## end Circle::Circle%939623931.body
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
Circle::~Circle()
|
||||
116
Lab6/circle.h
Normal file
116
Lab6/circle.h
Normal file
@@ -0,0 +1,116 @@
|
||||
//## begin module.cm preserve=no
|
||||
|
||||
// %X% %Q% %Z% %W%
|
||||
|
||||
//## end module.cm
|
||||
|
||||
|
||||
|
||||
//## begin module.cp preserve=no
|
||||
|
||||
//## end module.cp
|
||||
|
||||
|
||||
|
||||
//## Module: Circle; Pseudo Package specification
|
||||
|
||||
//## Subsystem: Figures
|
||||
|
||||
//## Source file: Circle.h
|
||||
|
||||
|
||||
|
||||
#ifndef Circle_h
|
||||
|
||||
#define Circle_h 1
|
||||
|
||||
|
||||
|
||||
//## begin module.additionalIncludes preserve=no
|
||||
|
||||
//## end module.additionalIncludes
|
||||
|
||||
|
||||
|
||||
//## begin module.includes preserve=yes
|
||||
|
||||
//## end module.includes
|
||||
|
||||
|
||||
|
||||
// Point
|
||||
|
||||
#include "Point.h"
|
||||
|
||||
// Figure
|
||||
|
||||
#include "Figure.h"
|
||||
|
||||
//## begin module.additionalDeclarations preserve=yes
|
||||
|
||||
//## end module.additionalDeclarations
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
//## Class: Circle
|
||||
|
||||
//## Category: Figures
|
||||
|
||||
//## Subsystem: Figures
|
||||
|
||||
//## Persistence: Transient
|
||||
|
||||
//## Cardinality/Multiplicity: n
|
||||
|
||||
|
||||
|
||||
class Circle : virtual public Figure //## Inherits: <unnamed>
|
||||
|
||||
{
|
||||
|
||||
//## begin Circle.initialDeclarations preserve=yes
|
||||
|
||||
//## end Circle.initialDeclarations
|
||||
|
||||
|
||||
|
||||
public:
|
||||
|
||||
//## Constructors (generated)
|
||||
|
||||
Circle();
|
||||
|
||||
|
||||
|
||||
//## Constructors (specified)
|
||||
|
||||
//## Operation: Circle%939623931
|
||||
|
||||
Circle (int x, int y, int r, Color color);
|
||||
|
||||
|
||||
|
||||
//## Destructor (generated)
|
||||
|
||||
~Circle();
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
//## Other Operations (specified)
|
||||
|
||||
//## Operation: draw%937398670
|
||||
|
||||
void draw (Graphics &g);
|
||||
|
||||
|
||||
|
||||
//## Operation: erase%937398671
|
||||
|
||||
void erase (Graphics &g);
|
||||
|
||||
|
||||
|
||||
87
Lab6/cmplxfgr.cpp
Normal file
87
Lab6/cmplxfgr.cpp
Normal file
@@ -0,0 +1,87 @@
|
||||
//## begin module.cm preserve=no
|
||||
|
||||
// %X% %Q% %Z% %W%
|
||||
|
||||
//## end module.cm
|
||||
|
||||
|
||||
|
||||
//## begin module.cp preserve=no
|
||||
|
||||
//## end module.cp
|
||||
|
||||
|
||||
|
||||
//## Module: ComplexFigure; Pseudo Package body
|
||||
|
||||
//## Subsystem: Figures
|
||||
|
||||
//## Source file: CmplxFgr.cpp
|
||||
|
||||
|
||||
|
||||
//## begin module.additionalIncludes preserve=no
|
||||
|
||||
//## end module.additionalIncludes
|
||||
|
||||
|
||||
|
||||
//## begin module.includes preserve=yes
|
||||
|
||||
//## end module.includes
|
||||
|
||||
|
||||
|
||||
// ComplexFigure
|
||||
|
||||
#include "CmplxFgr.h"
|
||||
|
||||
//## begin module.additionalDeclarations preserve=yes
|
||||
|
||||
#include "Graphics.h"
|
||||
|
||||
//## end module.additionalDeclarations
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
// Class ComplexFigure
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
ComplexFigure::ComplexFigure()
|
||||
|
||||
//## begin ComplexFigure::ComplexFigure%.hasinit preserve=no
|
||||
|
||||
//## end ComplexFigure::ComplexFigure%.hasinit
|
||||
|
||||
//## begin ComplexFigure::ComplexFigure%.initialization preserve=yes
|
||||
|
||||
//## end ComplexFigure::ComplexFigure%.initialization
|
||||
|
||||
{
|
||||
|
||||
//## begin ComplexFigure::ComplexFigure%.body preserve=yes
|
||||
|
||||
//## end ComplexFigure::ComplexFigure%.body
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
ComplexFigure::~ComplexFigure()
|
||||
|
||||
{
|
||||
|
||||
//## begin ComplexFigure::~ComplexFigure%.body preserve=yes
|
||||
|
||||
//## end ComplexFigure::~ComplexFigure%.body
|
||||
|
||||
}
|
||||
|
||||
|
||||
100
Lab6/cmplxfgr.h
Normal file
100
Lab6/cmplxfgr.h
Normal file
@@ -0,0 +1,100 @@
|
||||
//## begin module.cm preserve=no
|
||||
|
||||
// %X% %Q% %Z% %W%
|
||||
|
||||
//## end module.cm
|
||||
|
||||
|
||||
|
||||
//## begin module.cp preserve=no
|
||||
|
||||
//## end module.cp
|
||||
|
||||
|
||||
|
||||
//## Module: ComplexFigure; Pseudo Package specification
|
||||
|
||||
//## Subsystem: Figures
|
||||
|
||||
//## Source file: CmplxFgr.h
|
||||
|
||||
|
||||
|
||||
#ifndef CmplxFgr_h
|
||||
|
||||
#define CmplxFgr_h 1
|
||||
|
||||
|
||||
|
||||
//## begin module.additionalIncludes preserve=no
|
||||
|
||||
//## end module.additionalIncludes
|
||||
|
||||
|
||||
|
||||
//## begin module.includes preserve=yes
|
||||
|
||||
//## end module.includes
|
||||
|
||||
|
||||
|
||||
// Figure
|
||||
|
||||
#include "Figure.h"
|
||||
|
||||
// FList
|
||||
|
||||
#include "FList.h"
|
||||
|
||||
//## begin module.additionalDeclarations preserve=yes
|
||||
|
||||
//## end module.additionalDeclarations
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
//## Class: ComplexFigure
|
||||
|
||||
//## Category: Figures
|
||||
|
||||
//## Subsystem: Figures
|
||||
|
||||
//## Persistence: Transient
|
||||
|
||||
//## Cardinality/Multiplicity: n
|
||||
|
||||
|
||||
|
||||
class ComplexFigure : public Figure //## Inherits: <unnamed>
|
||||
|
||||
{
|
||||
|
||||
//## begin ComplexFigure.initialDeclarations preserve=yes
|
||||
|
||||
//## end ComplexFigure.initialDeclarations
|
||||
|
||||
|
||||
|
||||
public:
|
||||
|
||||
//## Constructors (generated)
|
||||
|
||||
ComplexFigure();
|
||||
|
||||
|
||||
|
||||
//## Destructor (generated)
|
||||
|
||||
~ComplexFigure();
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
//## Other Operations (specified)
|
||||
|
||||
//## Operation: draw%939104770
|
||||
|
||||
void draw (Graphics &g);
|
||||
|
||||
71
Lab6/dbggrphc.cpp
Normal file
71
Lab6/dbggrphc.cpp
Normal file
@@ -0,0 +1,71 @@
|
||||
//## begin module.cm preserve=no
|
||||
|
||||
// %X% %Q% %Z% %W%
|
||||
|
||||
//## end module.cm
|
||||
|
||||
|
||||
|
||||
//## begin module.cp preserve=no
|
||||
|
||||
//## end module.cp
|
||||
|
||||
|
||||
|
||||
//## Module: DebugGraphics; Pseudo Package body
|
||||
|
||||
//## Subsystem: Figures
|
||||
|
||||
//## Source file: DbgGrphc.cpp
|
||||
|
||||
|
||||
|
||||
//## begin module.additionalIncludes preserve=no
|
||||
|
||||
//## end module.additionalIncludes
|
||||
|
||||
|
||||
|
||||
//## begin module.includes preserve=yes
|
||||
|
||||
//## end module.includes
|
||||
|
||||
|
||||
|
||||
// DebugGraphics
|
||||
|
||||
#include "DbgGrphc.h"
|
||||
|
||||
//## begin module.additionalDeclarations preserve=yes
|
||||
|
||||
//## end module.additionalDeclarations
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
// Class DebugGraphics
|
||||
|
||||
|
||||
|
||||
DebugGraphics::DebugGraphics()
|
||||
|
||||
//## begin DebugGraphics::DebugGraphics%.hasinit preserve=no
|
||||
|
||||
//## end DebugGraphics::DebugGraphics%.hasinit
|
||||
|
||||
//## begin DebugGraphics::DebugGraphics%.initialization preserve=yes
|
||||
|
||||
//## end DebugGraphics::DebugGraphics%.initialization
|
||||
|
||||
{
|
||||
|
||||
//## begin DebugGraphics::DebugGraphics%.body preserve=yes
|
||||
|
||||
//## end DebugGraphics::DebugGraphics%.body
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
89
Lab6/dbggrphc.h
Normal file
89
Lab6/dbggrphc.h
Normal file
@@ -0,0 +1,89 @@
|
||||
//## begin module.cm preserve=no
|
||||
|
||||
// %X% %Q% %Z% %W%
|
||||
|
||||
//## end module.cm
|
||||
|
||||
|
||||
|
||||
//## begin module.cp preserve=no
|
||||
|
||||
//## end module.cp
|
||||
|
||||
|
||||
|
||||
//## Module: DebugGraphics; Pseudo Package specification
|
||||
|
||||
//## Subsystem: Figures
|
||||
|
||||
//## Source file: DbgGrphc.h
|
||||
|
||||
|
||||
|
||||
#ifndef DbgGrphc_h
|
||||
|
||||
#define DbgGrphc_h 1
|
||||
|
||||
|
||||
|
||||
//## begin module.additionalIncludes preserve=no
|
||||
|
||||
//## end module.additionalIncludes
|
||||
|
||||
|
||||
|
||||
//## begin module.includes preserve=yes
|
||||
|
||||
//## end module.includes
|
||||
|
||||
|
||||
|
||||
// Graphics
|
||||
|
||||
#include "Graphics.h"
|
||||
|
||||
//## begin module.additionalDeclarations preserve=yes
|
||||
|
||||
#include "DbgGrphc.h"
|
||||
|
||||
//## end module.additionalDeclarations
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
//## Class: DebugGraphics
|
||||
|
||||
//## Category: Graphic
|
||||
|
||||
//## Subsystem: Figures
|
||||
|
||||
//## Persistence: Transient
|
||||
|
||||
//## Cardinality/Multiplicity: n
|
||||
|
||||
|
||||
|
||||
class DebugGraphics : public Graphics //## Inherits: <unnamed>
|
||||
|
||||
{
|
||||
|
||||
//## begin DebugGraphics.initialDeclarations preserve=yes
|
||||
|
||||
//## end DebugGraphics.initialDeclarations
|
||||
|
||||
|
||||
|
||||
public:
|
||||
|
||||
//## Constructors (generated)
|
||||
|
||||
DebugGraphics();
|
||||
|
||||
|
||||
|
||||
//## Destructor (generated)
|
||||
|
||||
~DebugGraphics();
|
||||
|
||||
|
||||
61
Lab6/fgrhlder.cpp
Normal file
61
Lab6/fgrhlder.cpp
Normal file
@@ -0,0 +1,61 @@
|
||||
//## begin module.cm preserve=no
|
||||
|
||||
// %X% %Q% %Z% %W%
|
||||
|
||||
//## end module.cm
|
||||
|
||||
|
||||
|
||||
//## begin module.cp preserve=no
|
||||
|
||||
//## end module.cp
|
||||
|
||||
|
||||
|
||||
//## Module: FigureHolder; Pseudo Package body
|
||||
|
||||
//## Subsystem: Figures
|
||||
|
||||
//## Source file: FgrHlder.cpp
|
||||
|
||||
|
||||
|
||||
//## begin module.additionalIncludes preserve=no
|
||||
|
||||
//## end module.additionalIncludes
|
||||
|
||||
|
||||
|
||||
//## begin module.includes preserve=yes
|
||||
|
||||
//## end module.includes
|
||||
|
||||
|
||||
|
||||
// FigureHolder
|
||||
|
||||
#include "FgrHlder.h"
|
||||
|
||||
//## begin module.additionalDeclarations preserve=yes
|
||||
|
||||
//## end module.additionalDeclarations
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
// Class FigureHolder
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
FigureHolder::FigureHolder()
|
||||
|
||||
//## begin FigureHolder::FigureHolder%.hasinit preserve=no
|
||||
|
||||
//## end FigureHolder::FigureHolder%.hasinit
|
||||
|
||||
//## begin FigureHolder::FigureHolder%.initialization preserve=yes
|
||||
|
||||
//## end FigureHolder::FigureHolder%.initialization
|
||||
94
Lab6/fgrhlder.h
Normal file
94
Lab6/fgrhlder.h
Normal file
@@ -0,0 +1,94 @@
|
||||
//## begin module.cm preserve=no
|
||||
|
||||
// %X% %Q% %Z% %W%
|
||||
|
||||
//## end module.cm
|
||||
|
||||
|
||||
|
||||
//## begin module.cp preserve=no
|
||||
|
||||
//## end module.cp
|
||||
|
||||
|
||||
|
||||
//## Module: FigureHolder; Pseudo Package specification
|
||||
|
||||
//## Subsystem: Figures
|
||||
|
||||
//## Source file: FgrHlder.h
|
||||
|
||||
|
||||
|
||||
#ifndef FgrHlder_h
|
||||
|
||||
#define FgrHlder_h 1
|
||||
|
||||
|
||||
|
||||
//## begin module.additionalIncludes preserve=no
|
||||
|
||||
//## end module.additionalIncludes
|
||||
|
||||
|
||||
|
||||
//## begin module.includes preserve=yes
|
||||
|
||||
//## end module.includes
|
||||
|
||||
|
||||
|
||||
// Figure
|
||||
|
||||
#include "Figure.h"
|
||||
|
||||
//## begin module.additionalDeclarations preserve=yes
|
||||
|
||||
//## end module.additionalDeclarations
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
//## Class: FigureHolder
|
||||
|
||||
//## Category: Figures
|
||||
|
||||
//## Subsystem: Figures
|
||||
|
||||
//## Persistence: Transient
|
||||
|
||||
//## Cardinality/Multiplicity: n
|
||||
|
||||
|
||||
|
||||
class FigureHolder
|
||||
|
||||
{
|
||||
|
||||
//## begin FigureHolder.initialDeclarations preserve=yes
|
||||
|
||||
public:
|
||||
|
||||
FigureHolder(Figure& f)
|
||||
|
||||
{
|
||||
|
||||
myFigure = f.clone();
|
||||
|
||||
}
|
||||
|
||||
//## end FigureHolder.initialDeclarations
|
||||
|
||||
|
||||
|
||||
public:
|
||||
|
||||
//## Constructors (generated)
|
||||
|
||||
FigureHolder();
|
||||
|
||||
|
||||
|
||||
//## Destructor (generated)
|
||||
|
||||
68
Lab6/figure.cpp
Normal file
68
Lab6/figure.cpp
Normal file
@@ -0,0 +1,68 @@
|
||||
//## begin module.cm preserve=no
|
||||
|
||||
// %X% %Q% %Z% %W%
|
||||
|
||||
//## end module.cm
|
||||
|
||||
|
||||
|
||||
//## begin module.cp preserve=no
|
||||
|
||||
//## end module.cp
|
||||
|
||||
|
||||
|
||||
//## Module: Figure; Pseudo Package body
|
||||
|
||||
//## Subsystem: Figures
|
||||
|
||||
//## Source file: Figure.cpp
|
||||
|
||||
|
||||
|
||||
//## begin module.additionalIncludes preserve=no
|
||||
|
||||
//## end module.additionalIncludes
|
||||
|
||||
|
||||
|
||||
//## begin module.includes preserve=yes
|
||||
|
||||
//## end module.includes
|
||||
|
||||
|
||||
|
||||
// Figure
|
||||
|
||||
#include "Figure.h"
|
||||
|
||||
//## begin module.additionalDeclarations preserve=yes
|
||||
|
||||
//## end module.additionalDeclarations
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
// Class Figure
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
Figure::Figure()
|
||||
|
||||
//## begin Figure::Figure%.hasinit preserve=no
|
||||
|
||||
//## end Figure::Figure%.hasinit
|
||||
|
||||
//## begin Figure::Figure%.initialization preserve=yes
|
||||
|
||||
//## end Figure::Figure%.initialization
|
||||
|
||||
{
|
||||
|
||||
//## begin Figure::Figure%.body preserve=yes
|
||||
|
||||
//## end Figure::Figure%.body
|
||||
|
||||
103
Lab6/figure.h
Normal file
103
Lab6/figure.h
Normal file
@@ -0,0 +1,103 @@
|
||||
//## begin module.cm preserve=no
|
||||
|
||||
// %X% %Q% %Z% %W%
|
||||
|
||||
//## end module.cm
|
||||
|
||||
|
||||
|
||||
//## begin module.cp preserve=no
|
||||
|
||||
//## end module.cp
|
||||
|
||||
|
||||
|
||||
//## Module: Figure; Pseudo Package specification
|
||||
|
||||
//## Subsystem: Figures
|
||||
|
||||
//## Source file: Figure.h
|
||||
|
||||
|
||||
|
||||
#ifndef Figure_h
|
||||
|
||||
#define Figure_h 1
|
||||
|
||||
|
||||
|
||||
//## begin module.additionalIncludes preserve=no
|
||||
|
||||
//## end module.additionalIncludes
|
||||
|
||||
|
||||
|
||||
//## begin module.includes preserve=yes
|
||||
|
||||
//## end module.includes
|
||||
|
||||
|
||||
|
||||
// Graphics
|
||||
|
||||
#include "Graphics.h"
|
||||
|
||||
//## begin module.additionalDeclarations preserve=yes
|
||||
|
||||
//## end module.additionalDeclarations
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
//## Class: Figure; Abstract
|
||||
|
||||
//## Category: Figures
|
||||
|
||||
//## Subsystem: Figures
|
||||
|
||||
//## Persistence: Transient
|
||||
|
||||
//## Cardinality/Multiplicity: n
|
||||
|
||||
|
||||
|
||||
//## Uses: <unnamed>; Graphics { -> }
|
||||
|
||||
|
||||
|
||||
class Figure
|
||||
|
||||
{
|
||||
|
||||
//## begin Figure.initialDeclarations preserve=yes
|
||||
|
||||
//## end Figure.initialDeclarations
|
||||
|
||||
|
||||
|
||||
public:
|
||||
|
||||
//## Constructors (generated)
|
||||
|
||||
Figure();
|
||||
|
||||
|
||||
|
||||
//## Destructor (generated)
|
||||
|
||||
virtual ~Figure();
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
//## Other Operations (specified)
|
||||
|
||||
//## Operation: draw%937398679
|
||||
|
||||
virtual void draw (Graphics &g) = 0;
|
||||
|
||||
|
||||
|
||||
//## Operation: erase%937398680
|
||||
30
Lab6/flist.cpp
Normal file
30
Lab6/flist.cpp
Normal file
@@ -0,0 +1,30 @@
|
||||
//## begin module.cm preserve=no
|
||||
|
||||
// %X% %Q% %Z% %W%
|
||||
|
||||
//## end module.cm
|
||||
|
||||
|
||||
|
||||
//## begin module.cp preserve=no
|
||||
|
||||
//## end module.cp
|
||||
|
||||
|
||||
|
||||
//## Module: FList; Pseudo Package body
|
||||
|
||||
//## Subsystem: Figures
|
||||
|
||||
//## Source file: FList.cpp
|
||||
|
||||
|
||||
|
||||
//## begin module.additionalIncludes preserve=no
|
||||
|
||||
//## end module.additionalIncludes
|
||||
|
||||
|
||||
|
||||
//## begin module.includes preserve=yes
|
||||
|
||||
48
Lab6/flist.h
Normal file
48
Lab6/flist.h
Normal file
@@ -0,0 +1,48 @@
|
||||
//## begin module.cm preserve=no
|
||||
|
||||
// %X% %Q% %Z% %W%
|
||||
|
||||
//## end module.cm
|
||||
|
||||
|
||||
|
||||
//## begin module.cp preserve=no
|
||||
|
||||
//## end module.cp
|
||||
|
||||
|
||||
|
||||
//## Module: FList; Pseudo Package specification
|
||||
|
||||
//## Subsystem: Figures
|
||||
|
||||
//## Source file: FList.h
|
||||
|
||||
|
||||
|
||||
#ifndef FList_h
|
||||
|
||||
#define FList_h 1
|
||||
|
||||
|
||||
|
||||
//## begin module.additionalIncludes preserve=no
|
||||
|
||||
//## end module.additionalIncludes
|
||||
|
||||
|
||||
|
||||
//## begin module.includes preserve=yes
|
||||
|
||||
//## end module.includes
|
||||
|
||||
|
||||
|
||||
// List
|
||||
|
||||
#include "List.h"
|
||||
|
||||
// FigureHolder
|
||||
|
||||
#include "FgrHlder.h"
|
||||
|
||||
51
Lab6/fstream.cpp
Normal file
51
Lab6/fstream.cpp
Normal file
@@ -0,0 +1,51 @@
|
||||
//## begin module.cm preserve=no
|
||||
|
||||
// %X% %Q% %Z% %W%
|
||||
|
||||
//## end module.cm
|
||||
|
||||
|
||||
|
||||
//## begin module.cp preserve=no
|
||||
|
||||
//## end module.cp
|
||||
|
||||
|
||||
|
||||
//## Module: fstream; Pseudo Package body
|
||||
|
||||
//## Subsystem: Figures
|
||||
|
||||
//## Source file: H:\WebDocs\skola\Avancerad_C++\Lab6\fstream.cpp
|
||||
|
||||
|
||||
|
||||
//## begin module.additionalIncludes preserve=no
|
||||
|
||||
//## end module.additionalIncludes
|
||||
|
||||
|
||||
|
||||
//## begin module.includes preserve=yes
|
||||
|
||||
//## end module.includes
|
||||
|
||||
|
||||
|
||||
// fstream
|
||||
|
||||
#include "H:\WebDocs\skola\Avancerad_C++\Lab6\fstream.h"
|
||||
|
||||
//## begin module.additionalDeclarations preserve=yes
|
||||
|
||||
//## end module.additionalDeclarations
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
// Class fstream
|
||||
|
||||
|
||||
|
||||
fstream::fstream()
|
||||
75
Lab6/fstream.h
Normal file
75
Lab6/fstream.h
Normal file
@@ -0,0 +1,75 @@
|
||||
//## begin module.cm preserve=no
|
||||
|
||||
// %X% %Q% %Z% %W%
|
||||
|
||||
//## end module.cm
|
||||
|
||||
|
||||
|
||||
//## begin module.cp preserve=no
|
||||
|
||||
//## end module.cp
|
||||
|
||||
|
||||
|
||||
//## Module: fstream; Pseudo Package specification
|
||||
|
||||
//## Subsystem: Figures
|
||||
|
||||
//## Source file: H:\WebDocs\skola\Avancerad_C++\Lab6\fstream.h
|
||||
|
||||
|
||||
|
||||
#ifndef fstream_h
|
||||
|
||||
#define fstream_h 1
|
||||
|
||||
|
||||
|
||||
//## begin module.additionalIncludes preserve=no
|
||||
|
||||
//## end module.additionalIncludes
|
||||
|
||||
|
||||
|
||||
//## begin module.includes preserve=yes
|
||||
|
||||
//## end module.includes
|
||||
|
||||
|
||||
|
||||
//## begin module.additionalDeclarations preserve=yes
|
||||
|
||||
//## end module.additionalDeclarations
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
//## Class: fstream
|
||||
|
||||
//## Category: Persist
|
||||
|
||||
//## Subsystem: Figures
|
||||
|
||||
//## Persistence: Transient
|
||||
|
||||
//## Cardinality/Multiplicity: n
|
||||
|
||||
|
||||
|
||||
class fstream
|
||||
|
||||
{
|
||||
|
||||
//## begin fstream.initialDeclarations preserve=yes
|
||||
|
||||
//## end fstream.initialDeclarations
|
||||
|
||||
|
||||
|
||||
public:
|
||||
|
||||
//## Constructors (generated)
|
||||
|
||||
fstream();
|
||||
82
Lab6/graphics.cpp
Normal file
82
Lab6/graphics.cpp
Normal file
@@ -0,0 +1,82 @@
|
||||
//## begin module.cm preserve=no
|
||||
|
||||
// %X% %Q% %Z% %W%
|
||||
|
||||
//## end module.cm
|
||||
|
||||
|
||||
|
||||
//## begin module.cp preserve=no
|
||||
|
||||
//## end module.cp
|
||||
|
||||
|
||||
|
||||
//## Module: Graphics; Pseudo Package body
|
||||
|
||||
//## Subsystem: Figures
|
||||
|
||||
//## Source file: Graphics.cpp
|
||||
|
||||
|
||||
|
||||
//## begin module.additionalIncludes preserve=no
|
||||
|
||||
//## end module.additionalIncludes
|
||||
|
||||
|
||||
|
||||
//## begin module.includes preserve=yes
|
||||
|
||||
//## end module.includes
|
||||
|
||||
|
||||
|
||||
// Graphics
|
||||
|
||||
#include "Graphics.h"
|
||||
|
||||
//## begin module.additionalDeclarations preserve=yes
|
||||
|
||||
#include <iostream.h>
|
||||
|
||||
//## end module.additionalDeclarations
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
// Class Graphics
|
||||
|
||||
|
||||
|
||||
Graphics::Graphics()
|
||||
|
||||
//## begin Graphics::Graphics%.hasinit preserve=no
|
||||
|
||||
//## end Graphics::Graphics%.hasinit
|
||||
|
||||
//## begin Graphics::Graphics%.initialization preserve=yes
|
||||
|
||||
//## end Graphics::Graphics%.initialization
|
||||
|
||||
{
|
||||
|
||||
//## begin Graphics::Graphics%.body preserve=yes
|
||||
|
||||
//## end Graphics::Graphics%.body
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
Graphics::~Graphics()
|
||||
|
||||
{
|
||||
|
||||
//## begin Graphics::~Graphics%.body preserve=yes
|
||||
|
||||
//## end Graphics::~Graphics%.body
|
||||
|
||||
95
Lab6/graphics.h
Normal file
95
Lab6/graphics.h
Normal file
@@ -0,0 +1,95 @@
|
||||
//## begin module.cm preserve=no
|
||||
|
||||
// %X% %Q% %Z% %W%
|
||||
|
||||
//## end module.cm
|
||||
|
||||
|
||||
|
||||
//## begin module.cp preserve=no
|
||||
|
||||
//## end module.cp
|
||||
|
||||
|
||||
|
||||
//## Module: Graphics; Pseudo Package specification
|
||||
|
||||
//## Subsystem: Figures
|
||||
|
||||
//## Source file: Graphics.h
|
||||
|
||||
|
||||
|
||||
#ifndef Graphics_h
|
||||
|
||||
#define Graphics_h 1
|
||||
|
||||
|
||||
|
||||
//## begin module.additionalIncludes preserve=no
|
||||
|
||||
//## end module.additionalIncludes
|
||||
|
||||
|
||||
|
||||
//## begin module.includes preserve=yes
|
||||
|
||||
#include "Point.h"
|
||||
|
||||
//## end module.includes
|
||||
|
||||
|
||||
|
||||
// Point
|
||||
|
||||
#include "Point.h"
|
||||
|
||||
//## begin module.additionalDeclarations preserve=yes
|
||||
|
||||
typedef int Color;
|
||||
|
||||
//## end module.additionalDeclarations
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
//## Class: Graphics; Abstract
|
||||
|
||||
//## Category: Graphic
|
||||
|
||||
//## Subsystem: Figures
|
||||
|
||||
//## Persistence: Transient
|
||||
|
||||
//## Cardinality/Multiplicity: n
|
||||
|
||||
|
||||
|
||||
//## Uses: <unnamed>; Point { -> }
|
||||
|
||||
|
||||
|
||||
class Graphics
|
||||
|
||||
{
|
||||
|
||||
//## begin Graphics.initialDeclarations preserve=yes
|
||||
|
||||
//## end Graphics.initialDeclarations
|
||||
|
||||
|
||||
|
||||
public:
|
||||
|
||||
//## Constructors (generated)
|
||||
|
||||
Graphics();
|
||||
|
||||
|
||||
|
||||
//## Destructor (generated)
|
||||
|
||||
~Graphics();
|
||||
|
||||
|
||||
15
Lab6/h.cpp
Normal file
15
Lab6/h.cpp
Normal file
@@ -0,0 +1,15 @@
|
||||
Pcircle::Pcircle(int xPos, int yPos, int _radius, Color _color)
|
||||
//## begin Pcircle::Pcircle%.hasinit preserve=no
|
||||
//## end Pcircle::Pcircle%.hasinit
|
||||
//## begin Pcircle::Pcircle%.initialization preserve=yes
|
||||
//## end Pcircle::Pcircle%.initialization
|
||||
{
|
||||
//## begin Pcircle::Pcircle%.body preserve=yes
|
||||
// Circle::Circle(xPos, yPos, _radius, _color);
|
||||
|
||||
_pobj = Persistent::addType("Pcircle", new Pcircle);
|
||||
set_center(xPos, yPos);
|
||||
set_radius(_radius);
|
||||
set_color(_color);
|
||||
//## end Pcircle::Pcircle%.body
|
||||
}
|
||||
30
Lab6/instmap.cpp
Normal file
30
Lab6/instmap.cpp
Normal file
@@ -0,0 +1,30 @@
|
||||
//## begin module.cm preserve=no
|
||||
|
||||
// %X% %Q% %Z% %W%
|
||||
|
||||
//## end module.cm
|
||||
|
||||
|
||||
|
||||
//## begin module.cp preserve=no
|
||||
|
||||
//## end module.cp
|
||||
|
||||
|
||||
|
||||
//## Module: InstMap; Pseudo Package body
|
||||
|
||||
//## Subsystem: Figures
|
||||
|
||||
//## Source file: InstMap.cpp
|
||||
|
||||
|
||||
|
||||
//## begin module.additionalIncludes preserve=no
|
||||
|
||||
//## end module.additionalIncludes
|
||||
|
||||
|
||||
|
||||
//## begin module.includes preserve=yes
|
||||
|
||||
49
Lab6/instmap.h
Normal file
49
Lab6/instmap.h
Normal file
@@ -0,0 +1,49 @@
|
||||
//## begin module.cm preserve=no
|
||||
|
||||
// %X% %Q% %Z% %W%
|
||||
|
||||
//## end module.cm
|
||||
|
||||
|
||||
|
||||
//## begin module.cp preserve=no
|
||||
|
||||
//## end module.cp
|
||||
|
||||
|
||||
|
||||
//## Module: InstMap; Pseudo Package specification
|
||||
|
||||
//## Subsystem: Figures
|
||||
|
||||
//## Source file: InstMap.h
|
||||
|
||||
|
||||
|
||||
#ifndef InstMap_h
|
||||
|
||||
#define InstMap_h 1
|
||||
|
||||
|
||||
|
||||
//## begin module.additionalIncludes preserve=no
|
||||
|
||||
//## end module.additionalIncludes
|
||||
|
||||
|
||||
|
||||
//## begin module.includes preserve=yes
|
||||
|
||||
#include "str.h"
|
||||
|
||||
//## end module.includes
|
||||
|
||||
|
||||
|
||||
// MapFake
|
||||
|
||||
#include "MapFake.h"
|
||||
|
||||
// Persistent
|
||||
|
||||
//#include "Prsstent.h"
|
||||
272
Lab6/lab6.dsp
Normal file
272
Lab6/lab6.dsp
Normal file
@@ -0,0 +1,272 @@
|
||||
# Microsoft Developer Studio Project File - Name="lab6" - Package Owner=<4>
|
||||
# Microsoft Developer Studio Generated Build File, Format Version 6.00
|
||||
# ** DO NOT EDIT **
|
||||
|
||||
# TARGTYPE "Win32 (x86) Console Application" 0x0103
|
||||
|
||||
CFG=lab6 - Win32 Debug
|
||||
!MESSAGE This is not a valid makefile. To build this project using NMAKE,
|
||||
!MESSAGE use the Export Makefile command and run
|
||||
!MESSAGE
|
||||
!MESSAGE NMAKE /f "lab6.mak".
|
||||
!MESSAGE
|
||||
!MESSAGE You can specify a configuration when running NMAKE
|
||||
!MESSAGE by defining the macro CFG on the command line. For example:
|
||||
!MESSAGE
|
||||
!MESSAGE NMAKE /f "lab6.mak" CFG="lab6 - Win32 Debug"
|
||||
!MESSAGE
|
||||
!MESSAGE Possible choices for configuration are:
|
||||
!MESSAGE
|
||||
!MESSAGE "lab6 - Win32 Release" (based on "Win32 (x86) Console Application")
|
||||
!MESSAGE "lab6 - Win32 Debug" (based on "Win32 (x86) Console Application")
|
||||
!MESSAGE
|
||||
|
||||
# Begin Project
|
||||
# PROP AllowPerConfigDependencies 0
|
||||
# PROP Scc_ProjName ""
|
||||
# PROP Scc_LocalPath ""
|
||||
CPP=cl.exe
|
||||
RSC=rc.exe
|
||||
|
||||
!IF "$(CFG)" == "lab6 - Win32 Release"
|
||||
|
||||
# PROP BASE Use_MFC 0
|
||||
# PROP BASE Use_Debug_Libraries 0
|
||||
# PROP BASE Output_Dir "Release"
|
||||
# PROP BASE Intermediate_Dir "Release"
|
||||
# PROP BASE Target_Dir ""
|
||||
# PROP Use_MFC 0
|
||||
# PROP Use_Debug_Libraries 0
|
||||
# PROP Output_Dir "Release"
|
||||
# PROP Intermediate_Dir "Release"
|
||||
# PROP Target_Dir ""
|
||||
# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
|
||||
# ADD CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
|
||||
# ADD BASE RSC /l 0x41d /d "NDEBUG"
|
||||
# ADD RSC /l 0x41d /d "NDEBUG"
|
||||
BSC32=bscmake.exe
|
||||
# ADD BASE BSC32 /nologo
|
||||
# ADD BSC32 /nologo
|
||||
LINK32=link.exe
|
||||
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
|
||||
# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
|
||||
|
||||
!ELSEIF "$(CFG)" == "lab6 - Win32 Debug"
|
||||
|
||||
# PROP BASE Use_MFC 0
|
||||
# PROP BASE Use_Debug_Libraries 1
|
||||
# PROP BASE Output_Dir "Debug"
|
||||
# PROP BASE Intermediate_Dir "Debug"
|
||||
# PROP BASE Target_Dir ""
|
||||
# PROP Use_MFC 0
|
||||
# PROP Use_Debug_Libraries 1
|
||||
# PROP Output_Dir "Debug"
|
||||
# PROP Intermediate_Dir "Debug"
|
||||
# PROP Target_Dir ""
|
||||
# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c
|
||||
# ADD CPP /nologo /W1 /Gm /vmg /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c
|
||||
# ADD BASE RSC /l 0x41d /d "_DEBUG"
|
||||
# ADD RSC /l 0x41d /d "_DEBUG"
|
||||
BSC32=bscmake.exe
|
||||
# ADD BASE BSC32 /nologo
|
||||
# ADD BSC32 /nologo
|
||||
LINK32=link.exe
|
||||
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
|
||||
# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
|
||||
|
||||
!ENDIF
|
||||
|
||||
# Begin Target
|
||||
|
||||
# Name "lab6 - Win32 Release"
|
||||
# Name "lab6 - Win32 Debug"
|
||||
# Begin Group "Source Files"
|
||||
|
||||
# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Circle.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\CmplxFgr.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\DbgGrphc.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\FgrHlder.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Figure.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\FList.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Graphics.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\InstMap.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Line.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\main.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Pcircle.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\PersFig.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Pline.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\pList.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Point.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Prctngle.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Prsstent.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\PsMap.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\PStream.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Rectngle.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Str.cpp
|
||||
# End Source File
|
||||
# End Group
|
||||
# Begin Group "Header Files"
|
||||
|
||||
# PROP Default_Filter "h;hpp;hxx;hm;inl"
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Circle.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\CmplxFgr.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\DbgGrphc.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\FgrHlder.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Figure.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\FList.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Graphics.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\InstMap.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Line.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\List.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\MapFake.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Node.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Pcircle.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\PersFig.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Pline.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\pList.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Point.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Prctngle.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Prsstent.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\PsMap.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\PStream.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Rectngle.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Str.h
|
||||
# End Source File
|
||||
# End Group
|
||||
# Begin Group "Resource Files"
|
||||
|
||||
# PROP Default_Filter "ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"
|
||||
# End Group
|
||||
# End Target
|
||||
# End Project
|
||||
29
Lab6/lab6.dsw
Normal file
29
Lab6/lab6.dsw
Normal file
@@ -0,0 +1,29 @@
|
||||
Microsoft Developer Studio Workspace File, Format Version 6.00
|
||||
# WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE!
|
||||
|
||||
###############################################################################
|
||||
|
||||
Project: "lab6"=".\lab6.dsp" - Package Owner=<4>
|
||||
|
||||
Package=<5>
|
||||
{{{
|
||||
}}}
|
||||
|
||||
Package=<4>
|
||||
{{{
|
||||
}}}
|
||||
|
||||
###############################################################################
|
||||
|
||||
Global:
|
||||
|
||||
Package=<5>
|
||||
{{{
|
||||
}}}
|
||||
|
||||
Package=<3>
|
||||
{{{
|
||||
}}}
|
||||
|
||||
###############################################################################
|
||||
|
||||
120
Lab6/line.cpp
Normal file
120
Lab6/line.cpp
Normal file
@@ -0,0 +1,120 @@
|
||||
//## begin module.cm preserve=no
|
||||
|
||||
// %X% %Q% %Z% %W%
|
||||
|
||||
//## end module.cm
|
||||
|
||||
|
||||
|
||||
//## begin module.cp preserve=no
|
||||
|
||||
//## end module.cp
|
||||
|
||||
|
||||
|
||||
//## Module: Line; Pseudo Package body
|
||||
|
||||
//## Subsystem: Figures
|
||||
|
||||
//## Source file: Line.cpp
|
||||
|
||||
|
||||
|
||||
//## begin module.additionalIncludes preserve=no
|
||||
|
||||
//## end module.additionalIncludes
|
||||
|
||||
|
||||
|
||||
//## begin module.includes preserve=yes
|
||||
|
||||
//## end module.includes
|
||||
|
||||
|
||||
|
||||
// Line
|
||||
|
||||
#include "Line.h"
|
||||
|
||||
//## begin module.additionalDeclarations preserve=yes
|
||||
|
||||
#include <iostream.h>
|
||||
|
||||
//## end module.additionalDeclarations
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
// Class Line
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
Line::Line (int x1, int y1, int x2, int y2, Color color)
|
||||
|
||||
//## begin Line::Line%939623930.hasinit preserve=no
|
||||
|
||||
//## end Line::Line%939623930.hasinit
|
||||
|
||||
//## begin Line::Line%939623930.initialization preserve=yes
|
||||
|
||||
//## end Line::Line%939623930.initialization
|
||||
|
||||
{
|
||||
|
||||
//## begin Line::Line%939623930.body preserve=yes
|
||||
|
||||
setColor(color);
|
||||
|
||||
|
||||
|
||||
Point start, end;
|
||||
|
||||
start.setx(x1);
|
||||
|
||||
start.sety(y1);
|
||||
|
||||
end.setx(x2);
|
||||
|
||||
end.sety(y2);
|
||||
|
||||
myPoints.add(myPoints.getSize(), start);
|
||||
|
||||
myPoints.add(myPoints.getSize(), end);
|
||||
|
||||
//## end Line::Line%939623930.body
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
Line::~Line()
|
||||
|
||||
{
|
||||
|
||||
//## begin Line::~Line%.body preserve=yes
|
||||
|
||||
//## end Line::~Line%.body
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
//## Other Operations (implementation)
|
||||
|
||||
void Line::draw (Graphics &g)
|
||||
|
||||
{
|
||||
|
||||
//## begin Line::draw%937398668.body preserve=yes
|
||||
|
||||
Point start,end;
|
||||
|
||||
102
Lab6/line.h
Normal file
102
Lab6/line.h
Normal file
@@ -0,0 +1,102 @@
|
||||
//## begin module.cm preserve=no
|
||||
|
||||
// %X% %Q% %Z% %W%
|
||||
|
||||
//## end module.cm
|
||||
|
||||
|
||||
|
||||
//## begin module.cp preserve=no
|
||||
|
||||
//## end module.cp
|
||||
|
||||
|
||||
|
||||
//## Module: Line; Pseudo Package specification
|
||||
|
||||
//## Subsystem: Figures
|
||||
|
||||
//## Source file: Line.h
|
||||
|
||||
|
||||
|
||||
#ifndef Line_h
|
||||
|
||||
#define Line_h 1
|
||||
|
||||
|
||||
|
||||
//## begin module.additionalIncludes preserve=no
|
||||
|
||||
//## end module.additionalIncludes
|
||||
|
||||
|
||||
|
||||
//## begin module.includes preserve=yes
|
||||
|
||||
//## end module.includes
|
||||
|
||||
|
||||
|
||||
// pList
|
||||
|
||||
#include "pList.h"
|
||||
|
||||
// Figure
|
||||
|
||||
#include "Figure.h"
|
||||
|
||||
//## begin module.additionalDeclarations preserve=yes
|
||||
|
||||
//## end module.additionalDeclarations
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
//## Class: Line
|
||||
|
||||
//## Category: Figures
|
||||
|
||||
//## Subsystem: Figures
|
||||
|
||||
//## Persistence: Transient
|
||||
|
||||
//## Cardinality/Multiplicity: n
|
||||
|
||||
|
||||
|
||||
class Line : public Figure //## Inherits: <unnamed>
|
||||
|
||||
{
|
||||
|
||||
//## begin Line.initialDeclarations preserve=yes
|
||||
|
||||
//## end Line.initialDeclarations
|
||||
|
||||
|
||||
|
||||
public:
|
||||
|
||||
//## Constructors (specified)
|
||||
|
||||
//## Operation: Line%939623930
|
||||
|
||||
Line (int x1, int y1, int x2, int y2, Color color);
|
||||
|
||||
Line(){};
|
||||
|
||||
|
||||
|
||||
//## Destructor (generated)
|
||||
|
||||
~Line();
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
//## Other Operations (specified)
|
||||
|
||||
//## Operation: draw%937398668
|
||||
|
||||
136
Lab6/list.cpp
Normal file
136
Lab6/list.cpp
Normal file
@@ -0,0 +1,136 @@
|
||||
//## begin module.cm preserve=no
|
||||
|
||||
// %X% %Q% %Z% %W%
|
||||
|
||||
//## end module.cm
|
||||
|
||||
|
||||
|
||||
//## begin module.cp preserve=no
|
||||
|
||||
//## end module.cp
|
||||
|
||||
|
||||
|
||||
//## Module: List; Pseudo Package body
|
||||
|
||||
//## Subsystem: Figures
|
||||
|
||||
//## Source file: H:\WebDocs\skola\Avancerad_C++\Lab6\List.cpp
|
||||
|
||||
|
||||
|
||||
//## begin module. preserve=no
|
||||
|
||||
//## end module.
|
||||
|
||||
|
||||
|
||||
//## begin module.includes preserve=yes
|
||||
|
||||
//## end module.includes
|
||||
|
||||
|
||||
|
||||
// List
|
||||
|
||||
#include "H:\WebDocs\skola\Avancerad_C++\Lab6\List.h"
|
||||
|
||||
//## begin module.additionalDeclarations preserve=yes
|
||||
|
||||
#include <stdio.h>
|
||||
|
||||
#include <iostream.h>
|
||||
|
||||
//## end module.additionalDeclarations
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
// Parameterized Class List
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
template <class T>
|
||||
|
||||
List<T>::List()
|
||||
|
||||
//## begin List::List%.hasinit preserve=no
|
||||
|
||||
: size(0)
|
||||
|
||||
//## end List::List%.hasinit
|
||||
|
||||
//## begin List::List%.initialization preserve=yes
|
||||
|
||||
//## end List::List%.initialization
|
||||
|
||||
{
|
||||
|
||||
//## begin List::List%.body preserve=yes
|
||||
|
||||
head=NULL;
|
||||
|
||||
//## end List::List%.body
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
template <class T>
|
||||
|
||||
List<T>::~List()
|
||||
|
||||
{
|
||||
|
||||
//## begin List::~List%.body preserve=yes
|
||||
|
||||
delete head;
|
||||
|
||||
//## end List::~List%.body
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
//## Other Operations (implementation)
|
||||
|
||||
template <class T>
|
||||
|
||||
void List<T>::add (int position, T item)
|
||||
|
||||
{
|
||||
|
||||
//## begin List::add%937398674.body preserve=yes
|
||||
|
||||
|
||||
|
||||
size++;
|
||||
|
||||
Node<T>* newPtr = new Node<T>(item);
|
||||
|
||||
|
||||
|
||||
if (position==0) {
|
||||
|
||||
newPtr->next=head;
|
||||
|
||||
head=newPtr;
|
||||
|
||||
}
|
||||
|
||||
else {
|
||||
|
||||
Node<T>* prev=head;
|
||||
|
||||
111
Lab6/list.h
Normal file
111
Lab6/list.h
Normal file
@@ -0,0 +1,111 @@
|
||||
//## begin module.cm preserve=no
|
||||
|
||||
// %X% %Q% %Z% %W%
|
||||
|
||||
//## end module.cm
|
||||
|
||||
|
||||
|
||||
//## begin module.cp preserve=no
|
||||
|
||||
//## end module.cp
|
||||
|
||||
|
||||
|
||||
//## Module: List; Pseudo Package specification
|
||||
|
||||
//## Subsystem: Figures
|
||||
|
||||
//## Source file: List.h
|
||||
|
||||
|
||||
|
||||
#ifndef List_h
|
||||
|
||||
#define List_h 1
|
||||
|
||||
|
||||
|
||||
//## begin module.additionalIncludes preserve=no
|
||||
|
||||
//## end module.additionalIncludes
|
||||
|
||||
|
||||
|
||||
//## begin module.includes preserve=yes
|
||||
|
||||
//## end module.includes
|
||||
|
||||
|
||||
|
||||
// Node
|
||||
|
||||
#include "Node.h"
|
||||
|
||||
//## begin module.additionalDeclarations preserve=yes
|
||||
|
||||
//## end module.additionalDeclarations
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
//## Class: List; Parameterized Class
|
||||
|
||||
//## Category: Figures
|
||||
|
||||
//## Subsystem: Figures
|
||||
|
||||
//## Persistence: Transient
|
||||
|
||||
//## Cardinality/Multiplicity: n
|
||||
|
||||
|
||||
|
||||
template <class T>
|
||||
|
||||
class List
|
||||
|
||||
{
|
||||
|
||||
//## begin List.initialDeclarations preserve=yes
|
||||
|
||||
//## end List.initialDeclarations
|
||||
|
||||
|
||||
|
||||
public:
|
||||
|
||||
//## Constructors (generated)
|
||||
|
||||
List();
|
||||
|
||||
|
||||
|
||||
//## Destructor (generated)
|
||||
|
||||
~List();
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
//## Other Operations (specified)
|
||||
|
||||
//## Operation: add%937398674
|
||||
|
||||
// Denna sätter in grejjer i listan...
|
||||
|
||||
void add (int position, T item);
|
||||
|
||||
|
||||
|
||||
//## Operation: del%937398675
|
||||
|
||||
void del (int position);
|
||||
|
||||
|
||||
|
||||
//## Operation: isEmpty%937398676
|
||||
|
||||
bool isEmpty ();
|
||||
89
Lab6/main.cpp
Normal file
89
Lab6/main.cpp
Normal file
@@ -0,0 +1,89 @@
|
||||
//#
|
||||
|
||||
//# main.c
|
||||
|
||||
//#
|
||||
|
||||
//# =======================================================
|
||||
|
||||
//# Lab i Avacerad C++
|
||||
|
||||
//# 4. Figures
|
||||
|
||||
//#
|
||||
|
||||
//#
|
||||
|
||||
//# Christian Ohlsson
|
||||
|
||||
//# Daniel Alfredsson
|
||||
|
||||
//# Karlstads universitet
|
||||
|
||||
//# 991013
|
||||
|
||||
//# =======================================================
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
#include <iostream.h>
|
||||
|
||||
#include "Graphics.h"
|
||||
|
||||
#include "line.h"
|
||||
|
||||
#include "rectngle.h"
|
||||
|
||||
#include "circle.h"
|
||||
|
||||
#include "flist.h"
|
||||
|
||||
#include "CmplxFgr.h"
|
||||
|
||||
#include "pstream.h"
|
||||
|
||||
#include "pcircle.h"
|
||||
|
||||
#include "prctngle.h"
|
||||
|
||||
|
||||
|
||||
void archive(int& i, PStream& ps){
|
||||
|
||||
if(ps.isSaving())
|
||||
|
||||
ps<<i<<endl;
|
||||
|
||||
else
|
||||
|
||||
ps>>i;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
void archive(Point& i, PStream& ps){
|
||||
|
||||
if(ps.isSaving()){
|
||||
|
||||
ps<<i.getx()<<endl;
|
||||
|
||||
ps<<i.gety()<<endl;
|
||||
|
||||
}
|
||||
|
||||
else{
|
||||
|
||||
int x;
|
||||
|
||||
ps>>x;
|
||||
|
||||
i.setx(x);
|
||||
|
||||
ps>>x;
|
||||
|
||||
i.sety(x);
|
||||
|
||||
}
|
||||
48
Lab6/mapfake.cpp
Normal file
48
Lab6/mapfake.cpp
Normal file
@@ -0,0 +1,48 @@
|
||||
template <class KeyType, class DataType>
|
||||
|
||||
Mapfake<KeyType, DataType>::Mapfake(){}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
template <class KeyType, class DataType>
|
||||
|
||||
int Mapfake<KeyType, DataType>::getSize(){
|
||||
|
||||
return list.getSize();
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
template <class KeyType, class DataType>
|
||||
|
||||
DataType Mapfake<KeyType, DataType>::find(KeyType key)
|
||||
|
||||
{
|
||||
|
||||
int i=0;
|
||||
|
||||
if(list.getItem(0)->getKey() == key)
|
||||
|
||||
return list.getItem(0)->getData();
|
||||
|
||||
while(!list.isEmpty()) {
|
||||
|
||||
i++;
|
||||
|
||||
if(list.getItem(i)->getKey() == key)
|
||||
|
||||
return list.getItem(i)->getData();
|
||||
|
||||
}
|
||||
|
||||
return (DataType)0; // Just to supress compilerwarning
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
32
Lab6/mapfake.h
Normal file
32
Lab6/mapfake.h
Normal file
@@ -0,0 +1,32 @@
|
||||
#ifndef __MAP_H
|
||||
|
||||
#define __MAP_H
|
||||
|
||||
|
||||
|
||||
#include <iostream.h>
|
||||
|
||||
#include "List.h"
|
||||
|
||||
|
||||
|
||||
template <class KeyType, class DataType>
|
||||
|
||||
class Mapfake{
|
||||
|
||||
private:
|
||||
|
||||
typedef class Tuple{
|
||||
|
||||
KeyType key;
|
||||
|
||||
DataType data;
|
||||
|
||||
public:
|
||||
|
||||
Tuple(KeyType _key, DataType _data){key = _key; data = _data;}
|
||||
|
||||
|
||||
|
||||
KeyType getKey(){return key;}
|
||||
|
||||
66
Lab6/node.cpp
Normal file
66
Lab6/node.cpp
Normal file
@@ -0,0 +1,66 @@
|
||||
//## begin module.cm preserve=no
|
||||
|
||||
// %X% %Q% %Z% %W%
|
||||
|
||||
//## end module.cm
|
||||
|
||||
|
||||
|
||||
//## begin module.cp preserve=no
|
||||
|
||||
//## end module.cp
|
||||
|
||||
|
||||
|
||||
//## Module: Node; Pseudo Package body
|
||||
|
||||
//## Subsystem: Figures
|
||||
|
||||
//## Source file: Node.cpp
|
||||
|
||||
|
||||
|
||||
//## begin module.additionalIncludes preserve=no
|
||||
|
||||
//## end module.additionalIncludes
|
||||
|
||||
|
||||
|
||||
//## begin module.includes preserve=yes
|
||||
|
||||
//## end module.includes
|
||||
|
||||
|
||||
|
||||
// Node
|
||||
|
||||
#include "Node.h"
|
||||
|
||||
//## begin module.additionalDeclarations preserve=yes
|
||||
|
||||
//## end module.additionalDeclarations
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
// Parameterized Class Node
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
template <class T>
|
||||
|
||||
Node<T>::Node()
|
||||
|
||||
//## begin Node::Node%.hasinit preserve=no
|
||||
|
||||
//## end Node::Node%.hasinit
|
||||
|
||||
//## begin Node::Node%.initialization preserve=yes
|
||||
|
||||
//## end Node::Node%.initialization
|
||||
|
||||
95
Lab6/node.h
Normal file
95
Lab6/node.h
Normal file
@@ -0,0 +1,95 @@
|
||||
//## begin module.cm preserve=no
|
||||
|
||||
// %X% %Q% %Z% %W%
|
||||
|
||||
//## end module.cm
|
||||
|
||||
|
||||
|
||||
//## begin module.cp preserve=no
|
||||
|
||||
//## end module.cp
|
||||
|
||||
|
||||
|
||||
//## Module: Node; Pseudo Package specification
|
||||
|
||||
//## Subsystem: Figures
|
||||
|
||||
//## Source file: Node.h
|
||||
|
||||
|
||||
|
||||
#ifndef Node_h
|
||||
|
||||
#define Node_h 1
|
||||
|
||||
|
||||
|
||||
//## begin module.additionalIncludes preserve=no
|
||||
|
||||
//## end module.additionalIncludes
|
||||
|
||||
|
||||
|
||||
//## begin module.includes preserve=yes
|
||||
|
||||
//## end module.includes
|
||||
|
||||
|
||||
|
||||
//## begin module.additionalDeclarations preserve=yes
|
||||
|
||||
//## end module.additionalDeclarations
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
//## Class: Node; Parameterized Class
|
||||
|
||||
//## Category: Figures
|
||||
|
||||
//## Subsystem: Figures
|
||||
|
||||
//## Persistence: Transient
|
||||
|
||||
//## Cardinality/Multiplicity: n
|
||||
|
||||
|
||||
|
||||
template <class T>
|
||||
|
||||
class Node
|
||||
|
||||
{
|
||||
|
||||
//## begin Node.initialDeclarations preserve=yes
|
||||
|
||||
public:
|
||||
|
||||
Node(T theData):data(theData){next = (Node<T>*)0;}
|
||||
|
||||
//## end Node.initialDeclarations
|
||||
|
||||
|
||||
|
||||
public:
|
||||
|
||||
//## Constructors (generated)
|
||||
|
||||
Node();
|
||||
|
||||
|
||||
|
||||
//## Destructor (generated)
|
||||
|
||||
~Node();
|
||||
|
||||
|
||||
|
||||
// Additional Public Declarations
|
||||
|
||||
//## begin Node.public preserve=yes
|
||||
|
||||
Node *next;
|
||||
102
Lab6/pcircle.cpp
Normal file
102
Lab6/pcircle.cpp
Normal file
@@ -0,0 +1,102 @@
|
||||
//## begin module.cm preserve=no
|
||||
|
||||
// %X% %Q% %Z% %W%
|
||||
|
||||
//## end module.cm
|
||||
|
||||
|
||||
|
||||
//## begin module.cp preserve=no
|
||||
|
||||
//## end module.cp
|
||||
|
||||
|
||||
|
||||
//## Module: Pcircle; Pseudo Package body
|
||||
|
||||
//## Subsystem: Figures
|
||||
|
||||
//## Source file: Pcircle.cpp
|
||||
|
||||
|
||||
|
||||
//## begin module.additionalIncludes preserve=no
|
||||
|
||||
//## end module.additionalIncludes
|
||||
|
||||
|
||||
|
||||
//## begin module.includes preserve=yes
|
||||
|
||||
//## end module.includes
|
||||
|
||||
|
||||
|
||||
// Pcircle
|
||||
|
||||
#include "Pcircle.h"
|
||||
|
||||
#include "PStream.h"
|
||||
|
||||
#include "Point.h"
|
||||
|
||||
//## begin module.additionalDeclarations preserve=yes
|
||||
|
||||
void archive(int &i, PStream &ps);
|
||||
|
||||
void archive(Point& i, PStream &ps);
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
Persistent* Pcircle::_pobj = Persistent::addType("Pcircle", new Pcircle);
|
||||
|
||||
// ************** GAMMAL ******************
|
||||
|
||||
//IMPLEMENT_PERSISTENT(Pcircle);
|
||||
|
||||
//## end module.additionalDeclarations
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
// Class Pcircle
|
||||
|
||||
|
||||
|
||||
Pcircle::~Pcircle()
|
||||
|
||||
{
|
||||
|
||||
//## begin Pcircle::~Pcircle%.body preserve=yes
|
||||
|
||||
//## end Pcircle::~Pcircle%.body
|
||||
|
||||
}
|
||||
|
||||
Pcircle::Pcircle(int xPos, int yPos, int _radius, Color _color)
|
||||
|
||||
//## begin Pcircle::Pcircle%.hasinit preserve=no
|
||||
|
||||
//## end Pcircle::Pcircle%.hasinit
|
||||
|
||||
//## begin Pcircle::Pcircle%.initialization preserve=yes
|
||||
|
||||
//## end Pcircle::Pcircle%.initialization
|
||||
|
||||
{
|
||||
|
||||
//## begin Pcircle::Pcircle%.body preserve=yes
|
||||
|
||||
// Circle::Circle(xPos, yPos, _radius, _color);
|
||||
|
||||
|
||||
|
||||
_pobj = Persistent::addType("Pcircle", new Pcircle);
|
||||
|
||||
setCenter(xPos, yPos);
|
||||
|
||||
setRad(_radius);
|
||||
|
||||
106
Lab6/pcircle.h
Normal file
106
Lab6/pcircle.h
Normal file
@@ -0,0 +1,106 @@
|
||||
//## begin module.cm preserve=no
|
||||
|
||||
// %X% %Q% %Z% %W%
|
||||
|
||||
//## end module.cm
|
||||
|
||||
|
||||
|
||||
//## begin module.cp preserve=no
|
||||
|
||||
//## end module.cp
|
||||
|
||||
|
||||
|
||||
//## Module: Pcircle; Pseudo Package specification
|
||||
|
||||
//## Subsystem: Figures
|
||||
|
||||
//## Source file: Pcircle.h
|
||||
|
||||
|
||||
|
||||
#ifndef Pcircle_h
|
||||
|
||||
#define Pcircle_h 1
|
||||
|
||||
|
||||
|
||||
//## begin module.additionalIncludes preserve=no
|
||||
|
||||
//## end module.additionalIncludes
|
||||
|
||||
|
||||
|
||||
//## begin module.includes preserve=yes
|
||||
|
||||
//## end module.includes
|
||||
|
||||
|
||||
|
||||
// Circle
|
||||
|
||||
#include "Circle.h"
|
||||
|
||||
// PersFig
|
||||
|
||||
#include "PersFig.h"
|
||||
|
||||
//## begin module.additionalDeclarations preserve=yes
|
||||
|
||||
|
||||
|
||||
//## end module.additionalDeclarations
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
//## Class: Pcircle
|
||||
|
||||
//## Category: Persist
|
||||
|
||||
//## Subsystem: Figures
|
||||
|
||||
//## Persistence: Transient
|
||||
|
||||
//## Cardinality/Multiplicity: n
|
||||
|
||||
|
||||
|
||||
class Pcircle : public Circle, public PersFig //## Inherits: <unnamed>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
//## Inherits: <unnamed>
|
||||
|
||||
{
|
||||
|
||||
//## begin Pcircle.initialDeclarations preserve=yes
|
||||
|
||||
//## end Pcircle.initialDeclarations
|
||||
|
||||
|
||||
|
||||
public:
|
||||
|
||||
//## Constructors (generated)
|
||||
|
||||
|
||||
|
||||
Pcircle(){};
|
||||
|
||||
Pcircle(int xPos, int yPos, int _radius, Color _color);
|
||||
|
||||
Pcircle(const Pcircle &src);
|
||||
|
||||
|
||||
|
||||
//## Destructor (generated)
|
||||
|
||||
~Pcircle();
|
||||
|
||||
|
||||
|
||||
51
Lab6/persfig.cpp
Normal file
51
Lab6/persfig.cpp
Normal file
@@ -0,0 +1,51 @@
|
||||
//## begin module.cm preserve=no
|
||||
|
||||
// %X% %Q% %Z% %W%
|
||||
|
||||
//## end module.cm
|
||||
|
||||
|
||||
|
||||
//## begin module.cp preserve=no
|
||||
|
||||
//## end module.cp
|
||||
|
||||
|
||||
|
||||
//## Module: PersFig; Pseudo Package body
|
||||
|
||||
//## Subsystem: Figures
|
||||
|
||||
//## Source file: PersFig.cpp
|
||||
|
||||
|
||||
|
||||
//## begin module.additionalIncludes preserve=no
|
||||
|
||||
//## end module.additionalIncludes
|
||||
|
||||
|
||||
|
||||
//## begin module.includes preserve=yes
|
||||
|
||||
//## end module.includes
|
||||
|
||||
|
||||
|
||||
// PersFig
|
||||
|
||||
#include "PersFig.h"
|
||||
|
||||
//## begin module.additionalDeclarations preserve=yes
|
||||
|
||||
//## end module.additionalDeclarations
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
// Class PersFig
|
||||
|
||||
|
||||
|
||||
PersFig::PersFig()
|
||||
80
Lab6/persfig.h
Normal file
80
Lab6/persfig.h
Normal file
@@ -0,0 +1,80 @@
|
||||
//## begin module.cm preserve=no
|
||||
|
||||
// %X% %Q% %Z% %W%
|
||||
|
||||
//## end module.cm
|
||||
|
||||
|
||||
|
||||
//## begin module.cp preserve=no
|
||||
|
||||
//## end module.cp
|
||||
|
||||
|
||||
|
||||
//## Module: PersFig; Pseudo Package specification
|
||||
|
||||
//## Subsystem: Figures
|
||||
|
||||
//## Source file: PersFig.h
|
||||
|
||||
|
||||
|
||||
#ifndef PersFig_h
|
||||
|
||||
#define PersFig_h 1
|
||||
|
||||
|
||||
|
||||
//## begin module.additionalIncludes preserve=no
|
||||
|
||||
//## end module.additionalIncludes
|
||||
|
||||
|
||||
|
||||
//## begin module.includes preserve=yes
|
||||
|
||||
//## end module.includes
|
||||
|
||||
|
||||
|
||||
// Figure
|
||||
|
||||
#include "Figure.h"
|
||||
|
||||
// Persistent
|
||||
|
||||
#include "Prsstent.h"
|
||||
|
||||
//## begin module.additionalDeclarations preserve=yes
|
||||
|
||||
//## end module.additionalDeclarations
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
//## Class: PersFig
|
||||
|
||||
//## Category: Persist
|
||||
|
||||
//## Subsystem: Figures
|
||||
|
||||
//## Persistence: Transient
|
||||
|
||||
//## Cardinality/Multiplicity: n
|
||||
|
||||
|
||||
|
||||
class PersFig : public Persistent, //## Inherits: <unnamed>
|
||||
|
||||
virtual public Figure //## Inherits: <unnamed>
|
||||
|
||||
{
|
||||
|
||||
//## begin PersFig.initialDeclarations preserve=yes
|
||||
|
||||
//## end PersFig.initialDeclarations
|
||||
|
||||
|
||||
|
||||
59
Lab6/pline.cpp
Normal file
59
Lab6/pline.cpp
Normal file
@@ -0,0 +1,59 @@
|
||||
//## begin module.cm preserve=no
|
||||
|
||||
// %X% %Q% %Z% %W%
|
||||
|
||||
//## end module.cm
|
||||
|
||||
|
||||
|
||||
//## begin module.cp preserve=no
|
||||
|
||||
//## end module.cp
|
||||
|
||||
|
||||
|
||||
//## Module: Pline; Pseudo Package body
|
||||
|
||||
//## Subsystem: Figures
|
||||
|
||||
//## Source file: Pline.cpp
|
||||
|
||||
|
||||
|
||||
//## begin module.additionalIncludes preserve=no
|
||||
|
||||
//## end module.additionalIncludes
|
||||
|
||||
|
||||
|
||||
//## begin module.includes preserve=yes
|
||||
|
||||
//## end module.includes
|
||||
|
||||
|
||||
|
||||
// Pline
|
||||
|
||||
#include "Pline.h"
|
||||
|
||||
//## begin module.additionalDeclarations preserve=yes
|
||||
|
||||
//## end module.additionalDeclarations
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
// Class Pline
|
||||
|
||||
|
||||
|
||||
Pline::Pline()
|
||||
|
||||
//## begin Pline::Pline%.hasinit preserve=no
|
||||
|
||||
//## end Pline::Pline%.hasinit
|
||||
|
||||
//## begin Pline::Pline%.initialization preserve=yes
|
||||
|
||||
//## end Pline::Pline%.initialization
|
||||
85
Lab6/pline.h
Normal file
85
Lab6/pline.h
Normal file
@@ -0,0 +1,85 @@
|
||||
//## begin module.cm preserve=no
|
||||
|
||||
// %X% %Q% %Z% %W%
|
||||
|
||||
//## end module.cm
|
||||
|
||||
|
||||
|
||||
//## begin module.cp preserve=no
|
||||
|
||||
//## end module.cp
|
||||
|
||||
|
||||
|
||||
//## Module: Pline; Pseudo Package specification
|
||||
|
||||
//## Subsystem: Figures
|
||||
|
||||
//## Source file: Pline.h
|
||||
|
||||
|
||||
|
||||
#ifndef Pline_h
|
||||
|
||||
#define Pline_h 1
|
||||
|
||||
|
||||
|
||||
//## begin module.additionalIncludes preserve=no
|
||||
|
||||
//## end module.additionalIncludes
|
||||
|
||||
|
||||
|
||||
//## begin module.includes preserve=yes
|
||||
|
||||
//## end module.includes
|
||||
|
||||
|
||||
|
||||
// Line
|
||||
|
||||
#include "Line.h"
|
||||
|
||||
// PersFig
|
||||
|
||||
#include "PersFig.h"
|
||||
|
||||
//## begin module.additionalDeclarations preserve=yes
|
||||
|
||||
//## end module.additionalDeclarations
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
//## Class: Pline
|
||||
|
||||
//## Category: Persist
|
||||
|
||||
//## Subsystem: Figures
|
||||
|
||||
//## Persistence: Transient
|
||||
|
||||
//## Cardinality/Multiplicity: n
|
||||
|
||||
|
||||
|
||||
class Pline : public PersFig, //## Inherits: <unnamed>
|
||||
|
||||
public Line //## Inherits: <unnamed>
|
||||
|
||||
{
|
||||
|
||||
//## begin Pline.initialDeclarations preserve=yes
|
||||
|
||||
//## end Pline.initialDeclarations
|
||||
|
||||
|
||||
|
||||
public:
|
||||
|
||||
//## Constructors (generated)
|
||||
|
||||
Pline();
|
||||
30
Lab6/plist.cpp
Normal file
30
Lab6/plist.cpp
Normal file
@@ -0,0 +1,30 @@
|
||||
//## begin module.cm preserve=no
|
||||
|
||||
// %X% %Q% %Z% %W%
|
||||
|
||||
//## end module.cm
|
||||
|
||||
|
||||
|
||||
//## begin module.cp preserve=no
|
||||
|
||||
//## end module.cp
|
||||
|
||||
|
||||
|
||||
//## Module: pList; Pseudo Package body
|
||||
|
||||
//## Subsystem: Figures
|
||||
|
||||
//## Source file: pList.cpp
|
||||
|
||||
|
||||
|
||||
//## begin module.additionalIncludes preserve=no
|
||||
|
||||
//## end module.additionalIncludes
|
||||
|
||||
|
||||
|
||||
//## begin module.includes preserve=yes
|
||||
|
||||
48
Lab6/plist.h
Normal file
48
Lab6/plist.h
Normal file
@@ -0,0 +1,48 @@
|
||||
//## begin module.cm preserve=no
|
||||
|
||||
// %X% %Q% %Z% %W%
|
||||
|
||||
//## end module.cm
|
||||
|
||||
|
||||
|
||||
//## begin module.cp preserve=no
|
||||
|
||||
//## end module.cp
|
||||
|
||||
|
||||
|
||||
//## Module: pList; Pseudo Package specification
|
||||
|
||||
//## Subsystem: Figures
|
||||
|
||||
//## Source file: pList.h
|
||||
|
||||
|
||||
|
||||
#ifndef pList_h
|
||||
|
||||
#define pList_h 1
|
||||
|
||||
|
||||
|
||||
//## begin module.additionalIncludes preserve=no
|
||||
|
||||
//## end module.additionalIncludes
|
||||
|
||||
|
||||
|
||||
//## begin module.includes preserve=yes
|
||||
|
||||
//## end module.includes
|
||||
|
||||
|
||||
|
||||
// List
|
||||
|
||||
#include "List.h"
|
||||
|
||||
// Point
|
||||
|
||||
#include "Point.h"
|
||||
|
||||
83
Lab6/point.cpp
Normal file
83
Lab6/point.cpp
Normal file
@@ -0,0 +1,83 @@
|
||||
//## begin module.cm preserve=no
|
||||
|
||||
// %X% %Q% %Z% %W%
|
||||
|
||||
//## end module.cm
|
||||
|
||||
|
||||
|
||||
//## begin module.cp preserve=no
|
||||
|
||||
//## end module.cp
|
||||
|
||||
|
||||
|
||||
//## Module: Point; Pseudo Package body
|
||||
|
||||
//## Subsystem: Figures
|
||||
|
||||
//## Source file: Point.cpp
|
||||
|
||||
|
||||
|
||||
//## begin module.additionalIncludes preserve=no
|
||||
|
||||
//## end module.additionalIncludes
|
||||
|
||||
|
||||
|
||||
//## begin module.includes preserve=yes
|
||||
|
||||
//## end module.includes
|
||||
|
||||
|
||||
|
||||
// Point
|
||||
|
||||
#include "Point.h"
|
||||
|
||||
//## begin module.additionalDeclarations preserve=yes
|
||||
|
||||
//## end module.additionalDeclarations
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
// Class Point
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
Point::Point()
|
||||
|
||||
//## begin Point::Point%.hasinit preserve=no
|
||||
|
||||
//## end Point::Point%.hasinit
|
||||
|
||||
//## begin Point::Point%.initialization preserve=yes
|
||||
|
||||
//## end Point::Point%.initialization
|
||||
|
||||
{
|
||||
|
||||
//## begin Point::Point%.body preserve=yes
|
||||
|
||||
//## end Point::Point%.body
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
Point::~Point()
|
||||
|
||||
{
|
||||
|
||||
//## begin Point::~Point%.body preserve=yes
|
||||
|
||||
//## end Point::~Point%.body
|
||||
101
Lab6/point.h
Normal file
101
Lab6/point.h
Normal file
@@ -0,0 +1,101 @@
|
||||
//## begin module.cm preserve=no
|
||||
|
||||
// %X% %Q% %Z% %W%
|
||||
|
||||
//## end module.cm
|
||||
|
||||
|
||||
|
||||
//## begin module.cp preserve=no
|
||||
|
||||
//## end module.cp
|
||||
|
||||
|
||||
|
||||
//## Module: Point; Pseudo Package specification
|
||||
|
||||
//## Subsystem: Figures
|
||||
|
||||
//## Source file: Point.h
|
||||
|
||||
|
||||
|
||||
#ifndef Point_h
|
||||
|
||||
#define Point_h 1
|
||||
|
||||
|
||||
|
||||
//## begin module.additionalIncludes preserve=no
|
||||
|
||||
//## end module.additionalIncludes
|
||||
|
||||
|
||||
|
||||
//## begin module.includes preserve=yes
|
||||
|
||||
//## end module.includes
|
||||
|
||||
|
||||
|
||||
//## begin module.additionalDeclarations preserve=yes
|
||||
|
||||
//## end module.additionalDeclarations
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
//## Class: Point
|
||||
|
||||
//## Category: Figures
|
||||
|
||||
//## Subsystem: Figures
|
||||
|
||||
//## Persistence: Transient
|
||||
|
||||
//## Cardinality/Multiplicity: n
|
||||
|
||||
|
||||
|
||||
class Point
|
||||
|
||||
{
|
||||
|
||||
//## begin Point.initialDeclarations preserve=yes
|
||||
|
||||
//## end Point.initialDeclarations
|
||||
|
||||
|
||||
|
||||
public:
|
||||
|
||||
//## Constructors (generated)
|
||||
|
||||
Point();
|
||||
|
||||
|
||||
|
||||
//## Destructor (generated)
|
||||
|
||||
~Point();
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
//## Other Operations (specified)
|
||||
|
||||
//## Operation: getx%937398664
|
||||
|
||||
int getx ();
|
||||
|
||||
|
||||
|
||||
//## Operation: gety%937398665
|
||||
|
||||
int gety ();
|
||||
|
||||
|
||||
|
||||
//## Operation: setx%937398666
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user