# collada.source.NameSource

class collada.source.NameSource(id, data, components, xmlnode=None)

  Contains a source array of strings, as defined in the collada <Name_array> inside a <source>.

  If `n` is an instance of `collada.source.NameSource`, then `len(n)` is the length of the shaped source. `len(n)*len(n.components)` would give you the number of values in the source. `n[i]` is the ith item in the source array.

  __init__(id, data, components, xmlnode=None)

    Create a name source instance.

    Parameters

      - id (str) – A unique string identifier for the source

      - data (numpy.array) – Numpy array (unshaped) with the source values

      - components (tuple) – Tuple of strings describing the semantic of the data, e.g. `('JOINT')` would cause `data` to be reshaped as `(-1, 1)`

      - xmlnode – When loaded, the xmlnode it comes from.

  Methods

  `__init__`(id, data, components[, xmlnode]) | Create a name source instance.
  `load`(collada, localscope, node) | Load and return a class instance from an XML node.
  `save`() | Saves the source back to `xmlnode`

  Attributes

  `xmlnode` | ElementTree representation of the source.
  `id` | The unique string identifier for the source
  `data` | Numpy array with the source values.
  `components` | Tuple of strings describing the semantic of the data, e.g.