/* Copyright (C) 2012-2020, Dirk Krause SPDX-License-Identifier: BSD-3-Clause */ /* WARNING: This file was generated by the dkct program (see http://dktools.sourceforge.net/ for details). Changes you make here will be lost if dkct is run again! You should modify the original source and run dkct on it. Original source: dk3bezcu.ctr */ /** @file dk3bezcu.h Header file for the dk3bezcu module. */ #ifndef DK3BEZCU_H_INCLUDED /** Avoid multiple inclusions. */ #define DK3BEZCU_H_INCLUDED 1 #line 9 "dk3bezcu.ctr" #ifdef __cplusplus extern "C" { #endif /** Bezier curve value calculation. @param x0 Start point value. @param xp Value in control point near start. @param xm Value in control point near end. @param x1 End point. @param t The t parameter. @param ec Pointer to error code variable, may be NULL. @return Calculation result. */ double dk3bezier_value( double x0, double xp, double xm, double x1, double t, int *ec ); /** Add Bezier curve segment to bounding box. @param bb Bounding box to modify. @param x0 Start point x coordinate. @param y0 Start point y coordinate. @param xp Control point near start x coordinate. @param yp Control point near start y coordinate. @param xm Control point near end x coordinate. @param ym Control point near end y coordinate. @param x1 End point x coordinate. @param y1 End point y coordinate. @param ra Half line width. @param ec Pointer to error code variable, may be NULL. @return 1 on success, 0 on error. */ int dk3bezier_bb( dk3_bb_t *bb, double x0, double y0, double xp, double yp, double xm, double ym, double x1, double y1, double ra, int *ec ); #ifdef __cplusplus } #endif #endif