CFx SDK Documentation 2026 SP0
Loading...
Searching...
No Matches
IfcModelOps.h
Go to the documentation of this file.
1
2// Copyright (C) 2002-2024, Open Design Alliance (the "Alliance").
3// All rights reserved.
4//
5// This software and its documentation and related materials are owned by
6// the Alliance. The software may only be incorporated into application
7// programs owned by members of the Alliance, subject to a signed
8// Membership Agreement and Supplemental Software License Agreement with the
9// Alliance. The structure and organization of this software are the valuable
10// trade secrets of the Alliance and its suppliers. The software is also
11// protected by copyright law and international treaty provisions. Application
12// programs incorporating this software must include the following statement
13// with their copyright notices:
14//
15// This application incorporates Open Design Alliance software pursuant to a license
16// agreement with Open Design Alliance.
17// Open Design Alliance Copyright (C) 2002-2024 by Open Design Alliance.
18// All rights reserved.
19//
20// By use of this software, its documentation or related materials, you
21// acknowledge and accept the above terms.
23
24#ifndef _IFC_MODEL_OPS_H
25#define _IFC_MODEL_OPS_H
26
27#include "IfcBuildOptions.h"
28
29#include "IfcModel.h"
30#include "IfcEntity.h"
31
32#include "daiObjectId.h"
33#include "daiObjectSDAI.h"
34
35#include "daiUtils/daiModelProcessor.h"
36
37namespace OdIfc {
41 namespace ModelOps {
42
47 OdResult IFCCORE_EXPORT removeRepresentationFrom(const OdDAIObjectId& product);
48
53 OdResult IFCCORE_EXPORT removePlacementFrom(const OdDAIObjectId& product);
54
60 OdResult IFCCORE_EXPORT removeFromSpatialStructure(const OdDAIObjectId& productToRemove);
61
67 OdResult IFCCORE_EXPORT removeFromRelAggregates(const OdDAIObjectId& ifcSpatialStructureElement);
68
74 OdDAIObjectId IFCCORE_EXPORT cloneProductRepresentation(const OdDAIObjectId& product);
75
81 OdDAIObjectId cloneIfcProduct(const OdDAIObjectId& productToClone);
82
88 OdDAIObjectId IFCCORE_EXPORT cloneWithRelAggregates(const OdDAIObjectId& ifcSpatialStructureElement);
89
96 OdDAIObjectId IFCCORE_EXPORT cloneWithSpatialStructure(const OdDAIObjectId& productToClone, bool toExistingSpatialStructure = false);
97
105 OdDAIObjectId cloneContainedInSpatialStructure(const OdDAIObjectId& sourceProduct, const OdDAIObjectId& targetProduct, const OdDAI::ModelPtr targetModel = OdDAI::ModelPtr());
106
114 OdDAIObjectId cloneContainedInRelAggregate(const OdDAIObjectId& sourceProduct, const OdDAIObjectId& targetProduct, const OdDAI::ModelPtr targetModel = OdDAI::ModelPtr());
115
122 OdDAIObjectId cloneProduct(const OdDAIObjectId& sourceProduct, const OdDAI::ModelPtr targetModel = OdDAI::ModelPtr());
123
130 OdDAIObjectId cloneProductShallow(const OdDAIObjectId& sourceProduct, const OdDAI::ModelPtr targetModel = OdDAI::ModelPtr());
131
138 void prepareContext(const OdDAI::ModelPtr sourceModel, const OdDAI::ModelPtr targetModel, const OdDAI::ModelOps::ModelCtxPtr ctx);
139
140
147 void prepareUnits(const OdDAI::ModelPtr sourceModel, const OdDAI::ModelPtr targetModel, const OdDAI::ModelOps::ModelCtxPtr ctx);
148
149
155 void IFCCORE_EXPORT preparePathsSpatial(const OdDAIObjectId& targetProduct, const OdDAI::ModelOps::ModelCtxPtr ctx);
156
162 void IFCCORE_EXPORT preparePathsAggregates(const OdDAIObjectId& targetProduct, const OdDAI::ModelOps::ModelCtxPtr ctx);
163
169 void IFCCORE_EXPORT preparePaths(const OdDAIObjectId& targetProduct, const OdDAI::ModelOps::ModelCtxPtr ctx);
170
178 OdDAIObjectId IFCCORE_EXPORT ifcCloneTo(const OdDAIObjectId& sourceProduct, const OdDAIObjectId& targetProduct, const OdDAI::ModelPtr targetModel = OdDAI::ModelPtr());
179
186 OdDAIObjectId IFCCORE_EXPORT ifcClone(const OdDAIObjectId& sourceProduct, const OdDAI::ModelPtr targetModel = OdDAI::ModelPtr());
187
199
207 OdDAIObjectId IFCCORE_EXPORT ifcCombineModels(const OdDAI::ModelPtr sourceModel, const OdDAI::ModelPtr targetModel, MergeLevel level = MergeLevel::Building);
208
215 void IFCCORE_EXPORT extractUnits(const OdDAI::ModelPtr model, const OdAnsiStringArray& unitTypes, std::map<OdAnsiString, OdAnsiString>& unitPrefixes);
216
217 }
218}
219
220
221#endif // _IFC_MODEL_OPS_H
#define IFCCORE_EXPORT
OdResult
Definition OdResult.h:29
GLint level
Definition gles2_ext.h:110
OdDAIObjectId IFCCORE_EXPORT ifcCloneTo(const OdDAIObjectId &sourceProduct, const OdDAIObjectId &targetProduct, const OdDAI::ModelPtr targetModel=OdDAI::ModelPtr())
OdResult IFCCORE_EXPORT removeFromRelAggregates(const OdDAIObjectId &ifcSpatialStructureElement)
void prepareUnits(const OdDAI::ModelPtr sourceModel, const OdDAI::ModelPtr targetModel, const OdDAI::ModelOps::ModelCtxPtr ctx)
OdDAIObjectId IFCCORE_EXPORT cloneProductRepresentation(const OdDAIObjectId &product)
void IFCCORE_EXPORT preparePaths(const OdDAIObjectId &targetProduct, const OdDAI::ModelOps::ModelCtxPtr ctx)
void prepareContext(const OdDAI::ModelPtr sourceModel, const OdDAI::ModelPtr targetModel, const OdDAI::ModelOps::ModelCtxPtr ctx)
OdDAIObjectId cloneContainedInRelAggregate(const OdDAIObjectId &sourceProduct, const OdDAIObjectId &targetProduct, const OdDAI::ModelPtr targetModel=OdDAI::ModelPtr())
OdDAIObjectId cloneIfcProduct(const OdDAIObjectId &productToClone)
OdDAIObjectId IFCCORE_EXPORT cloneWithSpatialStructure(const OdDAIObjectId &productToClone, bool toExistingSpatialStructure=false)
OdDAIObjectId IFCCORE_EXPORT ifcClone(const OdDAIObjectId &sourceProduct, const OdDAI::ModelPtr targetModel=OdDAI::ModelPtr())
OdDAIObjectId IFCCORE_EXPORT ifcCombineModels(const OdDAI::ModelPtr sourceModel, const OdDAI::ModelPtr targetModel, MergeLevel level=MergeLevel::Building)
OdDAIObjectId cloneProductShallow(const OdDAIObjectId &sourceProduct, const OdDAI::ModelPtr targetModel=OdDAI::ModelPtr())
void IFCCORE_EXPORT extractUnits(const OdDAI::ModelPtr model, const OdAnsiStringArray &unitTypes, std::map< OdAnsiString, OdAnsiString > &unitPrefixes)
void IFCCORE_EXPORT preparePathsAggregates(const OdDAIObjectId &targetProduct, const OdDAI::ModelOps::ModelCtxPtr ctx)
OdResult IFCCORE_EXPORT removeRepresentationFrom(const OdDAIObjectId &product)
OdDAIObjectId cloneProduct(const OdDAIObjectId &sourceProduct, const OdDAI::ModelPtr targetModel=OdDAI::ModelPtr())
OdResult IFCCORE_EXPORT removePlacementFrom(const OdDAIObjectId &product)
OdDAIObjectId IFCCORE_EXPORT cloneWithRelAggregates(const OdDAIObjectId &ifcSpatialStructureElement)
OdDAIObjectId cloneContainedInSpatialStructure(const OdDAIObjectId &sourceProduct, const OdDAIObjectId &targetProduct, const OdDAI::ModelPtr targetModel=OdDAI::ModelPtr())
void IFCCORE_EXPORT preparePathsSpatial(const OdDAIObjectId &targetProduct, const OdDAI::ModelOps::ModelCtxPtr ctx)
OdResult IFCCORE_EXPORT removeFromSpatialStructure(const OdDAIObjectId &productToRemove)