0022048: Visualization, AIS_InteractiveContext - single object selection should alway...
[occt.git] / src / IntStart / IntStart_Segment.lxx
1 // Copyright (c) 1995-1999 Matra Datavision
2 // Copyright (c) 1999-2014 OPEN CASCADE SAS
3 //
4 // This file is part of Open CASCADE Technology software library.
5 //
6 // This library is free software; you can redistribute it and/or modify it under
7 // the terms of the GNU Lesser General Public License version 2.1 as published
8 // by the Free Software Foundation, with special exception defined in the file
9 // OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
10 // distribution for complete text of the license and disclaimer of any warranty.
11 //
12 // Alternatively, this file may be used under the terms of Open CASCADE
13 // commercial license or contractual agreement.
14
15 #include <Standard_DomainError.hxx>
16
17
18 inline void IntStart_Segment::SetValue (const TheArc& A) {
19
20   hasfp = Standard_False;
21   haslp = Standard_False;
22   arc = A;
23 }
24
25
26 inline const TheArc& IntStart_Segment::Curve () const {
27
28   return arc;
29 }
30
31
32 inline Standard_Boolean IntStart_Segment::HasFirstPoint () const {
33
34   return hasfp;
35 }
36
37
38 inline const ThePathPoint& IntStart_Segment::FirstPoint () const {
39
40   if (!hasfp) { throw Standard_DomainError(); }
41   return thefp;
42 }
43
44
45 inline Standard_Boolean IntStart_Segment::HasLastPoint () const {
46
47   return haslp;
48 }
49
50
51 inline const ThePathPoint& IntStart_Segment::LastPoint () const {
52
53   if (!haslp) { throw Standard_DomainError(); }
54   return thelp;
55 }
56