blob: d804aa07f16192bb858ec09bab8d1022140e9995 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
|
#include <IFSelect_SelectDeduct.ixx>
void IFSelect_SelectDeduct::SetInput (const Handle(IFSelect_Selection)& sel)
{ thesel = sel; }
Handle(IFSelect_Selection) IFSelect_SelectDeduct::Input () const
{ return thesel; }
Standard_Boolean IFSelect_SelectDeduct::HasInput () const
{ return (!thesel.IsNull()); }
Standard_Boolean IFSelect_SelectDeduct::HasAlternate () const
{ if (!thealt.IsNull()) return thealt->IsSet(); return Standard_False; }
Handle(IFSelect_SelectPointed)& IFSelect_SelectDeduct::Alternate ()
{
if (thealt.IsNull()) thealt = new IFSelect_SelectPointed;
return thealt;
}
Interface_EntityIterator IFSelect_SelectDeduct::InputResult
(const Interface_Graph& G) const
{
Interface_EntityIterator res;
if (!thealt.IsNull()) {
if (thealt->IsSet()) {
res = thealt->UniqueResult (G);
thealt->Clear();
return res;
}
}
if (thesel.IsNull()) return res;
return thesel->UniqueResult(G);
}
void IFSelect_SelectDeduct::FillIterator
(IFSelect_SelectionIterator& iter) const
{ iter.AddItem(thesel); }
|