CFx SDK Documentation  2023 SP0
GiOrthoPrismIntersector.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 __ODGIORTOPRISMINTERSECTOR_H__
25 #define __ODGIORTOPRISMINTERSECTOR_H__
26 
27 #include "Gi/GiConveyorNode.h"
28 #include "Ge/GeDoubleArray.h"
29 #include "Gi/GiClipBoundary.h"
30 
31 class OdGiDeviation;
33 
34 #include "TD_PackPush.h"
35 
41 {
42 public:
44 
45  virtual void set(OdUInt32 nPoints, // points counter. 0 - disables XY clip; 2 - defines rectangle.
46  const OdGePoint2d* points, // points defining sides of clipping prism perpendicular to XY
47  bool bClipLowerZ = false,
48  double dLowerZ = 0.0,
49  bool bClipUpperZ = false,
50  double dUpperZ = 0.0) = 0;
51 
52  virtual void set(const OdGePoint2dArray& points, // points defining sides of clipping prism perpendicular to XY
53  bool bClipLowerZ = false,
54  double dLowerZ = 0.0,
55  bool bClipUpperZ = false,
56  double dUpperZ = 0.0) = 0;
57 
58  virtual void get(OdGePoint2dArray& points,
59  bool& bClipLowerZ,
60  double& dLowerZ,
61  bool& bClipUpperZ,
62  double& dUpperZ) const = 0;
63 
66  virtual void setDeviation(const OdGeDoubleArray& deviations) = 0;
67 
70  virtual void setDeviation(const OdGiDeviation* pDeviation) = 0;
71 
74  virtual void setDrawContext(OdGiConveyorContext* pDrawCtx) = 0;
75 
76  virtual OdUInt32 clipStatus() const = 0;
77 
78  virtual void clearClipStatus() = 0;
79 };
80 
82 
83 #include "TD_PackPop.h"
84 
85 #endif //#ifndef __ODGIORTOPRISMINTERSECTOR_H__
#define ODGI_EXPORT
Definition: GiExport.h:35
OdSmartPtr< OdGiOrthoPrismIntersector > OdGiOrthoPrismIntersectorPtr
unsigned int OdUInt32
virtual void clearClipStatus()=0
virtual OdUInt32 clipStatus() const =0
virtual void set(OdUInt32 nPoints, const OdGePoint2d *points, bool bClipLowerZ=false, double dLowerZ=0.0, bool bClipUpperZ=false, double dUpperZ=0.0)=0
virtual void setDeviation(const OdGeDoubleArray &deviations)=0
virtual void setDeviation(const OdGiDeviation *pDeviation)=0
virtual void setDrawContext(OdGiConveyorContext *pDrawCtx)=0
ODRX_DECLARE_MEMBERS(OdGiOrthoPrismIntersector)
virtual void get(OdGePoint2dArray &points, bool &bClipLowerZ, double &dLowerZ, bool &bClipUpperZ, double &dUpperZ) const =0
virtual void set(const OdGePoint2dArray &points, bool bClipLowerZ=false, double dLowerZ=0.0, bool bClipUpperZ=false, double dUpperZ=0.0)=0