# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with Printrun. If not, see <http://www.gnu.org/licenses/>. import cmd, sys import glob, os, time, datetime import sys, subprocess import math, codecs from math import sqrt from gcoder import GCode import printcore from printrun.printrun_utils import install_locale install_locale('pronterface') if os.name == "nt": try: import _winreg except: pass READLINE = True try: import readline try: readline.rl.mode.show_all_if_ambiguous = "on" #config pyreadline on windows except: pass except: READLINE = False #neither readline module is available
# (at your option) any later version. # # Printrun is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with Printrun. If not, see <http://www.gnu.org/licenses/>. # Set up Internationalization using gettext # searching for installed locales on /usr/share; uses relative folder if not found (windows) import os, Queue, re from printrun.printrun_utils import install_locale install_locale('plater') import wx import time import random import threading import math import sys from printrun import stltool from printrun.printrun_utils import pixmapfile glview = False if "-nogl" not in sys.argv: try: from printrun import stlview
# # Printrun is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with Printrun. If not, see <http://www.gnu.org/licenses/>. import os # Set up Internationalization using gettext # searching for installed locales on /usr/share; uses relative folder if not found (windows) from printrun.printrun_utils import install_locale install_locale('plater') import wx import time import threading import math import sys import traceback from printrun import stltool from printrun.objectplater import Plater glview = False if "-nogl" not in sys.argv: try: from printrun import stlview
import logging from ctypes import sizeof from pyglet.gl import glPushMatrix, glPopMatrix, glTranslatef, \ glGenLists, glNewList, GL_COMPILE, glEndList, glCallList, \ GL_ELEMENT_ARRAY_BUFFER, GL_UNSIGNED_INT, GL_TRIANGLES, GL_LINE_LOOP, \ GL_ARRAY_BUFFER, GL_STATIC_DRAW, glColor4f, glVertex3f, glRectf, \ glBegin, glEnd, GL_LINES, glEnable, glDisable, glGetFloatv, \ GL_LINE_SMOOTH, glLineWidth, GL_LINE_WIDTH, GLfloat, GL_FLOAT, GLuint, \ glVertexPointer, glColorPointer, glDrawArrays, glDrawRangeElements, \ glEnableClientState, glDisableClientState, GL_VERTEX_ARRAY, GL_COLOR_ARRAY from pyglet.graphics.vertexbuffer import create_buffer, VertexBufferObject from printrun.printrun_utils import install_locale install_locale('pronterface') def vec(*args): return (GLfloat * len(args))(*args) def compile_display_list(func, *options): display_list = glGenLists(1) glNewList(display_list, GL_COMPILE) func(*options) glEndList() return display_list def numpy2vbo(nparray, target = GL_ARRAY_BUFFER, usage = GL_STATIC_DRAW, use_vbos = True): vbo = create_buffer(nparray.nbytes, target = target, usage = usage, vbo = use_vbos) vbo.bind() vbo.set_data(nparray.ctypes.data)
except: print _("WX is not installed. This program requires WX to run.") raise global buttonSize buttonSize = (70, 25) # Define sizes for the buttons on top rows from printrun import gviz from printrun.xybuttons import XYButtons from printrun.zbuttons import ZButtons from printrun.graph import Graph from printrun.pronterface_widgets import TempGauge from printrun.printrun_utils import install_locale install_locale("pronterface") def make_button(parent, label, callback, tooltip, container=None, size=wx.DefaultSize, style=0): button = wx.Button(parent, -1, label, style=style, size=size) button.Bind(wx.EVT_BUTTON, callback) button.SetToolTip(wx.ToolTip(tooltip)) if container: container.Add(button) return button def make_sized_button(*args): return make_button(*args, size=buttonSize)