positioning¶
Модуль для работы с gps.
-
positioning.
POSITION_INTERVAL
¶ Интервал в микросекундах (1000000=1 секунде), период обновления функции
position()
-
positioning.
default_module
()¶ Возвращает число, id установленного по умолчанию модуля гпс.
>>> positioning.default_module() 270526860
-
positioning.
last_position
()¶ Возвращает последние данные о координатах.
-
positioning.
modules
()¶ Возвращает кортеж из словарей, доступных устройств на смартфоне.
‘available’ - доступность устройства (0/1)
- ‘id’ - номер устройства
270526860 - AGPS
270526858 - встроенный гпс
270526873 - блютус гпс
270559509 - данный на базе сети
536979841 - wi-fi сеть
‘name’ - имя устройства
>>> positioning.modules() [{'available': 1, 'id': 270526860, 'name': u'A-GPS'}, {'available': 1, 'id': 270526858, 'name': u'\u0412\u0441\u0442\u0440\u043e\u0435\u043d. \u043c\u043e\u0434\u0443\u043b\u044c GPS'}, {'available': 0, 'id': 270526873, 'name': u'Bluetooth GPS'}, {'available': 0, 'id': 536979841, 'name': u'Wi-Fi/\u0421\u0435\u0442\u044c'}, {'available': 1, 'id': 270559509, 'name': u'\u041d\u0430 \u0431\u0430\u0437\u0435 \u0441\u0435\u0442\u0438'}]
-
positioning.
module_info
(module_id)¶ Возвращает словарь, информацию, о модуле
>>> positioning.module_info(270526860) {'available': 1, 'status': {'data_quality': 1, 'device_status': 3}, 'name': u'A-GPS', 'position_quality': {'time_to_first_fix': 1000000L, 'cost': 2, 'horizontal_accuracy': 10.0, 'vertical_accuracy': 10.0, 'time_to_next_fix': 1000000L, 'power_consumption': 3}, 'capabilities': 127, 'version': u'1.00(0)', 'location': 1, 'technology': 4, 'id': 270526860}
-
positioning.
select_module
(module_id)¶ Устанавливает стандартным модуль
>>> positioning.select_module(270526680)
-
positioning.
set_requestors
()¶ хз, без этой функции не работает приемник и надо передать параметры из примера
>>> positioning.set_requestors([{'type':'service', 'format':'application', 'data':'test_app'}])
-
positioning.
position
(course=0, satellites=0, callback=None, interval=positioning.POSITION INTERVAL, partial=0)¶ - Parameters
course – 0|1 информация о курсе
satellites – 0|1 информация о спутнике
callback – обработчик координат
interval – время в микросекундах, через которые будут передаваться координаты
partial – 0|1 в обработчик придет информация о спутниках, перед расчетом местоположения
Возвращает словарь, координаты позиции с gps
>>> positioning.position() {'satellites': None, 'position': {'latitude': 65.815685987472534, 'altitude': 90.0, 'vertical_accuracy': 230.45707702636719, 'longitude': 47.181628227233887, 'horizontal_accuracy': 298.0}, 'course': None}
>>> positioning.position(course=1, satellites=1, callback=positioncb, interval=1000000*10, partial=1)
{‘satellites’: {‘horizontal_dop’: 0.85, ‘used_satellites’: 4, ‘vertical_dop’: 0.8, ‘time’: 1376044235.0, ‘satellites’: 6, ‘time_dop’: 0.5199}, ‘position’: {‘latitude’: 65.815685987472534, ‘altitude’: 90.0, ‘vertical_accuracy’: 230.45707702636719, ‘longitude’: 47.181628227233887, ‘horizontal_accuracy’: 298.0}, ‘course’: {‘speed’: 0, ‘heading’: nan, ‘heading_accuracy’: nan, ‘speed_accurace’: 0}}
-
positioning.
stop_position
()¶ Останаливает запущенную функцию
position()
Почему то у меня он не заработал, с ним вываливается весь скрипт, так что будьте аккуратней
Пример¶
import positioning
positioning.set_requestors([{"type":"service", "format":"application", "data":"test_app"}])
print positioning.position()
# {'satellites': None, 'position': {'latitude': 40.111924347701, 'altitude':147.5, 'vertical_accuracy': 120.0, 'longitude': -88.228399329257, 'horizontal_accuracy': 71.9983825683594}, 'course': None}