Syntax
[C/C++:]
void gSetCurveAttribs2D(float dxbeg, float dybeg, float dxfin, float dyfin, float xbeg, float ybeg, float xfin, float yfin);
void gSetCurveAttribs3D(float dxbeg, float dybeg, float dzbeg, float dxfin, float dyfin, float dzfin, float xbeg, float ybeg, float zbeg, float xfin, float yfin, float zfin);
[F90:]
subroutine gSetCurveAttribs2D(dxbeg, dybeg, dxfin, dyfin, xbeg, ybeg, xfin, yfin)
subroutine gSetCurveAttribs3D(dxbeg, dybeg, dzbeg, dxfin, dyfin, dzfin, xbeg, ybeg, zbeg, xfin, yfin, zfin)
real, intent(in) :: dxbeg,dybeg,dzbeg,dxfin,dyfin,dzfin
real, intent(in) :: xbeg,ybeg,zbeg,xfin,yfin,zfin
Arguments
dxbeg,dybeg,dzbeg
Slope angle/derivative for start of the curve
dxfin,dyfin,dzfin
Slope angle/derivative for end of the curve
xbeg,ybeg,zbeg
Extra point defining start angle of curve
xfin,yfin,zfin
Extra point defining end angle of curve
Description
The routines gSetCurveAttribs2D() and gSetCurveAttribs3D() specify the curve end conditions which may be used in calls to the GINO 2D and 3D curve drawing routines respectively. The curve end conditions define the direction of a curve at each end.
For the 2D piecewise cubic curves, the slopes are measured in terms of the cosine and sine of the angles at each end, whereas for the 2D and 3D spline curves, the slope is measured in terms of actual gradient and therefore will need to be scaled. For monotonic spline curves, it is sufficient to set
dxbeg,
dxfin = 1.0 and
dybeg,
dyfin = y'(x) and the routine will compute the correct values.
Alternatively, the direction may be defined by an extra point through which the curve would pass if that point was included with those that actually specify the curve.
In the absence of a call to gSetCurveAttribs2D() or gSetCurveAttribs3D(), the start and end slopes default to zero, i.e 1.0 and 0.0 for the cosine and sine of the angle, and the extra points (
xbeg,
ybeg,
zbeg) and (
xfin,
yfin,
zfin) both default to (0.0,0.0,0.0).
See Also
gSetCurveAttribs2D UsagegDrawAkimaBy2D
gDrawAkimaTo2D
gDrawCurveBy2D
gDrawCurveTo2D
gDrawSplineBy2D
gDrawSplineTo2D
gDrawSplineBy3D
gDrawSplineTo3D