//region size
	REGION_X = 320.0;	//width
	REGION_Y = 320.0;	//height


//obstacles
//input vertices coordinates of obstacles in anticlockwise rotation
	obstacle *bill1 = new obstacle(coorinate(20.0, 20.0), coorinate(20.0, 100.0),
		                       coordinate(100.0, 100.0), coordinate(100.0, 20.0));

	obstacle *bill2 = new obstacle(coorinate(120.0, 20.0), coorinate(120.0, 100.0),
		                       coordinate(200.0, 100.0), coordinate(200.0, 20.0));
	bill2->entrace(coordinate(150.0, 100.0), coodinate(170, 100.0));

//cross-point
//alignPoint(int id, double coordinate);
	alignPoint(  0, coordinate( 10.0,  10.0));
	alignPoint(  1, coordinate( 10.0, 110.0));
	alignPoint(  2, coordinate( 10.0, 210.0));
	alignPoint(  3, coordinate( 10.0, 310.0));
	alignPoint(  4, coordinate(110.0,  10.0));
	alignPoint(  5, coordinate(110.0, 110.0));
	alignPoint(  6, coordinate(110.0, 210.0));
	alignPoint(  7, coordinate(110.0, 310.0));
	alignPoint(  8, coordinate(210.0,  10.0));
	alignPoint(  9, coordinate(210.0, 110.0));
	alignPoint( 10, coordinate(210.0, 210.0));
	alignPoint( 11, coordinate(210.0, 310.0));
	alignPoint( 12, coordinate(160.0, 110.0));
	alignPoint( 13, coordinate(160.0, 100.0));

//road connecting two cross-points
//connectPoint( int id1, int id2, double width);
	connectPoint(  0,  1, 10.0 );
	connectPoint(  1,  2, 10.0 );
	connectPoint(  2,  3, 10.0 );
	connectPoint(  4,  5, 10.0 );
	connectPoint(  5, 12, 10.0 );
	connectPoint( 12,  5, 10.0 );
	connectPoint(  6,  7, 10.0 );
	connectPoint(  8,  9, 10.0 );
	connectPoint(  9, 10, 10.0 );
	connectPoint( 10, 11, 10.0 );
	connectPoint(  0,  4, 10.0 );
	connectPoint(  4,  8, 10.0 );
	connectPoint(  1,  5, 10.0 );
	connectPoint(  5,  9, 10.0 );
	connectPoint(  2,  6, 10.0 );
	connectPoint(  6, 10, 10.0 );
	connectPoint(  3,  7, 10.0 );
	connectPoint(  7, 11, 10.0 );
	connectPoint( 12, 13, 10.0 );