Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2026-09-12 09:19:07

0001 // Created on: 1997-12-15
0002 // Created by: Jean Yves LEBEY
0003 // Copyright (c) 1997-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 _TopOpeBRepDS_EXPORT_HeaderFile
0018 #define _TopOpeBRepDS_EXPORT_HeaderFile
0019 
0020 #include <TopOpeBRepDS_define.hxx>
0021 #include <TopoDS_Shape.hxx>
0022 #include <TopOpeBRepDS_ListOfShapeOn1State.hxx>
0023 #include <TopTools_ShapeMapHasher.hxx>
0024 #include <NCollection_DataMap.hxx>
0025 // TopOpeBRepDS_redu.cxx
0026 Standard_EXPORT void FUN_scanloi(
0027   const NCollection_List<occ::handle<TopOpeBRepDS_Interference>>& lII,
0028   NCollection_List<occ::handle<TopOpeBRepDS_Interference>>&       lFOR,
0029   int&                                                            FOR,
0030   NCollection_List<occ::handle<TopOpeBRepDS_Interference>>&       lREV,
0031   int&                                                            REV,
0032   NCollection_List<occ::handle<TopOpeBRepDS_Interference>>&       lINT,
0033   int&                                                            INT);
0034 Standard_EXPORT bool FUN_ds_redu2d1d(
0035   const TopOpeBRepDS_DataStructure&                               BDS,
0036   const int                                                       ISE,
0037   const occ::handle<TopOpeBRepDS_Interference>&                   I2d,
0038   const NCollection_List<occ::handle<TopOpeBRepDS_Interference>>& l1d,
0039   TopOpeBRepDS_Transition&                                        newT2d);
0040 Standard_EXPORT bool FUN_ds_GetTr(
0041   const TopOpeBRepDS_DataStructure&                               BDS,
0042   const int                                                       ISE,
0043   const int                                                       G,
0044   const NCollection_List<occ::handle<TopOpeBRepDS_Interference>>& LIG,
0045   TopAbs_State&                                                   stb,
0046   int&                                                            isb,
0047   int&                                                            bdim,
0048   TopAbs_State&                                                   sta,
0049   int&                                                            isa,
0050   int&                                                            adim);
0051 // TopOpeBRepDS_EXPORT.cxx
0052 Standard_EXPORT void FDS_SetT(TopOpeBRepDS_Transition& T, const TopOpeBRepDS_Transition& T0);
0053 Standard_EXPORT bool FDS_hasUNK(const TopOpeBRepDS_Transition& T);
0054 Standard_EXPORT void FDS_copy(const NCollection_List<occ::handle<TopOpeBRepDS_Interference>>& LI,
0055                               NCollection_List<occ::handle<TopOpeBRepDS_Interference>>&       LII);
0056 Standard_EXPORT void FDS_copy(const NCollection_List<TopoDS_Shape>& LI,
0057                               NCollection_List<TopoDS_Shape>&       LII);
0058 Standard_EXPORT void FDS_assign(const NCollection_List<occ::handle<TopOpeBRepDS_Interference>>& LI,
0059                                 NCollection_List<occ::handle<TopOpeBRepDS_Interference>>& LII);
0060 Standard_EXPORT void FDS_assign(const NCollection_List<TopoDS_Shape>& LI,
0061                                 NCollection_List<TopoDS_Shape>&       LII);
0062 Standard_EXPORT void FUN_ds_samRk(const TopOpeBRepDS_DataStructure& BDS,
0063                                   const int                         Rk,
0064                                   NCollection_List<TopoDS_Shape>&   LI,
0065                                   NCollection_List<TopoDS_Shape>&   LIsrk);
0066 Standard_EXPORT void FDS_data(const occ::handle<TopOpeBRepDS_Interference>& I,
0067                               TopOpeBRepDS_Kind&                            GT1,
0068                               int&                                          G1,
0069                               TopOpeBRepDS_Kind&                            ST1,
0070                               int&                                          S1);
0071 Standard_EXPORT bool FDS_data(
0072   const NCollection_List<occ::handle<TopOpeBRepDS_Interference>>::Iterator& it,
0073   occ::handle<TopOpeBRepDS_Interference>&                                   I,
0074   TopOpeBRepDS_Kind&                                                        GT1,
0075   int&                                                                      G1,
0076   TopOpeBRepDS_Kind&                                                        ST1,
0077   int&                                                                      S1);
0078 Standard_EXPORT void FDS_Tdata(const occ::handle<TopOpeBRepDS_Interference>& I,
0079                                TopAbs_ShapeEnum&                             SB,
0080                                int&                                          IB,
0081                                TopAbs_ShapeEnum&                             SA,
0082                                int&                                          IA);
0083 Standard_EXPORT void FDS_Idata(const occ::handle<TopOpeBRepDS_Interference>& I,
0084                                TopAbs_ShapeEnum&                             SB,
0085                                int&                                          IB,
0086                                TopAbs_ShapeEnum&                             SA,
0087                                int&                                          IA,
0088                                TopOpeBRepDS_Kind&                            GT1,
0089                                int&                                          G1,
0090                                TopOpeBRepDS_Kind&                            ST1,
0091                                int&                                          S1);
0092 Standard_EXPORT bool FUN_ds_getVsdm(const TopOpeBRepDS_DataStructure& BDS,
0093                                     const int                         iV,
0094                                     int&                              iVsdm);
0095 Standard_EXPORT bool FUN_ds_sdm(const TopOpeBRepDS_DataStructure& BDS,
0096                                 const TopoDS_Shape&               s1,
0097                                 const TopoDS_Shape&               s2);
0098 
0099 Standard_EXPORT bool FDS_aresamdom(const TopOpeBRepDS_DataStructure& BDS,
0100                                    const TopoDS_Shape&               ES,
0101                                    const TopoDS_Shape&               F1,
0102                                    const TopoDS_Shape&               F2);
0103 Standard_EXPORT bool FDS_aresamdom(const TopOpeBRepDS_DataStructure& BDS,
0104                                    const int                         SI,
0105                                    const int                         isb1,
0106                                    const int                         isb2);
0107 // clang-format off
0108 Standard_EXPORT bool FDS_EdgeIsConnexToSameDomainFaces(const TopoDS_Shape& E,const occ::handle<TopOpeBRepDS_HDataStructure>& HDS);  // not used
0109 // clang-format on
0110 Standard_EXPORT bool   FDS_SIisGIofIofSBAofTofI(const TopOpeBRepDS_DataStructure&             BDS,
0111                                                 const int                                     SI,
0112                                                 const occ::handle<TopOpeBRepDS_Interference>& I);
0113 Standard_EXPORT double FDS_Parameter(const occ::handle<TopOpeBRepDS_Interference>& I);
0114 Standard_EXPORT bool   FDS_Parameter(const occ::handle<TopOpeBRepDS_Interference>& I, double& par);
0115 Standard_EXPORT bool   FDS_HasSameDomain3d(const TopOpeBRepDS_DataStructure& BDS,
0116                                            const TopoDS_Shape&               E,
0117                                            NCollection_List<TopoDS_Shape>*   PLSD = nullptr);
0118 Standard_EXPORT bool   FDS_Config3d(const TopoDS_Shape&  E1,
0119                                     const TopoDS_Shape&  E2,
0120                                     TopOpeBRepDS_Config& c);
0121 Standard_EXPORT bool   FDS_HasSameDomain2d(const TopOpeBRepDS_DataStructure& BDS,
0122                                            const TopoDS_Shape&               E,
0123                                            NCollection_List<TopoDS_Shape>*   PLSD = nullptr);
0124 Standard_EXPORT void   FDS_getupperlower(const occ::handle<TopOpeBRepDS_HDataStructure>& HDS,
0125                                          const int                                       edgeIndex,
0126                                          const double                                    paredge,
0127                                          double&                                         p1,
0128                                          double&                                         p2);
0129 Standard_EXPORT bool   FUN_ds_getoov(const TopoDS_Shape&               v,
0130                                      const TopOpeBRepDS_DataStructure& BDS,
0131                                      TopoDS_Shape&                     oov);
0132 Standard_EXPORT bool   FUN_ds_getoov(const TopoDS_Shape&                             v,
0133                                      const occ::handle<TopOpeBRepDS_HDataStructure>& HDS,
0134                                      TopoDS_Shape&                                   oov);
0135 Standard_EXPORT bool   FUN_selectTRAINTinterference(
0136     const NCollection_List<occ::handle<TopOpeBRepDS_Interference>>& li,
0137     NCollection_List<occ::handle<TopOpeBRepDS_Interference>>&       liINTERNAL);
0138 Standard_EXPORT void FUN_ds_completeforSE1(const occ::handle<TopOpeBRepDS_HDataStructure>& HDS);
0139 Standard_EXPORT void FUN_ds_completeforSE2(const occ::handle<TopOpeBRepDS_HDataStructure>& HDS);
0140 Standard_EXPORT void FUN_ds_completeforSE3(const occ::handle<TopOpeBRepDS_HDataStructure>& HDS);
0141 Standard_EXPORT void FUN_ds_completeforSE4(const occ::handle<TopOpeBRepDS_HDataStructure>& HDS);
0142 Standard_EXPORT void FUN_ds_completeforSE5(const occ::handle<TopOpeBRepDS_HDataStructure>& HDS);
0143 Standard_EXPORT void FUN_ds_completeforSE6(const occ::handle<TopOpeBRepDS_HDataStructure>& HDS);
0144 // Standard_EXPORT void FUN_ds_completeforSE7(const occ::handle<TopOpeBRepDS_HDataStructure>& HDS);
0145 Standard_EXPORT void FUN_ds_completeforE7(const occ::handle<TopOpeBRepDS_HDataStructure>& HDS);
0146 Standard_EXPORT void FUN_ds_completeforSE8(const occ::handle<TopOpeBRepDS_HDataStructure>& HDS);
0147 // Standard_EXPORT void FUN_ds_completeFEIGb1(const occ::handle<TopOpeBRepDS_HDataStructure>& HDS);
0148 Standard_EXPORT void FUN_ds_PURGEforE9(const occ::handle<TopOpeBRepDS_HDataStructure>& HDS);
0149 Standard_EXPORT void FUN_ds_completeforSE9(const occ::handle<TopOpeBRepDS_HDataStructure>& HDS);
0150 Standard_EXPORT void FUN_ds_complete1dForSESDM(const occ::handle<TopOpeBRepDS_HDataStructure>& HDS);
0151 Standard_EXPORT void FUN_ds_redusamsha(const occ::handle<TopOpeBRepDS_HDataStructure>& HDS);
0152 Standard_EXPORT bool FUN_ds_shareG(const occ::handle<TopOpeBRepDS_HDataStructure>& HDS,
0153                                    const int                                       iF1,
0154                                    const int                                       iF2,
0155                                    const int                                       iE2,
0156                                    const TopoDS_Edge&                              Esp,
0157                                    bool&                                           shareG);
0158 Standard_EXPORT bool FUN_ds_mkTonFsdm(const occ::handle<TopOpeBRepDS_HDataStructure>& HDS,
0159                                       const int                                       iF1,
0160                                       const int                                       iF2,
0161                                       const int                                       iE2,
0162                                       const int                                       iEG,
0163                                       const double                                    paronEG,
0164                                       const TopoDS_Edge&                              Esp,
0165                                       const bool                                      pardef,
0166                                       TopOpeBRepDS_Transition&                        T);
0167 Standard_EXPORT int  FUN_ds_oriEinF(const TopOpeBRepDS_DataStructure& BDS,
0168                                     const TopoDS_Edge&                E,
0169                                     const TopoDS_Shape&               F,
0170                                     TopAbs_Orientation&               O);
0171 Standard_EXPORT void FUN_ds_FillSDMFaces(const occ::handle<TopOpeBRepDS_HDataStructure>& HDS);
0172 Standard_EXPORT void FUN_ds_addSEsdm1d(const occ::handle<TopOpeBRepDS_HDataStructure>& HDS);
0173 Standard_EXPORT int  FUN_ds_hasI2d(
0174    const int                                                       EIX,
0175    const NCollection_List<occ::handle<TopOpeBRepDS_Interference>>& LI,
0176    NCollection_List<occ::handle<TopOpeBRepDS_Interference>>&       LI2d);
0177 Standard_EXPORT void FUN_ds_PointToVertex(const occ::handle<TopOpeBRepDS_HDataStructure>& HDS);
0178 Standard_EXPORT bool FUN_ds_hasFEI(const TopOpeBRepDS_PDataStructure& pDS2d,
0179                                    const TopoDS_Shape&                F,
0180                                    const int                          GI,
0181                                    const int                          ITRA);
0182 Standard_EXPORT bool FUN_ds_ONesd(const TopOpeBRepDS_DataStructure& BDS,
0183                                   const int                         IE,
0184                                   const TopoDS_Shape&               EspON,
0185                                   int&                              IEsd);
0186 
0187 Standard_EXPORT bool FDS_stateEwithF2d(const TopOpeBRepDS_DataStructure& BDS,
0188                                        const TopoDS_Edge&                E,
0189                                        const double                      pE,
0190                                        const TopOpeBRepDS_Kind           KDS,
0191                                        const int                         GDS,
0192                                        const TopoDS_Face&                F1,
0193                                        TopOpeBRepDS_Transition&          TrmemeS);
0194 Standard_EXPORT bool FDS_parbefaft(const TopOpeBRepDS_DataStructure& BDS,
0195                                    const TopoDS_Edge&                E,
0196                                    const double                      pE,
0197                                    const double&                     pbef,
0198                                    const double&                     paft,
0199                                    const bool&                       isonboundper,
0200                                    double&                           p1,
0201                                    double&                           p2);
0202 Standard_EXPORT bool FDS_LOIinfsup(
0203   const TopOpeBRepDS_DataStructure&                               BDS,
0204   const TopoDS_Edge&                                              E,
0205   const double                                                    pE,
0206   const TopOpeBRepDS_Kind                                         KDS,
0207   const int                                                       GDS,
0208   const NCollection_List<occ::handle<TopOpeBRepDS_Interference>>& LOI,
0209   double&                                                         pbef,
0210   double&                                                         paft,
0211   bool&                                                           isonboundper);
0212 Standard_EXPORT void FUN_ds_FEIGb1TO0(occ::handle<TopOpeBRepDS_HDataStructure>&           HDS,
0213                                       const NCollection_DataMap<TopoDS_Shape,
0214                                                                 TopOpeBRepDS_ListOfShapeOn1State,
0215                                                                 TopTools_ShapeMapHasher>& MEspON);
0216 #endif