CFx SDK Documentation
2023 SP0
SDK
CFx
dd_inc
Ge
GeScale2d.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
25
26
27
#ifndef OD_GESCL2D_H
28
#define OD_GESCL2D_H
31
class
OdGeMatrix2d
;
32
class
OdGeScale3d
;
33
#include "
Ge/GeGbl.h
"
34
#include "
TD_PackPush.h
"
35
46
class
GE_TOOLKIT_EXPORT
OdGeScale2d
47
{
48
public
:
54
OdGeScale2d
();
55
OdGeScale2d
(
56
double
factor);
57
OdGeScale2d
(
58
double
xFactor,
59
double
yFactor);
60
61
GE_STATIC_EXPORT
static
const
OdGeScale2d
kIdentity
;
// Multplicitive identity vector.
62
66
OdGeScale2d
operator *
(
67
const
OdGeScale2d
& scaleVec)
const
;
68
69
friend
OdGeScale2d
operator *
(
70
double
factor,
71
const
OdGeScale2d
& scaleVec);
72
82
OdGeScale2d
& operator *= (
83
const
OdGeScale2d
& scaleVec);
84
94
OdGeScale2d
&
preMultBy
(
95
const
OdGeScale2d
& leftSide);
96
106
OdGeScale2d
&
postMultBy
(
107
const
OdGeScale2d
& rightSide);
108
109
123
OdGeScale2d
&
setToProduct
(
124
const
OdGeScale2d
& scaleVec,
double
factor);
125
139
OdGeScale2d
&
setToProduct
(
140
const
OdGeScale2d
& scaleVec1,
141
const
OdGeScale2d
& scaleVec2);
142
150
OdGeScale2d
operator *
(
151
double
factor)
const
;
152
153
156
OdGeScale2d
& operator *= (
157
double
factor);
158
159
160
164
OdGeScale2d
inverse
()
const
;
165
170
OdGeScale2d
&
invert
();
171
177
bool
isProportional
(
178
const
OdGeTol
&
tol
=
OdGeContext::gTol
)
const
;
179
180
bool
operator ==
(
181
const
OdGeScale2d
& scaleVec)
const
;
182
bool
operator !=
(
183
const
OdGeScale2d
& scaleVec)
const
;
184
192
bool
isEqualTo
(
193
const
OdGeScale2d
& scaleVec,
194
const
OdGeTol
&
tol
=
OdGeContext::gTol
)
const
;
195
205
double
& operator [] (
206
unsigned
int
i)
207
{
208
return
* (&sx + i);
209
}
210
double
operator [] (
211
unsigned
int
i)
const
212
{
213
return
* (&sx + i);
214
}
215
223
OdGeScale2d
&
set
(
224
double
xFactor,
225
double
yFactor);
226
227
234
void
getMatrix
(
235
OdGeMatrix2d
& xfm)
const
;
236
246
OdGeScale2d
&
extractScale
(
247
const
OdGeMatrix2d
& xfm);
248
259
OdGeScale2d
&
removeScale
(
260
OdGeMatrix2d
& xfm);
261
266
operator
OdGeMatrix2d
()
const
;
267
operator
OdGeScale3d
()
const
;
268
269
double
sx
;
// X scale *factor*.
270
double
sy
;
// Y scale *factor*.
271
};
272
273
#include "
TD_PackPop.h
"
274
275
#endif
// OD_GESCL2D_H
276
operator*
AECBASE_API OdGePoint3d operator*(const AECECS &matrix, const OdGePoint3d &point)
tol
tol
Definition:
DimVarDefs.h:2287
GE_TOOLKIT_EXPORT
#define GE_TOOLKIT_EXPORT
Definition:
GeExport.h:49
GE_STATIC_EXPORT
#define GE_STATIC_EXPORT
Definition:
GeExport.h:53
GeGbl.h
TD_PackPop.h
TD_PackPush.h
OdGeMatrix2d
Definition:
GeMatrix2d.h:73
OdGeScale2d
Definition:
GeScale2d.h:47
OdGeScale2d::setToProduct
OdGeScale2d & setToProduct(const OdGeScale2d &scaleVec1, const OdGeScale2d &scaleVec2)
OdGeScale2d::isEqualTo
bool isEqualTo(const OdGeScale2d &scaleVec, const OdGeTol &tol=OdGeContext::gTol) const
OdGeScale2d::invert
OdGeScale2d & invert()
OdGeScale2d::OdGeScale2d
OdGeScale2d(double factor)
OdGeScale2d::setToProduct
OdGeScale2d & setToProduct(const OdGeScale2d &scaleVec, double factor)
OdGeScale2d::preMultBy
OdGeScale2d & preMultBy(const OdGeScale2d &leftSide)
OdGeScale2d::postMultBy
OdGeScale2d & postMultBy(const OdGeScale2d &rightSide)
OdGeScale2d::isProportional
bool isProportional(const OdGeTol &tol=OdGeContext::gTol) const
OdGeScale2d::OdGeScale2d
OdGeScale2d()
OdGeScale2d::OdGeScale2d
OdGeScale2d(double xFactor, double yFactor)
OdGeScale2d::extractScale
OdGeScale2d & extractScale(const OdGeMatrix2d &xfm)
OdGeScale2d::sx
double sx
Definition:
GeScale2d.h:269
OdGeScale2d::removeScale
OdGeScale2d & removeScale(OdGeMatrix2d &xfm)
OdGeScale2d::kIdentity
static GE_STATIC_EXPORT const OdGeScale2d kIdentity
Definition:
GeScale2d.h:61
OdGeScale2d::set
OdGeScale2d & set(double xFactor, double yFactor)
OdGeScale2d::sy
double sy
Definition:
GeScale2d.h:270
OdGeScale2d::getMatrix
void getMatrix(OdGeMatrix2d &xfm) const
OdGeScale2d::inverse
OdGeScale2d inverse() const
OdGeScale3d
Definition:
GeScale3d.h:47
OdGeTol
Definition:
GeTol.h:49
AECSpaceRegen::operator==
bool operator==(const BlockRefPath &rA, const BlockRefPath &rB)
DOM.
Definition:
AECDbSpaceTools.h:63
AECSpaceRegen::operator!=
bool operator!=(const BlockRefPath &rA, const BlockRefPath &rB)
DOM.
Definition:
AECDbSpaceTools.h:69
OdGeContext::gTol
static GE_STATIC_EXPORT OdGeTol gTol
Definition:
GeGbl.h:60
Generated on Thu Feb 24 2022 15:09:32