Exemple #1
0
    def test_transform_creation(self):
        """ Test node creation via noca-convenience function """
        name = "test"
        node = noca.create_node("transform", name=name)

        # Make sure noca-node refers to the correct Maya-node
        self.assertEqual(node.node, name)

        # Make sure transform was correctly created
        transform_exists = cmds.objExists(name)
        self.assertTrue(transform_exists)
        transform_type = cmds.objectType(name)
        self.assertEqual(transform_type, "transform")

        # Make sure transform has no children
        transform_children = cmds.listRelatives(name)
        self.assertIsNone(transform_children)
Exemple #2
0
print(add_result.attrs)
print(add_result.attrs_list)
print(add_result.plugs)

noca_list = noca.Node([a.tx, c.tx, b.tz])
print(noca_list.nodes)

# Tab2
# CONVENIENT EXTRAS

import node_calculator.core as noca

# Create nodes as NcNode instances
my_transform = noca.transform("myTransform")
my_locator = noca.locator("myLocator")
my_xy = noca.create_node("nurbsCurve", "myCurve")

# Add attributes
my_transform.add_separator()
offset = my_transform.add_float("offsetValue", min=0, max=3)
space_switch = my_transform.add_enum("spaceSwitch", cases=["local", "world"])
my_locator.t = noca.Op.condition(space_switch == 0,
                                 my_transform.ty * 2 - offset, 0)

# Tab3
# CONVENIENT EXTRAS

import node_calculator.core as noca

# NcNodes as iterables
some_node = noca.Node("A_geo", ["tx", "ty"])
Exemple #3
0
print('Type of noca.Node([1, 2, 3]):', type(_list))


# Tab2
# UNDER THE HOOD

# NcNode vs NcAttrs
nc_node = noca.Node("A_geo.translateX")

nc_attr = nc_node.scaleY
nc_attr.extra
# or:
nc_node.scaleY.extra


plus_minus = noca.create_node("plusMinusAverage", "test")
plus_minus = noca.Node(plus_minus, "input3D[0]")
plus_minus.attrs.input3Dx = 8


# Tab3
# UNDER THE HOOD

# NcValues
# This does NOT work:
normal_int = 1
normal_int.marco = "polo"

# This works:
noca_int = noca.Node(1)
noca_int.marco = "polo"
Exemple #4
0
    def setUp(self):
        super(TestOperators, self).setUp()

        # Create standard nodes on which to perform the operations on.
        # Transform test nodes
        self.tf_out_a = noca.create_node("transform", name="transform_out_A")
        self.tf_out_b = noca.create_node("transform", name="transform_out_B")
        self.tf_in_a = noca.create_node("transform", name="transform_in_A")
        self.tf_in_b = noca.create_node("transform", name="transform_in_B")

        # Matrix test nodes
        self.mat_out_a = noca.create_node("holdMatrix", name="matrix_out_A")
        self.mat_out_b = noca.create_node("holdMatrix", name="matrix_out_B")
        self.mat_in_a = noca.create_node("holdMatrix", name="matrix_in_A")

        # Quaternion test nodes
        self.quat_out_a = noca.create_node("eulerToQuat",
                                           name="quaternion_out_A")
        self.quat_out_b = noca.create_node("eulerToQuat",
                                           name="quaternion_out_B")
        self.quat_in_a = noca.create_node("quatNormalize",
                                          name="quaternion_in_A")

        # Mesh, curve and nurbsSurface test nodes
        self.mesh_out_a = noca.create_node("mesh", name="mesh_out_A")
        self.mesh_shape_out_a = noca.Node("mesh_out_AShape")
        self.curve_out_a = noca.create_node("nurbsCurve", name="curve_out_A")
        self.curve_shape_out_a = noca.Node("curve_out_AShape")
        self.surface_out_a = noca.create_node("nurbsSurface",
                                              name="surface_out_A")
        self.surface_shape_out_a = noca.Node("surface_out_AShape")