TGTGInsighttelegram intelligenceLIVE / telegram public index
Back to channels
Вася Швалев ⚡️ qgishack avatar

TGINSIGHT CHAT

Вася Швалев ⚡️ qgishack

@qgishack

Technologies

Subscribers2,040Current channel subscribers
Tracked posts903Indexed post count
Recent reach18,870Sum of recent post views
Recent posts

Recent posts

Page 8 of 76 · 903 posts

Posted Jan 6

Если надо создать карту мира с заливкой флагами, то вот, как это сделать. Код подбора ширины текстуры: if (bounds_height($geometry)>bounds_width($geometry), bounds_height($geometry)*1.2, bounds_height($geometry)) Геопак контуров стран и svg флаги в архиве.

1,890 views

Posted Jan 4

QGIS прежде всего двумерная программа, возможностей для 3D анализа немного. В основном можем посмотреть расположение объектов относительно друг друга по высоте. Но с помощью нескольких строчек кода Генератора Геометрии можно создать «виртуальную развертку» объекта исследования на которую вынести объекты по отметкам высот. А дальше можно подключать весь арсенал двумерного анализа: плотности, наложения и пересечения, удаленность и т.д. Как показала практика, подобные развертки сильно облегчают отрисовку разрезов, удобно становиться привязывать ортофото и растровые разрезы. Завтра старт курса про Генератор Геометрии. Если для вас запросы выглядят, как заклинания и хочется освоить пространственную магию, то за завтра можно записаться. Либо подождать следующего потока, который будет через год. Регистрация тут: https://gispraktika.zenclass.ru/public/product/5063a3a7-57a8-4703-8e4b-be7b806e4303/tariffs

1,770 views

Posted Jan 2

Если надо узнать румбы сторон участка, то в QGIS это можно сделать за пару кликов. Берем линейный слой абриса и инструментом «Разбить линии на отрезки» разбиваем его на отдельные отрезки. Запускаем Калькулятор Полей и вставляем запрос: with_variable('azim', degrees( azimuth( start_point($geometry),end_point($geometry) )) , CASE WHEN @azim <90 THEN 'СВ ' || to_dm(@azim,'x',0) WHEN @azim BETWEEN 90 AND 180 THEN 'ЮВ ' || to_dm(180-@azim,'x',0) WHEN @azim BETWEEN 180 AND 270 THEN 'ЮЗ ' || to_dm(@azim-180,'x',0) WHEN @azim >270 THEN 'СЗ ' || to_dm(360-@azim,'x',0) END ) В атрибутах появилось поле румбов, которое используем для подписей или вставляем в макет. А на какую тему стоит записать следующий урок? Напишите в комментариях.

1,500 views

Posted Dec 31

ПРЕВРАЩАЕМ ТОЧКУ В ЁЛОЧКУ Не, ну а вдруг попросят нарисовать на карте новогоднюю ёлку со звездой и снежинками. Вот код Генератора Геометрии, который превратить самую обыкновенную точку в пиксельную ёлку. -- Задаём высоту ячейки with_variable('h',10, -- Задаём ширину ячейки with_variable('w',10, -- Собираем ёлочку collect_geometries( -- Задаём количество рядов и количество ячеек в каждом ряду array_foreach(array(1,5,7,7,5,5,3,3,1,1), -- Задаём ряд ёлочки single_sided_buffer( segments_to_lines( densify_by_count( make_line(translate(@geometry,@element*@w*-0.5,@counter*@h),translate(@geometry,@element*@w*0.5,@counter*@h)),@element-1) ),@h) ))))

1,420 views

Posted Dec 30

Друзья, пора подвести итоги уходящего года. Было записано более 1000 часов полезных видеоуроков и опубликовано 145 открытых уроков, в основном по вашим запросам. За год появилось 7000 новых подписчиков. Были проведены 9 онлайн-курсов и 3 живых тренинга на которые пришли более 500 новых учеников. За этот год мы с вами изучили множество инструментов, плагинов и решили массу картографических задачек. Создавали карты, которые не просто показывают, а убеждают. Учились проводить анализ, который даёт реальные ответы. Но если оставить одну, самую важную мысль на будущее, она не про интерфейс или алгоритмы. По-настоящему мощный анализ не в панели «Инструменты обработки», а у нас в голове. Прежде чем открыть QGIS, важно спрашивать: «Что я на самом деле хочу узнать?» (Не «какой инструмент использовать», а «какую проблему решить»). «Как пространство влияет на мой объект исследования?» «Какие данные станут словами в этом разговоре, и какую историю они могут рассказать вместе?» QGIS — это инструмент для ответов на вопросы в формате карт. Самые красивые карты и сложные модели ничего не стоят, если они отвечают на неверный или бессмысленный вопрос. Моё главное пожелание вам на будущий год: Не гнаться за количеством изученных инструментов. Важнее глубина понимания. Раскачивайте «геомышление». Учитесь видеть окружающий мир через призму пространственных связей, расстояний, взаимодействий и контекста. Это важнее любого плагина. 1) Цените геоданные. Проверяйте их, изучайте структуру и ограничения. Дерьмо на входе, дерьмо на выходе. Самый изощренный анализ, построенный на плохих данных, — это просто красивая ложь. 2) Цените своё время. Всё, что можно автоматизировать, автоматизируйте и шаблонизируйте с помощью геомоделей, Генератора Геометрии, Python или стилей. Делайте так, чтобы вашу работу смог повторить и проверить другой человек (или вы сами через полгода). 3) Делитесь знаниями, задачками и картами. Настоящие знания не лежат в интернете, они в головах специалистов. Понимание задачек приходит во время общения, когда вы можете просто и ясно объяснить сложную пространственную задачу другому человеку. Пусть в новом году ваш QGIS станет не просто программой на компьютере, а продолжением вашего мышления. Пусть каждая ваша карта будет не просто картинкой, а инсайтом — ясным, точным и действенным знанием, которое чуть чуть меняет мир к лучшему. Спасибо, что были со мной в этом году. Жду в следующем с новыми вопросами и картографическими задачками!" С наступающим!

1,620 views

Posted Dec 30

ПОДПИСЫВАЕМ ИЗОЛИНИИ ПО КРАСОТЕ Кугис не умеет правильно подписывать изолинии рельефа. Автоматом не разворачивает подписи головой к вершине холма и не выстраивает их чётенькими линиями, как это делает АркГИС. Но есть вариант, как и в Кугисе подписать изолинии рельефа на красивом. Скопируйте код Генератора Геометрии для подписей, пригодиться. collect_geometries( array_foreach( overlay_intersects('Линии подписей',$geometry), intersection($geometry,buffer(@element,1.5)))) Завтра повышение цены на январский курс «Магия Генератора Геометрии» в котором будет много полезных сценариев использования ГГ для визуализации данных и подписей.

1,430 views

Posted Dec 29

ПОЛИГОНЫ С ОТКРЫТЫМИ ГРАНИЦАМИ Если надо нарисовать полигон с открытыми границами, то не обязательно превращать полигон в линии и чистить ненужные фрагменты. Можно попробовать часть контура полигона скрыть с помощью Генератора Геометрии. difference(segments_to_lines(@geometry), buffer( collect_geometries( array_foreach(string_to_array( "num" ), geometry_n(segments_to_lines(@geometry),@element) )),0.1) ) Напоминаю, что если есть желание освоить создание «живых» карт с помощью нескольких строчек кода, то 5 января старт курса «Магия Генератора Геометрии». Регистрация тут: https://gispraktika.zenclass.ru/public/product/5063a3a7-57a8-4703-8e4b-be7b806e4303/tariffs

1,350 views

Posted Dec 26

НАСТРОЙКА РАЗМЕРА ПОДПИСЕЙ В ЗАВИСИМОСТИ ОТ ПЛОЩАДИ ПОЛИГОНА Если захочется настроить размер подписей в зависимости от размера полигона, то очевидный вариант: использовать площадь объекта для настройки размера текста. Но это не лучший вариант, конфигурация полигонов может быть разной, будет сложно вписать текст в контур. Можно с помощью Генератора Геометрии найти точку «Полюса Недоступности», т.е. равноудаленную от всех границ и разметить в ней подпись. pole_of_inaccessibility($geometry,0.1) А размер текста подобрать исходя из расстояния от «Полюса Недоступности» до ближайшей границы и длины подписи. -- Вычисляем размер подписи в мм. scale_linear( -- Считаем расстояние от точки недоступности до ближайшего контура объекта на половину длины подписи. distance(segments_to_lines($geometry),pole_of_inaccessibility($geometry,0.1)) / length( "ShortName" )*0.75,0,150000, 2,24) В этом варианте подпись с одной стороны будет крупнее в зависимости от размера полигона, но не будет пересекать его контур (кроме самых мелких объектов). Открыта регистрация на курс «Магия Генератора Геометрии» https://gispraktika.zenclass.ru/public/product/5063a3a7-57a8-4703-8e4b-be7b806e4303/tariffs И хотя официальный старт 5 января, но вас будет ждать прикольный урок. 💳 Стоимость 💳: до 31.12.2025 — 2 990 рублей до 5.01.2026 — 3 990 рублей после 4 990 рублей

1,650 views

Posted Dec 25

В КУГИСЕ РАБОТАЮТ ТЕ, КТО НЕ УВАЖАЕТ СВОЁ ВРЕМЯ Подписчик Андрей Эльдаров оставил под постом со шпаргалкой с горячими клавишами классный комментарий: «А ctrl+z не завезли). Видимо в этой программе на серьёзных щах работают только те, кто не уважает своё время.» Возможно я накосячил и не вписал Ctrl+Z. На самом деле с отменой действий в Кугисе всё норм. Надо удалить последний объект, жмём Ctrl+Z. А если поставили вершину не там где надо, жмём Del и она исчезает. Но редактирование редактированием, а Кугис даёт возможности экономить время на решении картографических задачек. Например, археологам надо строить поперечные профили раскопов. Можно конечно построить профиль стандартными инструментами, скопировать в Корел, оформить и вставить в отчет. А можно в Кугисе с помощью Генератора Геометрии оформить нужный шаблон профиля и автоматом строить разрезики. Это концепция «неразрушаемого редактирования». Итоговый результат меняем не ручной перерисовкой каждого объекта, а редактированием кода. И когда надо создавать большое количество однотипных задач, такая концепция сэкономит массу времени. Конечно, если знаете, как решать задачки и какие запросы написать. И вот про это будет новый курс «Магия Генератора Геометрии». Завтра открытие регистрации.

1,700 views

Posted Dec 24

ПРОГРЕСС БАР В QGIS В Кугисе нет Прогресс Баров, но с помощью Генератора Геометрии это не проблема. Создаём слой полигональный слой Шаблон в котором рисуем нужную фигуру, например дерево. С помощью Генератора Геометрии и этого кода в точечном слое рисуем заполняемый контур. with_variable('shabl', array_first(overlay_nearest('Шаблон',$geometry)), with_variable('fig', translate(@shabl,$x-x_max(@shabl)+bounds_width(@shabl)*0.5,$y-y_min(@shabl)), @fig)) А этот код добавит заполнение цветом в зависимости от процента усыхания: with_variable('shabl', array_first(overlay_nearest('Шаблон',$geometry)), with_variable('fig', translate(@shabl,$x-x_max(@shabl)+bounds_width(@shabl)*0.5,$y-y_min(@shabl)), intersection(@fig, translate(bounds(@fig),0, bounds_height(@fig)*"pr_us"/100*-1)))) В атрибутах должно быть числовое поле "pr_us" от 0 до 100. Генератор Геометрии позволяет создавать «живые» карты и визуализации которых нет по умолчанию. Если хочется освоить ГГ, записывайтесь на январский курс.

1,510 views

Posted Dec 23

Хочу позвать вас на январский курс «Магия Генератора Геометрии QGIS». Научимся создавать картографические визуализация выходящих за рамки стандартных возможностей QGIS. Изучим язык Генератора Геометрии и разберем десятки практических сценариев использования в разных сферах. Расписание уроков. 5 января. Урок 1. Язык Генератора Геометрии. Изучаем самые основы написания запросов. Узнаем, где в QGIS используется ГГ. Визуальная шпаргалка по ключевым запросам. 12 января. Урок 2. «Живые» символы. Учимся создавать комплексные «живые» точечные, линейные, полигональные символы. Карта лесопатологического обследования: закрашиваем контур дерева по проценту усыхания. Отступы от красных линий и контроль "заступов". Карты плотности объектов. Визуализация колонки скважин и точек отбора проб / уровня подземных вод. Создание линий сложной формы. Визуализация глубины трубопроводов. Визуализация колодцев. Визуализация инклинометрии скважин / точки пластопересечения с кровлей / подошвой пластов. Визуализация загрязнения реки по точкам наблюдений. Примеры уроков модуля: Визуализация несущей способности грунтов с помощью концентрических кругов. Визуализация откосов. 19 января. Урок 3. Создание новых геометрий. Примеры уроков модуля: Построение контуров участков по таблице координат из таблицы. Построение СЗЗ скважины. Построение карты теней зданий в заданное время. Построение зон видимости. Генерация охранных зон. Генерация детальных врезок карты крупного масштаба. Построение разверток раскопов / разрезов и проецирование объектов. Генерация сетки / набора точек в контуре участка. Генерация парковочных мест. 26 января. Урок 4. Генератор Геометрии для подписей. Учимся точному размещению подписей. Примеры уроков модуля: Размещение подписей на концах линиях. Размещение подписей в заданной точке полигона. Надписываем изолинии рельефа по склону. Криволинейные подписи полигональных водоёмов. 2 февраля. Урок 5. Графики и диаграммы Учимся создавать графики и диаграммы, которых нет в QGIS. Примеры уроков модуля: Построение температурного профиля скважины. Круговые, плитчатые и другие картодиаграммы. Построение поперечного сечения русла реки/насыпи. Создание розы-диаграмм трещиноватости пород. Оконтуривание ареалов рассеивания точек. Псевдо-3D диаграмма загрязнения почв. Создание дорог по шаблону. Всего разберем несколько десятков практических сценариев использования ГГ в различных сферах: геология, археология, гидрология, экология, сельское и лесное хозяйство, урбанистика. Каждый урок состоит из серии коротких, понятных видеоуроков и учебных геоданных. Обратная связь в виде ответов на вопросы и разбор задачек участников. Доступ к урокам без ограничений по времени доступа. Старт обучения: 5 января. Открытие регистрации 26 декабря.

1,730 views

Posted Dec 22

Горизонтальная шкала В Кугисе пока нет возможности настроить нормальную горизонтальную шкалу для растров или векторов. Но если горизонтальная шкала очень (очень-очень) нужна, то создадим её с помощью линейного стиля.

1,300 views
12•••5678910•••15•••20•••25•••30•••35•••40•••45•••50•••55•••60•••65•••70•••7576