mirror of
https://git.dev.opencascade.org/repos/occt.git
synced 2025-08-14 13:30:48 +03:00
0029290: Visualization, TKOpenGl - allow defining Light source per ZLayer
Graphic3d_CLight is now defined as a class inheriting Standard_Transient, so that it's fields now should be accessed through methods. Graphic3d_CLight::IsEnabled() - new property allowing to disable light source everywhere. Confusing alias OpenGl_Light has been removed. Graphic3d_CLight::SetAttenuation() - the upper limit 1.0 of attenuation factors has been removed since it contradicts to OpenGL specs and does not make sense. Graphic3d_ZLayerSettings::Lights() - light sources list is now property of ZLayer. When defined, it overrides light sources defined for View/Viewer. New class Graphic3d_LightSet has been defined to define a set of light sources. V3d_Light - removed obsolete interface for debug drawing lights sources. V3d_Light is now an alias to Graphic3d_CLight. V3d_TypeOfLight is now defined as a typedef to Graphic3d_TypeOfLightSource.
This commit is contained in:
@@ -377,10 +377,10 @@ Standard_Boolean V3d_View::IsEmpty() const
|
||||
//=============================================================================
|
||||
void V3d_View::UpdateLights() const
|
||||
{
|
||||
Graphic3d_ListOfCLight aLights;
|
||||
Handle(Graphic3d_LightSet) aLights = new Graphic3d_LightSet();
|
||||
for (V3d_ListOfLight::Iterator anActiveLightIter (myActiveLights); anActiveLightIter.More(); anActiveLightIter.Next())
|
||||
{
|
||||
aLights.Append (anActiveLightIter.Value()->Light());
|
||||
aLights->Add (anActiveLightIter.Value());
|
||||
}
|
||||
myView->SetLights (aLights);
|
||||
}
|
||||
|
Reference in New Issue
Block a user