CFx SDK Documentation  2020SP3
DbPointCloud.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 #ifndef _OD_DB_POINTCLOUD_
26 #define _OD_DB_POINTCLOUD_
27 
28 #include "DbPointCloudObjExports.h"
29 #include "DbPointCloudClipping.h"
31 #include "TD_PackPush.h"
32 
33 #include "DbEntity.h"
34 
43 {
44 public:
45 
47 
52 
57 
58  // Properties
59 
64 
71 
77  bool getSavedFileName(OdString &) const;
78 
87  bool setSavedFileName(const OdString&);
88 
94  bool getIndexFile(OdString &) const;
95 
104  bool setIndexFile(const OdString&);
105 
110 
119  bool getSourceFile(OdUInt32 index, OdString & fileName) const;
120 
126 
133  bool addSourceFile(const OdString& fileName );
134 
135 
137  void setCoordSys(const OdString&);
138 
142  bool locked() const;
143 
147  void setLocked(bool);
148 
149  bool useEntityColor()const;
150  void setUseEntityColor(bool);
151 
156 
163 
172 
182 
183 
188 
198 
199 
204 
213  void setExtents(const OdGeExtents3d & exts);
214 
215  //Intensity
216 
217 
221  bool showIntensity() const;
222 
232 
233 
234  //bool hasIntensity() const;
235 
236 
240  int getIntensityScheme() const;
241 
251 
254 
255  // Clipping
259  bool showClipping() const;
260 
270 
274  int clippingCount() const;
275 
276 
286 
296 
301 
302 
312 
322 
323  // File IO
325  virtual void dwgOutFields(OdDbDwgFiler *) const;
327  virtual void dxfOutFields(OdDbDxfFiler *) const;
328 
329  // Rendering
330  virtual bool subWorldDraw(OdGiWorldDraw* pWd) const;
331  virtual void subViewportDraw(OdGiViewportDraw* pVd) const;
332 
333 
334  virtual OdResult subGetGeomExtents(OdGeExtents3d& extents) const;
335  virtual OdResult subTransformBy(const OdGeMatrix3d& xfm);
336 
337 #if 0
338  // Require investigation
339  bool clearSelection(const OdString&);
340  bool select(PointCloudSelectionDef const &, const OdString &);
341  bool selectNone();
342  bool selectionId(const OdString&, struct _GUID &);
343 
344  bool hasIntensity() const;
345 
346  IPointProcess * ProcessPoints(IPointProcessor *, OdDbExtents *);
347  IPointProcess * ProcessPoints(IPointProcessor *, OdPointCloudViewFrustum *);
348 
349  bool closestPoint(OdGePoint3d const &, OdGePoint3d const &,unsigned long &) const;
350  void UsePointBuffer(IPointCloudDataBuffer *);
351 
352  IPointCloudEngine * getEngine() const;
353  OdResult getNativeCloudExtent(OdDbExtents &) const;
354  bool getPointCloudFileVersion(int &,int &) const;
355  void getViewFrustum(OdGiViewport &,OdPointCloudViewFrustum &,bool) const;
356  bool hasProperty(wchar_t const *,bool &) const;
357  bool isValid() const;
358  void markDirty();
359  void onViewChanged();
360  IPointCloudDataBuffer * pointData() const;
361  bool readPoints(OdDbExtents &, unsigned long);
362  bool readPoints(OdPointCloudViewFrustum &, unsigned long);
363  bool readPoints(unsigned long);
364  OdResult setPointCloudFilter(IPointCloudFilter *);
365  class IOdPcPointFilter * setPointFilter(IOdPcPointFilter *);
366  void setVisibleSelType(enum IPointCloudDataFile::selType);
367  enum IPointCloudDataFile::selType visibleSelType() const;
368 #endif
369 
370 };
375 
393  OdDbBlockTableRecord* pBlockToAdd,
394  OdDbPointCloudPtr& newPointCloud,
395  const OdString& indexFile,
396  const OdString& sourceFile,
398  double scale = 1.0,
399  double rotation = 0.0,
400  const OdGeVector3d& vAxis = OdGeVector3d::kZAxis
401  );
402 
403 #include "TD_PackPop.h"
404 
405 #endif
DBPOINTCLOUDOBJ_EXPORT
#define DBPOINTCLOUDOBJ_EXPORT
Definition: DbPointCloudObjExports.h:32
OdResult
OdResult
Definition: OdResult.h:29
OdDbPointCloud::dxfInFields
virtual OdResult dxfInFields(OdDbDxfFiler *)
OdGeVector3d
Definition: GeVector3d.h:54
OdDbPointCloud::dwgOutFields
virtual void dwgOutFields(OdDbDwgFiler *) const
OdString
Definition: OdString.h:95
OdDbPointCloud::dxfOutFields
virtual void dxfOutFields(OdDbDxfFiler *) const
OdDbPointCloud::setSavedFileName
bool setSavedFileName(const OdString &)
OdDbPointCloud::setPointCloudDefId
void setPointCloudDefId(const OdDbObjectId)
OdDbPointCloud::showClipping
bool showClipping() const
OdDbPointCloud::clippingCount
int clippingCount() const
OdDbPointCloud::getCoordSys
OdString getCoordSys() const
scale
scale
Definition: DimVarDefs.h:1684
OdDbPointCloud::getPointCount
OdInt64 getPointCount()
OdDbPointCloud::getIntensityScheme
int getIntensityScheme() const
OdInt64
Definition: Int64.h:43
OdDbPointCloud::OdDbPointCloud
OdDbPointCloud()
count
GLsizei GLsizei * count
Definition: gles2_ext.h:276
OdDbPointCloud::addClippingBoundary
bool addClippingBoundary(OdDbPointCloudClipping const &)
OdDbPointCloud::getSavedFileName
bool getSavedFileName(OdString &) const
OdDbPointCloud::getConstPointCloudClipping
OdDbPointCloudClipping const * getConstPointCloudClipping(int) const
OdDbPointCloud::pointCloudDefId
OdDbObjectId pointCloudDefId() const
OdDbPointCloud
Definition: DbPointCloud.h:43
OdGiViewport
Definition: GiViewport.h:51
OdDbObjectId
Definition: DbObjectId.h:99
OdDbPointCloudClipping
Definition: DbPointCloudClipping.h:42
OdDbPointCloud::subViewportDraw
virtual void subViewportDraw(OdGiViewportDraw *pVd) const
OdDbPointCloud::setUseEntityColor
void setUseEntityColor(bool)
OdDbPointCloud::addSourceFile
bool addSourceFile(const OdString &fileName)
TD_PackPop.h
OdUInt32
unsigned int OdUInt32
Definition: OdPlatformSettings.h:783
OdGeMatrix3d
Definition: GeMatrix3d.h:73
OdDbPointCloud::extents
OdGeExtents3d extents() const
OdDbPointCloud::showIntensity
bool showIntensity() const
index
GLuint index
Definition: gles2_ext.h:265
OdDbPointCloud::dwgInFields
virtual OdResult dwgInFields(OdDbDwgFiler *)
OdDbPointCloud::getSourceFile
bool getSourceFile(OdUInt32 index, OdString &fileName) const
OdDbPointCloud::~OdDbPointCloud
~OdDbPointCloud()
Definition: DbPointCloud.h:56
OdDbPointCloud::setIndexFile
bool setIndexFile(const OdString &)
OdDbPointCloud::pIntensityStyle
OdDbPointCloudIntensityStyle * pIntensityStyle()
OdSmartPtr
Definition: SmartPtr.h:58
OdGeVector3d::kZAxis
static GE_STATIC_EXPORT const OdGeVector3d kZAxis
Definition: GeVector3d.h:91
OdGePoint3d
Definition: GePoint3d.h:55
DbEntity.h
oddbCreatePointCloudEntity
DBPOINTCLOUDOBJ_EXPORT OdResult oddbCreatePointCloudEntity(OdDbBlockTableRecord *pBlockToAdd, OdDbPointCloudPtr &newPointCloud, const OdString &indexFile, const OdString &sourceFile, const OdGePoint3d &location=OdGePoint3d::kOrigin, double scale=1.0, double rotation=0.0, const OdGeVector3d &vAxis=OdGeVector3d::kZAxis)
OdDbPointCloud::setTransformation
OdResult setTransformation(const OdGeMatrix3d &)
DbPointCloudObjExports.h
OdDbPointCloud::setIntensityScheme
OdResult setIntensityScheme(const int)
OdDbPointCloud::subWorldDraw
virtual bool subWorldDraw(OdGiWorldDraw *pWd) const
OdDbPointCloud::transformation
OdGeMatrix3d transformation() const
OdDbPointCloud::setShowClipping
OdResult setShowClipping(const bool)
OdDbPointCloud::removeClippingBoundary
bool removeClippingBoundary(int)
OdDbPointCloud::setExtents
void setExtents(const OdGeExtents3d &exts)
OdDbPointCloud::getSourceFileCount
OdUInt32 getSourceFileCount() const
OdDbDxfFiler
Definition: DbFiler.h:194
OdDbPointCloud::locked
bool locked() const
OdDbPointCloud::setLocked
void setLocked(bool)
OdGePoint3d::kOrigin
static GE_STATIC_EXPORT const OdGePoint3d kOrigin
Definition: GePoint3d.h:89
TD_PackPush.h
OdDbPointCloud::ODDB_DECLARE_MEMBERS
ODDB_DECLARE_MEMBERS(OdDbPointCloud)
location
GLint location
Definition: gles2_ext.h:284
OdDbPointCloud::subTransformBy
virtual OdResult subTransformBy(const OdGeMatrix3d &xfm)
OdGiWorldDraw
Definition: GiWorldDraw.h:44
OdDbPointCloud::clearSourceFiles
void clearSourceFiles()
OdDbPointCloud::getIndexFile
bool getIndexFile(OdString &) const
OdDbEntity
Definition: DbEntity.h:90
OdDbPointCloud::resetClippingBoundary
void resetClippingBoundary()
DbPointCloudIntensityStyle.h
OdDbPointCloud::reactorId
OdDbObjectId reactorId() const
OdDbBlockTableRecord
Definition: DbBlockTableRecord.h:57
OdGeExtents3d
Definition: GeExtents3d.h:45
OdDbPointCloud::getPointCloudClipping
OdDbPointCloudClipping * getPointCloudClipping(int)
OdDbPointCloudIntensityStyle
Definition: DbPointCloudIntensityStyle.h:54
DbPointCloudClipping.h
OdDbPointCloud::useEntityColor
bool useEntityColor() const
OdDbPointCloud::intensityStyle
const OdDbPointCloudIntensityStyle & intensityStyle() const
OdDbPointCloud::setReactorId
void setReactorId(const OdDbObjectId)
OdDbPointCloud::setCoordSys
void setCoordSys(const OdString &)
OdDbPointCloudPtr
OdSmartPtr< OdDbPointCloud > OdDbPointCloudPtr
Definition: DbPointCloud.h:374
OdDbPointCloud::subGetGeomExtents
virtual OdResult subGetGeomExtents(OdGeExtents3d &extents) const
OdDbDwgFiler
Definition: DbFiler.h:1031
OdGiViewportDraw
Definition: GiViewportDraw.h:50
OdDbPointCloud::setShowIntensity
OdResult setShowIntensity(const bool)
OdDbPointCloud::setPointCount
void setPointCount(const OdUInt64 count)
OdUInt64
Definition: Int64.h:137