CFx SDK Documentation 2024 SP0
Loading...
Searching...
No Matches
DbRegion.h
Go to the documentation of this file.
1
2// Copyright (C) 2002-2022, 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-2022 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
25
26
27#ifndef GEOMENT_DBREGION_H
28#define GEOMENT_DBREGION_H
29
30#include "TD_PackPush.h"
31#include "ModelerDefs.h"
32#include "DbEntity.h"
33#include "DbSubentId.h"
34#include "DwgDeclareMembers.h"
35
36class OdBrBrep;
38namespace GeMesh { class OdGeTrMesh; }
40
50{
51public:
52 //DOM-IGNORE-BEGIN
54 //DOM-IGNORE-END
55
60
70 OdStreamBuf* pStreamBuf,
71 AfTypeVer typeVer = kAfTypeVerAny) const;
72
86 OdStreamBuf* pStreamBuf,
87 AfTypeVer *typeVer = 0);
88
94 void brep(
95 OdBrBrep& brep);
96
97 bool getFaceMesh(GeMesh::OdGeTrMesh& mesh, OdGsMarker iFace, const wrTriangulationParams& triangulationParams) const;
98
106 bool isNull() const;
107
126 const OdRxObjectPtrArray& curveSegments,
127 OdRxObjectPtrArray& regions );
128
137 OdGeVector3d& normal) const;
138
144 virtual bool isPlanar() const;
145
165 OdGePlane& plane,
166 OdDb::Planarity& planarity) const;
167
169
171 OdDbDwgFiler* pFiler);
172
173 virtual void dwgOutFields(
174 OdDbDwgFiler* pFiler) const;
175
177 OdDbDxfFiler* pFiler);
178
179 virtual void dxfOutFields(
180 OdDbDxfFiler* pFiler) const;
181
182 virtual bool subWorldDraw(
183 OdGiWorldDraw* pWd) const;
184
186 void* pClsid) const;
187
190 OdDbObjectId& replaceId,
191 bool& exchangeXData);
192
200 virtual OdResult setBody(const void* pGeometry);
201
205 virtual void* body() const;
206
208 OdRxObjectPtrArray& entitySet) const;
209
211 const OdGeMatrix3d& xfm );
212
223 virtual void saveAs(
224 OdGiWorldDraw* pWd,
225 OdDb::DwgVersion ver ) const;
226
243 virtual OdResult booleanOper(OdDb::BoolOperType operation, OdDbRegion* otherRegion);
244
257 virtual OdResult getArea(double& regionArea) const;
258
271 virtual OdResult getPerimeter(double&) const;
272
303 virtual OdResult getAreaProp( const OdGePoint3d& origin, const OdGeVector3d& xAxis,
304 const OdGeVector3d& yAxis, double& perimeter,
305 double& area, OdGePoint2d& centroid,
306 double momInertia[2], double& prodInertia,
307 double prinMoments[2], OdGeVector2d prinAxes[2],
308 double radiiGyration[2], OdGePoint2d& extentsLow,
309 OdGePoint2d& extentsHigh ) const;
310
350 OdGePoint3dArray& points, OdGsMarker thisGsMarker = 0,
351 OdGsMarker otherGsMarker = 0) const;
352
388 const OdGePlane& projPlane, OdGePoint3dArray& points,
389 OdGsMarker thisGsMarker = 0, OdGsMarker otherGsMarker = 0) const;
390
392
394
396 OdGsMarker gsMark,
397 const OdGePoint3d& pickPoint,
398 const OdGeMatrix3d& viewXform,
399 OdDbFullSubentPathArray& subentPaths,
400 const OdDbObjectIdArray* pEntAndInsertStack = 0) const;
401
407 virtual OdUInt32 numChanges() const;
408
409 virtual OdDbSubentId internalSubentId(void* ent) const;
410 virtual void* internalSubentPtr(const OdDbSubentId& id) const;
411
413
414 virtual OdResult subGetGeomExtents( OdGeExtents3d& extents) const;
415
420 virtual void subClose();
421
422 //DOM-IGNORE-BEGIN
423 virtual void copyFrom(const OdRxObject* pSource) ODRX_OVERRIDE;
424 //DOM-IGNORE-END
425};
426
432
433#include "TD_PackPop.h"
434
435#endif
436
#define DBENT_EXPORT
Definition: DbExport.h:67
OdSmartPtr< OdDbRegion > OdDbRegionPtr
Definition: DbRegion.h:431
@ kAfTypeVerAny
Definition: ModelerDefs.h:80
int AfTypeVer
Definition: ModelerDefs.h:29
ptrdiff_t OdGsMarker
unsigned int OdUInt32
#define ODRX_OVERRIDE
OdResult
Definition: OdResult.h:29
virtual OdResult getPlane(OdGePlane &plane, OdDb::Planarity &planarity) const
virtual OdResult subGetClassID(void *pClsid) const
virtual void subClose()
virtual OdResult subIntersectWith(const OdDbEntity *pEnt, OdDb::Intersect intType, OdGePoint3dArray &points, OdGsMarker thisGsMarker=0, OdGsMarker otherGsMarker=0) const
TD_USING(OdDbEntity::getPlane)
static OdResult createFromCurves(const OdRxObjectPtrArray &curveSegments, OdRxObjectPtrArray &regions)
void brep(OdBrBrep &brep)
virtual OdResult getPlane(OdGePlane &plane, OdDb::Planarity &planarity) const
virtual OdResult booleanOper(OdDb::BoolOperType operation, OdDbRegion *otherRegion)
virtual void copyFrom(const OdRxObject *pSource) ODRX_OVERRIDE
virtual bool isPlanar() const
virtual OdDbObjectPtr decomposeForSave(OdDb::DwgVersion ver, OdDbObjectId &replaceId, bool &exchangeXData)
virtual OdResult dwgInFields(OdDbDwgFiler *pFiler)
virtual OdResult dxfInFields(OdDbDxfFiler *pFiler)
virtual void dxfOutFields(OdDbDxfFiler *pFiler) const
virtual void * body() const
virtual OdResult getAreaProp(const OdGePoint3d &origin, const OdGeVector3d &xAxis, const OdGeVector3d &yAxis, double &perimeter, double &area, OdGePoint2d &centroid, double momInertia[2], double &prodInertia, double prinMoments[2], OdGeVector2d prinAxes[2], double radiiGyration[2], OdGePoint2d &extentsLow, OdGePoint2d &extentsHigh) const
virtual void dwgOutFields(OdDbDwgFiler *pFiler) const
virtual OdDbEntityPtr subSubentPtr(const OdDbFullSubentPath &id) const
virtual void saveAs(OdGiWorldDraw *pWd, OdDb::DwgVersion ver) const
virtual OdResult setBody(const void *pGeometry)
virtual OdResult subTransformBy(const OdGeMatrix3d &xfm)
bool isNull() const
bool getFaceMesh(GeMesh::OdGeTrMesh &mesh, OdGsMarker iFace, const wrTriangulationParams &triangulationParams) const
virtual OdResult subIntersectWith(const OdDbEntity *pEnt, OdDb::Intersect intType, const OdGePlane &projPlane, OdGePoint3dArray &points, OdGsMarker thisGsMarker=0, OdGsMarker otherGsMarker=0) const
virtual OdUInt32 numChanges() const
virtual bool subWorldDraw(OdGiWorldDraw *pWd) const
virtual OdResult getArea(double &regionArea) const
virtual OdDbSubentId internalSubentId(void *ent) const
virtual OdResult getNormal(OdGeVector3d &normal) const
virtual OdResult subGetGeomExtents(OdGeExtents3d &extents) const
virtual OdResult getPerimeter(double &) const
virtual OdResult subGetGsMarkersAtSubentPath(const OdDbFullSubentPath &subPath, OdGsMarkerArray &gsMarkers) const
virtual void * internalSubentPtr(const OdDbSubentId &id) const
DWGMAP_DECLARE_MEMBERS(OdDbRegion)
virtual OdResult subExplode(OdRxObjectPtrArray &entitySet) const
virtual OdUInt32 subSetAttributes(OdGiDrawableTraits *pTraits) const
OdResult acisOut(OdStreamBuf *pStreamBuf, AfTypeVer typeVer=kAfTypeVerAny) const
OdResult acisIn(OdStreamBuf *pStreamBuf, AfTypeVer *typeVer=0)
virtual OdResult subGetSubentPathsAtGsMarker(OdDb::SubentType type, OdGsMarker gsMark, const OdGePoint3d &pickPoint, const OdGeMatrix3d &viewXform, OdDbFullSubentPathArray &subentPaths, const OdDbObjectIdArray *pEntAndInsertStack=0) const
GLuint GLsizei GLsizei GLint GLenum * type
Definition: gles2_ext.h:274
BoolOperType
Definition: ModelerDefs.h:158
DwgVersion
Definition: OdaDefs.h:47
Intersect
Definition: OdaDefs.h:481
Planarity
Definition: DbEntity.h:74