dbSectionSymbol.h 2.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. //
  2. //////////////////////////////////////////////////////////////////////////////
  3. //
  4. // Copyright 2015 Autodesk, Inc. All rights reserved.
  5. //
  6. // Use of this software is subject to the terms of the Autodesk license
  7. // agreement provided at the time of installation or download, or which
  8. // otherwise accompanies this software in either electronic or hard copy form.
  9. //
  10. //////////////////////////////////////////////////////////////////////////////
  11. #pragma once
  12. #include "dbViewSymbol.h"
  13. #pragma pack (push, 8)
  14. #ifndef ACSYNERGY_PORT
  15. #define ACSYNERGY_PORT
  16. #endif
  17. class ACSYNERGY_PORT AcDbSectionSymbol : public AcDbViewSymbol
  18. {
  19. public:
  20. ACRX_DECLARE_MEMBERS(AcDbSectionSymbol);
  21. /// <summary>
  22. /// Default constructor.
  23. /// </summary>
  24. ///
  25. /// <remarks>
  26. /// For internal use only.
  27. /// </remarks>
  28. ///
  29. AcDbSectionSymbol();
  30. int sectionPointsCount() const;
  31. void getSectionPoints(AcGePoint3dArray &pts) const;
  32. Acad::ErrorStatus getSectionPointAt(int idx, AcGePoint3d& pt) const;
  33. Acad::ErrorStatus getBulgeAt(int idx, double& bulge) const;
  34. Acad::ErrorStatus getLabelNameAt(int idx, AcString& sName) const;
  35. Acad::ErrorStatus getLabelOffsetAt(int idx, AcGeVector3d& offset) const;
  36. void getLabelOffsets(AcGeVector3dArray& offsets) const;
  37. bool isViewDirectionLeft() const;
  38. bool isHalfSection () const;
  39. // *** Internal-use-only methods ***
  40. Acad::ErrorStatus setSectionPoints(const AcGePoint3dArray& pts);
  41. Acad::ErrorStatus setSectionPoints(const AcGePoint3dArray& pts, const AcGeDoubleArray& bulges);
  42. Acad::ErrorStatus addSectionPoint(const AcGePoint3d& pt, double bulge = 0);
  43. Acad::ErrorStatus removeSectionPointAt(int idx);
  44. Acad::ErrorStatus setSectionPointAt(int idx, const AcGePoint3d& pt, double bulge = 0);
  45. void clearSectionPoints();
  46. Acad::ErrorStatus setLabelNameAt(int idx, const ACHAR* pName);
  47. Acad::ErrorStatus setLabelNames(const AcArray<AcString>& names);
  48. Acad::ErrorStatus setLabelOffsetAt(int idx, const AcGeVector3d& offset);
  49. Acad::ErrorStatus setLabelOffsets(const AcGeVector3dArray& offsets);
  50. void resetLabelOffsets(bool allOffsets = true);
  51. void setViewDirectionLeft(bool bLeft);
  52. void setIsHalfSection (bool bHalfSection);
  53. bool flipDirection ();
  54. };
  55. #pragma pack (pop)