Skip to content

Commit

Permalink
[3d] Fix edge drawing when multiple renderer rules have edges enabled
Browse files Browse the repository at this point in the history
When using rule-based 3D rendering, if multiple rules were enabled with edge rendering,
only the first rule was getting correctly set up line width for line material.
(the rest were getting some very thick line width and making the 3D view unusable)
  • Loading branch information
wonder-sk committed Apr 23, 2019
1 parent 9421d60 commit 7363276
Showing 1 changed file with 1 addition and 2 deletions.
3 changes: 1 addition & 2 deletions src/3d/qgs3dmapscene.cpp
Expand Up @@ -575,8 +575,7 @@ void Qgs3DMapScene::addLayerEntity( QgsMapLayer *layer )

// this is probably not the best place for material-specific configuration,
// maybe this could be more generalized when other materials need some specific treatment
QgsLineMaterial *lm = newEntity->findChild<QgsLineMaterial *>();
if ( lm )
for ( QgsLineMaterial *lm : newEntity->findChildren<QgsLineMaterial *>() )
{
connect( mCameraController, &QgsCameraController::viewportChanged, lm, [lm, this]
{
Expand Down

1 comment on commit 7363276

@nirvn
Copy link
Contributor

@nirvn nirvn commented on 7363276 Apr 24, 2019

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@wonder-sk , working like a charm, cheers.

Please sign in to comment.