Multi-Object Editing
This adds initial multi-object editing support. - Selected objects are used when entering edit & pose modes. - Selection & tools work on all objects however many tools need porting See: T54641 for remaining tasks. Indentation will be done separately. See patch: D3101
This commit is contained in:
@@ -51,6 +51,8 @@ void uv_poly_center(struct BMFace *f, float r_cent[2], const int cd_loop_uv_off
|
||||
/* find nearest */
|
||||
|
||||
typedef struct UvNearestHit {
|
||||
/** Only for `*_multi(..)` versions of functions. */
|
||||
struct Object *ob;
|
||||
/** Always set if we have a hit. */
|
||||
struct BMFace *efa;
|
||||
struct BMLoop *l;
|
||||
@@ -66,14 +68,23 @@ typedef struct UvNearestHit {
|
||||
bool uv_find_nearest_vert(
|
||||
struct Scene *scene, struct Image *ima, struct Object *obedit,
|
||||
const float co[2], const float penalty_dist, struct UvNearestHit *hit_final);
|
||||
bool uv_find_nearest_vert_multi(
|
||||
struct Scene *scene, struct Image *ima, struct Object **objects, const uint objects_len,
|
||||
const float co[2], const float penalty_dist, struct UvNearestHit *hit_final);
|
||||
|
||||
bool uv_find_nearest_edge(
|
||||
struct Scene *scene, struct Image *ima, struct Object *obedit,
|
||||
const float co[2], struct UvNearestHit *hit_final);
|
||||
bool uv_find_nearest_edge_multi(
|
||||
struct Scene *scene, struct Image *ima, struct Object **objects, const uint objects_len,
|
||||
const float co[2], struct UvNearestHit *hit_final);
|
||||
|
||||
bool uv_find_nearest_face(
|
||||
struct Scene *scene, struct Image *ima, struct Object *obedit,
|
||||
const float co[2], struct UvNearestHit *hit_final);
|
||||
bool uv_find_nearest_face_multi(
|
||||
struct Scene *scene, struct Image *ima, struct Object **objects, const uint objects_len,
|
||||
const float co[2], struct UvNearestHit *hit_final);
|
||||
|
||||
/* utility tool functions */
|
||||
|
||||
|
||||
Reference in New Issue
Block a user