[Bf-blender-cvs] [8074d04] soc-2016-multiview: add TH_LINKED_MARKER and TH_SEL_LINKED_MARKER
Tianwei Shen
noreply at git.blender.org
Tue Jul 12 15:30:18 CEST 2016
Commit: 8074d04334db8143faff1ffb3ba080d5cd030cb6
Author: Tianwei Shen
Date: Tue Jul 12 17:00:10 2016 +0800
Branches: soc-2016-multiview
https://developer.blender.org/rB8074d04334db8143faff1ffb3ba080d5cd030cb6
add TH_LINKED_MARKER and TH_SEL_LINKED_MARKER
===================================================================
M source/blender/editors/include/UI_resources.h
M source/blender/editors/interface/resources.c
M source/blender/editors/space_clip/tracking_ops_correspondence.c
M source/blender/makesdna/DNA_userdef_types.h
M source/blender/makesrna/intern/rna_userdef.c
===================================================================
diff --git a/source/blender/editors/include/UI_resources.h b/source/blender/editors/include/UI_resources.h
index a81221e..50cee5c 100644
--- a/source/blender/editors/include/UI_resources.h
+++ b/source/blender/editors/include/UI_resources.h
@@ -298,7 +298,11 @@ enum {
TH_V3D_CLIPPING_BORDER,
TH_METADATA_BG,
- TH_METADATA_TEXT
+ TH_METADATA_TEXT,
+
+ /* color theme for linked markers */
+ TH_LINKED_MARKER,
+ TH_SEL_LINKED_MARKER
};
/* XXX WARNING: previous is saved in file, so do not change order! */
diff --git a/source/blender/editors/interface/resources.c b/source/blender/editors/interface/resources.c
index c8ff335..09f086c 100644
--- a/source/blender/editors/interface/resources.c
+++ b/source/blender/editors/interface/resources.c
@@ -593,6 +593,10 @@ const unsigned char *UI_ThemeGetColorPtr(bTheme *btheme, int spacetype, int colo
cp = ts->act_marker; break;
case TH_SEL_MARKER:
cp = ts->sel_marker; break;
+ case TH_LINKED_MARKER:
+ cp = ts->linked_marker; break;
+ case TH_SEL_LINKED_MARKER:
+ cp = ts->sel_linked_marker; break;
case TH_BUNDLE_SOLID:
cp = ts->bundle_solid; break;
case TH_DIS_MARKER:
@@ -1188,6 +1192,8 @@ void ui_theme_init_default(void)
rgba_char_args_set(btheme->tclip.act_marker, 0xff, 0xff, 0xff, 255);
rgba_char_args_set(btheme->tclip.sel_marker, 0xff, 0xff, 0x00, 255);
rgba_char_args_set(btheme->tclip.dis_marker, 0x7f, 0x00, 0x00, 255);
+ rgba_char_args_set(btheme->tclip.linked_marker, 0x00, 0x00, 0xff, 255);
+ rgba_char_args_set(btheme->tclip.sel_linked_marker, 0xff, 0x00, 0x00, 255);
rgba_char_args_set(btheme->tclip.lock_marker, 0x7f, 0x7f, 0x7f, 255);
rgba_char_args_set(btheme->tclip.path_before, 0xff, 0x00, 0x00, 255);
rgba_char_args_set(btheme->tclip.path_after, 0x00, 0x00, 0xff, 255);
@@ -2121,6 +2127,8 @@ void init_userdef_do_versions(void)
rgba_char_args_set(btheme->tclip.marker, 0x7f, 0x7f, 0x00, 255);
rgba_char_args_set(btheme->tclip.act_marker, 0xff, 0xff, 0xff, 255);
rgba_char_args_set(btheme->tclip.sel_marker, 0xff, 0xff, 0x00, 255);
+ rgba_char_args_set(btheme->tclip.linked_marker, 0x00, 0x00, 0xff, 255);
+ rgba_char_args_set(btheme->tclip.sel_linked_marker, 0xff, 0x00, 0x00, 255);
rgba_char_args_set(btheme->tclip.dis_marker, 0x7f, 0x00, 0x00, 255);
rgba_char_args_set(btheme->tclip.lock_marker, 0x7f, 0x7f, 0x7f, 255);
rgba_char_args_set(btheme->tclip.path_before, 0xff, 0x00, 0x00, 255);
diff --git a/source/blender/editors/space_clip/tracking_ops_correspondence.c b/source/blender/editors/space_clip/tracking_ops_correspondence.c
index 6c0de55..454e4d3 100644
--- a/source/blender/editors/space_clip/tracking_ops_correspondence.c
+++ b/source/blender/editors/space_clip/tracking_ops_correspondence.c
@@ -108,17 +108,17 @@ static int add_correspondence_exec(bContext *C, wmOperator *op)
}
}
- if(!primary_track || !witness_track || num_primary_selected != 1 || num_witness_selected != 1) {
+ if (!primary_track || !witness_track || num_primary_selected != 1 || num_witness_selected != 1) {
BKE_report(op->reports, RPT_ERROR, "Select exactly one track in each clip");
return OPERATOR_CANCELLED;
}
- // TODO(tianwei): link two tracks, mark these two tracks in a different color
+ // TODO(tianwei): mark these two tracks in a different color when clicked
// add these correspondence
char error_msg[256] = "\0";
if (!BKE_tracking_correspondence_add(&(tracking->correspondences), primary_track, witness_track,
- clip, second_clip, error_msg, sizeof(error_msg))) {
+ clip, second_clip, error_msg, sizeof(error_msg))) {
if (error_msg[0])
BKE_report(op->reports, RPT_ERROR, error_msg);
return OPERATOR_CANCELLED;
@@ -151,23 +151,7 @@ static int delete_correspondence_exec(bContext *C, wmOperator *UNUSED(op))
MovieTracking *tracking = &clip->tracking;
bool changed = false;
- /* Delete selected plane tracks. */
- ListBase *plane_tracks_base = BKE_tracking_get_active_plane_tracks(tracking);
- for (MovieTrackingPlaneTrack *plane_track = plane_tracks_base->first,
- *next_plane_track;
- plane_track != NULL;
- plane_track = next_plane_track) {
- next_plane_track = plane_track->next;
-
- if (PLANE_TRACK_VIEW_SELECTED(plane_track)) {
- BKE_tracking_plane_track_free(plane_track);
- BLI_freelinkN(plane_tracks_base, plane_track);
- changed = true;
- }
- }
-
- /* Remove selected point tracks (they'll also be removed from planes which
- * uses them).
+ /* Remove track correspondences from correspondence base
*/
ListBase *tracksbase = BKE_tracking_get_active_tracks(tracking);
for (MovieTrackingTrack *track = tracksbase->first, *next_track;
@@ -377,8 +361,8 @@ static void solve_multiview_freejob(void *scv)
WM_main_add_notifier(NC_SCENE, scene);
BKE_tracking_multiview_reconstruction_context_free(smj->context);
- printf("free multiview reconstruction context\n");
MEM_freeN(smj);
+ printf("free multiview reconstruction context\n");
}
static int solve_multiview_exec(bContext *C, wmOperator *op)
diff --git a/source/blender/makesdna/DNA_userdef_types.h b/source/blender/makesdna/DNA_userdef_types.h
index 02a0b41..e1133c4 100644
--- a/source/blender/makesdna/DNA_userdef_types.h
+++ b/source/blender/makesdna/DNA_userdef_types.h
@@ -298,6 +298,7 @@ typedef struct ThemeSpace {
char clipping_border_3d[4];
char marker_outline[4], marker[4], act_marker[4], sel_marker[4], dis_marker[4], lock_marker[4];
+ char linked_marker[4], sel_linked_marker[4]; /* cross-clip linked markers and selected linked markers */
char bundle_solid[4];
char path_before[4], path_after[4];
char camera_path[4];
diff --git a/source/blender/makesrna/intern/rna_userdef.c b/source/blender/makesrna/intern/rna_userdef.c
index cbf7bb4..e209512 100644
--- a/source/blender/makesrna/intern/rna_userdef.c
+++ b/source/blender/makesrna/intern/rna_userdef.c
@@ -2999,6 +2999,18 @@ static void rna_def_userdef_theme_space_clip(BlenderRNA *brna)
RNA_def_property_ui_text(prop, "Selected Marker", "Color of selected marker");
RNA_def_property_update(prop, 0, "rna_userdef_update");
+ prop = RNA_def_property(srna, "linked_marker", PROP_FLOAT, PROP_COLOR_GAMMA);
+ RNA_def_property_float_sdna(prop, NULL, "linked_marker");
+ RNA_def_property_array(prop, 3);
+ RNA_def_property_ui_text(prop, "Linked Marker", "Color of linked marker");
+ RNA_def_property_update(prop, 0, "rna_userdef_update");
+
+ prop = RNA_def_property(srna, "selected_linked_marker", PROP_FLOAT, PROP_COLOR_GAMMA);
+ RNA_def_property_float_sdna(prop, NULL, "sel_linked_marker");
+ RNA_def_property_array(prop, 3);
+ RNA_def_property_ui_text(prop, "Selected Linked Marker", "Color of selected linked marker");
+ RNA_def_property_update(prop, 0, "rna_userdef_update");
+
prop = RNA_def_property(srna, "disabled_marker", PROP_FLOAT, PROP_COLOR_GAMMA);
RNA_def_property_float_sdna(prop, NULL, "dis_marker");
RNA_def_property_array(prop, 3);
More information about the Bf-blender-cvs
mailing list