Version: 9.16.0
GEOMUtils_GetInPlace.hxx
Go to the documentation of this file.
1// Copyright (C) 2007-2026 CEA, EDF, OPEN CASCADE
2//
3// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
4// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
5//
6// This library is free software; you can redistribute it and/or
7// modify it under the terms of the GNU Lesser General Public
8// License as published by the Free Software Foundation; either
9// version 2.1 of the License, or (at your option) any later version.
10//
11// This library is distributed in the hope that it will be useful,
12// but WITHOUT ANY WARRANTY; without even the implied warranty of
13// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14// Lesser General Public License for more details.
15//
16// You should have received a copy of the GNU Lesser General Public
17// License along with this library; if not, write to the Free Software
18// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
19//
20// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
21//
22// File: GEOMUtils_GetInPlace.hxx
23// Created:
24// Author: Sergey KHROMOV
25
26#ifndef _GEOMUtils_GetInPlace_HeaderFile
27#define _GEOMUtils_GetInPlace_HeaderFile
28
29#include <GEOM_Function.hxx>
30
31#include <TopTools_IndexedMapOfShape.hxx>
32#include <TopTools_ListOfShape.hxx>
33#include <gp_Vec.hxx>
34
35#include <vector>
36
37class BRepExtrema_DistShapeShape;
38class TopoDS_Face;
39class TopoDS_Shape;
40
47{
48
49public:
50
62 Standard_EXPORT static Standard_Integer GetInPlaceOld
63 (const TopoDS_Shape &theWhere,
64 const TopoDS_Shape &theWhat,
65 TopTools_ListOfShape &theShapesInPlace);
66
72 Standard_EXPORT static Standard_Boolean IsShapeHasHistory
73 (const Handle(GEOM_Function) &theWhereFunction,
74 const TopoDS_Shape &theWhat);
75
81 Standard_EXPORT static Standard_Boolean GetInPlaceByHistory
82 (const Handle(GEOM_Function) &theWhereFunction,
83 const TopTools_IndexedMapOfShape &theWhereIndices,
84 const TopoDS_Shape &theWhat,
85 TopTools_ListOfShape &theShapesInPlace);
86
92 Standard_EXPORT static Standard_Boolean GetInPlaceMap
93 (const Handle(GEOM_Function) &theWhereFunction,
94 const TopoDS_Shape &theWhat,
95 std::vector< std::vector< int > > &theResVec);
96
97protected:
98
102 static gp_Vec GetNormal(const TopoDS_Face &theFace,
103 const BRepExtrema_DistShapeShape &theExtrema);
104
109 static void GetShapeProperties(const TopoDS_Shape &theShape,
110 Standard_Real theTab[],
111 gp_Pnt &theVertex);
112
113};
114
115
116
117#endif
Handle(TColStd_HSequenceOfTransient) AdvancedEngine_IOperations
Create a T-shape object with specified caracteristics for the main and the incident pipes (radius,...
Definition: AdvancedEngine_IOperations.cxx:1907
This is an API class for two GetInPlace algorithms:
Definition: GEOMUtils_GetInPlace.hxx:47
static Standard_EXPORT Standard_Boolean GetInPlaceMap(const Handle(GEOM_Function) &theWhereFunction, const TopoDS_Shape &theWhat, std::vector< std::vector< int > > &theResVec)
GetInPlaceMap method implementation.
Definition: GEOMUtils_GetInPlace.cxx:458
static Standard_EXPORT Standard_Boolean IsShapeHasHistory(const Handle(GEOM_Function) &theWhereFunction, const TopoDS_Shape &theWhat)
IsShapeHasHistory method implementation.
Definition: GEOMUtils_GetInPlace.cxx:248
static void GetShapeProperties(const TopoDS_Shape &theShape, Standard_Real theTab[], gp_Pnt &theVertex)
Definition: GEOMUtils_GetInPlace.cxx:211
static Standard_EXPORT Standard_Boolean GetInPlaceByHistory(const Handle(GEOM_Function) &theWhereFunction, const TopTools_IndexedMapOfShape &theWhereIndices, const TopoDS_Shape &theWhat, TopTools_ListOfShape &theShapesInPlace)
GetInPlaceByHistory method implementation.
Definition: GEOMUtils_GetInPlace.cxx:330
static Standard_EXPORT Standard_Integer GetInPlaceOld(const TopoDS_Shape &theWhere, const TopoDS_Shape &theWhat, TopTools_ListOfShape &theShapesInPlace)
Old implementation of GetInPlace algorithm. This method searches among sub shapes of the shape theWhe...
Definition: GEOMUtils_GetInPlace.cxx:55
static gp_Vec GetNormal(const TopoDS_Face &theFace, const BRepExtrema_DistShapeShape &theExtrema)
Return normal to face at extrema point.
Definition: GEOMUtils_GetInPlace.cxx:170