InDesign SDK
20.5
InDesign SDK
Documentation
Bosses
Sample plug-ins
Class Index
All
Classes
Namespaces
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Groups
Pages
ITransform.h
1
//========================================================================================
2
//
3
// $File$
4
//
5
// Owner: Zak_Williamson
6
//
7
// $Author$
8
//
9
// $DateTime$
10
//
11
// $Revision$
12
//
13
// $Change$
14
//
15
// Copyright 1997-2010 Adobe Systems Incorporated. All rights reserved.
16
//
17
// NOTICE: Adobe permits you to use, modify, and distribute this file in accordance
18
// with the terms of the Adobe license agreement accompanying it. If you have received
19
// this file from a source other than Adobe, then your use, modification, or
20
// distribution of it requires the prior written permission of Adobe.
21
//
22
//
23
// Defines the interface for a 3x3 transform.
24
//
25
// Purpose of Interface;
26
// A persistant interface containing transformation data for a page item
27
//
28
//========================================================================================
29
30
#ifndef __ITRANSFORM__
31
#define __ITRANSFORM__
32
33
#include "IPMUnknown.h"
34
#include "GenericID.h"
35
#include "TransformTypes.h"
36
#include "PMReal.h"
37
38
class
PMRect
;
39
class
PMPoint
;
40
class
PMMatrix
;
41
class
PMPolygon4
;
42
class
IGraphicsPort
;
43
47
class
ITransform
:
public
IPMUnknown
48
{
49
public
:
50
enum
{ kDefaultIID = IID_ITRANSFORM };
51
56
virtual
PMReal
GetItemScaleX
()
const
= 0;
57
62
virtual
PMReal
GetItemScaleY
()
const
= 0;
63
68
virtual
PMReal
GetItemSkewAngle
()
const
= 0;
69
74
virtual
PMReal
GetItemRotationAngle
()
const
= 0;
75
83
virtual
void
ScaleItemBy
(
PMReal
xScale,
PMReal
yScale,
const
PMPoint
& center) = 0;
84
92
virtual
void
ScaleItemTo
(
PMReal
xScale,
PMReal
yScale,
const
PMPoint
& center) = 0;
93
103
virtual
void
SkewItemTo
(
PMReal
xSkewAngle,
const
PMPoint
& center) = 0;
104
114
virtual
void
SkewItemBy
(
PMReal
xSkewAngle,
const
PMPoint
& center) = 0;
115
122
virtual
void
RotateItemBy
(
PMReal
angle,
const
PMPoint
& center) = 0;
123
131
virtual
void
RotateItemTo
(
PMReal
angle,
const
PMPoint
& center) = 0;
132
138
virtual
void
TranslateItemBy
(
const
PMPoint
& delta) = 0;
139
145
virtual
void
TranslateItemTo
(
const
PMPoint
& location) = 0;
146
147
148
154
virtual
void
SetInnerToParentMatrix
(
const
PMMatrix
& matrix) = 0;
//t_SetMatrix
155
162
virtual
const
PMMatrix
&
GetInnerToParentMatrix
()
const
= 0;
163
171
virtual
const
PMMatrix
&
GetParentToInnerMatrix
()
const
= 0;
//t_CurrentInverseMatrix
172
173
174
175
191
enum
MatrixType
{ kDynamicMatrix, kStaticMatrix};
192
virtual
ITransform::MatrixType
GetInnerToRootMatrix(
PMMatrix
*pMatrix,
const
ITransform
*pRoot = nil )
const
= 0;
193
198
virtual
bool16
IsTransformParentDependent
()
const
= 0;
199
208
virtual
IPMUnknown
*
QueryTransformParent
() = 0;
209
219
virtual
void
ConcatItemTransform
(
IGraphicsPort
*gPort) = 0;
220
221
};
222
223
#endif // __ITRANSFORM__
tmpdoxygeninput
ITransform.h
Generated on Sat Jul 19 2025 02:54:16 for InDesign SDK by
1.8.3.1