Страница 1 из 1

Отображение стилей линий по нескольким полям

Добавлено: 02 ноя 2020, 16:33
Joe_Johnson
Всем привет! Кто хорошо разбирается в функционале QGIS, подскажите пожалуйста, как настроить стили отображения геометрии (шейп файлов) по нескольким полям. Есть, допустим 3 поля - "Толщина линии", "Цвет линии" и "Тип линии". Тип линии это, например, сплошная, прерывистая и т. д. Приведите пример конкретных правил, буду очень вам признателен.

Re: Отображение стилей линий по нескольким полям

Добавлено: 02 ноя 2020, 18:17
gamm
в калькуляторе соорудите из всех полей одно, например преобразовав в символьные строки, и соединив. И задайте стиль по этому полю.

Re: Отображение стилей линий по нескольким полям

Добавлено: 02 ноя 2020, 23:16
Игорь Белов
Тип "Простой символ". Цвет, толщину, тип линий задаём значениями полей или выражениями.

Re: Отображение стилей линий по нескольким полям

Добавлено: 03 ноя 2020, 10:43
Joe_Johnson
gamm писал(а):
02 ноя 2020, 18:17
в калькуляторе соорудите из всех полей одно, например преобразовав в символьные строки, и соединив. И задайте стиль по этому полю.
Нет, так не получится. У меня очень много значений и значения должны быть конкретно прописаны. Как я пропишу 10000 значений руками, например? У меня есть 256 цветов, 10 типов линий, и 100 толщин линий. Мне нужно отдельно задать толщину, отдельно цвет и отдельно тип

Re: Отображение стилей линий по нескольким полям

Добавлено: 03 ноя 2020, 10:48
Joe_Johnson
Игорь Белов писал(а):
02 ноя 2020, 23:16
Тип "Простой символ". Цвет, толщину, тип линий задаём значениями полей или выражениями.
Можно конкретнее? Сделайте скриншот пожалуйста с примером. У меня есть многоженство цветов и я должен, грубо говоря отдельно прописать, что если значение в поле цвет такое-о, то цвет отображения такой то (если значение равно 1, то цвет красный, например. И тоже самое сделать независимо от цвета для толщины и стиля линий.
Для понимания, я пытаюсь создать стили для сконвертированного DWG чертежа и мне надо чтобы отображение было +- как в dwg чертеже.

Re: Отображение стилей линий по нескольким полям

Добавлено: 03 ноя 2020, 15:09
Игорь Белов
Joe_Johnson писал(а):
03 ноя 2020, 10:48
пытаюсь создать стили для сконвертированного DWG чертежа и мне надо чтобы отображение было +- как в dwg чертеже
Импортируйте DWG в QGIS:
[Project] → [Import/Export] → [Import Layers from DWG/DXF…]
Внимательно рассмотрите стили, созданные программой.

Re: Отображение стилей линий по нескольким полям

Добавлено: 04 ноя 2020, 13:22
Joe_Johnson
Игорь Белов писал(а):
03 ноя 2020, 15:09
[Project] → [Import/Export] → [Import Layers from DWG/DXF…]
У меня уже есть шейп со всеми нужными полями и мне нужно создать SLD стили, чтобы потом их использовать в другом софте. Я, в принципе, разобрался как сделать то, что я спросил, но есть новая проблема. SLD стиль сохраняет не всё форматирование. Это если делать через простой стиль и далее настраивать отдельно толщину, стиль и цвет по соотв. полям. Но это не работает. Сейчас думаю как сделать это через стиль на основании правил.

Re: Отображение стилей линий по нескольким полям

Добавлено: 04 ноя 2020, 19:44
gamm
сам по себе SLD стиль - просто небольшой фрагмент текста XML. Если связывать объекты по именам стилей, то проще написать скрипт (R/Python), который эти фрагменты генерирует (выделив все уникальные сочетания запросом), и записать имя стиля в SHAPE.

Re: Отображение стилей линий по нескольким полям

Добавлено: 05 ноя 2020, 13:23
Joe_Johnson
gamm писал(а):
04 ноя 2020, 19:44
Если связывать объекты по именам стилей, то проще написать скрипт (R/Python), который эти фрагменты генерирует (выделив все уникальные сочетания запросом), и записать имя стиля в SHAPE.
Проще - это когда умеешь) Когда умеешь - всё просто) У меня лишь общие представления о питоне. Могу написать "Привет мир" ну или что-то чуть сложнее.

Re: Отображение стилей линий по нескольким полям

Добавлено: 05 ноя 2020, 13:23
Joe_Johnson
gamm писал(а):
04 ноя 2020, 19:44
сам по себе SLD стиль - просто небольшой фрагмент текста XML.
Я понимаю, что его теоретически можно вообще руками прописать, но это надо понимать синтаксис и правила а я этот формат впервые вижу...

Re: Отображение стилей линий по нескольким полям

Добавлено: 05 ноя 2020, 14:33
gamm
Joe_Johnson писал(а):
05 ноя 2020, 13:23
я этот формат впервые вижу
я тоже. Он простой, как угол дома, вся документация есть RTFM. Создать пару примеров, а дальше лепить по образу и подобию, хоть копипастой, хоть скриптом на AutoLISP.