GP: Allow 0 subdivisions for canvas grid
This commit is contained in:
parent
77787310ad
commit
77def38eab
|
@ -649,14 +649,11 @@ GPUBatch *DRW_gpencil_get_grid(void)
|
|||
Scene *scene = draw_ctx->scene;
|
||||
ToolSettings *ts = scene->toolsettings;
|
||||
View3D *v3d = draw_ctx->v3d;
|
||||
const bool do_center = (v3d->overlay.gpencil_grid_lines <= 0) ? false : true;
|
||||
|
||||
float col_grid[4];
|
||||
|
||||
/* verify we have something to draw and valid values */
|
||||
if (v3d->overlay.gpencil_grid_lines < 1) {
|
||||
v3d->overlay.gpencil_grid_lines = GP_DEFAULT_GRID_LINES;
|
||||
}
|
||||
|
||||
if (v3d->overlay.gpencil_grid_scale == 0.0f) {
|
||||
v3d->overlay.gpencil_grid_scale = 1.0f;
|
||||
}
|
||||
|
@ -696,7 +693,7 @@ GPUBatch *DRW_gpencil_get_grid(void)
|
|||
}
|
||||
|
||||
const char *grid_unit = NULL;
|
||||
const int gridlines = v3d->overlay.gpencil_grid_lines;
|
||||
const int gridlines = (v3d->overlay.gpencil_grid_lines <= 0) ? 1 : v3d->overlay.gpencil_grid_lines;
|
||||
const float grid_scale = v3d->overlay.gpencil_grid_scale * ED_scene_grid_scale(scene, &grid_unit);
|
||||
const float grid = grid_scale;
|
||||
const float space = (grid_scale / gridlines);
|
||||
|
@ -737,15 +734,16 @@ GPUBatch *DRW_gpencil_get_grid(void)
|
|||
idx++;
|
||||
}
|
||||
/* center lines */
|
||||
set_grid_point(vbo, idx, col_grid, pos_id, color_id, -grid, 0.0f, axis);
|
||||
idx++;
|
||||
set_grid_point(vbo, idx, col_grid, pos_id, color_id, +grid, 0.0f, axis);
|
||||
idx++;
|
||||
|
||||
set_grid_point(vbo, idx, col_grid, pos_id, color_id, 0.0f, -grid, axis);
|
||||
idx++;
|
||||
set_grid_point(vbo, idx, col_grid, pos_id, color_id, 0.0f, +grid, axis);
|
||||
idx++;
|
||||
if (do_center) {
|
||||
set_grid_point(vbo, idx, col_grid, pos_id, color_id, -grid, 0.0f, axis);
|
||||
idx++;
|
||||
set_grid_point(vbo, idx, col_grid, pos_id, color_id, +grid, 0.0f, axis);
|
||||
idx++;
|
||||
|
||||
set_grid_point(vbo, idx, col_grid, pos_id, color_id, 0.0f, -grid, axis);
|
||||
idx++;
|
||||
set_grid_point(vbo, idx, col_grid, pos_id, color_id, 0.0f, +grid, axis);
|
||||
idx++;
|
||||
}
|
||||
return GPU_batch_create_ex(GPU_PRIM_LINES, vbo, NULL, GPU_BATCH_OWNS_VBO);
|
||||
}
|
||||
|
|
|
@ -2970,7 +2970,7 @@ static void rna_def_space_view3d_overlay(BlenderRNA *brna)
|
|||
|
||||
prop = RNA_def_property(srna, "gpencil_grid_lines", PROP_INT, PROP_NONE);
|
||||
RNA_def_property_int_sdna(prop, NULL, "overlay.gpencil_grid_lines");
|
||||
RNA_def_property_range(prop, 1, INT_MAX);
|
||||
RNA_def_property_range(prop, 0, INT_MAX);
|
||||
RNA_def_property_int_default(prop, GP_DEFAULT_GRID_LINES);
|
||||
RNA_def_property_ui_text(prop, "Subdivisions", "Number of subdivisions in each side of symmetry line");
|
||||
RNA_def_property_update(prop, NC_SPACE | ND_SPACE_VIEW3D, NULL);
|
||||
|
|
Loading…
Reference in New Issue