def arrayDimensionOrder(self): from numpy import int16, zeros from random import randint ptree = Tree('seg_tree', -1, 'NEW') ptree.addNode('IMM') ptree.write() ptree = Tree('seg_tree', -1) ptree.createPulse(1) ptree = Tree('seg_tree', 1) node = ptree.getNode('IMM') WIDTH = 640 HEIGHT = 480 currFrame = zeros(WIDTH * HEIGHT, dtype=int16) currTime = float(0) for i in range(0, WIDTH): for j in range(0, HEIGHT): currFrame[i * HEIGHT + j] = randint(0, 255) currTime = float(0) startTime = Float32(currTime) endTime = Float32(currTime) dim = Float32Array(currTime) segment = Int16Array(currFrame) segment.resize([1, HEIGHT, WIDTH]) shape = segment.getShape() node.makeSegment(startTime, endTime, dim, segment) retShape = node.getShape() self.assertEqual(shape[0], retShape[0]) self.assertEqual(shape[1], retShape[1]) self.assertEqual(shape[2], retShape[2])
def copy_tree(shot): tree_raw = Tree('exl50', shot) tree_cop = Tree('exl50_copy', shot, 'NEW') pools = ["AI", "FBC"] for pool in pools: # nodes_list = [] nodes_array = tree_raw.getNode(pool).getDescendants() # nodes_list.extend(nodes_array) pool_nodes = [node.getNodeName() for node in nodes_array] tree_raw.setDefault(tree_raw.getNode(pool)) tree_cop.setDefault(tree_cop.addNode(pool, "STRUCTURE")) for node in pool_nodes: tree_cop.addNode(node, "SIGNAL").addTags(node) # print(node) try: data = tree_raw.getNode(node).getData() tree_cop.getNode(node).putData(data) print(str(shot) + ':' + node) except Exception as e: pass tree_raw.setDefault(tree_raw.getNode(r"\EXL50::TOP")) tree_cop.setDefault(tree_cop.getNode(r"\EXL50_COPY::TOP")) # tree_raw.setDefault(node.getParent()) # tree_cop.setDefault(node.getParent()) tree_cop.write()