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

Прозрачность слоя с рендерером V2

Добавлено: 15 мар 2011, 11:08
GIS-dev
Пробую задать прозрачность для векторного слоя функцией setTransparency(nn); Когда слой был со "старым" рендерером, его можно было сделать хоть невидимым... Но когда ему ставлю рендерер "QgsCategorizedSymbolRendererV2", регулировка прозрачности полностью перестает работать, слой непрозрачный независимо от параметра setTransparency.

Код: Выделить всё


MemLayer->setRendererV2(Renderer);
MemLayer->setUsingRendererV2(TRUE);
MemLayer->setTransparency(127);

Может быть управление прозрачностью не предусмотрено для рендерера QgsCategorizedSymbolRendererV2, предполагая, что сами рисунки SVG могут быть нарисованы в векторном редакторе полупрозрачными? Также, символы V2 имеют поле "mAlpha", изменения которого функцией setAlpha от нуля до единицы тоже не дает видимых результатов. :?

Re: Прозрачность слоя с рендерером V2

Добавлено: 19 мар 2011, 11:26
Voltron
GIS-dev писал(а):Пробую задать прозрачность для векторного слоя функцией setTransparency(nn); Когда слой был со "старым" рендерером, его можно было сделать хоть невидимым... Но когда ему ставлю рендерер "QgsCategorizedSymbolRendererV2", регулировка прозрачности полностью перестает работать, слой непрозрачный независимо от параметра setTransparency.
Потому, что прозрачность в этом случае задается для символов, а не для слоя. Посмотрите, в QGIS при использовании отрисовки градуированным знаком нет возможность задать прозрачность слоя.

Re: Прозрачность слоя с рендерером V2

Добавлено: 20 мар 2011, 15:54
GIS-dev
Voltron писал(а):Потому, что прозрачность в этом случае задается для символов, а не для слоя. Посмотрите, в QGIS при использовании отрисовки градуированным знаком нет возможность задать прозрачность слоя.
Прозрачность символа задается функцией "setAlpha()"? Почему-то она у меня не влияет на прозрачность символа класса QgsMarkerSymbolV2, какие бы я параметры ей не задавал, хоть ноль, хоть единицу или 255. Может для активации прозрачности символов слоя V2 нужно какое-то дополнительное условие? Или маркеры класса QgsMarkerSymbolV2 не могут иметь прозрачность?..

Re: Прозрачность слоя с рендерером V2

Добавлено: 05 апр 2011, 12:58
GIS-dev
И всё-таки возвращаясь к прозрачности... Похоже это баг QGIS - в новой символике прозрачность SVG-символов не регулируется не только в моей программе, но и в самой QGIS.