Curvature.java
package org.djutils.draw.curve;
/**
* Additional curve properties.
* <p>
* Copyright (c) 2023-2025 Delft University of Technology, Jaffalaan 5, 2628 BX Delft, the Netherlands. All rights reserved. See
* for project information <a href="https://djutils.org" target="_blank"> https://djutils.org</a>. The DJUTILS project is
* distributed under a three-clause BSD-style license, which can be found at
* <a href="https://djutils.org/docs/license.html" target="_blank"> https://djutils.org/docs/license.html</a>.
* </p>
* @author <a href="https://www.tudelft.nl/averbraeck">Alexander Verbraeck</a>
* @author <a href="https://www.tudelft.nl/pknoppers">Peter Knoppers</a>
* @author <a href="https://github.com/wjschakel">Wouter Schakel</a>
*/
public interface Curvature
{
/**
* Start curvature of this Curve2d..
* @return start curvature of this Curve2d.
*/
double getStartCurvature();
/**
* End curvature of this Curve2d..
* @return end curvature of this Curve2d
*/
double getEndCurvature();
/**
* Start radius of this Curve2d..
* @return start radius of this Curve2d
*/
default double getStartRadius()
{
return 1.0 / getStartCurvature();
}
/**
* End radius of this Curve2d..
* @return end radius of this Curve2d
*/
default double getEndRadius()
{
return 1.0 / getEndCurvature();
}
}