Retired Document
Important: This sample code may not represent best practices for current development. The project may use deprecated symbols and illustrate technologies and techniques that are no longer recommended.
QTVRObjectAuthoring.h
#ifndef __QTVROBJECTAUTHORING__ |
#define __QTVROBJECTAUTHORING__ |
#ifndef __MOVIES__ |
#include <Movies.h> |
#endif |
#ifdef __cplusplus |
extern "C" { |
#endif |
// Creator types |
#define kQTVRPlayerCreatorType 'vrod' |
#define kMoviePlayerCreatorType 'TVOD' |
#define kControllerID 1 |
// QTVR Object types |
enum { |
kBadObjectType = 0, |
kStandardObject = 1, // "Object" in Add Navigable Data dialog |
kOldNavigableMovieScene = 2, // "Scene" in Add Navigable Data dialog |
kObjectInScene = 3 // "Object In Scene" in Add Navigable Data dialog |
}; |
// File format for version 1.0. |
#pragma options align=mac68k |
typedef struct { |
short versionNumber; // Always 1 |
short numberOfColumns; // Number of columns in movie |
short numberOfRows; // Number rows in movie |
short reserved1; // Zero |
short loopSize; // Number of frames shot at each position |
short frameDuration; // The duration of each frame |
short movieType; // kStandardObject, kObjectInScene, or kOldNavigableMovieScene |
short loopTicks; // Number of ticks before next frame of loop is displayed |
Fixed fieldOfView; // 180.0 for kStandardObject or kObjectInScene, actual degrees for kOldNavigableMovieScene. |
Fixed startHPan; // Start horizontal pan angle in degrees |
Fixed endHPan; // End horizontal pan angle in degrees |
Fixed endVPan; // End vertical pan angle in degrees |
Fixed startVPan; // Start vertical pan angle in degrees |
Fixed initialHPan; // Initial horizontal pan angle in degrees (poster view) |
Fixed initialVPan; // Initial vertical pan angle in degrees (poster view) |
long reserved2; // Zero |
} QTVRObjectFileFormat1x0Record, *QTVRObjectFileFormat1x0Ptr; |
#pragma options align=reset |
pascal OSErr SetQTVRObjectFileFormat1x0 ( |
Movie movie, |
short movieResFref, |
short movieResID, |
FSSpec movieSFFile, |
TimeValue posterViewTime, |
const QTVRObjectFileFormat1x0Ptr fileFormatPtr); |
pascal OSErr GetQTVRObjectFileFormat1x0 ( |
Movie movie, |
QTVRObjectFileFormat1x0Ptr fileFormatPtr); |
pascal OSErr DeleteQTVRObjectFileFormat1x0 ( |
Movie movie, |
short movieResFref, |
short movieResID, |
FSSpec movieSFFile); |
void ConvertTimeToPanUtil (TimeValue time, |
TimeValue frameDuration, |
short numColumns, |
short numRows, |
short loopSize, |
Fixed startHPan, |
Fixed endHPan, |
Fixed startVPan, |
Fixed endVPan, |
Fixed *hPan, |
Fixed *vPan); |
OSErr StuffQTVRObjectFileFormat1x0 (short movieType, |
TimeValue frameDuration, |
short numberOfColumns, |
short numberOfRows, |
short loopSize, |
short loopTicks, |
Fixed startHPan, |
Fixed endHPan, |
Fixed startVPan, |
Fixed endVPan, |
Fixed fieldOfView, |
Fixed initialHPan, |
Fixed initialVPan, |
QTVRObjectFileFormat1x0Ptr fileFormatPtr); |
#ifdef __cplusplus |
} |
#endif |
#endif//__QTVROBJECTAUTHORING__ |
Copyright © 2003 Apple Computer, Inc. All Rights Reserved. Terms of Use | Privacy Policy | Updated: 2003-01-14