Warning, /include/opencascade/IntPatch_Intersection.lxx is written in an unsupported language. File is not indexed.
0001 // Created by: Modelization
0002 // Copyright (c) 1995-1999 Matra Datavision
0003 // Copyright (c) 1999-2014 OPEN CASCADE SAS
0004 //
0005 // This file is part of Open CASCADE Technology software library.
0006 //
0007 // This library is free software; you can redistribute it and/or modify it under
0008 // the terms of the GNU Lesser General Public License version 2.1 as published
0009 // by the Free Software Foundation, with special exception defined in the file
0010 // OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
0011 // distribution for complete text of the license and disclaimer of any warranty.
0012 //
0013 // Alternatively, this file may be used under the terms of Open CASCADE
0014 // commercial license or contractual agreement.
0015
0016 #include <StdFail_NotDone.hxx>
0017 #include <Standard_DomainError.hxx>
0018 #include <IntPatch_Line.hxx>
0019
0020 inline bool IntPatch_Intersection::IsDone() const
0021 {
0022 return done;
0023 }
0024
0025 inline bool IntPatch_Intersection::IsEmpty() const
0026 {
0027 if (!done)
0028 {
0029 throw StdFail_NotDone();
0030 }
0031 return empt;
0032 }
0033
0034 inline bool IntPatch_Intersection::TangentFaces() const
0035 {
0036 if (!done)
0037 {
0038 throw StdFail_NotDone();
0039 }
0040 return tgte;
0041 }
0042
0043 inline bool IntPatch_Intersection::OppositeFaces() const
0044 {
0045 if (!done)
0046 {
0047 throw StdFail_NotDone();
0048 }
0049 if (!tgte)
0050 {
0051 throw Standard_DomainError();
0052 }
0053 return oppo;
0054 }
0055
0056 inline int IntPatch_Intersection::NbPnts() const
0057 {
0058 if (!done)
0059 {
0060 throw StdFail_NotDone();
0061 }
0062 return spnt.Length();
0063 }
0064
0065 inline const IntPatch_Point& IntPatch_Intersection::Point(const int Index) const
0066 {
0067 if (!done)
0068 {
0069 throw StdFail_NotDone();
0070 }
0071 return spnt(Index);
0072 }
0073
0074 inline int IntPatch_Intersection::NbLines() const
0075 {
0076 if (!done)
0077 {
0078 throw StdFail_NotDone();
0079 }
0080 return slin.Length();
0081 }
0082
0083 inline const occ::handle<IntPatch_Line>& IntPatch_Intersection::Line(const int Index) const
0084 {
0085 if (!done)
0086 {
0087 throw StdFail_NotDone();
0088 }
0089 return slin(Index);
0090 }