Warning, /include/opencascade/ShapeFix_Root.lxx is written in an unsupported language. File is not indexed.
0001 // Copyright (c) 1999-2014 OPEN CASCADE SAS
0002 //
0003 // This file is part of Open CASCADE Technology software library.
0004 //
0005 // This library is free software; you can redistribute it and/or modify it under
0006 // the terms of the GNU Lesser General Public License version 2.1 as published
0007 // by the Free Software Foundation, with special exception defined in the file
0008 // OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
0009 // distribution for complete text of the license and disclaimer of any warranty.
0010 //
0011 // Alternatively, this file may be used under the terms of Open CASCADE
0012 // commercial license or contractual agreement.
0013
0014 #include <Precision.hxx>
0015
0016 //=================================================================================================
0017
0018 inline occ::handle<ShapeBuild_ReShape> ShapeFix_Root::Context() const
0019 {
0020 return myContext;
0021 }
0022
0023 //=================================================================================================
0024
0025 inline occ::handle<ShapeExtend_BasicMsgRegistrator> ShapeFix_Root::MsgRegistrator() const
0026 {
0027 return myMsgReg;
0028 }
0029
0030 //=================================================================================================
0031
0032 inline double ShapeFix_Root::Precision() const
0033 {
0034 return myPrecision;
0035 }
0036
0037 //=================================================================================================
0038
0039 inline double ShapeFix_Root::MinTolerance() const
0040 {
0041 return myMinTol;
0042 }
0043
0044 //=================================================================================================
0045
0046 inline double ShapeFix_Root::MaxTolerance() const
0047 {
0048 return myMaxTol;
0049 }
0050
0051 //=================================================================================================
0052
0053 inline double ShapeFix_Root::LimitTolerance(const double toler) const
0054 {
0055 // only maximal restriction implemented.
0056 return std::min(myMaxTol, toler);
0057 }
0058
0059 //=================================================================================================
0060
0061 inline void ShapeFix_Root::SendMsg(const Message_Msg& message, const Message_Gravity gravity) const
0062 {
0063 SendMsg(myShape, message, gravity);
0064 }
0065
0066 //=================================================================================================
0067
0068 inline void ShapeFix_Root::SendWarning(const TopoDS_Shape& shape, const Message_Msg& message) const
0069 {
0070 SendMsg(shape, message, Message_Warning);
0071 }
0072
0073 //=================================================================================================
0074
0075 inline void ShapeFix_Root::SendWarning(const Message_Msg& message) const
0076 {
0077 SendWarning(myShape, message);
0078 }
0079
0080 //=================================================================================================
0081
0082 inline void ShapeFix_Root::SendFail(const TopoDS_Shape& shape, const Message_Msg& message) const
0083 {
0084 SendMsg(shape, message, Message_Fail);
0085 }
0086
0087 //=================================================================================================
0088
0089 inline void ShapeFix_Root::SendFail(const Message_Msg& message) const
0090 {
0091 SendFail(myShape, message);
0092 }
0093
0094 //=======================================================================
0095 // function : NeedFix
0096 // purpose : Function used to define if the fixing method needs to be called
0097 // according to its specific flag if it is set, or
0098 // to some additional criteria (if Flag is default)
0099 //=======================================================================
0100
0101 inline bool ShapeFix_Root::NeedFix(const int Flag, const bool need)
0102 {
0103 return Flag < 0 ? need : (Flag > 0);
0104 }