OpenLexocad  27.1
BooleanOperationAPI.h
Go to the documentation of this file.
1 #pragma once
2 
3 
4 #include <Geom/Pln.h>
5 #include <OpenLxApp/Element.h>
6 
7 #include <vector>
8 
12 namespace OpenLxApp
13 {
14 LX_OPENLXAPP_EXPORT ErrorCode bop_cut(std::shared_ptr<Element> softElem,
15  std::shared_ptr<Element> hardElem,
16  std::vector<std::shared_ptr<Element>>& result);
17 LX_OPENLXAPP_EXPORT ErrorCode bop_cut(std::shared_ptr<Element> softElem,
18  const std::vector<std::shared_ptr<Element>>& hardElems,
19  std::vector<std::shared_ptr<Element>>& result);
20 LX_OPENLXAPP_EXPORT ErrorCode bop_cut(std::shared_ptr<Element> softElem,
21  std::shared_ptr<Element>* hardElems,
22  int hardElemsSize,
23  std::shared_ptr<Element>* result,
24  int resultSize,
25  int& nbElementsInResult);
26 LX_OPENLXAPP_EXPORT ErrorCode bop_common(std::shared_ptr<Element> firstElem,
27  std::shared_ptr<Element> secondElem,
28  std::vector<std::shared_ptr<Element>>& result);
29 LX_OPENLXAPP_EXPORT ErrorCode bop_cutWithPlane(std::shared_ptr<Element> elem, const Geom::Pln& plane, std::vector<std::shared_ptr<Element>>& result);
30 LX_OPENLXAPP_EXPORT ErrorCode bop_splitByPlane(std::shared_ptr<Element> elem, const Geom::Pln& plane, std::vector<std::shared_ptr<Element>>& result);
31 LX_OPENLXAPP_EXPORT ErrorCode bop_sectionWithPlane(std::shared_ptr<Element> elem, const Geom::Pln& plane, std::vector<std::shared_ptr<Element>>& result);
32 LX_OPENLXAPP_EXPORT ErrorCode bop_section(std::shared_ptr<Element> firstElem,
33  std::shared_ptr<Element> secondElem,
34  std::vector<std::shared_ptr<Element>>& result);
35 LX_OPENLXAPP_EXPORT ErrorCode bop_fuse(const std::vector<std::shared_ptr<Element>>& elems, std::shared_ptr<Element>& result);
36 
38 LX_OPENLXAPP_EXPORT void bop_startTimer();
39 LX_OPENLXAPP_EXPORT int bop_stopTimer();
40 LX_OPENLXAPP_EXPORT int bop_elapsedTime();
42 } // namespace OpenLxApp
LX_OPENLXAPP_EXPORT ErrorCode bop_cutWithPlane(std::shared_ptr< Element > elem, const Geom::Pln &plane, std::vector< std::shared_ptr< Element >> &result)
Definition: Pln.h:57
LX_OPENLXAPP_EXPORT ErrorCode bop_fuse(const std::vector< std::shared_ptr< Element >> &elems, std::shared_ptr< Element > &result)
LX_OPENLXAPP_EXPORT ErrorCode bop_section(std::shared_ptr< Element > firstElem, std::shared_ptr< Element > secondElem, std::vector< std::shared_ptr< Element >> &result)
ErrorCode
Definition: Globals.h:82
Definition: ActiveScript.h:7
LX_OPENLXAPP_EXPORT ErrorCode bop_sectionWithPlane(std::shared_ptr< Element > elem, const Geom::Pln &plane, std::vector< std::shared_ptr< Element >> &result)
LX_OPENLXAPP_EXPORT ErrorCode bop_common(std::shared_ptr< Element > firstElem, std::shared_ptr< Element > secondElem, std::vector< std::shared_ptr< Element >> &result)
LX_OPENLXAPP_EXPORT ErrorCode bop_splitByPlane(std::shared_ptr< Element > elem, const Geom::Pln &plane, std::vector< std::shared_ptr< Element >> &result)
LX_OPENLXAPP_EXPORT ErrorCode bop_cut(std::shared_ptr< Element > softElem, std::shared_ptr< Element > hardElem, std::vector< std::shared_ptr< Element >> &result)