def __attach_v4(self, shape, source, name, attribute, offset=0):
        elements = [ ]
        (min_x, min_y, min_z, min_w) = source[0]
        (max_x, max_y, max_z, max_w) = source[0]
        for (x, y, z, w) in source:
            elements.append(x)
            elements.append(y)
            elements.append(z)
            elements.append(w)
            min_x = min(x, min_x)
            min_y = min(y, min_y)
            min_z = min(z, min_z)
            min_w = min(w, min_w)
            max_x = max(x, max_x)
            max_y = max(y, max_y)
            max_z = max(z, max_z)
            max_w = max(w, max_w)
        self.__set_source(shape, name, 4, [min_x, min_y, min_z, min_w], [max_x, max_y, max_z, max_w], elements)
        self.__set_input(shape, attribute, { 'source': name, 'offset': offset })
Attach a Tuple[4] stream to the JSON representation. Also calculates the min and max range.
dataset/ETHPy150Open turbulenz/turbulenz_tools/turbulenz_tools/tools/asset2json.py/JsonAsset.__attach_v4