geline3d.h 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  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 AcGeLinearEnt3d - A mathematical entity
  14. // used to represent a line in 3-space.
  15. #ifndef AC_GELINE3D_H
  16. #define AC_GELINE3D_H
  17. #include "gelent3d.h"
  18. #pragma pack (push, 8)
  19. class AcGeLine2d;
  20. class
  21. GE_DLLEXPIMPORT
  22. AcGeLine3d : public AcGeLinearEnt3d
  23. {
  24. public:
  25. AcGeLine3d();
  26. AcGeLine3d(const AcGeLine3d& line);
  27. AcGeLine3d(const AcGePoint3d& pnt, const AcGeVector3d& vec);
  28. AcGeLine3d(const AcGePoint3d& pnt1, const AcGePoint3d& pnt2);
  29. // The x-axis, y-axis, and z-axis lines.
  30. //
  31. static const AcGeLine3d kXAxis;
  32. static const AcGeLine3d kYAxis;
  33. static const AcGeLine3d kZAxis;
  34. // Set methods.
  35. //
  36. AcGeLine3d& set(const AcGePoint3d& pnt, const AcGeVector3d& vec);
  37. AcGeLine3d& set(const AcGePoint3d& pnt1, const AcGePoint3d& pnt2);
  38. // Assignment operator.
  39. //
  40. AcGeLine3d& operator = (const AcGeLine3d& line);
  41. };
  42. #pragma pack (pop)
  43. #endif