CFx SDK Documentation  2022 SP0
GiXform.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 __ODGIXFORM_H__
25 #define __ODGIXFORM_H__
26 
27 #include "Gi/GiConveyorNode.h"
28 class OdGeMatrix3d;
29 
30 #include "TD_PackPush.h"
31 
37 {
38 protected:
40 public:
42 
43  virtual void setTransform(const OdGeMatrix3d& xMat) = 0;
44  virtual void transform(OdGeMatrix3d& xMat) const = 0;
45 
62  virtual void setOutput2dPoints(bool bOutput2dPoints) = 0;
63  virtual bool output2dPoints() const = 0;
64 };
65 
67 
68 // Several Xform optimizations
69 
75 {
76 protected:
78 public:
80 
81  virtual void setTransform(const OdGeMatrix3d& xMat) = 0;
82  virtual OdGeMatrix3d transform() const = 0;
83 
84  virtual void sync(OdGiXform* xForm) = 0;
86 };
87 
89 
90 class OdGeVector3d;
91 class OdGePoint3d;
92 
98 {
99 protected:
101 public:
103 
104  virtual void setTranslation(const OdGeVector3d &transform) = 0;
105  virtual const OdGeVector3d &translationAsVector() const = 0;
106 
107  virtual void setTranslation(const OdGePoint3d &transform) = 0;
108  virtual const OdGePoint3d &translationAsPoint() const = 0;
109 };
110 
112 
113 #include "TD_PackPop.h"
114 
115 #endif //#ifndef __ODGIXFORM_H__
#define ODGI_EXPORT
Definition: GiExport.h:35
OdSmartPtr< OdGiTranslationXform > OdGiTranslationXformPtr
Definition: GiXform.h:111
OdSmartPtr< OdGiXformOptimizer > OdGiXformOptimizerPtr
Definition: GiXform.h:88
OdSmartPtr< OdGiXform > OdGiXformPtr
Definition: GiXform.h:66
virtual void setTranslation(const OdGePoint3d &transform)=0
virtual void setTranslation(const OdGeVector3d &transform)=0
ODRX_DECLARE_MEMBERS(OdGiTranslationXform)
virtual const OdGeVector3d & translationAsVector() const =0
virtual const OdGePoint3d & translationAsPoint() const =0
virtual void transform(OdGeMatrix3d &xMat) const =0
virtual bool output2dPoints() const =0
virtual void setTransform(const OdGeMatrix3d &xMat)=0
virtual void setOutput2dPoints(bool bOutput2dPoints)=0
ODRX_DECLARE_MEMBERS(OdGiXform)
virtual OdGeMatrix3d transform() const =0
ODRX_DECLARE_MEMBERS(OdGiXformOptimizer)
virtual void sync(OdGiXform *xForm)=0
virtual void setTransform(const OdGeMatrix3d &xMat)=0
virtual OdGiConveyorGeometry * redirectionGeometry()=0