public double MinPointSpacingMM = 0.1; // Avoid emitting gcode extrusion points closer than this spacing. // This is a workaround for the fact that many printers do not gracefully // handle very tiny sequential extrusion steps. This setting could be // configured using CalibrationModelGenerator.MakePrintStepSizeTest() with // all other cleanup steps disabled. // [TODO] this is actually speed-dependent... public override T CloneAs <T>() { FFFMachineInfo fi = new FFFMachineInfo(); this.CopyFieldsTo(fi); return(fi as T); }
protected virtual void CopyFieldsTo(FFFMachineInfo to) { base.CopyFieldsTo(to); to.NozzleDiamMM = this.NozzleDiamMM; to.FilamentDiamMM = this.FilamentDiamMM; to.MinLayerHeightMM = this.MinLayerHeightMM; to.MaxHeightMM = this.MaxHeightMM; to.MinExtruderTempC = this.MaxExtruderTempC; to.HasHeatedBed = this.HasHeatedBed; to.MinBedTempC = this.MinBedTempC; to.MaxBedTempC = this.MaxBedTempC; to.MaxExtrudeSpeedMMM = this.MaxExtrudeSpeedMMM; to.MaxTravelSpeedMMM = this.MaxTravelSpeedMMM; to.MaxZTravelSpeedMMM = this.MaxZTravelSpeedMMM; to.MaxRetractSpeedMMM = this.MaxRetractSpeedMMM; to.MinPointSpacingMM = this.MinPointSpacingMM; to.EnableAutoBedLeveling = this.EnableAutoBedLeveling; to.HasAutoBedLeveling = this.HasAutoBedLeveling; to.ManufacturerName = this.ManufacturerName; to.ManufacturerUUID = this.ManufacturerUUID; to.ModelIdentifier = this.ModelIdentifier; to.ModelUUID = this.ModelUUID; to.Class = this.Class; to.BedSizeXMM = this.BedSizeXMM; to.BedSizeYMM = this.BedSizeYMM; to.MaxHeightMM = this.MaxHeightMM; }
public BaseDepositionAssembler(GCodeBuilder useBuilder, FFFMachineInfo machineInfo) { Builder = useBuilder; currentPos = Vector3d.Zero; lastPos = Vector3d.Zero; extruderA = 0; currentFeed = 0; MinExtrudeStepDistance = machineInfo.MinPointSpacingMM; }
public BaseDepositionAssembler(GCodeBuilder useBuilder, FFFMachineInfo machineInfo) { Builder = useBuilder; currentPos = Vector3d.Zero; lastPos = Vector3d.Zero; extruderA = 0; currentFeed = 0; Vector2d originRepositioning = new Vector2d(machineInfo.BedOriginFactorX, machineInfo.BedOriginFactorY); Vector2d bedSize = new Vector2d(machineInfo.BedSizeXMM, machineInfo.BedSizeYMM); PositionShift = originRepositioning * bedSize; MinExtrudeStepDistance = machineInfo.MinPointSpacingMM; }
public BaseMillingAssembler(GCodeBuilder useBuilder, FFFMachineInfo machineInfo) { Builder = useBuilder; currentPos = Vector3d.Zero; currentFeed = 0; }