X-Git-Url: http://git.dev.opencascade.org/gitweb/?p=occt.git;a=blobdiff_plain;f=src%2FAIS%2FAIS_Triangulation.hxx;h=9961a21582ef89f829f37f02ae06eb63dd01b963;hp=fe283873164b0899d4e5a825de7a6c25cf37c04c;hb=4c7a3faef5f292475c23ee615ad49d57fc039b58;hpb=42cf5bc1cacbc83b1bf8639227311ad726522ace diff --git a/src/AIS/AIS_Triangulation.hxx b/src/AIS/AIS_Triangulation.hxx index fe28387316..9961a21582 100644 --- a/src/AIS/AIS_Triangulation.hxx +++ b/src/AIS/AIS_Triangulation.hxx @@ -16,20 +16,11 @@ #ifndef _AIS_Triangulation_HeaderFile #define _AIS_Triangulation_HeaderFile -#include -#include - #include -#include #include -#include -#include -#include -class Poly_Triangulation; -class Prs3d_Presentation; +class Poly_Triangulation; -class AIS_Triangulation; DEFINE_STANDARD_HANDLE(AIS_Triangulation, AIS_InteractiveObject) //! Interactive object that draws data from Poly_Triangulation, optionally with colors associated @@ -38,10 +29,9 @@ DEFINE_STANDARD_HANDLE(AIS_Triangulation, AIS_InteractiveObject) //! Interactive selection of triangles and vertices is not yet implemented. class AIS_Triangulation : public AIS_InteractiveObject { - + DEFINE_STANDARD_RTTIEXT(AIS_Triangulation, AIS_InteractiveObject) public: - //! Constructs the Triangulation display object Standard_EXPORT AIS_Triangulation(const Handle(Poly_Triangulation)& aTriangulation); @@ -55,19 +45,27 @@ public: //! Get the color for each node. //! Each 32-bit color is Alpha << 24 + Blue << 16 + Green << 8 + Red Standard_EXPORT Handle(TColStd_HArray1OfInteger) GetColors() const; + + //! Returns true if triangulation has vertex colors. + Standard_Boolean HasVertexColors() const + { + return (myFlagColor == 1); + } Standard_EXPORT void SetTriangulation (const Handle(Poly_Triangulation)& aTriangulation); //! Returns Poly_Triangulation . Standard_EXPORT Handle(Poly_Triangulation) GetTriangulation() const; + //! Sets the value aValue for transparency in the reconstructed compound shape. + Standard_EXPORT virtual void SetTransparency (const Standard_Real aValue = 0.6) Standard_OVERRIDE; - - - DEFINE_STANDARD_RTTI(AIS_Triangulation,AIS_InteractiveObject) + //! Removes the setting for transparency in the reconstructed compound shape. + Standard_EXPORT virtual void UnsetTransparency() Standard_OVERRIDE; protected: + Standard_EXPORT void updatePresentation(); @@ -83,7 +81,7 @@ private: //! All color components are multiplied by aComponent, the result is then packed again as 32-bit integer. //! Color attenuation is applied to the vertex colors in order to have correct visual result //! after glColorMaterial(GL_AMBIENT_AND_DIFFUSE). Without it, colors look unnatural and flat. - Standard_EXPORT Standard_Integer AttenuateColor (const Standard_Integer aColor, const Standard_Real aComponent); + Standard_EXPORT Graphic3d_Vec4ub attenuateColor (const Standard_Integer theColor, const Standard_Real theComponent); Handle(Poly_Triangulation) myTriangulation; Handle(TColStd_HArray1OfInteger) myColor; @@ -91,13 +89,6 @@ private: Standard_Integer myNbNodes; Standard_Integer myNbTriangles; - }; - - - - - - #endif // _AIS_Triangulation_HeaderFile