두 폴리곤 사이에 겹치는 영역을 투명하게 만드는 쉬운 방법이 있습니까? Qt 위젯/Qt 2D 그래픽 내의 기본 제공 함수 C++ 프레임 워크. (QML이 아님)Qt에서 겹치는 폴리곤의 투명도
Openstreetmap.org에서 추출한지도 데이터를 렌더링 중이며, 여러 가지 방식 (선분) 간의 고급 관계는 다각형을 구성하는 내부 및 외부 방법으로 제공됩니다.
예를 들어, 호수에는 다각형을 형성하는 외부 방법과 호수 내에 섬을 형성하는 몇 가지 내부 방법이있을 수 있습니다.
올바르게 외부 폴리곤과 내부 폴리곤을 만들 수 있지만 은 쉽게 찾을 수 없으므로 내부 폴리곤과 겹치는 영역을 투명하게 만들 수 있습니다.
아래 이미지에서 흰색 영역은 흰색으로 그려진 별도의 다각형이지만 대신 호수/파란색 다각형의 투명한 영역이어야합니다.
나는 외부 폴리곤 QPainterPath을 사용하고QPainterPath QPainterPath::subtracted(const QPainterPath &inner) const
전화를 시도했지만 결과는 빈 화면이었다.
렌더링하기 전에 새로운 폴리곤을 직접 만들어야합니까?
QPainterPath 솔루션이 제대로 작동해야합니까?
중복 영역을 투명하게 칠하기 위해 QPen/QBrush를 사용하여 수행 할 수있는 마술이 있습니까?
이 접근 방법에 대한 모든 정보를 얻으실 수 있습니다.
맞습니다! – Erro
예상 결과는 그림과 같습니다. https://www.dropbox.com/s/qempjye8155d9iz/Screenshot%20from%202017-04-18%2015-06-02.png?dl=0 – eyllanesc
이것이 내가 http://i.imgur.com/CZMPhQu.png 후에 나온 결과입니다. 지금 일하고 대답을 정교하게했습니다. – Erro