CFx SDK Documentation  2023 SP0
AECDbRailing.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 __AECDBRAILING_H__
25 #define __AECDBRAILING_H__
26 
27 #include "AECArchBaseDefs.h"
28 #include "DbEntity/AECDbGeo.h"
34 
36 
42 class AECARCHBASE_API AECDbRailing : public AECDbGeo
43 {
45 
46  public:
51 
59 
64 
69 
70  // Returns the array of fixed posts.
72 
76  bool IsGuardrailPresent() const;
77 
81  void SetIsGuardrailPresent( bool bPresent );
82 
86  bool IsHandrailPresent() const;
87 
91  void SetIsHandrailPresent( bool bPresent );
92 
96  bool IsBottomrailPresent() const;
97 
101  void SetIsBottomrailPresent( bool bPresent );
102 
106  bool IsFixedPostsPresent() const;
107 
111  void SetIsFixedPostsPresent( bool bPresent );
112 
116  bool IsDynamicPostsPresent() const;
117 
121  void SetIsDynamicPostsPresent( bool bPresent );
122 
126  bool IsBalustersPresent() const;
127 
131  void SetIsBalustersPresent( bool bPresent );
132 
137 
141  void SetIsFixedPostsAtCornersPresent( bool bPresent );
142 
147 
151  void SetIsOverrideStairTreadLength( bool bOverride );
152 
157 
161  void SetGuardrailHorizontalHeight( double dHeight );
162 
167 
171  void SetGuardrailSlopingHeight( double dHeight );
172 
177 
181  void SetGuardrailOffsetFromPost( double dOffset );
182 
187 
192 
197 
201  void SetHandrailHorizontalHeight( double dHeight );
202 
206  double GetHandrailSlopingHeight() const;
207 
211  void SetHandrailSlopingHeight( double dHeight );
212 
217 
221  void SetHandrailOffsetFromPost( double dOffset );
222 
227 
232 
237 
241  void SetBottomrailHorizontalHeight( double dHeight );
242 
247 
251  void SetBottomrailSlopingHeight( double dHeight );
252 
257 
261  void SetBottomrailOffsetFromPost( double dOffset );
262 
267 
272 
276  double GetBottomrailSpacing() const;
277 
281  void SetBottomrailSpacing( double dSpacing );
282 
287 
291  void SetBottomrailCount( OdUInt16 iCount );
292 
297 
301  void SetDynamicPostsMaxDistance( double dDistance );
302 
306  double GetBalustersMaxDistance() const;
307 
311  void SetBalustersMaxDistance( double dDistance );
312 
317 
321  void SetBalustersPerTread( OdUInt16 iBaluster );
322 
328 
334 
340 
345 
350 
355 
360 
365 
373  double GetTopExtension() const;
374 
382  double GetBottomExtension() const;
383 
388 
392  void SetGuardrailEntireTopExtension( double dExtension );
393 
398 
402  void SetGuardrailEntireBottomExtension( double dExtension );
403 
408 
412  void SetGuardrailFlightTopExtension( double dExtension );
413 
418 
422  void SetGuardrailFlightBottomExtension( double dExtension );
423 
428 
432  void SetHandrailEntireTopExtension( double dExtension );
433 
438 
442  void SetHandrailEntireBottomExtension( double dExtension );
443 
448 
452  void SetHandrailFlightTopExtension( double dExtension );
453 
458 
462  void SetHandrailFlightBottomExtension( double dExtension );
463 
468 
473 
478 
483 
488 
493 
498 
503 
508 
513 
518 
523 
528 
533 
538 
543 
548 
553 
558 
563 
564  public:
568  void AttachStairAnchor( const OdDbObjectId& idStair );
569 
583  double GetRailOffset( double dInitialOffset,
584  AECDefs::RailingOffsetSide eSide ) const;
585 
592  void GetPostLocations( std::vector<double>& aLocations ) const;
593 
600  void GetFixedPostLocations( std::vector<double>& aLocations,
601  bool bIncludeHidden = false ) const;
602 
609  void GetDynamicPostLocations( std::vector<double>& aLocations ) const;
610 
616  void GetBalusterLocations( std::vector<double>& aLocations ) const;
617 
622 
632  bool Reverse();
633 
634  public:
639  const OdDbObjectId& idRailingStyle );
640 };
641 
642 #endif //__AECDBRAILING_H__
OdSmartPtr< class AECDbRailing > AECDbRailingPtr
Definition: AECDbRailing.h:35
#define AEC_DECLARE_MEMBERS(ClassName)
Definition: AECMacros.h:54
unsigned int OdUInt32
unsigned short OdUInt16
void SetIsAddToGuardrailEntireBottomExtension(bool bAdd)
double GetBottomExtension() const
void SetIsHandrailPresent(bool bPresent)
bool IsHandrailPresent() const
void SetBottomrailCount(OdUInt16 iCount)
void SetGuardrailOffsetSide(AECDefs::RailingOffsetSide eSide)
void SetHandrailSlopingHeight(double dHeight)
void SetGuardrailFlightTopExtension(double dExtension)
void SetIsAddToHandrailFlightBottomExtension(bool bAdd)
AECDefs::RailingOffsetSide GetHandrailOffsetSide() const
void SetGuardrailHorizontalHeight(double dHeight)
void SetBottomrailOffsetSide(AECDefs::RailingOffsetSide eSide)
OdUInt16 GetBalustersPerTread() const
void SetIsFixedPostsAtCornersPresent(bool bPresent)
void SetHandrailHorizontalHeight(double dHeight)
AECRailingSubPtr GetHandrail() const
bool IsAddToHandrailFlightTopExtension() const
double GetHandrailSlopingHeight() const
void SetBottomrailSlopingHeight(double dHeight)
void SetIsAddToHandrailEntireBottomExtension(bool bAdd)
void SetHandrailEntireTopExtension(double dExtension)
double GetBottomrailSlopingHeight() const
void SetIsGuardrailPresent(bool bPresent)
void SetIsAddToGuardrailFlightTopExtension(bool bAdd)
bool IsAddToGuardrailFlightBottomExtension() const
void SetIsDynamicPostsPresent(bool bPresent)
void SetHandrailEntireBottomExtension(double dExtension)
void SetIsAddToHandrailFlightTopExtension(bool bAdd)
double GetRailOffset(double dInitialOffset, AECDefs::RailingOffsetSide eSide) const
double GetHandrailEntireBottomExtension() const
void SetBottomrailOffsetFromPost(double dOffset)
OdUInt16 GetBottomrailCount() const
double GetGuardrailHorizontalHeight() const
void SetGuardrailEntireTopExtension(double dExtension)
AECRailingPostSubPtr GetLastFixedPost() const
void SetBalustersPerTread(OdUInt16 iBaluster)
double GetHandrailOffsetFromPost() const
AECRailingLowerProfileSubPtr GetBalusterProfile() const
bool Reverse()
double GetGuardrailSlopingHeight() const
bool IsDynamicPostsPresent() const
bool IsFixedPostsAtCornersPresent() const
AECImpArraySubPtr GetPosts() const
void SetBottomrailHorizontalHeight(double dHeight)
void SetIsUseStairLandingExtensionsAtFloors(bool bUse)
void SetHandrailOffsetFromPost(double dOffset)
double GetGuardrailEntireTopExtension() const
double GetTopExtension() const
double GetBalustersMaxDistance() const
void SetHandrailFlightBottomExtension(double dExtension)
AECDefs::RailingOffsetSide GetBottomrailOffsetSide() const
double GetGuardrailFlightTopExtension() const
void RedistributePosts()
void SetGuardrailOffsetFromPost(double dOffset)
void SetIsUseStairLandingExtensionsAtFlights(bool bUse)
void GetFixedPostLocations(std::vector< double > &aLocations, bool bIncludeHidden=false) const
AECRailingPostSubPtr GetFixedPost() const
void GetPostLocations(std::vector< double > &aLocations) const
double GetHandrailEntireTopExtension() const
void SetHandrailOffsetSide(AECDefs::RailingOffsetSide eSide)
void SetIsFixedPostsPresent(bool bPresent)
bool IsAddToHandrailEntireBottomExtension() const
double GetGuardrailOffsetFromPost() const
double GetDynamicPostsMaxDistance() const
double GetHandrailHorizontalHeight() const
AECRailingPostSubPtr GetDynamicPost() const
double GetBottomrailSpacing() const
bool IsFixedPostsPresent() const
double GetBottomrailHorizontalHeight() const
double GetGuardrailEntireBottomExtension() const
double GetBottomrailOffsetFromPost() const
void GetDynamicPostLocations(std::vector< double > &aLocations) const
void SetIsBalustersPresent(bool bPresent)
bool IsBottomrailPresent() const
bool IsAddToGuardrailFlightTopExtension() const
double GetHandrailFlightBottomExtension() const
void SetBottomrailSpacing(double dSpacing)
bool IsAddToHandrailFlightBottomExtension() const
bool IsAddToGuardrailEntireTopExtension() const
double GetGuardrailFlightBottomExtension() const
void SetGuardrailEntireBottomExtension(double dExtension)
void SetDynamicPostsMaxDistance(double dDistance)
void SetIsAddToGuardrailEntireTopExtension(bool bAdd)
AECBalusterSubPtr GetBaluster() const
bool IsAddToGuardrailEntireBottomExtension() const
OdUInt32 GetPostCount() const
AECDefs::RailingOffsetSide GetGuardrailOffsetSide() const
bool IsUseStairLandingExtensionsAtFlights() const
AECRailingSubPtr GetBottomrail() const
AECRailingPostSubPtr GetFirstFixedPost() const
void SetGuardrailFlightBottomExtension(double dExtension)
bool IsGuardrailPresent() const
void SetHandrailFlightTopExtension(double dExtension)
void SetBalustersMaxDistance(double dDistance)
static AECDbRailingPtr CreateAECObject(const OdDbObjectId &idBlock, const OdDbObjectId &idRailingStyle)
bool IsUseStairLandingExtensionsAtFloors() const
AECRailingSubPtr GetGuardrail() const
double GetHandrailFlightTopExtension() const
AECImpRailingPostDefSubPtr GetPostByIndex(OdUInt32 iIndex) const
void SetIsAddToGuardrailFlightBottomExtension(bool bAdd)
AECRailingLowerProfileSubPtr GetLowerProfile() const
void SetGuardrailSlopingHeight(double dHeight)
void SetIsAddToHandrailEntireTopExtension(bool bAdd)
bool IsOverrideStairTreadLength() const
void SetIsOverrideStairTreadLength(bool bOverride)
bool IsBalustersPresent() const
void GetBalusterLocations(std::vector< double > &aLocations) const
void SetIsBottomrailPresent(bool bPresent)
bool IsAddToHandrailEntireTopExtension() const
void AttachStairAnchor(const OdDbObjectId &idStair)