def getCustomPath(latitude, longitude, end_place): startCoord = Coordinate() startCoord.latitude = latitude startCoord.longitude = longitude #Get all coordinate in the database for our end place end_coordinates = Coordinate.getAllForBuilding(end_place) if len(end_coordinates) == 0: raise Exception(end_place + " is not a building in our database") #Figure out the two closest coordinates (startCoord, endCoord) = DB.getClosestCoords([startCoord], end_coordinates) #Find all floor plans for our end place #floorPlans = [] #floors = Floor.getAllForBuilding(end_place) #for floor in floors: # floorPlans.append(floor.floor_map) #Get building information for our end place building = Building() building.loadFromID(end_place) #Build path object to pass back path = Path() path.startCoord = startCoord.__dict__ path.endCoord = endCoord.__dict__ path.floorPlans = building.floorPlans path.buildingInfo = building.__dict__ return path.__dict__
def getBuildingInfo(building_id): building = Building() building.loadFromID(building_id) #Find all floor plans for our end place floorPlans = [] floors = Floor.getAllForBuilding(building_id) for floor in floors: floorPlans.append(floor.floor_map) buildingInfo = BuildingWithFloor() buildingInfo.loadUp(building.__dict__, floorPlans) return buildingInfo.__dict__