Blender  V3.3
ED_paint.h
Go to the documentation of this file.
1 /* SPDX-License-Identifier: GPL-2.0-or-later */
2 
7 #pragma once
8 
9 #include "DNA_view3d_enums.h"
10 
11 #ifdef __cplusplus
12 extern "C" {
13 #endif
14 
15 struct bToolRef;
16 struct PaintModeSettings;
17 struct ImBuf;
18 struct Image;
19 struct ImageUser;
20 struct UndoStep;
21 struct UndoType;
22 struct bContext;
23 struct wmKeyConfig;
24 struct wmOperator;
25 typedef struct PaintTileMap PaintTileMap;
26 
27 /* paint_ops.c */
28 
29 void ED_operatortypes_paint(void);
30 void ED_operatormacros_paint(void);
31 void ED_keymap_paint(struct wmKeyConfig *keyconf);
32 
33 /* paint_image.c */
34 
36 void ED_imapaint_dirty_region(struct Image *ima,
37  struct ImBuf *ibuf,
38  struct ImageUser *iuser,
39  int x,
40  int y,
41  int w,
42  int h,
43  bool find_old);
45  float color[3],
46  struct wmOperator *op,
47  const int mouse[2]);
48 
49 /* paint_image_proj.c */
50 
51 void ED_paint_data_warning(struct ReportList *reports, bool uvs, bool mat, bool tex, bool stencil);
57  struct Scene *scene, struct Object *ob, bool *uvs, bool *mat, bool *tex, bool *stencil);
58 
59 /* image_undo.c */
60 
65 void ED_image_undo_push_begin(const char *name, int paint_mode);
66 void ED_image_undo_push_begin_with_image(const char *name,
67  struct Image *image,
68  struct ImBuf *ibuf,
69  struct ImageUser *iuser);
70 
71 void ED_image_undo_push_end(void);
75 void ED_image_undo_restore(struct UndoStep *us);
76 
78 void ED_image_undosys_type(struct UndoType *ut);
79 
80 void *ED_image_paint_tile_find(PaintTileMap *paint_tile_map,
81  struct Image *image,
82  struct ImBuf *ibuf,
83  struct ImageUser *iuser,
84  int x_tile,
85  int y_tile,
86  unsigned short **r_mask,
87  bool validate);
88 void *ED_image_paint_tile_push(PaintTileMap *paint_tile_map,
89  struct Image *image,
90  struct ImBuf *ibuf,
91  struct ImBuf **tmpibuf,
92  struct ImageUser *iuser,
93  int x_tile,
94  int y_tile,
95  unsigned short **r_mask,
96  bool **r_valid,
97  bool use_thread_lock,
98  bool find_prev);
101 
103 
104 #define ED_IMAGE_UNDO_TILE_BITS 6
105 #define ED_IMAGE_UNDO_TILE_SIZE (1 << ED_IMAGE_UNDO_TILE_BITS)
106 #define ED_IMAGE_UNDO_TILE_NUMBER(size) \
107  (((size) + ED_IMAGE_UNDO_TILE_SIZE - 1) >> ED_IMAGE_UNDO_TILE_BITS)
108 
109 /* paint_curve_undo.c */
110 
111 void ED_paintcurve_undo_push_begin(const char *name);
113 
115 void ED_paintcurve_undosys_type(struct UndoType *ut);
116 
117 /* paint_canvas.cc */
120  const struct PaintModeSettings *settings,
121  struct Object *ob,
122  eV3DShadingColorType orig_color_type);
123 
129 bool ED_paint_tool_use_canvas(struct bContext *C, struct bToolRef *tref);
130 
131 /* Store the last used tool in the sculpt session. */
133 
134 #ifdef __cplusplus
135 }
136 #endif
eV3DShadingColorType
bool ED_paint_tool_use_canvas(struct bContext *C, struct bToolRef *tref)
void ED_paintcurve_undo_push_end(struct bContext *C)
void ED_paintcurve_undosys_type(struct UndoType *ut)
void ED_keymap_paint(struct wmKeyConfig *keyconf)
Definition: paint_ops.c:1491
void ED_paint_tool_update_sticky_shading_color(struct bContext *C, struct Object *ob)
eV3DShadingColorType ED_paint_shading_color_override(struct bContext *C, const struct PaintModeSettings *settings, struct Object *ob, eV3DShadingColorType orig_color_type)
void ED_paint_data_warning(struct ReportList *reports, bool uvs, bool mat, bool tex, bool stencil)
void ED_imapaint_clear_partial_redraw(void)
Definition: paint_image.cc:91
void ED_image_undo_push_begin(const char *name, int paint_mode)
Definition: image_undo.cc:1095
void ED_image_undo_restore(struct UndoStep *us)
Definition: image_undo.cc:1077
void ED_image_paint_tile_lock_end(void)
Definition: image_undo.cc:69
void ED_image_paint_tile_lock_init(void)
Definition: image_undo.cc:64
void ED_image_undosys_type(struct UndoType *ut)
Definition: image_undo.cc:1027
void * ED_image_paint_tile_find(PaintTileMap *paint_tile_map, struct Image *image, struct ImBuf *ibuf, struct ImageUser *iuser, int x_tile, int y_tile, unsigned short **r_mask, bool validate)
Definition: image_undo.cc:158
struct PaintTileMap * ED_image_paint_tile_map_get(void)
Definition: image_undo.cc:1061
void ED_image_undo_push_end(void)
Definition: image_undo.cc:1133
void * ED_image_paint_tile_push(PaintTileMap *paint_tile_map, struct Image *image, struct ImBuf *ibuf, struct ImBuf **tmpibuf, struct ImageUser *iuser, int x_tile, int y_tile, unsigned short **r_mask, bool **r_valid, bool use_thread_lock, bool find_prev)
Definition: image_undo.cc:192
void ED_imapaint_dirty_region(struct Image *ima, struct ImBuf *ibuf, struct ImageUser *iuser, int x, int y, int w, int h, bool find_old)
Definition: paint_image.cc:109
void ED_paintcurve_undo_push_begin(const char *name)
void ED_image_undo_push_begin_with_image(const char *name, struct Image *image, struct ImBuf *ibuf, struct ImageUser *iuser)
Definition: image_undo.cc:1100
void ED_operatormacros_paint(void)
Definition: paint_ops.c:1383
void ED_imapaint_bucket_fill(struct bContext *C, float color[3], struct wmOperator *op, const int mouse[2])
Definition: paint_image.cc:961
bool ED_paint_proj_mesh_data_check(struct Scene *scene, struct Object *ob, bool *uvs, bool *mat, bool *tex, bool *stencil)
void ED_operatortypes_paint(void)
Definition: paint_ops.c:1399
_GL_VOID GLfloat value _GL_VOID_RET _GL_VOID const GLuint GLboolean *residences _GL_BOOL_RET _GL_VOID GLsizei GLfloat GLfloat GLfloat GLfloat const GLubyte *bitmap _GL_VOID_RET _GL_VOID GLenum const void *lists _GL_VOID_RET _GL_VOID const GLdouble *equation _GL_VOID_RET _GL_VOID GLdouble GLdouble blue _GL_VOID_RET _GL_VOID GLfloat GLfloat blue _GL_VOID_RET _GL_VOID GLint GLint blue _GL_VOID_RET _GL_VOID GLshort GLshort blue _GL_VOID_RET _GL_VOID GLubyte GLubyte blue _GL_VOID_RET _GL_VOID GLuint GLuint blue _GL_VOID_RET _GL_VOID GLushort GLushort blue _GL_VOID_RET _GL_VOID GLbyte GLbyte GLbyte alpha _GL_VOID_RET _GL_VOID GLdouble GLdouble GLdouble alpha _GL_VOID_RET _GL_VOID GLfloat GLfloat GLfloat alpha _GL_VOID_RET _GL_VOID GLint GLint GLint alpha _GL_VOID_RET _GL_VOID GLshort GLshort GLshort alpha _GL_VOID_RET _GL_VOID GLubyte GLubyte GLubyte alpha _GL_VOID_RET _GL_VOID GLuint GLuint GLuint alpha _GL_VOID_RET _GL_VOID GLushort GLushort GLushort alpha _GL_VOID_RET _GL_VOID GLenum mode _GL_VOID_RET _GL_VOID GLint y
Group Output data from inside of a node group A color picker Mix two input colors RGB to Convert a color s luminance to a grayscale value Generate a normal vector and a dot product Bright Control the brightness and contrast of the input color Vector Map an input vectors to used to fine tune the interpolation of the input Camera Retrieve information about the camera and how it relates to the current shading point s position Clamp a value between a minimum and a maximum Vector Perform vector math operation Invert a color
#define C
Definition: RandGen.cpp:25
SIMD_FORCE_INLINE const btScalar & w() const
Return the w value.
Definition: btQuadWord.h:119
Scene scene
depth_tx normal_tx diffuse_light_tx specular_light_tx volume_light_tx environment_tx ambient_occlusion_tx aov_value_tx in_weight_img image(1, GPU_R32F, Qualifier::WRITE, ImageType::FLOAT_2D_ARRAY, "out_weight_img") .image(3