Beispiel #1
0
 /// <summary>Creates a <see cref="MklGridPointCurve.Interpolator"/> object that represents the implementation of a specified interpolation approach.
 /// </summary>
 /// <param name="splineOrder">The spline order.</param>
 /// <param name="splineType">The type of the spline.</param>
 /// <param name="boundaryConditionType">The type of the boundary condition.</param>
 /// <param name="boundaryCondition">The boundary condition.</param>
 /// <param name="splineCoefficientHint">The spline coefficient hint.</param>
 /// <param name="internalConditionType">The internal boundary condition type.</param>
 /// <param name="internalConditions">The internal boundary condition.</param>
 /// <returns>A <see cref="MklGridPointCurve.Interpolator"/> object that represents the implementation of the specified interpolation approach.</returns>
 public MklGridPointCurve.Interpolator Create(SplineOrder splineOrder, SplineType splineType, SplineBoundaryCondition boundaryConditionType, double[] boundaryCondition = null, SplineCoefficientStorageFormat splineCoefficientHint = SplineCoefficientStorageFormat.DF_NO_HINT, SplineInternalConditionType internalConditionType = SplineInternalConditionType.DF_NO_IC, double[] internalConditions = null)
 {
     return(new MklDataFitting(splineOrder, splineType, boundaryConditionType, boundaryCondition, splineCoefficientHint, internalConditionType, internalConditions));
 }
        public override int GetHashCode()
        {
            int hash = 1;

            if (SplineOrder != 0)
            {
                hash ^= SplineOrder.GetHashCode();
            }
            if (MaxSplineLength != 0D)
            {
                hash ^= MaxSplineLength.GetHashCode();
            }
            if (MaxConstraintInterval != 0D)
            {
                hash ^= MaxConstraintInterval.GetHashCode();
            }
            if (TimeResolution != 0D)
            {
                hash ^= TimeResolution.GetHashCode();
            }
            if (RegularizationWeight != 0D)
            {
                hash ^= RegularizationWeight.GetHashCode();
            }
            if (FirstSplineWeightFactor != 0D)
            {
                hash ^= FirstSplineWeightFactor.GetHashCode();
            }
            if (DerivativeWeight != 0D)
            {
                hash ^= DerivativeWeight.GetHashCode();
            }
            if (SecondDerivativeWeight != 0D)
            {
                hash ^= SecondDerivativeWeight.GetHashCode();
            }
            if (ThirdDerivativeWeight != 0D)
            {
                hash ^= ThirdDerivativeWeight.GetHashCode();
            }
            if (ReferenceLineWeight != 0D)
            {
                hash ^= ReferenceLineWeight.GetHashCode();
            }
            if (NumOutput != 0)
            {
                hash ^= NumOutput.GetHashCode();
            }
            if (CrossLaneLateralExtension != 0D)
            {
                hash ^= CrossLaneLateralExtension.GetHashCode();
            }
            if (CrossLaneLongitudinalExtension != 0D)
            {
                hash ^= CrossLaneLongitudinalExtension.GetHashCode();
            }
            if (HistoryPathWeight != 0D)
            {
                hash ^= HistoryPathWeight.GetHashCode();
            }
            if (LaneChangeMidL != 0D)
            {
                hash ^= LaneChangeMidL.GetHashCode();
            }
            if (PointConstraintSPosition != 0D)
            {
                hash ^= PointConstraintSPosition.GetHashCode();
            }
            if (LaneChangeLateralShift != 0D)
            {
                hash ^= LaneChangeLateralShift.GetHashCode();
            }
            if (UturnSpeedLimit != 0D)
            {
                hash ^= UturnSpeedLimit.GetHashCode();
            }
            return(hash);
        }