
Wed, 06/11/2008 - 14:26
Forums:
I want to "Display()" many InteractiveObject, like AIS_Line or AIS_Circle. Each of this AIS_InteractiveObject have some attached data set with "SetOwner()".
I have used AIS_MultipleConnectedInteractive() and I have appended the AIS_InteractiveObject with "Connect()".
I can see all the objects displayed but the "selection" of theese objects doesn't work !
Are there some other think I have to do ? Or are there some other method to do this ?
Sun, 06/15/2008 - 02:09
Currently, I'm experiencing the same behavior of AIS_MultipleConnectedInteractive. Probably you should set the selection mode and call Activate of the inter. object.
Mon, 06/16/2008 - 12:56
Hello Svetlozar,
I have seen in the source code of the AIS_MultipleConnectedInteractive and when the function for manage the "drawing" of the obj is this :
//=======================================================================
//function : Compute
//purpose :
//=======================================================================
void AIS_MultipleConnectedInteractive::Compute
(const Handle(PrsMgr_PresentationManager3d)& aPresentationManager,
const Handle(Prs3d_Presentation)& aPresentation,
const Standard_Integer aMode)
{
//cout<<"AIS_MultipleConnectedInteractive::Compute"<Clear(Standard_False);
aPresentation->RemoveAll();
if(HasConnection()) {
for (Standard_Integer I=1 ; I<= myReferences.Length(); I++) {
const Handle (AIS_InteractiveObject)& aReference = myReferences.Value (I);
aPresentationManager->Connect( this, aReference, aMode, aMode);
if(aPresentationManager->Presentation(aReference,aMode)->MustBeUpdated())
aPresentationManager->Update(aReference,aMode);
}
}
aPresentation->ReCompute();
the function for the selection is void :
//=======================================================================
//function : ComputeSelection
//purpose :
//=======================================================================
void AIS_MultipleConnectedInteractive::ComputeSelection(const Handle(SelectMgr_Selection)& /*aSel*/,
const Standard_Integer /*aMode*/)
{
}
I think that the selection of these objects is not implemented.
Do you think that I have to crete my own AIS_MultipleConnectedInteractive class and implement this function ?