19066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* San Angeles Observation OpenGL ES version example
29066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * Copyright 2004-2005 Jetro Lauha
39066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * All rights reserved.
49066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * Web: http://iki.fi/jetro/
59066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project *
69066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * This source is free software; you can redistribute it and/or
79066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * modify it under the terms of EITHER:
89066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project *   (1) The GNU Lesser General Public License as published by the Free
99066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project *       Software Foundation; either version 2.1 of the License, or (at
109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project *       your option) any later version. The text of the GNU Lesser
119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project *       General Public License is included with this source in the
129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project *       file LICENSE-LGPL.txt.
139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project *   (2) The BSD-style license that is included with this source in
149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project *       the file LICENSE-BSD.txt.
159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project *
169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * This source is distributed in the hope that it will be useful,
179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * but WITHOUT ANY WARRANTY; without even the implied warranty of
189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the files
19d9273d6f289d9b55da3fd0db2f659fdfb48106a8Tor Norbye * LICENSE-LGPL.txt and LICENSE-BSD.txt for more details.
20d34c1879f1ce24e0525cd4bf432f2a6d6d6a2a8aGeoffrey Pitsch *
21d34c1879f1ce24e0525cd4bf432f2a6d6d6a2a8aGeoffrey Pitsch * $Id: cams.h,v 1.7 2005/01/31 22:15:15 tonic Exp $
227b9c912f536925ac6ec43935d6e97506851b33d6Tor Norbye * $Revision: 1.7 $
239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project */
249066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#ifndef CAMS_H_INCLUDED
26025f9602ee99ba5883512a97f2a46f8132ece5d6Fabrice Di Meglio#define CAMS_H_INCLUDED
279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* Length in milliseconds of one camera track base unit.
30aa07653d2eea38a7a5bda5944c8a353586916ae9Svetoslav Ganov * The value originates from the music synchronization.
31d34c1879f1ce24e0525cd4bf432f2a6d6d6a2a8aGeoffrey Pitsch */
32aa07653d2eea38a7a5bda5944c8a353586916ae9Svetoslav Ganov#define CAMTRACK_LEN    5442
3375986cf9bc57ef11ad70f36fb77fbbf5d63af6ecsvetoslavganov
349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project// Camera track definition for one camera trucking shot.
369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projecttypedef struct
379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{
389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    /* Five parameters of src[5] and dest[5]:
399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project     * eyeX, eyeY, eyeZ, viewAngle, viewHeightOffs
40cd2613ab7b0f4f967c1d0388e1267ad01db787a8Svetoslav Ganov     */
41cd2613ab7b0f4f967c1d0388e1267ad01db787a8Svetoslav Ganov    short src[5], dest[5];
429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    unsigned char dist;     // if >0, cam rotates around eye xy on dist * 0.1
43d9273d6f289d9b55da3fd0db2f659fdfb48106a8Tor Norbye    unsigned char len;      // length multiplier
44d9273d6f289d9b55da3fd0db2f659fdfb48106a8Tor Norbye} CAMTRACK;
45d9273d6f289d9b55da3fd0db2f659fdfb48106a8Tor Norbye
469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic CAMTRACK sCamTracks[] =
479066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{
489066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    { { 4500, 2700, 100, 70, -30 }, { 50, 50, -90, -100, 0 }, 20, 1 },
499066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    { { -1448, 4294, 25, 363, 0 }, { -136, 202, 125, -98, 100 }, 0, 1 },
509066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    { { 1437, 4930, 200, -275, -20 }, { 1684, 0, 0, 9, 0 }, 0, 1 },
519066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    { { 1800, 3609, 200, 0, 675 }, { 0, 0, 0, 300, 0 }, 0, 1 },
529066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    { { 923, 996, 50, 2336, -80 }, { 0, -20, -50, 0, 170 }, 0, 1 },
539066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    { { -1663, -43, 600, 2170, 0 }, { 20, 0, -600, 0, 100 }, 0, 1 },
549066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    { { 1049, -1420, 175, 2111, -17 }, { 0, 0, 0, -334, 0 }, 0, 2 },
559066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    { { 0, 0, 50, 300, 25 }, { 0, 0, 0, 300, 0 }, 70, 2 },
569066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    { { -473, -953, 3500, -353, -350 }, { 0, 0, -2800, 0, 0 }, 0, 2 },
579066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    { { 191, 1938, 35, 1139, -17 }, { 1205, -2909, 0, 0, 0 }, 0, 2 },
589066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    { { -1449, -2700, 150, 0, 0 }, { 0, 2000, 0, 0, 0 }, 0, 2 },
599066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    { { 5273, 4992, 650, 373, -50 }, { -4598, -3072, 0, 0, 0 }, 0, 2 },
609066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    { { 3223, -3282, 1075, -393, -25 }, { 1649, -1649, 0, 0, 0 }, 0, 2 }
61558459fe85f56f29a6ed6a4d0adb4a0bd6665884Joe Fernandez};
62558459fe85f56f29a6ed6a4d0adb4a0bd6665884Joe Fernandez#define CAMTRACK_COUNT (sizeof(camTracks) / sizeof(camTracks[0]))
63558459fe85f56f29a6ed6a4d0adb4a0bd6665884Joe Fernandez
64558459fe85f56f29a6ed6a4d0adb4a0bd6665884Joe Fernandez
65558459fe85f56f29a6ed6a4d0adb4a0bd6665884Joe Fernandez#endif // !CAMS_H_INCLUDED
66558459fe85f56f29a6ed6a4d0adb4a0bd6665884Joe Fernandez