IAffineTransformation2D3 Interface

Provides access to members that define and manipulate affine transformations.

Members

Name Description
Method DefineConformalFromControlPoints Defines the best conformal affine transformation between two sets of points. Can be used to register paper maps on a digitizer.
Method DefineConformalFromControlPointsEx Defines the best conformal affine transformation between two sets of points. Can be used to register paper maps on a digitizer.
Method DefineFromControlPoints Defines the best affine transformation between two sets of points. Can be used to register paper maps on a digitizer.
Method DefineFromControlPointsEx Defines the best affine transformation between two sets of points. Can be used to register paper maps on a digitizer.
Method DefineFromEnvelopes Defines a transformation that maps a point relative to one envelope to a similar position relative to another envelope.
Method DefineFromEnvelopesEx Defines a transformation that maps a point relative to one envelope to a similar position relative to another envelope.
Method DefineReflection Defines a transformation that can perform a reflection about the line l.
Method GetControlPointError Returns the errors involved in moving control point i from the 'from' to 'to' system. These error terms are valid after using DefineFromControlPoints/Ex to define the transformation.
Method GetRMSError RMS (Root Mean Square) error expressed relative to the 'from' and 'to' points defining the transformation. These error terms are valid after using DefineFromControlPoints/Ex to define the transformation.
Read-only property IsReflective Indicates if the transformation contains a reflection (determinant is negative).
Method Move Incorporates a translation factor into the transformation.
Read-only property MoveOrigin The origin of accumulated transformations used when projecting an affine transformation to a different spatial reference system.
Write-only property MoveOrigin The origin of accumulated transformations used when projecting an affine transformation to a different spatial reference system.
Method MoveVector Performs an X and Y translation defined by a 2D vector.
Method PostMultiply Post-multiplies the transformation by another transformation.
Method PreMultiply Pre-multiplies the transformation by another transformation.
Method Project Moves this transformation into another spatial reference. If the transformations contains only translations, then use the MoveOrigin property to define an equivalent translation in the new spatial reference.
Method QueryLinearCoefficients Returns the linear coefficients which define the two dimensional affine transformation.
Method Reset Resets the tranformation.
Method Rotate Incorporates a rotation (in radians) into the transformation.
Read-only property Rotation The rotation angle. Will not be able if different x/y scale factors have been incorporated into the transformation.
Method Scale Incorporates scale factors into the transformation.
Method SetLinearCoefficients Sets the linear coefficients which define the two dimensional affine transformation.
Read/write property SpatialReference The spatial reference in which this transformation is meaningful.
Method TransformMeasuresFF Transforms floating point measures to floating point measures (or do the inverse).
Method TransformMeasuresFI Transforms floating point measures to integer measures (or do the inverse).
Method TransformMeasuresIF Transforms integer measures to floating point measures (or do the inverse).
Method TransformMeasuresII Transforms integer measures to integer measures (or do the inverse).
Method TransformPointsFF Transforms floating point points to floating point points (or do the inverse).
Method TransformPointsFI Transforms floating point points to integer points (or do the inverse).
Method TransformPointsIF Transforms integer points to floating point points (or do the inverse).
Method TransformPointsII Transforms integer points to integer points (or do the inverse).
Read-only property XScale The scale along the X axis.
Read-only property XTranslation The translation along the X axis.
Read-only property YScale The scale along the Y axis.
Read-only property YTranslation The translation along the Y axis.

IAffineTransformation2D3.DefineConformalFromControlPoints Method

Defines the best conformal affine transformation between two sets of points. Can be used to register paper maps on a digitizer.

Public Sub DefineConformalFromControlPoints ( _
    ByVal numPoints As Integer, _
    ByRef fromPoints As IPoint, _
    ByRef toPoints As IPoint _
)
public void DefineConformalFromControlPoints (
    int numPoints,
    ref IPoint fromPoints,
    ref IPoint toPoints
);

Description

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.

Errors Returned

A minimum of 3 points are needed. If this condition is not met, the error E_GEOMETRY_INSUFFICIENT_CONTROLPOINTS is returned.

IAffineTransformation2D3.DefineConformalFromControlPointsEx Method

Defines the best conformal affine transformation between two sets of points. Can be used to register paper maps on a digitizer.

Public Sub DefineConformalFromControlPointsEx ( _
    ByVal numPoints As Integer, _
    ByRef fromPoints As WKSPoint, _
    ByRef toPoints As WKSPoint _
)
public void DefineConformalFromControlPointsEx (
    int numPoints,
    ref WKSPoint fromPoints,
    ref WKSPoint toPoints
);

Description

DefineConformalFromControlPointsEx defines a Conformal Transformation using arrays of WKSPoints instead of array of IPoint objects.

IAffineTransformation2D3.QueryLinearCoefficients Method

Returns the linear coefficients which define the two dimensional affine transformation.

Public Sub QueryLinearCoefficients ( _
    ByVal Direction As esriTransformDirection, _
    ByRef params_6_elements As Double _
)
public void QueryLinearCoefficients (
    esriTransformDirection Direction,
    ref double params_6_elements
);

Description

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.

//Here is the parameters order

double[] dparams = new double[6];

affine2D3.QueryLinearCoefficients(esriTransformDirection.esriTransformForward, ref dparams[0]);

System.Diagnostics.Debug.Print("a = " + dparams[0].ToString());

System.Diagnostics.Debug.Print("b = " + dparams[1].ToString());

System.Diagnostics.Debug.Print("c = " + dparams[2].ToString());

System.Diagnostics.Debug.Print("d = " + dparams[3].ToString());

System.Diagnostics.Debug.Print("e = " + dparams[4].ToString());

System.Diagnostics.Debug.Print("f = " + dparams[5].ToString());

IAffineTransformation2D3.SetLinearCoefficients Method

Sets the linear coefficients which define the two dimensional affine transformation.

Public Sub SetLinearCoefficients ( _
    ByVal Direction As esriTransformDirection, _
    ByRef params_6_elements As Double _
)
public void SetLinearCoefficients (
    esriTransformDirection Direction,
    ref double params_6_elements
);

Description

You can use the SetLinearCoordinates method to set the linear coefficients (a, b, c, d, e, f) of the current Affine Transformation. For example, these coefficients may come from another software package and could be used to define the transformation. Please see the AffineTransformation2D coclass for a description of the mathematical model. The parameter values are passed in via an array, in alphabetical order.

//Here is the parameters order

double[] dparams = new double[6];

affine2D3.QueryLinearCoefficients(esriTransformDirection.esriTransformForward, ref dparams[0]);

System.Diagnostics.Debug.Print("a = " + dparams[0].ToString());

System.Diagnostics.Debug.Print("b = " + dparams[1].ToString());

System.Diagnostics.Debug.Print("c = " + dparams[2].ToString());

System.Diagnostics.Debug.Print("d = " + dparams[3].ToString());

System.Diagnostics.Debug.Print("e = " + dparams[4].ToString());

System.Diagnostics.Debug.Print("f = " + dparams[5].ToString());

Inherited Interfaces

Interfaces Description
IAffineTransformation2D2 Provides access to members that define and manipulate affine transformations.
IAffineTransformation2D Provides access to members that define and manipulate affine transformations.
ITransformation Provides access to members that apply a function (or its inverse) to a set of points or measures. The suffix of each method indicates the type of parameters operated on.

Classes that implement IAffineTransformation2D3

Classes Description
AffineTransformation2D A two dimensional affine transformation.

Your browser is no longer supported. Please upgrade your browser for the best experience. See our browser deprecation post for more details.