|
|
|||
File indexing completed on 2026-09-28 09:21:31
0001 // Created on: 1999-04-30 0002 // Created by: data exchange team 0003 // Copyright (c) 1999 Matra Datavision 0004 // Copyright (c) 1999-2014 OPEN CASCADE SAS 0005 // 0006 // This file is part of Open CASCADE Technology software library. 0007 // 0008 // This library is free software; you can redistribute it and/or modify it under 0009 // the terms of the GNU Lesser General Public License version 2.1 as published 0010 // by the Free Software Foundation, with special exception defined in the file 0011 // OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT 0012 // distribution for complete text of the license and disclaimer of any warranty. 0013 // 0014 // Alternatively, this file may be used under the terms of Open CASCADE 0015 // commercial license or contractual agreement. 0016 0017 #ifndef _ShapeUpgrade_ShapeDivideContinuity_HeaderFile 0018 #define _ShapeUpgrade_ShapeDivideContinuity_HeaderFile 0019 0020 #include <Standard.hxx> 0021 #include <Standard_DefineAlloc.hxx> 0022 #include <Standard_Handle.hxx> 0023 0024 #include <GeomAbs_Shape.hxx> 0025 #include <ShapeUpgrade_ShapeDivide.hxx> 0026 class TopoDS_Shape; 0027 class ShapeUpgrade_FaceDivide; 0028 0029 //! API Tool for converting shapes with C0 geometry into C1 ones 0030 class ShapeUpgrade_ShapeDivideContinuity : public ShapeUpgrade_ShapeDivide 0031 { 0032 public: 0033 DEFINE_STANDARD_ALLOC 0034 0035 Standard_EXPORT ShapeUpgrade_ShapeDivideContinuity(); 0036 0037 //! Initialize by a Shape. 0038 Standard_EXPORT ShapeUpgrade_ShapeDivideContinuity(const TopoDS_Shape& S); 0039 0040 //! Sets tolerance. 0041 Standard_EXPORT void SetTolerance(const double Tol); 0042 0043 //! Sets tolerance. 0044 Standard_EXPORT void SetTolerance2d(const double Tol); 0045 0046 //! Defines a criterion of continuity for the boundary (all the 0047 //! Wires) 0048 //! 0049 //! The possible values are C0, G1, C1, G2, C2, C3, CN The 0050 //! default is C1 to respect the Cas.Cade Shape Validity. 0051 //! G1 and G2 are not authorized. 0052 Standard_EXPORT void SetBoundaryCriterion(const GeomAbs_Shape Criterion = GeomAbs_C1); 0053 0054 //! Defines a criterion of continuity for the boundary (all the 0055 //! pcurves of Wires) 0056 //! 0057 //! The possible values are C0, G1, C1, G2, C2, C3, CN The 0058 //! default is C1 to respect the Cas.Cade Shape Validity. 0059 //! G1 and G2 are not authorized. 0060 Standard_EXPORT void SetPCurveCriterion(const GeomAbs_Shape Criterion = GeomAbs_C1); 0061 0062 //! Defines a criterion of continuity for the boundary (all the 0063 //! Wires) 0064 //! 0065 //! The possible values are C0, G1, C1, G2, C2, C3, CN The 0066 //! default is C1 to respect the Cas.Cade Shape Validity. 0067 //! G1 and G2 are not authorized. 0068 Standard_EXPORT void SetSurfaceCriterion(const GeomAbs_Shape Criterion = GeomAbs_C1); 0069 0070 protected: 0071 //! Returns the tool for dividing faces. 0072 Standard_EXPORT occ::handle<ShapeUpgrade_FaceDivide> GetSplitFaceTool() const override; 0073 0074 private: 0075 GeomAbs_Shape myCurve3dCriterion; 0076 GeomAbs_Shape myCurve2dCriterion; 0077 GeomAbs_Shape mySurfaceCriterion; 0078 double myTolerance3d; 0079 double myTolerance2d; 0080 }; 0081 0082 #endif // _ShapeUpgrade_ShapeDivideContinuity_HeaderFile
| [ Source navigation ] | [ Diff markup ] | [ Identifier search ] | [ general search ] |
|
This page was automatically generated by the 2.3.7 LXR engine. The LXR team |
|