Remove flag: SNAP_OBJECT_USE_CACHE from snap_context
Since the cache is created in one way or another, this flag is not really making a difference More details here: D2496
This commit is contained in:
@@ -970,6 +970,9 @@ static int sk_getStrokeSnapPoint(bContext *C, SK_Point *pt, SK_Sketch *sketch, S
|
||||
ToolSettings *ts = CTX_data_tool_settings(C);
|
||||
int point_added = 0;
|
||||
|
||||
/* TODO: Since the function `ED_transform_snap_object_context_create_view3d` creates a cache,
|
||||
* the ideal would be to call this function only at the beginning of the snap operation,
|
||||
* or at the beginning of the operator itself */
|
||||
struct SnapObjectContext *snap_context = ED_transform_snap_object_context_create_view3d(
|
||||
CTX_data_main(C), CTX_data_scene(C), 0,
|
||||
CTX_wm_region(C), CTX_wm_view3d(C));
|
||||
@@ -1038,6 +1041,8 @@ static int sk_getStrokeSnapPoint(bContext *C, SK_Point *pt, SK_Sketch *sketch, S
|
||||
}
|
||||
}
|
||||
|
||||
/* TODO: The ideal would be to call this function only once.
|
||||
* At the end of the operator */
|
||||
ED_transform_snap_object_context_destroy(snap_context);
|
||||
return point_added;
|
||||
}
|
||||
|
||||
@@ -65,10 +65,6 @@ struct SnapObjectParams {
|
||||
unsigned int use_object_edit_cage : 1;
|
||||
};
|
||||
|
||||
enum {
|
||||
SNAP_OBJECT_USE_CACHE = (1 << 0),
|
||||
};
|
||||
|
||||
typedef struct SnapObjectContext SnapObjectContext;
|
||||
SnapObjectContext *ED_transform_snap_object_context_create(
|
||||
struct Main *bmain, struct Scene *scene, int flag);
|
||||
|
||||
@@ -306,7 +306,7 @@ void EMBM_project_snap_verts(bContext *C, ARegion *ar, BMEditMesh *em)
|
||||
ED_view3d_init_mats_rv3d(obedit, ar->regiondata);
|
||||
|
||||
struct SnapObjectContext *snap_context = ED_transform_snap_object_context_create_view3d(
|
||||
CTX_data_main(C), CTX_data_scene(C), SNAP_OBJECT_USE_CACHE,
|
||||
CTX_data_main(C), CTX_data_scene(C), 0,
|
||||
ar, CTX_wm_view3d(C));
|
||||
|
||||
BM_ITER_MESH (eve, &iter, em->bm, BM_VERTS_OF_MESH) {
|
||||
|
||||
@@ -280,7 +280,7 @@ static void ruler_state_set(bContext *C, RulerInfo *ruler_info, int state)
|
||||
}
|
||||
else if (state == RULER_STATE_DRAG) {
|
||||
ruler_info->snap_context = ED_transform_snap_object_context_create_view3d(
|
||||
CTX_data_main(C), CTX_data_scene(C), SNAP_OBJECT_USE_CACHE,
|
||||
CTX_data_main(C), CTX_data_scene(C), 0,
|
||||
ruler_info->ar, CTX_wm_view3d(C));
|
||||
}
|
||||
else {
|
||||
|
||||
@@ -588,7 +588,7 @@ static bool initWalkInfo(bContext *C, WalkInfo *walk, wmOperator *op)
|
||||
walk->rv3d->rflag |= RV3D_NAVIGATING;
|
||||
|
||||
walk->snap_context = ED_transform_snap_object_context_create_view3d(
|
||||
CTX_data_main(C), walk->scene, SNAP_OBJECT_USE_CACHE,
|
||||
CTX_data_main(C), walk->scene, 0,
|
||||
walk->ar, walk->v3d);
|
||||
|
||||
walk->v3d_camera_control = ED_view3d_cameracontrol_acquire(
|
||||
|
||||
@@ -601,7 +601,7 @@ static void initSnappingMode(TransInfo *t)
|
||||
if (t->spacetype == SPACE_VIEW3D) {
|
||||
if (t->tsnap.object_context == NULL) {
|
||||
t->tsnap.object_context = ED_transform_snap_object_context_create_view3d(
|
||||
G.main, t->scene, SNAP_OBJECT_USE_CACHE,
|
||||
G.main, t->scene, 0,
|
||||
t->ar, t->view);
|
||||
|
||||
ED_transform_snap_object_context_set_editmesh_callbacks(
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user