Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'release/scripts')
m---------release/scripts/addons0
-rw-r--r--release/scripts/startup/bl_operators/uvcalc_smart_project.py23
-rw-r--r--release/scripts/startup/bl_ui/space_clip.py15
-rw-r--r--release/scripts/startup/bl_ui/space_image.py2
-rw-r--r--release/scripts/startup/bl_ui/space_view3d.py5
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):