public:
- OpenGl_AspectFace();
+ Standard_EXPORT OpenGl_AspectFace();
//! Copy parameters
- void SetAspect (const CALL_DEF_CONTEXTFILLAREA& theAspect);
- void SetAspect (const Handle(Graphic3d_AspectFillArea3d)& theAspect);
+ Standard_EXPORT void SetAspect (const CALL_DEF_CONTEXTFILLAREA& theAspect);
+ Standard_EXPORT void SetAspect (const Handle(Graphic3d_AspectFillArea3d)& theAspect);
//! Set edge aspect.
void SetAspectEdge (const OpenGl_AspectLine* theAspectEdge)
return myResources.ShaderProgram;
}
- virtual void Render (const Handle(OpenGl_Workspace)& theWorkspace) const;
- virtual void Release (const Handle(OpenGl_Context)& theContext);
+ Standard_EXPORT virtual void Render (const Handle(OpenGl_Workspace)& theWorkspace) const;
+ Standard_EXPORT virtual void Release (const Handle(OpenGl_Context)& theContext);
protected:
- void convertMaterial (const CALL_DEF_MATERIAL& theMat,
- OPENGL_SURF_PROP& theSurf);
+ Standard_EXPORT void convertMaterial (const CALL_DEF_MATERIAL& theMat,
+ OPENGL_SURF_PROP& theSurf);
protected: //! @name ordinary aspect properties
void ResetTextureReadiness() { myIsTextureReady = Standard_False; }
void ResetShaderReadiness () { myIsShaderReady = Standard_False; }
- void BuildTexture (const Handle(OpenGl_Workspace)& theWS, const Handle(Graphic3d_TextureMap)& theTexture);
- void BuildShader (const Handle(OpenGl_Workspace)& theWS, const Handle(Graphic3d_ShaderProgram)& theShader);
+ Standard_EXPORT void BuildTexture (const Handle(OpenGl_Workspace)& theWS,
+ const Handle(Graphic3d_TextureMap)& theTexture);
+ Standard_EXPORT void BuildShader (const Handle(OpenGl_Workspace)& theWS,
+ const Handle(Graphic3d_ShaderProgram)& theShader);
- Handle(OpenGl_Texture) Texture;
- TCollection_AsciiString TextureId;
+ Handle(OpenGl_Texture) Texture;
+ TCollection_AsciiString TextureId;
Handle(OpenGl_ShaderProgram) ShaderProgram;
TCollection_AsciiString ShaderProgramId;
class OpenGl_AspectLine : public OpenGl_Element
{
- public:
+public:
+
+ Standard_EXPORT OpenGl_AspectLine();
- OpenGl_AspectLine ();
- OpenGl_AspectLine (const OpenGl_AspectLine &AnOther);
+ Standard_EXPORT OpenGl_AspectLine (const OpenGl_AspectLine &AnOther);
- void SetAspect (const CALL_DEF_CONTEXTLINE &theAspect);
+ Standard_EXPORT void SetAspect (const CALL_DEF_CONTEXTLINE& theAspect);
const TEL_COLOUR & Color() const { return myColor; }
Aspect_TypeOfLine Type() const { return myType; }
return myResources.ShaderProgram;
}
- virtual void Render (const Handle(OpenGl_Workspace)& theWorkspace) const;
- virtual void Release (const Handle(OpenGl_Context)& theContext);
+ Standard_EXPORT virtual void Render (const Handle(OpenGl_Workspace)& theWorkspace) const;
+ Standard_EXPORT virtual void Release (const Handle(OpenGl_Context)& theContext);
protected:
void SetShaderReady() { myIsShaderReady = Standard_True; }
void ResetShaderReadiness() { myIsShaderReady = Standard_False; }
- void BuildShader (const Handle(OpenGl_Workspace)& theWS, const Handle(Graphic3d_ShaderProgram)& theShader);
+ Standard_EXPORT void BuildShader (const Handle(OpenGl_Workspace)& theWS, const Handle(Graphic3d_ShaderProgram)& theShader);
Handle(OpenGl_ShaderProgram) ShaderProgram;
TCollection_AsciiString ShaderProgramId;
{
public:
- OpenGl_AspectMarker();
+ Standard_EXPORT OpenGl_AspectMarker();
//! Copy parameters
- void SetAspect (const CALL_DEF_CONTEXTMARKER& theAspect);
+ Standard_EXPORT void SetAspect (const CALL_DEF_CONTEXTMARKER& theAspect);
//! @return marker color
const TEL_COLOUR& Color() const
return myResources.ShaderProgram;
}
- virtual void Render (const Handle(OpenGl_Workspace)& theWorkspace) const;
- virtual void Release (const Handle(OpenGl_Context)& theContext);
+ Standard_EXPORT virtual void Render (const Handle(OpenGl_Workspace)& theWorkspace) const;
+ Standard_EXPORT virtual void Release (const Handle(OpenGl_Context)& theContext);
protected: //! @name ordinary aspect properties
void ResetSpriteReadiness() { myIsSpriteReady = Standard_False; }
void ResetShaderReadiness() { myIsShaderReady = Standard_False; }
- void BuildSprites (const Handle(OpenGl_Workspace)& theWS,
- const Handle(Graphic3d_MarkerImage)& theMarkerImage,
- const Aspect_TypeOfMarker theType,
- const Standard_ShortReal theScale,
- const TEL_COLOUR& theColor,
- Standard_ShortReal& theMarkerSize);
-
- void BuildShader (const Handle(OpenGl_Workspace)& theWS, const Handle(Graphic3d_ShaderProgram)& theShader);
-
- void SpriteKeys (const Handle(Graphic3d_MarkerImage)& theMarkerImage,
- const Aspect_TypeOfMarker theType,
- const Standard_ShortReal theScale,
- const TEL_COLOUR& theColor,
- TCollection_AsciiString& theKey,
- TCollection_AsciiString& theKeyA);
+ Standard_EXPORT void BuildSprites (const Handle(OpenGl_Workspace)& theWS,
+ const Handle(Graphic3d_MarkerImage)& theMarkerImage,
+ const Aspect_TypeOfMarker theType,
+ const Standard_ShortReal theScale,
+ const TEL_COLOUR& theColor,
+ Standard_ShortReal& theMarkerSize);
+
+ Standard_EXPORT void BuildShader (const Handle(OpenGl_Workspace)& theWS,
+ const Handle(Graphic3d_ShaderProgram)& theShader);
+
+ Standard_EXPORT void SpriteKeys (const Handle(Graphic3d_MarkerImage)& theMarkerImage,
+ const Aspect_TypeOfMarker theType,
+ const Standard_ShortReal theScale,
+ const TEL_COLOUR& theColor,
+ TCollection_AsciiString& theKey,
+ TCollection_AsciiString& theKeyA);
Handle(OpenGl_PointSprite) Sprite;
TCollection_AsciiString SpriteKey;
void SetShaderReady() { myIsShaderReady = Standard_True; }
void ResetShaderReadiness() { myIsShaderReady = Standard_False; }
- void BuildShader (const Handle(OpenGl_Workspace)& theWS, const Handle(Graphic3d_ShaderProgram)& theShader);
+ Standard_EXPORT void BuildShader (const Handle(OpenGl_Workspace)& theWS,
+ const Handle(Graphic3d_ShaderProgram)& theShader);
Handle(OpenGl_ShaderProgram) ShaderProgram;
TCollection_AsciiString ShaderProgramId;
{
if (myMaterialStates.IsBound (theProgram))
{
- myMaterialStates.ChangeFind (theProgram).Set (theAspect);
+ OpenGl_MaterialState& aState = myMaterialStates.ChangeFind (theProgram);
+ aState.Set (theAspect);
+ aState.Update();
}
else
{
- myMaterialStates.Bind (theProgram, OpenGl_MaterialState (theAspect));
+ myMaterialStates.Bind (theProgram, OpenGl_MaterialState (theAspect));
+ myMaterialStates.ChangeFind (theProgram).Update();
}
-
- myMaterialStates.ChangeFind (theProgram).Update();
}
// =======================================================================