OpenLexocad  28.0
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
OpenLxApp
Definition: ActiveScript.h:10
Element.h
OpenLxApp::bop_sectionWithPlane
LX_OPENLXAPP_EXPORT ErrorCode bop_sectionWithPlane(std::shared_ptr< Element > elem, const Geom::Pln &plane, std::vector< std::shared_ptr< Element >> &result)
OpenLxApp::bop_common
LX_OPENLXAPP_EXPORT ErrorCode bop_common(std::shared_ptr< Element > firstElem, std::shared_ptr< Element > secondElem, std::vector< std::shared_ptr< Element >> &result)
OpenLxApp::bop_cut
LX_OPENLXAPP_EXPORT ErrorCode bop_cut(std::shared_ptr< Element > softElem, std::shared_ptr< Element > hardElem, std::vector< std::shared_ptr< Element >> &result)
Geom::Pln
Definition: Pln.h:52
OpenLxApp::bop_splitByPlane
LX_OPENLXAPP_EXPORT ErrorCode bop_splitByPlane(std::shared_ptr< Element > elem, const Geom::Pln &plane, std::vector< std::shared_ptr< Element >> &result)
OpenLxApp::bop_cutWithPlane
LX_OPENLXAPP_EXPORT ErrorCode bop_cutWithPlane(std::shared_ptr< Element > elem, const Geom::Pln &plane, std::vector< std::shared_ptr< Element >> &result)
OpenLxApp::bop_fuse
LX_OPENLXAPP_EXPORT ErrorCode bop_fuse(const std::vector< std::shared_ptr< Element >> &elems, std::shared_ptr< Element > &result)
Pln.h
OpenLxApp::bop_section
LX_OPENLXAPP_EXPORT ErrorCode bop_section(std::shared_ptr< Element > firstElem, std::shared_ptr< Element > secondElem, std::vector< std::shared_ptr< Element >> &result)
OpenLxApp::ErrorCode
ErrorCode
Definition: Globals.h:83