API Reference > OdDb Classes > OdDbSurface Class > OdDbSurface Methods > OdDbSurface::booleanUnion Method
OdDbSurface::booleanUnion Method
Syntax
C++
virtual OdResult booleanUnion(const OdDbSurface* pSurface, OdDbSurfacePtr& pNewSurface);
Parameters 
Description 
const OdDbSurface* pSurface 
[in] Pointer to the other surface to be united with this surface.  
OdDbSurfacePtr& pNewSurface 
[out] Pointer to a new surface that represents the union operation result. 

eOk if the union operation is successfully performed or an appropriate error code otherwise. If the union operation fails, NULL is returned as a value of pNewSurface.

Performs a Boolean union operation with two surfaces: this one and another specified surface. 

 

Implemented for ModelerGeometry and Spatial Modeler, not supported in the C3D modeler. 

pSurface is not changed unlike booleanOper. 

If this surface is not derived from OdDbSurface or surfaces are coplanar OdDbPlaneSurface-s, the resulting surface is stored in this surface. Otherwise, this surface is not changed and the result is stored in intersectionEntities. 

The resulting surface is not included in the database, so the caller is responsible for the correct handling of the memory pointed to with pNewSurface. 

If the resulting surface is empty, i.e., both surfaces are empty, then eNoIntersections is returned, NULL is returned as a value of pNewSurface and this surface is not changed. 

If the union operation fails, NULL is returned as a value of pNewSurface and this surface is not changed.

Copyright © 2002–2021. Open Design Alliance. All rights reserved.