Показать изображения, связанные с функциями в QGIS?


12

Скажем, например, если есть точечные данные со старыми деревьями, то, когда вы используете инструмент идентификации, вы можете увидеть фотографию дерева

Или даже на один уровень дальше, ярлыки, отображающие эти изображения сразу, без необходимости нажатия

Я полагаю, что термин потоковая передача файлов?


Взгляните на эту идею из блога Натана Вудроу: nathanw.net/2016/02/04/live-svgs
isshp

Ответы:


13

Может быть сделано при идентификации.

Сначала вам нужен атрибут с путями к фотографиям. Должен быть полный путь:

введите описание изображения здесь

Затем вы устанавливаете виджет атрибута на Фото через свойства изображения:

введите описание изображения здесь

Когда вы определите функцию, появится всплывающее изображение:

введите описание изображения здесь

Несмотря на то, что в результатах идентификации необходимо установить флажок «Автоматически открывать форму», он также должен идентифицировать только слой с изображениями, поэтому режим должен быть «Текущий выбор», чтобы он идентифицировал слой, выбранный на панели слоев:

введите описание изображения здесь


Это должен быть локальный путь? Это может быть URL?
jpmc26

2
Может быть URL. Но тогда вам нужно установить виджет "Веб-просмотр" вместо фото.
HeikkiVesanto

1
Вам не нужно использовать полный путь к файлу в значении атрибута, если вы используете тип виджета «Внешний ресурс» и включаете встроенное средство просмотра документов для отображения изображения. QGIS позволяет вам использовать статический «путь по умолчанию» или путь проекта. Последнее является динамическим, но вам нужно указывать подкаталоги в значениях полей - поэтому, если ваш проект находится в C: \ Projects, а изображения в C: \ Projects \ Images, тогда значением вашего поля должно быть \ Images \ what.jpg (может отсутствовать) первая косая черта, не помню.)
she_weeds

Что если на вашем пути есть пробел? Например, N: \ Doc \ A \ Apple Drive 1.pdf, ссылка пытается открыть N: \ Doc \ A \ Apple, которого на самом деле не существует.
Тайлер Вейно

Попробуйте добавить цитаты: «N: \ Doc \ A \ Apple Drive 1.pdf»
HeikkiVesanto

6

Это также возможно с помощью стилизации слоя с помощью комбинации генератора геометрии для создания прямоугольных заполнителей для изображения многоугольника, а затем заливки растрового изображения для вставки изображений. Свойство растрового местоположения может быть определено данными, но я не проверял, будет ли оно работать с источниками URL.

Пример:

Выражение генератора геометрии для преобразования точки в прямоугольник размером 400 x 220 единиц карты (в соответствии с соотношением сторон фотографии):

bounds(  make_line( 
    translate( $geometry , -200, -110), 
    translate( $geometry , 200, 110)
    )
)

Точка и прямоугольник

Теперь дайте прямоугольнику растровую заливку фотографии:

введите описание изображения здесь

(Использование QGIS 2.18.15 x64 в Windows 10)


4

Это также можно сделать с помощью «Советов по карте».

  1. Вы должны добавить URL в таблицу атрибутов, как Весанто.

  2. Вы идете в «Свойства слоя» -> «Показать», там вы переключаетесь на HTML и добавляете что-то вроде

    <img width="150px" src="[% "img_url" %]" />
    

Преимущество с картами Советы -> не нужно нажимать!


1

к сожалению, такого еще нет.

Наилучшим вариантом может быть прикрепление изображения через аннотацию HTML. Найдите этот символ в QGIS:

введите описание изображения здесь

ДОБАВИТЬ: как показало @Vesanto, это возможно. Я не знал об этом, но думаю, что это здорово, что они добавили такую ​​функцию в QGIS.


Да, у меня нет этой иконки на моей QGIS 2.14. Это новая функция в 2.18?
Luffydude

Я так не думаю. Это реализовано в панели инструментов атрибутов, и я использовал около 3 лет назад. Может быть, вы также хотите проверить плагин eVIS, но у меня нет никакого опыта с ним.
17

@Luffydude - значок является подменю от значка текстовой аннотации :)
Джозеф

1
@ Джозеф О, я вижу, глупый я
Luffydude
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.