occt: master 7d9e854b

Author Committer Branch Timestamp Parent
duv bugmaster master 2014-09-26 10:41:51 master c6037065
Changeset 0025276: Visualization - Lighting is broken if some kinds of transformation applied to a shape

In order to solve the problem, triangle vertices order is inverted in
mirrored mesh (triangulation). Mesh considered to be mirrored if its
transformation matrix determinant is less than 0.

To handle AIS object mirror transformations "Mirrored" flag stored in
OpenGl_Structure. If this flag is enabled, glFrontFace (GL_CW) applied
before the draw call.

New DRAW commands for visualization level transformations added.
mod - src/Graphic3d/Graphic3d_Structure.cxx Diff File
mod - src/OpenGl/OpenGl_Context.cxx Diff File
mod - src/OpenGl/OpenGl_Context.hxx Diff File
mod - src/OpenGl/OpenGl_Structure.cxx Diff File
mod - src/OpenGl/OpenGl_Structure.hxx Diff File
mod - src/OpenGl/OpenGl_View_2.cxx Diff File
mod - src/StdPrs/StdPrs_ShadedShape.cxx Diff File
mod - src/ViewerTest/ViewerTest_ObjectCommands.cxx Diff File
add - tests/bugs/vis/bug25276 Diff File