Всем привет!
Не так давно я прошел обучение курса "Геоинформационные системы: введение в Qgis" и подумал - почему бы не поделиться полученными знаниями?!.
Учитель из меня, конечно еще тот, но вдруг информация, которой я буду делиться кому-нибудь пригодится?
Для начала коротенечко расскажу, что такое Qgis и для чего он нужен. Qgis - открытое ПО (со свободной лицензией и открытым кодом) для создания, анализа и редактирования геоинформационных материалов (карты, космоснимки, иные геоданные). в Qgis вшит Python - что позволяет создавать модули и приложения (но эту тему нам не преподавали поэтому инфы по ней не будет).
Сегодня с вами попробуем поработать с картами.
Для начала работы нужно скачать Qgis выбрать версию можно тут: https://download.osgeo.org/qgis/windows/ (лучше взять стабильные версии 3.28 или 3.32 но кому чисто для знакомства - можно брать последнюю).
После скачивания и установки мы получим голое ПО, и для начала работы его необходимо настроить. Сегодня расскажу как, а на следующем занятии сделаем что-то посложнее )))
После запуска мы видим с вами такое окно. Это - стартовая страница, сейчас она пустая, и ее нужно заполнить. Первое, что нужно сделать - установить модули.
Жмем сюда:
В появившемся окне ищем QMS или quickmapservices:
У меня этот модуль уже установлен, поэтому мне предлагает его либо удалить либо переустановить. У вас будет кнопка - установить. Нажимаем, окно закрываем. Теперь у нас появятся новые кнопки на панели (1) и окно поиска в правой рабочей области (2):
Quickmapservices - собственно, название говорит само за себя ) это модуль быстрого поиска пространственных геоданных - своего рода картографический интернет внутри Qgis. В поле поиска вводим те карты, которые хотим видеть в качестве базовых - яндекс, гугл, и т. п. Посмотреть полный перечень доступных карт можно на сайте: https://qms.nextgis.com/
после подключения необходимых карт, они отобразятся в дереве слоев и рабочей области:
Обратите внимание, добавленные слои накладываются друг на друга, это видно по карте (цифры 1, 2, 3)
блин. совсем забыл про интерфейс, где что и как называется, немного отступим, покажу основные рабочие области:
Теперь далее. мы с вами подключили несколько слоев. я решил добавить еще слой районы Москвы - немного поработаем с ним. По умолчанию Qgis присваивает рандомный стиль. Как видно, у меня это сплошная заливка, что не совсем айс - саму Москву не видно.
Чтобы изменить оформление правой кнопкой мышы жмем на название слоя и переходим в свойства:
Появляется окно свойств слоя, в котором мы можем изменить оформление с простой заливки на контур:
ну и поиграться с оформлением, изменить цвет и толщину контура
Жмякаем ок → ок → применить, и вуаля. Слой стал "прозрачным", видно районы Москвы.
Чтобы включить/отключить слои или переместить их местами нужно снять/установить галочки со слоя.
Сейчас этот слой является видимым. Но если его переместить "под другой слой" - то он пропадет. Перенос осуществляется мышкой, перетаскиванием названия слоя (процесс скринить не буду, думаю понятно).
Ну чтож - сегодня научились работать с базовой картой. В следующий раз начнем работать со слоями - научимся добавлять и создавать новые слои.
2гис как на китайскую жоповозку поставить?
Не знаю как на черри, у меня сейчас «Белджи икс-50» (По сути, это Джили Кулрей китайский, только производства Беларуси). Тоже хуй чего запустишь. Но есть фишка, можно подключить телефон кабелем к машине и есть приложение, которое если запустить в машине и в телефоне одновременно, выводит на экран жоповозки — экран телефона. И дальше хоть тугис, хоть навител, хоть яндекс.карты. Ездил давеча на дальняк, вполне справляется с функциями навигатора. Правда при этом радио не пашет нифига. Но в телефоне можно включить сначала я.музыку (наверное радио тоже можно, не пробовал), а потом навигатор, так что не совсем в тишине.
В целом, белдживский дивайс обычный андроид и по хорошему, вполне можно что-то поставить на него. Но проблема в том, что в штатной комплектации нет проводника, через который можно запустить *.apk файл. В инете полно подробных инструкций, как перепрошить. Но чота ссцыкотно на новой машине такую херню делать.
Пробег почти пять тыщ, как будет 10, поеду в салон на обслуживание и поинтересуюсь, а нельзя ли в салоне перепрошить и залить туда проводник, чтобы можно было самому приложения ставить? Пусть обойдется в несколько тыщ, зато с гарантии не слетишь. А так, видосы поглядел, там у мужика целый набор необходимых приложений и все работает. Правда джи-пи-эс модуль отдельно надо будет покупать, но он стоит рублей пятьсот.
Думаю, что и для черри это все доступно. Нужно только найти умельца или в салоне поинтересоваться.
Кстати, предыдущая машина, что у меня была это Черри Тигго FL. Твой тот самый уазик (вроде у тебя же четыре про?), только старой модификации (с запаской на задней двери). 11 лет отъездил практически без каких-либо проблем. Только двери и крылья погнили нахрен (кузов как ни странно вообще не тронуло).
Четвёрку хотел жене взять, но не было в Оренбурге четвёрки голубого цвета.
Паписят нах.
Пришлось брать чери 7 про макс.
Комплектацию не помню, извини. Что-то из дешёвых, без люков, панорамных крыш и прочих выебонов.
Жена довольна, а это главное.
Я на дохуя каких машинах покатался, могу накидать минусов этой жоповозки, если это интересно. Она у нас десять тыщ всего, но плюсы и минусы уже заметны.
Так и я планировал брать четверку. Хотя, денег хватало и на восьмерку, но в мой гараж на ней не влезешь. Но у меня друг с год назад купил Джили Атлас, он меня и уболтал. Мол хуле черри, когда есть Джили? Я походил, поглядел на черри и решил брать Омоду (ну да, тут с логикой не совсем все просто). Она сука полноприводная есть. Правда тыщ на 300-400 дороже, но я мог себе позволить. Пришел в салон… А там блять менеджер — занят! Я говорю, я пришел покупать машину. Не прицениваться, не ебать мозги. Я хочу вот прямо щас купить машину! Похуй. Девочка на рецепшене сидит — подождите менеджера. Ну, покрутился я пять минут туда-сюда, в машине посидел… А менеджер один. И он сука занят. С другими клиентами общается. А рядом салон джили. Ну, я туда зашел… А мне сразу, почти без разговоров — а на тебе тест-драйв! То есть я минут через пять уже сидел в новой машине и поехал по городу. Километров 10 проехал. Малость охуел от такого подхода. И впечатлился.
Не хочу никакой рекламы. Новая машина, она в общем-то и не нуждается в рекламе. Новая и есть новая. Мне нравится. Я конечно не таксую уже давно. Из мелких косяков… Двери запираются автоматически на скорости 20 км/ч. Пока движок не заглушишь, автоматически не отпираются. Только с кнопки у водителя. Отключить эту опцию можно только в автосалоне. Сам никак (хотя еще на первой моей машине купленной в 2004 году, это было простое нажатие кнопки).
Второй косяк, это слишком быстрое ускорение. Стоит только чуть тапнуть на газ, как разгоняется аж ебу. Жена матюкалась все время, что я слишком быстро набираю скорость, аж в сидушку вдавливает. Но я блять не хочу! Не, ну в кайф конечно, я но я же не в гонки тут играю. Мне по городу ездить надо. Но так получается. Почитал инструкцию. Есть три режима. Обычный, эко и спорт. На обычном вот то самое. Если поставить эко, то реально. Машина ползет как корова с пинка. Прямо обидно, столько дури, а ползет как трактор. Но потом разобрался. Если надо скорость набрать, то надо тупо в пол надавить и она нормально разгоняется. Так что теперь езжу на «эко». Режим «спорт» включал всего пару раз. Ну его нахуй. Я по улицам езжу, а не на гоночном треке.
Тоже чери взял случайно. Вообще вёз жену хавала взять, но ебучий менеджер не понравился. А в чери позвонил, я говорит сегодня выходной, но сейчас рожу умою и через полчаса буду в салоне.
Только что не отсосали, а так да, в жопу целовали.
Домой приеду, если не поленюсь, то напишу. С телефона не особо удобно.
Пиздатая тема, в инженеры сможешь пойти потом
Да питон это легко, главное начинать скрипт вот так:
false = True
while false:
Далее код ))
Пфф...
В 1С, причем в типовых конфигурациях (то есть созданных реально крутыми программистами фирмы 1С), несколько раз встречал такой код:
Пока Истина Цикл
.....
Тут хуева туча кода
.....
КонецЦикла;
В цикле конечно есть всякие проверки на выход из цикла, и в теории он в любом случае должен прерваться. Но за 10 лет работы, уже встречал пару раз, когда выход из цикла зависал. Просто потому, что пользователи порой могут подкинуть такие исходные данные, что никакой программист не сможет предвидеть. Но ведь просто писать такой код, это моветон. Это пиздец как тупо! И это блять программисты, которые позиционируют себя профессионалами...
У нас на работе действует одно простое правило, при подключении пользователей, по умолчанию запрещено всё кроме минимально необходимых функций. Но даже этот подход не гарантирует бесперебойную работу оборудования)
Я не совсем понял (точнее совсем не понял) при чем тут запрещено/разрешено. Я про цикл. Что это не совсем корректно изначально создавать бесконечный цикл и надеяться на то, что не возникнет такой ситуации, когда программа не сможет из него выйти. Там была необходимость запрограммировать смены на несколько месяцев вперед. Ну, то есть пользователь указывал к примеру 1 числа первая дневная смена, и вторая ночная. Второго вторая дневная, третья ночная. И т.д. Смен всего четыре дневных и столько же ночных. Указываешь последовательность и дальше программа эти смены расписывает на несколько месяцев вперед, чтобы пользователь руками это не делал. И вот это выполнялось в бесконечном цикле. Только проверялось на то, что дата окончания смены меньше конечной даты. Только пользователь создал смену, которая заканчивалась на секунду позже. В результате, при достижении конечной даты, условие не срабатывало и цикл продолжался бесконечно. Это в общих чертах, я уж прямо точно все не помню.
Я про то что даже если всё, казалось бы, предусмотрел вероятность ошибки все равно не нулевая )
В твоём случае, как я понял, на какой-то итерации произошел сбой, соответственно будь цикл хоть бесконечный, хоть n итераций ошибка бы все равно произошла. Возможно заметили бы ее раньше, но результат был бы одинаковым)
Да. Именно так. Просто в программировании создавать бесконечный цикл, это моветон. Даже если ты все предусмотрел и ошибка не возникает. В данном случае, достаточно было написать Пока ДатаОкончанияСмены меньше ДатыКонцаПериодаНаКоторыйСоздаютсяСмены Цикл. Не понимаю, как профессиональный программист мог написать такую хуйню. «Пока Истина Цикл». Если ты не смог предусмотреть варианты выхода из цикла, то ты получаешь конкретно зависшую сессию.
Лан, тема конечно интересная и забавная, но думаю не стоит тут её поднимать. Все равно для большинства присутствующих здесь, это не интересно. :-)
Ну хз, бесконечные циклы обычный инструмент, а инструментами нужно уметь пользоваться. С дуру, как говорится, можно и хрен сломать)
Так то да. Бывают ситуации, когда без бесконечного цикла никак. Но это очень большая редкость. В данном случае уже есть условие, что необходимо исполнять цикл от начала известного периода и до его конца. Зачем делать бесконечный цикл? При нормальном подходе, интерпретатор посчитает количество памяти необходимой для такого расчета, прикинет величину стека и сделает все оптимально. При бесконечном цикле, это тупая растрата ресурсов сервера.