
Tue, 04/26/2016 - 03:58
Forums:
Hello,
I can set the selection mode of AIS_Trihedron as in this code but I would like to retrieve the properties of AIS_Trihedron during the mouse selection. In particular, the axis gets highlighted correctly when I click the mouse but I don't know how to get the information of the clicked axis from AIS_InteractiveContext. I should figure out which axis of the AIS_Trihedron that was clicked/selected. Any help?
Handle(AIS_Trihedron) aTrihedron;
Handle(Geom_Axis2Placement) aTrihedronAxis=new Geom_Axis2Placement(gp::XOY());
aTrihedron=new AIS_Trihedron(aTrihedronAxis);
aTrihedron->SetSelectionMode(2);
myAISContext->Display(aTrihedron);
Thanks,
Emad
Tue, 04/26/2016 - 13:10
Try this (not tested)
for (context->InitSelected(); context->MoreSelected(); context->NextSelected()) {
const Handle(AIS_InteractiveObject) obj = context->SelectedInteractive();
if ((obj->Type() == AIS_KOI_Datum) && (obj->Signature() == 2) && !obj.IsNull()) {
Handle(AIS_Axis) anAxis = Handle(AIS_Axis)::DownCast(obj);
}
}
Tue, 02/23/2021 - 06:22
Hi:
There is no function : aTrihedron->SetSelectionMode(2) in 7.5.0,
How to set selection mode?
And obj->Signature() always return 3, how to solve it?
Tue, 04/26/2016 - 20:45
Hi Daniel,
Thank you for your reply.
The lines seem to work except the last line.
Handle(AIS_Axis) anAxis = Handle(AIS_Axis)::DownCast(obj);
Where AIS_Axis is first defined? Frankly I am using PythonOCC so the syntax is slightly different.
Thanks,
Emad