blob: f82bb45c31dd4beb25fc16f800e44c30524cf65d [file] [log] [blame]
<!DOCTYPE HTML>
<html lang="en">
<head>
<!-- Generated by javadoc (19) -->
<title>PoleRotation (Apache SIS 1.3 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="description" content="declaration: package: org.apache.sis.referencing.operation.transform, class: PoleRotation">
<meta name="generator" content="javadoc/ClassWriterImpl">
<meta name="keywords" content="org.apache.sis.referencing.operation.transform.PoleRotation class">
<meta name="keywords" content="rotateSouthPole()">
<meta name="keywords" content="rotateNorthPole()">
<meta name="keywords" content="getParameterDescriptors()">
<meta name="keywords" content="getParameterValues()">
<meta name="keywords" content="getContextualParameters()">
<meta name="keywords" content="transform()">
<meta name="keywords" content="inverse()">
<meta name="keywords" content="isIdentity()">
<meta name="keywords" content="equals()">
<meta name="keywords" content="computeHashCode()">
<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../../../sis.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../../../script-dir/jquery-ui.min.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../../../jquery-ui.overrides.css" title="Style">
<script type="text/javascript" src="../../../../../../script.js"></script>
<script type="text/javascript" src="../../../../../../script-dir/jquery-3.6.0.min.js"></script>
<script type="text/javascript" src="../../../../../../script-dir/jquery-ui.min.js"></script>
</head>
<body class="class-declaration-page">
<script type="text/javascript">var pathtoroot = "../../../../../../";
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<div class="flex-box">
<header role="banner" class="flex-header">
<nav role="navigation">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="Toggle navigation links"><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span></button>
<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div>
<ul id="navbar-top-firstrow" class="nav-list" title="Navigation">
<li><a href="../../../../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="nav-bar-cell1-rev">Class</li>
<li><a href="class-use/PoleRotation.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../../help-doc.html#class">Help</a></li>
</ul>
<ul class="sub-nav-list-small">
<li>
<p>Summary:</p>
<ul>
<li><a href="#nested-class-summary">Nested</a></li>
<li><a href="#field-summary">Field</a></li>
<li><a href="#constructor-summary">Constr</a></li>
<li><a href="#method-summary">Method</a></li>
</ul>
</li>
<li>
<p>Detail:</p>
<ul>
<li>Field</li>
<li><a href="#constructor-detail">Constr</a></li>
<li><a href="#method-detail">Method</a></li>
</ul>
</li>
</ul>
</div>
<div class="sub-nav">
<div id="navbar-sub-list">
<ul class="sub-nav-list">
<li>Summary:&nbsp;</li>
<li><a href="#nested-class-summary">Nested</a>&nbsp;|&nbsp;</li>
<li><a href="#field-summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor-summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method-summary">Method</a></li>
</ul>
<ul class="sub-nav-list">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor-detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method-detail">Method</a></li>
</ul>
</div>
<div class="nav-list-search"><a href="../../../../../../search.html">SEARCH</a>
<input type="text" id="search-input" disabled placeholder="Search">
<input type="reset" id="reset-button" disabled value="reset">
</div>
</div>
<!-- ========= END OF TOP NAVBAR ========= -->
<span class="skip-nav" id="skip-navbar-top"></span></nav>
</header>
<div class="flex-content">
<main role="main">
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="sub-title"><span class="package-label-in-type">Package</span>&nbsp;<a href="package-summary.html">org.apache.sis.referencing.operation.transform</a></div>
<h1 title="Class PoleRotation" class="title">Class PoleRotation</h1>
</div>
<div class="inheritance" title="Inheritance Tree"><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a>
<div class="inheritance"><a href="../../../io/wkt/FormattableObject.html" title="class in org.apache.sis.io.wkt">FormattableObject</a>
<div class="inheritance"><a href="AbstractMathTransform.html" title="class in org.apache.sis.referencing.operation.transform">AbstractMathTransform</a>
<div class="inheritance"><a href="AbstractMathTransform2D.html" title="class in org.apache.sis.referencing.operation.transform">AbstractMathTransform2D</a>
<div class="inheritance">PoleRotation</div>
</div>
</div>
</div>
</div>
<section class="class-description" id="class-description">
<dl class="notes">
<dt>All Implemented Interfaces:</dt>
<dd><code><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/io/Serializable.html" title="class or interface in java.io" class="external-link">Serializable</a></code>, <code><a href="../../../parameter/Parameterized.html" title="interface in org.apache.sis.parameter">Parameterized</a></code>, <code><a href="../../../util/LenientComparable.html" title="interface in org.apache.sis.util">Lenient­Comparable</a></code>, <code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/operation/MathTransform.html" title="class or interface in org.opengis.referencing.operation" class="external-link">Math­Transform</a></code>, <code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/operation/MathTransform2D.html" title="class or interface in org.opengis.referencing.operation" class="external-link">Math­Transform2D</a></code></dd>
</dl>
<hr>
<div class="type-signature"><span class="modifiers">public class </span><span class="element-name type-name-label">PoleRotation</span>
<span class="extends-implements">extends <a href="AbstractMathTransform2D.html" title="class in org.apache.sis.referencing.operation.transform">AbstractMathTransform2D</a>
implements <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/io/Serializable.html" title="class or interface in java.io" class="external-link">Serializable</a></span></div>
<div class="block">Computes latitudes and longitudes on a sphere where the south pole has been moved to given geographic coordinates.
The parameter values of this transform use the conventions defined in template 3.1 of GRIB2 format published by the
<a href="https://www.wmo.int/">World Meteorological Organization</a> (WMO):
<ol>
<li><b>φ<sub>p</sub>:</b> geographic latitude in degrees of the southern pole of the coordinate system.</li>
<li><b>λ<sub>p</sub>:</b> geographic longitude in degrees of the southern pole of the coordinate system.</li>
<li>Angle of rotation in degrees about the new polar axis measured clockwise when looking from the rotated
pole to the Earth center.</li>
</ol>
The rotations are applied by first rotating the sphere through λ<sub>p</sub> about the geographic polar axis,
and then rotating through (φ<sub>p</sub> − (−90°)) degrees so that the southern pole moved along the
(previously rotated) Greenwich meridian.
<h2>Coordinate order</h2>
Source and target axis order in <code>transform(…)</code> methods is (<var>longitude</var>, <var>latitude</var>).
This is the usual axis order used by Apache SIS for <em>internal</em> calculations
(but not the <em>parameter</em> order in factory methods).
If a different axis order is desired (for example for showing coordinates to the user),
an affine transform can be concatenated to this transform.</div>
<dl class="notes">
<dt>Since:</dt>
<dd>1.2</dd>
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../../../serialized-form.html#org.apache.sis.referencing.operation.transform.PoleRotation">Serialized Form</a></li>
</ul>
</dd>
<p><font size="-1">Defined in the <code>sis-referencing</code> module</font></p>
</dl>
</section>
<section class="summary">
<ul class="summary-list">
<!-- ======== NESTED CLASS SUMMARY ======== -->
<li>
<section class="nested-class-summary" id="nested-class-summary">
<h2>Nested Class Summary</h2>
<div class="inherited-list">
<h2 id="nested-classes-inherited-from-class-org.apache.sis.referencing.operation.transform.AbstractMathTransform2D">Nested classes/interfaces inherited from class&nbsp;<a href="AbstractMathTransform2D.html" title="class in org.apache.sis.referencing.operation.transform">AbstractMathTransform2D</a></h2>
<code><a href="AbstractMathTransform2D.Inverse.html" title="class in org.apache.sis.referencing.operation.transform">Abstract­Math­Transform2D​.Inverse</a></code></div>
</section>
</li>
<!-- =========== FIELD SUMMARY =========== -->
<li>
<section class="field-summary" id="field-summary">
<h2>Field Summary</h2>
<div class="inherited-list">
<h3 id="fields-inherited-from-class-AbstractMathTransform2D">Fields inherited from class&nbsp;<a href="AbstractMathTransform2D.html" title="class in org.apache.sis.referencing.operation.transform">AbstractMathTransform2D</a></h3>
<code><a href="AbstractMathTransform2D.html#DIMENSION">DIMENSION</a></code></div>
</section>
</li>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<li>
<section class="constructor-summary" id="constructor-summary">
<h2>Constructor Summary</h2>
<div class="caption"><span>Constructors</span></div>
<div class="summary-table three-column-summary">
<div class="table-header col-first">Modifier</div>
<div class="table-header col-second">Constructor</div>
<div class="table-header col-last">Description</div>
<div class="col-first even-row-color"><code>protected </code></div>
<div class="col-constructor-name even-row-color"><code><a href="#%3Cinit%3E(boolean,double,double,double)" class="member-name-link">Pole­Rotation</a><wbr>(boolean&nbsp;south,
double&nbsp;φp,
double&nbsp;λp,
double&nbsp;θp)</code></div>
<div class="col-last even-row-color">
<div class="block">Creates the non-linear part of a rotated pole operation.</div>
</div>
</div>
</section>
</li>
<!-- ========== METHOD SUMMARY =========== -->
<li>
<section class="method-summary" id="method-summary">
<h2>Method Summary</h2>
<div id="method-summary-table">
<div class="table-tabs" role="tablist" aria-orientation="horizontal"><button id="method-summary-table-tab0" role="tab" aria-selected="true" aria-controls="method-summary-table.tabpanel" tabindex="0" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table', 3)" class="active-table-tab">All Methods</button><button id="method-summary-table-tab1" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab1', 3)" class="table-tab">Static Methods</button><button id="method-summary-table-tab2" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab2', 3)" class="table-tab">Instance Methods</button><button id="method-summary-table-tab4" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab4', 3)" class="table-tab">Concrete Methods</button></div>
<div id="method-summary-table.tabpanel" role="tabpanel">
<div class="summary-table three-column-summary" aria-labelledby="method-summary-table-tab0">
<div class="table-header col-first">Modifier and Type</div>
<div class="table-header col-second">Method</div>
<div class="table-header col-last">Description</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>protected int</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#computeHashCode()" class="member-name-link">compute­Hash­Code</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Computes a hash value for this transform.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#equals(java.lang.Object,org.apache.sis.util.ComparisonMode)" class="member-name-link">equals</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a>&nbsp;object,
<a href="../../../util/ComparisonMode.html" title="enum class in org.apache.sis.util">Comparison­Mode</a>&nbsp;mode)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Compares the specified object with this math transform for equality.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>protected <a href="ContextualParameters.html" title="class in org.apache.sis.referencing.operation.transform">Contextual­Parameters</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getContextualParameters()" class="member-name-link">get­Contextual­Parameters</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Returns the parameters used for creating the complete operation.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/parameter/ParameterDescriptorGroup.html" title="class or interface in org.opengis.parameter" class="external-link">Parameter­Descriptor­Group</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getParameterDescriptors()" class="member-name-link">get­Parameter­Descriptors</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Returns a description of the parameters of this transform.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/parameter/ParameterValueGroup.html" title="class or interface in org.opengis.parameter" class="external-link">Parameter­Value­Group</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getParameterValues()" class="member-name-link">get­Parameter­Values</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Returns a copy of the parameter values of this transform.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/operation/MathTransform2D.html" title="class or interface in org.opengis.referencing.operation" class="external-link">Math­Transform2D</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#inverse()" class="member-name-link">inverse</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Returns the inverse transform of this object.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#isIdentity()" class="member-name-link">is­Identity</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Tests whether this transform does not move any points.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>static <a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/operation/MathTransform.html" title="class or interface in org.opengis.referencing.operation" class="external-link">Math­Transform</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#rotateNorthPole(org.opengis.referencing.operation.MathTransformFactory,double,double,double)" class="member-name-link">rotate­North­Pole</a><wbr>(<a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/operation/MathTransformFactory.html" title="class or interface in org.opengis.referencing.operation" class="external-link">Math­Transform­Factory</a>&nbsp;factory,
double&nbsp;φp,
double&nbsp;λp,
double&nbsp;θp)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4">
<div class="block">Creates a new rotated north pole operation.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>static <a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/operation/MathTransform.html" title="class or interface in org.opengis.referencing.operation" class="external-link">Math­Transform</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#rotateSouthPole(org.opengis.referencing.operation.MathTransformFactory,double,double,double)" class="member-name-link">rotate­South­Pole</a><wbr>(<a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/operation/MathTransformFactory.html" title="class or interface in org.opengis.referencing.operation" class="external-link">Math­Transform­Factory</a>&nbsp;factory,
double&nbsp;φp,
double&nbsp;λp,
double&nbsp;θp)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4">
<div class="block">Creates a new rotated south pole operation.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/operation/Matrix.html" title="class or interface in org.opengis.referencing.operation" class="external-link">Matrix</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#transform(double%5B%5D,int,double%5B%5D,int,boolean)" class="member-name-link">transform</a><wbr>(double[]&nbsp;src­Pts,
int&nbsp;src­Off,
double[]&nbsp;dst­Pts,
int&nbsp;dst­Off,
boolean&nbsp;derivate)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Transforms a single coordinate tuple in an array,
and optionally computes the transform derivative at that location.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#transform(double%5B%5D,int,double%5B%5D,int,int)" class="member-name-link">transform</a><wbr>(double[]&nbsp;src­Pts,
int&nbsp;src­Off,
double[]&nbsp;dst­Pts,
int&nbsp;dst­Off,
int&nbsp;num­Pts)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Converts a list of coordinate tuples.</div>
</div>
</div>
</div>
</div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-AbstractMathTransform2D">Methods inherited from class&nbsp;<a href="AbstractMathTransform2D.html" title="class in org.apache.sis.referencing.operation.transform">AbstractMathTransform2D</a></h3>
<code><a href="AbstractMathTransform2D.html#createTransformedShape(java.awt.Shape)">create­Transformed­Shape</a>, <a href="AbstractMathTransform2D.html#derivative(java.awt.geom.Point2D)">derivative</a>, <a href="AbstractMathTransform2D.html#getSourceDimensions()">get­Source­Dimensions</a>, <a href="AbstractMathTransform2D.html#getTargetDimensions()">get­Target­Dimensions</a>, <a href="AbstractMathTransform2D.html#transform(java.awt.geom.Point2D,java.awt.geom.Point2D)">transform</a></code></div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-AbstractMathTransform">Methods inherited from class&nbsp;<a href="AbstractMathTransform.html" title="class in org.apache.sis.referencing.operation.transform">AbstractMathTransform</a></h3>
<code><a href="AbstractMathTransform.html#derivative(org.opengis.geometry.DirectPosition)">derivative</a>, <a href="AbstractMathTransform.html#equals(java.lang.Object)">equals</a>, <a href="AbstractMathTransform.html#formatTo(org.apache.sis.io.wkt.Formatter)">format­To</a>, <a href="AbstractMathTransform.html#getDomain(org.apache.sis.referencing.operation.transform.DomainDefinition)">get­Domain</a>, <a href="AbstractMathTransform.html#hashCode()">hash­Code</a>, <a href="AbstractMathTransform.html#transform(double%5B%5D,int,float%5B%5D,int,int)">transform</a>, <a href="AbstractMathTransform.html#transform(float%5B%5D,int,double%5B%5D,int,int)">transform</a>, <a href="AbstractMathTransform.html#transform(float%5B%5D,int,float%5B%5D,int,int)">transform</a>, <a href="AbstractMathTransform.html#transform(org.opengis.geometry.DirectPosition,org.opengis.geometry.DirectPosition)">transform</a>, <a href="AbstractMathTransform.html#tryConcatenate(boolean,org.opengis.referencing.operation.MathTransform,org.opengis.referencing.operation.MathTransformFactory)">try­Concatenate</a></code></div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-FormattableObject">Methods inherited from class&nbsp;<a href="../../../io/wkt/FormattableObject.html" title="class in org.apache.sis.io.wkt">FormattableObject</a></h3>
<code><a href="../../../io/wkt/FormattableObject.html#print()">print</a>, <a href="../../../io/wkt/FormattableObject.html#toString()">to­String</a>, <a href="../../../io/wkt/FormattableObject.html#toString(org.apache.sis.io.wkt.Convention)">to­String</a>, <a href="../../../io/wkt/FormattableObject.html#toWKT()">to­WKT</a></code></div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-Object">Methods inherited from class&nbsp;<a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></h3>
<code><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html#clone()" title="class or interface in java.lang" class="external-link">clone</a>, <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html#finalize()" title="class or interface in java.lang" class="external-link">finalize</a>, <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html#getClass()" title="class or interface in java.lang" class="external-link">get­Class</a>, <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html#notify()" title="class or interface in java.lang" class="external-link">notify</a>, <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html#notifyAll()" title="class or interface in java.lang" class="external-link">notify­All</a>, <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html#wait()" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html#wait(long)" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html#wait(long,int)" title="class or interface in java.lang" class="external-link">wait</a></code></div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-MathTransform">Methods inherited from interface&nbsp;<a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/operation/MathTransform.html" title="class or interface in org.opengis.referencing.operation" class="external-link">MathTransform</a></h3>
<code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/operation/MathTransform.html#derivative(org.opengis.geometry.DirectPosition)" title="class or interface in org.opengis.referencing.operation" class="external-link">derivative</a>, <a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/operation/MathTransform.html#toWKT()" title="class or interface in org.opengis.referencing.operation" class="external-link">to­WKT</a>, <a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/operation/MathTransform.html#transform(double%5B%5D,int,float%5B%5D,int,int)" title="class or interface in org.opengis.referencing.operation" class="external-link">transform</a>, <a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/operation/MathTransform.html#transform(float%5B%5D,int,double%5B%5D,int,int)" title="class or interface in org.opengis.referencing.operation" class="external-link">transform</a>, <a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/operation/MathTransform.html#transform(float%5B%5D,int,float%5B%5D,int,int)" title="class or interface in org.opengis.referencing.operation" class="external-link">transform</a>, <a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/operation/MathTransform.html#transform(org.opengis.geometry.DirectPosition,org.opengis.geometry.DirectPosition)" title="class or interface in org.opengis.referencing.operation" class="external-link">transform</a></code></div>
</section>
</li>
</ul>
</section>
<section class="details">
<ul class="details-list">
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<li>
<section class="constructor-details" id="constructor-detail">
<h2>Constructor Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="&lt;init&gt;(boolean,double,double,double)">
<h3>PoleRotation</h3>
<div class="member-signature"><span class="modifiers">protected</span>&nbsp;<span class="element-name">PoleRotation</span><wbr><span class="parameters">(boolean&nbsp;south,
double&nbsp;φp,
double&nbsp;λp,
double&nbsp;θp)</span></div>
<div class="block">Creates the non-linear part of a rotated pole operation.
This transform does not include the conversion between degrees and radians and the longitude rotations.
For a complete transform, use one of the static factory methods.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>south</code> - <code>true</code> for a south pole rotation, or <code>false</code> for a north pole rotation.</dd>
<dd><code>φp</code> - geographic latitude in degrees of the southern pole of the coordinate system.</dd>
<dd><code>λp</code> - geographic longitude in degrees of the southern pole of the coordinate system.</dd>
<dd><code>θp</code> - angle of rotation in degrees about the new polar axis measured clockwise when
looking from the rotated pole to the Earth center.</dd>
</dl>
</section>
</li>
</ul>
</section>
</li>
<!-- ============ METHOD DETAIL ========== -->
<li>
<section class="method-details" id="method-detail">
<h2>Method Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="rotateSouthPole(org.opengis.referencing.operation.MathTransformFactory,double,double,double)">
<h3>rotateSouthPole</h3>
<div class="member-signature"><span class="modifiers">public static</span>&nbsp;<span class="return-type"><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/operation/MathTransform.html" title="class or interface in org.opengis.referencing.operation" class="external-link">MathTransform</a></span>&nbsp;<span class="element-name">rotateSouthPole</span><wbr><span class="parameters">(<a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/operation/MathTransformFactory.html" title="class or interface in org.opengis.referencing.operation" class="external-link">MathTransformFactory</a>&nbsp;factory,
double&nbsp;φp,
double&nbsp;λp,
double&nbsp;θp)</span>
throws <span class="exceptions"><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/FactoryException.html" title="class or interface in org.opengis.util" class="external-link">FactoryException</a></span></div>
<div class="block">Creates a new rotated south pole operation. The rotations are applied by first rotating the sphere
through λ<sub>p</sub> about the geographic polar axis, then rotating through (φ<sub>p</sub> − (−90°))
degrees so that the southern pole moved along the (previously rotated) Greenwich meridian, and finally
by rotating θ<sub>p</sub> degrees clockwise when looking from the southern to the northern rotated pole.
In the case where θ<sub>p</sub>=0, the 180° rotated meridian runs through both the geographical
and the rotated South pole.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>factory</code> - the factory to use for creating the transform.</dd>
<dd><code>φp</code> - geographic latitude in degrees of the southern pole of the coordinate system.</dd>
<dd><code>λp</code> - geographic longitude in degrees of the southern pole of the coordinate system.</dd>
<dd><code>θp</code> - angle of rotation in degrees about the new polar axis measured clockwise when
looking from the southern to the northern pole.</dd>
<dt>Returns:</dt>
<dd>the conversion doing a south pole rotation.</dd>
<dt>Throws:</dt>
<dd><code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/FactoryException.html" title="class or interface in org.opengis.util" class="external-link">Factory­Exception</a></code> - if an error occurred while creating a transform.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="rotateNorthPole(org.opengis.referencing.operation.MathTransformFactory,double,double,double)">
<h3>rotateNorthPole</h3>
<div class="member-signature"><span class="modifiers">public static</span>&nbsp;<span class="return-type"><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/operation/MathTransform.html" title="class or interface in org.opengis.referencing.operation" class="external-link">MathTransform</a></span>&nbsp;<span class="element-name">rotateNorthPole</span><wbr><span class="parameters">(<a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/operation/MathTransformFactory.html" title="class or interface in org.opengis.referencing.operation" class="external-link">MathTransformFactory</a>&nbsp;factory,
double&nbsp;φp,
double&nbsp;λp,
double&nbsp;θp)</span>
throws <span class="exceptions"><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/FactoryException.html" title="class or interface in org.opengis.util" class="external-link">FactoryException</a></span></div>
<div class="block">Creates a new rotated north pole operation. The rotations are applied by first rotating the sphere
through λ<sub>p</sub> about the geographic polar axis, then rotating through (φ<sub>p</sub> − 90°)
degrees so that the northern pole moved along the (previously rotated) Greenwich meridian, and finally
by rotating θ<sub>p</sub> degrees clockwise when looking from the northern to the southern rotated pole.
In the case where θ<sub>p</sub>=0, the 0° rotated meridian is defined as the meridian that runs through
both the geographical and the rotated North pole.
<div class="warning">
The sign of the <code>θp</code> argument is not yet well determined.
Should it be a rotation clockwise or anti-clockwise?
Looking from northern to southern pole or the opposite direction?
The sign may change in the future if we find an authoritative definition.
In the meantime, it is safer to keep the <code>θp</code> value equal to zero.
</div></div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>factory</code> - the factory to use for creating the transform.</dd>
<dd><code>φp</code> - geographic latitude in degrees of the northern pole of the coordinate system.</dd>
<dd><code>λp</code> - geographic longitude in degrees of the northern pole of the coordinate system.</dd>
<dd><code>θp</code> - angle of rotation in degrees about the new polar axis measured clockwise when
looking from the northern to the southern pole.</dd>
<dt>Returns:</dt>
<dd>the conversion doing a north pole rotation.</dd>
<dt>Throws:</dt>
<dd><code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/FactoryException.html" title="class or interface in org.opengis.util" class="external-link">Factory­Exception</a></code> - if an error occurred while creating a transform.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getParameterDescriptors()">
<h3>getParameterDescriptors</h3>
<div class="member-signature"><span class="annotations"><a href="../../../util/Debug.html" title="annotation interface in org.apache.sis.util">@Debug</a>
</span><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/parameter/ParameterDescriptorGroup.html" title="class or interface in org.opengis.parameter" class="external-link">ParameterDescriptorGroup</a></span>&nbsp;<span class="element-name">getParameterDescriptors</span>()</div>
<div class="block">Returns a description of the parameters of this transform. The group of parameters contains only the grid
(north or south) pole latitude. It does not contain the grid pole longitude or the grid angle of rotation
because those parameters are handled by affine transforms pre- or post-concatenated to this transform.</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="../../../parameter/Parameterized.html#getParameterDescriptors()">get­Parameter­Descriptors</a></code>&nbsp;in interface&nbsp;<code><a href="../../../parameter/Parameterized.html" title="interface in org.apache.sis.parameter">Parameterized</a></code></dd>
<dt>Overrides:</dt>
<dd><code><a href="AbstractMathTransform.html#getParameterDescriptors()">get­Parameter­Descriptors</a></code>&nbsp;in class&nbsp;<code><a href="AbstractMathTransform.html" title="class in org.apache.sis.referencing.operation.transform">Abstract­Math­Transform</a></code></dd>
<dt>Returns:</dt>
<dd>the parameter descriptors for this math transform.</dd>
<dt>See Also:</dt>
<dd>
<ul class="see-list-long">
<li><a href="../DefaultOperationMethod.html#getParameters()"><code>Default­Operation­Method​.get­Parameters()</code></a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getParameterValues()">
<h3>getParameterValues</h3>
<div class="member-signature"><span class="annotations"><a href="../../../util/Debug.html" title="annotation interface in org.apache.sis.util">@Debug</a>
</span><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/parameter/ParameterValueGroup.html" title="class or interface in org.opengis.parameter" class="external-link">ParameterValueGroup</a></span>&nbsp;<span class="element-name">getParameterValues</span>()</div>
<div class="block">Returns a copy of the parameter values of this transform.
The group contains the values of the parameters described by <a href="#getParameterDescriptors()"><code>get­Parameter­Descriptors()</code></a>.
This method is mostly for <a href="../../../io/wkt/Convention.html#INTERNAL">debugging purposes</a>;
most GIS applications will instead be interested in the <a href="#getContextualParameters()">contextual parameters</a> instead.</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="../../../parameter/Parameterized.html#getParameterValues()">get­Parameter­Values</a></code>&nbsp;in interface&nbsp;<code><a href="../../../parameter/Parameterized.html" title="interface in org.apache.sis.parameter">Parameterized</a></code></dd>
<dt>Overrides:</dt>
<dd><code><a href="AbstractMathTransform.html#getParameterValues()">get­Parameter­Values</a></code>&nbsp;in class&nbsp;<code><a href="AbstractMathTransform.html" title="class in org.apache.sis.referencing.operation.transform">Abstract­Math­Transform</a></code></dd>
<dt>Returns:</dt>
<dd>the parameter values for this math transform.</dd>
<dt>See Also:</dt>
<dd>
<ul class="see-list-long">
<li><a href="AbstractMathTransform.html#getContextualParameters()"><code>Abstract­Math­Transform​.get­Contextual­Parameters()</code></a></li>
<li><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/operation/SingleOperation.html#getParameterValues()" title="class or interface in org.opengis.referencing.operation" class="external-link"><code>Single­Operation​.get­Parameter­Values()</code></a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getContextualParameters()">
<h3>getContextualParameters</h3>
<div class="member-signature"><span class="modifiers">protected</span>&nbsp;<span class="return-type"><a href="ContextualParameters.html" title="class in org.apache.sis.referencing.operation.transform">ContextualParameters</a></span>&nbsp;<span class="element-name">getContextualParameters</span>()</div>
<div class="block">Returns the parameters used for creating the complete operation. The returned group contains not only
the grid pole latitude (which is handled by this transform), but also the grid pole longitude and the
grid angle of rotation (which are handled by affine transforms before or after this transform).</div>
<dl class="notes">
<dt>Overrides:</dt>
<dd><code><a href="AbstractMathTransform.html#getContextualParameters()">get­Contextual­Parameters</a></code>&nbsp;in class&nbsp;<code><a href="AbstractMathTransform.html" title="class in org.apache.sis.referencing.operation.transform">Abstract­Math­Transform</a></code></dd>
<dt>Returns:</dt>
<dd>the parameter values for the sequence of <cite>normalize</cite>
<code>this</code><cite>denormalize</cite> transforms.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="transform(double[],int,double[],int,boolean)">
<h3>transform</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/operation/Matrix.html" title="class or interface in org.opengis.referencing.operation" class="external-link">Matrix</a></span>&nbsp;<span class="element-name">transform</span><wbr><span class="parameters">(double[]&nbsp;srcPts,
int&nbsp;srcOff,
double[]&nbsp;dstPts,
int&nbsp;dstOff,
boolean&nbsp;derivate)</span>
throws <span class="exceptions"><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/operation/TransformException.html" title="class or interface in org.opengis.referencing.operation" class="external-link">TransformException</a></span></div>
<div class="block">Transforms a single coordinate tuple in an array,
and optionally computes the transform derivative at that location.
Source and target axis order is (<var>longitude</var>, <var>latitude</var>).</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="AbstractMathTransform.html#transform(double%5B%5D,int,double%5B%5D,int,boolean)">transform</a></code>&nbsp;in class&nbsp;<code><a href="AbstractMathTransform.html" title="class in org.apache.sis.referencing.operation.transform">Abstract­Math­Transform</a></code></dd>
<dt>Parameters:</dt>
<dd><code>src­Pts</code> - the array containing the source coordinates (cannot be <code>null</code>).</dd>
<dd><code>src­Off</code> - the offset to the point to be transformed in the source array.</dd>
<dd><code>dst­Pts</code> - the array into which the transformed coordinates is returned. May be the same than <code>src­Pts</code>.
May be <code>null</code> if only the derivative matrix is desired.</dd>
<dd><code>dst­Off</code> - the offset to the location of the transformed point that is stored in the destination array.</dd>
<dd><code>derivate</code> - <code>true</code> for computing the derivative, or <code>false</code> if not needed.</dd>
<dt>Returns:</dt>
<dd>the matrix of the transform derivative at the given source position,
or <code>null</code> if the <code>derivate</code> argument is <code>false</code>.</dd>
<dt>Throws:</dt>
<dd><code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/operation/TransformException.html" title="class or interface in org.opengis.referencing.operation" class="external-link">Transform­Exception</a></code> - if the point cannot be transformed or
if a problem occurred while calculating the derivative.</dd>
<dt>See Also:</dt>
<dd>
<ul class="see-list-long">
<li><a href="AbstractMathTransform.html#derivative(org.opengis.geometry.DirectPosition)"><code>Abstract­Math­Transform​.derivative(Direct­Position)</code></a></li>
<li><a href="AbstractMathTransform.html#transform(org.opengis.geometry.DirectPosition,org.opengis.geometry.DirectPosition)"><code>Abstract­Math­Transform​.transform(Direct­Position, Direct­Position)</code></a></li>
<li><a href="MathTransforms.html#derivativeAndTransform(org.opengis.referencing.operation.MathTransform,double%5B%5D,int,double%5B%5D,int)"><code>Math­Transforms​.derivative­And­Transform(Math­Transform, double[], int, double[], int)</code></a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="transform(double[],int,double[],int,int)">
<h3>transform</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">transform</span><wbr><span class="parameters">(double[]&nbsp;srcPts,
int&nbsp;srcOff,
double[]&nbsp;dstPts,
int&nbsp;dstOff,
int&nbsp;numPts)</span>
throws <span class="exceptions"><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/operation/TransformException.html" title="class or interface in org.opengis.referencing.operation" class="external-link">TransformException</a></span></div>
<div class="block">Converts a list of coordinate tuples. This method performs the same calculation than above
<a href="#transform(double%5B%5D,int,double%5B%5D,int,boolean)"><code>transform(double[], int, double[], int, boolean)</code></a> method, but is overridden for efficiency.</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/operation/MathTransform.html#transform(double%5B%5D,int,double%5B%5D,int,int)" title="class or interface in org.opengis.referencing.operation" class="external-link">transform</a></code>&nbsp;in interface&nbsp;<code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/operation/MathTransform.html" title="class or interface in org.opengis.referencing.operation" class="external-link">Math­Transform</a></code></dd>
<dt>Overrides:</dt>
<dd><code><a href="AbstractMathTransform.html#transform(double%5B%5D,int,double%5B%5D,int,int)">transform</a></code>&nbsp;in class&nbsp;<code><a href="AbstractMathTransform.html" title="class in org.apache.sis.referencing.operation.transform">Abstract­Math­Transform</a></code></dd>
<dt>Parameters:</dt>
<dd><code>src­Pts</code> - the array containing the source point coordinates.</dd>
<dd><code>src­Off</code> - the offset to the first point to be transformed in the source array.</dd>
<dd><code>dst­Pts</code> - the array into which the transformed point coordinates are returned.
May be the same than <code>src­Pts</code>.</dd>
<dd><code>dst­Off</code> - the offset to the location of the first transformed point that is stored in the destination array.</dd>
<dd><code>num­Pts</code> - the number of point objects to be transformed.</dd>
<dt>Throws:</dt>
<dd><code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/operation/TransformException.html" title="class or interface in org.opengis.referencing.operation" class="external-link">Transform­Exception</a></code> - if a point cannot be converted.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="inverse()">
<h3>inverse</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/operation/MathTransform2D.html" title="class or interface in org.opengis.referencing.operation" class="external-link">MathTransform2D</a></span>&nbsp;<span class="element-name">inverse</span>()</div>
<div class="block">Returns the inverse transform of this object.</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/operation/MathTransform.html#inverse()" title="class or interface in org.opengis.referencing.operation" class="external-link">inverse</a></code>&nbsp;in interface&nbsp;<code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/operation/MathTransform.html" title="class or interface in org.opengis.referencing.operation" class="external-link">Math­Transform</a></code></dd>
<dt>Specified by:</dt>
<dd><code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/operation/MathTransform2D.html#inverse()" title="class or interface in org.opengis.referencing.operation" class="external-link">inverse</a></code>&nbsp;in interface&nbsp;<code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/operation/MathTransform2D.html" title="class or interface in org.opengis.referencing.operation" class="external-link">Math­Transform2D</a></code></dd>
<dt>Overrides:</dt>
<dd><code><a href="AbstractMathTransform2D.html#inverse()">inverse</a></code>&nbsp;in class&nbsp;<code><a href="AbstractMathTransform2D.html" title="class in org.apache.sis.referencing.operation.transform">Abstract­Math­Transform2D</a></code></dd>
<dt>Returns:</dt>
<dd>the inverse of this transform.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="isIdentity()">
<h3>isIdentity</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">isIdentity</span>()</div>
<div class="block">Tests whether this transform does not move any points.</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/operation/MathTransform.html#isIdentity()" title="class or interface in org.opengis.referencing.operation" class="external-link">is­Identity</a></code>&nbsp;in interface&nbsp;<code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/operation/MathTransform.html" title="class or interface in org.opengis.referencing.operation" class="external-link">Math­Transform</a></code></dd>
<dt>Overrides:</dt>
<dd><code><a href="AbstractMathTransform.html#isIdentity()">is­Identity</a></code>&nbsp;in class&nbsp;<code><a href="AbstractMathTransform.html" title="class in org.apache.sis.referencing.operation.transform">Abstract­Math­Transform</a></code></dd>
<dt>Returns:</dt>
<dd><code>true</code> if this transform is (at least approximately) the identity transform.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="equals(java.lang.Object,org.apache.sis.util.ComparisonMode)">
<h3>equals</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">equals</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a>&nbsp;object,
<a href="../../../util/ComparisonMode.html" title="enum class in org.apache.sis.util">ComparisonMode</a>&nbsp;mode)</span></div>
<div class="block">Compares the specified object with this math transform for equality.</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="../../../util/LenientComparable.html#equals(java.lang.Object,org.apache.sis.util.ComparisonMode)">equals</a></code>&nbsp;in interface&nbsp;<code><a href="../../../util/LenientComparable.html" title="interface in org.apache.sis.util">Lenient­Comparable</a></code></dd>
<dt>Overrides:</dt>
<dd><code><a href="AbstractMathTransform.html#equals(java.lang.Object,org.apache.sis.util.ComparisonMode)">equals</a></code>&nbsp;in class&nbsp;<code><a href="AbstractMathTransform.html" title="class in org.apache.sis.referencing.operation.transform">Abstract­Math­Transform</a></code></dd>
<dt>Parameters:</dt>
<dd><code>object</code> - the object to compare with this transform.</dd>
<dd><code>mode</code> - the strictness level of the comparison.</dd>
<dt>Returns:</dt>
<dd><code>true</code> if the given object is considered equals to this math transform.</dd>
<dt>See Also:</dt>
<dd>
<ul class="see-list-long">
<li><a href="../../../util/Utilities.html#deepEquals(java.lang.Object,java.lang.Object,org.apache.sis.util.ComparisonMode)"><code>Utilities​.deep­Equals(Object, Object, Comparison­Mode)</code></a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="computeHashCode()">
<h3>computeHashCode</h3>
<div class="member-signature"><span class="modifiers">protected</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">computeHashCode</span>()</div>
<div class="block">Computes a hash value for this transform. This method is invoked by <a href="AbstractMathTransform.html#hashCode()"><code>Abstract­Math­Transform​.hash­Code()</code></a> when first needed.</div>
<dl class="notes">
<dt>Overrides:</dt>
<dd><code><a href="AbstractMathTransform.html#computeHashCode()">compute­Hash­Code</a></code>&nbsp;in class&nbsp;<code><a href="AbstractMathTransform.html" title="class in org.apache.sis.referencing.operation.transform">Abstract­Math­Transform</a></code></dd>
<dt>Returns:</dt>
<dd>the hash code value. This value may change between different execution of the Apache SIS library.</dd>
</dl>
</section>
</li>
</ul>
</section>
</li>
</ul>
</section>
<!-- ========= END OF CLASS DATA ========= -->
</main>
<footer role="contentinfo">
<hr>
<p class="legal-copy"><small>Copyright &#169; 2010&#x2013;2022 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
</footer>
</div>
</div>
</body>
</html>