Basic 3D graphics for the MBED application-shield on-board LCD (initial/incomplete).

Dependents:   co657_lcdplay

Committer:
co657_frmb
Date:
Sun Nov 29 00:03:41 2015 +0000
Revision:
9:db4ec6f7d8b2
Parent:
0:215c9308dc52
Font updates.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
co657_frmb 0:215c9308dc52 1 /* sine table, generated by k64tab.c (frmb, 10/2015). */
co657_frmb 0:215c9308dc52 2
co657_frmb 0:215c9308dc52 3 /** @file g3d_sintab.h */
co657_frmb 0:215c9308dc52 4
co657_frmb 0:215c9308dc52 5 #ifndef __G3D_SINTAB_H
co657_frmb 0:215c9308dc52 6 #define __G3D_SINTAB_H
co657_frmb 0:215c9308dc52 7
co657_frmb 0:215c9308dc52 8 static const float D_sin_table[] = {
co657_frmb 0:215c9308dc52 9 0.000000f, 0.024541f, 0.049068f, 0.073565f, 0.098017f, 0.122411f, 0.146730f, 0.170962f,
co657_frmb 0:215c9308dc52 10 0.195090f, 0.219101f, 0.242980f, 0.266713f, 0.290285f, 0.313682f, 0.336890f, 0.359895f,
co657_frmb 0:215c9308dc52 11 0.382683f, 0.405241f, 0.427555f, 0.449611f, 0.471397f, 0.492898f, 0.514103f, 0.534998f,
co657_frmb 0:215c9308dc52 12 0.555570f, 0.575808f, 0.595699f, 0.615232f, 0.634393f, 0.653173f, 0.671559f, 0.689541f,
co657_frmb 0:215c9308dc52 13 0.707107f, 0.724247f, 0.740951f, 0.757209f, 0.773010f, 0.788346f, 0.803208f, 0.817585f,
co657_frmb 0:215c9308dc52 14 0.831470f, 0.844854f, 0.857729f, 0.870087f, 0.881921f, 0.893224f, 0.903989f, 0.914210f,
co657_frmb 0:215c9308dc52 15 0.923880f, 0.932993f, 0.941544f, 0.949528f, 0.956940f, 0.963776f, 0.970031f, 0.975702f,
co657_frmb 0:215c9308dc52 16 0.980785f, 0.985278f, 0.989177f, 0.992480f, 0.995185f, 0.997290f, 0.998795f, 0.999699f,
co657_frmb 0:215c9308dc52 17 1.000000f, 0.999699f, 0.998795f, 0.997290f, 0.995185f, 0.992480f, 0.989177f, 0.985278f,
co657_frmb 0:215c9308dc52 18 0.980785f, 0.975702f, 0.970031f, 0.963776f, 0.956940f, 0.949528f, 0.941544f, 0.932993f,
co657_frmb 0:215c9308dc52 19 0.923880f, 0.914210f, 0.903989f, 0.893224f, 0.881921f, 0.870087f, 0.857729f, 0.844854f,
co657_frmb 0:215c9308dc52 20 0.831470f, 0.817585f, 0.803208f, 0.788346f, 0.773010f, 0.757209f, 0.740951f, 0.724247f,
co657_frmb 0:215c9308dc52 21 0.707107f, 0.689541f, 0.671559f, 0.653173f, 0.634393f, 0.615232f, 0.595699f, 0.575808f,
co657_frmb 0:215c9308dc52 22 0.555570f, 0.534998f, 0.514103f, 0.492898f, 0.471397f, 0.449611f, 0.427555f, 0.405241f,
co657_frmb 0:215c9308dc52 23 0.382683f, 0.359895f, 0.336890f, 0.313682f, 0.290285f, 0.266713f, 0.242980f, 0.219101f,
co657_frmb 0:215c9308dc52 24 0.195090f, 0.170962f, 0.146731f, 0.122411f, 0.098017f, 0.073564f, 0.049068f, 0.024541f,
co657_frmb 0:215c9308dc52 25 -0.000000f, -0.024541f, -0.049068f, -0.073565f, -0.098017f, -0.122411f, -0.146730f, -0.170962f,
co657_frmb 0:215c9308dc52 26 -0.195090f, -0.219101f, -0.242980f, -0.266713f, -0.290285f, -0.313682f, -0.336890f, -0.359895f,
co657_frmb 0:215c9308dc52 27 -0.382683f, -0.405241f, -0.427555f, -0.449611f, -0.471397f, -0.492898f, -0.514103f, -0.534998f,
co657_frmb 0:215c9308dc52 28 -0.555570f, -0.575808f, -0.595699f, -0.615232f, -0.634393f, -0.653173f, -0.671559f, -0.689541f,
co657_frmb 0:215c9308dc52 29 -0.707107f, -0.724247f, -0.740951f, -0.757209f, -0.773010f, -0.788346f, -0.803208f, -0.817585f,
co657_frmb 0:215c9308dc52 30 -0.831469f, -0.844853f, -0.857729f, -0.870087f, -0.881921f, -0.893224f, -0.903989f, -0.914210f,
co657_frmb 0:215c9308dc52 31 -0.923880f, -0.932993f, -0.941544f, -0.949528f, -0.956940f, -0.963776f, -0.970031f, -0.975702f,
co657_frmb 0:215c9308dc52 32 -0.980785f, -0.985278f, -0.989177f, -0.992480f, -0.995185f, -0.997290f, -0.998795f, -0.999699f,
co657_frmb 0:215c9308dc52 33 -1.000000f, -0.999699f, -0.998795f, -0.997290f, -0.995185f, -0.992480f, -0.989177f, -0.985278f,
co657_frmb 0:215c9308dc52 34 -0.980785f, -0.975702f, -0.970031f, -0.963776f, -0.956940f, -0.949528f, -0.941544f, -0.932993f,
co657_frmb 0:215c9308dc52 35 -0.923879f, -0.914210f, -0.903989f, -0.893224f, -0.881921f, -0.870087f, -0.857729f, -0.844853f,
co657_frmb 0:215c9308dc52 36 -0.831470f, -0.817585f, -0.803208f, -0.788346f, -0.773010f, -0.757209f, -0.740951f, -0.724247f,
co657_frmb 0:215c9308dc52 37 -0.707107f, -0.689541f, -0.671559f, -0.653173f, -0.634393f, -0.615231f, -0.595699f, -0.575808f,
co657_frmb 0:215c9308dc52 38 -0.555570f, -0.534998f, -0.514103f, -0.492898f, -0.471397f, -0.449612f, -0.427555f, -0.405241f,
co657_frmb 0:215c9308dc52 39 -0.382683f, -0.359895f, -0.336890f, -0.313682f, -0.290285f, -0.266713f, -0.242980f, -0.219101f,
co657_frmb 0:215c9308dc52 40 -0.195090f, -0.170962f, -0.146730f, -0.122411f, -0.098017f, -0.073565f, -0.049068f, -0.024541f };
co657_frmb 0:215c9308dc52 41
co657_frmb 0:215c9308dc52 42 /** floating-point sine lookup
co657_frmb 0:215c9308dc52 43 *
co657_frmb 0:215c9308dc52 44 * @param A angle (0-255)
co657_frmb 0:215c9308dc52 45 */
co657_frmb 0:215c9308dc52 46 #define gfx3d_sin(A) D_sin_table[(A) & 0xff]
co657_frmb 0:215c9308dc52 47
co657_frmb 0:215c9308dc52 48 /** floating-point cosine lookup
co657_frmb 0:215c9308dc52 49 *
co657_frmb 0:215c9308dc52 50 * @param A angle (0-255)
co657_frmb 0:215c9308dc52 51 */
co657_frmb 0:215c9308dc52 52 #define gfx3d_cos(A) D_sin_table[((A) + 64) & 0xff]
co657_frmb 0:215c9308dc52 53
co657_frmb 0:215c9308dc52 54 #endif /* !__G3D_SINTAB_H */