DllExport int FAR PASCAL VBWalkerDraw(HDC hDC)
{

int j;

	//Cube CubeObject;
	RECT r;
	VectorType SliceVectorMin, SliceVectorMax;

	GetClipBox(hDC, &r);
	
	//	Height should be set by drawing program!
	CubeObject.Transform.Height = r.bottom - r.top;
	CubeObject.SetOrigin( 100, 100, 0);
	CubeObject.SetScale( 2, 2 );
	
	//	Set the visibe slice through object
	SliceVectorMin.x = 0;
	SliceVectorMin.y = 0;
	SliceVectorMin.z = 0;
	SliceVectorMax.x = 11;
	SliceVectorMax.y = 5;
	SliceVectorMax.z = 4;

	//	Colour should be set by the drawing program!
	//	But we don't need to do it here because drawing program has such
	//	functionality built in.
	CubeObject.DrawCreateWalker(3);
	CubeObject.SetSliceVector(&SliceVectorMin, &SliceVectorMax);
	CubeObject.DrawWalkerhDC(hDC);
	CubeObject.DeleteAllCubes();

return j;
}
DllExport int FAR PASCAL VBCubeArrayDraw(HDC hDC, int N)
{

int j;

	//Cube CubeObject;
	RECT r;

	GetClipBox(hDC, &r);
	
	//	Height should be set by drawing program
	CubeObject.Transform.Height = r.bottom - r.top;
	CubeObject.SetOrigin( 100, 100, 0);
	CubeObject.SetScale( 2, 2 );
	
	j=N;
	if(j<1)
		j=1;
	
	//	Colour should be set by the drawing program!
	HPEN NewPen = CreatePen(PS_SOLID, 0, RGB(0,0,255));		//	create blue pen color
	HBRUSH NewBrush = CreateSolidBrush(RGB(255,255,255));	//	create brush (white)

	HGDIOBJ OldPen = GetCurrentObject(hDC, OBJ_PEN);		//	remember old colour
	HGDIOBJ OldBrush = GetCurrentObject(hDC, OBJ_BRUSH);	//	remember old brush
	
	//	Set colours
	SelectObject(hDC, NewPen);
	SelectObject(hDC, NewBrush);

	CubeObject.DrawNCubehDC(hDC, j);

	//	Return Colours
	SelectObject(hDC, OldPen);
	SelectObject(hDC, OldBrush);

	//	Delete all unnecessary objects
	DeleteObject(NewPen);
	DeleteObject(NewBrush);

return j;
}
//	Set the scaling on x and y axis
DllExport int FAR PASCAL VBSetScale( int x, int y )
{
	CubeObject.SetScale( x, y );
	return 0;
}