diff options
Diffstat (limited to 'source/blender/editors/gpencil')
-rw-r--r-- | source/blender/editors/gpencil/gpencil_fill.c | 7 | ||||
-rw-r--r-- | source/blender/editors/gpencil/gpencil_paint.c | 12 | ||||
-rw-r--r-- | source/blender/editors/gpencil/gpencil_primitive.c | 6 |
3 files changed, 13 insertions, 12 deletions
diff --git a/source/blender/editors/gpencil/gpencil_fill.c b/source/blender/editors/gpencil/gpencil_fill.c index 8e17816dcc1..e3e73d5deb5 100644 --- a/source/blender/editors/gpencil/gpencil_fill.c +++ b/source/blender/editors/gpencil/gpencil_fill.c @@ -1156,8 +1156,9 @@ static void gpencil_stroke_from_buffer(tGPDfill *tgpf) ToolSettings *ts = tgpf->scene->toolsettings; const char align_flag = ts->gpencil_v3d_align; const bool is_depth = (bool)(align_flag & (GP_PROJECT_DEPTH_VIEW | GP_PROJECT_DEPTH_STROKE)); - const bool is_camera = (bool)(ts->gp_sculpt.lock_axis == 0) && - (tgpf->rv3d->persp == RV3D_CAMOB) && (!is_depth); + const bool is_lock_axis_view = (bool)(ts->gp_sculpt.lock_axis == 0); + const bool is_camera = is_lock_axis_view && (tgpf->rv3d->persp == RV3D_CAMOB) && (!is_depth); + Brush *brush = BKE_paint_brush(&ts->gp_paint->paint); if (brush == NULL) { return; @@ -1285,7 +1286,7 @@ static void gpencil_stroke_from_buffer(tGPDfill *tgpf) } /* If camera view or view projection, reproject flat to view to avoid perspective effect. */ - if ((align_flag & GP_PROJECT_VIEWSPACE) || is_camera) { + if (((align_flag & GP_PROJECT_VIEWSPACE) && is_lock_axis_view) || is_camera) { ED_gpencil_project_stroke_to_view(tgpf->C, tgpf->gpl, gps); } diff --git a/source/blender/editors/gpencil/gpencil_paint.c b/source/blender/editors/gpencil/gpencil_paint.c index b55e47d74f3..2d5491e7569 100644 --- a/source/blender/editors/gpencil/gpencil_paint.c +++ b/source/blender/editors/gpencil/gpencil_paint.c @@ -939,10 +939,10 @@ static void gpencil_stroke_newfrombuffer(tGPsdata *p) RegionView3D *rv3d = p->region->regiondata; const int def_nr = obact->actdef - 1; const bool have_weight = (bool)BLI_findlink(&obact->defbase, def_nr); - const char *align_flag = &ts->gpencil_v3d_align; - const bool is_depth = (bool)(*align_flag & (GP_PROJECT_DEPTH_VIEW | GP_PROJECT_DEPTH_STROKE)); - const bool is_camera = (bool)(ts->gp_sculpt.lock_axis == 0) && (rv3d->persp == RV3D_CAMOB) && - (!is_depth); + const char align_flag = ts->gpencil_v3d_align; + const bool is_depth = (bool)(align_flag & (GP_PROJECT_DEPTH_VIEW | GP_PROJECT_DEPTH_STROKE)); + const bool is_lock_axis_view = (bool)(ts->gp_sculpt.lock_axis == 0); + const bool is_camera = is_lock_axis_view && (rv3d->persp == RV3D_CAMOB) && (!is_depth); int totelem; /* For very low pressure at the end, truncate stroke. */ @@ -1087,7 +1087,7 @@ static void gpencil_stroke_newfrombuffer(tGPsdata *p) } /* If camera view or view projection, reproject flat to view to avoid perspective effect. */ - if ((*p->align_flag & GP_PROJECT_VIEWSPACE) || is_camera) { + if (((align_flag & GP_PROJECT_VIEWSPACE) && is_lock_axis_view) || is_camera) { ED_gpencil_project_stroke_to_view(p->C, p->gpl, gps); } } @@ -1236,7 +1236,7 @@ static void gpencil_stroke_newfrombuffer(tGPsdata *p) /* change position relative to parent object */ gpencil_apply_parent(depsgraph, obact, gpl, gps); /* If camera view or view projection, reproject flat to view to avoid perspective effect. */ - if ((*p->align_flag & GP_PROJECT_VIEWSPACE) || is_camera) { + if (((align_flag & GP_PROJECT_VIEWSPACE) && is_lock_axis_view) || is_camera) { ED_gpencil_project_stroke_to_view(p->C, p->gpl, gps); } diff --git a/source/blender/editors/gpencil/gpencil_primitive.c b/source/blender/editors/gpencil/gpencil_primitive.c index 3a0e1ce3d15..d94a02204a2 100644 --- a/source/blender/editors/gpencil/gpencil_primitive.c +++ b/source/blender/editors/gpencil/gpencil_primitive.c @@ -717,8 +717,8 @@ static void gpencil_primitive_update_strokes(bContext *C, tGPDprimitive *tgpi) int depth_margin = (ts->gpencil_v3d_align & GP_PROJECT_DEPTH_STROKE) ? 4 : 0; const char align_flag = ts->gpencil_v3d_align; bool is_depth = (bool)(align_flag & (GP_PROJECT_DEPTH_VIEW | GP_PROJECT_DEPTH_STROKE)); - const bool is_camera = (bool)(ts->gp_sculpt.lock_axis == 0) && - (tgpi->rv3d->persp == RV3D_CAMOB) && (!is_depth); + const bool is_lock_axis_view = (bool)(ts->gp_sculpt.lock_axis == 0); + const bool is_camera = is_lock_axis_view && (tgpi->rv3d->persp == RV3D_CAMOB) && (!is_depth); if (tgpi->type == GP_STROKE_BOX) { tgpi->tot_edges--; @@ -1082,7 +1082,7 @@ static void gpencil_primitive_update_strokes(bContext *C, tGPDprimitive *tgpi) } /* If camera view or view projection, reproject flat to view to avoid perspective effect. */ - if ((align_flag & GP_PROJECT_VIEWSPACE) || is_camera) { + if (((align_flag & GP_PROJECT_VIEWSPACE) && is_lock_axis_view) || is_camera) { ED_gpencil_project_stroke_to_view(C, tgpi->gpl, gps); } |