2 * Copyright (c) 2013, TOYOTA MOTOR CORPORATION.
4 * This program is licensed under the terms and conditions of the
5 * Apache License, version 2.0. The full text of the Apache License is at
6 * http://www.apache.org/licenses/LICENSE-2.0
10 * @brief header file oflibrary which displays 3D field of view
15 #ifndef SAMPLENAVI_E3D_H_
16 #define SAMPLENAVI_E3D_H_
18 #include <Ecore_Evas.h>
23 #include "samplenavi.h"
26 void init_e3d(Evas *e3d, void *p_in, size_t len);
28 void draw_route(Evas *e3d);
29 void draw_landmark(Evas *e3d);
30 void calc_camera_coord();
32 #ifdef _USE_Z_LIMIT_FIX_
36 STARTING_POINT, /* FIXED Z_LIMIT START POINT */
37 ENDING_POINT, /* FIXED Z_LIMIT END POINT */
38 BOTH_POINT /* FIXED Z_LIMIT START/END POINT */
43 typedef struct _CsvRoute
49 typedef struct _CsvLandmark
59 #ifdef _USE_Z_LIMIT_FIX_
60 enum Check_Route status;
78 /* Camera Positions */
79 typedef struct _Camera
85 typedef struct _CameraGeocode
91 typedef struct _MapPos
100 extern CameraGeocode camera_geocode;
101 extern MapPos map_pos;
102 extern char set_route;
103 extern char enable_navi;
104 extern double goal_square_length;
107 extern int polygon_count;
111 #define POINT(point, xx, yy, zz, uu, vv) \
118 #define PLANE_POINT(plane, i, xx, yy, zz, uu, vv) \
119 plane->pt[i].x = xx; \
120 plane->pt[i].y = yy; \
121 plane->pt[i].z = zz; \
122 plane->pt[i].u = uu; \
125 #define SIDE_POINT(p, xx, yy, zz, uu, vv) \
126 plane->pt[p].x = xx; \
127 plane->pt[p].y = yy; \
128 plane->pt[p].z = zz; \
129 plane->pt[p].u = uu; \
132 #define CUBE_POINT(n, p, xx, yy, zz, uu, vv) \
133 c->side[n].pt[p].x = xx; \
134 c->side[n].pt[p].y = yy; \
135 c->side[n].pt[p].z = zz; \
136 c->side[n].pt[p].u = uu; \
137 c->side[n].pt[p].v = vv
140 #endif /* SAMPLENAVI_E3D_H_ */