Showing results for 
Search instead for 
Do you mean 
Reply

Selection and mask

Hi every one.

 

I would like to select Edges with a SelectObject BlockStyler.

Whitch mask have I to use?

 

Edge filter is well present in modeling application (no edition in progress)

 

If ask the type and subtype of an Edge with UF function, I obtain 70 (UF_solid_type ) - 3 (UF_solid_edge_subtype).

But if I use this information to make a mask I do not obtain what I want:

 

selection0->SetLabelString("Select Feature");
vector<Selection::MaskTriple> mask1;
selection0->SetSelectionFilter(Selection::SelectionActionClearAndEnableSpecific, mask1);

 

 

Furthermore, I use some other mask triple, I have not related filter (Welding Object… and not only Feature in this case):

 

vector<Selection::MaskTriple> mask1;
mask1.push_back(Selection::MaskTriple( UF_feature_type, -1, 0 ));
selection0->SetSelectionFilter(Selection::SelectionActionClearAndEnableSpecific, mask1);

 

 

Can you help me ?

 

Thanks in advanced

Jonathan

3 REPLIES

Re: Selection and mask

Try the following mask options:

(the below is in VB, you will need to translate it to C++)

 

With selectionMask_array(0)
    .Type = UFConstants.UF_solid_type
    .SolidBodySubtype = UFConstants.UF_UI_SEL_FEATURE_ANY_EDGE
End With

Re: Selection and mask

Hi royon,

 

in C++ it would be:

vector<Selection::MaskTriple> selection_Mask_Array;
Selection::MaskTriple selection_Mask;
selection_Mask.Type = UF_solid_type;
selection_Mask.Subtype = UF_solid_edge_subtype;
selection_Mask_Array.push_back(selection_Mask);

selection0->SetSelectionFilter(Selection::SelectionActionClearAndEnableSpecific, selection_Mask_Array); 

regards,

MGeyer

Re: Selection and mask

Don't forget to add the selection_Mask.SolidBodySubtype. When the .Type is set to UF_solid_type, the .Subtype is essentially ignored and the .SolidBodySubtype is used instead.