BoxTex3DSupport.h

// My3dSupport.c - QuickDraw 3d routines - interface
//
// This file contains
//
// Created 27th Dec 1994, Nick Thompson, DEVSUPPORT
//
// Modification History:
//
//  12/27/94        nick        initial version
 
#ifndef _BOX3DSUPPORT_H_
#define _BOX3DSUPPORT_H_
 
// Macintosh System Stuff
#include <Types.h>
#include <Windows.h>
 
// QuickDraw 3D stuff
#include "QD3D.h"
#include "QD3DErrors.h"
#include "QD3DView.h"
 
//-------------------------------------------------------------------------------------------
 
struct _documentRecord {
    TQ3ViewObject   fView ;                 // the view for the scene
    TQ3GroupObject  fModel ;                // object in the scene being modelled
    TQ3StyleObject  fInterpolation ;        // interpolation style used when rendering
    TQ3StyleObject  fBackFacing ;           // whether to draw shapes that face away from the camera
    TQ3StyleObject  fFillStyle ;            // whether drawn as solid filled object or decomposed to components
    TQ3Matrix4x4        fRotation;          // the transform for the model
    TQ3Point3D      fGroupCenter ;          // the center of the group (for rotation) 
    float           fGroupScale ;           // scaling factor to apply before drawing
};
 
typedef struct _documentRecord DocumentRec, *DocumentPtr, **DocumentHdl ;
 
//---------------------------------------------------------------------------------------
 
OSErr MyQD3DInitialize( void ) ;
OSErr MyQD3DExit() ;
 
TQ3ViewObject       MyNewView(WindowPtr theWindow) ;
TQ3DrawContextObject MyNewDrawContext( WindowPtr theWindow) ;
TQ3CameraObject         MyNewCamera(WindowPtr theWindow) ;
TQ3GroupObject      MyNewLights(void) ;
TQ3GroupObject      MyNewModel(void) ;
TQ3Status SubmitScene( DocumentPtr theDocument ) ;
 
 
TQ3Point3D AdjustCamera(
    DocumentPtr         theDocument,
    short               winWidth,
    short               winHeight) ;
 
#endif