blob: b16150c0d89ef7b61f9c2504047882c7ddd69d5b [file] [log] [blame]
<!DOCTYPE HTML>
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (11.0.4) on Fri Sep 20 12:10:30 CEST 2019 -->
<title>DefaultCoordinateOperationFactory (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.DefaultCoordinateOperationFactory class">
<meta name="keywords" content="complete()">
<meta name="keywords" content="getOperationMethod()">
<meta name="keywords" content="createOperationMethod()">
<meta name="keywords" content="createDefiningConversion()">
<meta name="keywords" content="createSingleOperation()">
<meta name="keywords" content="createConcatenatedOperation()">
<meta name="keywords" content="createOperation()">
<meta name="keywords" content="createOperations()">
<meta name="keywords" content="createOperationFinder()">
<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="DefaultCoordinateOperationFactory (Apache SIS 1.0 API)";
}
}
catch(err) {
}
//-->
var data = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":42,"i6":10,"i7":10,"i8":10,"i9":10,"i10":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/DefaultCoordinateOperationFactory.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&nbsp;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:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a id="skip.navbar.top">
<!-- -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
</div>
<div class="navPadding">&nbsp;</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>&nbsp;<a href="package-summary.html">org.apache.sis.referencing.operation</a></div>
<h2 title="Class DefaultCoordinateOperationFactory" class="title">Class DefaultCoordinateOperationFactory</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>DefaultCoordinateOperationFactory</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="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/ObjectFactory.html?is-external=true" title="class or interface in org.opengis.referencing" class="externalLink">Object­Factory</a></code>, <code><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/CoordinateOperationFactory.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink">Coordinate­Operation­Factory</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">DefaultCoordinateOperationFactory</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/CoordinateOperationFactory.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink">CoordinateOperationFactory</a></pre>
<div class="block">Creates <a href="AbstractCoordinateOperation.html" title="class in org.apache.sis.referencing.operation">operations</a> capable to transform coordinates
from a given source CRS to a given target CRS. This factory provides two ways to create such
operations:
<ul>
<li>By fetching or building explicitly each components of the operation:
<ul>
<li>The <a href="DefaultOperationMethod.html" title="class in org.apache.sis.referencing.operation"><code>operation method</code></a>, which can be
<a href="#getOperationMethod(java.lang.String)">fetched from a set of predefined methods</a> or
<a href="#createOperationMethod(java.util.Map,java.lang.Integer,java.lang.Integer,org.opengis.parameter.ParameterDescriptorGroup)">built explicitly</a>.</li>
<li>A single <a href="#createDefiningConversion(java.util.Map,org.opengis.referencing.operation.OperationMethod,org.opengis.parameter.ParameterValueGroup)">defining conversion</a>.</li>
<li>A <a href="#createConcatenatedOperation(java.util.Map,org.opengis.referencing.operation.CoordinateOperation...)">concatenation</a> of other operations.</li>
</ul>
</li>
<li>By <a href="#createOperation(org.opengis.referencing.crs.CoordinateReferenceSystem,org.opengis.referencing.crs.CoordinateReferenceSystem)">giving only the source
and target CRS</a>, then let the Apache SIS referencing engine infers by itself the coordinate operation
(with the help of an EPSG database if available).</li>
</ul>
The second approach is the most frequently used.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>0.6</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">
<!-- ======== 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">&nbsp;</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()">DefaultCoordinateOperationFactory</a></span>()</code></th>
<td class="colLast">
<div class="block">Constructs a factory with no default properties.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E(java.util.Map,org.opengis.referencing.operation.MathTransformFactory)">DefaultCoordinateOperationFactory</a></span>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util" class="externalLink">Map</a>&lt;<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>,&#8203;?&gt;&nbsp;properties,
<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>&nbsp;factory)</code></th>
<td class="colLast">
<div class="block">Constructs a factory with the given default properties.</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">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t6" class="tableTab"><span><a href="javascript:show(32);">Deprecated Methods</a></span><span class="tabEnd">&nbsp;</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>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util" class="externalLink">Map</a>&lt;<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>,&#8203;?&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#complete(java.util.Map)">complete</a></span>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util" class="externalLink">Map</a>&lt;<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>,&#8203;?&gt;&nbsp;properties)</code></th>
<td class="colLast">
<div class="block">Returns the union of the given <code>properties</code> map with the default properties given at
<a href="#%3Cinit%3E(java.util.Map,org.opengis.referencing.operation.MathTransformFactory)">construction time</a>.</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/CoordinateOperation.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink">CoordinateOperation</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#createConcatenatedOperation(java.util.Map,org.opengis.referencing.operation.CoordinateOperation...)">createConcatenatedOperation</a></span>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util" class="externalLink">Map</a>&lt;<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>,&#8203;?&gt;&nbsp;properties,
<a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/CoordinateOperation.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink">CoordinateOperation</a>...&nbsp;operations)</code></th>
<td class="colLast">
<div class="block">Creates an ordered sequence of two or more single coordinate operations.</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/Conversion.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink">Conversion</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#createDefiningConversion(java.util.Map,org.opengis.referencing.operation.OperationMethod,org.opengis.parameter.ParameterValueGroup)">createDefiningConversion</a></span>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util" class="externalLink">Map</a>&lt;<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>,&#8203;?&gt;&nbsp;properties,
<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>&nbsp;method,
<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>&nbsp;parameters)</code></th>
<td class="colLast">
<div class="block">Creates a defining conversion from the given operation parameters.</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/CoordinateOperation.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink">CoordinateOperation</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#createOperation(org.opengis.referencing.crs.CoordinateReferenceSystem,org.opengis.referencing.crs.CoordinateReferenceSystem)">createOperation</a></span>&#8203;(<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>&nbsp;sourceCRS,
<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>&nbsp;targetCRS)</code></th>
<td class="colLast">
<div class="block">Finds or creates an operation for conversion or transformation between two coordinate reference systems.</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/CoordinateOperation.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink">CoordinateOperation</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#createOperation(org.opengis.referencing.crs.CoordinateReferenceSystem,org.opengis.referencing.crs.CoordinateReferenceSystem,org.apache.sis.referencing.operation.CoordinateOperationContext)">createOperation</a></span>&#8203;(<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>&nbsp;sourceCRS,
<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>&nbsp;targetCRS,
<a href="CoordinateOperationContext.html" title="class in org.apache.sis.referencing.operation">CoordinateOperationContext</a>&nbsp;context)</code></th>
<td class="colLast">
<div class="block">Finds or creates an operation for conversion or transformation between two coordinate reference systems.</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/CoordinateOperation.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink">CoordinateOperation</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#createOperation(org.opengis.referencing.crs.CoordinateReferenceSystem,org.opengis.referencing.crs.CoordinateReferenceSystem,org.opengis.referencing.operation.OperationMethod)">createOperation</a></span>&#8203;(<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>&nbsp;sourceCRS,
<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>&nbsp;targetCRS,
<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>&nbsp;method)</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span>
<div class="deprecationComment">Replaced by <a href="#createOperation(org.opengis.referencing.crs.CoordinateReferenceSystem,org.opengis.referencing.crs.CoordinateReferenceSystem,org.apache.sis.referencing.operation.CoordinateOperationContext)"><code>create­Operation(Coordinate­Reference­System, Coordinate­Reference­System, Coordinate­Operation­Context)</code></a>.</div>
</div>
</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code>protected <a href="CoordinateOperationFinder.html" title="class in org.apache.sis.referencing.operation">CoordinateOperationFinder</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#createOperationFinder(org.opengis.referencing.operation.CoordinateOperationAuthorityFactory,org.apache.sis.referencing.operation.CoordinateOperationContext)">createOperationFinder</a></span>&#8203;(<a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/CoordinateOperationAuthorityFactory.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink">CoordinateOperationAuthorityFactory</a>&nbsp;registry,
<a href="CoordinateOperationContext.html" title="class in org.apache.sis.referencing.operation">CoordinateOperationContext</a>&nbsp;context)</code></th>
<td class="colLast">
<div class="block">Creates the object which will perform the actual task of finding a coordinate operation path between two CRS.</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/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="#createOperationMethod(java.util.Map,java.lang.Integer,java.lang.Integer,org.opengis.parameter.ParameterDescriptorGroup)">createOperationMethod</a></span>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util" class="externalLink">Map</a>&lt;<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>,&#8203;?&gt;&nbsp;properties,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang" class="externalLink">Integer</a>&nbsp;sourceDimensions,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang" class="externalLink">Integer</a>&nbsp;targetDimensions,
<a href="http://www.geoapi.org/3.0/javadoc/org/opengis/parameter/ParameterDescriptorGroup.html?is-external=true" title="class or interface in org.opengis.parameter" class="externalLink">ParameterDescriptorGroup</a>&nbsp;parameters)</code></th>
<td class="colLast">
<div class="block">Creates an operation method from a set of properties and a descriptor group.</div>
</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util" class="externalLink">List</a>&lt;<a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/CoordinateOperation.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink">CoordinateOperation</a>&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#createOperations(org.opengis.referencing.crs.CoordinateReferenceSystem,org.opengis.referencing.crs.CoordinateReferenceSystem,org.apache.sis.referencing.operation.CoordinateOperationContext)">createOperations</a></span>&#8203;(<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>&nbsp;sourceCRS,
<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>&nbsp;targetCRS,
<a href="CoordinateOperationContext.html" title="class in org.apache.sis.referencing.operation">CoordinateOperationContext</a>&nbsp;context)</code></th>
<td class="colLast">
<div class="block">Finds or creates operations for conversions or transformations between two coordinate reference systems.</div>
</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><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></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#createSingleOperation(java.util.Map,org.opengis.referencing.crs.CoordinateReferenceSystem,org.opengis.referencing.crs.CoordinateReferenceSystem,org.opengis.referencing.crs.CoordinateReferenceSystem,org.opengis.referencing.operation.OperationMethod,org.opengis.referencing.operation.MathTransform)">createSingleOperation</a></span>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util" class="externalLink">Map</a>&lt;<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>,&#8203;?&gt;&nbsp;properties,
<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>&nbsp;sourceCRS,
<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>&nbsp;targetCRS,
<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>&nbsp;interpolationCRS,
<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>&nbsp;method,
<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>&nbsp;transform)</code></th>
<td class="colLast">
<div class="block">Creates a transformation or conversion from the given properties.</div>
</td>
</tr>
<tr id="i10" 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>&#8203;(<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>&nbsp;name)</code></th>
<td class="colLast">
<div class="block">Returns the operation method of the given name.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a id="methods.inherited.from.class.AbstractFactory">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;<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()">get­Vendor</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a id="methods.inherited.from.class.Object">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;<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">get­Class</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">hash­Code</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">notify­All</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">to­String</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&nbsp;<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">get­Vendor</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="&lt;init&gt;()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>DefaultCoordinateOperationFactory</h4>
<pre>public&nbsp;DefaultCoordinateOperationFactory()</pre>
<div class="block">Constructs a factory with no default properties.</div>
</li>
</ul>
<a id="&lt;init&gt;(java.util.Map,org.opengis.referencing.operation.MathTransformFactory)">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>DefaultCoordinateOperationFactory</h4>
<pre>public&nbsp;DefaultCoordinateOperationFactory&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util" class="externalLink">Map</a>&lt;<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>,&#8203;?&gt;&nbsp;properties,
<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>&nbsp;factory)</pre>
<div class="block">Constructs a factory with the given default properties.
The new factory will fallback on the map given to this constructor
for any property not present in the map given to a <code>create­Foo(Map&lt;String,?&gt;, …)</code> method.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>properties</code> - the default properties, or <code>null</code> if none.</dd>
<dd><code>factory</code> - the factory to use for creating <a href="transform/AbstractMathTransform.html" title="class in org.apache.sis.referencing.operation.transform">math transforms</a>,
or <code>null</code> for the default factory.</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="complete(java.util.Map)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>complete</h4>
<pre class="methodSignature">protected&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util" class="externalLink">Map</a>&lt;<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>,&#8203;?&gt;&nbsp;complete&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util" class="externalLink">Map</a>&lt;<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>,&#8203;?&gt;&nbsp;properties)</pre>
<div class="block">Returns the union of the given <code>properties</code> map with the default properties given at
<a href="#%3Cinit%3E(java.util.Map,org.opengis.referencing.operation.MathTransformFactory)">construction time</a>.
Entries in the given properties map have precedence, even if their
<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.Entry.html?is-external=true#getValue()" title="class or interface in java.util" class="externalLink">value</a> is <code>null</code>
(i.e. a null value "erase" the default property value).
Entries with null value after the union will be omitted.
<p>This method is invoked by all <code>create­Foo(Map&lt;String,?&gt;, …)</code> methods for determining
the properties to give to <a href="AbstractCoordinateOperation.html#%3Cinit%3E(java.util.Map,org.opengis.referencing.crs.CoordinateReferenceSystem,org.opengis.referencing.crs.CoordinateReferenceSystem,org.opengis.referencing.crs.CoordinateReferenceSystem,org.opengis.referencing.operation.MathTransform)">coordinate operation constructor</a>.</p></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>properties</code> - the user-supplied properties.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the union of the given properties with the default properties.</dd>
</dl>
</li>
</ul>
<a id="getOperationMethod(java.lang.String)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getOperationMethod</h4>
<pre class="methodSignature">public&nbsp;<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>&nbsp;getOperationMethod&#8203;(<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>&nbsp;name)
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">Returns the operation method of the given name. 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>).
The search is case-insensitive and comparisons against method names can be
<a href="../AbstractIdentifiedObject.html#isHeuristicMatchForName(java.lang.String)">heuristic</a>.
<p>If more than one method match the given name, 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>name</code> - the name of the operation method to fetch.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the operation method of 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/FactoryException.html?is-external=true" title="class or interface in org.opengis.util" class="externalLink">Factory­Exception</a></code> - if the requested operation method can not be fetched.</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="transform/DefaultMathTransformFactory.html#getOperationMethod(java.lang.String)"><code>Default­Math­Transform­Factory​.get­Operation­Method(String)</code></a></dd>
</dl>
</li>
</ul>
<a id="createOperationMethod(java.util.Map,java.lang.Integer,java.lang.Integer,org.opengis.parameter.ParameterDescriptorGroup)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>createOperationMethod</h4>
<pre class="methodSignature">public&nbsp;<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>&nbsp;createOperationMethod&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util" class="externalLink">Map</a>&lt;<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>,&#8203;?&gt;&nbsp;properties,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang" class="externalLink">Integer</a>&nbsp;sourceDimensions,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang" class="externalLink">Integer</a>&nbsp;targetDimensions,
<a href="http://www.geoapi.org/3.0/javadoc/org/opengis/parameter/ParameterDescriptorGroup.html?is-external=true" title="class or interface in org.opengis.parameter" class="externalLink">ParameterDescriptorGroup</a>&nbsp;parameters)
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 operation method from a set of properties and a descriptor group.
The source and target dimensions may be <code>null</code> if the method can work
with any number of dimensions (e.g. <cite>Affine Transform</cite>).
<p>The properties given in argument follow the same rules than for the
<a href="DefaultOperationMethod.html#%3Cinit%3E(java.util.Map,java.lang.Integer,java.lang.Integer,org.opengis.parameter.ParameterDescriptorGroup)">operation method</a> constructor. The following table is a reminder of main (not all) properties:</p>
<table class="sis">
<caption>Recognized properties (non exhaustive list)</caption>
<tr>
<th>Property name</th>
<th>Value type</th>
<th>Returned by</th>
</tr>
<tr>
<td><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/IdentifiedObject.html?is-external=true#NAME_KEY" title="class or interface in org.opengis.referencing" class="externalLink">"name"</a></td>
<td><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/metadata/Identifier.html?is-external=true" title="class or interface in org.opengis.metadata" class="externalLink"><code>Identifier</code></a> or <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"><code>String</code></a></td>
<td><a href="../AbstractIdentifiedObject.html#getName()"><code>AbstractIdentifiedObject.getName()</code></a></td>
</tr>
<tr>
<td><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/IdentifiedObject.html?is-external=true#ALIAS_KEY" title="class or interface in org.opengis.referencing" class="externalLink">"alias"</a></td>
<td><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/util/GenericName.html?is-external=true" title="class or interface in org.opengis.util" class="externalLink"><code>GenericName</code></a> or <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/CharSequence.html?is-external=true" title="class or interface in java.lang" class="externalLink"><code>Char­Sequence</code></a> (optionally as array)</td>
<td><a href="../AbstractIdentifiedObject.html#getAlias()"><code>AbstractIdentifiedObject.getAlias()</code></a></td>
</tr>
<tr>
<td><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/IdentifiedObject.html?is-external=true#IDENTIFIERS_KEY" title="class or interface in org.opengis.referencing" class="externalLink">"identifiers"</a></td>
<td><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/metadata/Identifier.html?is-external=true" title="class or interface in org.opengis.metadata" class="externalLink"><code>Identifier</code></a> (optionally as array)</td>
<td><a href="../AbstractIdentifiedObject.html#getIdentifiers()"><code>AbstractIdentifiedObject.getIdentifiers()</code></a></td>
</tr>
<tr>
<td><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/OperationMethod.html?is-external=true#FORMULA_KEY" title="class or interface in org.opengis.referencing.operation" class="externalLink">"formula"</a></td>
<td><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/Formula.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink"><code>Formula</code></a>, <a href="http://www.geoapi.org/3.0/javadoc/org/opengis/metadata/citation/Citation.html?is-external=true" title="class or interface in org.opengis.metadata.citation" class="externalLink"><code>Citation</code></a> or <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/CharSequence.html?is-external=true" title="class or interface in java.lang" class="externalLink"><code>Char­Sequence</code></a></td>
<td><a href="DefaultOperationMethod.html#getFormula()"><code>DefaultOperationMethod.getFormula()</code></a></td>
</tr>
</table></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>properties</code> - set of properties. Shall contain at least <code>"name"</code>.</dd>
<dd><code>source­Dimensions</code> - number of dimensions in the source CRS of this operation method, or <code>null</code>.</dd>
<dd><code>target­Dimensions</code> - number of dimensions in the target CRS of this operation method, or <code>null</code>.</dd>
<dd><code>parameters</code> - description of parameters expected by this operation.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the operation method created from the given arguments.</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">Factory­Exception</a></code> - if the object creation failed.</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="DefaultOperationMethod.html#%3Cinit%3E(java.util.Map,java.lang.Integer,java.lang.Integer,org.opengis.parameter.ParameterDescriptorGroup)"><code>Default­Operation­Method(Map, Integer, Integer, Parameter­Descriptor­Group)</code></a></dd>
</dl>
</li>
</ul>
<a id="createDefiningConversion(java.util.Map,org.opengis.referencing.operation.OperationMethod,org.opengis.parameter.ParameterValueGroup)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>createDefiningConversion</h4>
<pre class="methodSignature">public&nbsp;<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">Conversion</a>&nbsp;createDefiningConversion&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util" class="externalLink">Map</a>&lt;<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>,&#8203;?&gt;&nbsp;properties,
<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>&nbsp;method,
<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>&nbsp;parameters)
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 defining conversion from the given operation parameters.
This conversion has no source and target CRS since those elements are usually unknown at this stage.
The source and target CRS will become known later, at the
<a href="../crs/DefaultDerivedCRS.html" title="class in org.apache.sis.referencing.crs">Derived CRS</a> or
<a href="../crs/DefaultProjectedCRS.html" title="class in org.apache.sis.referencing.crs">Projected CRS</a>
construction time.
<p>The properties given in argument follow the same rules than for the
<a href="DefaultConversion.html#%3Cinit%3E(java.util.Map,org.opengis.referencing.crs.CoordinateReferenceSystem,org.opengis.referencing.crs.CoordinateReferenceSystem,org.opengis.referencing.crs.CoordinateReferenceSystem,org.opengis.referencing.operation.OperationMethod,org.opengis.referencing.operation.MathTransform)">coordinate conversion</a> constructor.
The following table is a reminder of main (not all) properties:</p>
<table class="sis">
<caption>Recognized properties (non exhaustive list)</caption>
<tr>
<th>Property name</th>
<th>Value type</th>
<th>Returned by</th>
</tr>
<tr>
<td><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/IdentifiedObject.html?is-external=true#NAME_KEY" title="class or interface in org.opengis.referencing" class="externalLink">"name"</a></td>
<td><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/metadata/Identifier.html?is-external=true" title="class or interface in org.opengis.metadata" class="externalLink"><code>Identifier</code></a> or <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"><code>String</code></a></td>
<td><a href="../AbstractIdentifiedObject.html#getName()"><code>AbstractIdentifiedObject.getName()</code></a></td>
</tr>
<tr>
<td><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/IdentifiedObject.html?is-external=true#IDENTIFIERS_KEY" title="class or interface in org.opengis.referencing" class="externalLink">"identifiers"</a></td>
<td><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/metadata/Identifier.html?is-external=true" title="class or interface in org.opengis.metadata" class="externalLink"><code>Identifier</code></a> (optionally as array)</td>
<td><a href="../AbstractIdentifiedObject.html#getIdentifiers()"><code>AbstractIdentifiedObject.getIdentifiers()</code></a></td>
</tr>
<tr>
<td><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/CoordinateOperation.html?is-external=true#DOMAIN_OF_VALIDITY_KEY" title="class or interface in org.opengis.referencing.operation" class="externalLink">"domainOfValidity"</a></td>
<td><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/metadata/extent/Extent.html?is-external=true" title="class or interface in org.opengis.metadata.extent" class="externalLink"><code>Extent</code></a></td>
<td><a href="AbstractCoordinateOperation.html#getDomainOfValidity()"><code>AbstractCoordinateOperation.getDomainOfValidity()</code></a></td>
</tr>
</table></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/CoordinateOperationFactory.html?is-external=true#createDefiningConversion(java.util.Map,org.opengis.referencing.operation.OperationMethod,org.opengis.parameter.ParameterValueGroup)" title="class or interface in org.opengis.referencing.operation" class="externalLink">create­Defining­Conversion</a></code>&nbsp;in interface&nbsp;<code><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/CoordinateOperationFactory.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink">Coordinate­Operation­Factory</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>properties</code> - the properties to be given to the identified object.</dd>
<dd><code>method</code> - the operation method.</dd>
<dd><code>parameters</code> - the parameter values.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the defining conversion created from the given arguments.</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">Factory­Exception</a></code> - if the object creation failed.</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="DefaultConversion.html#%3Cinit%3E(java.util.Map,org.opengis.referencing.operation.OperationMethod,org.opengis.referencing.operation.MathTransform,org.opengis.parameter.ParameterValueGroup)"><code>Default­Conversion(Map, Operation­Method, Math­Transform, Parameter­Value­Group)</code></a></dd>
</dl>
</li>
</ul>
<a id="createSingleOperation(java.util.Map,org.opengis.referencing.crs.CoordinateReferenceSystem,org.opengis.referencing.crs.CoordinateReferenceSystem,org.opengis.referencing.crs.CoordinateReferenceSystem,org.opengis.referencing.operation.OperationMethod,org.opengis.referencing.operation.MathTransform)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>createSingleOperation</h4>
<pre class="methodSignature">public&nbsp;<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>&nbsp;createSingleOperation&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util" class="externalLink">Map</a>&lt;<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>,&#8203;?&gt;&nbsp;properties,
<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>&nbsp;sourceCRS,
<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>&nbsp;targetCRS,
<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>&nbsp;interpolationCRS,
<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>&nbsp;method,
<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>&nbsp;transform)
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 transformation or conversion from the given properties.
This method infers by itself if the operation to create is a
<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>, a <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> or a <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> sub-type
(<a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/CylindricalProjection.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink"><code>Cylindrical­Projection</code></a>, <a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/ConicProjection.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink"><code>Conic­Projection</code></a> or <a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/PlanarProjection.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink"><code>Planar­Projection</code></a>)
using the <a href="DefaultOperationMethod.html#getOperationType()">information provided by the given method</a>.
<p>The properties given in argument follow the same rules than for the
<a href="AbstractCoordinateOperation.html#%3Cinit%3E(java.util.Map,org.opengis.referencing.crs.CoordinateReferenceSystem,org.opengis.referencing.crs.CoordinateReferenceSystem,org.opengis.referencing.crs.CoordinateReferenceSystem,org.opengis.referencing.operation.MathTransform)">coordinate operation</a> constructor.
The following table is a reminder of main (not all) properties:</p>
<table class="sis">
<caption>Recognized properties (non exhaustive list)</caption>
<tr>
<th>Property name</th>
<th>Value type</th>
<th>Returned by</th>
</tr>
<tr>
<td><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/IdentifiedObject.html?is-external=true#NAME_KEY" title="class or interface in org.opengis.referencing" class="externalLink">"name"</a></td>
<td><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/metadata/Identifier.html?is-external=true" title="class or interface in org.opengis.metadata" class="externalLink"><code>Identifier</code></a> or <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"><code>String</code></a></td>
<td><a href="../AbstractIdentifiedObject.html#getName()"><code>AbstractIdentifiedObject.getName()</code></a></td>
</tr>
<tr>
<td><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/IdentifiedObject.html?is-external=true#IDENTIFIERS_KEY" title="class or interface in org.opengis.referencing" class="externalLink">"identifiers"</a></td>
<td><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/metadata/Identifier.html?is-external=true" title="class or interface in org.opengis.metadata" class="externalLink"><code>Identifier</code></a> (optionally as array)</td>
<td><a href="../AbstractIdentifiedObject.html#getIdentifiers()"><code>AbstractIdentifiedObject.getIdentifiers()</code></a></td>
</tr>
<tr>
<td><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/CoordinateOperation.html?is-external=true#DOMAIN_OF_VALIDITY_KEY" title="class or interface in org.opengis.referencing.operation" class="externalLink">"domainOfValidity"</a></td>
<td><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/metadata/extent/Extent.html?is-external=true" title="class or interface in org.opengis.metadata.extent" class="externalLink"><code>Extent</code></a></td>
<td><a href="AbstractCoordinateOperation.html#getDomainOfValidity()"><code>AbstractCoordinateOperation.getDomainOfValidity()</code></a></td>
</tr>
</table></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>properties</code> - the properties to be given to the identified object.</dd>
<dd><code>source­CRS</code> - the source CRS.</dd>
<dd><code>target­CRS</code> - the target CRS.</dd>
<dd><code>interpolation­CRS</code> - the CRS of additional coordinates needed for the operation, or <code>null</code> if none.</dd>
<dd><code>method</code> - the coordinate operation method (mandatory in all cases).</dd>
<dd><code>transform</code> - transform from positions in the source CRS to positions in the target CRS.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the coordinate operation created from the given arguments.</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">Factory­Exception</a></code> - if the object creation failed.</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="DefaultOperationMethod.html#getOperationType()"><code>Default­Operation­Method​.get­Operation­Type()</code></a>,
<a href="DefaultTransformation.html" title="class in org.apache.sis.referencing.operation"><code>Default­Transformation</code></a>,
<a href="DefaultConversion.html" title="class in org.apache.sis.referencing.operation"><code>Default­Conversion</code></a></dd>
</dl>
</li>
</ul>
<a id="createConcatenatedOperation(java.util.Map,org.opengis.referencing.operation.CoordinateOperation...)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>createConcatenatedOperation</h4>
<pre class="methodSignature">public&nbsp;<a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/CoordinateOperation.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink">CoordinateOperation</a>&nbsp;createConcatenatedOperation&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util" class="externalLink">Map</a>&lt;<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>,&#8203;?&gt;&nbsp;properties,
<a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/CoordinateOperation.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink">CoordinateOperation</a>...&nbsp;operations)
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 ordered sequence of two or more single coordinate operations.
The sequence of operations is constrained by the requirement that the source coordinate reference system
of step (<var>n</var>+1) must be the same as the target coordinate reference system of step (<var>n</var>).
The source coordinate reference system of the first step and the target coordinate reference system of the
last step are the source and target coordinate reference system associated with the concatenated operation.
<p>The properties given in argument follow the same rules than for any other
<a href="AbstractCoordinateOperation.html#%3Cinit%3E(java.util.Map,org.opengis.referencing.crs.CoordinateReferenceSystem,org.opengis.referencing.crs.CoordinateReferenceSystem,org.opengis.referencing.crs.CoordinateReferenceSystem,org.opengis.referencing.operation.MathTransform)">coordinate operation</a> constructor.
The following table is a reminder of main (not all) properties:</p>
<table class="sis">
<caption>Recognized properties (non exhaustive list)</caption>
<tr>
<th>Property name</th>
<th>Value type</th>
<th>Returned by</th>
</tr>
<tr>
<td><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/IdentifiedObject.html?is-external=true#NAME_KEY" title="class or interface in org.opengis.referencing" class="externalLink">"name"</a></td>
<td><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/metadata/Identifier.html?is-external=true" title="class or interface in org.opengis.metadata" class="externalLink"><code>Identifier</code></a> or <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"><code>String</code></a></td>
<td><a href="../AbstractIdentifiedObject.html#getName()"><code>AbstractIdentifiedObject.getName()</code></a></td>
</tr>
<tr>
<td><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/IdentifiedObject.html?is-external=true#IDENTIFIERS_KEY" title="class or interface in org.opengis.referencing" class="externalLink">"identifiers"</a></td>
<td><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/metadata/Identifier.html?is-external=true" title="class or interface in org.opengis.metadata" class="externalLink"><code>Identifier</code></a> (optionally as array)</td>
<td><a href="../AbstractIdentifiedObject.html#getIdentifiers()"><code>AbstractIdentifiedObject.getIdentifiers()</code></a></td>
</tr>
</table></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/CoordinateOperationFactory.html?is-external=true#createConcatenatedOperation(java.util.Map,org.opengis.referencing.operation.CoordinateOperation...)" title="class or interface in org.opengis.referencing.operation" class="externalLink">create­Concatenated­Operation</a></code>&nbsp;in interface&nbsp;<code><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/CoordinateOperationFactory.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink">Coordinate­Operation­Factory</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>properties</code> - the properties to be given to the identified object.</dd>
<dd><code>operations</code> - the sequence of operations. Shall contains at least two operations.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the concatenated operation created from the given arguments.</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">Factory­Exception</a></code> - if the object creation failed.</dd>
</dl>
</li>
</ul>
<a id="createOperation(org.opengis.referencing.crs.CoordinateReferenceSystem,org.opengis.referencing.crs.CoordinateReferenceSystem)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>createOperation</h4>
<pre class="methodSignature">public&nbsp;<a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/CoordinateOperation.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink">CoordinateOperation</a>&nbsp;createOperation&#8203;(<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>&nbsp;sourceCRS,
<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>&nbsp;targetCRS)
throws <a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/OperationNotFoundException.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink">OperationNotFoundException</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">Finds or creates an operation for conversion or transformation between two coordinate reference systems.
If an operation exists, it is returned. If more than one operation exists, the operation having the widest
domain of validity is returned. If no operation exists, then an exception is thrown.
<p>The default implementation delegates to <code><a href="#createOperation(org.opengis.referencing.crs.CoordinateReferenceSystem,org.opengis.referencing.crs.CoordinateReferenceSystem,org.apache.sis.referencing.operation.CoordinateOperationContext)">create­Operation</a>(source­CRS, target­CRS, null)}</code>.</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/CoordinateOperationFactory.html?is-external=true#createOperation(org.opengis.referencing.crs.CoordinateReferenceSystem,org.opengis.referencing.crs.CoordinateReferenceSystem)" title="class or interface in org.opengis.referencing.operation" class="externalLink">create­Operation</a></code>&nbsp;in interface&nbsp;<code><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/CoordinateOperationFactory.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink">Coordinate­Operation­Factory</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>source­CRS</code> - input coordinate reference system.</dd>
<dd><code>target­CRS</code> - output coordinate reference system.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a coordinate operation from <code>source­CRS</code> to <code>target­CRS</code>.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/OperationNotFoundException.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink">Operation­Not­Found­Exception</a></code> - if no operation path was found from <code>source­CRS</code> to <code>target­CRS</code>.</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">Factory­Exception</a></code> - if the operation creation failed for some other reason.</dd>
</dl>
</li>
</ul>
<a id="createOperation(org.opengis.referencing.crs.CoordinateReferenceSystem,org.opengis.referencing.crs.CoordinateReferenceSystem,org.apache.sis.referencing.operation.CoordinateOperationContext)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>createOperation</h4>
<pre class="methodSignature">public&nbsp;<a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/CoordinateOperation.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink">CoordinateOperation</a>&nbsp;createOperation&#8203;(<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>&nbsp;sourceCRS,
<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>&nbsp;targetCRS,
<a href="CoordinateOperationContext.html" title="class in org.apache.sis.referencing.operation">CoordinateOperationContext</a>&nbsp;context)
throws <a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/OperationNotFoundException.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink">OperationNotFoundException</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">Finds or creates an operation for conversion or transformation between two coordinate reference systems.
If an operation exists, it is returned. If more than one operation exists, then the operation having the
widest intersection between its <a href="AbstractCoordinateOperation.html#getDomainOfValidity()">domain of
validity</a> and the <a href="CoordinateOperationContext.html#getAreaOfInterest()">area of interest</a> is returned.
<p>The default implementation performs the following steps:</p>
<ul>
<li>If a coordinate operation has been previously cached for the given CRS and context, return it.</li>
<li>Otherwise:
<ol>
<li>Invoke <a href="#createOperationFinder(org.opengis.referencing.operation.CoordinateOperationAuthorityFactory,org.apache.sis.referencing.operation.CoordinateOperationContext)"><code>create­Operation­Finder(Coordinate­Operation­Authority­Factory, Coordinate­Operation­Context)</code></a>.</li>
<li>Invoke <a href="CoordinateOperationFinder.html#createOperation(org.opengis.referencing.crs.CoordinateReferenceSystem,org.opengis.referencing.crs.CoordinateReferenceSystem)"><code>Coordinate­Operation­Finder​.create­Operation(Coordinate­Reference­System, Coordinate­Reference­System)</code></a>
on the object returned by the previous step.</li>
<li>Cache the result, then return it.</li>
</ol>
</li>
</ul>
Subclasses can override <a href="#createOperationFinder(org.opengis.referencing.operation.CoordinateOperationAuthorityFactory,org.apache.sis.referencing.operation.CoordinateOperationContext)"><code>create­Operation­Finder(…)</code></a> if they need more control on
the way coordinate operations are inferred.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>source­CRS</code> - input coordinate reference system.</dd>
<dd><code>target­CRS</code> - output coordinate reference system.</dd>
<dd><code>context</code> - area of interest and desired accuracy, or <code>null</code>.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a coordinate operation from <code>source­CRS</code> to <code>target­CRS</code>.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/OperationNotFoundException.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink">Operation­Not­Found­Exception</a></code> - if no operation path was found from <code>source­CRS</code> to <code>target­CRS</code>.</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">Factory­Exception</a></code> - if the operation creation failed for some other reason.</dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>0.7</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="CoordinateOperationFinder.html" title="class in org.apache.sis.referencing.operation"><code>Coordinate­Operation­Finder</code></a></dd>
</dl>
</li>
</ul>
<a id="createOperations(org.opengis.referencing.crs.CoordinateReferenceSystem,org.opengis.referencing.crs.CoordinateReferenceSystem,org.apache.sis.referencing.operation.CoordinateOperationContext)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>createOperations</h4>
<pre class="methodSignature">public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util" class="externalLink">List</a>&lt;<a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/CoordinateOperation.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink">CoordinateOperation</a>&gt;&nbsp;createOperations&#8203;(<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>&nbsp;sourceCRS,
<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>&nbsp;targetCRS,
<a href="CoordinateOperationContext.html" title="class in org.apache.sis.referencing.operation">CoordinateOperationContext</a>&nbsp;context)
throws <a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/OperationNotFoundException.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink">OperationNotFoundException</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">Finds or creates operations for conversions or transformations between two coordinate reference systems.
If at least one operation exists, they are returned in preference order: the operation having the widest
intersection between its <a href="AbstractCoordinateOperation.html#getDomainOfValidity()">domain of validity</a>
and the <a href="CoordinateOperationContext.html#getAreaOfInterest()">area of interest</a> is returned.
<p>The default implementation performs the following steps:</p>
<ul>
<li>Invoke <a href="#createOperationFinder(org.opengis.referencing.operation.CoordinateOperationAuthorityFactory,org.apache.sis.referencing.operation.CoordinateOperationContext)"><code>create­Operation­Finder(Coordinate­Operation­Authority­Factory, Coordinate­Operation­Context)</code></a>.</li>
<li>Invoke <a href="CoordinateOperationFinder.html#createOperations(org.opengis.referencing.crs.CoordinateReferenceSystem,org.opengis.referencing.crs.CoordinateReferenceSystem)"><code>Coordinate­Operation­Finder​.create­Operations(Coordinate­Reference­System, Coordinate­Reference­System)</code></a>
on the object returned by the previous step.</li>
</ul>
Subclasses can override <a href="#createOperationFinder(org.opengis.referencing.operation.CoordinateOperationAuthorityFactory,org.apache.sis.referencing.operation.CoordinateOperationContext)"><code>create­Operation­Finder(…)</code></a> if they need more control on
the way coordinate operations are inferred.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>source­CRS</code> - input coordinate reference system.</dd>
<dd><code>target­CRS</code> - output coordinate reference system.</dd>
<dd><code>context</code> - area of interest and desired accuracy, or <code>null</code>.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>coordinate operations from <code>source­CRS</code> to <code>target­CRS</code>.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/OperationNotFoundException.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink">Operation­Not­Found­Exception</a></code> - if no operation path was found from <code>source­CRS</code> to <code>target­CRS</code>.</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">Factory­Exception</a></code> - if the operation creation failed for some other reason.</dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>1.0</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="CoordinateOperationFinder.html" title="class in org.apache.sis.referencing.operation"><code>Coordinate­Operation­Finder</code></a></dd>
</dl>
</li>
</ul>
<a id="createOperationFinder(org.opengis.referencing.operation.CoordinateOperationAuthorityFactory,org.apache.sis.referencing.operation.CoordinateOperationContext)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>createOperationFinder</h4>
<pre class="methodSignature">protected&nbsp;<a href="CoordinateOperationFinder.html" title="class in org.apache.sis.referencing.operation">CoordinateOperationFinder</a>&nbsp;createOperationFinder&#8203;(<a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/CoordinateOperationAuthorityFactory.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink">CoordinateOperationAuthorityFactory</a>&nbsp;registry,
<a href="CoordinateOperationContext.html" title="class in org.apache.sis.referencing.operation">CoordinateOperationContext</a>&nbsp;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">Creates the object which will perform the actual task of finding a coordinate operation path between two CRS.
This method is invoked by <a href="#createOperation(org.opengis.referencing.crs.CoordinateReferenceSystem,org.opengis.referencing.crs.CoordinateReferenceSystem,org.apache.sis.referencing.operation.CoordinateOperationContext)"><code>create­Operation(…)</code></a> when no operation was found in the cache.
The default implementation is straightforward:
<blockquote><pre><font color="green">return</font> <font color="green">new</font> <b>CoordinateOperationFinder</b>(registry, <font color="green">this</font>, context);</pre></blockquote>
Subclasses can override this method is they want to modify the way coordinate operations are inferred.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>registry</code> - the factory to use for creating operations as defined by authority, or <code>null</code> if none.</dd>
<dd><code>context</code> - the area of interest and desired accuracy, or <code>null</code> if none.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a finder of conversion or transformation path from a source CRS to a target CRS.</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">Factory­Exception</a></code> - if an error occurred while initializing the <code>Coordinate­Operation­Finder</code>.</dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>0.8</dd>
</dl>
</li>
</ul>
<a id="createOperation(org.opengis.referencing.crs.CoordinateReferenceSystem,org.opengis.referencing.crs.CoordinateReferenceSystem,org.opengis.referencing.operation.OperationMethod)">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>createOperation</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&nbsp;<a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/CoordinateOperation.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink">CoordinateOperation</a>&nbsp;createOperation&#8203;(<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>&nbsp;sourceCRS,
<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>&nbsp;targetCRS,
<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>&nbsp;method)
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 class="deprecationComment">Replaced by <a href="#createOperation(org.opengis.referencing.crs.CoordinateReferenceSystem,org.opengis.referencing.crs.CoordinateReferenceSystem,org.apache.sis.referencing.operation.CoordinateOperationContext)"><code>create­Operation(Coordinate­Reference­System, Coordinate­Reference­System, Coordinate­Operation­Context)</code></a>.</div>
</div>
<div class="block">Returns an operation using a particular method for conversion or transformation between
two coordinate reference systems. If an operation exists using the given method, then it
is returned. If no operation using the given method is found, then the implementation has
the option of inferring the operation from the argument objects.
<p>Current implementation ignores the <code>method</code> argument.
This behavior may change in a future Apache SIS version.</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/CoordinateOperationFactory.html?is-external=true#createOperation(org.opengis.referencing.crs.CoordinateReferenceSystem,org.opengis.referencing.crs.CoordinateReferenceSystem,org.opengis.referencing.operation.OperationMethod)" title="class or interface in org.opengis.referencing.operation" class="externalLink">create­Operation</a></code>&nbsp;in interface&nbsp;<code><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/CoordinateOperationFactory.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink">Coordinate­Operation­Factory</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>source­CRS</code> - input coordinate reference system.</dd>
<dd><code>target­CRS</code> - output coordinate reference system.</dd>
<dd><code>method</code> - the algorithmic method for conversion or transformation.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a coordinate operation from <code>source­CRS</code> to <code>target­CRS</code>.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/OperationNotFoundException.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink">Operation­Not­Found­Exception</a></code> - if no operation path was found from <code>source­CRS</code> to <code>target­CRS</code>.</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">Factory­Exception</a></code> - if the operation creation failed for some other reason.</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/DefaultCoordinateOperationFactory.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&nbsp;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:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a id="skip.navbar.bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</nav>
<p class="legalCopy"><small>Copyright &#169; 2010&#x2013;2019 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
</footer>
</body>
</html>