Modifies an existing node.
(self, path, parameters=None, position=None, name=None)
| 367 | raise Exception(f"Failed to create node: {str(e)}") |
| 368 | |
| 369 | def modify_node(self, path, parameters=None, position=None, name=None): |
| 370 | """Modifies an existing node.""" |
| 371 | node = hou.node(path) |
| 372 | if not node: |
| 373 | raise ValueError(f"Node not found: {path}") |
| 374 | |
| 375 | changes = [] |
| 376 | old_name = node.name() |
| 377 | |
| 378 | if name and name != old_name: |
| 379 | node.setName(name) |
| 380 | changes.append(f"Renamed from {old_name} to {name}") |
| 381 | |
| 382 | if position and len(position) >= 2: |
| 383 | node.setPosition([position[0], position[1]]) |
| 384 | changes.append(f"Position set to {position}") |
| 385 | |
| 386 | if parameters: |
| 387 | for p_name, p_val in parameters.items(): |
| 388 | parm = node.parm(p_name) |
| 389 | if parm: |
| 390 | old_val = parm.eval() |
| 391 | parm.set(p_val) |
| 392 | changes.append(f"Parameter {p_name} changed from {old_val} to {p_val}") |
| 393 | |
| 394 | return {"path": node.path(), "changes": changes} |
| 395 | |
| 396 | def delete_node(self, path): |
| 397 | """Deletes a node from the scene.""" |
nothing calls this directly
no outgoing calls
no test coverage detected