#include <Graphic3d_Group.jxx>
#include <Graphic3d_Group.pxx>
#include <Graphic3d_TextureMap.hxx>
+#include <Graphic3d_ShaderProgram.hxx>
//-Methods, in order
MyCGroup.ContextLine.Width = float (AWidth);
MyCGroup.ContextLine.IsDef = 1;
+ MyCGroup.ContextLine.ShaderProgram = CTX->ShaderProgram();
+
int noinsert = 1;
MyGraphicDriver->LineContextGroup (MyCGroup, noinsert);
MyCGroup.ContextLine.IsSet = 1;
Update ();
-
}
void Graphic3d_Group::SetGroupPrimitivesAspect (const Handle(Graphic3d_AspectFillArea3d)& CTX) {
MyCGroup.ContextFillArea.PolygonOffsetUnits = aPolyUnits;
// OCC4895 SAN 22/03/04 High-level interface for controlling polygon offsets
+ MyCGroup.ContextFillArea.ShaderProgram = CTX->ShaderProgram();
+
int noinsert = 1;
MyGraphicDriver->FaceContextGroup (MyCGroup, noinsert);
MyCGroup.ContextFillArea.IsSet = 1;
- Update ();
-
+ Update();
}
void Graphic3d_Group::SetGroupPrimitivesAspect (const Handle(Graphic3d_AspectMarker3d)& theCtx)
MyCGroup.ContextMarker.Scale = Standard_ShortReal (aScale);
MyCGroup.ContextMarker.MarkerImage = theCtx->GetMarkerImage();
+ MyCGroup.ContextMarker.ShaderProgram = theCtx->ShaderProgram();
+
int noinsert = 1;
MyGraphicDriver->MarkerContextGroup (MyCGroup, noinsert);
MyCGroup.ContextText.TextAngle = float (ATextAngle);
MyCGroup.ContextText.TextFontAspect = (int)ATextFontAspect;
+ MyCGroup.ContextText.ShaderProgram = CTX->ShaderProgram();
+
MyCGroup.ContextText.IsDef = 1;
int noinsert = 1;
MyCGroup.ContextText.IsSet = 1;
Update ();
-
}
void Graphic3d_Group::SetPrimitivesAspect (const Handle(Graphic3d_AspectLine3d)& CTX) {
MyCGroup.ContextLine.Width = float (AWidth);
MyCGroup.ContextLine.IsDef = 1;
+ MyCGroup.ContextLine.ShaderProgram = CTX->ShaderProgram();
+
int noinsert = 0;
MyGraphicDriver->LineContextGroup (MyCGroup, noinsert);
MyCGroup.ContextLine.IsSet = 1;
Update ();
-
}
void Graphic3d_Group::SetPrimitivesAspect (const Handle(Graphic3d_AspectFillArea3d)& CTX) {
MyCGroup.ContextFillArea.PolygonOffsetUnits = (Standard_ShortReal)aPolyUnits;
// OCC4895 SAN 22/03/04 High-level interface for controlling polygon offsets
+ MyCGroup.ContextFillArea.ShaderProgram = CTX->ShaderProgram();
+
int noinsert = 0;
MyGraphicDriver->FaceContextGroup (MyCGroup, noinsert);
MyCGroup.ContextFillArea.IsSet = 1;
Update ();
-
}
void Graphic3d_Group::SetPrimitivesAspect (const Handle(Graphic3d_AspectMarker3d)& thCtx)
MyCGroup.ContextMarker.Scale = Standard_ShortReal (aScale);
MyCGroup.ContextMarker.MarkerImage = thCtx->GetMarkerImage();
+ MyCGroup.ContextMarker.ShaderProgram = thCtx->ShaderProgram();
+
int noinsert = 0;
MyGraphicDriver->MarkerContextGroup (MyCGroup, noinsert);
MyCGroup.ContextText.TextFontAspect = (int)ATextFontAspect;
MyCGroup.ContextText.IsDef = 1;
+ MyCGroup.ContextText.ShaderProgram = CTX->ShaderProgram();
+
int noinsert = 0;
MyGraphicDriver->TextContextGroup (MyCGroup, noinsert);
MyCGroup.ContextText.IsSet = 1;
- Update ();
-
+ Update();
}
Standard_Boolean Graphic3d_Group::IsGroupPrimitivesAspectSet (const Graphic3d_GroupAspect theAspect) const {