Please Help me!

I'm not able to set SetEdgeOff on the aspect of MeshVS_Mesh .

Handle(MeshVS_Mesh) b = ... initialized good
b->Attributes ()->ShadingAspect ()->Aspect ()->SetEdgeOff();

it displays edges even in shading mode.
HEEELP!

Bearloga's picture

Try this:
b->GetDrawer()->SetBoolean(MeshVS_DA_ShowEdges,Standard_False);

QbProg's picture

Sorry, could not find MeshVS_DA_ShowEdges , where is defined?

anyway I tried

for (int i= 0 ; i < 65536*65536; i++)
VsM->GetDrawer()->SetBoolean(i,Standard_False);

and didn't worked anyway (no exceptions).
I use the following code:

MeshVS_Mesh * VsM = new MeshVS_Mesh;
TPMesh_DataSource * M = new TPMesh_DataSource ( Tri); // A data source for triangulation
VsM->SetDataSource (M);

MeshVS_MeshPrsBuilder * Prs = new MeshVS_MeshPrsBuilder(VsM);
VsM->AddBuilder(Prs);

for (int i= 0 ; i < 65536*65536; i++)
VsM->GetDrawer()->SetBoolean(i,Standard_False);
or
// VsM->GetDrawer()->SetBoolean(MeshVS_DA_ShowEdges ,Standard_False);

return VsM; // expects AIS_InteractiveObject

Bearloga's picture

Probably your version of OCC is too old. In 5.2.4 MeshVS_DA_ShowEdges is present.

QbProg's picture

Yes, I think so. And in my version (5.2) , I checked the code, any flag regarding Edges is ignored. Maybe it was just a devel version?

I think i'll wait a new version...
just to know , in 5.2.4 there is a little more documentation?

Thanks anyway!