import source from 1.3.40
[external/swig.git] / Examples / php / class / example.cxx
1 /* File : example.c */
2
3 #include "example.h"
4 #include <math.h>
5 #ifndef M_PI
6 #  define M_PI 3.14159265358979323846
7 #endif
8
9 int Shape::get_nshapes() {
10   return nshapes;
11 }
12
13 /* Move the shape to a new location */
14 void Shape::move(double dx, double dy) {
15   x += dx;
16   y += dy;
17 }
18
19 int Shape::nshapes = 0;
20
21 void Circle::set_radius( double r ) {
22   radius = r;
23 }
24
25 double Circle::area(void) {
26   return M_PI*radius*radius;
27 }
28
29 double Circle::perimeter(void) {
30   return 2*M_PI*radius;
31 }
32
33 double Square::area(void) {
34   return width*width;
35 }
36
37 double Square::perimeter(void) {
38   return 4*width;
39 }