MythTV master
surf3d.h
Go to the documentation of this file.
1#ifndef SURF3D_H
2#define SURF3D_H
3
4#include "v3d.h"
5#include <vector>
6
7using floatvec = std::vector<float>;
8
9struct surf3d {
10 std::vector<v3d> vertex;
11 std::vector<v3d> svertex;
13
15};
16
17struct grid3d {
19
20 int defx;
21 int sizex;
22 int defz;
23 int sizez;
24 int mode;
25};
26
27/* hi-level */
28
29/* works on grid3d */
30grid3d *grid3d_new (int sizex, int defx, int sizez, int defz, v3d center);
31void grid3d_free(grid3d **grid);
32void grid3d_update (grid3d *g, float angle, const floatvec& vals, float dist);
33
34/* low level */
35void surf3d_draw (surf3d *s, int color, int dist, int *buf, int *back, int W,int H);
36void grid3d_draw (grid3d *g, int color, int colorlow, int dist, int *buf, int *back, int W,int H);
37void surf3d_rotate (surf3d *s, float angle);
38void surf3d_translate (surf3d *s);
39
40#endif // SURF3D_H
static std::vector< uint32_t > back
Definition: goom_core.cpp:27
Definition: surf3d.h:17
int mode
Definition: surf3d.h:24
int sizex
Definition: surf3d.h:21
surf3d surf
Definition: surf3d.h:18
int defz
Definition: surf3d.h:22
int sizez
Definition: surf3d.h:23
int defx
Definition: surf3d.h:20
Definition: surf3d.h:9
std::vector< v3d > vertex
Definition: surf3d.h:10
v3d center
Definition: surf3d.h:14
int nbvertex
Definition: surf3d.h:12
std::vector< v3d > svertex
Definition: surf3d.h:11
Definition: v3d.h:10
void grid3d_update(grid3d *g, float angle, const floatvec &vals, float dist)
Definition: surf3d.cpp:106
void grid3d_free(grid3d **grid)
Definition: surf3d.cpp:12
void grid3d_draw(grid3d *g, int color, int colorlow, int dist, int *buf, int *back, int W, int H)
Definition: surf3d.cpp:70
std::vector< float > floatvec
Definition: surf3d.h:7
grid3d * grid3d_new(int sizex, int defx, int sizez, int defz, v3d center)
Definition: surf3d.cpp:20
void surf3d_translate(surf3d *s)
Definition: surf3d.cpp:100
void surf3d_draw(surf3d *s, int color, int dist, int *buf, int *back, int W, int H)
Definition: surf3d.cpp:57
void surf3d_rotate(surf3d *s, float angle)
Definition: surf3d.cpp:91
static floatvec vals
Definition: tentacle3d.cpp:21