Exemplo n.º 1
0
    def onChanged(self,obj,prop):
        mode = 2
        obj.setEditorMode('Placement',mode)

        if prop == "PostProcessor":
            sys.path.append(os.path.split(obj.PostProcessor)[0])
            lessextn = os.path.splitext(obj.PostProcessor)[0]
            postname = os.path.split(lessextn)[1]

            exec "import %s as current_post" % postname
            if hasattr (current_post, "UNITS"): 
                if current_post.UNITS == "G21":
                    obj.MachineUnits = "Metric"
                else:
                    obj.MachineUnits = "Inch"
            if hasattr (current_post, "MACHINE_NAME"): obj.MachineName = current_post.MACHINE_NAME

            if hasattr (current_post, "CORNER_MAX"):
                obj.X_Max = current_post.CORNER_MAX['x']
                obj.Y_Max = current_post.CORNER_MAX['y']
                obj.Z_Max = current_post.CORNER_MAX['z']

            if hasattr (current_post, "CORNER_MIN"): 
                obj.X_Min = current_post.CORNER_MIN['x']
                obj.Y_Min = current_post.CORNER_MIN['y']
                obj.Z_Min = current_post.CORNER_MIN['z']

        if prop == "Tooltable":
            proj = PathUtils.findProj()            
            for g in proj.Group:
                if not(isinstance(g.Proxy, PathScripts.PathMachine.Machine)):
                    g.touch()
Exemplo n.º 2
0
    def Create(pathChildren=[]):
        """Code to create a project"""
        # FreeCADGui.addModule("PathScripts.PathProject")
        import PathScripts.PathUtils as PU
        if not PU.findProj() is None:
            FreeCAD.Console.PrintError(
                "A Path project already exists in this document\n")
            return

        obj = FreeCAD.ActiveDocument.addObject(
            "Path::FeatureCompoundPython", "Project")
        ObjectPathProject(obj)
        if pathChildren:
            for child in pathChildren:
                pathChildren.append(FreeCAD.ActiveDocument.getObject(obj.Name))
            obj.Group = pathChildren
        ViewProviderProject(obj.ViewObject)

        # create a machine obj
        import PathScripts
        PathScripts.PathMachine.CommandPathMachine.Create()
        PathScripts.PathLoadTool.CommandPathLoadTool.Create()

        return obj
Exemplo n.º 3
0
    def Create(pathChildren=[]):
        """Code to create a project"""
        # FreeCADGui.addModule("PathScripts.PathProject")
        import PathScripts.PathUtils as PU
        if not PU.findProj() is None:
            FreeCAD.Console.PrintError(
                "A Path project already exists in this document\n")
            return

        obj = FreeCAD.ActiveDocument.addObject("Path::FeatureCompoundPython",
                                               "Project")
        ObjectPathProject(obj)
        if pathChildren:
            for child in pathChildren:
                pathChildren.append(FreeCAD.ActiveDocument.getObject(obj.Name))
            obj.Group = pathChildren
        ViewProviderProject(obj.ViewObject)

        # create a machine obj
        import PathScripts
        PathScripts.PathMachine.CommandPathMachine.Create()
        PathScripts.PathLoadTool.CommandPathLoadTool.Create()

        return obj