CFx SDK Documentation  2023 SP0
AECCustomOpeningBlock.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 __AECCUSTOMOPENINGBLOCK_H__
25 #define __AECCUSTOMOPENINGBLOCK_H__
26 
28 #include <Ge/GeVector3d.h>
29 
35 class AECARCHBASE_API AECCustomOpeningBlock : public AECDispCompEnt
36 {
38 
39  public:
44 
48  void SetBlock( const OdDbObjectId& idBlock );
49 
54 
58  void SetXPosition( XPosition ePosition );
59 
64 
68  void SetYPosition( YPosition ePosition );
69 
74 
78  void SetZPosition( ZPosition ePosition );
79 
83  bool IsMirrorX() const;
84 
88  void SetIsMirrorX( bool bMirror );
89 
93  bool IsMirrorY() const;
94 
98  void SetIsMirrorY( bool bMirror );
99 
103  bool IsMirrorZ() const;
104 
108  void SetIsMirrorZ( bool bMirror );
109 
113  bool IsScaleToFitWidth() const;
114 
118  void SetIsScaleToFitWidth( bool bScale );
119 
123  bool IsScaleToFitHeight() const;
124 
128  void SetIsScaleToFitHeight( bool bScale );
129 
133  bool IsScaleToFitDepth() const;
134 
138  void SetIsScaleToFitDepth( bool bScale );
139 
144 
148  void SetIsScaleToFitLockXYRatio( bool bScale );
149 
154 
158  void SetInsertionOffset( const OdGeVector3d& vOffset );
159 
163  enum Display {
164  eAlways = 0,
165  eWhenIntersectingCutPlane = 1,
166  eWhenAboveCutPlane = 2,
167  eWhenBelowCutPlane = 3
168  };
169 
171 
172  void SetDisplayOption( Display displayOption );
173 
174  public:
181  void GetOffsetFromOrigin( const OdGeVector3d& vEntityDimension,
182  OdGeVector3d& vOffset ) const;
183 
184  protected:
185  // Interpretation of this value is still unknown.
187 
188  // Custom opening block flags.
190 
191  // This member stores insertion offset.
193 
194  // Display Option.
196 
197  // Class uses flags structure.
198  friend class AECGaCustomBlock;
199 };
200 
203 
204 #endif //__AECCUSTOMOPENINGBLOCK_H__
AECSubPtr< AECCustomOpeningBlock > AECCustomOpeningBlockSubPtr
OdSmartPtr< AECCustomOpeningBlock > AECCustomOpeningBlockPtr
#define AEC_DECLARE_MEMBERS(ClassName)
Definition: AECMacros.h:54
unsigned char OdUInt8
void SetBlock(const OdDbObjectId &idBlock)
bool IsMirrorX() const
void SetIsMirrorY(bool bMirror)
bool IsMirrorZ() const
bool IsScaleToFitLockXYRatio() const
void SetIsMirrorZ(bool bMirror)
const OdGeVector3d & GetInsertionOffset() const
XPosition GetXPosition() const
OdDbObjectId GetBlock() const
ZPosition GetZPosition() const
void SetIsScaleToFitWidth(bool bScale)
void SetDisplayOption(Display displayOption)
void SetIsScaleToFitLockXYRatio(bool bScale)
void SetIsScaleToFitHeight(bool bScale)
bool IsScaleToFitHeight() const
bool IsMirrorY() const
void SetInsertionOffset(const OdGeVector3d &vOffset)
void SetYPosition(YPosition ePosition)
void GetOffsetFromOrigin(const OdGeVector3d &vEntityDimension, OdGeVector3d &vOffset) const
void SetIsMirrorX(bool bMirror)
Display GetDisplayOption() const
bool IsScaleToFitDepth() const
bool IsScaleToFitWidth() const
YPosition GetYPosition() const
void SetZPosition(ZPosition ePosition)
void SetXPosition(XPosition ePosition)
void SetIsScaleToFitDepth(bool bScale)