def point(r): "Create an ETRS89 point from x, y, z and srid." try: p = Point([float(r.x), float(r.y), float(r.z)], srid=int(r.srid)) p = transform(p, ETRS89, clone=True) except ValueError: p = None return p
def field_from_native(self, data, files, field_name, into): """ get geometry object """ value = data.getlist(field_name, None) srid = int(data.get('srid', 4258)) if value and len(value) > 0 and len(value[0]) > 0: if len(value) < 2: value = value[0].split(',') values = [float(v) for v in value] geo_input = Point(*values, srid=srid) if srid != 4258: geo_input = transform(geo_input, 4258, clone=True) into[field_name] = geo_input return geo_input else: return ''