예제 #1
0
 def __new__(cls, transform, **kwargs):
     if not isinstance(transform, Transform):
         transform = transform.getParent()
     select(transform, replace=True)
     nClothCreate()
     shape = selected()[0]
     nc_xform = shape.getParent()
     rename(nc_xform, transform.namespace() + 'snCloth' + \
      _util.capitalize(transform.name().split(':')[-1]))
     shape.__class__ = cls
     return shape
예제 #2
0
	def __new__(cls, transform, **kwargs):
		if not isinstance(transform, Transform):
			transform = transform.getParent()
		select(transform, replace=True)
		nClothCreate()
		shape = selected()[0]
		nc_xform = shape.getParent()
		rename(nc_xform, transform.namespace() + 'snCloth' + \
			_util.capitalize(transform.name().split(':')[-1]))
		shape.__class__ = cls
		return shape
예제 #3
0
	def assign_new_names(self):
		new_name = str(self.newName.text())
		if not new_name:
			return error('New name is empty.')
		
		# Solve naming conflicts by first naming everything foo#.
		for n in self._nodes:
			rename(n, 'foo#')
		
		if not new_name.count('%'):
			new_name += '%d'
		for i, n in enumerate(self._nodes):
			self.rename(n, new_name % (i + 1))
예제 #4
0
    def assign_new_names(self):
        new_name = str(self.newName.text())
        if not new_name:
            return error('New name is empty.')

        # Solve naming conflicts by first naming everything foo#.
        for n in self._nodes:
            rename(n, 'foo#')

        if not new_name.count('%'):
            new_name += '%d'
        for i, n in enumerate(self._nodes):
            self.rename(n, new_name % (i + 1))
예제 #5
0
    def generate(self):
        """
        Generate the maya scene file
        :return: None
        """
        # Clear the scene for the level
        pmcs.newFile(force=True)

        # Pivot for rotation
        pivot = (self.block_dimensions[X] / 2.0, 0,
                 self.block_dimensions[Z] / 2.0)

        # Go through each level item and place block
        for i in range(self.lvl.size[X]):
            for j in range(self.lvl.size[Y]):
                for k in range(self.lvl.size[Z]):
                    blk = self.lvl.get_block((i, j, k))

                    # Don't worry about Empty or RampDummy blocks
                    if blk.block_type != blocks.BlockType.EMPTY and blk.block_type != blocks.BlockType.RAMP_DUMMY:
                        # Load the scene file
                        pmcs.importFile(pmcs.Path(blk.pth))

                        # Give block a unique name
                        new_name = "{}_{}_{}_{}".format(
                            self.group_name, i, j, k)
                        pmcg.rename(self.group_name, new_name)

                        # Rotate it based on the orientation

                        pmcg.rotate(new_name,
                                    [0, 90 * int(blk.orientation), 0],
                                    pivot=pivot)

                        # Move it to the correct spot
                        new_spot = [
                            i * self.block_dimensions[X],
                            j * self.block_dimensions[Y],
                            k * self.block_dimensions[Z]
                        ]
                        pmcg.move(new_name, new_spot)
예제 #6
0
	def rename(self, obj, new_name):
		rename(obj, new_name)
		self._renamed += 1
예제 #7
0
 def rename(self, obj, new_name):
     rename(obj, new_name)
     self._renamed += 1