Tracking: Add plane tracks equivalents to previous commit
This commit is contained in:
@@ -290,10 +290,19 @@ void BKE_tracking_dopesheet_update(struct MovieTracking *tracking);
|
|||||||
|
|
||||||
/* **** Query/search **** */
|
/* **** Query/search **** */
|
||||||
|
|
||||||
struct MovieTrackingObject *BKE_tracking_find_object_for_track(const struct MovieTracking *tracking,
|
struct MovieTrackingObject *BKE_tracking_find_object_for_track(
|
||||||
const struct MovieTrackingTrack *track);
|
const struct MovieTracking *tracking,
|
||||||
struct ListBase *BKE_tracking_find_tracks_list_for_track(struct MovieTracking *tracking,
|
const struct MovieTrackingTrack *track);
|
||||||
const struct MovieTrackingTrack *track);
|
struct ListBase *BKE_tracking_find_tracks_list_for_track(
|
||||||
|
struct MovieTracking *tracking,
|
||||||
|
const struct MovieTrackingTrack *track);
|
||||||
|
|
||||||
|
struct MovieTrackingObject *BKE_tracking_find_object_for_plane_track(
|
||||||
|
const struct MovieTracking *tracking,
|
||||||
|
const struct MovieTrackingPlaneTrack *plane_track);
|
||||||
|
struct ListBase *BKE_tracking_find_tracks_list_for_plane_track(
|
||||||
|
struct MovieTracking *tracking,
|
||||||
|
const struct MovieTrackingPlaneTrack *plane_track);
|
||||||
|
|
||||||
/* **** Utility macros **** */
|
/* **** Utility macros **** */
|
||||||
|
|
||||||
|
@@ -2906,15 +2906,16 @@ void BKE_tracking_dopesheet_update(MovieTracking *tracking)
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* NOTE: Returns NULL if the track comes from camera object, */
|
/* NOTE: Returns NULL if the track comes from camera object, */
|
||||||
MovieTrackingObject *BKE_tracking_find_object_for_track(const MovieTracking *tracking,
|
MovieTrackingObject *BKE_tracking_find_object_for_track(
|
||||||
const MovieTrackingTrack *track)
|
const MovieTracking *tracking,
|
||||||
|
const MovieTrackingTrack *track)
|
||||||
{
|
{
|
||||||
const ListBase *tracksbase = &tracking->tracks;
|
const ListBase *tracksbase = &tracking->tracks;
|
||||||
if (BLI_findindex(tracksbase, track) != -1) {
|
if (BLI_findindex(tracksbase, track) != -1) {
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
MovieTrackingObject *object = tracking->objects.first;
|
MovieTrackingObject *object = tracking->objects.first;
|
||||||
while (object) {
|
while (object != NULL) {
|
||||||
if (BLI_findindex(&object->tracks, track) != -1) {
|
if (BLI_findindex(&object->tracks, track) != -1) {
|
||||||
return object;
|
return object;
|
||||||
}
|
}
|
||||||
@@ -2923,12 +2924,45 @@ MovieTrackingObject *BKE_tracking_find_object_for_track(const MovieTracking *tra
|
|||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
ListBase *BKE_tracking_find_tracks_list_for_track(MovieTracking *tracking,
|
ListBase *BKE_tracking_find_tracks_list_for_track(
|
||||||
const MovieTrackingTrack *track)
|
MovieTracking *tracking,
|
||||||
|
const MovieTrackingTrack *track)
|
||||||
{
|
{
|
||||||
MovieTrackingObject *object = BKE_tracking_find_object_for_track(tracking, track);
|
MovieTrackingObject *object = BKE_tracking_find_object_for_track(tracking,
|
||||||
|
track);
|
||||||
if (object != NULL) {
|
if (object != NULL) {
|
||||||
return &object->tracks;
|
return &object->tracks;
|
||||||
}
|
}
|
||||||
return &tracking->tracks;
|
return &tracking->tracks;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* NOTE: Returns NULL if the track comes from camera object, */
|
||||||
|
MovieTrackingObject *BKE_tracking_find_object_for_plane_track(
|
||||||
|
const MovieTracking *tracking,
|
||||||
|
const MovieTrackingPlaneTrack *plane_track)
|
||||||
|
{
|
||||||
|
const ListBase *plane_tracks_base = &tracking->plane_tracks;
|
||||||
|
if (BLI_findindex(plane_tracks_base, plane_track) != -1) {
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
MovieTrackingObject *object = tracking->objects.first;
|
||||||
|
while (object != NULL) {
|
||||||
|
if (BLI_findindex(&object->plane_tracks, plane_track) != -1) {
|
||||||
|
return object;
|
||||||
|
}
|
||||||
|
object = object->next;
|
||||||
|
}
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
|
||||||
|
ListBase *BKE_tracking_find_tracks_list_for_plane_track(
|
||||||
|
MovieTracking *tracking,
|
||||||
|
const MovieTrackingPlaneTrack *plane_track)
|
||||||
|
{
|
||||||
|
MovieTrackingObject *object =
|
||||||
|
BKE_tracking_find_object_for_plane_track(tracking, plane_track);
|
||||||
|
if (object != NULL) {
|
||||||
|
return &object->plane_tracks;
|
||||||
|
}
|
||||||
|
return &tracking->plane_tracks;
|
||||||
|
}
|
||||||
|
Reference in New Issue
Block a user