8874825d11cc10ea0e53d5179cfa979a1c1d5204
[occt.git] / src / BOPAlgo / BOPAlgo_Alerts.hxx
1 // Created on: 2017-06-26
2 // Created by: Andrey Betenev
3 // Copyright (c) 2017 OPEN CASCADE SAS
4 //
5 // This file is part of Open CASCADE Technology software library.
6 //
7 // This library is free software; you can redistribute it and/or modify it under
8 // the terms of the GNU Lesser General Public License version 2.1 as published
9 // by the Free Software Foundation, with special exception defined in the file
10 // OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
11 // distribution for complete text of the license and disclaimer of any warranty.
12 //
13 // Alternatively, this file may be used under the terms of Open CASCADE
14 // commercial license or contractual agreement.
15
16 #ifndef _BOPAlgo_Alerts_HeaderFile
17 #define _BOPAlgo_Alerts_HeaderFile
18
19 #include <TopoDS_AlertWithShape.hxx>
20
21 //! Boolean operation of given type is not allowed on the given inputs
22 DEFINE_SIMPLE_ALERT(BOPAlgo_AlertBOPNotAllowed)
23
24 //! The type of Boolean Operation is not set
25 DEFINE_SIMPLE_ALERT(BOPAlgo_AlertBOPNotSet)
26
27 //! Building of the result shape has failed
28 DEFINE_SIMPLE_ALERT(BOPAlgo_AlertBuilderFailed)
29
30 //! The intersection of the arguments has failed
31 DEFINE_SIMPLE_ALERT(BOPAlgo_AlertIntersectionFailed)
32
33 //! The type of Boolean Operation is not set
34 DEFINE_SIMPLE_ALERT(BOPAlgo_AlertMultipleArguments)
35
36 //! The Pave Filler (the intersection tool) has not been created
37 DEFINE_SIMPLE_ALERT(BOPAlgo_AlertNoFiller)
38
39 //! Null input shapes
40 DEFINE_SIMPLE_ALERT(BOPAlgo_AlertNullInputShapes)
41
42 //! Cannot connect face intersection curves
43 DEFINE_SIMPLE_ALERT(BOPAlgo_AlertPostTreatFF)
44
45 //! The BuilderSolid algorithm has failed
46 DEFINE_SIMPLE_ALERT(BOPAlgo_AlertSolidBuilderFailed)
47
48 //! There are no enough arguments to perform the operation
49 DEFINE_SIMPLE_ALERT(BOPAlgo_AlertTooFewArguments)
50
51 //! The positioning of the shapes leads to creation of the small edges without valid range
52 DEFINE_ALERT_WITH_SHAPE(BOPAlgo_AlertBadPositioning)
53
54 //! Some of the arguments are empty shapes
55 DEFINE_ALERT_WITH_SHAPE(BOPAlgo_AlertEmptyShape)
56
57 //! Some edges are very small and have such a small valid range, that they cannot be split
58 DEFINE_ALERT_WITH_SHAPE(BOPAlgo_AlertNotSplittableEdge)
59
60 //! Removal of internal boundaries among Edges has failed
61 DEFINE_ALERT_WITH_SHAPE(BOPAlgo_AlertRemovalOfIBForEdgesFailed)
62
63 //! Removal of internal boundaries among Faces has failed
64 DEFINE_ALERT_WITH_SHAPE(BOPAlgo_AlertRemovalOfIBForFacesFailed)
65
66 //! Removal of internal boundaries among the multi-dimensional shapes is not supported yet
67 DEFINE_ALERT_WITH_SHAPE(BOPAlgo_AlertRemovalOfIBForMDimShapes)
68
69 //! Removal of internal boundaries among Solids has failed
70 DEFINE_ALERT_WITH_SHAPE(BOPAlgo_AlertRemovalOfIBForSolidsFailed)
71
72 //! Some of the arguments are self-interfering shapes
73 DEFINE_ALERT_WITH_SHAPE(BOPAlgo_AlertSelfInterferingShape)
74
75 //! The positioning of the shapes leads to creation of the small edges without valid range
76 DEFINE_ALERT_WITH_SHAPE(BOPAlgo_AlertShellSplitterFailed)
77
78 //! Some edges are too small and have no valid range
79 DEFINE_ALERT_WITH_SHAPE(BOPAlgo_AlertTooSmallEdge)
80
81 //! Intersection of pair of shapes has failed
82 DEFINE_ALERT_WITH_SHAPE(BOPAlgo_AlertIntersectionOfPairOfShapesFailed)
83
84 //! Building 2D curve of edge on face has failed
85 DEFINE_ALERT_WITH_SHAPE(BOPAlgo_AlertBuildingPCurveFailed)
86
87 //! Some sub-shapes of some of the argument become connected through
88 //! other shapes and the argument became self-interfered
89 DEFINE_ALERT_WITH_SHAPE(BOPAlgo_AlertAcquiredSelfIntersection)
90
91 //! Unsupported type of input shape
92 DEFINE_ALERT_WITH_SHAPE(BOPAlgo_AlertUnsupportedType)
93
94 //! No faces have been found for removal
95 DEFINE_SIMPLE_ALERT(BOPAlgo_AlertNoFacesToRemove)
96
97 //! Unable to remove the feature
98 DEFINE_ALERT_WITH_SHAPE(BOPAlgo_AlertUnableToRemoveTheFeature)
99
100 //! The Feature Removal algorithm has failed
101 DEFINE_SIMPLE_ALERT(BOPAlgo_AlertRemoveFeaturesFailed)
102
103 //! Some of the faces passed to the Solid Builder algorithm have not been classified
104 //! and not used for solids creation
105 DEFINE_ALERT_WITH_SHAPE(BOPAlgo_AlertSolidBuilderUnusedFaces)
106
107 //! Unable to orient the shape correctly
108 DEFINE_ALERT_WITH_SHAPE(BOPAlgo_AlertUnableToOrientTheShape)
109
110 #endif // _BOPAlgo_Alerts_HeaderFile