API Reference > OdDb Classes > OdDbSurface Class > OdDbSurface Methods > booleanIntersect Method > OdDbSurface::booleanIntersect Method (OdDbSurface*, OdDbEntityPtrArray&)
OdDbSurface::booleanIntersect Method (OdDbSurface*, OdDbEntityPtrArray&)
Syntax
C++
virtual OdResult booleanIntersect(const OdDbSurface* pSurface, OdDbEntityPtrArray& intersectionEntities);
Parameters 
Description 
const OdDbSurface* pSurface 
[in] Pointer to the other surface to be intersected with the surface.  
OdDbEntityPtrArray& intersectionEntities 
[out] Reference to the entity array for storing the results of the intersection operation. The resulting array can contain entities of the following types: one OdDbSurface or one or more OdDbLine, OdDbCircle, OdDbArc, OdDbEllipse, OdDbSpline and OdDbPoint. 

eOk if the intersection operation is successfully performed or an appropriate error code otherwise.

Performs a Boolean intersection operation for two surfaces: this one and another specified surface. Entities representing the intersections between two surfaces are appended to an array. 

 

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

pSurface is not changed unlike booleanOper. 

If the intersection of the surfaces is not a surface, all intersection curves and points are stored in the intersectionEntities array, and this surface is not changed. 

If the intersection of the surfaces is a surface, no intersection curves or points are retrieved. 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. 

Resulting entities are not included in the database, so the caller is responsible for the correct handling of the memory pointed to with the resulting array's items. 

If the surfaces don't intersect then eNoIntersections is returned and this surface is not changed. 

If the intersection operation fails, this surface is not changed.

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