import classes, ucamObjectClass filename = "run114_objects.json" """ Reads a JSON file and re-constructs the object list... """ JSONfile = open(filename, "r") wholeFileString = JSONfile.read() allObjectsJSON = json.loads(wholeFileString) objects = [] for i in allObjectsJSON: ob = json.loads(i) #print ob """ Create a new instance of ObservedObject for this object""" newObject = ucamObjectClass.colourObject(ob['id']) meanPosition = (ob['meanPosition']) print meanPosition['r'] """ newObject.currentPosition = (ob['x'], ob['y']) dataArray = ob['data'] for data in dataArray: newObject.addExposure(data[2],data[3], data[1], data[4], data[0], 0) objects.append(newObject) """ JSONfile.close()
""" Sort the objects """ for c in channels: objects = allObjects[c] sortedObjects = sorted(objects, key= lambda p:p.meanFlux, reverse=True) allObjects[c] = sortedObjects colour = 'r' objects = allObjects[colour] masterObjectList = [] for o in objects: newIDNumber = ultracamutils.getUniqueID(masterObjectList) colourObject = ucamObjectClass.colourObject(newIDNumber) debug.write("Created a new colourObject with id: %d"%(newIDNumber)) colourObject.setMeanPosition(colour, o.meanPosition) colourObject.colourID[colour] = o.id """ Now move the photometry into the new object """ addPhotometry(colourObject, colour, o.exposures) masterObjectList.append(colourObject) distanceThreshold = float(config.MINPIXELDISTANCE) print "Threshold", distanceThreshold colour = 'g' objects = allObjects[colour]