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:
authorLaurynas Duburas <laurynas>2022-03-11 03:34:27 +0300
committerHans Goudey <h.goudey@me.com>2022-03-11 03:34:27 +0300
commit0602852860dda7dfc0ea20c72e03b7f96c981f1a (patch)
treef6679aba0cfdfcda8e0e244549eb739e025953e0 /release/scripts/startup/bl_ui/properties_data_curve.py
parent27fb63381e9b0963976237c58ca2cfc9bc5ddfd8 (diff)
Curve: Improve NURBS knot generation modes
This patch enables all 8 combinations of Nurbs modes: Cyclic, Bezier and Endpoint. Also removes restriction on Bezier Nurbs order. The most significant changes are mode combinations bringing new meaning. In D13891 is a scheme showing NURBS with same control points in a modes, and also further description of each possible case. Differential Revision: https://developer.blender.org/D13891
Diffstat (limited to 'release/scripts/startup/bl_ui/properties_data_curve.py')
-rw-r--r--release/scripts/startup/bl_ui/properties_data_curve.py14
1 files changed, 12 insertions, 2 deletions
diff --git a/release/scripts/startup/bl_ui/properties_data_curve.py b/release/scripts/startup/bl_ui/properties_data_curve.py
index 26e5cfaae60..2ad6e5bae8a 100644
--- a/release/scripts/startup/bl_ui/properties_data_curve.py
+++ b/release/scripts/startup/bl_ui/properties_data_curve.py
@@ -289,7 +289,6 @@ class DATA_PT_active_spline(CurveButtonsPanelActive, Panel):
if is_surf:
subsub = sub.column()
- subsub.active = (not act_spline.use_cyclic_v)
subsub.prop(act_spline, "use_bezier_v", text="V")
sub = col.column(heading="Endpoint", align=True)
@@ -297,7 +296,6 @@ class DATA_PT_active_spline(CurveButtonsPanelActive, Panel):
if is_surf:
subsub = sub.column()
- subsub.active = (not act_spline.use_cyclic_v)
subsub.prop(act_spline, "use_endpoint_v", text="V")
sub = col.column(align=True)
@@ -322,6 +320,18 @@ class DATA_PT_active_spline(CurveButtonsPanelActive, Panel):
col.prop(act_spline, "radius_interpolation", text="Radius")
layout.prop(act_spline, "use_smooth")
+ if act_spline.type == 'NURBS':
+ messages = [act_spline.valid_message_u]
+ if is_surf and act_spline.point_count_v > 1:
+ messages.append(act_spline.valid_message_v)
+
+ messages = list(filter(None, messages))
+
+ if len(messages) > 0:
+ layout.separator()
+ col = layout.column(align=True)
+ for message in messages:
+ col.label(text=message, icon='INFO')
class DATA_PT_font(CurveButtonsPanelText, Panel):