geometry_atomic.py•60.7 kB
# Generated maya implementation for geometry atomic tools
# This file is generated - DO NOT EDIT DIRECTLY
import maya.cmds as cmds
import maya.mel as mel
import json
from typing import Dict, Any, Optional, List, Union, Tuple, Literal
def addNodeBatch(nodes: Union[Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any], Dict[str, Any]]) -> Dict[str, Any]:
"""
Adds a batch of nodes to the current edited geometry. The nodes are added in the order they are provided.
Args:
nodes (Union[Dict[str, Any] with keys {"type": Literal["ShaderNodeValue"], "inputs": Dict[str, Any]}, Dict[str, Any] with keys {"type": Literal["ShaderNodeValToRGB"], "inputs": Dict[str, Any] with keys {"Fac": str}}, Dict[str, Any] with keys {"type": Literal["ShaderNodeVectorCurve"], "inputs": Dict[str, Any] with keys {"Fac": str, "Vector": str}}, Dict[str, Any] with keys {"type": Literal["ShaderNodeRGBCurve"], "inputs": Dict[str, Any] with keys {"Fac": str, "Vector": str}}, Dict[str, Any] with keys {"type": Literal["ShaderNodeMapRange"], "inputs": Dict[str, Any] with keys {"Value": str, "From Min": str, "From Max": str, "To Min": str, "To Max": str, "Steps": str, "Vector": str}}, Dict[str, Any] with keys {"type": Literal["ShaderNodeClamp"], "inputs": Dict[str, Any] with keys {"Value": str, "Min": str, "Max": str}}, Dict[str, Any] with keys {"type": Literal["ShaderNodeMath"], "inputs": Dict[str, Any] with keys {"Value": str}}, Dict[str, Any] with keys {"type": Literal["ShaderNodeVectorMath"], "inputs": Dict[str, Any] with keys {"Vector": str, "Scale": str}}, Dict[str, Any] with keys {"type": Literal["ShaderNodeBlackbody"], "inputs": Dict[str, Any] with keys {"Temperature": str}}, Dict[str, Any] with keys {"type": Literal["ShaderNodeTexGradient"], "inputs": Dict[str, Any] with keys {"Vector": str}}, Dict[str, Any] with keys {"type": Literal["ShaderNodeTexNoise"], "inputs": Dict[str, Any] with keys {"Vector": str, "W": str}}, Dict[str, Any] with keys {"type": Literal["ShaderNodeTexMagic"], "inputs": Dict[str, Any] with keys {"Vector": str, "Scale": str, "Distortion": str}}, Dict[str, Any] with keys {"type": Literal["ShaderNodeTexWave"], "inputs": Dict[str, Any] with keys {"Vector": str, "Scale": str, "Distortion": str, "Detail": str, "Detail Scale": str, "Detail Roughness": str, "Phase Offset": str}}, Dict[str, Any] with keys {"type": Literal["ShaderNodeTexVoronoi"], "inputs": Dict[str, Any] with keys {"Vector": str, "W": str}}, Dict[str, Any] with keys {"type": Literal["ShaderNodeTexChecker"], "inputs": Dict[str, Any] with keys {"Vector": str, "Color1": str}}, Dict[str, Any] with keys {"type": Literal["ShaderNodeTexBrick"], "inputs": Dict[str, Any] with keys {"Vector": str, "Color1": str}}, Dict[str, Any] with keys {"type": Literal["ShaderNodeVectorRotate"], "inputs": Dict[str, Any] with keys {"Vector": str, "Center": str, "Axis": str}}, Dict[str, Any] with keys {"type": Literal["ShaderNodeSeparateXYZ"], "inputs": Dict[str, Any] with keys {"Vector": str}}, Dict[str, Any] with keys {"type": Literal["ShaderNodeCombineXYZ"], "inputs": Dict[str, Any] with keys {"Vector": str}}, Dict[str, Any] with keys {"type": Literal["ShaderNodeTexWhiteNoise"], "inputs": Dict[str, Any] with keys {"Vector": str, "W": str}}, Dict[str, Any] with keys {"type": Literal["ShaderNodeFloatCurve"], "inputs": Dict[str, Any] with keys {"Fac": str, "Vector": str}}, Dict[str, Any] with keys {"type": Literal["ShaderNodeMix"], "inputs": Dict[str, Any]}, Dict[str, Any] with keys {"type": Literal["FunctionNodeAlignEulerToVector"], "inputs": Dict[str, Any] with keys {"Rotation": str, "Factor": str, "Vector": str}}, Dict[str, Any] with keys {"type": Literal["FunctionNodeAlignRotationToVector"], "inputs": Dict[str, Any] with keys {"Rotation": str, "Factor": str, "Vector": str}}, Dict[str, Any] with keys {"type": Literal["FunctionNodeAxesToRotation"], "inputs": Dict[str, Any]}, Dict[str, Any] with keys {"type": Literal["FunctionNodeAxisAngleToRotation"], "inputs": Dict[str, Any] with keys {"Axis": str}}, Dict[str, Any] with keys {"type": Literal["FunctionNodeBooleanMath"], "inputs": Dict[str, Any]}, Dict[str, Any] with keys {"type": Literal["FunctionNodeCombineColor"], "inputs": Dict[str, Any] with keys {"Red": str, "Green": str, "Blue": str, "Alpha": str}}, Dict[str, Any] with keys {"type": Literal["FunctionNodeCombineMatrix"], "inputs": Dict[str, Any] with keys {"Column 1 Row 1": str, "Column 1 Row 2": str, "Column 1 Row 3": str, "Column 1 Row 4": str, "Column 2 Row 1": str, "Column 2 Row 2": str, "Column 2 Row 3": str, "Column 2 Row 4": str, "Column 3 Row 1": str, "Column 3 Row 2": str, "Column 3 Row 3": str, "Column 3 Row 4": str, "Column 4 Row 1": str, "Column 4 Row 2": str, "Column 4 Row 3": str, "Column 4 Row 4": str}}, Dict[str, Any] with keys {"type": Literal["FunctionNodeQuaternionToRotation"], "inputs": Dict[str, Any] with keys {"W": str, "X": str, "Y": str, "Z": str}}, Dict[str, Any] with keys {"type": Literal["FunctionNodeCombineTransform"], "inputs": Dict[str, Any] with keys {"Translation": str, "Rotation": str, "Scale": str}}, Dict[str, Any] with keys {"type": Literal["FunctionNodeCompare"], "inputs": Dict[str, Any] with keys {"A": str, "B": str, "C": str, "Angle": str, "Epsilon": str}}, Dict[str, Any] with keys {"type": Literal["FunctionNodeEulerToRotation"], "inputs": Dict[str, Any] with keys {"Euler": str}}, Dict[str, Any] with keys {"type": Literal["FunctionNodeFloatToInt"], "inputs": Dict[str, Any] with keys {"Float": str}}, Dict[str, Any] with keys {"type": Literal["FunctionNodeInputBool"], "inputs": Dict[str, Any]}, Dict[str, Any] with keys {"type": Literal["FunctionNodeInputColor"], "inputs": Dict[str, Any]}, Dict[str, Any] with keys {"type": Literal["FunctionNodeInputInt"], "inputs": Dict[str, Any]}, Dict[str, Any] with keys {"type": Literal["FunctionNodeInputRotation"], "inputs": Dict[str, Any]}, Dict[str, Any] with keys {"type": Literal["FunctionNodeInputSpecialCharacters"], "inputs": Dict[str, Any]}, Dict[str, Any] with keys {"type": Literal["FunctionNodeInputString"], "inputs": Dict[str, Any]}, Dict[str, Any] with keys {"type": Literal["FunctionNodeInputVector"], "inputs": Dict[str, Any]}, Dict[str, Any] with keys {"type": Literal["FunctionNodeInvertMatrix"], "inputs": Dict[str, Any] with keys {"Matrix": str}}, Dict[str, Any] with keys {"type": Literal["FunctionNodeInvertRotation"], "inputs": Dict[str, Any] with keys {"Rotation": str}}, Dict[str, Any] with keys {"type": Literal["FunctionNodeMatrixMultiply"], "inputs": Dict[str, Any] with keys {"Matrix": str}}, Dict[str, Any] with keys {"type": Literal["FunctionNodeProjectPoint"], "inputs": Dict[str, Any] with keys {"Vector": str, "Transform": str}}, Dict[str, Any] with keys {"type": Literal["FunctionNodeRandomValue"], "inputs": Dict[str, Any] with keys {"Min": str, "Max": str}}, Dict[str, Any] with keys {"type": Literal["FunctionNodeReplaceString"], "inputs": Dict[str, Any] with keys {"String": str, "Find": str, "Replace": str}}, Dict[str, Any] with keys {"type": Literal["FunctionNodeRotateEuler"], "inputs": Dict[str, Any]}, Dict[str, Any] with keys {"type": Literal["FunctionNodeRotateRotation"], "inputs": Dict[str, Any] with keys {"Rotation": str, "Rotate By": str}}, Dict[str, Any] with keys {"type": Literal["FunctionNodeRotateVector"], "inputs": Dict[str, Any] with keys {"Vector": str, "Rotation": str}}, Dict[str, Any] with keys {"type": Literal["FunctionNodeRotationToAxisAngle"], "inputs": Dict[str, Any] with keys {"Rotation": str}}, Dict[str, Any] with keys {"type": Literal["FunctionNodeRotationToEuler"], "inputs": Dict[str, Any] with keys {"Rotation": str}}, Dict[str, Any] with keys {"type": Literal["FunctionNodeSeparateColor"], "inputs": Dict[str, Any] with keys {"Color": str}}, Dict[str, Any] with keys {"type": Literal["FunctionNodeSeparateMatrix"], "inputs": Dict[str, Any] with keys {"Matrix": str}}, Dict[str, Any] with keys {"type": Literal["FunctionNodeRotationToQuaternion"], "inputs": Dict[str, Any] with keys {"Rotation": str}}, Dict[str, Any] with keys {"type": Literal["FunctionNodeSeparateTransform"], "inputs": Dict[str, Any] with keys {"Transform": str}}, Dict[str, Any] with keys {"type": Literal["FunctionNodeSliceString"], "inputs": Dict[str, Any] with keys {"String": str, "Position": str, "Length": str}}, Dict[str, Any] with keys {"type": Literal["FunctionNodeStringLength"], "inputs": Dict[str, Any] with keys {"String": str}}, Dict[str, Any] with keys {"type": Literal["FunctionNodeTransformDirection"], "inputs": Dict[str, Any] with keys {"Direction": str, "Transform": str}}, Dict[str, Any] with keys {"type": Literal["FunctionNodeTransformPoint"], "inputs": Dict[str, Any] with keys {"Vector": str, "Transform": str}}, Dict[str, Any] with keys {"type": Literal["FunctionNodeTransposeMatrix"], "inputs": Dict[str, Any] with keys {"Matrix": str}}, Dict[str, Any] with keys {"type": Literal["FunctionNodeValueToString"], "inputs": Dict[str, Any] with keys {"Value": str, "Decimals": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeAccumulateField"], "inputs": Dict[str, Any] with keys {"Value": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeAttributeDomainSize"], "inputs": Dict[str, Any] with keys {"Geometry": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeAttributeStatistic"], "inputs": Dict[str, Any] with keys {"Geometry": str, "Selection": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeBake"], "inputs": Dict[str, Any]}, Dict[str, Any] with keys {"type": Literal["GeometryNodeBlurAttribute"], "inputs": Dict[str, Any]}, Dict[str, Any] with keys {"type": Literal["GeometryNodeBoundBox"], "inputs": Dict[str, Any] with keys {"Geometry": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeCaptureAttribute"], "inputs": Dict[str, Any] with keys {"Geometry": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeCollectionInfo"], "inputs": Dict[str, Any] with keys {"Collection": str, "Separate Children": str, "Reset Children": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeConvexHull"], "inputs": Dict[str, Any] with keys {"Geometry": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeCurveEndpointSelection"], "inputs": Dict[str, Any] with keys {"Start Size": str, "End Size": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeCurveHandleTypeSelection"], "inputs": Dict[str, Any]}, Dict[str, Any] with keys {"type": Literal["GeometryNodeCurveLength"], "inputs": Dict[str, Any] with keys {"Curve": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeCurveArc"], "inputs": Dict[str, Any]}, Dict[str, Any] with keys {"type": Literal["GeometryNodeCurvePrimitiveBezierSegment"], "inputs": Dict[str, Any] with keys {"Resolution": str, "Start": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeCurvePrimitiveCircle"], "inputs": Dict[str, Any]}, Dict[str, Any] with keys {"type": Literal["GeometryNodeCurvePrimitiveLine"], "inputs": Dict[str, Any]}, Dict[str, Any] with keys {"type": Literal["GeometryNodeCurveQuadraticBezier"], "inputs": Dict[str, Any] with keys {"Resolution": str, "Start": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeCurvePrimitiveQuadrilateral"], "inputs": Dict[str, Any] with keys {"Width": str, "Height": str, "Bottom Width": str, "Top Width": str, "Offset": str, "Bottom Height": str, "Top Height": str, "Point 1": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeCurveSpiral"], "inputs": Dict[str, Any] with keys {"Resolution": str, "Rotations": str, "Start Radius": str, "End Radius": str, "Height": str, "Reverse": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeCurveStar"], "inputs": Dict[str, Any] with keys {"Points": str, "Inner Radius": str, "Outer Radius": str, "Twist": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeCurveSetHandles"], "inputs": Dict[str, Any] with keys {"Curve": str, "Selection": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeSplineParameter"], "inputs": Dict[str, Any]}, Dict[str, Any] with keys {"type": Literal["GeometryNodeCurveSplineType"], "inputs": Dict[str, Any] with keys {"Curve": str, "Selection": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeCurveToMesh"], "inputs": Dict[str, Any] with keys {"Curve": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeCurveToPoints"], "inputs": Dict[str, Any] with keys {"Curve": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeCurveOfPoint"], "inputs": Dict[str, Any] with keys {"Point Index": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodePointsOfCurve"], "inputs": Dict[str, Any] with keys {"Curve Index": str, "Weights": str, "Sort Index": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeDeformCurvesOnSurface"], "inputs": Dict[str, Any] with keys {"Curves": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeDeleteGeometry"], "inputs": Dict[str, Any] with keys {"Geometry": str, "Selection": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeDistributePointsInGrid"], "inputs": Dict[str, Any] with keys {"Grid": str, "Density": str, "Seed": str, "Spacing": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeDistributePointsInVolume"], "inputs": Dict[str, Any] with keys {"Volume": str, "Density": str, "Seed": str, "Spacing": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeDistributePointsOnFaces"], "inputs": Dict[str, Any]}, Dict[str, Any] with keys {"type": Literal["GeometryNodeDualMesh"], "inputs": Dict[str, Any] with keys {"Mesh": str, "Keep Boundaries": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeDuplicateElements"], "inputs": Dict[str, Any] with keys {"Geometry": str, "Selection": str, "Amount": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeEdgePathsToCurves"], "inputs": Dict[str, Any] with keys {"Mesh": str, "Start Vertices": str, "Next Vertex Index": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeEdgePathsToSelection"], "inputs": Dict[str, Any] with keys {"Start Vertices": str, "Next Vertex Index": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeEdgesToFaceGroups"], "inputs": Dict[str, Any] with keys {"Boundary Edges": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeFieldAtIndex"], "inputs": Dict[str, Any] with keys {"Index": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeFieldOnDomain"], "inputs": Dict[str, Any]}, Dict[str, Any] with keys {"type": Literal["GeometryNodeExtrudeMesh"], "inputs": Dict[str, Any] with keys {"Mesh": str, "Selection": str, "Offset": str, "Offset Scale": str, "Individual": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeFillCurve"], "inputs": Dict[str, Any] with keys {"Curve": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeFilletCurve"], "inputs": Dict[str, Any] with keys {"Curve": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeFlipFaces"], "inputs": Dict[str, Any] with keys {"Mesh": str, "Selection": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeGeometryToInstance"], "inputs": Dict[str, Any] with keys {"Geometry": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeGetNamedGrid"], "inputs": Dict[str, Any] with keys {"Volume": str, "Name": str, "Remove": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeGridToMesh"], "inputs": Dict[str, Any] with keys {"Grid": str, "Threshold": str, "Adaptivity": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeImageInfo"], "inputs": Dict[str, Any] with keys {"Image": str, "Frame": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeImageTexture"], "inputs": Dict[str, Any] with keys {"Image": str, "Vector": str, "Frame": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeInputImage"], "inputs": Dict[str, Any]}, Dict[str, Any] with keys {"type": Literal["GeometryNodeImportSTL"], "inputs": Dict[str, Any] with keys {"Path": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeIndexOfNearest"], "inputs": Dict[str, Any] with keys {"Position": str, "Group ID": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeIndexSwitch"], "inputs": Dict[str, Any]}, Dict[str, Any] with keys {"type": Literal["GeometryNodeInputActiveCamera"], "inputs": Dict[str, Any]}, Dict[str, Any] with keys {"type": Literal["GeometryNodeInputCurveHandlePositions"], "inputs": Dict[str, Any] with keys {"Relative": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeInputCurveTilt"], "inputs": Dict[str, Any]}, Dict[str, Any] with keys {"type": Literal["GeometryNodeInputEdgeSmooth"], "inputs": Dict[str, Any]}, Dict[str, Any] with keys {"type": Literal["GeometryNodeInputShadeSmooth"], "inputs": Dict[str, Any]}, Dict[str, Any] with keys {"type": Literal["GeometryNodeInputID"], "inputs": Dict[str, Any]}, Dict[str, Any] with keys {"type": Literal["GeometryNodeInputIndex"], "inputs": Dict[str, Any]}, Dict[str, Any] with keys {"type": Literal["GeometryNodeInputInstanceRotation"], "inputs": Dict[str, Any]}, Dict[str, Any] with keys {"type": Literal["GeometryNodeInputInstanceScale"], "inputs": Dict[str, Any]}, Dict[str, Any] with keys {"type": Literal["GeometryNodeInputMaterialIndex"], "inputs": Dict[str, Any]}, Dict[str, Any] with keys {"type": Literal["GeometryNodeInstanceTransform"], "inputs": Dict[str, Any]}, Dict[str, Any] with keys {"type": Literal["GeometryNodeInputMaterial"], "inputs": Dict[str, Any]}, Dict[str, Any] with keys {"type": Literal["GeometryNodeInputMeshEdgeAngle"], "inputs": Dict[str, Any]}, Dict[str, Any] with keys {"type": Literal["GeometryNodeInputMeshEdgeNeighbors"], "inputs": Dict[str, Any]}, Dict[str, Any] with keys {"type": Literal["GeometryNodeInputMeshEdgeVertices"], "inputs": Dict[str, Any]}, Dict[str, Any] with keys {"type": Literal["GeometryNodeInputMeshFaceArea"], "inputs": Dict[str, Any]}, Dict[str, Any] with keys {"type": Literal["GeometryNodeInputMeshFaceIsPlanar"], "inputs": Dict[str, Any] with keys {"Threshold": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeInputMeshFaceNeighbors"], "inputs": Dict[str, Any]}, Dict[str, Any] with keys {"type": Literal["GeometryNodeInputMeshIsland"], "inputs": Dict[str, Any]}, Dict[str, Any] with keys {"type": Literal["GeometryNodeInputMeshVertexNeighbors"], "inputs": Dict[str, Any]}, Dict[str, Any] with keys {"type": Literal["GeometryNodeInputNamedAttribute"], "inputs": Dict[str, Any] with keys {"Name": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeInputNamedLayerSelection"], "inputs": Dict[str, Any] with keys {"Name": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeInputNormal"], "inputs": Dict[str, Any]}, Dict[str, Any] with keys {"type": Literal["GeometryNodeInputPosition"], "inputs": Dict[str, Any]}, Dict[str, Any] with keys {"type": Literal["GeometryNodeInputRadius"], "inputs": Dict[str, Any]}, Dict[str, Any] with keys {"type": Literal["GeometryNodeInputSceneTime"], "inputs": Dict[str, Any]}, Dict[str, Any] with keys {"type": Literal["GeometryNodeInputShortestEdgePaths"], "inputs": Dict[str, Any] with keys {"End Vertex": str, "Edge Cost": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeInputSplineCyclic"], "inputs": Dict[str, Any]}, Dict[str, Any] with keys {"type": Literal["GeometryNodeSplineLength"], "inputs": Dict[str, Any]}, Dict[str, Any] with keys {"type": Literal["GeometryNodeInputSplineResolution"], "inputs": Dict[str, Any]}, Dict[str, Any] with keys {"type": Literal["GeometryNodeInputTangent"], "inputs": Dict[str, Any]}, Dict[str, Any] with keys {"type": Literal["GeometryNodeInstanceOnPoints"], "inputs": Dict[str, Any] with keys {"Points": str, "Selection": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeInstancesToPoints"], "inputs": Dict[str, Any] with keys {"Instances": str, "Selection": str, "Position": str, "Radius": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeInterpolateCurves"], "inputs": Dict[str, Any] with keys {"Guide Curves": str, "Guide Up": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeIsViewport"], "inputs": Dict[str, Any]}, Dict[str, Any] with keys {"type": Literal["GeometryNodeJoinGeometry"], "inputs": Dict[str, Any] with keys {"Geometry": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeMaterialSelection"], "inputs": Dict[str, Any] with keys {"Material": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeMenuSwitch"], "inputs": Dict[str, Any]}, Dict[str, Any] with keys {"type": Literal["GeometryNodeMergeByDistance"], "inputs": Dict[str, Any] with keys {"Geometry": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeMeshBoolean"], "inputs": Dict[str, Any] with keys {"Mesh 1": str, "Mesh 2": str, "Self Intersection": str, "Hole Tolerant": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeMeshFaceSetBoundaries"], "inputs": Dict[str, Any]}, Dict[str, Any] with keys {"type": Literal["GeometryNodeMeshCircle"], "inputs": Dict[str, Any] with keys {"Vertices": str, "Radius": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeMeshCone"], "inputs": Dict[str, Any] with keys {"Vertices": str, "Side Segments": str, "Fill Segments": str, "Radius Top": str, "Radius Bottom": str, "Depth": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeMeshCube"], "inputs": Dict[str, Any] with keys {"Size": str, "Vertices X": str, "Vertices Y": str, "Vertices Z": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeMeshCylinder"], "inputs": Dict[str, Any] with keys {"Vertices": str, "Side Segments": str, "Fill Segments": str, "Radius": str, "Depth": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeMeshGrid"], "inputs": Dict[str, Any] with keys {"Size X": str, "Size Y": str, "Vertices X": str, "Vertices Y": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeMeshIcoSphere"], "inputs": Dict[str, Any] with keys {"Radius": str, "Subdivisions": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeMeshLine"], "inputs": Dict[str, Any] with keys {"Count": str, "Resolution": str, "Start Location": str, "Offset": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeMeshUVSphere"], "inputs": Dict[str, Any] with keys {"Segments": str, "Rings": str, "Radius": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeMeshToCurve"], "inputs": Dict[str, Any] with keys {"Mesh": str, "Selection": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeMeshToDensityGrid"], "inputs": Dict[str, Any] with keys {"Mesh": str, "Density": str, "Voxel Size": str, "Gradient Width": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeMeshToPoints"], "inputs": Dict[str, Any] with keys {"Mesh": str, "Selection": str, "Position": str, "Radius": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeMeshToSDFGrid"], "inputs": Dict[str, Any] with keys {"Mesh": str, "Voxel Size": str, "Band Width": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeMeshToVolume"], "inputs": Dict[str, Any] with keys {"Mesh": str, "Density": str, "Voxel Size": str, "Voxel Amount": str, "Interior Band Width": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeCornersOfEdge"], "inputs": Dict[str, Any] with keys {"Edge Index": str, "Weights": str, "Sort Index": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeCornersOfFace"], "inputs": Dict[str, Any] with keys {"Face Index": str, "Weights": str, "Sort Index": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeCornersOfVertex"], "inputs": Dict[str, Any] with keys {"Vertex Index": str, "Weights": str, "Sort Index": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeEdgesOfCorner"], "inputs": Dict[str, Any] with keys {"Corner Index": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeEdgesOfVertex"], "inputs": Dict[str, Any] with keys {"Vertex Index": str, "Weights": str, "Sort Index": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeFaceOfCorner"], "inputs": Dict[str, Any] with keys {"Corner Index": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeOffsetCornerInFace"], "inputs": Dict[str, Any] with keys {"Corner Index": str, "Offset": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeVertexOfCorner"], "inputs": Dict[str, Any] with keys {"Corner Index": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeObjectInfo"], "inputs": Dict[str, Any] with keys {"Object": str, "As Instance": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeOffsetPointInCurve"], "inputs": Dict[str, Any] with keys {"Point Index": str, "Offset": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodePointsToCurves"], "inputs": Dict[str, Any] with keys {"Points": str, "Curve Group ID": str, "Weight": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodePointsToSDFGrid"], "inputs": Dict[str, Any] with keys {"Points": str, "Radius": str, "Voxel Size": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodePointsToVertices"], "inputs": Dict[str, Any] with keys {"Points": str, "Selection": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodePointsToVolume"], "inputs": Dict[str, Any] with keys {"Points": str, "Density": str, "Voxel Size": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodePoints"], "inputs": Dict[str, Any] with keys {"Count": str, "Position": str, "Radius": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeProximity"], "inputs": Dict[str, Any]}, Dict[str, Any] with keys {"type": Literal["GeometryNodeRaycast"], "inputs": Dict[str, Any] with keys {"Target Geometry": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeRealizeInstances"], "inputs": Dict[str, Any] with keys {"Geometry": str, "Selection": str, "Realize All": str, "Depth": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeRemoveAttribute"], "inputs": Dict[str, Any] with keys {"Geometry": str, "Name": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeReplaceMaterial"], "inputs": Dict[str, Any] with keys {"Geometry": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeResampleCurve"], "inputs": Dict[str, Any] with keys {"Curve": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeReverseCurve"], "inputs": Dict[str, Any] with keys {"Curve": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeRotateInstances"], "inputs": Dict[str, Any] with keys {"Instances": str, "Selection": str, "Rotation": str, "Pivot Point": str, "Local Space": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeSampleCurve"], "inputs": Dict[str, Any] with keys {"Curves": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeSampleGrid"], "inputs": Dict[str, Any]}, Dict[str, Any] with keys {"type": Literal["GeometryNodeSampleGridIndex"], "inputs": Dict[str, Any]}, Dict[str, Any] with keys {"type": Literal["GeometryNodeSampleIndex"], "inputs": Dict[str, Any] with keys {"Geometry": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeSampleNearestSurface"], "inputs": Dict[str, Any] with keys {"Mesh": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeSampleNearest"], "inputs": Dict[str, Any] with keys {"Geometry": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeSampleUVSurface"], "inputs": Dict[str, Any] with keys {"Mesh": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeScaleElements"], "inputs": Dict[str, Any] with keys {"Geometry": str, "Selection": str, "Center": str, "Axis": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeScaleInstances"], "inputs": Dict[str, Any] with keys {"Instances": str, "Selection": str, "Scale": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeSDFGridBoolean"], "inputs": Dict[str, Any] with keys {"Grid 1": str, "Grid 2": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeSelfObject"], "inputs": Dict[str, Any]}, Dict[str, Any] with keys {"type": Literal["GeometryNodeSeparateComponents"], "inputs": Dict[str, Any] with keys {"Geometry": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeSeparateGeometry"], "inputs": Dict[str, Any] with keys {"Geometry": str, "Selection": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeSetCurveHandlePositions"], "inputs": Dict[str, Any] with keys {"Curve": str, "Selection": str, "Position": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeSetCurveNormal"], "inputs": Dict[str, Any] with keys {"Curve": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeSetCurveRadius"], "inputs": Dict[str, Any] with keys {"Curve": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeSetCurveTilt"], "inputs": Dict[str, Any] with keys {"Curve": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeSetID"], "inputs": Dict[str, Any] with keys {"Geometry": str, "Selection": str, "ID": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeSetMaterialIndex"], "inputs": Dict[str, Any] with keys {"Geometry": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeSetMaterial"], "inputs": Dict[str, Any] with keys {"Geometry": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeSetPointRadius"], "inputs": Dict[str, Any] with keys {"Points": str, "Selection": str, "Radius": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeSetPosition"], "inputs": Dict[str, Any] with keys {"Geometry": str, "Selection": str, "Position": str, "Offset": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeSetShadeSmooth"], "inputs": Dict[str, Any] with keys {"Geometry": str, "Selection": str, "Shade Smooth": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeSetSplineCyclic"], "inputs": Dict[str, Any] with keys {"Geometry": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeSetSplineResolution"], "inputs": Dict[str, Any] with keys {"Geometry": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeSetInstanceTransform"], "inputs": Dict[str, Any] with keys {"Instances": str, "Selection": str, "Transform": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeSortElements"], "inputs": Dict[str, Any] with keys {"Geometry": str, "Selection": str, "Group ID": str, "Sort Weight": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeSplitEdges"], "inputs": Dict[str, Any] with keys {"Mesh": str, "Selection": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeSplitToInstances"], "inputs": Dict[str, Any] with keys {"Geometry": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeStoreNamedAttribute"], "inputs": Dict[str, Any] with keys {"Geometry": str, "Selection": str, "Name": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeStoreNamedGrid"], "inputs": Dict[str, Any] with keys {"Volume": str, "Name": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeStringJoin"], "inputs": Dict[str, Any] with keys {"Delimiter": str, "Strings": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeStringToCurves"], "inputs": Dict[str, Any] with keys {"String": str, "Size": str, "Character Spacing": str, "Word Spacing": str, "Line Spacing": str, "Text Box Width": str, "Text Box Height": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeSubdivideCurve"], "inputs": Dict[str, Any] with keys {"Curve": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeSubdivideMesh"], "inputs": Dict[str, Any] with keys {"Mesh": str, "Level": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeSubdivisionSurface"], "inputs": Dict[str, Any] with keys {"Mesh": str, "Level": str, "Edge Crease": str, "Vertex Crease": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeSwitch"], "inputs": Dict[str, Any] with keys {"Switch": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeTool3DCursor"], "inputs": Dict[str, Any]}, Dict[str, Any] with keys {"type": Literal["GeometryNodeToolFaceSet"], "inputs": Dict[str, Any]}, Dict[str, Any] with keys {"type": Literal["GeometryNodeToolMousePosition"], "inputs": Dict[str, Any]}, Dict[str, Any] with keys {"type": Literal["GeometryNodeToolSelection"], "inputs": Dict[str, Any]}, Dict[str, Any] with keys {"type": Literal["GeometryNodeToolActiveElement"], "inputs": Dict[str, Any]}, Dict[str, Any] with keys {"type": Literal["GeometryNodeToolSetFaceSet"], "inputs": Dict[str, Any] with keys {"Mesh": str, "Selection": str, "Face Set": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeToolSetSelection"], "inputs": Dict[str, Any] with keys {"Geometry": str, "Selection": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeViewportTransform"], "inputs": Dict[str, Any]}, Dict[str, Any] with keys {"type": Literal["GeometryNodeTransform"], "inputs": Dict[str, Any] with keys {"Geometry": str, "Translation": str, "Rotation": str, "Scale": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeTranslateInstances"], "inputs": Dict[str, Any] with keys {"Instances": str, "Selection": str, "Translation": str, "Local Space": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeTriangulate"], "inputs": Dict[str, Any] with keys {"Mesh": str, "Selection": str, "Minimum Vertices": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeTrimCurve"], "inputs": Dict[str, Any] with keys {"Curve": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeUVPackIslands"], "inputs": Dict[str, Any] with keys {"UV": str, "Selection": str, "Margin": str, "Rotate": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeUVUnwrap"], "inputs": Dict[str, Any] with keys {"Selection": str, "Seam": str, "Margin": str, "Fill Holes": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeViewer"], "inputs": Dict[str, Any] with keys {"Geometry": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeVolumeCube"], "inputs": Dict[str, Any] with keys {"Density": str, "Background": str, "Min": str, "Max": str, "Resolution X": str, "Resolution Y": str, "Resolution Z": str}}, Dict[str, Any] with keys {"type": Literal["GeometryNodeVolumeToMesh"], "inputs": Dict[str, Any] with keys {"Volume": str, "Voxel Size": str}}]): The nodes parameter
Returns:
success (bool): Operation success status
nodeIds (List[str]): Created node identifiers
"""
tool_name = "addNodeBatch" # Define tool name for logging
params = {"nodes": nodes} # Create params dict for logging
print(f"Executing {tool_name} in Maya with params: {params}")
try:
# No parameters to validate
# TODO: Implement actual maya API calls
# This is a placeholder implementation
return {
"success": True, # TODO: Implement
"nodeIds": None
}
except Exception as e:
print(f"Error in {tool_name}: {str(e)}")
return {"success": False, "error": str(e)}
def setNodePropertyByIndex(nodeId: str, propertyIndex: float, value: str) -> Dict[str, Any]:
"""
Sets an input default value of a node. For the available inputs and their type, use 'getNodeInputsOutputs'. Note that vectors are written Vector(x, y, z)
Args:
nodeId (str): Node identifier
propertyIndex (float): Index of the property in the list of inputs
value (str): Property value
Returns:
success (bool): Operation success status
"""
tool_name = "setNodePropertyByIndex" # Define tool name for logging
params = {"nodeId": nodeId, "propertyIndex": propertyIndex, "value": value} # Create params dict for logging
print(f"Executing {tool_name} in Maya with params: {params}")
try:
# No parameters to validate
# TODO: Implement actual maya API calls
# This is a placeholder implementation
return {
"success": True
}
except Exception as e:
print(f"Error in {tool_name}: {str(e)}")
return {"success": False, "error": str(e)}
# === NEWLY GENERATED ===
def addNodeCombineXYZ() -> Dict[str, Any]:
"""
Adds a new combine XYZ node to the current edited geometry.
Args:
No parameters
Returns:
success (bool): Operation success status
nodeId (str): Created node identifier
inputs (Dict[str, Any] with keys {"name": str, "type": str, "can_accept_default_value": bool}): Node inputs
outputs (Dict[str, Any] with keys {"name": str, "type": str}): Node outputs
"""
tool_name = "addNodeCombineXYZ" # Define tool name for logging
params = {} # Create params dict for logging
print(f"Executing {tool_name} in Maya with params: {params}")
try:
# No parameters to validate
# TODO: Implement actual maya API calls
# This is a placeholder implementation
return {
"success": True, # TODO: Implement
"nodeId": None , # TODO: Implement
"inputs": None , # TODO: Implement
"outputs": None
}
except Exception as e:
print(f"Error in {tool_name}: {str(e)}")
return {"success": False, "error": str(e)}
def addNodeMath(operation: Literal["Arctan2", "Multiply", "Add", "Sine"]) -> Dict[str, Any]:
"""
Adds a new math node to the current edited geometry.
Args:
operation (Literal["Arctan2", "Multiply", "Add", "Sine"]): Math operation
Returns:
Dict[str, bool]: Operation response with success status
"""
tool_name = "addNodeMath" # Define tool name for logging
params = {"operation": operation} # Create params dict for logging
print(f"Executing {tool_name} in Maya with params: {params}")
try:
# Validate enum values for operation
if operation is not None and operation not in ['Arctan2','Multiply','Add','Sine']:
raise ValueError(f"Parameter 'operation' must be one of ['Arctan2','Multiply','Add','Sine'], got {operation}")
# TODO: Implement actual maya API calls
# This is a placeholder implementation
return {
"success": True
}
except Exception as e:
print(f"Error in {tool_name}: {str(e)}")
return {"success": False, "error": str(e)}
def addNodeMeshCone(Vertices: Optional[int] = None, Radius Top: Optional[float] = None, Radius Bottom: Optional[float] = None, Depth: Optional[float] = None, Side Segments: Optional[int] = None, Fill Segments: Optional[int] = None) -> Dict[str, Any]:
"""
Adds a new mesh cone node to the current edited geometry.
Args:
Vertices (int): The Vertices parameter
Radius Top (float): The Radius Top parameter
Radius Bottom (float): The Radius Bottom parameter
Depth (float): The Depth parameter
Side Segments (int): The Side Segments parameter
Fill Segments (int): The Fill Segments parameter
Returns:
success (bool): Operation success status
nodeId (str): Created node identifier
inputs (Dict[str, Any] with keys {"name": str, "type": str, "can_accept_default_value": bool}): Node inputs
outputs (Dict[str, Any] with keys {"name": str, "type": str}): Node outputs
"""
tool_name = "addNodeMeshCone" # Define tool name for logging
params = {"Vertices": Vertices, "Radius Top": Radius Top, "Radius Bottom": Radius Bottom, "Depth": Depth, "Side Segments": Side Segments, "Fill Segments": Fill Segments} # Create params dict for logging
print(f"Executing {tool_name} in Maya with params: {params}")
try:
# No parameters to validate
# TODO: Implement actual maya API calls
# This is a placeholder implementation
return {
"success": True, # TODO: Implement
"nodeId": None , # TODO: Implement
"inputs": None , # TODO: Implement
"outputs": None
}
except Exception as e:
print(f"Error in {tool_name}: {str(e)}")
return {"success": False, "error": str(e)}
def addNodeMeshCube(Size: Optional[List[float]] = None, Vertices X: Optional[int] = None, Vertices Y: Optional[int] = None, Vertices Z: Optional[int] = None) -> Dict[str, Any]:
"""
Adds a new mesh cube node to the current edited geometry.
Args:
Size (List[float]): The Size parameter
Vertices X (int): The Vertices X parameter
Vertices Y (int): The Vertices Y parameter
Vertices Z (int): The Vertices Z parameter
Returns:
success (bool): Operation success status
nodeId (str): Created node identifier
inputs (Dict[str, Any] with keys {"name": str, "type": str, "can_accept_default_value": bool}): Node inputs
outputs (Dict[str, Any] with keys {"name": str, "type": str}): Node outputs
"""
tool_name = "addNodeMeshCube" # Define tool name for logging
params = {"Size": Size, "Vertices X": Vertices X, "Vertices Y": Vertices Y, "Vertices Z": Vertices Z} # Create params dict for logging
print(f"Executing {tool_name} in Maya with params: {params}")
try:
# No parameters to validate
# TODO: Implement actual maya API calls
# This is a placeholder implementation
return {
"success": True, # TODO: Implement
"nodeId": None , # TODO: Implement
"inputs": None , # TODO: Implement
"outputs": None
}
except Exception as e:
print(f"Error in {tool_name}: {str(e)}")
return {"success": False, "error": str(e)}
def addNodeMeshCylinder(Vertices: Optional[int] = None, Radius: Optional[float] = None, Depth: Optional[float] = None, Side Segments: Optional[int] = None, Fill Segments: Optional[int] = None) -> Dict[str, Any]:
"""
Adds a new mesh cylinder node to the current edited geometry.
Args:
Vertices (int): The Vertices parameter
Radius (float): The Radius parameter
Depth (float): The Depth parameter
Side Segments (int): The Side Segments parameter
Fill Segments (int): The Fill Segments parameter
Returns:
success (bool): Operation success status
nodeId (str): Created node identifier
inputs (Dict[str, Any] with keys {"name": str, "type": str, "can_accept_default_value": bool}): Node inputs
outputs (Dict[str, Any] with keys {"name": str, "type": str}): Node outputs
"""
tool_name = "addNodeMeshCylinder" # Define tool name for logging
params = {"Vertices": Vertices, "Radius": Radius, "Depth": Depth, "Side Segments": Side Segments, "Fill Segments": Fill Segments} # Create params dict for logging
print(f"Executing {tool_name} in Maya with params: {params}")
try:
# No parameters to validate
# TODO: Implement actual maya API calls
# This is a placeholder implementation
return {
"success": True, # TODO: Implement
"nodeId": None , # TODO: Implement
"inputs": None , # TODO: Implement
"outputs": None
}
except Exception as e:
print(f"Error in {tool_name}: {str(e)}")
return {"success": False, "error": str(e)}
def addNodeMeshUVSphere(Radius: Optional[float] = None, Rings: Optional[int] = None, Segments: Optional[int] = None) -> Dict[str, Any]:
"""
Adds a new mesh sphere node to the current edited geometry.
Args:
Radius (float): The Radius parameter
Rings (int): The Rings parameter
Segments (int): The Segments parameter
Returns:
success (bool): Operation success status
nodeId (str): Created node identifier
inputs (Dict[str, Any] with keys {"name": str, "type": str, "can_accept_default_value": bool}): Node inputs
outputs (Dict[str, Any] with keys {"name": str, "type": str}): Node outputs
"""
tool_name = "addNodeMeshUVSphere" # Define tool name for logging
params = {"Radius": Radius, "Rings": Rings, "Segments": Segments} # Create params dict for logging
print(f"Executing {tool_name} in Maya with params: {params}")
try:
# No parameters to validate
# TODO: Implement actual maya API calls
# This is a placeholder implementation
return {
"success": True, # TODO: Implement
"nodeId": None , # TODO: Implement
"inputs": None , # TODO: Implement
"outputs": None
}
except Exception as e:
print(f"Error in {tool_name}: {str(e)}")
return {"success": False, "error": str(e)}
def addNodePositionInput() -> Dict[str, Any]:
"""
Adds a new position input node to the current edited geometry.
Args:
No parameters
Returns:
success (bool): Operation success status
nodeId (str): Created node identifier
inputs (Dict[str, Any] with keys {"name": str, "type": str, "can_accept_default_value": bool}): Node inputs
outputs (Dict[str, Any] with keys {"name": str, "type": str}): Node outputs
"""
tool_name = "addNodePositionInput" # Define tool name for logging
params = {} # Create params dict for logging
print(f"Executing {tool_name} in Maya with params: {params}")
try:
# No parameters to validate
# TODO: Implement actual maya API calls
# This is a placeholder implementation
return {
"success": True, # TODO: Implement
"nodeId": None , # TODO: Implement
"inputs": None , # TODO: Implement
"outputs": None
}
except Exception as e:
print(f"Error in {tool_name}: {str(e)}")
return {"success": False, "error": str(e)}
def addNodeSeparateXYZ() -> Dict[str, Any]:
"""
Adds a new separate XYZ node to the current edited geometry.
Args:
No parameters
Returns:
success (bool): Operation success status
nodeId (str): Created node identifier
inputs (Dict[str, Any] with keys {"name": str, "type": str, "can_accept_default_value": bool}): Node inputs
outputs (Dict[str, Any] with keys {"name": str, "type": str}): Node outputs
"""
tool_name = "addNodeSeparateXYZ" # Define tool name for logging
params = {} # Create params dict for logging
print(f"Executing {tool_name} in Maya with params: {params}")
try:
# No parameters to validate
# TODO: Implement actual maya API calls
# This is a placeholder implementation
return {
"success": True, # TODO: Implement
"nodeId": None , # TODO: Implement
"inputs": None , # TODO: Implement
"outputs": None
}
except Exception as e:
print(f"Error in {tool_name}: {str(e)}")
return {"success": False, "error": str(e)}
def addNodeSetPosition() -> Dict[str, Any]:
"""
Adds a new set position node to the current edited geometry.
Args:
No parameters
Returns:
success (bool): Operation success status
nodeId (str): Created node identifier
inputs (Dict[str, Any] with keys {"name": str, "type": str, "can_accept_default_value": bool}): Node inputs
outputs (Dict[str, Any] with keys {"name": str, "type": str}): Node outputs
"""
tool_name = "addNodeSetPosition" # Define tool name for logging
params = {} # Create params dict for logging
print(f"Executing {tool_name} in Maya with params: {params}")
try:
# No parameters to validate
# TODO: Implement actual maya API calls
# This is a placeholder implementation
return {
"success": True, # TODO: Implement
"nodeId": None , # TODO: Implement
"inputs": None , # TODO: Implement
"outputs": None
}
except Exception as e:
print(f"Error in {tool_name}: {str(e)}")
return {"success": False, "error": str(e)}
def getNodeInputsOutputs(nodeId: str) -> Dict[str, Any]:
"""
Retrieves all input and output socket names for a node, and checks if input sockets can accept a default_value.
Args:
nodeId (str): The node id to get information about, must exist in the node graph
Returns:
success (bool): Operation success status
inputs (Dict[str, Any] with keys {"name": str, "type": str, "can_accept_default_value": bool}): Node inputs
outputs (Dict[str, Any] with keys {"name": str, "type": str}): Node outputs
"""
tool_name = "getNodeInputsOutputs" # Define tool name for logging
params = {"nodeId": nodeId} # Create params dict for logging
print(f"Executing {tool_name} in Maya with params: {params}")
try:
# No parameters to validate
# TODO: Implement actual maya API calls
# This is a placeholder implementation
return {
"success": True, # TODO: Implement
"inputs": None , # TODO: Implement
"outputs": None
}
except Exception as e:
print(f"Error in {tool_name}: {str(e)}")
return {"success": False, "error": str(e)}
# === NEWLY GENERATED ===
def setNodeProperty(nodeId: str, property: str, value: Optional[Any] = None) -> Dict[str, Any]:
"""
Sets a property of a node. For the available properties, use 'getNodeDefinition'.
Args:
nodeId (str): Node identifier
property (str): Property name
value (Any): Property value
Returns:
success (bool): Operation success status
"""
tool_name = "setNodeProperty" # Define tool name for logging
params = {"nodeId": nodeId, "property": property, "value": value} # Create params dict for logging
print(f"Executing {tool_name} in Maya with params: {params}")
try:
# No parameters to validate
# TODO: Implement actual maya API calls
# This is a placeholder implementation
return {
"success": True
}
except Exception as e:
print(f"Error in {tool_name}: {str(e)}")
return {"success": False, "error": str(e)}
# === NEWLY GENERATED ===
def addNode() -> Dict[str, Any]:
"""
Adds a new node to the current edited geometry.
Args:
No parameters
Returns:
success (bool): Operation success status
"""
tool_name = "addNode" # Define tool name for logging
params = {} # Create params dict for logging
print(f"Executing {tool_name} in Maya with params: {params}")
try:
# No parameters to validate
# TODO: Implement actual maya API calls
# This is a placeholder implementation
return {
"success": True
}
except Exception as e:
print(f"Error in {tool_name}: {str(e)}")
return {"success": False, "error": str(e)}
def connectNodes(from: str, fromPort: str, to: str, toPort: str) -> Dict[str, Any]:
"""
Connects two nodes in the current edited geometry.
Args:
from (str): Node identifier
fromPort (str): Port name
to (str): Node identifier
toPort (str): Port name
Returns:
success (bool): Operation success status
"""
tool_name = "connectNodes" # Define tool name for logging
params = {"from": from, "fromPort": fromPort, "to": to, "toPort": toPort} # Create params dict for logging
print(f"Executing {tool_name} in Maya with params: {params}")
try:
# No parameters to validate
# TODO: Implement actual maya API calls
# This is a placeholder implementation
return {
"success": True
}
except Exception as e:
print(f"Error in {tool_name}: {str(e)}")
return {"success": False, "error": str(e)}
def endEditGeometry() -> Dict[str, Any]:
"""
Ends the current editing of the geometry of an object.
Args:
No parameters
Returns:
success (bool): Operation success status
"""
tool_name = "endEditGeometry" # Define tool name for logging
params = {} # Create params dict for logging
print(f"Executing {tool_name} in Maya with params: {params}")
try:
# No parameters to validate
# TODO: Implement actual maya API calls
# This is a placeholder implementation
return {
"success": True
}
except Exception as e:
print(f"Error in {tool_name}: {str(e)}")
return {"success": False, "error": str(e)}
def getNodeDefinition(nodeType: str) -> Dict[str, Any]:
"""
Get detailed information about a specific node type including its inputs and outputs
Args:
nodeType (str): The node type to get information about
Returns:
success (bool): Operation success status
nodeDefinition (Dict[str, Any] with keys {"type": str, "description": str, "inputs": List[Dict[str, Any] with keys {"name": str, "type": Literal["int", "float", "vec2", "vec3", "vec4", "bool", "string", "geometry", "material"], "description": str}], "outputs": List[Dict[str, Any] with keys {"name": str, "type": Literal["int", "float", "vec2", "vec3", "vec4", "bool", "string", "geometry", "material"], "description": str}], "properties": Dict[str, Any]}): The nodeDefinition return value
"""
tool_name = "getNodeDefinition" # Define tool name for logging
params = {"nodeType": nodeType} # Create params dict for logging
print(f"Executing {tool_name} in Maya with params: {params}")
try:
# No parameters to validate
# TODO: Implement actual maya API calls
# This is a placeholder implementation
return {
"success": True, # TODO: Implement
"nodeDefinition": None
}
except Exception as e:
print(f"Error in {tool_name}: {str(e)}")
return {"success": False, "error": str(e)}
def getNodeTypes() -> Dict[str, Any]:
"""
Returns all available node types that can be added to a geometry
Args:
No parameters
Returns:
success (bool): Operation success status
nodeTypes (List[str]): The nodeTypes return value
"""
tool_name = "getNodeTypes" # Define tool name for logging
params = {} # Create params dict for logging
print(f"Executing {tool_name} in Maya with params: {params}")
try:
# No parameters to validate
# TODO: Implement actual maya API calls
# This is a placeholder implementation
return {
"success": True, # TODO: Implement
"nodeTypes": None
}
except Exception as e:
print(f"Error in {tool_name}: {str(e)}")
return {"success": False, "error": str(e)}
def startEditGeometry(id: str) -> Dict[str, Any]:
"""
Starts editing the geometry of an object.
Args:
id (str): Object identifier
Returns:
success (bool): Operation success status
"""
tool_name = "startEditGeometry" # Define tool name for logging
params = {"id": id} # Create params dict for logging
print(f"Executing {tool_name} in Maya with params: {params}")
try:
# No parameters to validate
# TODO: Implement actual maya API calls
# This is a placeholder implementation
return {
"success": True
}
except Exception as e:
print(f"Error in {tool_name}: {str(e)}")
return {"success": False, "error": str(e)}
# === NEWLY GENERATED ===
def createGeometry() -> Dict[str, Any]:
"""
Creates a new geometry object.
Args:
No parameters
Returns:
success (bool): Operation success status
"""
tool_name = "createGeometry" # Define tool name for logging
params = {} # Create params dict for logging
print(f"Executing {tool_name} in Maya with params: {params}")
try:
# No parameters to validate
# TODO: Implement actual maya API calls
# This is a placeholder implementation
return {
"success": True
}
except Exception as e:
print(f"Error in {tool_name}: {str(e)}")
return {"success": False, "error": str(e)}
# === NEWLY GENERATED ===