sketchucation logo sketchucation
    • Login
    ℹ️ Licensed Extensions | FredoBatch, ElevationProfile, FredoSketch, LayOps, MatSim and Pic2Shape will require license from Sept 1st More Info

    [PlugIn] 3D Printers G-Code importer/Exporter Ver0.0.9

    Scheduled Pinned Locked Moved Plugins
    29 Posts 13 Posters 41.7k Views 13 Watching
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • Dan RathbunD Offline
      Dan Rathbun
      last edited by

      When choosing a file to import... and clicking the "Options..." button (in the import file dialog,) I get an error:

      Error: #<NoMethodError: undefined method[]' for nil:NilClass>
      C:/Program Files/Google/Google SketchUp 8/Plugins/Fishelzon/GcodeImporterVer0.0.3.rb:262:in units_dialog' C:/Program Files/Google/Google SketchUp 8/Plugins/Fishelzon/GcodeImporterVer0.0.3.rb:102:in do_options'`

      The error occurs on line 262 of the plugin file, viz:
      cu = Sketchup.active_model.options["unitsOptions"]["LengthUnit"]

      Reason: The Sketchup::OptionsManager instance method [] returns a valid Sketchup::OptionsProvider instance object IF the key is valid, otherwise it returns nil (the singleton instance of the NilClass class.)
      Since the key is invalid, nil is returned, and since the NilClass class does not have a [] instance method, the NoMethodError exception is raised.

      The valid key name to get a reference to the units options provider is "UnitsOptions"


      NOW... there are ONLY TWO possible import units in a Gcode file.. inches (G20) and mm (G21), so can the plugin set mm as default, and then recognize the Gcodes G20 and G21, to change the import units "on-the-fly" as needed ?

      This would actually make the import file options dialog unnecessary (at least when it comes to setting import units.)
      💭

      I'm not here much anymore.

      1 Reply Last reply Reply Quote 0
      • Dan RathbunD Offline
        Dan Rathbun
        last edited by

        Key for saving defaults:

        It is preferable to use underscore "" instead of spaces, and to prepend "Plugin" to the key, thus:

        "Plugin_Fishelzon_GcodeImporter"

        I'm not here much anymore.

        1 Reply Last reply Reply Quote 0
        • D Offline
          Davidfi1
          last edited by

          OK Guys - Thank you.
          I fixed the code according to your suggestions in the next version
          I added a "last version" load to the loader and updated the version number.
          Waiting for yor remarks befor moving on.

          I am thinking about how to implement a "G-Code exporter"
          I need to figure out a way to keep the unused G-Code lines.
          The adding of these lines will enable the exporter to put these lines
          back to the exported G-Code.

          1 Reply Last reply Reply Quote 0
          • Didier BurD Offline
            Didier Bur
            last edited by

            Hi,
            Call me stupid but how to launch the script ??

            DB

            1 Reply Last reply Reply Quote 0
            • thomthomT Offline
              thomthom
              last edited by

              @didier bur said:

              Hi,
              Call me stupid but how to launch the script ??

              It's an importer, you find in the list of import formats. File > Import and in the file dialogue you pick the fileformat for G code.

              Thomas Thomassen — SketchUp Monkey & Coding addict
              List of my plugins and link to the CookieWare fund

              1 Reply Last reply Reply Quote 0
              • D Offline
                Davidfi1
                last edited by

                Uploaded vertion 0.0.5.
                Include impruvment to speed and rendering

                Please let me know if you like it 😄

                1 Reply Last reply Reply Quote 0
                • Dan RathbunD Offline
                  Dan Rathbun
                  last edited by

                  Line 117:
                  if (Sketchup.version_number < 7)

                  should be:
                  if (Sketchup.version.to_i < 7)

                  Line 135:

                  # wait forever
                  while 1==1 do 
                  end # while 1
                  
                  

                  That is dangerous! It could lock up SketchUp if an error occurs, causing file handles to remain open.

                  Use a continue messagebox instead.

                  And you should return a numeric error code instead of 0 when an exception occurs.

                  I'm not here much anymore.

                  1 Reply Last reply Reply Quote 0
                  • Dan RathbunD Offline
                    Dan Rathbun
                    last edited by

                    @davidfi1 said:

                    Uploaded vertion 0.0.5.
                    Include improvment to speed and rendering

                    Just so you know...

                    The native Ruby Console, is not actually a "true console interface".
                    It is really a dialog with a non-editable multi-line text control.
                    Writing output to the text control is VERY slow, and gets SLOWER the more that is written.

                    (*) Write only what you NEED to.
                    OR ...
                    Perhaps write output to a log file instead, and after the import, display the log file's text in a Webdialog frame. (The browser can display plain text files.)

                    I'm not here much anymore.

                    1 Reply Last reply Reply Quote 0
                    • D Offline
                      Davidfi1
                      last edited by

                      Dan.
                      Thank you, you are very helpfull.
                      I don't really know what to do with these errors in the G-Code I am getting.
                      It is not even correct to say they are errors at all.
                      I use the ruby console as a very simple "information console"
                      There is nothing to do with these "errors" just know about them...

                      If somone don't want to see these messages he could just close the console.

                      In the following versions I will not open the ruby console at all.

                      Thank you again.
                      David.

                      1 Reply Last reply Reply Quote 0
                      • D Offline
                        Davidfi1
                        last edited by

                        @dan rathbun said:

                        Line 117:
                        Line 135:

                        # wait forever
                        > while 1==1 do 
                        > end # while 1
                        > 
                        

                        That is dangerous! It could lock up SketchUp if an error occurs, causing file handles to remain open.

                        will do.
                        Thank you.

                        1 Reply Last reply Reply Quote 0
                        • D Offline
                          Davidfi1
                          last edited by

                          New Version 0.0.6 posted
                          Thank you.

                          1 Reply Last reply Reply Quote 0
                          • A Offline
                            antoninoion
                            last edited by

                            I'm getting the following error in the ruby console every time I start SU and it doesn’t show the G-code file type in the import file types list:

                            GcodeImporterVer0.0.6.rb:38: warning: Object#type is deprecated; use Object#class

                            I installed the plugin through the "Preferences/Extensions/Install Extension" option. I have SU V8.0.16845 for Mac, any idea on what I should do?

                            Thanks
                            Antonio

                            1 Reply Last reply Reply Quote 0
                            • D Offline
                              Davidfi1
                              last edited by

                              @antoninoion said:

                              I'm getting the following error in the ruby console every time I start SU and it doesn’t show the G-code file type in the import file types list:

                              GcodeImporterVer0.0.6.rb:38: warning: Object#type is deprecated; use Object#class

                              I installed the plugin through the "Preferences/Extensions/Install Extension" option. I have SU V8.0.16845 for Mac, any idea on what I should do?

                              Thanks
                              Antonio

                              I found the problem - fixing it soon.
                              change line 38 from:
                              if @ent.type == Sketchup::Edge
                              to:
                              if @ent.class == Sketchup::Edge

                              But wait for more testing - I will post a fix soon
                              Thank you.

                              1 Reply Last reply Reply Quote 0
                              • D Offline
                                Davidfi1
                                last edited by

                                Version 0.0.7
                                Now we have a G-Code Exporter of the previously imported G-Code in the plugin menu.
                                So I changed the name to GcodeTools ... (please delete the old one)
                                The new exporter is a very simple assuming that in the next versions will be
                                adding all the needed features to make it usable

                                • so please let me know what need's to be fixed!.
                                1 Reply Last reply Reply Quote 0
                                • D Offline
                                  Davidfi1
                                  last edited by

                                  Version 0.0.8
                                  Added to the exporter the ability to connect "unconnected" components
                                  so now if a component is deleted - the exporter will just put a link to the
                                  first component of the disconnected chain

                                  1 Reply Last reply Reply Quote 0
                                  • D Offline
                                    Davidfi1
                                    last edited by

                                    Version 0.0.9
                                    New in Importer:
                                    Will put a Attribute with the value of speed from the imported G-Code in the
                                    "filament" & "MotorMove" components
                                    Change the Z scale of the "filament" component according to the amount of
                                    extruded filament in the imported G-Code
                                    New in Exporter:
                                    Export to the G-Code the Attribute of speed as was imported by the importer.
                                    Export the Extruded length according to the Z scale of the "filament" component

                                    1 Reply Last reply Reply Quote 0
                                    • D Offline
                                      Davidfi1
                                      last edited by

                                      What should the next feature be?
                                      If you have an idea, I will be very happy to try implementing it.

                                      1 Reply Last reply Reply Quote 0
                                      • J Offline
                                        Jim
                                        last edited by

                                        @davidfi1 said:

                                        What should the next feature be?
                                        If you have an idea, I will be very happy to try implementing it.

                                        Animate a model of a cnc machine from the gcode.

                                        Hi

                                        1 Reply Last reply Reply Quote 0
                                        • D Offline
                                          Davidfi1
                                          last edited by

                                          @jim said:

                                          @davidfi1 said:

                                          What should the next feature be?
                                          If you have an idea, I will be very happy to try implementing it.

                                          Animate a model of a cnc machine from the gcode.

                                          Did you try to import CNC G-Code?
                                          Can you explain what was the problem?
                                          Do you have an idea how it should work if it was working correctly?

                                          1 Reply Last reply Reply Quote 0
                                          • D Offline
                                            dooseyboy
                                            last edited by

                                            i have attempted this plugin in 2013, about to try it in 8 pro.
                                            thought i should bring this little web app that i found recently.
                                            it is a gcode viewer and i was hoping to use it to view the gcode i exported from sketchup in it but it doesn't seem to be working from being exported in 2013.
                                            http://jherrm.github.io/gcode-viewer/

                                            neither of the gcode files i exported from regular sketchup files worked in the simulator. but i am keen to use this addon to use the simulation app

                                            1 Reply Last reply Reply Quote 0
                                            • 1
                                            • 2
                                            • 2 / 2
                                            • First post
                                              Last post
                                            Buy SketchPlus
                                            Buy SUbD
                                            Buy WrapR
                                            Buy eBook
                                            Buy Modelur
                                            Buy Vertex Tools
                                            Buy SketchCuisine
                                            Buy FormFonts

                                            Advertisement