CFx SDK Documentation  2023 SP0
FxBIMEntityReference.h
Go to the documentation of this file.
1 //
2 // (C) Copyright 2020-2022 by Graebert GmbH.
3 //
4 // Permission to use, copy, modify, and distribute this software in
5 // object code form for any purpose and without fee is hereby granted,
6 // provided that the above copyright notice appears in all copies and
7 // that both that copyright notice and the limited warranty and
8 // restricted rights notice below appear in all supporting
9 // documentation.
10 //
11 // GRAEBERT PROVIDES THIS PROGRAM "AS IS" AND WITH ALL FAULTS.
12 // GRAEBERT SPECIFICALLY DISCLAIMS ANY IMPLIED WARRANTY OF
13 // MERCHANTABILITY OR FITNESS FOR A PARTICULAR USE. GRAEBERT GMBH
14 // DOES NOT WARRANT THAT THE OPERATION OF THE PROGRAM WILL BE
15 // UNINTERRUPTED OR ERROR FREE.
16 
17 #pragma once
18 
19 #include "FxBIM.h"
20 
21 #include <DbEntity.h>
22 
25 
26 class OdDbDwgFiler;
27 
29 {
30 public:
32 
34 
35  virtual const OdGeMatrix3d& Transform() const;
36  virtual void SetTransform( const OdGeMatrix3d& transform );
37 
38  virtual OdDbObjectId DatabaseReference() const; //CFxBIMDatabaseReference
39  virtual OdDbObjectId Entity() const; //CFxBIMEntity
40 
41 public:
42  OdResult dwgInFields( OdDbDwgFiler* pFiler ) override;
43  void dwgOutFields( OdDbDwgFiler* pFiler ) const override;
44 
45  OdResult dxfInFields( OdDbDxfFiler* pFiler ) override;
46  void dxfOutFields( OdDbDxfFiler* pFiler ) const override;
47 
48  OdUInt32 subSetAttributes( OdGiDrawableTraits* traits ) const override;
49  bool subWorldDraw( OdGiWorldDraw* wd ) const override;
50  void subViewportDraw( OdGiViewportDraw* vd ) const override;
51 
52  void subGripStatus( const OdDb::GripStat status ) override;
53 
55  OdDb::OsnapMode osnapMode,
56  OdGsMarker gsSelectionMark,
57  const OdGePoint3d& pickPoint,
58  const OdGePoint3d& lastPoint,
59  const OdGeMatrix3d& xWorldToEye,
60  OdGePoint3dArray& snapPoints ) const override;
61 
63  OdDb::OsnapMode osnapMode,
64  OdGsMarker gsSelectionMark,
65  const OdGePoint3d& pickPoint,
66  const OdGePoint3d& lastPoint,
67  const OdGeMatrix3d& xWorldToEye,
68  OdGePoint3dArray& snapPoints,
69  const OdGeMatrix3d& insertionMat ) const override;
70 
71  bool subIsContentSnappable() const override;
72 
73  OdResult subGetGripPoints( OdGePoint3dArray& gripPoints ) const override;
74  OdResult subMoveGripPointsAt( const OdIntArray& indices, const OdGeVector3d& offset ) override;
76  OdDbGripDataPtrArray& grips,
77  const double curViewUnitSize,
78  const int gripSize,
79  const OdGeVector3d& curViewDir,
80  const int bitFlags ) const override;
82  const OdDbVoidPtrArray& grips,
83  const OdGeVector3d& offset,
84  int bitFlags ) override;
85  OdResult subGetStretchPoints( OdGePoint3dArray& stretchPoints ) const override;
87  const OdIntArray& indices,
88  const OdGeVector3d& offset ) override;
89 
90  OdResult subExplode( OdRxObjectPtrArray& entitySet ) const override;
91 
92  OdResult subErase( bool erasing ) override;
93  OdDbObjectPtr subWblockClone( OdDbIdMapping& ownerIdMap, OdDbObject*, bool bPrimary ) const override;
94  OdDbObjectPtr subDeepClone( OdDbIdMapping& ownerIdMap, OdDbObject*, bool bPrimary ) const override;
95 
96  OdResult subTransformBy( const OdGeMatrix3d& xfm ) override;
97  OdResult subGetTransformedCopy( const OdGeMatrix3d& xfm, OdDbEntityPtr& pCopy ) const override;
98 
99  OdResult subGetGeomExtents( OdGeExtents3d& extents ) const override;
100 
101 protected:
103 };
#define FXBIM_API
Definition: FxBIM.h:20
OdSmartPtr< CFxBIMEntityReference > CFxBIMEntityReferencePtr
ptrdiff_t OdGsMarker
unsigned int OdUInt32
OdResult
Definition: OdResult.h:29
virtual const OdGeMatrix3d & Transform() const
OdResult subGetStretchPoints(OdGePoint3dArray &stretchPoints) const override
void subGripStatus(const OdDb::GripStat status) override
OdResult dxfInFields(OdDbDxfFiler *pFiler) override
OdResult subGetTransformedCopy(const OdGeMatrix3d &xfm, OdDbEntityPtr &pCopy) const override
OdResult dwgInFields(OdDbDwgFiler *pFiler) override
OdResult subMoveStretchPointsAt(const OdIntArray &indices, const OdGeVector3d &offset) override
virtual void SetTransform(const OdGeMatrix3d &transform)
virtual OdDbObjectId Entity() const
void dwgOutFields(OdDbDwgFiler *pFiler) const override
OdResult subGetGripPoints(OdDbGripDataPtrArray &grips, const double curViewUnitSize, const int gripSize, const OdGeVector3d &curViewDir, const int bitFlags) const override
OdResult subGetOsnapPoints(OdDb::OsnapMode osnapMode, OdGsMarker gsSelectionMark, const OdGePoint3d &pickPoint, const OdGePoint3d &lastPoint, const OdGeMatrix3d &xWorldToEye, OdGePoint3dArray &snapPoints, const OdGeMatrix3d &insertionMat) const override
ODDB_DECLARE_MEMBERS(CFxBIMEntityReference)
void subViewportDraw(OdGiViewportDraw *vd) const override
OdUInt32 subSetAttributes(OdGiDrawableTraits *traits) const override
void dxfOutFields(OdDbDxfFiler *pFiler) const override
OdResult subGetGripPoints(OdGePoint3dArray &gripPoints) const override
OdResult subMoveGripPointsAt(const OdDbVoidPtrArray &grips, const OdGeVector3d &offset, int bitFlags) override
bool subIsContentSnappable() const override
OdDbObjectPtr subDeepClone(OdDbIdMapping &ownerIdMap, OdDbObject *, bool bPrimary) const override
OdResult subExplode(OdRxObjectPtrArray &entitySet) const override
OdResult subErase(bool erasing) override
OdDbObjectPtr subWblockClone(OdDbIdMapping &ownerIdMap, OdDbObject *, bool bPrimary) const override
OdResult subTransformBy(const OdGeMatrix3d &xfm) override
OdResult subGetGeomExtents(OdGeExtents3d &extents) const override
OdResult subMoveGripPointsAt(const OdIntArray &indices, const OdGeVector3d &offset) override
bool subWorldDraw(OdGiWorldDraw *wd) const override
virtual OdDbObjectId DatabaseReference() const
OdResult subGetOsnapPoints(OdDb::OsnapMode osnapMode, OdGsMarker gsSelectionMark, const OdGePoint3d &pickPoint, const OdGePoint3d &lastPoint, const OdGeMatrix3d &xWorldToEye, OdGePoint3dArray &snapPoints) const override
virtual ~CFxBIMEntityReference()
GLintptr offset
Definition: gles2_ext.h:183
GripStat
Definition: DbGrip.h:80
OsnapMode
Definition: OdaDefs.h:480