// 1) If we have "careful" speed hint set, use CarefulExtrudeSpeed
        //       (currently this is only set on first layer)
        public virtual double SelectSpeed(FillBase pathCurve)
        {
            double speed = SpeedHint == SpeedHint.Careful ?
                           Settings.Part.CarefulExtrudeSpeed : Settings.Part.RapidExtrudeSpeed;

            return(pathCurve.FillType.ModifySpeed(speed, SpeedHint));
        }
Example #2
0
 public virtual void CopyProperties(FillBase other)
 {
     FillType       = other.FillType;
     FillThickness  = other.FillThickness;
     IsHoleShell    = other.IsHoleShell;
     PerimeterOrder = other.PerimeterOrder;
 }
        protected static Vector2d GetFillDimensions(FillBase curve)
        {
            Vector2d dimensions = GCodeUtil.UnspecifiedDimensions;

            if (curve.FillThickness > 0)
            {
                dimensions.x = curve.FillThickness;
            }
            return(dimensions);
        }
Example #4
0
        public void Append(FillBase element)
        {
            switch (element)
            {
            case FillLoop loop:
                Append(loop);
                break;

            case FillCurve curve:
                Append(curve);
                break;

            default:
                throw new NotImplementedException($"FillCurveSet2d.Append encountered unexpected type {element.GetType()}");
            }
        }