geextc2d.h 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  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. // DESCRIPTION:
  12. //
  13. // This file contains the class AcGeExternalCurve2d - A
  14. // representation for a curve that has its definition external to
  15. // gelib.
  16. #ifndef AC_GEEXTC2D_H
  17. #define AC_GEEXTC2D_H
  18. #include "gecurv2d.h"
  19. #include "gearc2d.h"
  20. #include "gevec2d.h"
  21. #include "gepnt2d.h"
  22. #pragma pack (push, 8)
  23. class AcGeNurbCurve2d;
  24. class AcGeExternalCurve2d;
  25. class AcGeExternalCurve2d;
  26. class
  27. GX_DLLEXPIMPORT
  28. AcGeExternalCurve2d : public AcGeCurve2d
  29. {
  30. public:
  31. AcGeExternalCurve2d();
  32. AcGeExternalCurve2d(const AcGeExternalCurve2d&);
  33. AcGeExternalCurve2d(void* curveDef, AcGe::ExternalEntityKind curveKind,
  34. Adesk::Boolean makeCopy = Adesk::kTrue);
  35. Adesk::Boolean isNurbCurve() const;
  36. Adesk::Boolean isNurbCurve(AcGeNurbCurve2d& nurbCurve) const;
  37. Adesk::Boolean isDefined () const;
  38. void getExternalCurve(void*& curveDef) const;
  39. // Type of the external curve.
  40. //
  41. AcGe::ExternalEntityKind externalCurveKind() const;
  42. // Reset surface
  43. //
  44. AcGeExternalCurve2d& set(void* curveDef, AcGe::ExternalEntityKind curveKind,
  45. Adesk::Boolean makeCopy = Adesk::kTrue);
  46. // Assignment operator
  47. //
  48. AcGeExternalCurve2d& operator = (const AcGeExternalCurve2d& src);
  49. // Ownership of curve
  50. //
  51. Adesk::Boolean isOwnerOfCurve() const;
  52. AcGeExternalCurve2d& setToOwnCurve();
  53. };
  54. #pragma pack (pop)
  55. #endif