|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object com.esri.arcgis.geometry.AffineTransformation2D
public class AffineTransformation2D
A two dimensional affine transformation.
The AffineTransformation2D coclass offers the ability to construct custom
transformations for geometrical shapes. It is useful for creating
particular transformations that are not supported by ITransform2D and
also for performing numerous transformations in one go.
Transformations can be done in two different ways. Firstly, and most
commonly within the geometry model, the AffineTransformation2D
object can be used in the ITransform2D::Transform method to transform
an existing Geometry. Alternatively, the methods of ITransform can
be used to transform points or values individually.
AffineTransformation2D implements two types of transformation.
Conformal Transformation (IAffineTransformation2D3::DefineConformalFromControlPoints)
and Affine Tranformation (IAffineTransformation2D::DefineFromControlPoints).
CONFORMAL TRANSFORMATION
At least two points are required to define this transformation.
The CONFORMAL equations use 4 parameters.
MATHEMATICAL MODEL :
The transformation can be described by a set of ceofficients (a, b, c, d, e, f)
of two linear equations:
X = ax + by + c Y = -bx + ay + f
or in matrix form:
a |
b |
0 |
||||||||||||||
X |
Y |
1 |
= |
x |
y |
1 |
-b |
a |
0 |
|||||||
c |
d |
1 |
The transformation elements can be interpreted as a sequence of simple operations:
Scaling * Rotation * Translation =
Sx |
0 |
0 |
cos r |
sin r |
0 |
1 |
0 |
0 |
||||||||||||||
x |
y |
1 |
0 |
Sy |
0 |
-sin r |
cos r |
0 |
0 |
1 |
0 |
|||||||||||
0 |
0 |
1 |
0 |
0 |
1 |
Dx |
Dy |
1 |
Where :
S - scaling factors (can be negative) r - rotation angle in radians, measured counter-clockwise from x- axis (-pi < r <= pi) Dx, Dy - translation distances in x and y direction
These elements have the following locations within the transformation
matrix by which a ROW vector {x, y, 1} is to be POST-multiplied.
Given the matrix above the equation parameters can be interpreted as :
a = S cos r
b = S sin r
c = Dx
d = Dy
AFFINE TRANSFORMATION
At least three points are required to define this transformation.
The AFFINE equations use six parameters.
MATHEMATICAL MODEL :
The transformation can be described by a set of ceofficients (a, b, c, d, e, f)
of two linear equations:
X = a * x + b * y + c
Y = d * x + e * y + f
or in matrix form:
a |
d |
0 |
||||||||||||||
X |
Y |
1 |
= |
x |
y |
1 |
b |
e |
0 |
|||||||
c |
f |
1 |
The transformation elements can be interpreted as a sequence of simple operations:
Scaling * Shearing * Rotation * Translation =
Sx |
0 |
1 |
1 |
0 |
0 |
cos r |
sin r |
0 |
1 |
0 |
0 |
|||||||||||||||||
x |
y |
1 |
0 |
Sy |
0 |
tan s |
1 |
0 |
-sin r |
cos r |
0 |
0 |
1 |
0 |
||||||||||||||
0 |
0 |
1 |
0 |
0 |
1 |
0 |
0 |
1 |
Dx |
Dy |
1 |
Where :
Sx, Sy - scaling factors (can be negative)
s - skew angle of shearing along x-axis, measured from y-axis (-pi/2 < s < pi/2)
r - rotation angle in radians, measured counter-clockwise from x-axis (-pi < r <= pi)
Dx, Dy - translation distances in x and y direction (can be negative)
These elements have the following locations within the transformation matrix by which a ROW vector {x, y, 1} is to be POST-multiplied.
Sx * cos r |
Sx * sin r |
0 |
||
(Sy / cos s) * sin (s - r) |
(Sy / cos s) * cos (s - r) |
0 |
||
Dx |
Dy |
1 |
Given the matrix above the equation parameters can be interpreted as :
a = Sx cos r
b = (Sy / cos s) sin(s - r)
c = Dx
d = Sx sin r
e = (Sy / cos s) cos(s - r)
f = Dy
The skew angle is not public yet and cannot be directly get by using a method. But this angle can be calculated by first retrieveing some of the other parameters (b, d, r).
s = atan (b/d) + r
At 8.1, AffineTransformation2D does not implement the following methods:
IClone::Assign
IClone::IsEqual
IClone::IsIdentical
ITransformation::TransformMeasuresFF
ITransformation::TransformMeasuresFI
ITransformation::TransformMeasuresIF
ITransformation::TransformMeasuresII
ITransformation::TransformPointsIF
ITransformation::TransformPointsII
All of these methods return an HRESULT of E_NOTIMPL in C++. In VB, this is Error 445, "Object doesn't support this action".
Constructor Summary | |
---|---|
AffineTransformation2D()
Constructs a AffineTransformation2D using ArcGIS Engine. |
|
AffineTransformation2D(Object obj)
Deprecated. As of ArcGIS 9.2, replaced by normal Java casts. AffineTransformation2D theAffineTransformation2D = (AffineTransformation2D) obj; |
Method Summary | |
---|---|
void |
assign(IClone src)
Assigns the properties of src to the receiver. |
void |
defineConformalFromControlPoints(int numPoints,
IPoint fromPoints,
IPoint toPoints)
Defines the best conformal affine transformation between two sets of points. |
void |
defineConformalFromControlPoints(IPoint[] fromPoints,
IPoint[] toPoints)
Defines the best conformal affine transformation between two sets of points. |
void |
defineFromControlPoints(int numPoints,
IPoint fromPoints,
IPoint toPoints)
Defines the best affine transformation between two sets of points. |
void |
defineFromControlPoints(IPoint[] fromPoints,
IPoint[] toPoints)
Defines the best affine transformation between two sets of points. |
void |
defineFromEnvelopes(IEnvelope from,
IEnvelope to)
Defines a transformation that maps a point relative to one envelope to a similar position relative to another envelope. |
void |
defineFromEnvelopesEx(IEnvelope from,
IEnvelope to,
IEnvelope outFrom,
boolean assumeFalseOrigin,
boolean keepAspect,
boolean flipIt)
Defines a transformation that maps a point relative to one envelope to a similar position relative to another envelope. |
void |
defineReflection(ILine l)
Defines a transformation that can perform a reflection about the line l. |
boolean |
equals(Object o)
Compare this object with another |
IClone |
esri_clone()
Clones the receiver and assigns the result to *clone. |
static String |
getClsid()
getClsid. |
void |
getControlPointError(int i,
double[] fromError,
double[] toError)
Returns the errors involved in moving control point i from the 'from' to 'to' system. |
IPoint |
getMoveOrigin()
The origin of accumulated transformations used when projecting an affine transformation to a different spatial reference system. |
void |
getRMSError(double[] fromError,
double[] toError)
RMS (Root Mean Square) error expressed relative to the 'from' and 'to' points defining the transformation. |
double |
getRotation()
The rotation angle. |
ISpatialReference |
getSpatialReference()
The spatial reference in which this transformation is meaningful. |
double |
getXScale()
The scale along the X axis. |
double |
getXTranslation()
The translation along the X axis. |
double |
getYScale()
The scale along the Y axis. |
double |
getYTranslation()
The translation along the Y axis. |
void |
getZShift(double[] zOrigin,
double[] zOffset)
The shift in the Z direction. |
int |
hashCode()
the hashcode for this object |
void |
interfaceSupportsErrorInfo(GUID riid)
interfaceSupportsErrorInfo |
boolean |
isEqual(IClone other)
Indicates if the receiver and other have the same properties. |
boolean |
isIdentical(IClone other)
Indicates if the receiver and other are the same object. |
boolean |
isReflective()
Indicates if the transformation contains a reflection (determinant is negative). |
void |
move(double dx,
double dy)
Incorporates a translation factor into the transformation. |
void |
moveVector(ILine movementVector)
Performs an X and Y translation defined by a 2D vector. |
void |
postMultiply(IAffineTransformation2D postTransform)
Post-multiplies the transformation by another transformation. |
void |
postMultiply(IAffineTransformation2D3GEN postTransform)
Post-multiplies the transformation by another transformation. |
void |
preMultiply(IAffineTransformation2D preTransform)
Pre-multiplies the transformation by another transformation. |
void |
preMultiply(IAffineTransformation2D3GEN preTransform)
Pre-multiplies the transformation by another transformation. |
void |
project(ISpatialReference newSpatialReference)
Moves this transformation into another spatial reference. |
void |
putZShift(double zOrigin,
double zOffset)
The shift in the Z direction. |
void |
queryLinearCoefficients(int direction,
double[] params)
Returns the linear coefficients which define the two dimensional affine transformation. |
void |
queryLinearCoefficients(int direction,
double[][] params)
Returns the linear coefficients which define the two dimensional affine transformation. |
void |
reset()
Resets the tranformation. |
void |
rotate(double da)
Incorporates a rotation (in radians) into the transformation. |
void |
scale(double dx,
double dy)
Incorporates scale factors into the transformation. |
void |
setLinearCoefficients(int direction,
double[] params)
Sets the linear coefficients which define the two dimensional affine transformation. |
void |
setMoveOrigin(IPoint origin)
The origin of accumulated transformations used when projecting an affine transformation to a different spatial reference system. |
void |
setSpatialReferenceByRef(ISpatialReference sR)
The spatial reference in which this transformation is meaningful. |
void |
transformMeasuresFF(int direction,
double[] inMeasures,
double[][] outMeasures)
Transforms floating point measures to floating point measures (or do the inverse). |
void |
transformMeasuresFF(int direction,
int cMeasures,
double[] inMeasures,
double[] outMeasures)
Transforms floating point measures to floating point measures (or do the inverse). |
void |
transformMeasuresFI(int direction,
double[] inMeasures,
int[][] outMeasures)
Transforms floating point measures to integer measures (or do the inverse). |
void |
transformMeasuresFI(int direction,
int cMeasures,
double[] inMeasures,
int[] outMeasures)
Transforms floating point measures to integer measures (or do the inverse). |
void |
transformMeasuresIF(int direction,
int[] inMeasures,
double[][] outMeasures)
Transforms integer measures to floating point measures (or do the inverse). |
void |
transformMeasuresIF(int direction,
int cMeasures,
int[] inMeasures,
double[] outMeasures)
Transforms integer measures to floating point measures (or do the inverse). |
void |
transformMeasuresII(int direction,
int[] inMeasures,
int[][] outMeasures)
Transforms integer measures to integer measures (or do the inverse). |
void |
transformMeasuresII(int direction,
int cMeasures,
int[] inMeasures,
int[] outMeasures)
Transforms integer measures to integer measures (or do the inverse). |
void |
transformPointsFF(int direction,
double[] inPoints,
double[][] outPoints)
Transforms floating point points to floating point points (or do the inverse). |
void |
transformPointsFF(int direction,
int cPoints,
double[] inPoints,
double[] outPoints)
Transforms floating point points to floating point points (or do the inverse). |
void |
transformPointsFI(int direction,
double[] inPoints,
int[][] outPoints)
Transforms floating point points to integer points (or do the inverse). |
void |
transformPointsFI(int direction,
int cPoints,
double[] inPoints,
int[] outPoints)
Transforms floating point points to integer points (or do the inverse). |
void |
transformPointsIF(int direction,
int[] inPoints,
double[][] outPoints)
Transforms integer points to floating point points (or do the inverse). |
void |
transformPointsIF(int direction,
int cPoints,
int[] inPoints,
double[] outPoints)
Transforms integer points to floating point points (or do the inverse). |
void |
transformPointsII(int direction,
int[] inPoints,
int[][] outPoints)
Transforms integer points to integer points (or do the inverse). |
void |
transformPointsII(int direction,
int cPoints,
int[] inPoints,
int[] outPoints)
Transforms integer points to integer points (or do the inverse). |
Methods inherited from class java.lang.Object |
---|
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait |
Methods inherited from interface com.esri.arcgis.interop.RemoteObjRef |
---|
getJintegraDispatch, release |
Constructor Detail |
---|
public AffineTransformation2D() throws IOException, UnknownHostException
IOException
- if there are interop problems
UnknownHostException
- if there are interop problemspublic AffineTransformation2D(Object obj) throws IOException
AffineTransformation2D theAffineTransformation2D = (AffineTransformation2D) obj;
obj
to AffineTransformation2D
.
obj
- an object returned from ArcGIS Engine or Server
IOException
- if there are interop problemsMethod Detail |
---|
public static String getClsid()
public boolean equals(Object o)
equals
in class Object
public int hashCode()
hashCode
in class Object
public void transformMeasuresFF(int direction, double[] inMeasures, double[][] outMeasures) throws IOException, AutomationException
transformMeasuresFF
in interface IAffineTransformation2D3GEN
transformMeasuresFF
in interface ITransformationGEN
direction
- A com.esri.arcgis.geometry.esriTransformDirection constant (in)inMeasures
- The inMeasures (in)outMeasures
- The outMeasures (in/out: use single element array)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void transformMeasuresFI(int direction, double[] inMeasures, int[][] outMeasures) throws IOException, AutomationException
transformMeasuresFI
in interface IAffineTransformation2D3GEN
transformMeasuresFI
in interface ITransformationGEN
direction
- A com.esri.arcgis.geometry.esriTransformDirection constant (in)inMeasures
- The inMeasures (in)outMeasures
- The outMeasures (in/out: use single element array)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void transformMeasuresIF(int direction, int[] inMeasures, double[][] outMeasures) throws IOException, AutomationException
transformMeasuresIF
in interface IAffineTransformation2D3GEN
transformMeasuresIF
in interface ITransformationGEN
direction
- A com.esri.arcgis.geometry.esriTransformDirection constant (in)inMeasures
- The inMeasures (in)outMeasures
- The outMeasures (in/out: use single element array)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void transformMeasuresII(int direction, int[] inMeasures, int[][] outMeasures) throws IOException, AutomationException
transformMeasuresII
in interface IAffineTransformation2D3GEN
transformMeasuresII
in interface ITransformationGEN
direction
- A com.esri.arcgis.geometry.esriTransformDirection constant (in)inMeasures
- The inMeasures (in)outMeasures
- The outMeasures (in/out: use single element array)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void transformPointsFF(int direction, double[] inPoints, double[][] outPoints) throws IOException, AutomationException
transformPointsFF
in interface IAffineTransformation2D3GEN
transformPointsFF
in interface ITransformationGEN
direction
- A com.esri.arcgis.geometry.esriTransformDirection constant (in)inPoints
- The inPoints (in)outPoints
- The outPoints (in/out: use single element array)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void transformPointsFI(int direction, double[] inPoints, int[][] outPoints) throws IOException, AutomationException
transformPointsFI
in interface IAffineTransformation2D3GEN
transformPointsFI
in interface ITransformationGEN
direction
- A com.esri.arcgis.geometry.esriTransformDirection constant (in)inPoints
- The inPoints (in)outPoints
- The outPoints (in/out: use single element array)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void transformPointsIF(int direction, int[] inPoints, double[][] outPoints) throws IOException, AutomationException
transformPointsIF
in interface IAffineTransformation2D3GEN
transformPointsIF
in interface ITransformationGEN
direction
- A com.esri.arcgis.geometry.esriTransformDirection constant (in)inPoints
- The inPoints (in)outPoints
- The outPoints (in/out: use single element array)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void transformPointsII(int direction, int[] inPoints, int[][] outPoints) throws IOException, AutomationException
transformPointsII
in interface IAffineTransformation2D3GEN
transformPointsII
in interface ITransformationGEN
direction
- A com.esri.arcgis.geometry.esriTransformDirection constant (in)inPoints
- The inPoints (in)outPoints
- The outPoints (in/out: use single element array)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void setSpatialReferenceByRef(ISpatialReference sR) throws IOException, AutomationException
setSpatialReferenceByRef
in interface IAffineTransformation2D
setSpatialReferenceByRef
in interface IAffineTransformation2D3GEN
sR
- A reference to a com.esri.arcgis.geometry.ISpatialReference (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public ISpatialReference getSpatialReference() throws IOException, AutomationException
getSpatialReference
in interface IAffineTransformation2D
getSpatialReference
in interface IAffineTransformation2D3GEN
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void reset() throws IOException, AutomationException
reset
in interface IAffineTransformation2D
reset
in interface IAffineTransformation2D3GEN
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void defineFromControlPoints(IPoint[] fromPoints, IPoint[] toPoints) throws IOException, AutomationException
defineFromControlPoints
in interface IAffineTransformation2D3GEN
fromPoints
- A reference to a com.esri.arcgis.geometry.IPoint array (in)toPoints
- A reference to a com.esri.arcgis.geometry.IPoint array (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void defineFromEnvelopes(IEnvelope from, IEnvelope to) throws IOException, AutomationException
defineFromEnvelopes
in interface IAffineTransformation2D
defineFromEnvelopes
in interface IAffineTransformation2D3GEN
from
- A reference to a com.esri.arcgis.geometry.IEnvelope (in)to
- A reference to a com.esri.arcgis.geometry.IEnvelope (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void defineFromEnvelopesEx(IEnvelope from, IEnvelope to, IEnvelope outFrom, boolean assumeFalseOrigin, boolean keepAspect, boolean flipIt) throws IOException, AutomationException
defineFromEnvelopesEx
in interface IAffineTransformation2D
defineFromEnvelopesEx
in interface IAffineTransformation2D3GEN
from
- A reference to a com.esri.arcgis.geometry.IEnvelope (in)to
- A reference to a com.esri.arcgis.geometry.IEnvelope (in)outFrom
- A reference to a com.esri.arcgis.geometry.IEnvelope (in)assumeFalseOrigin
- The assumeFalseOrigin (in)keepAspect
- The keepAspect (in)flipIt
- The flipIt (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void defineReflection(ILine l) throws IOException, AutomationException
defineReflection
in interface IAffineTransformation2D
defineReflection
in interface IAffineTransformation2D3GEN
l
- A reference to a com.esri.arcgis.geometry.ILine (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void getRMSError(double[] fromError, double[] toError) throws IOException, AutomationException
getRMSError
in interface IAffineTransformation2D
getRMSError
in interface IAffineTransformation2D3GEN
fromError
- The fromError (in/out: use single element array)toError
- The toError (in/out: use single element array)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void getControlPointError(int i, double[] fromError, double[] toError) throws IOException, AutomationException
getControlPointError
in interface IAffineTransformation2D
getControlPointError
in interface IAffineTransformation2D3GEN
i
- The i (in)fromError
- The fromError (in/out: use single element array)toError
- The toError (in/out: use single element array)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public double getXScale() throws IOException, AutomationException
getXScale
in interface IAffineTransformation2D
getXScale
in interface IAffineTransformation2D3GEN
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public double getYScale() throws IOException, AutomationException
getYScale
in interface IAffineTransformation2D
getYScale
in interface IAffineTransformation2D3GEN
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public double getXTranslation() throws IOException, AutomationException
getXTranslation
in interface IAffineTransformation2D
getXTranslation
in interface IAffineTransformation2D3GEN
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public double getYTranslation() throws IOException, AutomationException
getYTranslation
in interface IAffineTransformation2D
getYTranslation
in interface IAffineTransformation2D3GEN
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public double getRotation() throws IOException, AutomationException
getRotation
in interface IAffineTransformation2D
getRotation
in interface IAffineTransformation2D3GEN
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void scale(double dx, double dy) throws IOException, AutomationException
scale
in interface IAffineTransformation2D
scale
in interface IAffineTransformation2D3GEN
dx
- The dx (in)dy
- The dy (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void setMoveOrigin(IPoint origin) throws IOException, AutomationException
setMoveOrigin
in interface IAffineTransformation2D
setMoveOrigin
in interface IAffineTransformation2D3GEN
origin
- A reference to a com.esri.arcgis.geometry.IPoint (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void moveVector(ILine movementVector) throws IOException, AutomationException
moveVector
in interface IAffineTransformation2D
moveVector
in interface IAffineTransformation2D3GEN
movementVector
- A reference to a com.esri.arcgis.geometry.ILine (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void move(double dx, double dy) throws IOException, AutomationException
move
in interface IAffineTransformation2D
move
in interface IAffineTransformation2D3GEN
dx
- The dx (in)dy
- The dy (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void rotate(double da) throws IOException, AutomationException
rotate
in interface IAffineTransformation2D
rotate
in interface IAffineTransformation2D3GEN
da
- The da (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void postMultiply(IAffineTransformation2D3GEN postTransform) throws IOException, AutomationException
postMultiply
in interface IAffineTransformation2D3GEN
postTransform
- A reference to a com.esri.arcgis.geometry.IAffineTransformation2D3GEN (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void preMultiply(IAffineTransformation2D3GEN preTransform) throws IOException, AutomationException
preMultiply
in interface IAffineTransformation2D3GEN
preTransform
- A reference to a com.esri.arcgis.geometry.IAffineTransformation2D3GEN (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public boolean isReflective() throws IOException, AutomationException
isReflective
in interface IAffineTransformation2D
isReflective
in interface IAffineTransformation2D3GEN
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void project(ISpatialReference newSpatialReference) throws IOException, AutomationException
project
in interface IAffineTransformation2D
project
in interface IAffineTransformation2D3GEN
newSpatialReference
- A reference to a com.esri.arcgis.geometry.ISpatialReference (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public IPoint getMoveOrigin() throws IOException, AutomationException
getMoveOrigin
in interface IAffineTransformation2D2
getMoveOrigin
in interface IAffineTransformation2D3GEN
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void defineConformalFromControlPoints(IPoint[] fromPoints, IPoint[] toPoints) throws IOException, AutomationException
defineConformalFromControlPoints
in interface IAffineTransformation2D3GEN
fromPoints
- A reference to a com.esri.arcgis.geometry.IPoint array (in)toPoints
- A reference to a com.esri.arcgis.geometry.IPoint array (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void queryLinearCoefficients(int direction, double[][] params) throws IOException, AutomationException
queryLinearCoefficients
in interface IAffineTransformation2D3GEN
direction
- A com.esri.arcgis.geometry.esriTransformDirection constant (in)params
- The params (in/out: use single element array)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void setLinearCoefficients(int direction, double[] params) throws IOException, AutomationException
setLinearCoefficients
in interface IAffineTransformation2D3
setLinearCoefficients
in interface IAffineTransformation2D3GEN
direction
- A com.esri.arcgis.geometry.esriTransformDirection constant (in)params
- The params (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void transformMeasuresFF(int direction, int cMeasures, double[] inMeasures, double[] outMeasures) throws IOException, AutomationException
transformMeasuresFF
in interface ITransformation
direction
- A com.esri.arcgis.geometry.esriTransformDirection constant (in)cMeasures
- The cMeasures (in)inMeasures
- The inMeasures (in)outMeasures
- The outMeasures (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void transformMeasuresFI(int direction, int cMeasures, double[] inMeasures, int[] outMeasures) throws IOException, AutomationException
transformMeasuresFI
in interface ITransformation
direction
- A com.esri.arcgis.geometry.esriTransformDirection constant (in)cMeasures
- The cMeasures (in)inMeasures
- The inMeasures (in)outMeasures
- The outMeasures (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void transformMeasuresIF(int direction, int cMeasures, int[] inMeasures, double[] outMeasures) throws IOException, AutomationException
transformMeasuresIF
in interface ITransformation
direction
- A com.esri.arcgis.geometry.esriTransformDirection constant (in)cMeasures
- The cMeasures (in)inMeasures
- The inMeasures (in)outMeasures
- The outMeasures (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void transformMeasuresII(int direction, int cMeasures, int[] inMeasures, int[] outMeasures) throws IOException, AutomationException
transformMeasuresII
in interface ITransformation
direction
- A com.esri.arcgis.geometry.esriTransformDirection constant (in)cMeasures
- The cMeasures (in)inMeasures
- The inMeasures (in)outMeasures
- The outMeasures (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void transformPointsFF(int direction, int cPoints, double[] inPoints, double[] outPoints) throws IOException, AutomationException
The cPoints parameter is the number of points you wish to transform. inPoints and outPoints are one-dimensional arrays so you must interleave coordinate pairs into the arrays.
transformPointsFF
in interface ITransformation
direction
- A com.esri.arcgis.geometry.esriTransformDirection constant (in)cPoints
- The cPoints (in)inPoints
- The inPoints (in)outPoints
- The outPoints (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void transformPointsFI(int direction, int cPoints, double[] inPoints, int[] outPoints) throws IOException, AutomationException
The cPoints parameter is the number of points you wish to transform. inPoints and outPoints are one-dimensional arrays so you must interleave coordinate pairs into the arrays.
transformPointsFI
in interface ITransformation
direction
- A com.esri.arcgis.geometry.esriTransformDirection constant (in)cPoints
- The cPoints (in)inPoints
- The inPoints (in)outPoints
- The outPoints (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void transformPointsIF(int direction, int cPoints, int[] inPoints, double[] outPoints) throws IOException, AutomationException
The cPoints parameter is the number of points you wish to transform. inPoints and outPoints are one-dimensional arrays so you must interleave coordinate pairs into the arrays.
transformPointsIF
in interface ITransformation
direction
- A com.esri.arcgis.geometry.esriTransformDirection constant (in)cPoints
- The cPoints (in)inPoints
- The inPoints (in)outPoints
- The outPoints (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void transformPointsII(int direction, int cPoints, int[] inPoints, int[] outPoints) throws IOException, AutomationException
The cPoints parameter is the number of points you wish to transform. inPoints and outPoints are one-dimensional arrays so you must interleave coordinate pairs into the arrays.
transformPointsII
in interface ITransformation
direction
- A com.esri.arcgis.geometry.esriTransformDirection constant (in)cPoints
- The cPoints (in)inPoints
- The inPoints (in)outPoints
- The outPoints (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void defineFromControlPoints(int numPoints, IPoint fromPoints, IPoint toPoints) throws IOException, AutomationException
The DefineFromControlPoints method may be particularly useful if you wish to register a set of control points from a digitizer to existing known control points. This method calculates a ‘best fit’ affine transformation to map one set of control points onto another. Please see the AffineTransformation2D coclass for a description of the mathematical model.
defineFromControlPoints
in interface IAffineTransformation2D
numPoints
- The numPoints (in)fromPoints
- A reference to a com.esri.arcgis.geometry.IPoint (in)toPoints
- A reference to a com.esri.arcgis.geometry.IPoint (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void postMultiply(IAffineTransformation2D postTransform) throws IOException, AutomationException
Multiplies the existing affine transformation matrix with another affine transformation matrix. The multiplication occurs after the existing transformation is applied. This is a right side matrix multiplication.
postMultiply
in interface IAffineTransformation2D
postTransform
- A reference to a com.esri.arcgis.geometry.IAffineTransformation2D (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void preMultiply(IAffineTransformation2D preTransform) throws IOException, AutomationException
Multiplies the existing affine transformation matrix with another affine transformation matrix. The multiplication occurs after the other transformation is first applied. This is a left side matrix multiplication.
preMultiply
in interface IAffineTransformation2D
preTransform
- A reference to a com.esri.arcgis.geometry.IAffineTransformation2D (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void defineConformalFromControlPoints(int numPoints, IPoint fromPoints, IPoint toPoints) throws IOException, AutomationException
The DefineConformalFromControlPoints method allows defining a Conformal Transformation based on control points arrays. Please see the AffineTransformation2D coclass for a description of the mathematical model.
defineConformalFromControlPoints
in interface IAffineTransformation2D3
numPoints
- The numPoints (in)fromPoints
- A reference to a com.esri.arcgis.geometry.IPoint (in)toPoints
- A reference to a com.esri.arcgis.geometry.IPoint (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void queryLinearCoefficients(int direction, double[] params) throws IOException, AutomationException
The QueryLinearCoefficients method allows to get the linear coefficients (a, b, c, d, e, f) for the current Affine Transformation. Please see the AffineTransformation2D coclass for a description of the mathematical model. The array will contain the parameters in alphabetical order.
queryLinearCoefficients
in interface IAffineTransformation2D3
direction
- A com.esri.arcgis.geometry.esriTransformDirection constant (in)params
- The params (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public IClone esri_clone() throws IOException, AutomationException
esri_clone
in interface IClone
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void assign(IClone src) throws IOException, AutomationException
assign
in interface IClone
src
- A reference to a com.esri.arcgis.system.IClone (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public boolean isEqual(IClone other) throws IOException, AutomationException
IsEqual returns True if the receiver and the source have the same properties. Note, this does not imply that the receiver and the source reference the same object.
isEqual
in interface IClone
other
- A reference to a com.esri.arcgis.system.IClone (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public boolean isIdentical(IClone other) throws IOException, AutomationException
IsIdentical returns true if the receiver and the source reference the same object.
isIdentical
in interface IClone
other
- A reference to a com.esri.arcgis.system.IClone (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void interfaceSupportsErrorInfo(GUID riid) throws IOException, AutomationException
Indicates whether the interface supports IErrorInfo.
interfaceSupportsErrorInfo
in interface ISupportErrorInfo
riid
- A Structure: com.esri.arcgis.support.ms.stdole.GUID (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void putZShift(double zOrigin, double zOffset) throws IOException, AutomationException
putZShift
in interface IZShift
zOrigin
- The zOrigin (in)zOffset
- The zOffset (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void getZShift(double[] zOrigin, double[] zOffset) throws IOException, AutomationException
getZShift
in interface IZShift
zOrigin
- The zOrigin (out: use single element array)zOffset
- The zOffset (out: use single element array)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |