INT PAL 0052631: Line width property does not affect Shading with edges display mode

This commit is contained in:
mpa 2015-03-13 15:55:24 +03:00
parent fa550f2017
commit 1344a93905
2 changed files with 3 additions and 6 deletions

View File

@ -839,11 +839,12 @@ void GEOM_Displayer::updateShapeProperties( const Handle(GEOM_AISShape)& AISShap
// display mode from properties // display mode from properties
propMap.value( GEOM::propertyName( GEOM::DisplayMode ) ).toInt() ); propMap.value( GEOM::propertyName( GEOM::DisplayMode ) ).toInt() );
// - face boundaries color // - face boundaries color and line width
if( AISShape->DisplayMode() == GEOM_AISShape::ShadingWithEdges ) if( AISShape->DisplayMode() == GEOM_AISShape::ShadingWithEdges )
AISShape->Attributes()->SetFaceBoundaryDraw( Standard_True ); AISShape->Attributes()->SetFaceBoundaryDraw( Standard_True );
anAspect = AISShape->Attributes()->FaceBoundaryAspect(); anAspect = AISShape->Attributes()->FaceBoundaryAspect();
anAspect->SetColor( SalomeApp_Tools::color( propMap.value( GEOM::propertyName( GEOM::OutlineColor ) ).value<QColor>() ) ); anAspect->SetColor( SalomeApp_Tools::color( propMap.value( GEOM::propertyName( GEOM::OutlineColor ) ).value<QColor>() ) );
anAspect->SetWidth( propMap.value( GEOM::propertyName( GEOM::LineWidth ) ).toInt() );
AISShape->Attributes()->SetFaceBoundaryAspect( anAspect ); AISShape->Attributes()->SetFaceBoundaryAspect( anAspect );
// set display vectors flag // set display vectors flag

View File

@ -257,12 +257,8 @@ void GEOM_AISShape::Compute(const Handle(PrsMgr_PresentationManager3d)& aPresent
shadingMode(aPresentationManager, aPrs, Shading); shadingMode(aPresentationManager, aPrs, Shading);
if( anIsColorField && myFieldDimension == 1 ) if( anIsColorField && myFieldDimension == 1 )
drawField( aPrs ); drawField( aPrs );
else { else
myDrawer->SetFaceBoundaryDraw( Standard_True ); myDrawer->SetFaceBoundaryDraw( Standard_True );
Handle(Prs3d_LineAspect) aBoundaryAspect =
new Prs3d_LineAspect ( myEdgesInShadingColor, Aspect_TOL_SOLID, myOwnWidth );
myDrawer->SetFaceBoundaryAspect (aBoundaryAspect);
}
break; break;
} }
case TexturedShape: case TexturedShape: