fxengine/include/fxengine/object.h

37 lines
770 B
C
Raw Normal View History

2019-09-07 21:56:35 +02:00
#ifndef FE_OBJECT
#define FE_OBJECT
2019-09-07 19:57:20 +02:00
2019-09-18 19:04:56 +02:00
#include <fxengine/space.h>
#include <fxengine/triangle.h>
2019-09-07 19:57:20 +02:00
#include <stdint.h>
#include <stdbool.h>
2019-09-07 21:56:35 +02:00
struct fe_object
2019-09-07 19:57:20 +02:00
{
2019-09-07 21:56:35 +02:00
fe_triangle * faces;
2019-09-07 19:57:20 +02:00
uint32_t f_size;
bool f_owner;
fe_ivertex * points;
2019-09-07 19:57:20 +02:00
uint32_t p_size;
bool p_owner;
};
2019-09-07 21:56:35 +02:00
typedef struct fe_object fe_object;
2019-09-07 19:57:20 +02:00
2019-09-07 21:56:35 +02:00
void fe_object_init(fe_object * object);
2019-09-07 19:57:20 +02:00
void fe_object_set_points(fe_object * object, fe_ivertex * points, uint32_t n, bool copy);
2019-09-07 19:57:20 +02:00
2019-09-07 21:56:35 +02:00
void fe_object_set_faces(fe_object * object, fe_triangle * faces, uint32_t n, bool copy);
2019-09-07 19:57:20 +02:00
2019-09-07 21:56:35 +02:00
void fe_object_delete(fe_object * object);
2019-09-07 19:57:20 +02:00
2019-09-07 21:56:35 +02:00
void fe_object_display(fe_object * object);
2019-09-07 20:01:58 +02:00
void fe_object_debug(const fe_object * object);
fe_ipoint* fe_object_get_vertex(const fe_object * object, const int n);
2019-09-07 19:57:20 +02:00
#endif