diff --git a/plugins/GCODEReader/GCODEReader.py b/plugins/GCODEReader/GCODEReader.py new file mode 100644 index 0000000000..ce6fd9075e --- /dev/null +++ b/plugins/GCODEReader/GCODEReader.py @@ -0,0 +1,40 @@ +# Copyright (c) 2015 Ultimaker B.V. +# Copyright (c) 2013 David Braam +# Uranium is released under the terms of the AGPLv3 or higher. + +from UM.Mesh.MeshReader import MeshReader +from UM.Mesh.MeshBuilder import MeshBuilder +import os +from UM.Scene.SceneNode import SceneNode +from UM.Math.Vector import Vector + +from UM.Job import Job + +class GCODEReader(MeshReader): + def __init__(self): + super(GCODEReader, self).__init__() + self._supported_extensions = [".gcode", ".g"] + + def read(self, file_name): + scene_node = None + + extension = os.path.splitext(file_name)[1] + if extension.lower() in self._supported_extensions: + scene_node = SceneNode() + + mesh_builder = MeshBuilder() + mesh_builder.setFileName(file_name) + + mesh_builder.addCube( + width=5, + height=5, + depth=5, + center=Vector(0, 2.5, 0) + ) + + scene_node.setMeshData(mesh_builder.build()) + + scene_node.setEnabled(False) + scene_node.setSelectable(False) + + return scene_node diff --git a/plugins/GCODEReader/__init__.py b/plugins/GCODEReader/__init__.py new file mode 100644 index 0000000000..f1572c077f --- /dev/null +++ b/plugins/GCODEReader/__init__.py @@ -0,0 +1,32 @@ +# Copyright (c) 2015 Ultimaker B.V. +# Uranium is released under the terms of the AGPLv3 or higher. + +#Shoopdawoop +from . import GCODEReader + +from UM.i18n import i18nCatalog +i18n_catalog = i18nCatalog("uranium") + +def getMetaData(): + return { + "plugin": { + "name": i18n_catalog.i18nc("@label", "GCODE Reader"), + "author": "Victor Larchenko", + "version": "1.0", + "description": i18n_catalog.i18nc("@info:whatsthis", "Makes it possbile to read GCODE files."), + "api": 3 + }, + "mesh_reader": [ + { + "extension": "gcode", + "description": i18n_catalog.i18nc("@item:inlistbox", "GCODE File") + }, + { + "extension": "g", + "description": i18n_catalog.i18nc("@item:inlistbox", "GCODE File") + } + ] + } + +def register(app): + return { "mesh_reader": GCODEReader.GCODEReader() }