Python Forum
Using Python to add text lines in a gcode file
Thread Rating:
  • 2 Vote(s) - 4 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Using Python to add text lines in a gcode file
#4
Based on the examples here

https://github.com/nallath/PostProcessingPlugin


# Copyright (c) 2017 Boyan Kolev
# The PostProcessingPlugin is released under the terms of the AGPLv3 or higher.
 
from ..Script import Script
 
class InsertTextEveryLayer(Script):
    def getSettingDataString(self):
        return """{
            "name": "Insert Text in Every Layer",
            "key": "InsertText",
            "metadata": {},
            "version": 1,
            "settings":
            {
                "insert text":
                {
                    "label": "Insert Text",
                    "description": "This text will be inserted in each layer.",
                    "type": "str",
                    "default_value": ""
                },
                "insert at":
                {
                    "label": "Insert at line",
                    "description": "Number of the line (0-based) at which to insert the text.",
                    "type": "int",
                    "default_value": "3"
                },
            }
        }"""
 
    def _process_layer(self, layer):
        insert_text = self.getSettingValueByKey("insert text")
        insert_at = self.getSettingValueByKey("insert at")
        layer = layer.split("\n")
        layer.insert(insert_at, insert_text)
        return "\n".join(layer)
 
    def execute(self, data):
        return [self._process_layer(layer) for layer in data]
data is list of layers as str. I assume layers look like this

Output:
;LAYER:0   M106 S255   G0 F3600 X99.873 Y99.731 Z0.3   G0 X100 Y50   G1 F100 X100 Y10   G1 F20 X110 Y10   G1 F100 X110 Y170   G1 F100 X110 Y10   G1 F20 X100 Y10   G0 X100 Y50   ;TYPE:WALL-INNER   G1 F1800 X100.034 Y99.574 E0.02699   G1 X100.225 Y99.441 E0.05491   G1 X100.445 Y99.339 E0.08401   ;TIME_ELAPSED:18.234693
i.e. first line is the line of layer index. If this is not the case default value for 'insert at' should be decreased by 1

Note that I'm not able to test. I reserve the right to submit pull request to the above repo.
Reply


Messages In This Thread
RE: Using Python to add text lines in a gcode file - by buran - May-18-2017, 05:02 PM

Possibly Related Threads…
Thread Author Replies Views Last Post
  Replace a text/word in docx file using Python Devan 4 3,471 Oct-17-2023, 06:03 PM
Last Post: Devan
  save values permanently in python (perhaps not in a text file)? flash77 8 1,250 Jul-07-2023, 05:44 PM
Last Post: flash77
  What are these python lines for? What are tey doing? Led_Zeppelin 7 1,632 Feb-13-2023, 03:08 PM
Last Post: deanhystad
Thumbs Up Need to compare the Excel file name with a directory text file. veeran1991 1 1,134 Dec-15-2022, 04:32 PM
Last Post: Larz60+
  Delete multiple lines from txt file Lky 6 2,314 Jul-10-2022, 12:09 PM
Last Post: jefsummers
  Modify values in XML file by data from text file (without parsing) Paqqno 2 1,701 Apr-13-2022, 06:02 AM
Last Post: Paqqno
  Editing text between two string from different lines Paqqno 1 1,323 Apr-06-2022, 10:34 PM
Last Post: BashBedlam
  failing to print not matched lines from second file tester_V 14 6,112 Apr-05-2022, 11:56 AM
Last Post: codinglearner
  Extracting Specific Lines from text file based on content. jokerfmj 8 3,044 Mar-28-2022, 03:38 PM
Last Post: snippsat
  Converted Pipe Delimited text file to CSV file atomxkai 4 7,018 Feb-11-2022, 12:38 AM
Last Post: atomxkai

Forum Jump:

User Panel Messages

Announcements
Announcement #1 8/1/2020
Announcement #2 8/2/2020
Announcement #3 8/6/2020