def scale_image(originalObject, scale): scaledData = originalObject.data.resize([int(x) for x in np.multiply(originalObject.data.size,np.full((1,2),scale)[0])]) if originalObject.componentType == 'Road': updatedVP = scaleCoord(originalObject.vp, np.full((1,2),scale)[0]) updatedMIN_X = scaleCoord(originalObject.min_x, np.full((1,2),scale)[0]) updatedMAX_X = scaleCoord(originalObject.max_x, np.full((1,2),scale)[0]) updatedLANES = [] for i in range(len(originalObject.lanes)): updatedLANES.append(scaleCoord(originalObject.lanes[i], np.full((1,2),scale)[0])) return comp.road(ImageFile(scaledData, originalObject.description), updatedVP, updatedMIN_X, updatedMAX_X, updatedLANES) elif originalObject.componentType =='Car': return comp.car(ImageFile(scaledData, originalObject.description))
def fit_image(originalObject, fitMeasurement): scaledData = originalObject.data.resize(fitMeasurement) if originalObject.componentType == 'Road': scale = np.true_divide(fitMeasurement, originalObject.data.size).tolist() updatedVP = scaleCoord(originalObject.vp, scale) updatedMIN_X = scaleCoord(originalObject.min_x, scale) updatedMAX_X = scaleCoord(originalObject.max_x, scale) updatedLANES = [] for i in range(len(originalObject.lanes)): updatedLANES.append(scaleCoord(originalObject.lanes[i], scale)) return comp.road(ImageFile(scaledData, originalObject.description), updatedVP, updatedMIN_X, updatedMAX_X, updatedLANES) elif originalObject.componentType == 'Car': return comp.car(ImageFile(scaledData, originalObject.description))
def addRoad(self, *args): self.roads.append(comp.road(*args)) return