Вася Швалев ⚡️ qgishack
1.53K subscribers
225 photos
224 videos
8 files
104 links
Download Telegram
Media is too big
VIEW IN TELEGRAM
В далёкой древности люди обустраивали селища вдоль рек.

Есть гипотеза, что они выбирали новое место, так, чтобы его было видно с существующих селищ. Зачем, понятия не представляю.

Пролить свет на этот важнейший вопрос поможет QGIS.

Код Генератора Геометрии:

make_line(
array_filter(
geometries_to_array(
nodes_to_points(
densify_by_distance(@geometry,200))),
z(@element)< raster_value('DEM',1,@element)
)
)
👍1032
This media is not supported in your browser
VIEW IN TELEGRAM
🔥12👍7
Media is too big
VIEW IN TELEGRAM
📍Как выбрать ячейки сетки, центроиды которых находятся в контуре региона.

Запрос:

intersects(
geometry(get_feature('Регионы','name','Пермский край')),centroid($geometry))
👍173
Media is too big
VIEW IN TELEGRAM
Совмещая в проекте кадастровые данные в местных системах координат и онлайновые подложки между ними будет отскок в несколько метров.

Это нормально, так как данные в разных датумах и при пересчете возникает разбежка.

Можно просто забить на это, а можно подогнать подложку под кадастровые данные с помощью модуля Саши Фадеева Delta Calculator.

Модуль в пару кликов определяет нужное смещение и создает для онлайн подложки пользовательскую систему координат.
👍253🔥1
Media is too big
VIEW IN TELEGRAM
Расстояния между объектами двух слоёв лично мне удобнее посчитать с помощью запроса в Калькуляторе полей:

Данный запрос вернет расстояние от здания до ближайшей аптеки:

distance($geometry,array_first(overlay_nearest('Аптеки',$geometry)))


А если надо посчитать расстояние до конкретного объекта, то можно в запрос overlay_nearest вставить фильтр, например по номеру объекта:

distance($geometry,array_first(overlay_nearest('Аптеки',$geometry,filter:=$id=124)))


или значению атрибутивного поля:

distance($geometry,array_first(overlay_nearest('Аптеки',$geometry,filter:=Name='Алия')))
11👍3
В недалёком будущем планирую сделать курс «QGIS для экологов» в котором разобрать практические задачки и карты экологической тематики.

Если вам эта тема интересна, то вот ссылка на группу предзаписи:
https://t.iss.one/+Zr_1h6LvKBkzNmUy

Составил предварительный список тем. Буду рад, если напишете дополнительные темы.
7
Media is too big
VIEW IN TELEGRAM
Можно ли в Кугисе рассчитать время инсоляции (время в течении которого в окна попадает прямой солнечный свет) помещений?

Попробовал, и вот что из этого вышло.
10👍5🔥3
Forwarded from Василий Швалев
Media is too big
VIEW IN TELEGRAM
Как в Кугисе за 15 минут сделать простую схемку.
Сегодня записать новый урок нет возможности, так как шляюсь по лесу. Но предложу задачку от постоянного клиента.

Задача: найти в радиусе N от биваков (точечный слой) 2 самых высоких отметки высот (второй точечный слой с отметкой высоты в атрибутах) и записать координаты этих точек в атрибутивную таблицу первого слоя.

Как бы вы решили такую задачу?


Своё решение в виде запроса опубликую позже.

Поскрипите немного гис-воображением.
🤔4🗿31
Media is too big
VIEW IN TELEGRAM
Ответ на задачку про две максимальные высотные отметки рядом с биваком.

Запрос:

array_to_string(
array_slice(
aggregate('Высоты','array_agg',geom_to_wkt(transform($geometry,@layer_crs,'EPSG:4326')),
filter:=intersects($geometry,buffer(geometry(@parent),1000)),
order_by:="Отм"),-2,-1))
👍5
Media is too big
VIEW IN TELEGRAM
Как получить точки отметок высот локальных пупырок и возвышенностей на ЦМР.
👍4
Media is too big
VIEW IN TELEGRAM
Как быстро добавить в Кугис аптеки, больницы, школы, магазины и прочие объекты с Гугл карт.
👍20🔥1
Несколько человек спрашивали нет ли желания сделать структурированную энциклопедию моих уроков по Кугису. Стоящая идея?🤔
Anonymous Poll
86%
Ну, наконец-то👍
4%
ХЗ. ВК и ТГ достаточно
10%
Как хочешь
Media is too big
VIEW IN TELEGRAM
Выравнивание границ лесных кварталов и выделов.

Запрос из урока:

array_first(overlay_intersects('Кварталы',"kv",sort_by_intersection_size:='des'))
👍131
Media is too big
VIEW IN TELEGRAM
Если кровь из носу условные надо оформить в виде таблицы, то вот как это сделать в Кугисе.
👀9👍7🔥5
Media is too big
VIEW IN TELEGRAM
Задачка от подписчика:

«Здравствуйте подскажите пожалуйста.  Вот мы делаем  посадки лесных культур.  На площади бульдозер прокладываем полосы через определённое расстояние.  На этих плосах  садим сеянцы . Шаг посадки  зависит от расстояния между этими полосами.  В идеале  расстояние  одинаковые  5-7 м . Но иногда это расстояние  пляшет.  Можно в Кугисе  по схеме напаханных полос каким то образом рассчитать указать шаг посадки для каждой полосы?»

Без проблем. Оцифровываем полосы посадки линиями и с помощью Генератора Геометрии визуализируем фрагменты линий с нормативными и ненормативными отступами.

collect_geometries(
array_filter(
geometries_to_array(
segments_to_lines( densify_by_distance($geometry,0.5))
),
intersects(
single_sided_buffer(offset_curve(@element,7),-6)
,collect(@geometry))
))
👍10
Media is too big
VIEW IN TELEGRAM
Настройка сложных штриховых линий в Кугисе.

Запрос для штрихов:

apply_dash_pattern(@geometry, array(1000,500))


Запрос для пробелов:

apply_dash_pattern(@geometry, array(500,1000),'full_gap')
👍22🔥3
Всем привет. В эти выходные отправляюсь в небольшое приключение на Южный Урал. Приму участие в классном трейле MMK Wild Trail неподалеку от Магнитогорска.

В воскресенье побегу 95 км по живописной Южноуральской тропе от Абзаково до озера Банное.

По традиции устраиваю распродажу одного дня в честь важного для меня события.

В течении воскресенья можно будет купить курсы на ГИСПРАКТИКЕ с очень хорошей скидкой.

В субботу скину промокод.
👍6🔥2
Media is too big
VIEW IN TELEGRAM
Выбор слоя по клику на карте.

Если в проекте туева хуча слоёв, то легко запутаться из какого слоя объекты на карте.

Было бы прикольно кликнуть на объект и увидеть в каком слое он находиться.

В этом поможет допмодуль «Pick Layer».

Помимо определения родительского слоя, можно увидеть кучу другой полезные инфы о объектах: площади, атрибуты, координаты и т.д.

Занимательный инструментик.
👍22🔥1