CFx SDK Documentation
2020SP3
SDK
CFx
dd_inc
Gi
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
36
class
ODGI_EXPORT
OdGiXform
:
public
OdGiConveyorNode
37
{
38
protected
:
39
OdGiXform
();
40
public
:
41
ODRX_DECLARE_MEMBERS
(
OdGiXform
);
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
66
typedef
OdSmartPtr<OdGiXform>
OdGiXformPtr
;
67
68
// Several Xform optimizations
69
74
class
ODGI_EXPORT
OdGiXformOptimizer
:
public
OdGiConveyorNode
75
{
76
protected
:
77
OdGiXformOptimizer
();
78
public
:
79
ODRX_DECLARE_MEMBERS
(
OdGiXformOptimizer
);
80
81
virtual
void
setTransform
(
const
OdGeMatrix3d
& xMat) = 0;
82
virtual
OdGeMatrix3d
transform
()
const
= 0;
83
84
virtual
void
sync
(
OdGiXform
* xForm) = 0;
85
virtual
OdGiConveyorGeometry
*
redirectionGeometry
() = 0;
86
};
87
88
typedef
OdSmartPtr<OdGiXformOptimizer>
OdGiXformOptimizerPtr
;
89
90
class
OdGeVector3d
;
91
class
OdGePoint3d
;
92
97
class
ODGI_EXPORT
OdGiTranslationXform
:
public
OdGiXformOptimizer
98
{
99
protected
:
100
OdGiTranslationXform
();
101
public
:
102
ODRX_DECLARE_MEMBERS
(
OdGiTranslationXform
);
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
111
typedef
OdSmartPtr<OdGiTranslationXform>
OdGiTranslationXformPtr
;
112
113
#include "
TD_PackPop.h
"
114
115
#endif //#ifndef __ODGIXFORM_H__
OdGiXformOptimizer::sync
virtual void sync(OdGiXform *xForm)=0
OdGeVector3d
Definition:
GeVector3d.h:54
OdGiXformOptimizer::setTransform
virtual void setTransform(const OdGeMatrix3d &xMat)=0
OdGiXformOptimizer::OdGiXformOptimizer
OdGiXformOptimizer()
OdGiXform::output2dPoints
virtual bool output2dPoints() const =0
OdGiTranslationXform::translationAsVector
virtual const OdGeVector3d & translationAsVector() const =0
OdGiXformOptimizer
Definition:
GiXform.h:75
OdGiTranslationXformPtr
OdSmartPtr< OdGiTranslationXform > OdGiTranslationXformPtr
Definition:
GiXform.h:111
OdGiTranslationXform
Definition:
GiXform.h:98
OdGiXform::setTransform
virtual void setTransform(const OdGeMatrix3d &xMat)=0
TD_PackPop.h
OdGiXformPtr
OdSmartPtr< OdGiXform > OdGiXformPtr
Definition:
GiXform.h:66
OdGiXform::transform
virtual void transform(OdGeMatrix3d &xMat) const =0
OdGeMatrix3d
Definition:
GeMatrix3d.h:73
ODGI_EXPORT
#define ODGI_EXPORT
Definition:
GiExport.h:35
OdGiXformOptimizer::redirectionGeometry
virtual OdGiConveyorGeometry * redirectionGeometry()=0
OdGiConveyorGeometry
Definition:
GiConveyorGeometry.h:270
OdGiXform::OdGiXform
OdGiXform()
OdSmartPtr< OdGiXform >
OdGePoint3d
Definition:
GePoint3d.h:55
TD_PackPush.h
OdGiXformOptimizer::transform
virtual OdGeMatrix3d transform() const =0
OdGiTranslationXform::setTranslation
virtual void setTranslation(const OdGeVector3d &transform)=0
OdGiXformOptimizerPtr
OdSmartPtr< OdGiXformOptimizer > OdGiXformOptimizerPtr
Definition:
GiXform.h:88
OdGiConveyorNode
Definition:
GiConveyorNode.h:84
GiConveyorNode.h
OdGiTranslationXform::ODRX_DECLARE_MEMBERS
ODRX_DECLARE_MEMBERS(OdGiTranslationXform)
OdGiXform::ODRX_DECLARE_MEMBERS
ODRX_DECLARE_MEMBERS(OdGiXform)
OdGiXform
Definition:
GiXform.h:37
OdGiTranslationXform::setTranslation
virtual void setTranslation(const OdGePoint3d &transform)=0
OdGiTranslationXform::OdGiTranslationXform
OdGiTranslationXform()
OdGiTranslationXform::translationAsPoint
virtual const OdGePoint3d & translationAsPoint() const =0
OdGiXform::setOutput2dPoints
virtual void setOutput2dPoints(bool bOutput2dPoints)=0
OdGiXformOptimizer::ODRX_DECLARE_MEMBERS
ODRX_DECLARE_MEMBERS(OdGiXformOptimizer)
Generated on Mon Oct 12 2020 11:49:34