papercraft/camera.h
2017-09-26 22:59:09 -04:00

36 lines
473 B
C

#pragma once
#include "v3.h"
typedef struct _camera_t camera_t;
extern camera_t *
camera_new(
v3_t eye,
float phi,
float theta,
float psi
);
extern void
camera_setup(
camera_t * const c,
v3_t eye,
float phi,
float theta,
float psi
);
/** Transform a XYZ point into a screen point.
*
* Returns 0 if this is behind us. Perhaps it should do a z buffer?
*/
extern int
camera_project(
const camera_t * const c,
const v3_t * const v,
v3_t * const v_out
);