diff options
Diffstat (limited to 'release/scripts')
m--------- | release/scripts/addons | 0 | ||||
-rw-r--r-- | release/scripts/startup/bl_operators/uvcalc_smart_project.py | 23 | ||||
-rw-r--r-- | release/scripts/startup/bl_ui/space_clip.py | 15 | ||||
-rw-r--r-- | release/scripts/startup/bl_ui/space_image.py | 2 | ||||
-rw-r--r-- | release/scripts/startup/bl_ui/space_view3d.py | 5 |
5 files changed, 25 insertions, 20 deletions
diff --git a/release/scripts/addons b/release/scripts/addons -Subproject 6c32300be8cc8d48a3e02055dc43bea2ab98a52 +Subproject ee2cd7105d505a4f6b4613aba26598f532f97f3 diff --git a/release/scripts/startup/bl_operators/uvcalc_smart_project.py b/release/scripts/startup/bl_operators/uvcalc_smart_project.py index 70df5a9df21..1a8bd44e846 100644 --- a/release/scripts/startup/bl_operators/uvcalc_smart_project.py +++ b/release/scripts/startup/bl_operators/uvcalc_smart_project.py @@ -232,17 +232,28 @@ def islandIntersectUvIsland(source, target, SourceOffset): return 0 # NO INTERSECTION +def rotate_uvs(uv_points, angle): + + if angle != 0.0: + mat = Matrix.Rotation(angle, 2) + for uv in uv_points: + uv[:] = mat * uv + + def optiRotateUvIsland(faces): uv_points = [uv for f in faces for uv in f.uv] angle = geometry.box_fit_2d(uv_points) if angle != 0.0: - mat = Matrix.Rotation(angle, 2) - i = 0 # count the serialized uv/vectors - for f in faces: - for j, k in enumerate(range(i, len(f.v) + i)): - f.uv[j][:] = mat * uv_points[k] - i += len(f.v) + rotate_uvs(uv_points, angle) + + # orient them vertically (could be an option) + minx, miny, maxx, maxy = boundsIsland(faces) + w, h = maxx - minx, maxy - miny + if h < w: + from math import pi + angle = pi / 2.0 + rotate_uvs(uv_points, angle) # Takes an island list and tries to find concave, hollow areas to pack smaller islands into. diff --git a/release/scripts/startup/bl_ui/space_clip.py b/release/scripts/startup/bl_ui/space_clip.py index dc01c2c8f3d..5c8257ca52b 100644 --- a/release/scripts/startup/bl_ui/space_clip.py +++ b/release/scripts/startup/bl_ui/space_clip.py @@ -123,9 +123,9 @@ class CLIP_HT_header(Header): row = layout.row() row.template_ID(sc, "clip", open="clip.open") - layout.prop(sc, "mode", text="") - if clip: + layout.prop(sc, "mode", text="") + row = layout.row() row.template_ID(sc, "mask", new="mask.new") @@ -1332,17 +1332,6 @@ class CLIP_MT_tracking_specials(Menu): text="Unlock Tracks").action = 'UNLOCK' -class CLIP_MT_select_mode(Menu): - bl_label = "Select Mode" - - def draw(self, context): - layout = self.layout - - layout.operator_context = 'INVOKE_REGION_WIN' - - layout.operator_enum("clip.mode_set", "mode") - - class CLIP_MT_camera_presets(Menu): """Predefined tracking camera intrinsics""" bl_label = "Camera Presets" diff --git a/release/scripts/startup/bl_ui/space_image.py b/release/scripts/startup/bl_ui/space_image.py index fce924484b3..9bf6aaa1703 100644 --- a/release/scripts/startup/bl_ui/space_image.py +++ b/release/scripts/startup/bl_ui/space_image.py @@ -296,7 +296,7 @@ class IMAGE_MT_uvs(Menu): layout.prop(uv, "use_live_unwrap") layout.operator("uv.unwrap") layout.operator("uv.pin", text="Unpin").clear = True - layout.operator("uv.pin") + layout.operator("uv.pin").clear = False layout.separator() diff --git a/release/scripts/startup/bl_ui/space_view3d.py b/release/scripts/startup/bl_ui/space_view3d.py index 98c855d9419..5cc3df386b3 100644 --- a/release/scripts/startup/bl_ui/space_view3d.py +++ b/release/scripts/startup/bl_ui/space_view3d.py @@ -1365,18 +1365,23 @@ class VIEW3D_MT_make_single_user(Menu): props = layout.operator("object.make_single_user", text="Object") props.object = True + props.obdata = props.material = props.texture = props.animation = False props = layout.operator("object.make_single_user", text="Object & Data") props.object = props.obdata = True + props.material = props.texture = props.animation = False props = layout.operator("object.make_single_user", text="Object & Data & Materials+Tex") props.object = props.obdata = props.material = props.texture = True + props.animation = False props = layout.operator("object.make_single_user", text="Materials+Tex") props.material = props.texture = True + props.object = props.obdata = props.animation = False props = layout.operator("object.make_single_user", text="Object Animation") props.animation = True + props.object = props.obdata = props.material = props.texture = False class VIEW3D_MT_make_links(Menu): |