def create(cls, parent, lat, lng, name, source): pi = PointIndex( parent=parent, lng=float(lng), lat=float(lat), name=name.strip().lower(), source=source.strip().lower()) # Longitude (x) var_min = -180 * pow(10, 5) var_max = 180 * pow(10, 5) varval = int(lng * pow(10, 5)) intervals = interval.get_index_intervals(varval, var_min, var_max) for index,value in intervals.iteritems(): model.IntegerProperty(name=index.replace('i', 'x'))._store_value(pi, value) # Latitude (y) var_min = -90 * pow(10, 5) var_max = 90 * pow(10, 5) varval = int(lat * pow(10, 5)) intervals = interval.get_index_intervals(varval, var_min, var_max) for index,value in intervals.iteritems(): model.IntegerProperty(name=index.replace('i', 'y'))._store_value(pi, value) pi._fix_up_properties() return pi
def wrapper(doc, bulkload_state): varvals = simplejson.loads(doc)['v'] varname, index = i.split('-') iname = 'i%s' % index # TODO: Read varname ranges from /tools/python/worldclimmetadata.csv if varname == 'a': var_min = -431 var_max = 8233 varval = int(varvals['a']) elif varname == 'b1': var_min = -290 var_max = 320 varval = int(varvals['b1']) elif varname == 'b12': var_min = 0 var_max = 11401 varval = int(varvals['b12']) else: logging.info('Unsupported range variable %s' % varname) return None intervals = interval.get_index_intervals(varval, var_min, var_max) if len(intervals) == 0: logging.info('No intervals for varname: %s varval: %s var_min: %s var_max: %s' % (varname, varval, var_min, var_max)) else: for index,value in intervals.iteritems(): if index == iname: return value return None
def add_dynamic_properties(input_dict, instance, bulkload_state_copy): """Adds dynamic properties from the CSV input_dict to the entity instance.""" val = int(input_dict['avg_Band1'].split('.')[0]) var_min = -454 var_max = 8550 for k,v in interval.get_index_intervals(val, var_min, var_max).iteritems(): instance[k] = v return instance