2023-08-08 16:06:40 +00:00
|
|
|
#include "py/runtime.h"
|
|
|
|
#include "py/objstr.h"
|
|
|
|
|
|
|
|
extern const mp_obj_type_t VECTOR_type;
|
2023-08-16 12:10:53 +00:00
|
|
|
extern const mp_obj_type_t POLYGON_type;
|
2024-07-25 14:07:26 +00:00
|
|
|
extern const mp_obj_type_t TRANSFORM_type;
|
|
|
|
|
|
|
|
/* Polygon */
|
2023-08-16 12:10:53 +00:00
|
|
|
|
|
|
|
extern mp_obj_t POLYGON_make_new(const mp_obj_type_t *type, size_t n_args, size_t n_kw, const mp_obj_t *all_args);
|
2024-07-25 14:07:26 +00:00
|
|
|
extern mp_obj_t POLYGON_path(size_t n_args, const mp_obj_t *all_args);
|
|
|
|
extern mp_obj_t POLYGON_regular(size_t n_args, const mp_obj_t *pos_args, mp_map_t *kw_args);
|
|
|
|
extern mp_obj_t POLYGON_rectangle(size_t n_args, const mp_obj_t *pos_args, mp_map_t *kw_args);
|
|
|
|
extern mp_obj_t POLYGON_circle(size_t n_args, const mp_obj_t *pos_args, mp_map_t *kw_args);
|
|
|
|
extern mp_obj_t POLYGON_arc(size_t n_args, const mp_obj_t *pos_args, mp_map_t *kw_args);
|
2024-11-26 11:12:37 +00:00
|
|
|
extern mp_obj_t POLYGON_star(size_t n_args, const mp_obj_t *pos_args, mp_map_t *kw_args);
|
|
|
|
extern mp_obj_t POLYGON_line(size_t n_args, const mp_obj_t *pos_args, mp_map_t *kw_args);
|
2024-07-25 14:07:26 +00:00
|
|
|
|
2023-08-16 12:10:53 +00:00
|
|
|
extern void POLYGON_print(const mp_print_t *print, mp_obj_t self_in, mp_print_kind_t kind);
|
2023-09-06 08:40:38 +00:00
|
|
|
extern mp_obj_t POLYGON_centroid(mp_obj_t self_in);
|
2023-09-12 12:18:33 +00:00
|
|
|
extern mp_obj_t POLYGON_bounds(mp_obj_t self_in);
|
2024-07-25 14:07:26 +00:00
|
|
|
extern mp_obj_t POLYGON_transform(mp_obj_t self_in, mp_obj_t transform_in);
|
|
|
|
extern mp_obj_t POLYGON_getiter(mp_obj_t o_in, mp_obj_iter_buf_t *iter_buf);
|
2023-08-16 12:10:53 +00:00
|
|
|
extern mp_obj_t POLYGON__del__(mp_obj_t self_in);
|
2023-08-08 16:06:40 +00:00
|
|
|
|
2024-07-25 14:07:26 +00:00
|
|
|
/* Transform */
|
|
|
|
|
|
|
|
extern mp_obj_t TRANSFORM_make_new(const mp_obj_type_t *type, size_t n_args, size_t n_kw, const mp_obj_t *all_args);
|
|
|
|
extern mp_obj_t TRANSFORM_rotate(mp_obj_t self_in, mp_obj_t angle_in, mp_obj_t origin_in);
|
|
|
|
extern mp_obj_t TRANSFORM_translate(mp_obj_t self_in, mp_obj_t x_in, mp_obj_t y_in);
|
2024-10-08 14:24:08 +00:00
|
|
|
extern mp_obj_t TRANSFORM_scale(mp_obj_t self_in, mp_obj_t x_in, mp_obj_t y_in);
|
2024-12-11 11:24:42 +00:00
|
|
|
extern mp_obj_t TRANSFORM_custom(mp_obj_t self_in, mp_obj_t custom_in);
|
2024-07-25 14:07:26 +00:00
|
|
|
extern mp_obj_t TRANSFORM_reset(mp_obj_t self_in);
|
|
|
|
|
|
|
|
/* Vector */
|
|
|
|
|
2023-08-08 16:06:40 +00:00
|
|
|
extern mp_obj_t VECTOR_make_new(const mp_obj_type_t *type, size_t n_args, size_t n_kw, const mp_obj_t *all_args);
|
|
|
|
|
2023-08-14 14:58:40 +00:00
|
|
|
extern mp_obj_t VECTOR_text(size_t n_args, const mp_obj_t *pos_args, mp_map_t *kw_args);
|
2024-10-09 14:06:51 +00:00
|
|
|
extern mp_obj_t VECTOR_measure_text(size_t n_args, const mp_obj_t *pos_args, mp_map_t *kw_args);
|
2023-08-15 14:36:52 +00:00
|
|
|
extern mp_obj_t VECTOR_set_font(mp_obj_t self_in, mp_obj_t font, mp_obj_t size);
|
|
|
|
extern mp_obj_t VECTOR_set_font_size(mp_obj_t self_in, mp_obj_t size);
|
2024-10-08 14:24:08 +00:00
|
|
|
extern mp_obj_t VECTOR_set_font_word_spacing(mp_obj_t self_in, mp_obj_t size);
|
|
|
|
extern mp_obj_t VECTOR_set_font_letter_spacing(mp_obj_t self_in, mp_obj_t size);
|
|
|
|
extern mp_obj_t VECTOR_set_font_line_height(mp_obj_t self_in, mp_obj_t size);
|
2024-10-09 14:06:51 +00:00
|
|
|
extern mp_obj_t VECTOR_set_font_align(mp_obj_t self_in, mp_obj_t align);
|
2023-08-16 12:10:53 +00:00
|
|
|
extern mp_obj_t VECTOR_set_antialiasing(mp_obj_t self_in, mp_obj_t aa);
|
2024-07-25 14:07:26 +00:00
|
|
|
extern mp_obj_t VECTOR_set_transform(mp_obj_t self_in, mp_obj_t transform_in);
|
|
|
|
extern mp_obj_t VECTOR_set_clip(mp_obj_t self_in, mp_obj_t clip_in);
|
2023-08-16 12:10:53 +00:00
|
|
|
|
2024-07-25 14:07:26 +00:00
|
|
|
extern mp_obj_t VECTOR_draw(mp_obj_t self_in, mp_obj_t poly_in);
|
2023-08-16 12:10:53 +00:00
|
|
|
extern mp_obj_t VECTOR_rotate(size_t n_args, const mp_obj_t *pos_args, mp_map_t *kw_args);
|
|
|
|
extern mp_obj_t VECTOR_translate(size_t n_args, const mp_obj_t *pos_args, mp_map_t *kw_args);
|