<!-- Generated by pkgdown: do not edit by hand -->
<!DOCTYPE html>
<html lang="en">
  <head>
  <meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">

<title>Surface curvature — curvature • spatialEco</title>


<!-- jquery -->
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.4.1/jquery.min.js" integrity="sha256-CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo=" crossorigin="anonymous"></script>
<!-- Bootstrap -->

<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.4.1/css/bootstrap.min.css" integrity="sha256-bZLfwXAP04zRMK2BjiO8iu9pf4FbLqX6zitd+tIvLhE=" crossorigin="anonymous" />

<script src="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.4.1/js/bootstrap.min.js" integrity="sha256-nuL8/2cJ5NDSSwnKD8VqreErSWHtnEP9E7AySL+1ev4=" crossorigin="anonymous"></script>

<!-- bootstrap-toc -->
<link rel="stylesheet" href="../bootstrap-toc.css">
<script src="../bootstrap-toc.js"></script>

<!-- Font Awesome icons -->
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.12.1/css/all.min.css" integrity="sha256-mmgLkCYLUQbXn0B1SRqzHar6dCnv9oZFPEC1g1cwlkk=" crossorigin="anonymous" />
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.12.1/css/v4-shims.min.css" integrity="sha256-wZjR52fzng1pJHwx4aV2AO3yyTOXrcDW7jBpJtTwVxw=" crossorigin="anonymous" />

<!-- clipboard.js -->
<script src="https://cdnjs.cloudflare.com/ajax/libs/clipboard.js/2.0.6/clipboard.min.js" integrity="sha256-inc5kl9MA1hkeYUt+EC3BhlIgyp/2jDIyBLS6k3UxPI=" crossorigin="anonymous"></script>

<!-- headroom.js -->
<script src="https://cdnjs.cloudflare.com/ajax/libs/headroom/0.11.0/headroom.min.js" integrity="sha256-AsUX4SJE1+yuDu5+mAVzJbuYNPHj/WroHuZ8Ir/CkE0=" crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/headroom/0.11.0/jQuery.headroom.min.js" integrity="sha256-ZX/yNShbjqsohH1k95liqY9Gd8uOiE1S4vZc+9KQ1K4=" crossorigin="anonymous"></script>

<!-- pkgdown -->
<link href="../pkgdown.css" rel="stylesheet">
<script src="../pkgdown.js"></script>




<meta property="og:title" content="Surface curvature — curvature" />
<meta property="og:description" content="Calculates Zevenbergen &amp;amp; Thorne, McNab's or Bolstad's curvature" />




<!-- mathjax -->
<script src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/MathJax.js" integrity="sha256-nvJJv9wWKEm88qvoQl9ekL2J+k/RWIsaSScxxlsrv8k=" crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/config/TeX-AMS-MML_HTMLorMML.js" integrity="sha256-84DKXVJXs0/F8OTMzX4UR909+jtl4G7SPypPavF+GfA=" crossorigin="anonymous"></script>

<!--[if lt IE 9]>
<script src="https://oss.maxcdn.com/html5shiv/3.7.3/html5shiv.min.js"></script>
<script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
<![endif]-->



  </head>

  <body data-spy="scroll" data-target="#toc">
    <div class="container template-reference-topic">
      <header>
      <div class="navbar navbar-default navbar-fixed-top" role="navigation">
  <div class="container">
    <div class="navbar-header">
      <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false">
        <span class="sr-only">Toggle navigation</span>
        <span class="icon-bar"></span>
        <span class="icon-bar"></span>
        <span class="icon-bar"></span>
      </button>
      <span class="navbar-brand">
        <a class="navbar-link" href="../index.html">spatialEco</a>
        <span class="version label label-default" data-toggle="tooltip" data-placement="bottom" title="Released version">1.3-7</span>
      </span>
    </div>

    <div id="navbar" class="navbar-collapse collapse">
      <ul class="nav navbar-nav">
        <li>
  <a href="../index.html">
    <span class="fas fa-home fa-lg"></span>
     
  </a>
</li>
<li>
  <a href="../reference/index.html">Reference</a>
</li>
      </ul>
      <ul class="nav navbar-nav navbar-right">
        <li>
  <a href="https://github.com/jeffreyevans/spatialEco/">
    <span class="fab fa-github fa-lg"></span>
     
  </a>
</li>
      </ul>
      
    </div><!--/.nav-collapse -->
  </div><!--/.container -->
</div><!--/.navbar -->

      

      </header>

<div class="row">
  <div class="col-md-9 contents">
    <div class="page-header">
    <h1>Surface curvature</h1>
    <small class="dont-index">Source: <a href='https://github.com/jeffreyevans/spatialEco/blob/master/R/curvature.R'><code>R/curvature.R</code></a></small>
    <div class="hidden name"><code>curvature.Rd</code></div>
    </div>

    <div class="ref-description">
    <p>Calculates Zevenbergen &amp; Thorne, McNab's or Bolstad's curvature</p>
    </div>

    <pre class="usage"><span class='fu'>curvature</span><span class='op'>(</span><span class='va'>x</span>, type <span class='op'>=</span> <span class='fu'><a href='https://rdrr.io/r/base/c.html'>c</a></span><span class='op'>(</span><span class='st'>"planform"</span>, <span class='st'>"profile"</span>, <span class='st'>"total"</span>, <span class='st'>"mcnab"</span>, <span class='st'>"bolstad"</span><span class='op'>)</span>, <span class='va'>...</span><span class='op'>)</span></pre>

    <h2 class="hasAnchor" id="arguments"><a class="anchor" href="#arguments"></a>Arguments</h2>
    <table class="ref-arguments">
    <colgroup><col class="name" /><col class="desc" /></colgroup>
    <tr>
      <th>x</th>
      <td><p>rasterLayer object</p></td>
    </tr>
    <tr>
      <th>type</th>
      <td><p>Method used c("planform", "profile", "total", "mcnab", "bolstad")</p></td>
    </tr>
    <tr>
      <th>...</th>
      <td><p>Additional arguments passed to writeRaster</p></td>
    </tr>
    </table>

    <h2 class="hasAnchor" id="value"><a class="anchor" href="#value"></a>Value</h2>

    <p>raster class object of surface curvature</p>
    <h2 class="hasAnchor" id="note"><a class="anchor" href="#note"></a>Note</h2>

    <p>The planform and profile curvatures are the second derivative(s) of the 
elevation surface, or the slope of the slope. Profile curvature is in 
the direction of the maximum slope, and the planform curvature is 
perpendicular to the direction of the maximum slope.
Negative values in the profile curvature indicate the surface is upwardly
convex whereas, positive values indicate that the surface is upwardly concave.  
Positive values in the planform curvature indicate an that the surface is 
laterally convex whereas, negative values indicate that the surface is 
laterally concave.</p>
<p>Total curvature is the sigma of the profile and planform curvatures. A value of 
0 in profile, planform or total curvature, indicates the surface is flat. 
The planform, profile and total curvatures are derived using 
Zevenbergen &amp; Thorne (1987) via a quadratic equation fit to eight neighbors 
as such, the s (focal window size) argument is ignored.</p>
<p>McNab's and Bolstad's variants of the surface curvature (concavity/convexity) 
index (McNab 1993; Bolstad &amp; Lillesand 1992; McNab 1989). The index is based 
on features that confine the view from the center of a 
3x3 window. In the Bolstad equation, edge correction is addressed 
by dividing by the radius distance to the outermost cell (36.2m).</p>
    <h2 class="hasAnchor" id="references"><a class="anchor" href="#references"></a>References</h2>

    <p>Bolstad, P.V., and T.M. Lillesand (1992). Improved classification of forest 
  vegetation in northern Wisconsin through a rule-based combination of soils, 
  terrain, and Landsat TM data. Forest Science. 38(1):5-20.</p>
<p>Florinsky, I.V. (1998). Accuracy of Local Topographic Variables Derived from 
  Digital Elevation Models. International Journal of Geographical Information 
  Science, 12(1):47-62.</p>
<p>McNab, H.W. (1989). Terrain shape index: quantifying effect of minor landforms 
  on tree height. Forest Science. 35(1):91-104.</p>
<p>McNab, H.W. (1993). A topographic index to quantify the effect of mesoscale 
  landform on site productivity. Canadian Journal of Forest Research. 23:1100-1107.</p>
<p>Zevenbergen, L.W. &amp; C.R. Thorne (1987). Quantitative Analysis of Land Surface 
  Topography. Earth Surface Processes and Landforms, 12:47-56.</p>
    <h2 class="hasAnchor" id="see-also"><a class="anchor" href="#see-also"></a>See also</h2>

    <div class='dont-index'><p><code><a href='https://rdrr.io/pkg/raster/man/writeRaster.html'>writeRaster</a></code> For additional ... arguments passed to writeRaster</p></div>
    <h2 class="hasAnchor" id="author"><a class="anchor" href="#author"></a>Author</h2>

    <p>Jeffrey S. Evans  &lt;jeffrey_evans@tnc.org&gt;</p>

    <h2 class="hasAnchor" id="examples"><a class="anchor" href="#examples"></a>Examples</h2>
    <pre class="examples"><div class='input'><span class='co'># \donttest{</span>
  <span class='kw'><a href='https://rdrr.io/r/base/library.html'>library</a></span><span class='op'>(</span><span class='va'><a href='https://rspatial.org/raster'>raster</a></span><span class='op'>)</span>
  <span class='kw'><a href='https://rdrr.io/r/base/library.html'>library</a></span><span class='op'>(</span><span class='va'><a href='https://github.com/jeffreyevans/spatialEco'>spatialEco</a></span><span class='op'>)</span>
  <span class='fu'><a href='https://rdrr.io/r/utils/data.html'>data</a></span><span class='op'>(</span><span class='va'>elev</span><span class='op'>)</span>
  <span class='va'>elev</span> <span class='op'>&lt;-</span> <span class='fu'><a href='https://rdrr.io/pkg/raster/man/projectRaster.html'>projectRaster</a></span><span class='op'>(</span><span class='va'>elev</span>, crs<span class='op'>=</span><span class='st'>"+proj=robin +datum=WGS84"</span>, 
                        res<span class='op'>=</span><span class='fl'>1000</span>, method<span class='op'>=</span><span class='st'>'bilinear'</span><span class='op'>)</span>
</div><div class='output co'>#&gt; <span class='warning'>Warning: CRS object has no comment</span></div><div class='output co'>#&gt; <span class='warning'>Warning: CRS object has no comment</span></div><div class='output co'>#&gt; <span class='warning'>Warning: Using PROJ not WKT2 strings</span></div><div class='output co'>#&gt; <span class='warning'>Warning: Using PROJ not WKT2 strings</span></div><div class='input'><span class='fu'>curvature</span><span class='op'>(</span><span class='va'>elev</span>, type<span class='op'>=</span><span class='st'>"planform"</span><span class='op'>)</span>
</div><div class='output co'>#&gt; class      : RasterLayer 
#&gt; dimensions : 331, 293, 96983  (nrow, ncol, ncell)
#&gt; resolution : 1000, 1000  (x, y)
#&gt; extent     : -146715.1, 146284.9, -165572.1, 165427.9  (xmin, xmax, ymin, ymax)
#&gt; crs        : +proj=robin +lon_0=0 +x_0=0 +y_0=0 +datum=WGS84 +units=m +no_defs 
#&gt; source     : memory
#&gt; names      : layer 
#&gt; values     : 0, 0  (min, max)
#&gt; </div><div class='input'>  <span class='va'>mcnab.crv</span> <span class='op'>&lt;-</span> <span class='fu'>curvature</span><span class='op'>(</span><span class='va'>elev</span>, type<span class='op'>=</span><span class='st'>"mcnab"</span><span class='op'>)</span>
      <span class='fu'><a href='https://rdrr.io/pkg/raster/man/plot.html'>plot</a></span><span class='op'>(</span><span class='va'>mcnab.crv</span>, main<span class='op'>=</span><span class='st'>"McNab's curvature"</span><span class='op'>)</span> 
</div><div class='img'><img src='curvature-1.png' alt='' width='700' height='433' /></div><div class='input'><span class='co'># }</span>
    
</div></pre>
  </div>
  <div class="col-md-3 hidden-xs hidden-sm" id="pkgdown-sidebar">
    <nav id="toc" data-toggle="toc" class="sticky-top">
      <h2 data-toc-skip>Contents</h2>
    </nav>
  </div>
</div>


      <footer>
      <div class="copyright">
  <p>Developed by Jeffrey S. Evans.</p>
</div>

<div class="pkgdown">
  <p>Site built with <a href="https://pkgdown.r-lib.org/">pkgdown</a> 1.6.1.</p>
</div>

      </footer>
   </div>

  


  </body>
</html>


