1*38e8c45fSAndroid Build Coastguard Worker /* San Angeles Observation OpenGL ES version example 2*38e8c45fSAndroid Build Coastguard Worker * Copyright 2004-2005 Jetro Lauha 3*38e8c45fSAndroid Build Coastguard Worker * All rights reserved. 4*38e8c45fSAndroid Build Coastguard Worker * Web: http://iki.fi/jetro/ 5*38e8c45fSAndroid Build Coastguard Worker * 6*38e8c45fSAndroid Build Coastguard Worker * This source is free software; you can redistribute it and/or 7*38e8c45fSAndroid Build Coastguard Worker * modify it under the terms of EITHER: 8*38e8c45fSAndroid Build Coastguard Worker * (1) The GNU Lesser General Public License as published by the Free 9*38e8c45fSAndroid Build Coastguard Worker * Software Foundation; either version 2.1 of the License, or (at 10*38e8c45fSAndroid Build Coastguard Worker * your option) any later version. The text of the GNU Lesser 11*38e8c45fSAndroid Build Coastguard Worker * General Public License is included with this source in the 12*38e8c45fSAndroid Build Coastguard Worker * file LICENSE-LGPL.txt. 13*38e8c45fSAndroid Build Coastguard Worker * (2) The BSD-style license that is included with this source in 14*38e8c45fSAndroid Build Coastguard Worker * the file LICENSE-BSD.txt. 15*38e8c45fSAndroid Build Coastguard Worker * 16*38e8c45fSAndroid Build Coastguard Worker * This source is distributed in the hope that it will be useful, 17*38e8c45fSAndroid Build Coastguard Worker * but WITHOUT ANY WARRANTY; without even the implied warranty of 18*38e8c45fSAndroid Build Coastguard Worker * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the files 19*38e8c45fSAndroid Build Coastguard Worker * LICENSE-LGPL.txt and LICENSE-BSD.txt for more details. 20*38e8c45fSAndroid Build Coastguard Worker * 21*38e8c45fSAndroid Build Coastguard Worker * $Id: shapes.h,v 1.6 2005/01/31 22:15:30 tonic Exp $ 22*38e8c45fSAndroid Build Coastguard Worker * $Revision: 1.6 $ 23*38e8c45fSAndroid Build Coastguard Worker */ 24*38e8c45fSAndroid Build Coastguard Worker 25*38e8c45fSAndroid Build Coastguard Worker #ifndef SHAPES_H_INCLUDED 26*38e8c45fSAndroid Build Coastguard Worker #define SHAPES_H_INCLUDED 27*38e8c45fSAndroid Build Coastguard Worker 28*38e8c45fSAndroid Build Coastguard Worker 29*38e8c45fSAndroid Build Coastguard Worker #define SUPERSHAPE_PARAMS 15 30*38e8c45fSAndroid Build Coastguard Worker 31*38e8c45fSAndroid Build Coastguard Worker static const float sSuperShapeParams[][SUPERSHAPE_PARAMS] = 32*38e8c45fSAndroid Build Coastguard Worker { 33*38e8c45fSAndroid Build Coastguard Worker // m a b n1 n2 n3 m a b n1 n2 n3 res1 res2 scale (org.res1,res2) 34*38e8c45fSAndroid Build Coastguard Worker { 10, 1, 2, 90, 1, -45, 8, 1, 1, -1, 1, -0.4f, 20, 30, 2 }, // 40, 60 35*38e8c45fSAndroid Build Coastguard Worker { 10, 1, 2, 90, 1, -45, 4, 1, 1, 10, 1, -0.4f, 20, 20, 4 }, // 40, 40 36*38e8c45fSAndroid Build Coastguard Worker { 10, 1, 2, 60, 1, -10, 4, 1, 1, -1, -2, -0.4f, 41, 41, 1 }, // 82, 82 37*38e8c45fSAndroid Build Coastguard Worker { 6, 1, 1, 60, 1, -70, 8, 1, 1, 0.4f, 3, 0.25f, 20, 20, 1 }, // 40, 40 38*38e8c45fSAndroid Build Coastguard Worker { 4, 1, 1, 30, 1, 20, 12, 1, 1, 0.4f, 3, 0.25f, 10, 30, 1 }, // 20, 60 39*38e8c45fSAndroid Build Coastguard Worker { 8, 1, 1, 30, 1, -4, 8, 2, 1, -1, 5, 0.5f, 25, 26, 1 }, // 60, 60 40*38e8c45fSAndroid Build Coastguard Worker { 13, 1, 1, 30, 1, -4, 13, 1, 1, 1, 5, 1, 30, 30, 6 }, // 60, 60 41*38e8c45fSAndroid Build Coastguard Worker { 10, 1, 1.1f, -0.5f, 0.1f, 70, 60, 1, 1, -90, 0, -0.25f, 20, 60, 8 }, // 60, 180 42*38e8c45fSAndroid Build Coastguard Worker { 7, 1, 1, 20, -0.3f, -3.5f, 6, 1, 1, -1, 4.5f, 0.5f, 10, 20, 4 }, // 60, 80 43*38e8c45fSAndroid Build Coastguard Worker { 4, 1, 1, 10, 10, 10, 4, 1, 1, 10, 10, 10, 10, 20, 1 }, // 20, 40 44*38e8c45fSAndroid Build Coastguard Worker { 4, 1, 1, 1, 1, 1, 4, 1, 1, 1, 1, 1, 10, 10, 2 }, // 10, 10 45*38e8c45fSAndroid Build Coastguard Worker { 1, 1, 1, 38, -0.25f, 19, 4, 1, 1, 10, 10, 10, 10, 15, 2 }, // 20, 40 46*38e8c45fSAndroid Build Coastguard Worker { 2, 1, 1, 0.7f, 0.3f, 0.2f, 3, 1, 1, 100, 100, 100, 10, 25, 2 }, // 20, 50 47*38e8c45fSAndroid Build Coastguard Worker { 6, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 30, 30, 2 }, // 60, 60 48*38e8c45fSAndroid Build Coastguard Worker { 3, 1, 1, 1, 1, 1, 6, 1, 1, 2, 1, 1, 10, 20, 2 }, // 20, 40 49*38e8c45fSAndroid Build Coastguard Worker { 6, 1, 1, 6, 5.5f, 100, 6, 1, 1, 25, 10, 10, 30, 20, 2 }, // 60, 40 50*38e8c45fSAndroid Build Coastguard Worker { 3, 1, 1, 0.5f, 1.7f, 1.7f, 2, 1, 1, 10, 10, 10, 20, 20, 2 }, // 40, 40 51*38e8c45fSAndroid Build Coastguard Worker { 5, 1, 1, 0.1f, 1.7f, 1.7f, 1, 1, 1, 0.3f, 0.5f, 0.5f, 20, 20, 4 }, // 40, 40 52*38e8c45fSAndroid Build Coastguard Worker { 2, 1, 1, 6, 5.5f, 100, 6, 1, 1, 4, 10, 10, 10, 22, 1 }, // 40, 40 53*38e8c45fSAndroid Build Coastguard Worker { 6, 1, 1, -1, 70, 0.1f, 9, 1, 0.5f, -98, 0.05f, -45, 20, 30, 4 }, // 60, 91 54*38e8c45fSAndroid Build Coastguard Worker { 6, 1, 1, -1, 90, -0.1f, 7, 1, 1, 90, 1.3f, 34, 13, 16, 1 }, // 32, 60 55*38e8c45fSAndroid Build Coastguard Worker }; 56*38e8c45fSAndroid Build Coastguard Worker #define SUPERSHAPE_COUNT (sizeof(sSuperShapeParams) / sizeof(sSuperShapeParams[0])) 57*38e8c45fSAndroid Build Coastguard Worker 58*38e8c45fSAndroid Build Coastguard Worker 59*38e8c45fSAndroid Build Coastguard Worker #endif // !SHAPES_H_INCLUDED 60