dbRevolveOptions.h 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. //////////////////////////////////////////////////////////////////////////////
  2. //
  3. // Copyright 2015 Autodesk, Inc. All rights reserved.
  4. //
  5. // Use of this software is subject to the terms of the Autodesk license
  6. // agreement provided at the time of installation or download, or which
  7. // otherwise accompanies this software in either electronic or hard copy form.
  8. //
  9. //////////////////////////////////////////////////////////////////////////////
  10. //
  11. //
  12. // DESCRIPTION:
  13. //
  14. // The AcDbRevolveOptions class is used for setting options that are
  15. // passed to createRevolvedSurface() and revolveFace().
  16. #pragma once
  17. #ifndef DBREVOLVEOPTIONS_H
  18. #define DBREVOLVEOPTIONS_H
  19. #include "dbmain.h"
  20. #include "gepnt3d.h"
  21. #include "gevec3d.h"
  22. #include "dbbody.h"
  23. #pragma pack(push, 8)
  24. // Utility class for setting options used by createRevolvedSurface().
  25. class AcDbRevolveOptions
  26. {
  27. public:
  28. AcDbRevolveOptions ();
  29. AcDbRevolveOptions ( const AcDbRevolveOptions& src );
  30. ~AcDbRevolveOptions ();
  31. // Assignment operator.
  32. AcDbRevolveOptions& operator = ( const AcDbRevolveOptions& src );
  33. // Get/set draft angle.
  34. double draftAngle () const;
  35. void setDraftAngle ( double ang );
  36. // Get/set twist angle.
  37. double twistAngle () const;
  38. void setTwistAngle ( double ang );
  39. // Get/set close to axis option.
  40. bool closeToAxis () const;
  41. void setCloseToAxis ( bool val );
  42. // Utility functions.
  43. Acad::ErrorStatus checkRevolveCurve ( AcDbEntity* pRevEnt,
  44. const AcGePoint3d& axisPnt, const AcGeVector3d& axisDir,
  45. bool& closed, bool& endPointsOnAxis, bool& planar,
  46. bool displayErrorMessages = false );
  47. private:
  48. void *mpImpRevolveOptions;
  49. friend class AcDbImpRevolveOptions;
  50. };
  51. #pragma pack(pop)
  52. #endif // DBREVOLVEOPTIONS_H