[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