| <!DOCTYPE HTML> |
| <!-- NewPage --> |
| <html lang="en"> |
| <head> |
| <!-- Generated by javadoc (11.0.4) on Fri Sep 20 12:10:30 CEST 2019 --> |
| <title>DefaultMathTransformFactory (Apache SIS 1.0 API)</title> |
| <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> |
| <meta name="dc.created" content="2019-09-20"> |
| <meta name="keywords" content="org.apache.sis.referencing.operation.transform.DefaultMathTransformFactory class"> |
| <meta name="keywords" content="getAvailableMethods()"> |
| <meta name="keywords" content="getOperationMethod()"> |
| <meta name="keywords" content="getDefaultParameters()"> |
| <meta name="keywords" content="createParameterizedTransform()"> |
| <meta name="keywords" content="swapAndScaleAxes()"> |
| <meta name="keywords" content="createBaseToDerived()"> |
| <meta name="keywords" content="createCoordinateSystemChange()"> |
| <meta name="keywords" content="createAffineTransform()"> |
| <meta name="keywords" content="createConcatenatedTransform()"> |
| <meta name="keywords" content="createPassThroughTransform()"> |
| <meta name="keywords" content="createFromXML()"> |
| <meta name="keywords" content="createFromWKT()"> |
| <meta name="keywords" content="getLastMethodUsed()"> |
| <meta name="keywords" content="reload()"> |
| <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="../../../../../../jquery/jquery-ui.css" title="Style"> |
| <script type="text/javascript" src="../../../../../../script.js"></script> |
| <script type="text/javascript" src="../../../../../../jquery/jszip/dist/jszip.min.js"></script> |
| <script type="text/javascript" src="../../../../../../jquery/jszip-utils/dist/jszip-utils.min.js"></script> |
| <!--[if IE]> |
| <script type="text/javascript" src="../../../../../../jquery/jszip-utils/dist/jszip-utils-ie.min.js"></script> |
| <![endif]--> |
| <script type="text/javascript" src="../../../../../../jquery/jquery-3.3.1.js"></script> |
| <script type="text/javascript" src="../../../../../../jquery/jquery-migrate-3.0.1.js"></script> |
| <script type="text/javascript" src="../../../../../../jquery/jquery-ui.js"></script> |
| </head> |
| <body> |
| <script type="text/javascript"><!-- |
| try { |
| if (location.href.indexOf('is-external=true') == -1) { |
| parent.document.title="DefaultMathTransformFactory (Apache SIS 1.0 API)"; |
| } |
| } |
| catch(err) { |
| } |
| //--> |
| var data = {"i0":10,"i1":42,"i2":10,"i3":10,"i4":10,"i5":42,"i6":42,"i7":10,"i8":10,"i9":10,"i10":10,"i11":10,"i12":10,"i13":10,"i14":10}; |
| var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"],32:["t6","Deprecated Methods"]}; |
| var altColor = "altColor"; |
| var rowColor = "rowColor"; |
| var tableTab = "tableTab"; |
| var activeTableTab = "activeTableTab"; |
| var pathtoroot = "../../../../../../"; |
| var useModuleDirectories = false; |
| loadScripts(document, 'script');</script> |
| <noscript> |
| <div>JavaScript is disabled on your browser.</div> |
| </noscript> |
| <header role="banner"> |
| <nav role="navigation"> |
| <div class="fixedNav"> |
| <!-- ========= START OF TOP NAVBAR ======= --> |
| <div class="topNav"><a id="navbar.top"> |
| <!-- --> |
| </a> |
| <div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div> |
| <a id="navbar.top.firstrow"> |
| <!-- --> |
| </a> |
| <ul class="navList" title="Navigation"> |
| <li><a href="../../../../../../index.html">Overview</a></li> |
| <li><a href="package-summary.html">Package</a></li> |
| <li class="navBarCell1Rev">Class</li> |
| <li><a href="class-use/DefaultMathTransformFactory.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">Help</a></li> |
| </ul> |
| </div> |
| <div class="subNav"> |
| <ul class="navList" id="allclasses_navbar_top"> |
| <li><a href="../../../../../../allclasses.html">All Classes</a></li> |
| </ul> |
| <ul class="navListSearch"> |
| <li><label for="search">SEARCH:</label> |
| <input type="text" id="search" value="search" disabled="disabled"> |
| <input type="reset" id="reset" value="reset" disabled="disabled"> |
| </li> |
| </ul> |
| <div> |
| <script type="text/javascript"><!-- |
| allClassesLink = document.getElementById("allclasses_navbar_top"); |
| if(window==top) { |
| allClassesLink.style.display = "block"; |
| } |
| else { |
| allClassesLink.style.display = "none"; |
| } |
| //--> |
| </script> |
| <noscript> |
| <div>JavaScript is disabled on your browser.</div> |
| </noscript> |
| </div> |
| <div> |
| <ul class="subNavList"> |
| <li>Summary: </li> |
| <li><a href="#nested.class.summary">Nested</a> | </li> |
| <li>Field | </li> |
| <li><a href="#constructor.summary">Constr</a> | </li> |
| <li><a href="#method.summary">Method</a></li> |
| </ul> |
| <ul class="subNavList"> |
| <li>Detail: </li> |
| <li>Field | </li> |
| <li><a href="#constructor.detail">Constr</a> | </li> |
| <li><a href="#method.detail">Method</a></li> |
| </ul> |
| </div> |
| <a id="skip.navbar.top"> |
| <!-- --> |
| </a></div> |
| <!-- ========= END OF TOP NAVBAR ========= --> |
| </div> |
| <div class="navPadding"> </div> |
| <script type="text/javascript"><!-- |
| $('.navPadding').css('padding-top', $('.fixedNav').css("height")); |
| //--> |
| </script> |
| </nav> |
| </header> |
| <!-- ======== START OF CLASS DATA ======== --> |
| <main role="main"> |
| <div class="header"> |
| <div class="subTitle"><span class="packageLabelInType">Package</span> <a href="package-summary.html">org.apache.sis.referencing.operation.transform</a></div> |
| <h2 title="Class DefaultMathTransformFactory" class="title">Class DefaultMathTransformFactory</h2> |
| </div> |
| <div class="contentContainer"> |
| <ul class="inheritance"> |
| <li><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a></li> |
| <li> |
| <ul class="inheritance"> |
| <li><a href="../../../util/iso/AbstractFactory.html" title="class in org.apache.sis.util.iso">AbstractFactory</a></li> |
| <li> |
| <ul class="inheritance"> |
| <li>DefaultMathTransformFactory</li> |
| </ul> |
| </li> |
| </ul> |
| </li> |
| </ul> |
| <div class="description"> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <dl> |
| <dt>All Implemented Interfaces:</dt> |
| <dd><code><a href="../../../io/wkt/Parser.html" title="interface in org.apache.sis.io.wkt">Parser</a></code>, <code><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/MathTransformFactory.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink">MathTransformFactory</a></code>, <code><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/util/Factory.html?is-external=true" title="class or interface in org.opengis.util" class="externalLink">Factory</a></code></dd> |
| </dl> |
| <hr> |
| <pre>public class <span class="typeNameLabel">DefaultMathTransformFactory</span> |
| extends <a href="../../../util/iso/AbstractFactory.html" title="class in org.apache.sis.util.iso">AbstractFactory</a> |
| implements <a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/MathTransformFactory.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink">MathTransformFactory</a>, <a href="../../../io/wkt/Parser.html" title="interface in org.apache.sis.io.wkt">Parser</a></pre> |
| <div class="block">Low level factory for creating <a href="AbstractMathTransform.html" title="class in org.apache.sis.referencing.operation.transform">math transforms</a>. |
| The objects created by this factory do not know what the source and target coordinate systems mean. |
| Because of this low semantic value, high level GIS applications usually do not need to use this factory directly. |
| They can use the static convenience methods in the <a href="../../CRS.html" title="class in org.apache.sis.referencing"><code>CRS</code></a> |
| or <a href="MathTransforms.html" title="class in org.apache.sis.referencing.operation.transform"><code>MathTransforms</code></a> classes instead. |
| |
| |
| <div class="section">Standard parameters</div> |
| <code>MathTransform</code> instances are created from <a href="../../../parameter/DefaultParameterValueGroup.html" title="class in org.apache.sis.parameter">parameter values</a>. |
| The parameters expected by each operation available in a default Apache SIS installation is |
| <a href="http://sis.apache.org/tables/CoordinateOperationMethods.html">listed here</a>. |
| The set of parameters varies for each operation or projection, but the following can be considered typical: |
| |
| <ul> |
| <li>A <cite>semi-major</cite> and <cite>semi-minor</cite> axis length in metres.</li> |
| <li>A <cite>central meridian</cite> and <cite>latitude of origin</cite> in decimal degrees.</li> |
| <li>A <cite>scale factor</cite>, which default to 1.</li> |
| <li>A <cite>false easting</cite> and <cite>false northing</cite> in metres, which default to 0.</li> |
| </ul> |
| |
| <p>Each descriptor has many aliases, and those aliases may vary between different projections. |
| For example the <cite>false easting</cite> parameter is usually called <code>"false_easting"</code> |
| by OGC, while EPSG uses various names like <cite>"False easting"</cite> or <cite>"Easting at |
| false origin"</cite>.</p> |
| |
| <div class="section">Dynamic parameters</div> |
| A few non-standard parameters are defined for compatibility reasons, |
| but delegates their work to standard parameters. Those dynamic parameters are not listed in the |
| <a href="../../../parameter/DefaultParameterValueGroup.html#values()">parameter values</a>. |
| Dynamic parameters are: |
| |
| <ul> |
| <li><code>"earth_radius"</code>, which copy its value to the <code>"semi_major"</code> and |
| <code>"semi_minor"</code> parameter values.</li> |
| <li><code>"inverse_flattening"</code>, which compute the <code>"semi_minor"</code> value from |
| the <code>"semi_major"</code> parameter value.</li> |
| <li><code>"standard_parallel"</code> expecting an array of type <code>double[]</code>, which copy |
| its elements to the <code>"standard_parallel_1"</code> and <code>"standard_parallel_2"</code> |
| parameter scalar values.</li> |
| </ul> |
| |
| <p>The main purpose of those dynamic parameters is to support some less commonly used conventions |
| without duplicating the most commonly used conventions. The alternative ways are used in netCDF |
| files for example, which often use spherical models instead than ellipsoidal ones.</p> |
| |
| |
| <div class="section"><a id="Obligation">Mandatory and optional parameters</a></div> |
| Parameters are flagged as either <cite>mandatory</cite> or <cite>optional</cite>. |
| A parameter may be mandatory and still have a default value. In the context of this package, "mandatory" |
| means that the parameter is an essential part of the projection defined by standards. |
| Such mandatory parameters will always appears in any <cite>Well Known Text</cite> (WKT) formatting, |
| even if not explicitly set by the user. For example the central meridian is typically a mandatory |
| parameter with a default value of 0° (the Greenwich meridian). |
| |
| <p>Optional parameters, on the other hand, are often non-standard extensions. |
| They will appear in WKT formatting only if the user defined explicitly a value which is different than the |
| default value.</p> |
| |
| |
| <div class="section">Operation methods discovery</div> |
| <a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/OperationMethod.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink"><code>OperationMethod</code></a> describes all the parameters expected for instantiating a particular kind of |
| math transform. The set of operation methods known to this factory can be obtained in two ways: |
| |
| <ul> |
| <li><a href="#%3Cinit%3E(java.lang.Iterable)">specified explicitly at construction time</a>, or</li> |
| <li><a href="#%3Cinit%3E()">discovered by scanning the classpath</a>.</li> |
| </ul> |
| |
| The default way is to scan the classpath. See <a href="MathTransformProvider.html" title="interface in org.apache.sis.referencing.operation.transform"><code>MathTransformProvider</code></a> for indications about how to add |
| custom coordinate operation methods in a default Apache SIS installation. |
| |
| |
| <div class="section">Thread safety</div> |
| This class is safe for multi-thread usage if all referenced <code>OperationMethod</code> instances are thread-safe. |
| There is typically only one <code>MathTransformFactory</code> instance for the whole application.</div> |
| <dl> |
| <dt><span class="simpleTagLabel">Since:</span></dt> |
| <dd>0.6</dd> |
| <dt><span class="seeLabel">See Also:</span></dt> |
| <dd><a href="MathTransformProvider.html" title="interface in org.apache.sis.referencing.operation.transform"><code>MathTransformProvider</code></a>, |
| <a href="AbstractMathTransform.html" title="class in org.apache.sis.referencing.operation.transform"><code>AbstractMathTransform</code></a></dd> |
| |
| <p><font size="-1">Defined in the <code>sis-referencing</code> module</font></p> |
| </dl> |
| </li> |
| </ul> |
| </div> |
| <div class="summary"> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <!-- ======== NESTED CLASS SUMMARY ======== --> |
| <section role="region"> |
| <ul class="blockList"> |
| <li class="blockList"><a id="nested.class.summary"> |
| <!-- --> |
| </a> |
| <h3>Nested Class Summary</h3> |
| <table class="memberSummary"> |
| <caption><span>Nested Classes</span><span class="tabEnd"> </span></caption> |
| <tr> |
| <th class="colFirst" scope="col">Modifier and Type</th> |
| <th class="colSecond" scope="col">Class</th> |
| <th class="colLast" scope="col">Description</th> |
| </tr> |
| <tr class="altColor"> |
| <td class="colFirst"><code>static class </code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="DefaultMathTransformFactory.Context.html" title="class in org.apache.sis.referencing.operation.transform">DefaultMathTransformFactory.Context</a></span></code></th> |
| <td class="colLast"> |
| <div class="block">Source and target coordinate systems for which a new parameterized transform is going to be used.</div> |
| </td> |
| </tr> |
| </table> |
| </li> |
| </ul> |
| </section> |
| <!-- ======== CONSTRUCTOR SUMMARY ======== --> |
| <section role="region"> |
| <ul class="blockList"> |
| <li class="blockList"><a id="constructor.summary"> |
| <!-- --> |
| </a> |
| <h3>Constructor Summary</h3> |
| <table class="memberSummary"> |
| <caption><span>Constructors</span><span class="tabEnd"> </span></caption> |
| <tr> |
| <th class="colFirst" scope="col">Constructor</th> |
| <th class="colLast" scope="col">Description</th> |
| </tr> |
| <tr class="altColor"> |
| <th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E()">DefaultMathTransformFactory</a></span>()</code></th> |
| <td class="colLast"> |
| <div class="block">Creates a new factory which will discover operation methods with a <a href="https://docs.oracle.com/javase/8/docs/api/java/util/ServiceLoader.html?is-external=true" title="class or interface in java.util" class="externalLink"><code>ServiceLoader</code></a>.</div> |
| </td> |
| </tr> |
| <tr class="rowColor"> |
| <th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E(java.lang.Iterable)">DefaultMathTransformFactory</a></span>​(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Iterable.html?is-external=true" title="class or interface in java.lang" class="externalLink">Iterable</a><? extends <a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/OperationMethod.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink">OperationMethod</a>> methods)</code></th> |
| <td class="colLast"> |
| <div class="block">Creates a new factory which will use the given operation methods.</div> |
| </td> |
| </tr> |
| </table> |
| </li> |
| </ul> |
| </section> |
| <!-- ========== METHOD SUMMARY =========== --> |
| <section role="region"> |
| <ul class="blockList"> |
| <li class="blockList"><a id="method.summary"> |
| <!-- --> |
| </a> |
| <h3>Method Summary</h3> |
| <table class="memberSummary"> |
| <caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd"> </span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd"> </span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd"> </span></span><span id="t6" class="tableTab"><span><a href="javascript:show(32);">Deprecated Methods</a></span><span class="tabEnd"> </span></span></caption> |
| <tr> |
| <th class="colFirst" scope="col">Modifier and Type</th> |
| <th class="colSecond" scope="col">Method</th> |
| <th class="colLast" scope="col">Description</th> |
| </tr> |
| <tr id="i0" class="altColor"> |
| <td class="colFirst"><code><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/MathTransform.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink">MathTransform</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#createAffineTransform(org.opengis.referencing.operation.Matrix)">createAffineTransform</a></span>​(<a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/Matrix.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink">Matrix</a> matrix)</code></th> |
| <td class="colLast"> |
| <div class="block">Creates an affine transform from a matrix.</div> |
| </td> |
| </tr> |
| <tr id="i1" class="rowColor"> |
| <td class="colFirst"><code><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/MathTransform.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink">MathTransform</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#createBaseToDerived(org.opengis.referencing.crs.CoordinateReferenceSystem,org.opengis.parameter.ParameterValueGroup,org.opengis.referencing.cs.CoordinateSystem)">createBaseToDerived</a></span>​(<a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/crs/CoordinateReferenceSystem.html?is-external=true" title="class or interface in org.opengis.referencing.crs" class="externalLink">CoordinateReferenceSystem</a> baseCRS, |
| <a href="http://www.geoapi.org/3.0/javadoc/org/opengis/parameter/ParameterValueGroup.html?is-external=true" title="class or interface in org.opengis.parameter" class="externalLink">ParameterValueGroup</a> parameters, |
| <a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/cs/CoordinateSystem.html?is-external=true" title="class or interface in org.opengis.referencing.cs" class="externalLink">CoordinateSystem</a> derivedCS)</code></th> |
| <td class="colLast"> |
| <div class="block"><span class="deprecatedLabel">Deprecated.</span> |
| <div class="deprecationComment">Replaced by <a href="#createParameterizedTransform(org.opengis.parameter.ParameterValueGroup,org.apache.sis.referencing.operation.transform.DefaultMathTransformFactory.Context)"><code>createParameterizedTransform(ParameterValueGroup, Context)</code></a>.</div> |
| </div> |
| </td> |
| </tr> |
| <tr id="i2" class="altColor"> |
| <td class="colFirst"><code><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/MathTransform.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink">MathTransform</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#createConcatenatedTransform(org.opengis.referencing.operation.MathTransform,org.opengis.referencing.operation.MathTransform)">createConcatenatedTransform</a></span>​(<a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/MathTransform.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink">MathTransform</a> tr1, |
| <a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/MathTransform.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink">MathTransform</a> tr2)</code></th> |
| <td class="colLast"> |
| <div class="block">Creates a transform by concatenating two existing transforms.</div> |
| </td> |
| </tr> |
| <tr id="i3" class="rowColor"> |
| <td class="colFirst"><code><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/MathTransform.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink">MathTransform</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#createCoordinateSystemChange(org.opengis.referencing.cs.CoordinateSystem,org.opengis.referencing.cs.CoordinateSystem,org.opengis.referencing.datum.Ellipsoid)">createCoordinateSystemChange</a></span>​(<a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/cs/CoordinateSystem.html?is-external=true" title="class or interface in org.opengis.referencing.cs" class="externalLink">CoordinateSystem</a> source, |
| <a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/cs/CoordinateSystem.html?is-external=true" title="class or interface in org.opengis.referencing.cs" class="externalLink">CoordinateSystem</a> target, |
| <a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/datum/Ellipsoid.html?is-external=true" title="class or interface in org.opengis.referencing.datum" class="externalLink">Ellipsoid</a> ellipsoid)</code></th> |
| <td class="colLast"> |
| <div class="block">Creates a math transform that represent a change of coordinate system.</div> |
| </td> |
| </tr> |
| <tr id="i4" class="altColor"> |
| <td class="colFirst"><code><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/MathTransform.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink">MathTransform</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#createFromWKT(java.lang.String)">createFromWKT</a></span>​(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a> text)</code></th> |
| <td class="colLast"> |
| <div class="block">Creates a math transform object from a |
| <a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/doc-files/WKT.html"><cite>Well |
| Known Text</cite> (WKT)</a>.</div> |
| </td> |
| </tr> |
| <tr id="i5" class="rowColor"> |
| <td class="colFirst"><code><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/MathTransform.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink">MathTransform</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#createFromXML(java.lang.String)">createFromXML</a></span>​(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a> xml)</code></th> |
| <td class="colLast"> |
| <div class="block"><span class="deprecatedLabel">Deprecated.</span></div> |
| </td> |
| </tr> |
| <tr id="i6" class="altColor"> |
| <td class="colFirst"><code><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/MathTransform.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink">MathTransform</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#createParameterizedTransform(org.opengis.parameter.ParameterValueGroup)">createParameterizedTransform</a></span>​(<a href="http://www.geoapi.org/3.0/javadoc/org/opengis/parameter/ParameterValueGroup.html?is-external=true" title="class or interface in org.opengis.parameter" class="externalLink">ParameterValueGroup</a> parameters)</code></th> |
| <td class="colLast"> |
| <div class="block"><span class="deprecatedLabel">Deprecated.</span> |
| <div class="deprecationComment">Replaced by <a href="#createParameterizedTransform(org.opengis.parameter.ParameterValueGroup,org.apache.sis.referencing.operation.transform.DefaultMathTransformFactory.Context)"><code>createParameterizedTransform(ParameterValueGroup, Context)</code></a> |
| where the <code>Context</code> argument can be null.</div> |
| </div> |
| </td> |
| </tr> |
| <tr id="i7" class="rowColor"> |
| <td class="colFirst"><code><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/MathTransform.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink">MathTransform</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#createParameterizedTransform(org.opengis.parameter.ParameterValueGroup,org.apache.sis.referencing.operation.transform.DefaultMathTransformFactory.Context)">createParameterizedTransform</a></span>​(<a href="http://www.geoapi.org/3.0/javadoc/org/opengis/parameter/ParameterValueGroup.html?is-external=true" title="class or interface in org.opengis.parameter" class="externalLink">ParameterValueGroup</a> parameters, |
| <a href="DefaultMathTransformFactory.Context.html" title="class in org.apache.sis.referencing.operation.transform">DefaultMathTransformFactory.Context</a> context)</code></th> |
| <td class="colLast"> |
| <div class="block">Creates a transform from a group of parameters.</div> |
| </td> |
| </tr> |
| <tr id="i8" class="altColor"> |
| <td class="colFirst"><code><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/MathTransform.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink">MathTransform</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#createPassThroughTransform(int,org.opengis.referencing.operation.MathTransform,int)">createPassThroughTransform</a></span>​(int firstAffectedCoordinate, |
| <a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/MathTransform.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink">MathTransform</a> subTransform, |
| int numTrailingCoordinates)</code></th> |
| <td class="colLast"> |
| <div class="block">Creates a transform which passes through a subset of coordinates to another transform.</div> |
| </td> |
| </tr> |
| <tr id="i9" class="rowColor"> |
| <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util" class="externalLink">Set</a><<a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/OperationMethod.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink">OperationMethod</a>></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getAvailableMethods(java.lang.Class)">getAvailableMethods</a></span>​(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang" class="externalLink">Class</a><? extends <a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/SingleOperation.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink">SingleOperation</a>> type)</code></th> |
| <td class="colLast"> |
| <div class="block">Returns a set of available methods for coordinate operations of the given type.</div> |
| </td> |
| </tr> |
| <tr id="i10" class="altColor"> |
| <td class="colFirst"><code><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/parameter/ParameterValueGroup.html?is-external=true" title="class or interface in org.opengis.parameter" class="externalLink">ParameterValueGroup</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getDefaultParameters(java.lang.String)">getDefaultParameters</a></span>​(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a> method)</code></th> |
| <td class="colLast"> |
| <div class="block">Returns the default parameter values for a math transform using the given operation method.</div> |
| </td> |
| </tr> |
| <tr id="i11" class="rowColor"> |
| <td class="colFirst"><code><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/OperationMethod.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink">OperationMethod</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getLastMethodUsed()">getLastMethodUsed</a></span>()</code></th> |
| <td class="colLast"> |
| <div class="block">Returns the operation method used by the latest call to a <code>create(…)</code> constructor |
| in the currently running thread.</div> |
| </td> |
| </tr> |
| <tr id="i12" class="altColor"> |
| <td class="colFirst"><code><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/OperationMethod.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink">OperationMethod</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getOperationMethod(java.lang.String)">getOperationMethod</a></span>​(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a> identifier)</code></th> |
| <td class="colLast"> |
| <div class="block">Returns the operation method for the specified name or identifier.</div> |
| </td> |
| </tr> |
| <tr id="i13" class="rowColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#reload()">reload</a></span>()</code></th> |
| <td class="colLast"> |
| <div class="block">Notifies this factory that the elements provided by the <code>Iterable<OperationMethod></code> may have changed.</div> |
| </td> |
| </tr> |
| <tr id="i14" class="altColor"> |
| <td class="colFirst"><code><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/MathTransform.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink">MathTransform</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#swapAndScaleAxes(org.opengis.referencing.operation.MathTransform,org.apache.sis.referencing.operation.transform.DefaultMathTransformFactory.Context)">swapAndScaleAxes</a></span>​(<a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/MathTransform.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink">MathTransform</a> parameterized, |
| <a href="DefaultMathTransformFactory.Context.html" title="class in org.apache.sis.referencing.operation.transform">DefaultMathTransformFactory.Context</a> context)</code></th> |
| <td class="colLast"> |
| <div class="block">Given a transform between normalized spaces, |
| creates a transform taking in account axis directions, units of measurement and longitude rotation.</div> |
| </td> |
| </tr> |
| </table> |
| <ul class="blockList"> |
| <li class="blockList"><a id="methods.inherited.from.class.AbstractFactory"> |
| <!-- --> |
| </a> |
| <h3>Methods inherited from class <a href="../../../util/iso/AbstractFactory.html" title="class in org.apache.sis.util.iso">AbstractFactory</a></h3> |
| <code><a href="../../../util/iso/AbstractFactory.html#getVendor()">getVendor</a></code></li> |
| </ul> |
| <ul class="blockList"> |
| <li class="blockList"><a id="methods.inherited.from.class.Object"> |
| <!-- --> |
| </a> |
| <h3>Methods inherited from class <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a></h3> |
| <code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#clone()" title="class or interface in java.lang" class="externalLink">clone</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#equals(java.lang.Object)" title="class or interface in java.lang" class="externalLink">equals</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#finalize()" title="class or interface in java.lang" class="externalLink">finalize</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#getClass()" title="class or interface in java.lang" class="externalLink">getClass</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#hashCode()" title="class or interface in java.lang" class="externalLink">hashCode</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notify()" title="class or interface in java.lang" class="externalLink">notify</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notifyAll()" title="class or interface in java.lang" class="externalLink">notifyAll</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#toString()" title="class or interface in java.lang" class="externalLink">toString</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait()" title="class or interface in java.lang" class="externalLink">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait(long)" title="class or interface in java.lang" class="externalLink">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait(long,int)" title="class or interface in java.lang" class="externalLink">wait</a></code></li> |
| </ul> |
| <ul class="blockList"> |
| <li class="blockList"><a id="methods.inherited.from.class.Factory"> |
| <!-- --> |
| </a> |
| <h3>Methods inherited from interface <a href="http://www.geoapi.org/3.0/javadoc/org/opengis/util/Factory.html?is-external=true" title="class or interface in org.opengis.util" class="externalLink">Factory</a></h3> |
| <code><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/util/Factory.html?is-external=true#getVendor()" title="class or interface in org.opengis.util" class="externalLink">getVendor</a></code></li> |
| </ul> |
| </li> |
| </ul> |
| </section> |
| </li> |
| </ul> |
| </div> |
| <div class="details"> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <!-- ========= CONSTRUCTOR DETAIL ======== --> |
| <section role="region"> |
| <ul class="blockList"> |
| <li class="blockList"><a id="constructor.detail"> |
| <!-- --> |
| </a> |
| <h3>Constructor Detail</h3> |
| <a id="<init>()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>DefaultMathTransformFactory</h4> |
| <pre>public DefaultMathTransformFactory()</pre> |
| <div class="block">Creates a new factory which will discover operation methods with a <a href="https://docs.oracle.com/javase/8/docs/api/java/util/ServiceLoader.html?is-external=true" title="class or interface in java.util" class="externalLink"><code>ServiceLoader</code></a>. |
| The <a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/OperationMethod.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink"><code>OperationMethod</code></a> implementations shall be listed in the following file: |
| |
| <blockquote><pre>META-INF/services/org.opengis.referencing.operation.OperationMethod</pre></blockquote> |
| |
| <code>DefaultMathTransformFactory</code> parses the above-cited files in all JAR files in order to find all available |
| operation methods. By default, only operation methods that implement the <a href="MathTransformProvider.html" title="interface in org.apache.sis.referencing.operation.transform"><code>MathTransformProvider</code></a> interface |
| can be used by the <code>create(…)</code> methods in this class.</div> |
| <dl> |
| <dt><span class="seeLabel">See Also:</span></dt> |
| <dd><a href="#reload()"><code>reload()</code></a></dd> |
| </dl> |
| </li> |
| </ul> |
| <a id="<init>(java.lang.Iterable)"> |
| <!-- --> |
| </a> |
| <ul class="blockListLast"> |
| <li class="blockList"> |
| <h4>DefaultMathTransformFactory</h4> |
| <pre>public DefaultMathTransformFactory​(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Iterable.html?is-external=true" title="class or interface in java.lang" class="externalLink">Iterable</a><? extends <a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/OperationMethod.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink">OperationMethod</a>> methods)</pre> |
| <div class="block">Creates a new factory which will use the given operation methods. The given iterable is stored by reference — |
| its content is <strong>not</strong> copied — in order to allow deferred <code>OperationMethod</code> constructions. |
| Note that by default, only operation methods that implement the <a href="MathTransformProvider.html" title="interface in org.apache.sis.referencing.operation.transform"><code>MathTransformProvider</code></a> interface can be |
| used by the <code>create(…)</code> methods in this class. |
| |
| <p><b>Requirements:</b></p> |
| <ul> |
| <li>The given iterable should not contain duplicated elements.</li> |
| <li>The given iterable shall be stable: all elements returned by the first iteration must also be |
| returned by any subsequent iterations, unless <a href="#reload()"><code>reload()</code></a> has been invoked.</li> |
| <li><code>OperationMethod</code> instances should also implement <a href="MathTransformProvider.html" title="interface in org.apache.sis.referencing.operation.transform"><code>MathTransformProvider</code></a>.</li> |
| <li>All <code>OperationMethod</code> instances shall be thread-safe.</li> |
| <li>The <code>Iterable</code> itself does not need to be thread-safe since all usages will be synchronized as below: |
| |
| <blockquote><pre><font color="green">synchronized</font> (methods) { |
| <font color="green">for</font> (OperationMethod method : methods) { |
| <i><font color="gray">// Use the method here.</font></i> |
| } |
| }</pre></blockquote> |
| </li> |
| </ul></div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>methods</code> - the operation methods to use, stored by reference (not copied).</dd> |
| </dl> |
| </li> |
| </ul> |
| </li> |
| </ul> |
| </section> |
| <!-- ============ METHOD DETAIL ========== --> |
| <section role="region"> |
| <ul class="blockList"> |
| <li class="blockList"><a id="method.detail"> |
| <!-- --> |
| </a> |
| <h3>Method Detail</h3> |
| <a id="getAvailableMethods(java.lang.Class)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getAvailableMethods</h4> |
| <pre class="methodSignature">public <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util" class="externalLink">Set</a><<a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/OperationMethod.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink">OperationMethod</a>> getAvailableMethods​(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang" class="externalLink">Class</a><? extends <a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/SingleOperation.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink">SingleOperation</a>> type)</pre> |
| <div class="block">Returns a set of available methods for coordinate operations of the given type. |
| The <code>type</code> argument can be used for filtering the kind of operations described by the returned |
| <code>OperationMethod</code>s. The argument is usually (but not restricted to) one of the following types: |
| |
| <ul> |
| <li><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/Transformation.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink"><code>Transformation</code></a> |
| for coordinate operations described by empirically derived parameters.</li> |
| <li><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/Conversion.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink"><code>Conversion</code></a> |
| for coordinate operations described by definitions.</li> |
| <li><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/Projection.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink"><code>Projection</code></a> |
| for conversions from geodetic latitudes and longitudes to plane (map) coordinates.</li> |
| <li><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/SingleOperation.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink"><code>SingleOperation</code></a> for all coordinate operations.</li> |
| </ul> |
| |
| The returned set may conservatively contain more <code>OperationMethod</code> elements than requested |
| if this <code>MathTransformFactory</code> does not support filtering by the given type.</div> |
| <dl> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></dt> |
| <dd><code><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/MathTransformFactory.html?is-external=true#getAvailableMethods(java.lang.Class)" title="class or interface in org.opengis.referencing.operation" class="externalLink">getAvailableMethods</a></code> in interface <code><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/MathTransformFactory.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink">MathTransformFactory</a></code></dd> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>type</code> - <code><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/SingleOperation.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink">SingleOperation</a>.class</code> for fetching all operation methods, |
| <code><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/Projection.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink">Projection</a>.class</code> for |
| fetching only map projection methods, <i>etc</i>.</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>methods available in this factory for coordinate operations of the given type.</dd> |
| <dt><span class="seeLabel">See Also:</span></dt> |
| <dd><a href="#getDefaultParameters(java.lang.String)"><code>getDefaultParameters(String)</code></a>, |
| <a href="#createParameterizedTransform(org.opengis.parameter.ParameterValueGroup,org.apache.sis.referencing.operation.transform.DefaultMathTransformFactory.Context)"><code>createParameterizedTransform(ParameterValueGroup, Context)</code></a>, |
| <a href="../DefaultOperationMethod.html#getOperationType()"><code>DefaultOperationMethod.getOperationType()</code></a></dd> |
| </dl> |
| </li> |
| </ul> |
| <a id="getOperationMethod(java.lang.String)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getOperationMethod</h4> |
| <pre class="methodSignature">public <a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/OperationMethod.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink">OperationMethod</a> getOperationMethod​(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a> identifier) |
| throws <a href="http://www.geoapi.org/3.0/javadoc/org/opengis/util/NoSuchIdentifierException.html?is-external=true" title="class or interface in org.opengis.util" class="externalLink">NoSuchIdentifierException</a></pre> |
| <div class="block">Returns the operation method for the specified name or identifier. The given argument shall be either |
| a method <a href="../../AbstractIdentifiedObject.html#getName()">name</a> (e.g. <cite>"Transverse Mercator"</cite>) |
| or one of its <a href="../../AbstractIdentifiedObject.html#getIdentifiers()">identifiers</a> (e.g. <code>"EPSG:9807"</code>). |
| |
| <p>The search is case-insensitive. Comparisons against method names can be |
| <a href="../../AbstractIdentifiedObject.html#isHeuristicMatchForName(java.lang.String)">heuristic</a>.</p> |
| |
| <p>If more than one method match the given identifier, then the first (according iteration order) |
| non-<a href="../../../util/Deprecable.html#isDeprecated()">deprecated</a> matching method is returned. |
| If all matching methods are deprecated, the first one is returned.</p></div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>identifier</code> - the name or identifier of the operation method to search.</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>the coordinate operation method for the given name or identifier.</dd> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/util/NoSuchIdentifierException.html?is-external=true" title="class or interface in org.opengis.util" class="externalLink">NoSuchIdentifierException</a></code> - if there is no operation method registered for the specified identifier.</dd> |
| <dt><span class="seeLabel">See Also:</span></dt> |
| <dd><a href="../DefaultCoordinateOperationFactory.html#getOperationMethod(java.lang.String)"><code>DefaultCoordinateOperationFactory.getOperationMethod(String)</code></a></dd> |
| </dl> |
| </li> |
| </ul> |
| <a id="getDefaultParameters(java.lang.String)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getDefaultParameters</h4> |
| <pre class="methodSignature">public <a href="http://www.geoapi.org/3.0/javadoc/org/opengis/parameter/ParameterValueGroup.html?is-external=true" title="class or interface in org.opengis.parameter" class="externalLink">ParameterValueGroup</a> getDefaultParameters​(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a> method) |
| throws <a href="http://www.geoapi.org/3.0/javadoc/org/opengis/util/NoSuchIdentifierException.html?is-external=true" title="class or interface in org.opengis.util" class="externalLink">NoSuchIdentifierException</a></pre> |
| <div class="block">Returns the default parameter values for a math transform using the given operation method. |
| The <code>method</code> argument is the name of any <code>OperationMethod</code> instance returned by |
| <code><a href="#getAvailableMethods(java.lang.Class)"><code>getAvailableMethods</code></a>(<a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/SingleOperation.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink">SingleOperation</a>.class)</code>. |
| Valid names are <a href="http://sis.apache.org/tables/CoordinateOperationMethods.html">listed here</a>. |
| |
| <p>This function creates new parameter instances at every call. |
| Parameters are intended to be modified by the user before to be given to the |
| <a href="#createParameterizedTransform(org.opengis.parameter.ParameterValueGroup)"><code>createParameterizedTransform(…)</code></a> method.</p></div> |
| <dl> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></dt> |
| <dd><code><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/MathTransformFactory.html?is-external=true#getDefaultParameters(java.lang.String)" title="class or interface in org.opengis.referencing.operation" class="externalLink">getDefaultParameters</a></code> in interface <code><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/MathTransformFactory.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink">MathTransformFactory</a></code></dd> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>method</code> - the case insensitive name of the coordinate operation method to search for.</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>a new group of parameter values for the <code>OperationMethod</code> identified by the given name.</dd> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/util/NoSuchIdentifierException.html?is-external=true" title="class or interface in org.opengis.util" class="externalLink">NoSuchIdentifierException</a></code> - if there is no method registered for the given name or identifier.</dd> |
| <dt><span class="seeLabel">See Also:</span></dt> |
| <dd><a href="#getAvailableMethods(java.lang.Class)"><code>getAvailableMethods(Class)</code></a>, |
| <a href="#createParameterizedTransform(org.opengis.parameter.ParameterValueGroup,org.apache.sis.referencing.operation.transform.DefaultMathTransformFactory.Context)"><code>createParameterizedTransform(ParameterValueGroup, Context)</code></a>, |
| <a href="AbstractMathTransform.html#getParameterValues()"><code>AbstractMathTransform.getParameterValues()</code></a></dd> |
| </dl> |
| </li> |
| </ul> |
| <a id="createParameterizedTransform(org.opengis.parameter.ParameterValueGroup)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>createParameterizedTransform</h4> |
| <pre class="methodSignature"><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Deprecated.html?is-external=true" title="class or interface in java.lang" class="externalLink">@Deprecated</a> |
| public <a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/MathTransform.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink">MathTransform</a> createParameterizedTransform​(<a href="http://www.geoapi.org/3.0/javadoc/org/opengis/parameter/ParameterValueGroup.html?is-external=true" title="class or interface in org.opengis.parameter" class="externalLink">ParameterValueGroup</a> parameters) |
| throws <a href="http://www.geoapi.org/3.0/javadoc/org/opengis/util/NoSuchIdentifierException.html?is-external=true" title="class or interface in org.opengis.util" class="externalLink">NoSuchIdentifierException</a>, |
| <a href="http://www.geoapi.org/3.0/javadoc/org/opengis/util/FactoryException.html?is-external=true" title="class or interface in org.opengis.util" class="externalLink">FactoryException</a></pre> |
| <div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span> |
| <div class="deprecationComment">Replaced by <a href="#createParameterizedTransform(org.opengis.parameter.ParameterValueGroup,org.apache.sis.referencing.operation.transform.DefaultMathTransformFactory.Context)"><code>createParameterizedTransform(ParameterValueGroup, Context)</code></a> |
| where the <code>Context</code> argument can be null.</div> |
| </div> |
| <div class="block">Creates a transform from a group of parameters. |
| The set of expected parameters varies for each operation.</div> |
| <dl> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></dt> |
| <dd><code><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/MathTransformFactory.html?is-external=true#createParameterizedTransform(org.opengis.parameter.ParameterValueGroup)" title="class or interface in org.opengis.referencing.operation" class="externalLink">createParameterizedTransform</a></code> in interface <code><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/MathTransformFactory.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink">MathTransformFactory</a></code></dd> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>parameters</code> - the parameter values. The <a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/IdentifiedObject.html?is-external=true#getName()" title="class or interface in org.opengis.referencing" class="externalLink">parameter group name</a> |
| shall be the name of the desired <a href="../DefaultOperationMethod.html" title="class in org.apache.sis.referencing.operation">operation method</a>.</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>the transform created from the given parameters.</dd> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/util/NoSuchIdentifierException.html?is-external=true" title="class or interface in org.opengis.util" class="externalLink">NoSuchIdentifierException</a></code> - if there is no method for the given parameter group name.</dd> |
| <dd><code><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/util/FactoryException.html?is-external=true" title="class or interface in org.opengis.util" class="externalLink">FactoryException</a></code> - if the object creation failed. This exception is thrown |
| if some required parameter has not been supplied, or has illegal value.</dd> |
| </dl> |
| </li> |
| </ul> |
| <a id="createParameterizedTransform(org.opengis.parameter.ParameterValueGroup,org.apache.sis.referencing.operation.transform.DefaultMathTransformFactory.Context)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>createParameterizedTransform</h4> |
| <pre class="methodSignature">public <a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/MathTransform.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink">MathTransform</a> createParameterizedTransform​(<a href="http://www.geoapi.org/3.0/javadoc/org/opengis/parameter/ParameterValueGroup.html?is-external=true" title="class or interface in org.opengis.parameter" class="externalLink">ParameterValueGroup</a> parameters, |
| <a href="DefaultMathTransformFactory.Context.html" title="class in org.apache.sis.referencing.operation.transform">DefaultMathTransformFactory.Context</a> context) |
| throws <a href="http://www.geoapi.org/3.0/javadoc/org/opengis/util/NoSuchIdentifierException.html?is-external=true" title="class or interface in org.opengis.util" class="externalLink">NoSuchIdentifierException</a>, |
| <a href="http://www.geoapi.org/3.0/javadoc/org/opengis/util/FactoryException.html?is-external=true" title="class or interface in org.opengis.util" class="externalLink">FactoryException</a></pre> |
| <div class="block">Creates a transform from a group of parameters. |
| The set of expected parameters varies for each operation. |
| The easiest way to provide parameter values is to get an initially empty group for the desired |
| operation by calling <a href="#getDefaultParameters(java.lang.String)"><code>getDefaultParameters(String)</code></a>, then to fill the parameter values. |
| Example: |
| |
| <blockquote><pre>ParameterValueGroup group = factory.<b>getDefaultParameters</b>(<font color="orangered">"Transverse_Mercator"</font>); |
| group.<b>parameter</b>(<font color="orangered">"semi_major"</font>).<b>setValue</b>(6378137.000); |
| group.<b>parameter</b>(<font color="orangered">"semi_minor"</font>).<b>setValue</b>(6356752.314); |
| MathTransform mt = factory.<b>createParameterizedTransform</b>(group, <font color="green">null</font>);</pre></blockquote> |
| |
| Sometime the <code>"semi_major"</code> and <code>"semi_minor"</code> parameter values are not explicitly provided, |
| but rather inferred from the <a href="../../datum/DefaultGeodeticDatum.html" title="class in org.apache.sis.referencing.datum">geodetic |
| datum</a> of the source Coordinate Reference System. If the given <code>context</code> argument is non-null, |
| then this method will use those contextual information for: |
| |
| <ol> |
| <li>Inferring the <code>"semi_major"</code>, <code>"semi_minor"</code>, <code>"src_semi_major"</code>, |
| <code>"src_semi_minor"</code>, <code>"tgt_semi_major"</code> or <code>"tgt_semi_minor"</code> parameters values |
| from the <a href="../../datum/DefaultEllipsoid.html" title="class in org.apache.sis.referencing.datum">ellipsoids</a> associated to |
| the source or target CRS, if those parameters are not explicitly given and if they are relevant |
| for the coordinate operation method.</li> |
| <li><a href="#createConcatenatedTransform(org.opengis.referencing.operation.MathTransform,org.opengis.referencing.operation.MathTransform)">Concatenating</a> the parameterized transform |
| with any other transforms required for performing units changes and coordinates swapping.</li> |
| </ol> |
| |
| The complete group of parameters, including <code>"semi_major"</code>, <code>"semi_minor"</code> or other calculated values, |
| can be obtained by a call to <a href="DefaultMathTransformFactory.Context.html#getCompletedParameters()"><code>DefaultMathTransformFactory.Context.getCompletedParameters()</code></a> after <code>createParameterizedTransform(…)</code> |
| returned. Note that the completed parameters may only have additional parameters compared to the given parameter |
| group; existing parameter values should not be modified. |
| |
| <p>The <code>OperationMethod</code> instance used by this constructor can be obtained by a call to |
| <a href="#getLastMethodUsed()"><code>getLastMethodUsed()</code></a>.</p></div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>parameters</code> - the parameter values. The <a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/IdentifiedObject.html?is-external=true#getName()" title="class or interface in org.opengis.referencing" class="externalLink">parameter group name</a> |
| shall be the name of the desired <a href="../DefaultOperationMethod.html" title="class in org.apache.sis.referencing.operation">operation method</a>.</dd> |
| <dd><code>context</code> - information about the context (for example source and target coordinate systems) |
| in which the new transform is going to be used, or <code>null</code> if none.</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>the transform created from the given parameters.</dd> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/util/NoSuchIdentifierException.html?is-external=true" title="class or interface in org.opengis.util" class="externalLink">NoSuchIdentifierException</a></code> - if there is no method for the given parameter group name.</dd> |
| <dd><code><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/util/FactoryException.html?is-external=true" title="class or interface in org.opengis.util" class="externalLink">FactoryException</a></code> - if the object creation failed. This exception is thrown |
| if some required parameter has not been supplied, or has illegal value.</dd> |
| <dt><span class="seeLabel">See Also:</span></dt> |
| <dd><a href="#getDefaultParameters(java.lang.String)"><code>getDefaultParameters(String)</code></a>, |
| <a href="#getAvailableMethods(java.lang.Class)"><code>getAvailableMethods(Class)</code></a>, |
| <a href="#getLastMethodUsed()"><code>getLastMethodUsed()</code></a>, |
| <a href="../../../parameter/ParameterBuilder.html#createGroupForMapProjection(org.opengis.parameter.ParameterDescriptor...)"><code>ParameterBuilder.createGroupForMapProjection(ParameterDescriptor...)</code></a></dd> |
| </dl> |
| </li> |
| </ul> |
| <a id="swapAndScaleAxes(org.opengis.referencing.operation.MathTransform,org.apache.sis.referencing.operation.transform.DefaultMathTransformFactory.Context)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>swapAndScaleAxes</h4> |
| <pre class="methodSignature">public <a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/MathTransform.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink">MathTransform</a> swapAndScaleAxes​(<a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/MathTransform.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink">MathTransform</a> parameterized, |
| <a href="DefaultMathTransformFactory.Context.html" title="class in org.apache.sis.referencing.operation.transform">DefaultMathTransformFactory.Context</a> context) |
| throws <a href="http://www.geoapi.org/3.0/javadoc/org/opengis/util/FactoryException.html?is-external=true" title="class or interface in org.opengis.util" class="externalLink">FactoryException</a></pre> |
| <div class="block">Given a transform between normalized spaces, |
| creates a transform taking in account axis directions, units of measurement and longitude rotation. |
| This method <a href="#createConcatenatedTransform(org.opengis.referencing.operation.MathTransform,org.opengis.referencing.operation.MathTransform)">concatenates</a> the given parameterized transform |
| with any other transform required for performing units changes and coordinates swapping. |
| |
| <p>The given <code>parameterized</code> transform shall expect |
| <a href="../../cs/AxesConvention.html#NORMALIZED">normalized</a> input coordinates and |
| produce normalized output coordinates. See <a href="../../cs/AxesConvention.html" title="enum in org.apache.sis.referencing.cs"><code>AxesConvention</code></a> for more |
| information about what Apache SIS means by "normalized".</p> |
| |
| <div class="note"><b>Example:</b> |
| The most typical examples of transforms with normalized inputs/outputs are normalized |
| map projections expecting (<cite>longitude</cite>, <cite>latitude</cite>) inputs in degrees |
| and calculating (<cite>x</cite>, <cite>y</cite>) coordinates in metres, |
| both of them with (<a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/cs/AxisDirection.html?is-external=true#EAST" title="class or interface in org.opengis.referencing.cs" class="externalLink">East</a>, |
| <a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/cs/AxisDirection.html?is-external=true#NORTH" title="class or interface in org.opengis.referencing.cs" class="externalLink">North</a>) axis orientations.</div> |
| |
| <div class="section">Controlling the normalization process</div> |
| Users who need a different normalized space than the default one way find more convenient to |
| override the <a href="DefaultMathTransformFactory.Context.html#getMatrix(org.apache.sis.referencing.operation.transform.ContextualParameters.MatrixRole)"><code>Context.getMatrix(ContextualParameters.MatrixRole)</code></a> method.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>parameterized</code> - a transform for normalized input and output coordinates.</dd> |
| <dd><code>context</code> - source and target coordinate systems in which the transform is going to be used.</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>a transform taking in account unit conversions and axis swapping.</dd> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/util/FactoryException.html?is-external=true" title="class or interface in org.opengis.util" class="externalLink">FactoryException</a></code> - if the object creation failed.</dd> |
| <dt><span class="simpleTagLabel">Since:</span></dt> |
| <dd>0.7</dd> |
| <dt><span class="seeLabel">See Also:</span></dt> |
| <dd><a href="../../cs/AxesConvention.html#NORMALIZED"><code>AxesConvention.NORMALIZED</code></a>, |
| <a href="../DefaultConversion.html#%3Cinit%3E(java.util.Map,org.opengis.referencing.operation.OperationMethod,org.opengis.referencing.operation.MathTransform,org.opengis.parameter.ParameterValueGroup)"><code>DefaultConversion(Map, OperationMethod, MathTransform, ParameterValueGroup)</code></a></dd> |
| </dl> |
| </li> |
| </ul> |
| <a id="createBaseToDerived(org.opengis.referencing.crs.CoordinateReferenceSystem,org.opengis.parameter.ParameterValueGroup,org.opengis.referencing.cs.CoordinateSystem)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>createBaseToDerived</h4> |
| <pre class="methodSignature"><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Deprecated.html?is-external=true" title="class or interface in java.lang" class="externalLink">@Deprecated</a> |
| public <a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/MathTransform.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink">MathTransform</a> createBaseToDerived​(<a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/crs/CoordinateReferenceSystem.html?is-external=true" title="class or interface in org.opengis.referencing.crs" class="externalLink">CoordinateReferenceSystem</a> baseCRS, |
| <a href="http://www.geoapi.org/3.0/javadoc/org/opengis/parameter/ParameterValueGroup.html?is-external=true" title="class or interface in org.opengis.parameter" class="externalLink">ParameterValueGroup</a> parameters, |
| <a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/cs/CoordinateSystem.html?is-external=true" title="class or interface in org.opengis.referencing.cs" class="externalLink">CoordinateSystem</a> derivedCS) |
| throws <a href="http://www.geoapi.org/3.0/javadoc/org/opengis/util/NoSuchIdentifierException.html?is-external=true" title="class or interface in org.opengis.util" class="externalLink">NoSuchIdentifierException</a>, |
| <a href="http://www.geoapi.org/3.0/javadoc/org/opengis/util/FactoryException.html?is-external=true" title="class or interface in org.opengis.util" class="externalLink">FactoryException</a></pre> |
| <div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span> |
| <div class="deprecationComment">Replaced by <a href="#createParameterizedTransform(org.opengis.parameter.ParameterValueGroup,org.apache.sis.referencing.operation.transform.DefaultMathTransformFactory.Context)"><code>createParameterizedTransform(ParameterValueGroup, Context)</code></a>.</div> |
| </div> |
| <div class="block">Creates a transform from a base CRS to a derived CS using the given parameters. |
| If this method needs to set the values of <code>"semi_major"</code> and <code>"semi_minor"</code> parameters, |
| then it sets those values directly on the given <code>parameters</code> instance – not on a clone – for |
| allowing the caller to get back the complete parameter values. |
| However this method only fills missing values, it never modify existing values.</div> |
| <dl> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></dt> |
| <dd><code><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/MathTransformFactory.html?is-external=true#createBaseToDerived(org.opengis.referencing.crs.CoordinateReferenceSystem,org.opengis.parameter.ParameterValueGroup,org.opengis.referencing.cs.CoordinateSystem)" title="class or interface in org.opengis.referencing.operation" class="externalLink">createBaseToDerived</a></code> in interface <code><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/MathTransformFactory.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink">MathTransformFactory</a></code></dd> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>baseCRS</code> - the source coordinate reference system.</dd> |
| <dd><code>parameters</code> - the parameter values for the transform.</dd> |
| <dd><code>derivedCS</code> - the target coordinate system.</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>the parameterized transform from <code>baseCRS</code> to <code>derivedCS</code>, |
| including unit conversions and axis swapping.</dd> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/util/NoSuchIdentifierException.html?is-external=true" title="class or interface in org.opengis.util" class="externalLink">NoSuchIdentifierException</a></code> - if there is no transform registered for the coordinate operation method.</dd> |
| <dd><code><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/util/FactoryException.html?is-external=true" title="class or interface in org.opengis.util" class="externalLink">FactoryException</a></code> - if the object creation failed. This exception is thrown |
| if some required parameter has not been supplied, or has illegal value.</dd> |
| </dl> |
| </li> |
| </ul> |
| <a id="createCoordinateSystemChange(org.opengis.referencing.cs.CoordinateSystem,org.opengis.referencing.cs.CoordinateSystem,org.opengis.referencing.datum.Ellipsoid)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>createCoordinateSystemChange</h4> |
| <pre class="methodSignature">public <a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/MathTransform.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink">MathTransform</a> createCoordinateSystemChange​(<a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/cs/CoordinateSystem.html?is-external=true" title="class or interface in org.opengis.referencing.cs" class="externalLink">CoordinateSystem</a> source, |
| <a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/cs/CoordinateSystem.html?is-external=true" title="class or interface in org.opengis.referencing.cs" class="externalLink">CoordinateSystem</a> target, |
| <a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/datum/Ellipsoid.html?is-external=true" title="class or interface in org.opengis.referencing.datum" class="externalLink">Ellipsoid</a> ellipsoid) |
| throws <a href="http://www.geoapi.org/3.0/javadoc/org/opengis/util/FactoryException.html?is-external=true" title="class or interface in org.opengis.util" class="externalLink">FactoryException</a></pre> |
| <div class="block">Creates a math transform that represent a change of coordinate system. If exactly one argument is |
| an <a href="../../cs/DefaultEllipsoidalCS.html" title="class in org.apache.sis.referencing.cs">ellipsoidal coordinate systems</a>, |
| then the <code>ellipsoid</code> argument is mandatory. In all other cases (including the case where both |
| coordinate systems are ellipsoidal), the ellipsoid argument is ignored and can be <code>null</code>. |
| |
| <div class="note"><b>Design note:</b> |
| this method does not accept separated ellipsoid arguments for <code>source</code> and <code>target</code> because |
| this method should not be used for datum shifts. If the two given coordinate systems are ellipsoidal, |
| then they are assumed to use the same ellipsoid. If different ellipsoids are desired, then a |
| <a href="#createParameterizedTransform(org.opengis.parameter.ParameterValueGroup)">parameterized transform</a> like <cite>"Molodensky"</cite>, |
| <cite>"Geocentric translations"</cite>, <cite>"Coordinate Frame Rotation"</cite> or |
| <cite>"Position Vector transformation"</cite> should be used instead.</div></div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>source</code> - the source coordinate system.</dd> |
| <dd><code>target</code> - the target coordinate system.</dd> |
| <dd><code>ellipsoid</code> - the ellipsoid of <code>EllipsoidalCS</code>, or <code>null</code> if none.</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>a conversion from the given source to the given target coordinate system.</dd> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/util/FactoryException.html?is-external=true" title="class or interface in org.opengis.util" class="externalLink">FactoryException</a></code> - if the conversion can not be created.</dd> |
| <dt><span class="simpleTagLabel">Since:</span></dt> |
| <dd>0.8</dd> |
| </dl> |
| </li> |
| </ul> |
| <a id="createAffineTransform(org.opengis.referencing.operation.Matrix)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>createAffineTransform</h4> |
| <pre class="methodSignature">public <a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/MathTransform.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink">MathTransform</a> createAffineTransform​(<a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/Matrix.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink">Matrix</a> matrix) |
| throws <a href="http://www.geoapi.org/3.0/javadoc/org/opengis/util/FactoryException.html?is-external=true" title="class or interface in org.opengis.util" class="externalLink">FactoryException</a></pre> |
| <div class="block">Creates an affine transform from a matrix. If the transform input dimension is <code>M</code>, |
| and output dimension is <code>N</code>, then the matrix will have size <code>[N+1][M+1]</code>. The |
| +1 in the matrix dimensions allows the matrix to do a shift, as well as a rotation. The |
| <code>[M][j]</code> element of the matrix will be the j'th coordinate of the moved origin. The |
| <code>[i][N]</code> element of the matrix will be 0 for <var>i</var> less than <code>M</code>, and 1 |
| for <var>i</var> equals <code>M</code>.</div> |
| <dl> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></dt> |
| <dd><code><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/MathTransformFactory.html?is-external=true#createAffineTransform(org.opengis.referencing.operation.Matrix)" title="class or interface in org.opengis.referencing.operation" class="externalLink">createAffineTransform</a></code> in interface <code><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/MathTransformFactory.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink">MathTransformFactory</a></code></dd> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>matrix</code> - the matrix used to define the affine transform.</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>the affine transform.</dd> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/util/FactoryException.html?is-external=true" title="class or interface in org.opengis.util" class="externalLink">FactoryException</a></code> - if the object creation failed.</dd> |
| <dt><span class="seeLabel">See Also:</span></dt> |
| <dd><a href="MathTransforms.html#linear(org.opengis.referencing.operation.Matrix)"><code>MathTransforms.linear(Matrix)</code></a></dd> |
| </dl> |
| </li> |
| </ul> |
| <a id="createConcatenatedTransform(org.opengis.referencing.operation.MathTransform,org.opengis.referencing.operation.MathTransform)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>createConcatenatedTransform</h4> |
| <pre class="methodSignature">public <a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/MathTransform.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink">MathTransform</a> createConcatenatedTransform​(<a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/MathTransform.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink">MathTransform</a> tr1, |
| <a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/MathTransform.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink">MathTransform</a> tr2) |
| throws <a href="http://www.geoapi.org/3.0/javadoc/org/opengis/util/FactoryException.html?is-external=true" title="class or interface in org.opengis.util" class="externalLink">FactoryException</a></pre> |
| <div class="block">Creates a transform by concatenating two existing transforms. |
| A concatenated transform acts in the same way as applying two transforms, one after the other. |
| |
| <p>The dimension of the output space of the first transform must match the dimension of the input space |
| in the second transform. In order to concatenate more than two transforms, use this constructor repeatedly.</p></div> |
| <dl> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></dt> |
| <dd><code><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/MathTransformFactory.html?is-external=true#createConcatenatedTransform(org.opengis.referencing.operation.MathTransform,org.opengis.referencing.operation.MathTransform)" title="class or interface in org.opengis.referencing.operation" class="externalLink">createConcatenatedTransform</a></code> in interface <code><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/MathTransformFactory.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink">MathTransformFactory</a></code></dd> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>tr1</code> - the first transform to apply to points.</dd> |
| <dd><code>tr2</code> - the second transform to apply to points.</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>the concatenated transform.</dd> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/util/FactoryException.html?is-external=true" title="class or interface in org.opengis.util" class="externalLink">FactoryException</a></code> - if the object creation failed.</dd> |
| <dt><span class="seeLabel">See Also:</span></dt> |
| <dd><a href="MathTransforms.html#concatenate(org.opengis.referencing.operation.MathTransform,org.opengis.referencing.operation.MathTransform)"><code>MathTransforms.concatenate(MathTransform, MathTransform)</code></a></dd> |
| </dl> |
| </li> |
| </ul> |
| <a id="createPassThroughTransform(int,org.opengis.referencing.operation.MathTransform,int)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>createPassThroughTransform</h4> |
| <pre class="methodSignature">public <a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/MathTransform.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink">MathTransform</a> createPassThroughTransform​(int firstAffectedCoordinate, |
| <a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/MathTransform.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink">MathTransform</a> subTransform, |
| int numTrailingCoordinates) |
| throws <a href="http://www.geoapi.org/3.0/javadoc/org/opengis/util/FactoryException.html?is-external=true" title="class or interface in org.opengis.util" class="externalLink">FactoryException</a></pre> |
| <div class="block">Creates a transform which passes through a subset of coordinates to another transform. |
| This allows transforms to operate on a subset of coordinates. |
| |
| <div class="note"><b>Example:</b> |
| Giving (<var>latitude</var>, <var>longitude</var>, <var>height</var>) coordinates, |
| a pass through transform can convert the height values from meters to feet without |
| affecting the (<var>latitude</var>, <var>longitude</var>) values.</div> |
| |
| The resulting transform will have the following dimensions: |
| |
| <blockquote><pre>Source: firstAffectedCoordinate + subTransform.<b>getSourceDimensions</b>() + numTrailingCoordinates |
| Target: firstAffectedCoordinate + subTransform.<b>getTargetDimensions</b>() + numTrailingCoordinates</pre></blockquote></div> |
| <dl> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></dt> |
| <dd><code><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/MathTransformFactory.html?is-external=true#createPassThroughTransform(int,org.opengis.referencing.operation.MathTransform,int)" title="class or interface in org.opengis.referencing.operation" class="externalLink">createPassThroughTransform</a></code> in interface <code><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/MathTransformFactory.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink">MathTransformFactory</a></code></dd> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>firstAffectedCoordinate</code> - the lowest index of the affected coordinates.</dd> |
| <dd><code>subTransform</code> - transform to use for affected coordinates.</dd> |
| <dd><code>numTrailingCoordinates</code> - number of trailing coordinates to pass through. Affected coordinates will range |
| from <code>firstAffectedCoordinate</code> inclusive to <code>dimTarget-numTrailingCoordinates</code> exclusive.</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>a pass through transform.</dd> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/util/FactoryException.html?is-external=true" title="class or interface in org.opengis.util" class="externalLink">FactoryException</a></code> - if the object creation failed.</dd> |
| </dl> |
| </li> |
| </ul> |
| <a id="createFromXML(java.lang.String)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>createFromXML</h4> |
| <pre class="methodSignature"><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Deprecated.html?is-external=true" title="class or interface in java.lang" class="externalLink">@Deprecated</a> |
| public <a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/MathTransform.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink">MathTransform</a> createFromXML​(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a> xml) |
| throws <a href="http://www.geoapi.org/3.0/javadoc/org/opengis/util/FactoryException.html?is-external=true" title="class or interface in org.opengis.util" class="externalLink">FactoryException</a></pre> |
| <div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span></div> |
| <div class="block">There is no XML format for math transforms.</div> |
| <dl> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></dt> |
| <dd><code><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/MathTransformFactory.html?is-external=true#createFromXML(java.lang.String)" title="class or interface in org.opengis.referencing.operation" class="externalLink">createFromXML</a></code> in interface <code><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/MathTransformFactory.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink">MathTransformFactory</a></code></dd> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>xml</code> - math transform encoded in XML format.</dd> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/util/FactoryException.html?is-external=true" title="class or interface in org.opengis.util" class="externalLink">FactoryException</a></code> - if the object creation failed.</dd> |
| </dl> |
| </li> |
| </ul> |
| <a id="createFromWKT(java.lang.String)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>createFromWKT</h4> |
| <pre class="methodSignature">public <a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/MathTransform.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink">MathTransform</a> createFromWKT​(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a> text) |
| throws <a href="http://www.geoapi.org/3.0/javadoc/org/opengis/util/FactoryException.html?is-external=true" title="class or interface in org.opengis.util" class="externalLink">FactoryException</a></pre> |
| <div class="block">Creates a math transform object from a |
| <a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/doc-files/WKT.html"><cite>Well |
| Known Text</cite> (WKT)</a>. |
| If the given text contains non-fatal anomalies (unknown or unsupported WKT elements, |
| inconsistent unit definitions, <i>etc.</i>), warnings may be reported in a |
| <a href="https://docs.oracle.com/javase/8/docs/api/java/util/logging/Logger.html?is-external=true" title="class or interface in java.util.logging" class="externalLink">logger</a> named <code>"org.apache.sis.io.wkt"</code>.</div> |
| <dl> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></dt> |
| <dd><code><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/MathTransformFactory.html?is-external=true#createFromWKT(java.lang.String)" title="class or interface in org.opengis.referencing.operation" class="externalLink">createFromWKT</a></code> in interface <code><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/MathTransformFactory.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink">MathTransformFactory</a></code></dd> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></dt> |
| <dd><code><a href="../../../io/wkt/Parser.html#createFromWKT(java.lang.String)">createFromWKT</a></code> in interface <code><a href="../../../io/wkt/Parser.html" title="interface in org.apache.sis.io.wkt">Parser</a></code></dd> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>text</code> - math transform encoded in Well-Known Text format.</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>the math transform (never <code>null</code>).</dd> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/util/FactoryException.html?is-external=true" title="class or interface in org.opengis.util" class="externalLink">FactoryException</a></code> - if the Well-Known Text can not be parsed, |
| or if the math transform creation failed from some other reason.</dd> |
| </dl> |
| </li> |
| </ul> |
| <a id="getLastMethodUsed()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getLastMethodUsed</h4> |
| <pre class="methodSignature">public <a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/OperationMethod.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink">OperationMethod</a> getLastMethodUsed()</pre> |
| <div class="block">Returns the operation method used by the latest call to a <code>create(…)</code> constructor |
| in the currently running thread. Returns <code>null</code> if not applicable. |
| |
| <p>Invoking <code>getLastMethodUsed()</code> can be useful after a call to |
| <a href="#createParameterizedTransform(org.opengis.parameter.ParameterValueGroup)"><code>createParameterizedTransform(…)</code></a>.</p></div> |
| <dl> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></dt> |
| <dd><code><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/MathTransformFactory.html?is-external=true#getLastMethodUsed()" title="class or interface in org.opengis.referencing.operation" class="externalLink">getLastMethodUsed</a></code> in interface <code><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/MathTransformFactory.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink">MathTransformFactory</a></code></dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>the last method used by a <code>create(…)</code> constructor, or <code>null</code> if unknown of unsupported.</dd> |
| <dt><span class="seeLabel">See Also:</span></dt> |
| <dd><a href="#createParameterizedTransform(org.opengis.parameter.ParameterValueGroup,org.apache.sis.referencing.operation.transform.DefaultMathTransformFactory.Context)"><code>createParameterizedTransform(ParameterValueGroup, Context)</code></a></dd> |
| </dl> |
| </li> |
| </ul> |
| <a id="reload()"> |
| <!-- --> |
| </a> |
| <ul class="blockListLast"> |
| <li class="blockList"> |
| <h4>reload</h4> |
| <pre class="methodSignature">public void reload()</pre> |
| <div class="block">Notifies this factory that the elements provided by the <code>Iterable<OperationMethod></code> may have changed. |
| This method performs the following steps: |
| |
| <ul> |
| <li>Clears all caches.</li> |
| <li>If the <code>Iterable</code> given at construction time is an instance of <a href="https://docs.oracle.com/javase/8/docs/api/java/util/ServiceLoader.html?is-external=true" title="class or interface in java.util" class="externalLink"><code>ServiceLoader</code></a>, |
| invokes its <code>reload()</code> method.</li> |
| </ul> |
| |
| This method is useful to sophisticated applications which dynamically make new plug-ins available at runtime, |
| for example following changes of the application classpath.</div> |
| <dl> |
| <dt><span class="seeLabel">See Also:</span></dt> |
| <dd><a href="#%3Cinit%3E(java.lang.Iterable)"><code>DefaultMathTransformFactory(Iterable)</code></a>, |
| <a href="https://docs.oracle.com/javase/8/docs/api/java/util/ServiceLoader.html?is-external=true#reload()" title="class or interface in java.util" class="externalLink"><code>ServiceLoader.reload()</code></a></dd> |
| </dl> |
| </li> |
| </ul> |
| </li> |
| </ul> |
| </section> |
| </li> |
| </ul> |
| </div> |
| </div> |
| </main> |
| <!-- ========= END OF CLASS DATA ========= --> |
| <footer role="contentinfo"> |
| <nav role="navigation"> |
| <!-- ======= START OF BOTTOM NAVBAR ====== --> |
| <div class="bottomNav"><a id="navbar.bottom"> |
| <!-- --> |
| </a> |
| <div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div> |
| <a id="navbar.bottom.firstrow"> |
| <!-- --> |
| </a> |
| <ul class="navList" title="Navigation"> |
| <li><a href="../../../../../../index.html">Overview</a></li> |
| <li><a href="package-summary.html">Package</a></li> |
| <li class="navBarCell1Rev">Class</li> |
| <li><a href="class-use/DefaultMathTransformFactory.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">Help</a></li> |
| </ul> |
| </div> |
| <div class="subNav"> |
| <ul class="navList" id="allclasses_navbar_bottom"> |
| <li><a href="../../../../../../allclasses.html">All Classes</a></li> |
| </ul> |
| <div> |
| <script type="text/javascript"><!-- |
| allClassesLink = document.getElementById("allclasses_navbar_bottom"); |
| if(window==top) { |
| allClassesLink.style.display = "block"; |
| } |
| else { |
| allClassesLink.style.display = "none"; |
| } |
| //--> |
| </script> |
| <noscript> |
| <div>JavaScript is disabled on your browser.</div> |
| </noscript> |
| </div> |
| <div> |
| <ul class="subNavList"> |
| <li>Summary: </li> |
| <li><a href="#nested.class.summary">Nested</a> | </li> |
| <li>Field | </li> |
| <li><a href="#constructor.summary">Constr</a> | </li> |
| <li><a href="#method.summary">Method</a></li> |
| </ul> |
| <ul class="subNavList"> |
| <li>Detail: </li> |
| <li>Field | </li> |
| <li><a href="#constructor.detail">Constr</a> | </li> |
| <li><a href="#method.detail">Method</a></li> |
| </ul> |
| </div> |
| <a id="skip.navbar.bottom"> |
| <!-- --> |
| </a></div> |
| <!-- ======== END OF BOTTOM NAVBAR ======= --> |
| </nav> |
| <p class="legalCopy"><small>Copyright © 2010–2019 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p> |
| </footer> |
| </body> |
| </html> |