Network


Latest external collaboration on country level. Dive into details by clicking on the dots.

Hotspot


Dive into the research topics where Graham M. Seed is active.

Publication


Featured researches published by Graham M. Seed.


international conference on computational science and its applications | 2003

Four colouring the vertices of the triangulation of a polygon containing a hole

Graham M. Seed; Douglas Edward Richard Clark; Raffaella Ocone; Xiaoyan Y. Yang

A simple linear-time algorithm is presented for four-colouring the vertices of a triangulation of a polygon containing a single hole. The algorithm consists of reducing a triangulation by the removal of both polygon and hole ear vertices, if any, followed by the removal of colour-isolated vertices until a 3-coloured tessellation remains. The triangulation is then re-built, using at most four colours. The paper concludes by recognising the similarity between the colouring of triangulations of polygons containing a hole and the colouring of bipartite and permutation graphs.


Archive | 1996

The Development Environment

Graham M. Seed

Your working environment is very important. If you are to do a lot of programming, optimise your program development and enjoy your programming as much as possible, then you naturally need the best environment. This chapter attempts to highlight a few key requirements and tools that you should look for in your environment by providing an overview of the Borland C++ for Windows compiler and development suite.


Archive | 1996

Run-Time Type Information and Casting

Graham M. Seed

We saw in the previous chapter that similar classes can be placed in a class hierarchy, with numerous classes derived from a single base class. Working in terms of a pointer to the base class, rather than objects of the derived classes, we are able to operate on functions common to all derived classes via a single pointer object that can point to any derived class object. Such a run-time capability is essential to object-oriented programming, but unfortunately moves us away from the strongly typed compile-time mechanism so characteristic of the C++ language.


Archive | 1996

Structures, Unions, Enumerations and Typedefs

Graham M. Seed

This chapter examines structures, unions, enumerations and typedefs which allow a programmer to create new data types. The ability to create new types is an important and very powerful feature of C++ and releases a programmer from being restricted to the integral types offered by the language. Structures enable a programmer to form a collection of similar or different data types into a single user-defined data type, unlike arrays, which are collections of a single data type. The data members of a structure are, by default, publicly accessible. User-defined structures integrate exactly into the language. In other words, there is a single syntax for the definition and manipulation of objects of both integral C++ and user-defined types.


Archive | 1996

Fundamental Data Types, Declarations, Definitions and Expressions

Graham M. Seed

This chapter begins by describing the different kinds of Fundamental Data Type (FDT) in C++. The chapter then introduces identifiers (constant and variable) and the declaration and definition of identifiers. This is followed by discussing assignment; initialisation of identifiers, expressions and statements; operators; and type conversions. Basic input from the keyboard and output to the screen is covered, along with the use of manipulators for formatting input and output. The topic of casting (the process of converting an object of one data type to an object of another data type) is discussed. The chapter concludes by examining the auto, extern, register and static storage class specifiers for specifying exactly how a variable is to be stored, and the asm declaration for directly integrating assembly language code into C++ code.


Archive | 1996

Input and Output, Files and Streams

Graham M. Seed

The vast majority of computer programs involve some degree of input or output or both. This chapter examines the c++ approach to the input and output of objects.


Archive | 1996

An Application: a Simple Raytracing Program

Graham M. Seed

The development of a simple raytracing program is presented in this final chapter. A raytracing program is an excellent realistic graphical application, of sufficient size, in which to apply many of the C++ and object-oriented programming features discussed in previous chapters.


Archive | 1996

Making Decisions and Repetition

Graham M. Seed

Programming is mainly concerned with getting a computer program to demonstrate a little intelligence or to make decisions. The basis of a decision in computinglies ultimately in testing whether an expression is true or false. This chapter introduces the C++ tools available for making decisions: the if if-else and switch statements and the conditional operator, ?:, which is a specialised form of the if-else statement


Archive | 1996

Operators and Overloading

Graham M. Seed

C++ allows operators to be overloaded specifically for a user-defined class. Such a feature offers a programmer a more natural and concise syntax for performing operations on objects of a given class. For instance, consider a Matrix class which encapsulates an array of values or objects in to a single entity. If we are required to perform an addition of two Matrix objects, m1 and m2, then one solution would be for class Matrix to support an Add() member function which adds the respective data members of Matrix objects mi and m2:


Archive | 1996

The C++ Class

Graham M. Seed

Collaboration


Dive into the Graham M. Seed's collaboration.

Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar

A Kummer

Heriot-Watt University

View shared research outputs
Top Co-Authors

Avatar
Top Co-Authors

Avatar

R. Obiała

Heriot-Watt University

View shared research outputs
Top Co-Authors

Avatar
Researchain Logo
Decentralizing Knowledge