public SingleMaterialFFFCompiler(GCodeBuilder builder, SingleMaterialFFFSettings settings, AssemblerFactoryF AssemblerF) { Builder = builder; Settings = settings; this.AssemblerF = AssemblerF; featureTypeLabeler = CreateFeatureTypeLabeler(); }
public static BaseDepositionAssembler Factory( GCodeBuilder builder, IPrintProfileFFF settings) { var asm = new RepRapAssembler(builder, settings); asm.HeaderCustomizerF = (state, builder) => HeaderCustomF(settings as IPrintProfileFFF, state, builder); return(asm); }
public RepRapAssembler(GCodeBuilder useBuilder, SingleMaterialFFFSettings settings) : base(useBuilder, settings.Machine) { Settings = settings; OmitDuplicateZ = true; OmitDuplicateF = true; OmitDuplicateE = true; }
public GenericMillingAssembler(GCodeBuilder useBuilder, SingleMaterialFFFSettings settings) : base(useBuilder, settings.Machine) { Settings = settings; OmitDuplicateZ = true; OmitDuplicateF = true; HomeSequenceF = StandardHomeSequence; }
public GenericMillingAssembler(GCodeBuilder useBuilder, IPrintProfileFFF settings) : base(useBuilder, settings.Machine) { Settings = settings; OmitDuplicateZ = true; OmitDuplicateF = true; HomeSequenceF = StandardHomeSequence; }
public static BaseDepositionAssembler Factory( GCodeBuilder builder, IPrintProfileFFF settings) { var asm = new RepRapAssembler(builder, settings); asm.HomeSequenceF = (builder) => HomeSequence(builder, settings); asm.HeaderCustomizerF = HeaderCustomF; asm.TravelGCode = 1; return(asm); }
public BaseDepositionAssembler(GCodeBuilder useBuilder, FFFMachineInfo machineInfo) { Builder = useBuilder; currentPos = Vector3d.Zero; lastPos = Vector3d.Zero; extruderA = 0; currentFeed = 0; MinExtrudeStepDistance = machineInfo.MinPointSpacingMM; }
private static void HeaderCustomF( IPrintProfileFFF settings, RepRapAssembler.HeaderState state, GCodeBuilder builder) { if (state == RepRapAssembler.HeaderState.BeforePrime) { if (settings.Machine.HasAutoBedLeveling && settings.Machine.EnableAutoBedLeveling) { builder.BeginGLine(29, "auto-level bed"); } } }
public RepRapAssembler(GCodeBuilder useBuilder, IPrintProfileFFF settings) : base(useBuilder, settings.Machine) { Settings = settings; OmitDuplicateZ = true; OmitDuplicateF = true; OmitDuplicateE = true; HomeSequenceF = StandardHomeSequence; UseFirmwareRetraction = settings.Part.UseFirmwareRetraction; }
public override void Initialize(PrintMeshAssembly meshes, PlanarSliceStack slices, SingleMaterialFFFSettings settings, AssemblerFactoryF overrideAssemblerF = null) { file_accumulator = new GCodeFileAccumulator(); builder = new GCodeBuilder(file_accumulator); AssemblerFactoryF useAssembler = overrideAssemblerF ?? settings.AssemblerType(); compiler = new SingleMaterialFFFCompiler(builder, settings, useAssembler); Initialize(meshes, slices, settings, compiler); }
public RepRapAssembler(GCodeBuilder useBuilder, SingleMaterialFFFSettings settings) : base(useBuilder, settings.Machine) { Settings = settings; OmitDuplicateZ = true; OmitDuplicateF = true; OmitDuplicateE = true; HomeSequenceF = StandardHomeSequence; UseFirmwareRetraction = settings.UseFirmwareRetraction; }
public MakerbotAssembler(GCodeBuilder useBuilder, SingleMaterialFFFSettings settings) : base(useBuilder, settings.Machine) { Settings = settings as SingleMaterialFFFSettings; PositionBounds = new AxisAlignedBox2d(settings.Machine.BedSizeXMM, settings.Machine.BedSizeYMM); PositionBounds.Translate(-PositionBounds.Center); // [RMS] currently bed dimensions are hardcoded in header setup, and this trips bounds-checker. // So, disable this checking for now. EnableBoundsChecking = false; TravelGCode = 1; }
public MakerbotAssembler(GCodeBuilder useBuilder, SingleMaterialFFFSettings settings) : base(useBuilder, settings.Machine) { if (settings is MakerbotSettings == false) { throw new Exception("MakerbotAssembler: incorrect settings type!"); } Settings = settings as MakerbotSettings; PositionBounds = new AxisAlignedBox2d(settings.Machine.BedSizeXMM, settings.Machine.BedSizeYMM); PositionBounds.Translate(-PositionBounds.Center); TravelGCode = 1; }
private static void HomeSequence(GCodeBuilder builder, IPrintProfileFFF profile) { if (profile.Machine.HasAutoBedLeveling && profile.Machine.EnableAutoBedLeveling) { builder.BeginGLine(28).AppendL("W").AppendComment("home all without bed level"); builder.BeginGLine(80, "auto-level bed"); } else { // standard home sequenece builder.BeginGLine(28, "home x/y").AppendI("X", 0).AppendI("Y", 0); builder.BeginGLine(28, "home z").AppendI("Z", 0); } }
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 BaseDepositionAssembler(GCodeBuilder useBuilder, MachineProfileFFF machine) { Builder = useBuilder; currentPos = Vector3d.Zero; lastPos = Vector3d.Zero; extruderA = 0; currentFeed = 0; var originRepositioning = new Vector2d( MachineBedOriginLocationUtility.LocationXFromEnum(machine.OriginX), MachineBedOriginLocationUtility.LocationYFromEnum(machine.OriginY)); var bedSize = new Vector2d(machine.BedSizeXMM, machine.BedSizeYMM); PositionShift = originRepositioning * bedSize; MinExtrudeStepDistance = machine.MinPointSpacingMM; }
private static void HeaderCustomF(RepRapAssembler.HeaderState state, GCodeBuilder Builder) { if (state == RepRapAssembler.HeaderState.AfterComments) { Builder.BeginMLine(201) .AppendI("X", 1000).AppendI("Y", 1000).AppendI("Z", 200).AppendI("E", 5000) .AppendComment("Set maximum accelleration in mm/sec^2"); Builder.BeginMLine(203) .AppendI("X", 200).AppendI("Y", 200).AppendI("Z", 12).AppendI("E", 120) .AppendComment("Set maximum feedrates in mm/sec"); Builder.BeginMLine(204) .AppendI("S", 1250).AppendI("T", 1250) .AppendComment("Set acceleration for moves (S) and retract (T)"); Builder.BeginMLine(205) .AppendF("X", 10).AppendF("Y", 10).AppendF("Z", 0.4).AppendF("E", 2.5) .AppendComment("Set jerk limits in mm/sec"); Builder.BeginMLine(205) .AppendI("S", 0).AppendI("T", 0) .AppendComment("Set minimum extrude and travel feed rate in mm/sec"); } }
public virtual void StandardHomeSequence(GCodeBuilder builder) { Builder.BeginGLine(28, "home x/y").AppendI("X", 0).AppendI("Y", 0); Builder.BeginGLine(28, "home z").AppendI("Z", 0); }
public static BaseDepositionAssembler Factory(GCodeBuilder builder, SingleMaterialFFFSettings settings) { return(new RepRapAssembler(builder, settings)); }
public static BaseMillingAssembler Factory(GCodeBuilder builder, SingleMaterialFFFSettings settings) { return(new GenericMillingAssembler(builder, settings)); }
public BaseThreeAxisMillingCompiler(GCodeBuilder builder, IPrintProfileFFF settings, MillingAssemblerFactoryF AssemblerF) { Builder = builder; Settings = settings; this.AssemblerF = AssemblerF; }
public BaseMillingAssembler(GCodeBuilder useBuilder, FFFMachineInfo machineInfo) { Builder = useBuilder; currentPos = Vector3d.Zero; currentFeed = 0; }
public SingleMaterialFFFCompiler(GCodeBuilder builder, SingleMaterialFFFSettings settings, AssemblerFactoryF AssemblerF) { Builder = builder; Settings = settings; this.AssemblerF = AssemblerF; }
public static BaseDepositionAssembler Factory(GCodeBuilder builder, IPrintProfileFFF settings) { return(new RepRapAssembler(builder, settings)); }
public BaseThreeAxisMillingCompiler(GCodeBuilder builder, SingleMaterialFFFSettings settings, MillingAssemblerFactoryF AssemblerF) { Builder = builder; Settings = settings; this.AssemblerF = AssemblerF; }
public static BaseMillingAssembler Factory(GCodeBuilder builder, IPrintProfileFFF settings) { return(new GenericMillingAssembler(builder, settings)); }