diff options
Diffstat (limited to 'source/blender/blenkernel/BKE_sketch.h')
-rw-r--r-- | source/blender/blenkernel/BKE_sketch.h | 149 |
1 files changed, 0 insertions, 149 deletions
diff --git a/source/blender/blenkernel/BKE_sketch.h b/source/blender/blenkernel/BKE_sketch.h deleted file mode 100644 index 9b9c125fbe6..00000000000 --- a/source/blender/blenkernel/BKE_sketch.h +++ /dev/null @@ -1,149 +0,0 @@ -/* - * ***** BEGIN GPL LICENSE BLOCK ***** - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License - * as published by the Free Software Foundation; either version 2 - * of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software Foundation, - * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. - * - * Contributor(s): none yet. - * - * ***** END GPL LICENSE BLOCK ***** - */ -#ifndef __BKE_SKETCH_H__ -#define __BKE_SKETCH_H__ - -/** \file BKE_sketch.h - * \ingroup bke - */ - -typedef enum SK_PType { - PT_CONTINUOUS, - PT_EXACT, -} SK_PType; - -typedef enum SK_PMode { - PT_SNAP, - PT_PROJECT, -} SK_PMode; - -typedef struct SK_Point { - float p[3]; - short p2d[2]; - float no[3]; - float size; - SK_PType type; - SK_PMode mode; -} SK_Point; - -typedef struct SK_Stroke { - struct SK_Stroke *next, *prev; - - SK_Point *points; - int nb_points; - int buf_size; - int selected; -} SK_Stroke; - -#define SK_OVERDRAW_LIMIT 5 - -typedef struct SK_Overdraw { - SK_Stroke *target; - int start, end; - int count; -} SK_Overdraw; - -#define SK_Stroke_BUFFER_INIT_SIZE 20 - -typedef struct SK_DrawData { - int mval[2]; - int previous_mval[2]; - SK_PType type; -} SK_DrawData; - -typedef struct SK_Intersection { - struct SK_Intersection *next, *prev; - SK_Stroke *stroke; - int before; - int after; - int gesture_index; - float p[3]; - float lambda; /* used for sorting intersection points */ -} SK_Intersection; - -typedef struct SK_Sketch { - ListBase strokes; - SK_Stroke *active_stroke; - SK_Stroke *gesture; - SK_Point next_point; - SK_Overdraw over; -} SK_Sketch; - - -typedef struct SK_Gesture { - SK_Stroke *stk; - SK_Stroke *segments; - - ListBase intersections; - ListBase self_intersections; - - int nb_self_intersections; - int nb_intersections; - int nb_segments; -} SK_Gesture; - - -/************************************************/ - -void freeSketch(SK_Sketch *sketch); -SK_Sketch *createSketch(void); - -void sk_removeStroke(SK_Sketch *sketch, SK_Stroke *stk); - -void sk_freeStroke(SK_Stroke *stk); -SK_Stroke *sk_createStroke(void); - -SK_Point *sk_lastStrokePoint(SK_Stroke *stk); - -void sk_allocStrokeBuffer(SK_Stroke *stk); -void sk_shrinkStrokeBuffer(SK_Stroke *stk); -void sk_growStrokeBuffer(SK_Stroke *stk); -void sk_growStrokeBufferN(SK_Stroke *stk, int n); - -void sk_replaceStrokePoint(SK_Stroke *stk, SK_Point *pt, int n); -void sk_insertStrokePoint(SK_Stroke *stk, SK_Point *pt, int n); -void sk_appendStrokePoint(SK_Stroke *stk, SK_Point *pt); -void sk_insertStrokePoints(SK_Stroke *stk, SK_Point *pts, int len, int start, int end); - -void sk_trimStroke(SK_Stroke *stk, int start, int end); -void sk_straightenStroke(SK_Stroke *stk, int start, int end, float p_start[3], float p_end[3]); -void sk_polygonizeStroke(SK_Stroke *stk, int start, int end); -void sk_flattenStroke(SK_Stroke *stk, int start, int end); -void sk_reverseStroke(SK_Stroke *stk); - -void sk_filterLastContinuousStroke(SK_Stroke *stk); -void sk_filterStroke(SK_Stroke *stk, int start, int end); - -void sk_initPoint(SK_Point *pt, SK_DrawData *dd, const float no[3]); -void sk_copyPoint(SK_Point *dst, SK_Point *src); - -int sk_stroke_filtermval(SK_DrawData *dd); -void sk_endContinuousStroke(SK_Stroke *stk); - -void sk_updateNextPoint(SK_Sketch *sketch, SK_Stroke *stk); - -void sk_initDrawData(SK_DrawData *dd, const int mval[2]); - -void sk_deleteSelectedStrokes(SK_Sketch *sketch); -void sk_selectAllSketch(SK_Sketch *sketch, int mode); - -#endif |