/* Last edited on 2020-10-03 20:59:26 by jstolfi */ /* _*_ latin-1 _*_ */ /* Bezier model of human body */ /* Coordinate axes are X = forwards, Y = right, Z = up. */ #ifndef bzb_patch_H #define bzb_patch_H #include #include typedef struct bzb_patch_cp_t { r3_t cp[16]; /* Bézier control points. */ bzb_texture_t *tx; /* Texture for the patch. */ } bzb_patch_cp_t; /* Parameters for a generic Bézier patch. Fields {cp[0..15]} are the Bézier control points, as a {4x4} array linearized by rows. */ typedef struct bzb_patch_cquad_t { r3_t cp[4]; /* Core control points. */ bzb_texture_t *tx; /* Texture for the patch. */ } bzb_patch_cquad_t; /* Parameters for a Bézier patch in a C1 mesh. Fields {cp[0..3]} is the central {2x2} array of the {4x4} Bézier control point array, linearized by rows. */ #endif