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; }
// Set the slice vector where objects are cut off when drawn using VBDrawObjecthDC DllExport int FAR PASCAL VBSliceVectorSet( VBSliceVectorType *SliceVector ) { VectorType SliceVectorMin, SliceVectorMax; SliceVectorMin.x = SliceVector->MinX; SliceVectorMin.y = SliceVector->MinY; SliceVectorMin.z = SliceVector->MinZ; SliceVectorMax.x = SliceVector->MaxX; SliceVectorMax.y = SliceVector->MaxY; SliceVectorMax.z = SliceVector->MaxZ; CubeObject.SetSliceVector(&SliceVectorMin, &SliceVectorMax); return 0; }
// Draw cubes from cube point list for a given object id DllExport int FAR PASCAL VBDrawObjecthDC(HDC hDC, int ObjectTypeID) { //RECT r; //GetClipBox(hDC, &r); // Height should be set by drawing program! //CubeObject.Transform.Height = r.bottom - r.top; 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); // modified 09/04/96 to take account of presetting of origin //CubeObject.SetScale( 2, 2 ); // Set the visibe slice through object SliceVectorMin.x = -100; SliceVectorMin.y = -100; SliceVectorMin.z = -100; SliceVectorMax.x = 100; SliceVectorMax.y = 100; SliceVectorMax.z = 100; // 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.DrawObjecthDC(hDC, ObjectTypeID); return 0; }