CFx SDK Documentation  2020SP3
DbPointCloudCropping.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 #ifndef _OD_DB_POINTCLOUDCROPPING_
25 #define _OD_DB_POINTCLOUDCROPPING_
26 
27 #include "TD_PackPush.h"
28 #include "DbPointCloudObjExports.h"
29 #include "DbObject.h"
30 #include "Ge/GePoint3d.h"
31 #include "Ge/GePoint2dArray.h"
32 #include "Ge/GePlane.h"
33 
34 
35 class OdGiGeometry;
36 
45 {
46 public:
50  enum CropType
51  {
52  CT_INVALID = 0, //Box
53  CT_RECTANGLE, //Rectangular boundary
54  CT_POLYLINE, //Polyline boundary
55  CT_CIRCULAR //Circular bounfary
56  };
57 
62 
64 
69  bool isValid() const;
70 
74  OdInt16 length() const;
75 
79  CropType type() const;
80 
85 
89  void setInverted(const bool);
90 
94  bool isInverted() const;
95 
99  const OdGePoint3dArray& get() const;
100 
104  void set( const OdGePoint3dArray& points) ;
105 
109  bool getCropPlane( OdGePlane& plane ) const;
110 
114  void setCropPlane( const OdGePlane& plane ) ;
115 
119  void setInside(const bool);
120 
124  bool isInside() const;
125 
129  void clear();
130 
134  virtual void draw( OdGiGeometry &geom );
135 
137  void dwgOutFields( OdDbDwgFiler *pFiler ) const;
138 
140  void dxfOutFields( OdDbDxfFiler *pFiler, OdInt16 &dvfInt8, OdInt16 &dxfInt32, OdInt16 &dxfXCoord, OdInt16 &dxfNormalX ) const;
141 
142 
143 private:
144 
145  OdInt8 m_type;
146  bool m_isInside;
147  bool m_inverted;
148  OdGePlane m_plane;
149  OdGePoint3dArray m_points;
150 };
151 
152 #include "TD_PackPop.h"
153 
154 #endif //_OD_DB_POINTCLOUDCROPPING_
DBPOINTCLOUDOBJ_EXPORT
#define DBPOINTCLOUDOBJ_EXPORT
Definition: DbPointCloudObjExports.h:32
OdResult
OdResult
Definition: OdResult.h:29
OdGePlane
Definition: GePlane.h:45
OdDbPointCloudCropping::getCropPlane
bool getCropPlane(OdGePlane &plane) const
DbObject.h
OdDbPointCloudCropping::setCropType
void setCropType(CropType type)
type
GLuint GLsizei GLsizei GLint GLenum * type
Definition: gles2_ext.h:274
OdDbPointCloudCropping::CT_RECTANGLE
@ CT_RECTANGLE
Definition: DbPointCloudCropping.h:53
OdDbPointCloudCropping::isInside
bool isInside() const
OdDbPointCloudCropping::CropType
CropType
Definition: DbPointCloudCropping.h:51
OdDbPointCloudCropping::set
void set(const OdGePoint3dArray &points)
OdDbPointCloudCropping
Definition: DbPointCloudCropping.h:45
OdDbPointCloudCropping::CT_POLYLINE
@ CT_POLYLINE
Definition: DbPointCloudCropping.h:54
OdArray< OdGePoint3d, OdMemoryAllocator< OdGePoint3d > >
TD_PackPop.h
GePlane.h
OdDbPointCloudCropping::length
OdInt16 length() const
OdDbPointCloudCropping::setInverted
void setInverted(const bool)
OdInt16
short OdInt16
Definition: OdPlatformSettings.h:756
OdDbPointCloudCropping::clear
void clear()
OdDbPointCloudCropping::setInside
void setInside(const bool)
OdDbPointCloudCropping::isInverted
bool isInverted() const
OdDbPointCloudCropping::get
const OdGePoint3dArray & get() const
DbPointCloudObjExports.h
GePoint3d.h
OdDbPointCloudCropping::dwgInFields
OdResult dwgInFields(OdDbDwgFiler *pFiler)
OdDbPointCloudCropping::dxfOutFields
void dxfOutFields(OdDbDxfFiler *pFiler, OdInt16 &dvfInt8, OdInt16 &dxfInt32, OdInt16 &dxfXCoord, OdInt16 &dxfNormalX) const
OdDbDxfFiler
Definition: DbFiler.h:194
OdDbPointCloudCropping::OdDbPointCloudCropping
OdDbPointCloudCropping()
OdDbPointCloudCropping::setCropPlane
void setCropPlane(const OdGePlane &plane)
OdDbPointCloudCropping::draw
virtual void draw(OdGiGeometry &geom)
TD_PackPush.h
OdInt8
signed char OdInt8
Definition: OdPlatformSettings.h:755
GePoint2dArray.h
OdDbPointCloudCropping::type
CropType type() const
OdDbPointCloudCropping::dxfInFields
OdResult dxfInFields(OdDbDxfFiler *pFiler)
OdGiGeometry
Definition: GiGeometry.h:698
OdDAI::operator==
bool DAI_EXPORT operator==(const OdFileDescriptionAuto &left, const OdFileDescriptionAuto &right)
OdDbPointCloudCropping::dwgOutFields
void dwgOutFields(OdDbDwgFiler *pFiler) const
OdDbPointCloudCropping::isValid
bool isValid() const
OdDbDwgFiler
Definition: DbFiler.h:1031