[Bf-blender-cvs] [529b78160c7] functions: move ui code of multiple nodes in the same file

Jacques Lucke noreply at git.blender.org
Wed Jul 31 18:44:58 CEST 2019


Commit: 529b78160c7f5c02932dcc65dbf3335ae566180a
Author: Jacques Lucke
Date:   Wed Jul 31 16:29:14 2019 +0200
Branches: functions
https://developer.blender.org/rB529b78160c7f5c02932dcc65dbf3335ae566180a

move ui code of multiple nodes in the same file

===================================================================

R097	release/scripts/startup/nodes/function_nodes/separate_color.py	release/scripts/startup/nodes/function_nodes/color.py
D	release/scripts/startup/nodes/function_nodes/combine_vector.py
D	release/scripts/startup/nodes/function_nodes/get_list_element.py
R054	release/scripts/startup/nodes/function_nodes/pack_list.py	release/scripts/startup/nodes/function_nodes/list.py
D	release/scripts/startup/nodes/function_nodes/list_length.py
D	release/scripts/startup/nodes/function_nodes/separate_vector.py
A	release/scripts/startup/nodes/function_nodes/vector.py
D	release/scripts/startup/nodes/function_nodes/vector_distance.py
D	release/scripts/startup/nodes/function_nodes/vector_math.py

===================================================================

diff --git a/release/scripts/startup/nodes/function_nodes/separate_color.py b/release/scripts/startup/nodes/function_nodes/color.py
similarity index 97%
rename from release/scripts/startup/nodes/function_nodes/separate_color.py
rename to release/scripts/startup/nodes/function_nodes/color.py
index 4fa675eaf99..fe91a4b082e 100644
--- a/release/scripts/startup/nodes/function_nodes/separate_color.py
+++ b/release/scripts/startup/nodes/function_nodes/color.py
@@ -1,7 +1,9 @@
 import bpy
+from bpy.props import *
 from .. base import FunctionNode
 from .. node_builder import NodeBuilder
 
+
 class SeparateColorNode(bpy.types.Node, FunctionNode):
     bl_idname = "fn_SeparateColorNode"
     bl_label = "Separate Color"
diff --git a/release/scripts/startup/nodes/function_nodes/combine_vector.py b/release/scripts/startup/nodes/function_nodes/combine_vector.py
deleted file mode 100644
index 46cac8d1420..00000000000
--- a/release/scripts/startup/nodes/function_nodes/combine_vector.py
+++ /dev/null
@@ -1,26 +0,0 @@
-import bpy
-from .. base import FunctionNode
-from .. node_builder import NodeBuilder
-
-class CombineVectorNode(bpy.types.Node, FunctionNode):
-    bl_idname = "fn_CombineVectorNode"
-    bl_label = "Combine Vector"
-
-    use_list__x: NodeBuilder.VectorizedProperty()
-    use_list__y: NodeBuilder.VectorizedProperty()
-    use_list__z: NodeBuilder.VectorizedProperty()
-
-    def declaration(self, builder):
-        builder.vectorized_input(
-            "x", "use_list__x",
-            "X", "X", "Float")
-        builder.vectorized_input(
-            "y", "use_list__y",
-            "Y", "Y", "Float")
-        builder.vectorized_input(
-            "z", "use_list__z",
-            "Z", "Z", "Float")
-
-        builder.vectorized_output(
-            "vector", ["use_list__x", "use_list__y", "use_list__z"],
-            "Vector", "Vectors", "Vector")
diff --git a/release/scripts/startup/nodes/function_nodes/get_list_element.py b/release/scripts/startup/nodes/function_nodes/get_list_element.py
deleted file mode 100644
index e2dd4a80d2c..00000000000
--- a/release/scripts/startup/nodes/function_nodes/get_list_element.py
+++ /dev/null
@@ -1,15 +0,0 @@
-import bpy
-from .. base import FunctionNode
-from .. node_builder import NodeBuilder
-
-class GetListElementNode(bpy.types.Node, FunctionNode):
-    bl_idname = "fn_GetListElementNode"
-    bl_label = "Get List Element"
-
-    active_type: NodeBuilder.DynamicListProperty()
-
-    def declaration(self, builder: NodeBuilder):
-        builder.dynamic_list_input("list", "List", "active_type")
-        builder.fixed_input("index", "Index", "Integer")
-        builder.dynamic_base_input("fallback", "Fallback", "active_type")
-        builder.dynamic_base_output("value", "Value", "active_type")
diff --git a/release/scripts/startup/nodes/function_nodes/pack_list.py b/release/scripts/startup/nodes/function_nodes/list.py
similarity index 54%
rename from release/scripts/startup/nodes/function_nodes/pack_list.py
rename to release/scripts/startup/nodes/function_nodes/list.py
index 98a38db6e37..5fb1b057126 100644
--- a/release/scripts/startup/nodes/function_nodes/pack_list.py
+++ b/release/scripts/startup/nodes/function_nodes/list.py
@@ -1,9 +1,34 @@
 import bpy
 from bpy.props import *
-from .. base import FunctionNode
 from .. types import type_infos
+from .. base import FunctionNode
 from .. node_builder import NodeBuilder
 
+
+class GetListElementNode(bpy.types.Node, FunctionNode):
+    bl_idname = "fn_GetListElementNode"
+    bl_label = "Get List Element"
+
+    active_type: NodeBuilder.DynamicListProperty()
+
+    def declaration(self, builder: NodeBuilder):
+        builder.dynamic_list_input("list", "List", "active_type")
+        builder.fixed_input("index", "Index", "Integer")
+        builder.dynamic_base_input("fallback", "Fallback", "active_type")
+        builder.dynamic_base_output("value", "Value", "active_type")
+
+
+class ListLengthNode(bpy.types.Node, FunctionNode):
+    bl_idname = "fn_ListLengthNode"
+    bl_label = "List Length"
+
+    active_type: NodeBuilder.DynamicListProperty()
+
+    def declaration(self, builder: NodeBuilder):
+        builder.dynamic_list_input("list", "List", "active_type")
+        builder.fixed_output("length", "Length", "Integer")
+
+
 class PackListNode(bpy.types.Node, FunctionNode):
     bl_idname = "fn_PackListNode"
     bl_label = "Pack List"
diff --git a/release/scripts/startup/nodes/function_nodes/list_length.py b/release/scripts/startup/nodes/function_nodes/list_length.py
deleted file mode 100644
index 0aa899c9a97..00000000000
--- a/release/scripts/startup/nodes/function_nodes/list_length.py
+++ /dev/null
@@ -1,13 +0,0 @@
-import bpy
-from .. base import FunctionNode
-from .. node_builder import NodeBuilder
-
-class ListLengthNode(bpy.types.Node, FunctionNode):
-    bl_idname = "fn_ListLengthNode"
-    bl_label = "List Length"
-
-    active_type: NodeBuilder.DynamicListProperty()
-
-    def declaration(self, builder: NodeBuilder):
-        builder.dynamic_list_input("list", "List", "active_type")
-        builder.fixed_output("length", "Length", "Integer")
diff --git a/release/scripts/startup/nodes/function_nodes/separate_vector.py b/release/scripts/startup/nodes/function_nodes/separate_vector.py
deleted file mode 100644
index 12a242a3ef6..00000000000
--- a/release/scripts/startup/nodes/function_nodes/separate_vector.py
+++ /dev/null
@@ -1,24 +0,0 @@
-import bpy
-from .. base import FunctionNode
-from .. node_builder import NodeBuilder
-
-class SeparateVectorNode(bpy.types.Node, FunctionNode):
-    bl_idname = "fn_SeparateVectorNode"
-    bl_label = "Separate Vector"
-
-    use_list__vector: NodeBuilder.VectorizedProperty()
-
-    def declaration(self, builder: NodeBuilder):
-        builder.vectorized_input(
-            "vector", "use_list__vector",
-            "Vector", "Vectors", "Vector")
-
-        builder.vectorized_output(
-            "x", ["use_list__vector"],
-            "X", "X", "Float")
-        builder.vectorized_output(
-            "y", ["use_list__vector"],
-            "Y", "Y", "Float")
-        builder.vectorized_output(
-            "z", ["use_list__vector"],
-            "Z", "Z", "Float")
diff --git a/release/scripts/startup/nodes/function_nodes/vector.py b/release/scripts/startup/nodes/function_nodes/vector.py
new file mode 100644
index 00000000000..5ee01fe4700
--- /dev/null
+++ b/release/scripts/startup/nodes/function_nodes/vector.py
@@ -0,0 +1,93 @@
+import bpy
+from bpy.props import *
+from .. base import FunctionNode
+from .. node_builder import NodeBuilder
+
+
+class VectorMathNode(bpy.types.Node, FunctionNode):
+    bl_idname = "fn_VectorMathNode"
+    bl_label = "Vector Math"
+
+    operation_items = [
+        ("ADD", "Add", "", "", 1),
+    ]
+
+    operation: EnumProperty(
+        name="Operation",
+        items=operation_items,
+        update=FunctionNode.refresh,
+    )
+
+    use_list__a: NodeBuilder.VectorizedProperty()
+    use_list__b: NodeBuilder.VectorizedProperty()
+
+    def declaration(self, builder: NodeBuilder):
+        builder.vectorized_input(
+            "a", "use_list__a",
+            "A", "A", "Vector")
+        builder.vectorized_input(
+            "b", "use_list__b",
+            "B", "B", "Vector")
+
+        builder.vectorized_output(
+            "result", ["use_list__a", "use_list__b"],
+            "Result", "Result", "Vector")
+
+    def draw(self, layout):
+        layout.prop(self, "operation", text="")
+
+
+class VectorDistanceNode(bpy.types.Node, FunctionNode):
+    bl_idname = "fn_VectorDistanceNode"
+    bl_label = "Vector Distance"
+
+    def declaration(self, builder: NodeBuilder):
+        builder.fixed_input("a", "A", "Vector")
+        builder.fixed_input("b", "B", "Vector")
+        builder.fixed_output("distance", "Distance", "Float")
+
+
+class CombineVectorNode(bpy.types.Node, FunctionNode):
+    bl_idname = "fn_CombineVectorNode"
+    bl_label = "Combine Vector"
+
+    use_list__x: NodeBuilder.VectorizedProperty()
+    use_list__y: NodeBuilder.VectorizedProperty()
+    use_list__z: NodeBuilder.VectorizedProperty()
+
+    def declaration(self, builder):
+        builder.vectorized_input(
+            "x", "use_list__x",
+            "X", "X", "Float")
+        builder.vectorized_input(
+            "y", "use_list__y",
+            "Y", "Y", "Float")
+        builder.vectorized_input(
+            "z", "use_list__z",
+            "Z", "Z", "Float")
+
+        builder.vectorized_output(
+            "vector", ["use_list__x", "use_list__y", "use_list__z"],
+            "Vector", "Vectors", "Vector")
+
+
+class SeparateVectorNode(bpy.types.Node, FunctionNode):
+    bl_idname = "fn_SeparateVectorNode"
+    bl_label = "Separate Vector"
+
+    use_list__vector: NodeBuilder.VectorizedProperty()
+
+    def declaration(self, builder: NodeBuilder):
+        builder.vectorized_input(
+            "vector", "use_list__vector",
+            "Vector", "Vectors", "Vector")
+
+        builder.vectorized_output(
+            "x", ["use_list__vector"],
+            "X", "X", "Float")
+        builder.vectorized_output(
+            "y", ["use_list__vector"],
+            "Y", "Y", "Float")
+        builder.vectorized_output(
+            "z", ["use_list__vector"],
+            "Z", "Z", "Float")
diff --git a/release/scripts/startup/nodes/function_nodes/vector_distance.py b/release/scripts/startup/nodes/function_nodes/vector_distance.py
deleted file mode 100644
index 14ef5b8b5ef..00000000000
--- a/release/scripts/startup/nodes/function_nodes/vector_distance.py
+++ /dev/null
@@ -1,11 +0,0 @@
-import bpy
-from .. base import FunctionNode
-
-class VectorDistanceNode(bpy.types.Node, FunctionNode):
-    bl_idname = "fn_VectorDistanceNode"
-    bl_label = "Vector Distance"
-
-    def declaration(self, builder):
-        builder.fixed_input("a", "A", "Vector")
-        builder.fixed_input("b", "B", "Vector")
-        builder.fixed_output("distance", "Distance", "Float")
diff --git a/release/scripts/startup/nodes/function_nodes/vector_math.py b/release/scripts/startup/nodes/function_nodes/vector_math.py
deleted file mode 100644
index e28e132999f..00000000000
--- a/release/scripts/startup/nodes/function

@@ Diff output truncated at 10240 characters. @@



More information about the Bf-blender-cvs mailing list