Load (theSelection,
theShape,
theType,
theDeflection,
theDeviationAngle,
isAutoTriangulation,
thePriority,
theNbPOnEdge,
theMaxParam);debug
// loading of selectables...
for (theSelection->Init(); theSelection->More(); theSelection->Next())
{
Handle(SelectMgr_EntityOwner) anOwner
= Handle(SelectMgr_EntityOwner)::DownCast (theSelection->Sensitive()->OwnerId());
anOwner->Set (theSelectableObj);
}input
每一種捕捉模式都對應一個the Selection->Next()it
若是想加入垂足捕捉,切點捕捉,則從新加入一種模式就能夠了io
myStdFilters[IMode] = new StdSelect_ShapeTypeFilter(aType); table
加入一種新的挑選模式ast
void SelectMgr_Selection
::Add (const Handle(SelectBasics_SensitiveEntity)& aprimitive)
{
// if input is null:
// in debug mode raise exception
Standard_NullObject_Raise_if
(aprimitive.IsNull(), "Null sensitive entity is added to the selection");
// in release mode do not add
if (!aprimitive.IsNull())
myentities.Append(aprimitive); myEntities在一個模式下,全部能夠選擇的實體
} select