MainPage   Related pages 
ProjectAPI.h
1 
2 //
3 // $Id: ProjectAPI.h 6275 2022-05-12 09:32:51Z ansgar.horstmann $
4 // (c) ceapoint aec technologies GmbH
5 //
6 
7 
8 #pragma once
9 
10 
11 #include <domainBim/AutomationAPI.h>
12 #include <xqtgl/xQGLView.h>
13 
14 
15 namespace desiteCore
16 {
17 
18  class NavigatorProject;
19 
20  enum eElementVisibilityMode {
21  evMode_show,
22  evMode_showExclusively,
23  evMode_hide
24  };
25 
40  {
41  Q_OBJECT
42 
43  public:
44 
45 
47  explicit ProjectAPI(NavigatorProject* np, QObject* parent = 0);
48  virtual ~ProjectAPI();
50 
51 
52  public slots:
53 
67  int message(QString);
68 
77  bool sendRemoteMessage(QString message);
78 
79 
80 #pragma region TOOLS
81 
93  void startEXE(QString prg, QString args);
94 
100  void showOnScreenKeyboard();
101 
117  void openLink( QString url, bool useDesktopService );
118 
141  QString showOpenFileDialog( QString caption = "", QString directory = "", QString filter = "" );
142 
157  QString showSaveFileDialog( QString caption = "", QString directory = "", QString filter = "" );
158 
159 
161 #pragma endregion
162 
163 
164 #pragma region PROJECT
165 
174  void openProject( QString url, bool useSessionData );
175 
185  int saveProject();
186 
200  int saveCPA( QString cpa_filename, QString pack_bookmark );
201 
202  // ah: hidden until documented and properly implemented
203  // since, supported domains, error codes
205  int saveDomain( QString domainName );
221  QVariant importModel( QString filename, bool showDialog = true, QVariantMap options = QVariantMap() );
222 
244  QString exportBCF(QStringList sourceIds, QString targetPath, QString targetFileBaseName, QString bcfVersion = "2.1");
245 
255  bool importBCF(QString sourceFilePath);
256 
272  int redirectDocument( QString modelId, QString newSourceFilePath );
273 
275 #pragma endregion
276 
277 
278 #pragma region FILTER OBJECTS
279 
285  void filterElements(QString pName, QString pType, QString pattern, bool checkInh = true, QString domainCombination = "geometry" );
286 
288 #pragma endregion
289 
290 
291 #pragma region MATERIALS
292 
304  int showColorSchema(QString name);
305 
307 #pragma endregion
308 
309 
310 #pragma region VISIBILITY, SELECTION
311 
318  void showAll(bool repaint, QString domainCombination = "geometry" );
319 
326  void hideAll(bool repaint, QString domainCombination = "geometry" );
327 
336  void showElements( QString idList, bool includeBlocked = false, QString domainCombination = "geometry" );
337 
345  void showElementsOnly( QString idList, QString domainCombination = "geometry");
346 
355  void hideElements( QString idList, bool ignoreObjectLocking = false, QString domainCombination = "geometry" );
356 
365  void clearSelection( bool repaint, QString domainCombination = "geometry" );
366 
371  void selectVisible();
372 
377  void selectVisibleGeometric();
378 
387  void selectElements( QString idList, bool flag, QString domainCombination = "geometry" );
388 
397  void zoomToSelected();
398 
407  void zoomToVisible();
408 
419  void zoomToObjects( QString objIDs );
420 
425  void zoomToAllDocuments();
426 
432 
437  void zoomToVisibleDocuments();
438 
446  void zoomToDocuments( QStringList idList );
447 
452  void zoomToAllResources();
453 
459 
463  void zoomToVisibleResources();
464 
469  void zoomToResources( QStringList idList );
470 
475  void zoomToLocationGK( double rw, double hw, double h);
476 
481  void zoomToLocationGps( double lat, double lon );
482 
487  void moveToLocationGps( double lat, double lon );
488 
493  void zoomTopView();
494 
506  QString getAll( QString domainFilter = "geometry" );
507 
519  QStringList getAllElements( QString domainFilter = "geometry" );
520 
532  QString getVisible( QString domainFilter = "geometry" );
533 
545  QStringList getVisibleElements( QString domainFilter = "geometry" );
546 
556  bool hasVisible( QString domainFilter = "all" );
557 
566  int countVisible( QString domainFilter = "geometry" );
567 
579  QString getSelected( QString domainFilter = "geometry" );
580 
592  QStringList getSelectedElements( QString domainFilter = "geometry" );
593 
594 
604  bool hasSelected( QString domainFilter = "all" );
605 
615  int countSelected( QString domainFilter = "geometry" );
616 
626  void setVisualisationMode(int mode, bool repaint = true );
627 
631  int getVisualisationMode();
632 
649  QVariantMap showElementsOOBBSide( QString IDList, double prec = 1.e-2 );
650 
661  QVariantMap showElementsOOBBTop( QString IDList, double prec = 1.e-2 );
662 
673  QVariantMap showElementsOOBBFront( QString idList, double prec = 1.e-2 );
674 
684  void showDimensionsPainter( bool showAABB, bool showOOBB );
685 
690  void hideDimensionsPainter();
691 
696  void repaint3DView();
697 
699 #pragma endregion
700 
701 
702 #pragma region VIEWPOINTS
703 
715  int showViewpoint(QString name);
716 
727  int showViewpointByID(QString id);
728 
752  QVariantMap getViewpointList();
753 
774  QVariantMap getViewpointMetadata( QString id );
775 
781  void addToViewPoint( QString vpID, QString objIdList );
782 
788  void removeFromViewPoint( QString vpID, QString objIdList );
789 
803  QString saveViewpoint(QString name, bool saveVisible = true, bool saveSelected = false, QString desc = QString(), bool saveRedlining = false, bool copyMeasureItems = false );
804 
809  bool deleteViewpointByID( QString id );
810 
815  bool deleteAllViewpoints();
816 
844  QString getCurrentViewAsImage();
845 
861  bool saveCurrentViewToFile( QString filename );
862 
943  QVariantMap getViewpointAsJsonObject( const QString& vpID, const QStringList& blacklist = QStringList() );
944 
951  QString createViewpointFromJsonObject( const QVariantMap& vm );
952 
959  QVariantMap getViewpointObjectDataAsJsonObject( const QString& vpID );
960 
970  int setViewpointObjectDataFromJsonObject( const QString& vpID, const QVariantMap& vm );
971 
978  QVariantMap getViewpointMeasureItemsAsJsonObject( const QString& vpID );
979 
989  int addMeasureItemsToViewpointFromJsonObject( const QString& vpID, const QVariantMap& vm );
990 
997  void applyViewByJsonObject( const QVariantMap& vm );
998 
1003  void applyMeasureItemsFromJsonObject( const QVariantMap& vm );
1004 
1006 #pragma endregion
1007 
1008 
1009 #pragma region CAMERA / LIGHT SOURCES
1010 
1038  QVariantMap getClipping(int i);
1039 
1052  void setClipping(int i, QVariantMap clp);
1053 
1077  QVariantMap getCamera();
1078 
1111  QVariantMap getCameraAsJsonObject();
1112 
1139  void setCamera(QVariantMap cam);
1140 
1149  void setCameraFromJsonObject(QVariantMap camJSON);
1150 
1173  QList<QVariant> getLightSources();
1174 
1180  void setLightSources( QList<QVariant> lList );
1181 
1222  QVariantMap getVisualizationOptions();
1223 
1238  void setVisualizationOptions(QVariantMap opt);
1239 
1288  QVariantMap getPainterOptions();
1289 
1304  void setPainterOptions(QVariantMap opt);
1305 
1307 #pragma endregion
1308 
1309 
1310 #pragma region OBJECT TOOLTIPS, DOCUMENTS TOOLTIPS, RESOURCES TOOLTIPS
1311 
1320  int activateObjTooltip(QString name);
1321 
1326  void deactivateObjTooltip();
1327 
1333  QString getActiveTooltipName() const;
1334 
1338  void setDocumentsTooltipsVisible( bool v );
1339 
1344 
1349  void setResourcesTooltipsVisible( bool v );
1350 
1356 
1357 
1359 #pragma endregion
1360 
1361 
1362 #pragma region _4D_SIMULATION
1363 
1365 
1370  void set4dIsActive( bool active );
1371 
1376  bool get4dIsActive();
1377 
1383  bool set4dDateTime( QDateTime dt );
1384 
1389  QDateTime get4dDateTime();
1390 
1416  QVariantMap get4dOptions();
1417 
1426  void set4dOptions( QVariantMap opt );
1427 
1432  QDateTime get4dProjectStart();
1433 
1438  QDateTime get4dProjectFinish();
1439 
1444  QStringList get4dActiveTaskList( QDateTime dt, bool linkedToObjectsOnly = false );
1445 
1450  QStringList get4dActiveTaskListByInterval( QDateTime dtStart, QDateTime dtEnd, bool linkedToObjectsOnly = false );
1451 
1456  QStringList get4dFinishedTaskList( QDateTime, bool linkedToObjectsOnly = false );
1457 
1462  QStringList get4dProspectiveTaskList( QDateTime, bool linkedToObjectsOnly = false );
1463 
1468  QString get4dTaskColor( QString taskID, QDateTime dt, QString defaultColorName = "#000" );
1469 
1471 
1472 #pragma endregion
1473 
1474 
1475 #pragma region BUILDING STRUCTURE
1476 
1488  void setBsPlanUnderlayActive(bool active);
1489 
1495  bool getBsPlanUnderlayActive();
1496 
1498 #pragma endregion
1499 
1500 
1501 #pragma region NAVIGATION MODES
1502 
1504 
1516  QString getNavigationMode();
1517 
1530  void setNavigationMode( QString mode, QString pinModeContainerID = QString() );
1531 
1532 
1540  QVariantMap getHandlerMode();
1541 
1637  bool setHandlerMode( QVariantMap handlerInfo );
1638 
1643  QStringList getCreatedPins();
1644 
1646 #pragma endregion
1647 
1648 
1649 #pragma region PICK POINTS, MEASURE
1650 
1669  QVariantMap getPickedPoint();
1670 
1699  QVariantMap getAllPickedPoints();
1700 
1717  QVariantMap getPickedPointGPS();
1718 
1736  QVariantMap getPickedPointGK();
1737 
1790  QVariantMap getPickedFaces();
1791 
1796  void clearMeasureItems();
1797 
1799 #pragma endregion
1800 
1801 
1802 #pragma region CLASH_DETECTION
1803 
1809  void showClashList( QString clashIdList );
1810 
1812 #pragma endregion
1813 
1814 
1815 #pragma region WEBFORMS
1816 
1840  QVariantMap getWebFormLocations();
1841 
1846  void createWebFormBookmark(QString url, QString name);
1847 
1856  int removeWebFormBookmark(QString url );
1857 
1859 #pragma endregion
1860 
1861 
1862 //#pragma region SURVEYPOINTS
1863 // ///@{ \name SURVEY POINTS
1864 //
1865 // /*
1866 // Import survey points from file and create model with object points.
1867 //
1868 // \param fileName Full file name with path
1869 // \param propName Name of property which will store value of survey point
1870 // \param delimiter Column delimiter (default: Tab)
1871 //
1872 // \return number of survey points imported if import was successful<br>
1873 // -1 file not found / file could not be opened<br>
1874 // -2 model could not be created
1875 // \since 2.2.1, 21 jun 2018, sl
1876 // */
1877 // int importSurveyPoints( QString fileName, QString propName = "spValue", QChar delimiter = '\t' );
1878 //
1879 // ///@}
1880 //#pragma endregion
1881 
1882  private:
1883 
1884  void _setElementVisibility( const QString& idListStr, eElementVisibilityMode mode, const QString& domainCombination = "geometry" );
1885 
1886  void zoomToDocumentsByList( QList<model::Element*> eleList );
1887  void zoomToResourcesByList( QList<model::Element*> eleList );
1888 
1892  NavigatorProject* getNavigatorProject();
1893 
1894  int _isPainting_;
1895 
1896  xqtgl::xQGLView* _redliningView;
1897 
1898  };
1899 
1900 }
void filterElements(QString pName, QString pType, QString pattern, bool checkInh=true, QString domainCombination="geometry")
QStringList getCreatedPins()
QStringList get4dActiveTaskListByInterval(QDateTime dtStart, QDateTime dtEnd, bool linkedToObjectsOnly=false)
QString exportBCF(QStringList sourceIds, QString targetPath, QString targetFileBaseName, QString bcfVersion="2.1")
QVariantMap getViewpointAsJsonObject(const QString &vpID, const QStringList &blacklist=QStringList())
void showElementsOnly(QString idList, QString domainCombination="geometry")
QString getAll(QString domainFilter="geometry")
void setCamera(QVariantMap cam)
void zoomToResources(QStringList idList)
QString showSaveFileDialog(QString caption="", QString directory="", QString filter="")
QVariantMap getClipping(int i)
int addMeasureItemsToViewpointFromJsonObject(const QString &vpID, const QVariantMap &vm)
void setNavigationMode(QString mode, QString pinModeContainerID=QString())
void showDimensionsPainter(bool showAABB, bool showOOBB)
bool getDocumentsTooltipsVisible()
QStringList getAllElements(QString domainFilter="geometry")
void setVisualisationMode(int mode, bool repaint=true)
void moveToLocationGps(double lat, double lon)
QVariantMap getPickedPoint()
void hideElements(QString idList, bool ignoreObjectLocking=false, QString domainCombination="geometry")
QStringList get4dActiveTaskList(QDateTime dt, bool linkedToObjectsOnly=false)
void set4dIsActive(bool active)
int showViewpoint(QString name)
void addToViewPoint(QString vpID, QString objIdList)
int setViewpointObjectDataFromJsonObject(const QString &vpID, const QVariantMap &vm)
QString saveViewpoint(QString name, bool saveVisible=true, bool saveSelected=false, QString desc=QString(), bool saveRedlining=false, bool copyMeasureItems=false)
void selectElements(QString idList, bool flag, QString domainCombination="geometry")
Definition: ProjectAPI.h:39
QDateTime get4dDateTime()
int showViewpointByID(QString id)
void showAll(bool repaint, QString domainCombination="geometry")
bool hasVisible(QString domainFilter="all")
QVariantMap getVisualizationOptions()
QVariantMap showElementsOOBBSide(QString IDList, double prec=1.e-2)
void setDocumentsTooltipsVisible(bool v)
QVariantMap showElementsOOBBTop(QString IDList, double prec=1.e-2)
QVariantMap getPickedFaces()
QStringList get4dProspectiveTaskList(QDateTime, bool linkedToObjectsOnly=false)
QStringList getSelectedElements(QString domainFilter="geometry")
void setLightSources(QList< QVariant > lList)
QVariantMap getViewpointMetadata(QString id)
void setClipping(int i, QVariantMap clp)
QString getCurrentViewAsImage()
int removeWebFormBookmark(QString url)
QList< QVariant > getLightSources()
bool saveCurrentViewToFile(QString filename)
QString getSelected(QString domainFilter="geometry")
void removeFromViewPoint(QString vpID, QString objIdList)
QStringList getVisibleElements(QString domainFilter="geometry")
QVariantMap getPickedPointGPS()
QString getActiveTooltipName() const
bool hasSelected(QString domainFilter="all")
void zoomToLocationGK(double rw, double hw, double h)
void openLink(QString url, bool useDesktopService)
QVariantMap getCameraAsJsonObject()
QVariantMap getViewpointMeasureItemsAsJsonObject(const QString &vpID)
QVariantMap get4dOptions()
QVariantMap getPainterOptions()
int showColorSchema(QString name)
void setCameraFromJsonObject(QVariantMap camJSON)
void openProject(QString url, bool useSessionData)
QVariantMap getHandlerMode()
bool getResourcesTooltipsVisible()
QString createViewpointFromJsonObject(const QVariantMap &vm)
QVariantMap getCamera()
QString get4dTaskColor(QString taskID, QDateTime dt, QString defaultColorName="#000")
Definition: AutomationAPI.h:30
bool deleteViewpointByID(QString id)
bool setHandlerMode(QVariantMap handlerInfo)
void zoomToObjects(QString objIDs)
QVariantMap getPickedPointGK()
void zoomToLocationGps(double lat, double lon)
QVariantMap getWebFormLocations()
QString showOpenFileDialog(QString caption="", QString directory="", QString filter="")
int activateObjTooltip(QString name)
void showClashList(QString clashIdList)
void hideAll(bool repaint, QString domainCombination="geometry")
QVariantMap showElementsOOBBFront(QString idList, double prec=1.e-2)
QVariant importModel(QString filename, bool showDialog=true, QVariantMap options=QVariantMap())
Definition: ProjectAPI.h:15
QDateTime get4dProjectFinish()
bool importBCF(QString sourceFilePath)
void showElements(QString idList, bool includeBlocked=false, QString domainCombination="geometry")
void zoomToDocuments(QStringList idList)
QVariantMap getAllPickedPoints()
void setVisualizationOptions(QVariantMap opt)
int countSelected(QString domainFilter="geometry")
int countVisible(QString domainFilter="geometry")
int saveCPA(QString cpa_filename, QString pack_bookmark)
QStringList get4dFinishedTaskList(QDateTime, bool linkedToObjectsOnly=false)
QVariantMap getViewpointObjectDataAsJsonObject(const QString &vpID)
bool set4dDateTime(QDateTime dt)
void startEXE(QString prg, QString args)
QString getVisible(QString domainFilter="geometry")
void createWebFormBookmark(QString url, QString name)
void setBsPlanUnderlayActive(bool active)
QVariantMap getViewpointList()
void setResourcesTooltipsVisible(bool v)
bool sendRemoteMessage(QString message)
void applyViewByJsonObject(const QVariantMap &vm)
void clearSelection(bool repaint, QString domainCombination="geometry")
void set4dOptions(QVariantMap opt)
int redirectDocument(QString modelId, QString newSourceFilePath)
void setPainterOptions(QVariantMap opt)
void applyMeasureItemsFromJsonObject(const QVariantMap &vm)
QDateTime get4dProjectStart()

Created: Tue Dec 13 2022 13:14:00