wcslib (8.2.2)
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>WCSLIB: prjprm Struct Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">WCSLIB<span id="projectnumber"> 8.2.2</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.8 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-attribs">Data Fields</a> </div>
<div class="headertitle"><div class="title">prjprm Struct Reference</div></div>
</div><!--header-->
<div class="contents">
<p>Projection parameters.
<a href="structprjprm.html#details">More...</a></p>
<p><code>#include <<a class="el" href="prj_8h_source.html">prj.h</a>></code></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-attribs" name="pub-attribs"></a>
Data Fields</h2></td></tr>
<tr class="memitem:ad304d66b3f3aa64fe9c7251d3c420d02" id="r_ad304d66b3f3aa64fe9c7251d3c420d02"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="structprjprm.html#ad304d66b3f3aa64fe9c7251d3c420d02">flag</a></td></tr>
<tr class="separator:ad304d66b3f3aa64fe9c7251d3c420d02"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a4f3c364f16d0b6498d7e11e6bb67239c" id="r_a4f3c364f16d0b6498d7e11e6bb67239c"><td class="memItemLeft" align="right" valign="top">char </td><td class="memItemRight" valign="bottom"><a class="el" href="structprjprm.html#a4f3c364f16d0b6498d7e11e6bb67239c">code</a> [4]</td></tr>
<tr class="separator:a4f3c364f16d0b6498d7e11e6bb67239c"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a3894c2e551929b29adce50cd637fa351" id="r_a3894c2e551929b29adce50cd637fa351"><td class="memItemLeft" align="right" valign="top">double </td><td class="memItemRight" valign="bottom"><a class="el" href="structprjprm.html#a3894c2e551929b29adce50cd637fa351">r0</a></td></tr>
<tr class="separator:a3894c2e551929b29adce50cd637fa351"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a46d6928a9026e7b3376dcf0d3f91db64" id="r_a46d6928a9026e7b3376dcf0d3f91db64"><td class="memItemLeft" align="right" valign="top">double </td><td class="memItemRight" valign="bottom"><a class="el" href="structprjprm.html#a46d6928a9026e7b3376dcf0d3f91db64">pv</a> [<a class="el" href="prj_8h.html#ac8dfb42cf72db0c4bc690d030f75c662">PVN</a>]</td></tr>
<tr class="separator:a46d6928a9026e7b3376dcf0d3f91db64"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a699ad609ff7c1935d8fb6a457a5b8164" id="r_a699ad609ff7c1935d8fb6a457a5b8164"><td class="memItemLeft" align="right" valign="top">double </td><td class="memItemRight" valign="bottom"><a class="el" href="structprjprm.html#a699ad609ff7c1935d8fb6a457a5b8164">phi0</a></td></tr>
<tr class="separator:a699ad609ff7c1935d8fb6a457a5b8164"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:ae91fa3ff034b1c6de3ec98d8fb9e0ab1" id="r_ae91fa3ff034b1c6de3ec98d8fb9e0ab1"><td class="memItemLeft" align="right" valign="top">double </td><td class="memItemRight" valign="bottom"><a class="el" href="structprjprm.html#ae91fa3ff034b1c6de3ec98d8fb9e0ab1">theta0</a></td></tr>
<tr class="separator:ae91fa3ff034b1c6de3ec98d8fb9e0ab1"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:ab8dd3d8b1e462a2b261fc9e304885943" id="r_ab8dd3d8b1e462a2b261fc9e304885943"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="structprjprm.html#ab8dd3d8b1e462a2b261fc9e304885943">bounds</a></td></tr>
<tr class="separator:ab8dd3d8b1e462a2b261fc9e304885943"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:ab165b11d417700de0a4187f133050a2b" id="r_ab165b11d417700de0a4187f133050a2b"><td class="memItemLeft" align="right" valign="top">char </td><td class="memItemRight" valign="bottom"><a class="el" href="structprjprm.html#ab165b11d417700de0a4187f133050a2b">name</a> [40]</td></tr>
<tr class="separator:ab165b11d417700de0a4187f133050a2b"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:af0fcebbc8155f0b1ee868e64a2ed9ac3" id="r_af0fcebbc8155f0b1ee868e64a2ed9ac3"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="structprjprm.html#af0fcebbc8155f0b1ee868e64a2ed9ac3">category</a></td></tr>
<tr class="separator:af0fcebbc8155f0b1ee868e64a2ed9ac3"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:abcd2a3ee9f61b930d23bf741cea63bf3" id="r_abcd2a3ee9f61b930d23bf741cea63bf3"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="structprjprm.html#abcd2a3ee9f61b930d23bf741cea63bf3">pvrange</a></td></tr>
<tr class="separator:abcd2a3ee9f61b930d23bf741cea63bf3"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:afecdd175932cbf29fcfac575b1a5cb9b" id="r_afecdd175932cbf29fcfac575b1a5cb9b"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="structprjprm.html#afecdd175932cbf29fcfac575b1a5cb9b">simplezen</a></td></tr>
<tr class="separator:afecdd175932cbf29fcfac575b1a5cb9b"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:ab3e207e26d1c9db06cedba2cf4460340" id="r_ab3e207e26d1c9db06cedba2cf4460340"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="structprjprm.html#ab3e207e26d1c9db06cedba2cf4460340">equiareal</a></td></tr>
<tr class="separator:ab3e207e26d1c9db06cedba2cf4460340"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:ad7a41e3d03cb739c2a9aa1f8aabf54f9" id="r_ad7a41e3d03cb739c2a9aa1f8aabf54f9"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="structprjprm.html#ad7a41e3d03cb739c2a9aa1f8aabf54f9">conformal</a></td></tr>
<tr class="separator:ad7a41e3d03cb739c2a9aa1f8aabf54f9"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:ae634b0747fe55f77e65b6909c94227d9" id="r_ae634b0747fe55f77e65b6909c94227d9"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="structprjprm.html#ae634b0747fe55f77e65b6909c94227d9">global</a></td></tr>
<tr class="separator:ae634b0747fe55f77e65b6909c94227d9"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a62e88bd3c9e02f38193a800035b83918" id="r_a62e88bd3c9e02f38193a800035b83918"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="structprjprm.html#a62e88bd3c9e02f38193a800035b83918">divergent</a></td></tr>
<tr class="separator:a62e88bd3c9e02f38193a800035b83918"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:aae2c61d85c72e87f4b2b77a14c8eb316" id="r_aae2c61d85c72e87f4b2b77a14c8eb316"><td class="memItemLeft" align="right" valign="top">double </td><td class="memItemRight" valign="bottom"><a class="el" href="structprjprm.html#aae2c61d85c72e87f4b2b77a14c8eb316">x0</a></td></tr>
<tr class="separator:aae2c61d85c72e87f4b2b77a14c8eb316"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a164706f09314c493c7e9d2c7325f8372" id="r_a164706f09314c493c7e9d2c7325f8372"><td class="memItemLeft" align="right" valign="top">double </td><td class="memItemRight" valign="bottom"><a class="el" href="structprjprm.html#a164706f09314c493c7e9d2c7325f8372">y0</a></td></tr>
<tr class="separator:a164706f09314c493c7e9d2c7325f8372"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a30e78bb110dc7a8ad0303370ce20762c" id="r_a30e78bb110dc7a8ad0303370ce20762c"><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structwcserr.html">wcserr</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="structprjprm.html#a30e78bb110dc7a8ad0303370ce20762c">err</a></td></tr>
<tr class="separator:a30e78bb110dc7a8ad0303370ce20762c"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a75cda8ae364a914f64e119ba859c8372" id="r_a75cda8ae364a914f64e119ba859c8372"><td class="memItemLeft" align="right" valign="top">void * </td><td class="memItemRight" valign="bottom"><a class="el" href="structprjprm.html#a75cda8ae364a914f64e119ba859c8372">padding</a></td></tr>
<tr class="separator:a75cda8ae364a914f64e119ba859c8372"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a3b40a2df3b436c4ffcf5be6814993278" id="r_a3b40a2df3b436c4ffcf5be6814993278"><td class="memItemLeft" align="right" valign="top">double </td><td class="memItemRight" valign="bottom"><a class="el" href="structprjprm.html#a3b40a2df3b436c4ffcf5be6814993278">w</a> [10]</td></tr>
<tr class="separator:a3b40a2df3b436c4ffcf5be6814993278"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:afb805c40a4d37c195074c1305874d615" id="r_afb805c40a4d37c195074c1305874d615"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="structprjprm.html#afb805c40a4d37c195074c1305874d615">m</a></td></tr>
<tr class="separator:afb805c40a4d37c195074c1305874d615"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:aab36c6218a33025ac4c5025de7c67d42" id="r_aab36c6218a33025ac4c5025de7c67d42"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="structprjprm.html#aab36c6218a33025ac4c5025de7c67d42">n</a></td></tr>
<tr class="separator:aab36c6218a33025ac4c5025de7c67d42"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:aeef644ffeafea16e82b2b995a470a345" id="r_aeef644ffeafea16e82b2b995a470a345"><td class="memItemLeft" align="right" valign="top">int(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structprjprm.html#aeef644ffeafea16e82b2b995a470a345">prjx2s</a> )(<a class="el" href="prj_8h.html#a37ad31c5d2926862d211db0d14f401f0">PRJX2S_ARGS</a>)</td></tr>
<tr class="separator:aeef644ffeafea16e82b2b995a470a345"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:ae699a5fb02198777343057972e1452d0" id="r_ae699a5fb02198777343057972e1452d0"><td class="memItemLeft" align="right" valign="top">int(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structprjprm.html#ae699a5fb02198777343057972e1452d0">prjs2x</a> )(<a class="el" href="prj_8h.html#aacc46318c778bd844e30d6997394cc8a">PRJS2X_ARGS</a>)</td></tr>
<tr class="separator:ae699a5fb02198777343057972e1452d0"><td class="memSeparator" colspan="2"> </td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Projection parameters. </p>
<p>The <b>prjprm</b> struct contains all information needed to project or deproject native spherical coordinates. It consists of certain members that must be set by the user (<em>given</em>) and others that are set by the WCSLIB routines (<em>returned</em>). Some of the latter are supplied for informational purposes while others are for internal use only. </p>
</div><h2 class="groupheader">Field Documentation</h2>
<a id="ad304d66b3f3aa64fe9c7251d3c420d02" name="ad304d66b3f3aa64fe9c7251d3c420d02"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad304d66b3f3aa64fe9c7251d3c420d02">◆ </a></span>flag</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int prjprm::flag</td>
</tr>
</table>
</div><div class="memdoc">
<p>(Given and returned) This flag must be set to zero whenever any of the following <b>prjprm</b> struct members are set or changed:</p>
<ul>
<li>
<a class="el" href="structprjprm.html#a4f3c364f16d0b6498d7e11e6bb67239c">prjprm::code</a>, </li>
<li>
<a class="el" href="structprjprm.html#a3894c2e551929b29adce50cd637fa351">prjprm::r0</a>, </li>
<li>
<a class="el" href="structprjprm.html#a46d6928a9026e7b3376dcf0d3f91db64">prjprm::pv</a>[], </li>
<li>
<a class="el" href="structprjprm.html#a699ad609ff7c1935d8fb6a457a5b8164">prjprm::phi0</a>, </li>
<li>
<a class="el" href="structprjprm.html#ae91fa3ff034b1c6de3ec98d8fb9e0ab1">prjprm::theta0</a>. </li>
</ul>
<p>This signals the initialization routine (<a class="el" href="prj_8h.html#ad43dbc765c63162d0af2b9285b8a434f" title="Generic setup routine for the prjprm struct.">prjset()</a> or <b>???set()</b>) to recompute the returned members of the <b>prjprm</b> struct. flag will then be reset to indicate that this has been done.</p>
<p>Note that flag need not be reset when <a class="el" href="structprjprm.html#ab8dd3d8b1e462a2b261fc9e304885943">prjprm::bounds</a> is changed. </p>
</div>
</div>
<a id="a4f3c364f16d0b6498d7e11e6bb67239c" name="a4f3c364f16d0b6498d7e11e6bb67239c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4f3c364f16d0b6498d7e11e6bb67239c">◆ </a></span>code</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">char prjprm::code</td>
</tr>
</table>
</div><div class="memdoc">
<p>(<em>Given</em>) Three-letter projection code defined by the FITS standard. </p>
</div>
</div>
<a id="a3894c2e551929b29adce50cd637fa351" name="a3894c2e551929b29adce50cd637fa351"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3894c2e551929b29adce50cd637fa351">◆ </a></span>r0</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">double prjprm::r0</td>
</tr>
</table>
</div><div class="memdoc">
<p>(<em>Given</em>) The radius of the generating sphere for the projection, a linear scaling parameter. If this is zero, it will be reset to its default value of <picture><source srcset="form_31_dark.png" media="(prefers-color-scheme: dark)"/><img class="formulaInl" alt="$180^\circ/\pi$" src="form_31.png" width="38" height="14"/></picture> (the value for FITS WCS). </p>
</div>
</div>
<a id="a46d6928a9026e7b3376dcf0d3f91db64" name="a46d6928a9026e7b3376dcf0d3f91db64"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a46d6928a9026e7b3376dcf0d3f91db64">◆ </a></span>pv</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">double prjprm::pv</td>
</tr>
</table>
</div><div class="memdoc">
<p>(<em>Given</em>) Projection parameters. These correspond to the <code><b>PV</b>i<b>_</b>ma</code> keywords in FITS, so pv[0] is <code><b>PV</b>i<b>_0</b>a</code>, pv[1] is <code><b>PV</b>i<b>_1</b>a</code>, etc., where <code>i</code> denotes the latitude-like axis. Many projections use pv[1] (<code><b>PV</b>i<b>_1</b>a</code>), some also use pv[2] (<code><b>PV</b>i<b>_2</b>a</code>) and <code><b>SZP</b></code> uses pv[3] (<code><b>PV</b>i<b>_3</b>a</code>). <code><b>ZPN</b></code> is currently the only projection that uses any of the others.</p>
<p>Usage of the pv[] array as it applies to each projection is described in the prologue to each trio of projection routines in prj.c. </p>
</div>
</div>
<a id="a699ad609ff7c1935d8fb6a457a5b8164" name="a699ad609ff7c1935d8fb6a457a5b8164"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a699ad609ff7c1935d8fb6a457a5b8164">◆ </a></span>phi0</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">double prjprm::phi0</td>
</tr>
</table>
</div><div class="memdoc">
<p>(<em>Given</em>) The native longitude, <picture><source srcset="form_3_dark.png" media="(prefers-color-scheme: dark)"/><img class="formulaInl" alt="$\phi_0$" src="form_3.png" width="13" height="13"/></picture> [deg], and ... </p>
</div>
</div>
<a id="ae91fa3ff034b1c6de3ec98d8fb9e0ab1" name="ae91fa3ff034b1c6de3ec98d8fb9e0ab1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae91fa3ff034b1c6de3ec98d8fb9e0ab1">◆ </a></span>theta0</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">double prjprm::theta0</td>
</tr>
</table>
</div><div class="memdoc">
<p>(<em>Given</em>) ... the native latitude, <picture><source srcset="form_4_dark.png" media="(prefers-color-scheme: dark)"/><img class="formulaInl" alt="$\theta_0$" src="form_4.png" width="10" height="13"/></picture> [deg], of the reference point, i.e. the point <picture><source srcset="form_0_dark.png" media="(prefers-color-scheme: dark)"/><img class="formulaInl" alt="$(x,y)$" src="form_0.png" width="28" height="14"/></picture> = (0,0). If undefined (set to a magic value by <a class="el" href="prj_8h.html#ad994cb23871c51b20754973bef180f8a" title="Default constructor for the prjprm struct.">prjini()</a>) the initialization routine will set this to a projection-specific default. </p>
</div>
</div>
<a id="ab8dd3d8b1e462a2b261fc9e304885943" name="ab8dd3d8b1e462a2b261fc9e304885943"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab8dd3d8b1e462a2b261fc9e304885943">◆ </a></span>bounds</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int prjprm::bounds</td>
</tr>
</table>
</div><div class="memdoc">
<p>(<em>Given</em>) Controls bounds checking. If bounds&1 then enable strict bounds checking for the spherical-to-Cartesian (s2x) transformation for the <code><b>AZP</b></code>, <code><b>SZP</b></code>, <code><b>TAN</b></code>, <code><b>SIN</b></code>, <code><b>ZPN</b></code>, and <code><b>COP</b></code> projections. If bounds&2 then enable strict bounds checking for the Cartesian-to-spherical transformation (x2s) for the <code><b>HPX</b></code> and XPH projections. If bounds&4 then the Cartesian- to-spherical transformations (x2s) will invoke <a class="el" href="prj_8h.html#a7b8c7d246d49aa143a133262dc4f96be" title="Bounds checking on native coordinates.">prjbchk()</a> to perform bounds checking on the computed native coordinates, with a tolerance set to suit each projection. bounds is set to 7 by <a class="el" href="prj_8h.html#ad994cb23871c51b20754973bef180f8a" title="Default constructor for the prjprm struct.">prjini()</a> by default which enables all checks. Zero it to disable all checking.</p>
<p>It is not necessary to reset the <b>prjprm</b> struct (via <a class="el" href="prj_8h.html#ad43dbc765c63162d0af2b9285b8a434f" title="Generic setup routine for the prjprm struct.">prjset()</a> or <b>???set()</b>) when <a class="el" href="structprjprm.html#ab8dd3d8b1e462a2b261fc9e304885943">prjprm::bounds</a> is changed.</p>
<p>The remaining members of the <b>prjprm</b> struct are maintained by the setup routines and must not be modified elsewhere: </p>
</div>
</div>
<a id="ab165b11d417700de0a4187f133050a2b" name="ab165b11d417700de0a4187f133050a2b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab165b11d417700de0a4187f133050a2b">◆ </a></span>name</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">char prjprm::name</td>
</tr>
</table>
</div><div class="memdoc">
<p>(<em>Returned</em>) Long name of the projection.</p>
<p>Provided for information only, not used by the projection routines. </p>
</div>
</div>
<a id="af0fcebbc8155f0b1ee868e64a2ed9ac3" name="af0fcebbc8155f0b1ee868e64a2ed9ac3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af0fcebbc8155f0b1ee868e64a2ed9ac3">◆ </a></span>category</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int prjprm::category</td>
</tr>
</table>
</div><div class="memdoc">
<p>(<em>Returned</em>) Projection category matching the value of the relevant global variable:</p>
<ul>
<li>
ZENITHAL, </li>
<li>
CYLINDRICAL, </li>
<li>
PSEUDOCYLINDRICAL, </li>
<li>
CONVENTIONAL, </li>
<li>
CONIC, </li>
<li>
POLYCONIC, </li>
<li>
QUADCUBE, and </li>
<li>
HEALPIX. </li>
</ul>
<p>The category name may be identified via the prj_categories character array, e.g. </p><div class="fragment"><div class="line"><span class="keyword">struct </span><a class="code hl_struct" href="structprjprm.html">prjprm</a> prj;</div>
<div class="line"> ...</div>
<div class="line">printf(<span class="stringliteral">"%s\n"</span>, <a class="code hl_variable" href="prj_8h.html#a9bceed17f625eb88a0826871dc8296b5">prj_categories</a>[prj.category]);</div>
<div class="ttc" id="aprj_8h_html_a9bceed17f625eb88a0826871dc8296b5"><div class="ttname"><a href="prj_8h.html#a9bceed17f625eb88a0826871dc8296b5">prj_categories</a></div><div class="ttdeci">const char prj_categories[9][32]</div><div class="ttdoc">Projection categories.</div></div>
<div class="ttc" id="astructprjprm_html"><div class="ttname"><a href="structprjprm.html">prjprm</a></div><div class="ttdoc">Projection parameters.</div><div class="ttdef"><b>Definition</b> prj.h:698</div></div>
</div><!-- fragment --><p>Provided for information only, not used by the projection routines. </p>
</div>
</div>
<a id="abcd2a3ee9f61b930d23bf741cea63bf3" name="abcd2a3ee9f61b930d23bf741cea63bf3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abcd2a3ee9f61b930d23bf741cea63bf3">◆ </a></span>pvrange</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int prjprm::pvrange</td>
</tr>
</table>
</div><div class="memdoc">
<p>(<em>Returned</em>) Range of projection parameter indices: 100 times the first allowed index plus the number of parameters, e.g. <code><b>TAN</b></code> is 0 (no parameters), <code><b>SZP</b></code> is 103 (1 to 3), and <code><b>ZPN</b></code> is 30 (0 to 29).</p>
<p>Provided for information only, not used by the projection routines. </p>
</div>
</div>
<a id="afecdd175932cbf29fcfac575b1a5cb9b" name="afecdd175932cbf29fcfac575b1a5cb9b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afecdd175932cbf29fcfac575b1a5cb9b">◆ </a></span>simplezen</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int prjprm::simplezen</td>
</tr>
</table>
</div><div class="memdoc">
<p>(<em>Returned</em>) True if the projection is a radially-symmetric zenithal projection.</p>
<p>Provided for information only, not used by the projection routines. </p>
</div>
</div>
<a id="ab3e207e26d1c9db06cedba2cf4460340" name="ab3e207e26d1c9db06cedba2cf4460340"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab3e207e26d1c9db06cedba2cf4460340">◆ </a></span>equiareal</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int prjprm::equiareal</td>
</tr>
</table>
</div><div class="memdoc">
<p>(<em>Returned</em>) True if the projection is equal area.</p>
<p>Provided for information only, not used by the projection routines. </p>
</div>
</div>
<a id="ad7a41e3d03cb739c2a9aa1f8aabf54f9" name="ad7a41e3d03cb739c2a9aa1f8aabf54f9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad7a41e3d03cb739c2a9aa1f8aabf54f9">◆ </a></span>conformal</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int prjprm::conformal</td>
</tr>
</table>
</div><div class="memdoc">
<p>(<em>Returned</em>) True if the projection is conformal.</p>
<p>Provided for information only, not used by the projection routines. </p>
</div>
</div>
<a id="ae634b0747fe55f77e65b6909c94227d9" name="ae634b0747fe55f77e65b6909c94227d9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae634b0747fe55f77e65b6909c94227d9">◆ </a></span>global</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int prjprm::global</td>
</tr>
</table>
</div><div class="memdoc">
<p>(<em>Returned</em>) True if the projection can represent the whole sphere in a finite, non-overlapped mapping.</p>
<p>Provided for information only, not used by the projection routines. </p>
</div>
</div>
<a id="a62e88bd3c9e02f38193a800035b83918" name="a62e88bd3c9e02f38193a800035b83918"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a62e88bd3c9e02f38193a800035b83918">◆ </a></span>divergent</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int prjprm::divergent</td>
</tr>
</table>
</div><div class="memdoc">
<p>(<em>Returned</em>) True if the projection diverges in latitude.</p>
<p>Provided for information only, not used by the projection routines. </p>
</div>
</div>
<a id="aae2c61d85c72e87f4b2b77a14c8eb316" name="aae2c61d85c72e87f4b2b77a14c8eb316"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aae2c61d85c72e87f4b2b77a14c8eb316">◆ </a></span>x0</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">double prjprm::x0</td>
</tr>
</table>
</div><div class="memdoc">
<p>(<em>Returned</em>) The offset in <picture><source srcset="form_32_dark.png" media="(prefers-color-scheme: dark)"/><img class="formulaInl" alt="$x$" src="form_32.png" width="8" height="6"/></picture>,and ... </p>
</div>
</div>
<a id="a164706f09314c493c7e9d2c7325f8372" name="a164706f09314c493c7e9d2c7325f8372"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a164706f09314c493c7e9d2c7325f8372">◆ </a></span>y0</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">double prjprm::y0</td>
</tr>
</table>
</div><div class="memdoc">
<p>(<em>Returned</em>) ... the offset in <picture><source srcset="form_33_dark.png" media="(prefers-color-scheme: dark)"/><img class="formulaInl" alt="$y$" src="form_33.png" width="8" height="9"/></picture> used to force <picture><source srcset="form_0_dark.png" media="(prefers-color-scheme: dark)"/><img class="formulaInl" alt="$(x,y)$" src="form_0.png" width="28" height="14"/></picture> = (0,0) at ( <picture><source srcset="form_3_dark.png" media="(prefers-color-scheme: dark)"/><img class="formulaInl" alt="$\phi_0$" src="form_3.png" width="13" height="13"/></picture>, <picture><source srcset="form_4_dark.png" media="(prefers-color-scheme: dark)"/><img class="formulaInl" alt="$\theta_0$" src="form_4.png" width="10" height="13"/></picture>). </p>
</div>
</div>
<a id="a30e78bb110dc7a8ad0303370ce20762c" name="a30e78bb110dc7a8ad0303370ce20762c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a30e78bb110dc7a8ad0303370ce20762c">◆ </a></span>err</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">struct <a class="el" href="structwcserr.html">wcserr</a> * prjprm::err</td>
</tr>
</table>
</div><div class="memdoc">
<p>(<em>Returned</em>) If enabled, when an error status is returned, this struct contains detailed information about the error, see <a class="el" href="wcserr_8h.html#a1691b8bd184d40ca6fda255be078fa53" title="Enable/disable error messaging.">wcserr_enable()</a>. </p>
</div>
</div>
<a id="a75cda8ae364a914f64e119ba859c8372" name="a75cda8ae364a914f64e119ba859c8372"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a75cda8ae364a914f64e119ba859c8372">◆ </a></span>padding</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void * prjprm::padding</td>
</tr>
</table>
</div><div class="memdoc">
<p>(An unused variable inserted for alignment purposes only.) </p>
</div>
</div>
<a id="a3b40a2df3b436c4ffcf5be6814993278" name="a3b40a2df3b436c4ffcf5be6814993278"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3b40a2df3b436c4ffcf5be6814993278">◆ </a></span>w</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">double prjprm::w</td>
</tr>
</table>
</div><div class="memdoc">
<p>(<em>Returned</em>) Intermediate floating-point values derived from the projection parameters, cached here to save recomputation.</p>
<p>Usage of the w[] array as it applies to each projection is described in the prologue to each trio of projection routines in prj.c. </p>
</div>
</div>
<a id="afb805c40a4d37c195074c1305874d615" name="afb805c40a4d37c195074c1305874d615"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afb805c40a4d37c195074c1305874d615">◆ </a></span>m</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int prjprm::m</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="aab36c6218a33025ac4c5025de7c67d42" name="aab36c6218a33025ac4c5025de7c67d42"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aab36c6218a33025ac4c5025de7c67d42">◆ </a></span>n</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int prjprm::n</td>
</tr>
</table>
</div><div class="memdoc">
<p>(<em>Returned</em>) Intermediate integer value (used only for the <code><b>ZPN</b></code> and <code><b>HPX</b></code> projections). </p>
</div>
</div>
<a id="aeef644ffeafea16e82b2b995a470a345" name="aeef644ffeafea16e82b2b995a470a345"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aeef644ffeafea16e82b2b995a470a345">◆ </a></span>prjx2s</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">prjprm::prjx2s</td>
</tr>
</table>
</div><div class="memdoc">
<p>(<em>Returned</em>) Pointer to the spherical projection ... </p>
</div>
</div>
<a id="ae699a5fb02198777343057972e1452d0" name="ae699a5fb02198777343057972e1452d0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae699a5fb02198777343057972e1452d0">◆ </a></span>prjs2x</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">prjprm::prjs2x</td>
</tr>
</table>
</div><div class="memdoc">
<p>(<em>Returned</em>) ... and deprojection routines. </p>
</div>
</div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Wed Nov 29 2023 19:09:57 for WCSLIB by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
</small></address>
</body>
</html>