Skip to content

Commit e467dc8

Browse files
Merge pull request #99 from BrendanParmer/LinkOrdering
Link ordering
2 parents 824aea9 + 0e6e68c commit e467dc8

File tree

2 files changed

+14
-3
lines changed

2 files changed

+14
-3
lines changed

geometry/node_settings.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -669,8 +669,9 @@
669669
],
670670

671671
'FunctionNodeRotateEuler' : [
672+
NTPNodeSetting("rotation_type", ST.ENUM, min_version = (4, 1, 0)),
672673
NTPNodeSetting("space", ST.ENUM),
673-
NTPNodeSetting("type", ST.ENUM)
674+
NTPNodeSetting("type", ST.ENUM, max_version = (4, 1, 0))
674675
],
675676

676677
'FunctionNodeRotateVector' : [],

ntp_operator.py

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -269,6 +269,9 @@ def _create_node(self, node: Node, node_tree_var: str) -> str:
269269
if node.mute:
270270
self._write(f"{node_var}.mute = True")
271271

272+
# hide
273+
if node.hide:
274+
self._write(f"{node_var}.hide = True")
272275
return node_var
273276

274277
def _set_settings_defaults(self, node: Node) -> None:
@@ -292,14 +295,18 @@ def _set_settings_defaults(self, node: Node) -> None:
292295
attr_name = setting.name
293296
st = setting.st
294297

298+
is_version_valid = (bpy.app.version >= setting.min_version and
299+
bpy.app.version < setting.max_version)
295300
if not hasattr(node, attr_name):
296-
if (bpy.app.version >= setting.min_version and
297-
bpy.app.version < setting.max_version):
301+
if is_version_valid:
298302
self.report({'WARNING'},
299303
f"NodeToPython: Couldn't find attribute "
300304
f"\"{attr_name}\" for node {node.name} of type "
301305
f"{node.bl_idname}")
302306
continue
307+
elif not is_version_valid:
308+
continue
309+
303310
attr = getattr(node, attr_name, None)
304311
if attr is None:
305312
continue
@@ -1168,6 +1175,9 @@ def _init_links(self, node_tree: NodeTree) -> None:
11681175
links = node_tree.links
11691176
if links:
11701177
self._write(f"#initialize {nt_var} links")
1178+
if hasattr(links[0], "multi_input_sort_id"):
1179+
# generate links in the correct order for multi input sockets
1180+
links = sorted(links, key=lambda link: link.multi_input_sort_id)
11711181

11721182
for link in links:
11731183
in_node_var = self._node_vars[link.from_node]

0 commit comments

Comments
 (0)