CFx SDK Documentation  2023 SP0
DbBody.h
Go to the documentation of this file.
1 // Copyright (C) 2002-2017, 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 Teigha(R) software pursuant to a license
16 // agreement with Open Design Alliance.
17 // Teigha(R) Copyright (C) 2002-2017 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_DBBODY_H
28 #define GEOMENT_DBBODY_H
29 
30 #include "TD_PackPush.h"
31 #include "ModelerDefs.h"
32 #include "DbEntity.h"
33 #include "DbSubentId.h"
34 
35 class OdModelerGeometry;
36 class OdStreamBuf;
37 class OdBrBrep;
38 class OdBrEntity;
39 class OdBrMesh2dFilter;
40 class OdBrMesh2d;
41 
55 {
56 public:
58 
63 
67  bool isNull() const;
68 
78  OdStreamBuf* pStreamBuf,
79  AfTypeVer typeVer = kAfTypeVerAny);
80 
90  static OdResult acisOut(
91  const OdString& filename,
92  const OdDbEntityPtrArray& solids,
93  AfTypeVer typeVer = kAfVer700|kAfTypeASCII);
94 
108  OdStreamBuf* pStreamBuf,
109  AfTypeVer *pTypeVer = 0);
110 
123  static OdResult acisIn(
124  const OdString& filename,
125  OdDbEntityPtrArray& solids);
126 
132  void brep(
133  OdBrBrep& brep);
134 
136  OdDbDwgFiler* pFiler);
137 
138  virtual void dwgOutFields(
139  OdDbDwgFiler* pFiler) const;
140 
142  OdDbDxfFiler* pFiler);
143 
144  virtual void dxfOutFields(
145  OdDbDxfFiler* pFiler) const;
146 
152  virtual bool subWorldDraw(
153  OdGiWorldDraw* pWd) const;
154 
161  virtual void subViewportDraw(
162  OdGiViewportDraw* pVd) const;
163 
186  OdDb::DwgVersion ver,
187  OdDbObjectId& replaceId,
188  bool& exchangeXData);
189 
190 
198  virtual OdResult setBody( const void* pGeometry );
199 
203  virtual void *body( ) const;
204 
222  OdRxObjectPtrArray& entitySet) const;
223 
233  const OdGeMatrix3d& xfn );
234 
244  virtual void saveAs(
245  OdGiWorldDraw* pWd,
246  OdDb::DwgVersion ver ) const;
247 
248 
257 
268  virtual OdResult subGetGsMarkersAtSubentPath(const OdDbFullSubentPath& subPath, OdGsMarkerArray& gsMarkers) const;
269 
285  OdGsMarker gsMark,
286  const OdGePoint3d& pickPoint,
287  const OdGeMatrix3d& viewXform,
288  OdDbFullSubentPathArray& subentPaths,
289  const OdDbObjectIdArray* pEntAndInsertStack ) const;
293  virtual OdUInt32 numChanges() const;
294 
300  virtual OdDbSubentId internalSubentId(void* ent) const;
301 
307  virtual void* internalSubentPtr(const OdDbSubentId& id) const;
308 
320 
329  virtual OdResult subGetGeomExtents( OdGeExtents3d& extents) const;
330 
335 
346  static OdResult generateMesh(const OdDbEntity *pEnt, const OdBrMesh2dFilter & filter, OdBrMesh2d &mesh2d);
347 };
348 
353 
354 #include "TD_PackPop.h"
355 
356 #endif
357 
OdSmartPtr< OdDbBody > OdDbBodyPtr
Definition: DbBody.h:352
#define TOOLKIT_EXPORT
Definition: DbExport.h:40
@ kAfTypeVerAny
Definition: ModelerDefs.h:80
@ kAfTypeASCII
Definition: ModelerDefs.h:68
@ kAfVer700
Definition: ModelerDefs.h:46
int AfTypeVer
Definition: ModelerDefs.h:29
ptrdiff_t OdGsMarker
unsigned int OdUInt32
OdResult
Definition: OdResult.h:29
virtual void saveAs(OdGiWorldDraw *pWd, OdDb::DwgVersion ver) const
virtual OdResult subGetGeomExtents(OdGeExtents3d &extents) const
bool isNull() const
OdResult acisIn(OdStreamBuf *pStreamBuf, AfTypeVer *pTypeVer=0)
virtual bool subWorldDraw(OdGiWorldDraw *pWd) const
OdResult acisOut(OdStreamBuf *pStreamBuf, AfTypeVer typeVer=kAfTypeVerAny)
virtual OdResult setBody(const void *pGeometry)
virtual OdResult dwgInFields(OdDbDwgFiler *pFiler)
virtual OdDbEntityPtr subSubentPtr(const OdDbFullSubentPath &id) const
virtual OdUInt32 subSetAttributes(OdGiDrawableTraits *pTraits) const
static OdResult setSubentPath(OdBrEntity &ent, OdDbFullSubentPath &subpath)
virtual void dxfOutFields(OdDbDxfFiler *pFiler) const
virtual void * internalSubentPtr(const OdDbSubentId &id) const
static OdResult acisIn(const OdString &filename, OdDbEntityPtrArray &solids)
void brep(OdBrBrep &brep)
virtual OdUInt32 numChanges() const
virtual OdResult subExplode(OdRxObjectPtrArray &entitySet) const
virtual void subViewportDraw(OdGiViewportDraw *pVd) const
virtual OdResult dxfInFields(OdDbDxfFiler *pFiler)
virtual void * body() const
virtual OdDbObjectPtr decomposeForSave(OdDb::DwgVersion ver, OdDbObjectId &replaceId, bool &exchangeXData)
ODDB_DECLARE_MEMBERS(OdDbBody)
virtual OdResult subTransformBy(const OdGeMatrix3d &xfn)
virtual OdResult subGetSubentPathsAtGsMarker(OdDb::SubentType type, OdGsMarker gsMark, const OdGePoint3d &pickPoint, const OdGeMatrix3d &viewXform, OdDbFullSubentPathArray &subentPaths, const OdDbObjectIdArray *pEntAndInsertStack) const
virtual OdDbSubentId internalSubentId(void *ent) const
static OdResult generateMesh(const OdDbEntity *pEnt, const OdBrMesh2dFilter &filter, OdBrMesh2d &mesh2d)
static OdResult acisOut(const OdString &filename, const OdDbEntityPtrArray &solids, AfTypeVer typeVer=kAfVer700|kAfTypeASCII)
virtual void dwgOutFields(OdDbDwgFiler *pFiler) const
virtual OdResult subGetGsMarkersAtSubentPath(const OdDbFullSubentPath &subPath, OdGsMarkerArray &gsMarkers) const
GLuint GLsizei GLsizei GLint GLenum * type
Definition: gles2_ext.h:274
DwgVersion
Definition: OdaDefs.h:46