Last active
August 12, 2021 23:51
-
-
Save mario52a/3d719574089a5f9044ec to your computer and use it in GitHub Desktop.
This macro convert the object line, wire in line Dash, DashDot, DashDotDot, Zigzag, Hand with the dimensions given.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# -*- coding: utf-8 -*- | |
from __future__ import unicode_literals | |
from __future__ import division | |
""" | |
*************************************************************************** | |
* Copyright (c) 2014 2015 2016 2017 2018 2019 2020 <mario52> * | |
* * | |
* This file is a supplement to the FreeCAD CAx development system. * | |
* * | |
* This program is free software; you can redistribute it and/or modify * | |
* it under the terms of the GNU Lesser General Public License (LGPL) * | |
* as published by the Free Software Foundation; either version 2 of * | |
* the License, or (at your option) any later version. * | |
* for detail see the LICENCE text file. * | |
** ** | |
* Use at your own risk. The author assumes no liability for data loss. * | |
* It is advised to backup your data frequently. * | |
* If you do not trust the software do not use it. * | |
** ** | |
* This software 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 Library General Public License for more details. * | |
* * | |
* You should have received a copy of the GNU Library General Public * | |
* License along with this macro; if not, write to the Free Software * | |
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * | |
* USA * | |
*************************************************************************** | |
* WARNING! All changes in this file will be lost and * | |
* may cause malfunction of the program * | |
*************************************************************************** | |
""" | |
#Macro_FCConvertLines 03/01/2016 - 18/02/2016 GUI - 05/09/2016 - 11/01/2017 - 20/02/2017 - 13/05/2017 - 09/11/2020 | |
# | |
#OS: Windows 10 (10.0) | |
#Word size of OS: 64-bit | |
#Word size of FreeCAD: 64-bit | |
#Version: 0.19.22894 (Git) | |
#Build type: Release | |
#Branch: master | |
#Hash: 9eb080488d970d313c538473e7272117ea0a7cd1 | |
#Python version: 3.6.8 | |
#Qt version: 5.12.1 | |
#Coin version: 4.0.0a | |
#OCC version: 7.3.0 | |
#Locale: French/Mars (fr_MA) | |
# | |
__title__ = "FCConvertLines" | |
__url__ = "http://www.freecadweb.org/index-fr.html" | |
__Wiki__ = "http://www.freecadweb.org/wiki/index.php?title=Macro_FC_Convert_Lines" | |
__author__ = "Mario52" | |
__version__ = "00.07b" | |
__date__ = "09/11/2020" | |
# | |
import PySide | |
from PySide import QtGui ,QtCore | |
from PySide.QtGui import * | |
from PySide.QtCore import * | |
import Draft, Part, math, PartGui | |
from math import sqrt, pi, sin, cos, asin | |
from FreeCAD import Base | |
import os, time, sys, platform | |
import FreeCAD, FreeCADGui | |
App = FreeCAD | |
Gui = FreeCADGui | |
global emergency ; emergency = 0 | |
try: | |
_fromUtf8 = QtCore.QString.fromUtf8 | |
except AttributeError: | |
def _fromUtf8(s): | |
return s | |
try: | |
_encoding = QtGui.QApplication.UnicodeUTF8 | |
def _translate(context, text, disambig): | |
return QtGui.QApplication.translate(context, text, disambig, _encoding) | |
except AttributeError: | |
def _translate(context, text, disambig): | |
return QtGui.QApplication.translate(context, text, disambig) | |
def errorDialog(msg): | |
diag = QtGui.QMessageBox(QtGui.QMessageBox.Critical,u"Error Message",msg ) | |
diag.setWindowFlags(PySide.QtCore.Qt.WindowStaysOnTopHint) # PySide #cette fonction met la fenêtre en avant | |
diag.exec_() | |
#################################################################################################################### | |
def cutLength(cutLength = 10.0,cutLine = 0, red = 0, green = 0, blue = 0, typeColor = 0, createLine = 1, createPoints = 0, lineWidth = 2.0, pSize = 2.0): | |
#typeColor = 0 (color system) typeColor = 1 (color = red white) | |
global emergency | |
def createLines(numberOfPoints, points, createLine, createPoints): # create lines special cutLength ant cut x lines | |
bicolor = 0 | |
for lin in range(numberOfPoints-1): | |
if typeColor == 1: # type color 0 (color system), 1 (color = red white) | |
if bicolor == 0: | |
red2 = 255.0; green2 = 0.0; blue2 = 0.0 | |
bicolor = 1 | |
else: | |
red2 = 255.0; green2 = 255.0; blue2 = 255.0 | |
bicolor = 0 | |
else: | |
red2 = red; green2 = green; blue2 = blue | |
if createLine == 1: # create line | |
creaLine = [FreeCAD.Vector(points[lin]),FreeCAD.Vector(points[lin+1])] | |
wire = Draft.makeWire(creaLine,closed=False,face=False,support=None) | |
colorize(red2 = red2, green2 = green2, blue2 = blue2) | |
if createPoints == 1: # create points | |
Draft.makePoint( FreeCAD.Vector(points[lin])) | |
colorize(red2 = red2, green2 = green2, blue2 = blue2) | |
if (lin == numberOfPoints-2): | |
Draft.makePoint( FreeCAD.Vector(points[lin+1])) | |
colorize(red2 = red2, green2 = green2, blue2 = blue2) | |
def colorize(red2 = 0, green2 = 0, blue2 = 0): | |
FreeCADGui.activeDocument().activeObject().LineColor = (float(red2)/255,float(green2)/255,float(blue2)/255) # cutToLength | |
FreeCADGui.activeDocument().activeObject().PointColor = (float(red2)/255,float(green2)/255,float(blue2)/255) # cutToLength | |
FreeCADGui.activeDocument().activeObject().ShapeColor = (float(red2)/255,float(green2)/255,float(blue2)/255) # cutToLength | |
FreeCADGui.activeDocument().activeObject().LineWidth = lineWidth | |
FreeCADGui.activeDocument().activeObject().PointSize = pSize | |
if (cutLength + cutLine) != 0: | |
points = []; points[:] = [] | |
points2 = []; points2[:] = [] | |
precision = 10000.0 # permet 4 decimales = 0.0001 | |
cutLength = cutLength * precision | |
try: | |
#######Selectionne un ou des objets vue 3D ou vue combinnee (subObjects complete) getSelection()############################ | |
# compt_Oject = -1 # | |
# selectionObjects = FreeCADGui.Selection.getSelection() # Select an object or primitive getSelection() | |
# for selection in enumerate(selectionObjects): # | |
# compt_Oject += 1 # | |
# compt_Edges = -1 # | |
# for selectedEdge in enumerate(selectionObjects[compt_Oject].Shape.Edges): # Search the "Edges" and their lengths | |
# compt_Edges += 1 # | |
# longueur = (selectionObjects[compt_Oject].Shape.Edges[compt_Edges].Length) * precision # | |
# numberOfPoints = (longueur + 1) # | |
# points = selectionObjects[compt_Oject].Shape.Edges[compt_Edges].discretize(int(numberOfPoints)) # Dicretize | |
############################################################################################################################ | |
#####selection 1 objet ou sous objet a la fois dans la vue 3D getSelectionEx()############################################# | |
selectionObjects = FreeCADGui.Selection.getSelectionEx() # Select an object or sub object getSelectionEx | |
for selection in selectionObjects: # | |
for selectedEdge in selection.SubObjects: # | |
if cutLine != 0: # cut line to x parts | |
points = selectedEdge.Edges[0].discretize(int(cutLine+1)) # Dicretize | |
createLines(len(points), points, createLine, createPoints) | |
else: # cut line to x length | |
longueur = (selectedEdge.Length) * precision | |
numberOfPoints = (longueur + 1) | |
points = selectedEdge.Edges[0].discretize(int(numberOfPoints)) # Dicretize | |
compt = 0 | |
points2 += [points[0]] | |
for ii2 in range(len(points)): | |
try: | |
compt += int(cutLength) | |
points2 += [points[compt]] | |
except Exception: | |
points2 += [points[-1]] | |
points2[-1] = points[-1] | |
break | |
createLines(len(points2), points2, createLine, createPoints) | |
points[:] = [] | |
points2[:] = [] | |
points[:] = [] | |
points2[:] = [] | |
#App.ActiveDocument.ActiveObject.recompute() | |
App.ActiveDocument.recompute() | |
except Exception: | |
FreeCAD.Console.PrintError("can not create"+"\n") | |
emergency = 1 | |
else: | |
FreeCAD.Console.PrintError("Zero not permitted"+"\n") | |
emergency = 1 | |
######################################################################################################################## | |
######################################################################################################################## | |
def handLine(LengthA = 150, HeightB = 2.0, WaveC = 40.0, compLine = 0, red = 0, green = 0, blue = 0, plane = 1, lineWidth = 2.0, pSize = 2.0): | |
global emergency | |
def colorize(): | |
FreeCADGui.activeDocument().activeObject().LineColor = (float(red)/255,float(green)/255,float(blue)/255) | |
FreeCADGui.activeDocument().activeObject().PointColor = (float(red)/255,float(green)/255,float(blue)/255) | |
FreeCADGui.activeDocument().activeObject().ShapeColor = (float(red)/255,float(green)/255,float(blue)/255) | |
FreeCADGui.activeDocument().activeObject().LineWidth = lineWidth | |
FreeCADGui.activeDocument().activeObject().PointSize = pSize | |
if LengthA and HeightB and WaveC != 0: | |
try: | |
points = []; points[:] = [] | |
coor_X = 0.0 | |
coor_Y = 0.0 | |
coor_Z = 0.0 | |
X = 0.0 | |
Y = 0.0 | |
precision = 10.0 | |
while X <= LengthA : | |
points += [FreeCAD.Vector(coor_X,coor_Y,coor_Z)] | |
X += (WaveC / precision) | |
Y = sin(X * WaveC ) | |
coor_X = X | |
coor_Y = Y * (HeightB /2) | |
zz = Draft.makeBSpline(points,closed=False) | |
colorize() | |
if plane == 1: # "XY" | |
zz.Placement = App.Placement(App.Vector(0,0,0), App.Rotation(0,0,0), App.Vector(0,0,0)) | |
zz.Label = " Hand_XY" #zz.Name + " Hand_XY" | |
Gui.activeDocument().activeView().viewTop() | |
if plane == 2: # "YZ" | |
zz.Placement = App.Placement(App.Vector(0,0,0), App.Rotation(90,0,90), App.Vector(0,0,0)) | |
zz.Label = " Hand_YZ" #zz.Name + " Hand_YZ" | |
Gui.activeDocument().activeView().viewRight() | |
if plane == 3: # "XZ" | |
zz.Placement = App.Placement(App.Vector(0,0,0), App.Rotation(0,0,90), App.Vector(0,0,0)) | |
zz.Label = " Hand_XZ" #zz.Name + " Hand_XZ" | |
Gui.activeDocument().activeView().viewFront() | |
points[:] = [] | |
#App.ActiveDocument.ActiveObject.recompute() | |
App.ActiveDocument.recompute() | |
except Exception: | |
FreeCAD.Console.PrintError("can not create"+"\n") | |
emergency = 1 | |
else: | |
FreeCAD.Console.PrintError("Zero not permitted"+"\n") | |
emergency = 1 | |
######################################################################################################################## | |
#################################################################################################################### | |
def zigzagLine(NumberX = 10, BeginA = 2.0, DimensionB = 4.0, GapC = 10.0, HeightD = 2.0, NumberE = 1, compLine = 0, red = 0, green = 0, blue = 0, plane = 1, lineWidth = 2.0, pSize = 2.0): | |
global emergency | |
def colorize(): | |
FreeCADGui.activeDocument().activeObject().LineColor = (float(red)/255,float(green)/255,float(blue)/255) | |
FreeCADGui.activeDocument().activeObject().PointColor = (float(red)/255,float(green)/255,float(blue)/255) | |
FreeCADGui.activeDocument().activeObject().ShapeColor = (float(red)/255,float(green)/255,float(blue)/255) | |
FreeCADGui.activeDocument().activeObject().LineWidth = lineWidth | |
FreeCADGui.activeDocument().activeObject().PointSize = pSize | |
if DimensionB and GapC and HeightD and NumberE != 0: | |
points2 = []; points2[:] = [] | |
points = []; points[:] = [] | |
Longueur = (BeginA * 2) + ((NumberX * (DimensionB + (GapC * NumberE))) - DimensionB) | |
ZigZag = Draft.makeWire([FreeCAD.Vector(0.0,0.0,0.0),FreeCAD.Vector(Longueur,0.0,0.0)],closed=False,face=False,support=None) | |
App.ActiveDocument.ActiveObject.recompute() | |
precision = 100.0 # permet 2 decimales = 0.01 | |
BeginA = BeginA * precision | |
DimensionB = DimensionB * precision | |
GapC = GapC * precision | |
try: | |
Longueur *= precision | |
points = ZigZag.Shape.copy().discretize(int(Longueur)) # Dicretize points base | |
App.ActiveDocument.removeObject(ZigZag.Name) # remove line to base directrice | |
compt = 0 # compt points | |
points2 += [points[compt]] # | |
compt = int(BeginA) | |
points2 += [points[compt]] | |
for ii2 in range(int(NumberX)): | |
try: | |
for i in range(NumberE): | |
x0 = points[compt][0]+((GapC/precision)*0.25) | |
y0 = points[compt][1]+HeightD | |
z0 = 0.0 | |
points2 += [FreeCAD.Vector(x0,y0,z0)] | |
x0 = points[compt][0]+((GapC/precision)*0.75) | |
y0 = points[compt][1]-HeightD | |
z0 = 0.0 | |
points2 += [FreeCAD.Vector(x0,y0,z0)] | |
compt += int(GapC) | |
points2 += [points[compt]] | |
compt += int(DimensionB) | |
points2 += [points[compt]] | |
except Exception: | |
None | |
points2 += [points[-1]] | |
zz = Draft.makeWire(points2,closed=False,face=False,support=None) | |
colorize() | |
if plane == 1: # Placement "XY" | |
zz.Placement = App.Placement(App.Vector(0,0,0), App.Rotation(0,0,0), App.Vector(0,0,0)) | |
zz.Label = " ZigZag_XY" #zz.Name + " ZigZag_XY" | |
Gui.activeDocument().activeView().viewTop() | |
if plane == 2: # Placement "YZ" | |
zz.Placement = App.Placement(App.Vector(0,0,0), App.Rotation(90,0,90), App.Vector(0,0,0)) | |
zz.Label = " ZigZag_YZ" #zz.Name + " ZigZag_YZ" | |
Gui.activeDocument().activeView().viewRight() | |
if plane == 3: # Placement "XZ" | |
zz.Placement = App.Placement(App.Vector(0,0,0), App.Rotation(0,0,90), App.Vector(0,0,0)) | |
zz.Label = " ZigZag_XZ" #zz.Name + " ZigZag_XZ" | |
Gui.activeDocument().activeView().viewFront() | |
points[:] = [] | |
points2[:] = [] | |
#App.ActiveDocument.ActiveObject.recompute() | |
App.ActiveDocument.recompute() | |
except Exception: | |
FreeCAD.Console.PrintError("Can not create"+"\n") | |
emergency = 1 | |
else: | |
FreeCAD.Console.PrintError("Zero not permitted"+"\n") | |
emergency = 1 | |
######################################################################################################################## | |
#################################################################################################################### | |
def dashLine(dash001 = 2.0, space001 = 1.0, dash002 = 1.0, space002 = 1.0, compLine = 0, red = 0, green = 0, blue = 0, typeLine = 1, lineWidth = 2.0, pSize = 2.0): | |
# typeLine = 1 "_ _ _ _ _ _ _ _ _ " dash (dash001, space001) | |
# typeLine = 2 "___ _ ___ _ ___ _ " dash dot (dash001, space001, dash002, space002) | |
# typeLine = 3 "___ _ _ ___ _ _ ___" dash dot dot (dash001, space001, dash002, space002) | |
global emergency | |
def createLines(numberOfPoints, points): | |
space = 0 | |
for lin in range(numberOfPoints-1): | |
if space == 0: | |
creaLine = [FreeCAD.Vector(points[lin]),FreeCAD.Vector(points[lin+1])] | |
if str(creaLine[0]) != str(creaLine[1]): | |
wire = Draft.makeWire(creaLine,closed=False,face=False,support=None)# lines | |
else: | |
wire = Draft.makePoint(FreeCAD.Vector(points[lin+1])) # end line = point | |
App.ActiveDocument.ActiveObject.recompute() | |
space = 1 | |
ligne.append(wire.Shape) # for compount | |
nom.append(wire.Name) # for compount | |
else: | |
space = 0 | |
# si pas possible affiche cette ligne (ajoute recompute() pour corriger)# Cannot compute Inventor representation for the shape of Shape. | |
def colorize(): | |
FreeCADGui.activeDocument().activeObject().LineColor = (float(red)/255,float(green)/255,float(blue)/255) | |
FreeCADGui.activeDocument().activeObject().PointColor = (float(red)/255,float(green)/255,float(blue)/255) | |
FreeCADGui.activeDocument().activeObject().ShapeColor = (float(red)/255,float(green)/255,float(blue)/255) | |
FreeCADGui.activeDocument().activeObject().LineWidth = lineWidth | |
FreeCADGui.activeDocument().activeObject().PointSize = pSize | |
if dash001 and space001 and dash002 and space002 != 0: | |
nom = []; nom[:] = [] | |
ligne = []; ligne[:] = [] | |
comp2 = []; comp2[:] = [] | |
points = []; points[:] = [] | |
points2 = []; points2[:] = [] | |
precision = 1000.0 # permet 3 decimales = 0.001 | |
dash001 = dash001 * precision | |
space001 = space001 * precision | |
dash002 = dash002 * precision | |
space002 = space002 * precision | |
try: | |
#######Selectionne un ou des objets vue 3D ou vue combinnee (subObjects complete) getSelection()############################ | |
# compt_Oject = -1 # | |
# selectionObjects = FreeCADGui.Selection.getSelection() # Select an object or primitive getSelection() | |
# for selection in enumerate(selectionObjects): # | |
# compt_Oject += 1 # | |
# compt_Edges = -1 # | |
# for selectedEdge in enumerate(selectionObjects[compt_Oject].Shape.Edges): # Search the "Edges" and their lengths | |
# dash01 = dash001; space01 = space001; dash02 = dash002; space02 = space002 # | |
# compt_Edges += 1 # | |
# longueur = (selectionObjects[compt_Oject].Shape.Edges[compt_Edges].Length) * precision # | |
# if (dash01 + space01 + dash02 + space02) >= longueur: # | |
# dash01 = int(longueur / 6) # altenate solution | |
# space01 = int(longueur / 6) # altenate solution | |
# dash02 = int(longueur / 6) # altenate solution | |
# space02 = int(longueur / 6) # altenate solution | |
# FreeCAD.Console.PrintError("Alernate Dash"+"\n") # altenate solution | |
# numberOfPoints = (longueur + 1) # | |
# points = selectionObjects[compt_Oject].Shape.Edges[compt_Edges].discretize(int(numberOfPoints)) # Dicretize | |
############################################################################################################################ | |
#####selection 1 objet ou sous objet a la fois dans la vue 3D getSelectionEx()############################################# | |
selectionObjects = FreeCADGui.Selection.getSelectionEx() # Select an object or sub object getSelectionEx | |
for selection in selectionObjects: # | |
# compEdge = 0 # compt affichage nom | |
for selectedEdge in selection.SubObjects: # | |
dash01 = dash001; space01 = space001; dash02 = dash002; space02 = space002 # | |
longueur = (selectedEdge.Length) * precision # | |
if (dash01 + space01 + dash02 + space02) >= longueur: # altenate solution | |
dash01 = int(longueur / 6) # altenate solution | |
space01 = int(longueur / 6) # altenate solution | |
dash02 = int(longueur / 6) # altenate solution | |
space02 = int(longueur / 6) # altenate solution | |
FreeCAD.Console.PrintError("Alernate Dash"+"\n") # altenate solution | |
# print selection.SubElementNames[compEdge] # | |
# compEdge += 1 # | |
numberOfPoints = (longueur + 1) # | |
points = selectedEdge.Edges[0].discretize(int(numberOfPoints)) # Dicretize | |
########################################################################################################################### | |
#######cut line in dashDot coordinates######################################################################### | |
compt = 0 | |
points2 += [points[0]] | |
for ii2 in range(len(points)): | |
try: | |
compt += int(dash01) # typeLine = 1 "_ _ _ _ _ _ _ _ _ " dash | |
points2 += [points[compt]] | |
compt += int(space01) | |
points2 += [points[compt]] | |
if typeLine > 1: # typeLine = 2 "___ _ ___ _ ___ _ " dash dot | |
compt += int(dash02) # "___ _ ___ _ ___ " | |
points2 += [points[compt]] | |
if typeLine == 2: | |
compt += int(space02) | |
else: | |
compt += int(space01) | |
points2 += [points[compt]] | |
if typeLine > 2: # typeLine = 3 "___ _ _ ___ _ _ ___" dash dot dot | |
compt += int(dash02) | |
points2 += [points[compt]] | |
compt += int(space01) | |
points2 += [points[compt]] | |
except Exception: | |
points2 += [points[-1]] | |
points2[-1] = points[-1] | |
break | |
createLines(len(points2), points2) | |
#######cut line in dash coordinates############################################################################## | |
if compLine == 0: | |
comp = Part.makeCompound(ligne) # si compount ligne separee | |
Part.show(comp) # si compount ligne separee | |
else: | |
comp2 += ligne | |
if typeLine == 1: | |
App.ActiveDocument.ActiveObject.Label = "Line_Dash" | |
elif typeLine == 2: | |
App.ActiveDocument.ActiveObject.Label = "Line_Dash_D" | |
elif typeLine == 3: | |
App.ActiveDocument.ActiveObject.Label = "Line_Dash_DD" | |
colorize() | |
ligne[:] = [] # si compount ligne separee | |
points[:] = [] | |
points2[:] = [] | |
for i in nom: | |
FreeCAD.ActiveDocument.removeObject(i) | |
if compLine != 0: # 1 = toutes les selections en un compount | |
comp = Part.makeCompound(comp2) # si compount ensemble complet | |
Part.show(comp) # si compount ensemble complet | |
colorize() | |
if typeLine == 1: | |
App.ActiveDocument.ActiveObject.Label = "Line_Dash_C" | |
elif typeLine == 2: | |
App.ActiveDocument.ActiveObject.Label = "Line_Dash_D_C" | |
elif typeLine == 3: | |
App.ActiveDocument.ActiveObject.Label = "Line_Dash_DD_C" | |
nom[:] = [] | |
ligne[:] = [] | |
comp2[:] = [] | |
points[:] = [] | |
points2[:] = [] | |
#App.ActiveDocument.ActiveObject.recompute() | |
App.ActiveDocument.recompute() | |
except Exception: | |
FreeCAD.Console.PrintError("can not create"+"\n") | |
emergency = 1 | |
else: | |
FreeCAD.Console.PrintError("Zero not permitted"+"\n") | |
emergency = 1 | |
##################################################################################################################### | |
class Ui_MainWindow(object): | |
def __init__(self): | |
#self.path = FreeCAD.ConfigGet("AppHomePath") | |
#self.path = FreeCAD.ConfigGet("UserAppData") | |
#self.path = "your path" | |
param = FreeCAD.ParamGet("User parameter:BaseApp/Preferences/Macro")# macro path | |
self.path = param.GetString("MacroPath","") + "/" # macro path | |
self.path = self.path.replace("\\","/") | |
global emergency | |
self.NumberCut = 2.0 | |
self.LineA = 2.0 | |
self.SpaceB = 0.5 | |
self.Line2C = 0.2 | |
self.Space2D = self.SpaceB | |
self.red = 0 | |
self.green = 0 | |
self.blue = 0 | |
self.NHeadsX = 20 | |
self.BeginA = 2.0 | |
self.DimensionB = 4.0 | |
self.GapC = 3.0 | |
self.HeightD = 2.0 | |
self.NumberE = 1 | |
self.Compound = 0 | |
self.lineWidth = 2.0 | |
self.pointSize = 2.0 | |
self.Plan = 1 | |
self.LengthA = 150 | |
self.HeightB = 2.0 | |
self.WaveC = 40.0 | |
self.NameType = "Name of type" | |
self.fontGlobal_08 = "" # pour compatibilite Windows Linux pour tous les textes | |
def setupUi(self, MainWindow): | |
self.window = MainWindow | |
MainWindow.setObjectName(_fromUtf8("MainWindow")) | |
MainWindow.resize(363, 621) | |
MainWindow.setMinimumSize(QtCore.QSize(363, 621)) | |
MainWindow.setMaximumSize(QtCore.QSize(363, 621)) | |
MainWindow.setToolTip(_fromUtf8("")) | |
self.centralwidget = QtGui.QWidget(MainWindow) | |
self.centralwidget.setObjectName(_fromUtf8("centralwidget")) | |
self.fontGlobal_08 = QtGui.QFont() # pour compatibilite Windows Linux pour tous les textes | |
self.fontGlobal_08.setFamily("Arial") # pour compatibilite Windows Linux pour tous les textes | |
self.fontGlobal_08.setPointSize(8.0) # pour compatibilite Windows Linux pour tous les textes | |
self.PB_01_Save = QtGui.QPushButton(self.centralwidget) | |
self.PB_01_Save.setGeometry(QtCore.QRect(10, 560, 73, 23)) | |
self.PB_01_Save.setFont(self.fontGlobal_08) | |
self.PB_01_Save.setToolTip(_fromUtf8("Save the configuration in file with extension .FCConvert")) | |
self.PB_01_Save.setObjectName(_fromUtf8("PB_01_Save")) | |
self.PB_01_Save.clicked.connect(self.on_PB_01_Save) # | |
self.PB_02_Load = QtGui.QPushButton(self.centralwidget) | |
self.PB_02_Load.setGeometry(QtCore.QRect(100, 560, 73, 23)) | |
self.PB_02_Load.setFont(self.fontGlobal_08) | |
self.PB_02_Load.setToolTip(_fromUtf8("Load the file configuration")) | |
self.PB_02_Load.setObjectName(_fromUtf8("PB_02_Load")) | |
self.PB_02_Load.clicked.connect(self.on_PB_02_Load) # | |
self.LE_01_LineType = QtGui.QLineEdit(self.centralwidget) | |
self.LE_01_LineType.setGeometry(QtCore.QRect(190, 560, 161, 23)) | |
self.LE_01_LineType.setFont(self.fontGlobal_08) | |
self.LE_01_LineType.setObjectName(_fromUtf8("LE_01_LineType")) | |
self.LE_01_LineType.setToolTip("Give the name of type line created"+"\n"+ | |
"This information is saved in the file") | |
# self.LE_01_LineType.setText(QtGui.QApplication.translate("Form", "Name type line", None, QtGui.QApplication.UnicodeUTF8)) | |
#self.LE_01_LineType.returnPressed.connect(self.on_lineEdit_1_Pressed) # connect on def "on_lineEdit_1_Pressed" for execute actionn # for validate the data with press on return touch | |
self.LE_01_LineType.textChanged.connect(self.on_LE_01_LineType_Pressed) # connect on def "on_lineEdit_1_Pressed" for execute actionn # with tips key char by char | |
self.PB_04_CreateComp = QtGui.QPushButton(self.centralwidget) | |
self.PB_04_CreateComp.setGeometry(QtCore.QRect(100, 590, 73, 23)) | |
self.PB_04_CreateComp.setFont(self.fontGlobal_08) | |
self.PB_04_CreateComp.setToolTip(_fromUtf8("Create the lines and create the compound."+"\n"+ | |
"Not for Cut Lines, Ziqzag and Hand")) | |
self.PB_04_CreateComp.setEnabled(False) | |
self.PB_04_CreateComp.setObjectName(_fromUtf8("PB_04_CreateComp")) | |
self.PB_04_CreateComp.clicked.connect(self.on_PB_04_CreateComp) # | |
self.PB_05_Create = QtGui.QPushButton(self.centralwidget) | |
self.PB_05_Create.setGeometry(QtCore.QRect(190, 590, 73, 23)) | |
self.PB_05_Create.setFont(self.fontGlobal_08) | |
self.PB_05_Create.setToolTip(_fromUtf8("Create the lines")) | |
self.PB_05_Create.setObjectName(_fromUtf8("PB_05_Create")) | |
self.PB_05_Create.clicked.connect(self.on_PB_05_Create) # | |
self.PB_03_Reset = QtGui.QPushButton(self.centralwidget) | |
self.PB_03_Reset.setGeometry(QtCore.QRect(10, 590, 73, 23)) | |
self.PB_03_Reset.setFont(self.fontGlobal_08) | |
self.PB_03_Reset.setToolTip(_fromUtf8("Reset the macro in the defaut values")) | |
self.PB_03_Reset.setObjectName(_fromUtf8("PB_03_Reset")) | |
self.PB_03_Reset.clicked.connect(self.on_PB_03_Reset) # | |
self.PB_06_Quit = QtGui.QPushButton(self.centralwidget) | |
self.PB_06_Quit.setGeometry(QtCore.QRect(280, 590, 73, 23)) | |
self.PB_06_Quit.setFont(self.fontGlobal_08) | |
self.PB_06_Quit.setToolTip(_fromUtf8("Quit the macro and goodbye")) | |
self.PB_06_Quit.setObjectName(_fromUtf8("PB_06_Quit")) | |
self.PB_06_Quit.clicked.connect(self.on_PB_06_Quit) # | |
self.groupBox_00_CutLine = QtGui.QGroupBox(self.centralwidget) | |
self.groupBox_00_CutLine.setGeometry(QtCore.QRect(10, 30, 341, 51)) | |
self.groupBox_00_CutLine.setFont(self.fontGlobal_08) | |
self.groupBox_00_CutLine.setCheckable(True) | |
self.groupBox_00_CutLine.setToolTip(_fromUtf8("Cut line in x parts if this checkBox is checked five types of lines can be selected")) | |
self.groupBox_00_CutLine.setObjectName(_fromUtf8("groupBox_00_CutLine")) | |
self.groupBox_00_CutLine.clicked.connect(self.on_groupBox_00_CutLine) #connection checkBox | |
self.DS_01_NumberCut = QtGui.QDoubleSpinBox(self.centralwidget) | |
self.DS_01_NumberCut.setGeometry(QtCore.QRect(20, 49, 81, 22)) | |
self.DS_01_NumberCut.setFont(self.fontGlobal_08) | |
self.DS_01_NumberCut.setObjectName(_fromUtf8("DS_01_NumberCut")) | |
self.DS_01_NumberCut.setSingleStep(1) | |
self.DS_01_NumberCut.setMaximum(9999999) | |
self.DS_01_NumberCut.setMinimum(1) | |
self.DS_01_NumberCut.setDecimals(0) | |
self.DS_01_NumberCut.setSuffix(_fromUtf8(" Cut")) | |
self.DS_01_NumberCut.setValue(self.NumberCut) | |
self.DS_01_NumberCut.setToolTip(_fromUtf8("Select one or more line(s) in the 3D view enter the desired number of cut (The suffix is Cut)"+"\n"+ | |
"If Dimension is checked one length is input (The suffix is Dim)")) | |
self.DS_01_NumberCut.valueChanged.connect(self.on_DS_01_NumberCut_valueChanged) #connect on def "on_DS_00_01_NumberCut_valueChanged" | |
self.label_00_01 = QtGui.QLabel(self.groupBox_00_CutLine) | |
self.label_00_01.setGeometry(QtCore.QRect(70, 20, 61, 16)) | |
self.label_00_01.setFont(self.fontGlobal_08) | |
self.label_00_01.setToolTip(_fromUtf8("")) | |
self.label_00_01.setObjectName(_fromUtf8("label_00_01")) | |
self.CB_00_02_BiColor = QtGui.QCheckBox(self.groupBox_00_CutLine) | |
self.CB_00_02_BiColor.setGeometry(QtCore.QRect(231, 23, 61, 17)) | |
self.CB_00_02_BiColor.setFont(self.fontGlobal_08) | |
self.CB_00_02_BiColor.setToolTip(_fromUtf8("If Bicolor is checked the line Cut or Dimension are colored in Red and White."+"\n"+ | |
"If this checkBox is not checked the color is the color selected in the button Color")) | |
self.CB_00_02_BiColor.setChecked(True) | |
self.CB_00_02_BiColor.setObjectName(_fromUtf8("CB_00_02_BiColor")) | |
self.CB_00_02_BiColor.clicked.connect(self.on_CB_00_02_BiColor_clicked) # connect on def "CB_00_01_Dimension" | |
self.CB_00_03_CreatePoints = QtGui.QCheckBox(self.groupBox_00_CutLine) | |
self.CB_00_03_CreatePoints.setGeometry(QtCore.QRect(290, 23, 51, 17)) | |
self.CB_00_03_CreatePoints.setFont(self.fontGlobal_08) | |
self.CB_00_03_CreatePoints.setToolTip(_fromUtf8("If Points is checked on point is created to the Cut or Dimension (Checked by defaut)")) | |
self.CB_00_03_CreatePoints.setObjectName(_fromUtf8("CB_00_03_CreatePoints")) | |
self.CB_00_03_CreatePoints.clicked.connect(self.on_CB_00_03_CreatePoints_clicked) # connect on def "CB_00_01_Dimension" | |
self.CB_00_01_Dimension = QtGui.QCheckBox(self.groupBox_00_CutLine) | |
self.CB_00_01_Dimension.setGeometry(QtCore.QRect(164, 23, 71, 17)) | |
self.CB_00_01_Dimension.setFont(self.fontGlobal_08) | |
self.CB_00_01_Dimension.setToolTip(_fromUtf8("If Dimension is not checked the number entered is the number of cut"+"\n"+ | |
"If Dimension is checked the number entered is a length"+"\n"+ | |
"The line is cut into given length."+"\n"+ | |
"If the dimension greater than the line the line is duplicated"+"\n"+ | |
"If the line is greater than the Dimension a line will be created with the remaining length")) | |
self.CB_00_01_Dimension.setObjectName(_fromUtf8("CB_00_01_Dimension")) | |
self.CB_00_01_Dimension.clicked.connect(self.on_CB_00_01_Dimension_clicked) # connect on def "CB_00_01_Dimension" | |
self.CB_00_00_CreateLine = QtGui.QCheckBox(self.groupBox_00_CutLine) | |
self.CB_00_00_CreateLine.setGeometry(QtCore.QRect(100, 23, 71, 17)) | |
self.CB_00_00_CreateLine.setFont(self.fontGlobal_08) | |
self.CB_00_00_CreateLine.setToolTip(_fromUtf8("If Create line is checked the lines are created (Checked by defaut)")) | |
self.CB_00_00_CreateLine.setChecked(True) | |
self.CB_00_00_CreateLine.setObjectName(_fromUtf8("CB_00_00_CreateLine")) | |
self.CB_00_00_CreateLine.clicked.connect(self.on_CB_00_CB_00_00_CreateLine_clicked) # connect on def "CB_00_01_Dimension" | |
self.groupBox_01_TypeLine = QtGui.QGroupBox(self.centralwidget) | |
self.groupBox_01_TypeLine.setEnabled(False) | |
self.groupBox_01_TypeLine.setGeometry(QtCore.QRect(10, 90, 341, 461)) | |
self.groupBox_01_TypeLine.setFont(self.fontGlobal_08) | |
self.groupBox_01_TypeLine.setToolTip(_fromUtf8("")) | |
self.groupBox_01_TypeLine.setTitle(_fromUtf8("Type line")) | |
self.groupBox_01_TypeLine.setCheckable(False) | |
self.groupBox_01_TypeLine.setChecked(False) | |
self.groupBox_01_TypeLine.setObjectName(_fromUtf8("groupBox_01_TypeLine")) | |
self.RB_01_01_Dash = QtGui.QRadioButton(self.groupBox_01_TypeLine) | |
self.RB_01_01_Dash.setGeometry(QtCore.QRect(10, 20, 51, 17)) | |
self.RB_01_01_Dash.setFont(self.fontGlobal_08) | |
self.RB_01_01_Dash.setToolTip(_fromUtf8("The type line is Dash. Select one or more line(s) in the 3D view and create")) | |
self.RB_01_01_Dash.setChecked(True) | |
self.RB_01_01_Dash.setObjectName(_fromUtf8("RB_01_01_Dash")) | |
self.RB_01_01_Dash.clicked.connect(self.on_RB_01_01_Dash) #connection radioButton | |
self.RB_01_02_DashDot = QtGui.QRadioButton(self.groupBox_01_TypeLine) | |
self.RB_01_02_DashDot.setGeometry(QtCore.QRect(70, 20, 61, 17)) | |
self.RB_01_02_DashDot.setFont(self.fontGlobal_08) | |
self.RB_01_02_DashDot.setToolTip(_fromUtf8("The type line is Dash Dot. Select one or more line(s) in the 3D view and create")) | |
self.RB_01_02_DashDot.setObjectName(_fromUtf8("RB_01_02_DashDot")) | |
self.RB_01_02_DashDot.clicked.connect(self.on_RB_01_02_DashDot) #connection radioButton | |
self.RB_01_03_DashDotDot = QtGui.QRadioButton(self.groupBox_01_TypeLine) | |
self.RB_01_03_DashDotDot.setGeometry(QtCore.QRect(140, 20, 81, 17)) | |
self.RB_01_03_DashDotDot.setFont(self.fontGlobal_08) | |
self.RB_01_03_DashDotDot.setToolTip(_fromUtf8("The type line is Dash Dot Dot. Select one or more line(s) in the 3D view and create")) | |
self.RB_01_03_DashDotDot.setObjectName(_fromUtf8("RB_01_03_DashDotDot")) | |
self.RB_01_03_DashDotDot.clicked.connect(self.on_RB_01_03_DashDotDot) #connection radioButton | |
self.RB_01_04_ZigZag = QtGui.QRadioButton(self.groupBox_01_TypeLine) | |
self.RB_01_04_ZigZag.setGeometry(QtCore.QRect(220, 20, 61, 17)) | |
self.RB_01_04_ZigZag.setFont(self.fontGlobal_08) | |
self.RB_01_04_ZigZag.setToolTip(_fromUtf8("The type line is ZigZag one line are created"+"\n"+ | |
"Select the plane XY, YZ or ZX the length is calculate in real time")) | |
self.RB_01_04_ZigZag.setObjectName(_fromUtf8("RB_01_04_ZigZag")) | |
self.RB_01_04_ZigZag.clicked.connect(self.on_RB_01_04_ZigZag) #connection radioButton | |
self.RB_01_05_Hand = QtGui.QRadioButton(self.groupBox_01_TypeLine) | |
self.RB_01_05_Hand.setGeometry(QtCore.QRect(290, 20, 51, 17)) | |
self.RB_01_05_Hand.setFont(self.fontGlobal_08) | |
self.RB_01_05_Hand.setToolTip(_fromUtf8("The type line is Hand one line aleatory are created"+"\n"+ | |
"Select the plane XY, YZ or ZX")) | |
self.RB_01_05_Hand.setObjectName(_fromUtf8("RB_01_05_Hand")) | |
self.RB_01_05_Hand.clicked.connect(self.on_RB_01_05_Hand) #connection radioButton | |
self.groupBox_02_01_DashDot = QtGui.QGroupBox(self.groupBox_01_TypeLine) | |
self.groupBox_02_01_DashDot.setGeometry(QtCore.QRect(10, 40, 321, 61)) | |
self.groupBox_02_01_DashDot.setFont(self.fontGlobal_08) | |
self.groupBox_02_01_DashDot.setObjectName(_fromUtf8("groupBox_02_01_DashDot")) | |
self.label_02_01_01_A = QtGui.QLabel(self.groupBox_02_01_DashDot) | |
self.label_02_01_01_A.setGeometry(QtCore.QRect(10, 10, 61, 16)) | |
self.label_02_01_01_A.setFont(self.fontGlobal_08) | |
self.label_02_01_01_A.setToolTip(_fromUtf8("First line set")) | |
self.label_02_01_01_A.setObjectName(_fromUtf8("label_02_01_01_A")) | |
self.label_02_01_02_B = QtGui.QLabel(self.groupBox_02_01_DashDot) | |
self.label_02_01_02_B.setGeometry(QtCore.QRect(90, 10, 61, 16)) | |
self.label_02_01_02_B.setFont(self.fontGlobal_08) | |
self.label_02_01_02_B.setToolTip(_fromUtf8("First space set")) | |
self.label_02_01_02_B.setObjectName(_fromUtf8("label_02_01_02_B")) | |
self.label_02_01_03_C = QtGui.QLabel(self.groupBox_02_01_DashDot) | |
self.label_02_01_03_C.setGeometry(QtCore.QRect(170, 10, 61, 16)) | |
self.label_02_01_03_C.setFont(self.fontGlobal_08) | |
self.label_02_01_03_C.setToolTip(_fromUtf8("Second line set")) | |
self.label_02_01_03_C.setObjectName(_fromUtf8("label_02_01_03_C")) | |
self.label_02_01_04_D = QtGui.QLabel(self.groupBox_02_01_DashDot) | |
self.label_02_01_04_D.setGeometry(QtCore.QRect(250, 10, 61, 16)) | |
self.label_02_01_04_D.setFont(self.fontGlobal_08) | |
self.label_02_01_04_D.setToolTip(_fromUtf8("Second space set")) | |
self.label_02_01_04_D.setObjectName(_fromUtf8("label_02_01_04_D")) | |
self.DS_02_01_01_LineA = QtGui.QDoubleSpinBox(self.groupBox_02_01_DashDot) | |
self.DS_02_01_01_LineA.setGeometry(QtCore.QRect(10, 30, 62, 22)) | |
self.DS_02_01_01_LineA.setFont(self.fontGlobal_08) | |
self.DS_02_01_01_LineA.setToolTip(_fromUtf8("First line set")) | |
self.DS_02_01_01_LineA.setMaximum(999999.999999) | |
self.DS_02_01_01_LineA.setValue(self.LineA) | |
self.DS_02_01_01_LineA.setObjectName(_fromUtf8("DS_02_01_01_LineA")) | |
self.DS_02_01_01_LineA.valueChanged.connect(self.on_DS_02_01_01_LineA_valueChanged) # connect on def "on_DS_02_01_01_LineA_valueChanged" | |
self.DS_02_01_02_SpaceB = QtGui.QDoubleSpinBox(self.groupBox_02_01_DashDot) | |
self.DS_02_01_02_SpaceB.setGeometry(QtCore.QRect(90, 30, 62, 22)) | |
self.DS_02_01_02_SpaceB.setFont(self.fontGlobal_08) | |
self.DS_02_01_02_SpaceB.setToolTip(_fromUtf8("First space set")) | |
self.DS_02_01_02_SpaceB.setMaximum(999999.999999) | |
self.DS_02_01_02_SpaceB.setValue(self.SpaceB) | |
self.DS_02_01_02_SpaceB.setObjectName(_fromUtf8("DS_02_01_02_SpaceB")) | |
self.DS_02_01_02_SpaceB.valueChanged.connect(self.on_DS_02_01_02_SpaceB_valueChanged) # connect on def "on_DS_02_01_02_SpaceB_valueChanged" | |
self.DS_02_01_03_Line2C = QtGui.QDoubleSpinBox(self.groupBox_02_01_DashDot) | |
self.DS_02_01_03_Line2C.setGeometry(QtCore.QRect(170, 30, 62, 22)) | |
self.DS_02_01_03_Line2C.setFont(self.fontGlobal_08) | |
self.DS_02_01_03_Line2C.setToolTip(_fromUtf8("Second line set")) | |
self.DS_02_01_03_Line2C.setMaximum(999999.999999) | |
self.DS_02_01_03_Line2C.setValue(self.Line2C) | |
self.DS_02_01_03_Line2C.setObjectName(_fromUtf8("DS_02_01_03_Line2C")) | |
self.DS_02_01_03_Line2C.valueChanged.connect(self.on_DS_02_01_03_Line2C_valueChanged) # connect on def "on_DS_02_01_03_Line2C_valueChanged" | |
self.DS_02_01_04_Space2D = QtGui.QDoubleSpinBox(self.groupBox_02_01_DashDot) | |
self.DS_02_01_04_Space2D.setGeometry(QtCore.QRect(250, 30, 62, 22)) | |
self.DS_02_01_04_Space2D.setFont(self.fontGlobal_08) | |
self.DS_02_01_04_Space2D.setToolTip(_fromUtf8("Second space set")) | |
self.DS_02_01_04_Space2D.setMaximum(999999.999999) | |
self.DS_02_01_04_Space2D.setValue(self.Space2D) | |
self.DS_02_01_04_Space2D.setObjectName(_fromUtf8("DS_02_01_04_Space2D")) | |
self.DS_02_01_04_Space2D.valueChanged.connect(self.on_DS_02_01_04_Space2D_valueChanged) # connect on def "on_DS_02_01_04_Space2D_valueChanged" | |
self.groupBox_02_02_ZigZag = QtGui.QGroupBox(self.groupBox_01_TypeLine) | |
self.groupBox_02_02_ZigZag.setGeometry(QtCore.QRect(10, 110, 321, 101)) | |
self.groupBox_02_02_ZigZag.setFont(self.fontGlobal_08) | |
self.groupBox_02_02_ZigZag.setObjectName(_fromUtf8("groupBox_02_02_ZigZag")) | |
self.label_02_02_Length = QtGui.QLabel(self.groupBox_02_02_ZigZag) | |
self.label_02_02_Length.setGeometry(QtCore.QRect(200, 20, 110, 20)) | |
self.label_02_02_Length.setFont(self.fontGlobal_08) | |
self.label_02_02_Length.setFrameShape(QtGui.QFrame.Box) | |
self.label_02_02_Length.setLineWidth(2) | |
self.label_02_02_Length.setAlignment(QtCore.Qt.AlignCenter) | |
self.label_02_02_Length.setToolTip(_fromUtf8("For the ZigZag the length is calculate in real time"+"\n"+ | |
"and displayed in this window")) | |
self.label_02_02_Length.setIndent(0) | |
self.label_02_02_Length.setObjectName(_fromUtf8("label_02_02_Length")) | |
self.label_02_02_Length.setText(str((self.BeginA * 2) + ((self.NHeadsX * (self.DimensionB + (self.GapC * self.NumberE))) - self.DimensionB))) | |
self.label_02_02_0X = QtGui.QLabel(self.groupBox_02_02_ZigZag) | |
self.label_02_02_0X.setGeometry(QtCore.QRect(70, 20, 91, 16)) | |
self.label_02_02_0X.setFont(self.fontGlobal_08) | |
self.label_02_02_0X.setToolTip(_fromUtf8("Number of heads in the line (a head is a crown)")) | |
self.label_02_02_0X.setObjectName(_fromUtf8("label_02_02_0X")) | |
self.label_02_02_01_A = QtGui.QLabel(self.groupBox_02_02_ZigZag) | |
self.label_02_02_01_A.setGeometry(QtCore.QRect(10, 50, 46, 13)) | |
self.label_02_02_01_A.setFont(self.fontGlobal_08) | |
self.label_02_02_01_A.setToolTip(_fromUtf8("First and latest section of the line")) | |
self.label_02_02_01_A.setObjectName(_fromUtf8("label_02_02_01_A")) | |
self.label_02_02_02_B = QtGui.QLabel(self.groupBox_02_02_ZigZag) | |
self.label_02_02_02_B.setGeometry(QtCore.QRect(70, 50, 61, 16)) | |
self.label_02_02_02_B.setFont(self.fontGlobal_08) | |
self.label_02_02_02_B.setToolTip(_fromUtf8("Dimension betwen two heads")) | |
self.label_02_02_02_B.setObjectName(_fromUtf8("label_02_02_02_B")) | |
self.label_02_02_03_C = QtGui.QLabel(self.groupBox_02_02_ZigZag) | |
self.label_02_02_03_C.setGeometry(QtCore.QRect(140, 50, 61, 16)) | |
self.label_02_02_03_C.setFont(self.fontGlobal_08) | |
self.label_02_02_03_C.setToolTip(_fromUtf8("Gap of the head")) | |
self.label_02_02_03_C.setObjectName(_fromUtf8("label_02_02_03_C")) | |
self.label_02_02_04_D = QtGui.QLabel(self.groupBox_02_02_ZigZag) | |
self.label_02_02_04_D.setGeometry(QtCore.QRect(200, 50, 61, 16)) | |
self.label_02_02_04_D.setFont(self.fontGlobal_08) | |
self.label_02_02_04_D.setToolTip(_fromUtf8("Head height")) | |
self.label_02_02_04_D.setObjectName(_fromUtf8("label_02_02_04_D")) | |
self.label_02_02_05_E = QtGui.QLabel(self.groupBox_02_02_ZigZag) | |
self.label_02_02_05_E.setGeometry(QtCore.QRect(260, 50, 61, 16)) | |
self.label_02_02_05_E.setFont(self.fontGlobal_08) | |
self.label_02_02_05_E.setToolTip(_fromUtf8("Number of contiguous heads")) | |
self.label_02_02_05_E.setObjectName(_fromUtf8("label_02_02_05_E")) | |
self.SP_02_02_01_NHeadsX = QtGui.QSpinBox(self.groupBox_02_02_ZigZag) | |
self.SP_02_02_01_NHeadsX.setGeometry(QtCore.QRect(10, 20, 51, 22)) | |
self.SP_02_02_01_NHeadsX.setFont(self.fontGlobal_08) | |
self.SP_02_02_01_NHeadsX.setToolTip(_fromUtf8("Number of heads in the line (a head is a crown)")) | |
self.SP_02_02_01_NHeadsX.setMaximum(999999.999999) | |
self.SP_02_02_01_NHeadsX.setValue(self.NHeadsX) | |
self.SP_02_02_01_NHeadsX.setObjectName(_fromUtf8("SP_02_02_01_NHeadsX")) | |
self.SP_02_02_01_NHeadsX.valueChanged.connect(self.on_SP_02_02_01_NHeadsX_valueChanged) # connect on def "SP_02_02_01_NHeadsX" | |
self.DS_02_02_01_BeginA = QtGui.QDoubleSpinBox(self.groupBox_02_02_ZigZag) | |
self.DS_02_02_01_BeginA.setGeometry(QtCore.QRect(10, 70, 51, 22)) | |
self.DS_02_02_01_BeginA.setFont(self.fontGlobal_08) | |
self.DS_02_02_01_BeginA.setToolTip(_fromUtf8("First and latest section of the line")) | |
self.DS_02_02_01_BeginA.setMaximum(999999.999999) | |
self.DS_02_02_01_BeginA.setValue(self.BeginA) | |
self.DS_02_02_01_BeginA.setObjectName(_fromUtf8("DS_02_02_01_BeginA")) | |
self.DS_02_02_01_BeginA.valueChanged.connect(self.on_DS_02_02_01_BeginA_valueChanged) # connect on def "DS_02_02_01_DimensionA" | |
self.DS_02_02_02_DimensionB = QtGui.QDoubleSpinBox(self.groupBox_02_02_ZigZag) | |
self.DS_02_02_02_DimensionB.setGeometry(QtCore.QRect(70, 70, 61, 22)) | |
self.DS_02_02_02_DimensionB.setFont(self.fontGlobal_08) | |
self.DS_02_02_02_DimensionB.setToolTip(_fromUtf8("Dimension betwen two heads")) | |
self.DS_02_02_02_DimensionB.setMaximum(999999.999999) | |
self.DS_02_02_02_DimensionB.setValue(self.DimensionB) | |
self.DS_02_02_02_DimensionB.setObjectName(_fromUtf8("DS_02_02_02_DimensionB")) | |
self.DS_02_02_02_DimensionB.valueChanged.connect(self.on_DS_02_02_02_DimensionB_valueChanged) # connect on def "DS_02_02_02_DimensionB" | |
self.DS_02_02_03_GapC = QtGui.QDoubleSpinBox(self.groupBox_02_02_ZigZag) | |
self.DS_02_02_03_GapC.setGeometry(QtCore.QRect(140, 70, 51, 22)) | |
self.DS_02_02_03_GapC.setFont(self.fontGlobal_08) | |
self.DS_02_02_03_GapC.setToolTip(_fromUtf8("Gap of the head")) | |
self.DS_02_02_03_GapC.setMaximum(999999.999999) | |
self.DS_02_02_03_GapC.setValue(self.GapC) | |
self.DS_02_02_03_GapC.setObjectName(_fromUtf8("DS_02_02_03_GapC")) | |
self.DS_02_02_03_GapC.valueChanged.connect(self.on_DS_02_02_03_GapC_valueChanged) # connect on def "on_DS_02_02_03_GapB_valueChanged" | |
self.DS_02_02_04_HeightD = QtGui.QDoubleSpinBox(self.groupBox_02_02_ZigZag) | |
self.DS_02_02_04_HeightD.setGeometry(QtCore.QRect(200, 70, 51, 22)) | |
self.DS_02_02_04_HeightD.setFont(self.fontGlobal_08) | |
self.DS_02_02_04_HeightD.setToolTip(_fromUtf8("Head height")) | |
self.DS_02_02_04_HeightD.setMaximum(999999.999999) | |
self.DS_02_02_04_HeightD.setValue(self.HeightD) | |
self.DS_02_02_04_HeightD.setObjectName(_fromUtf8("DS_02_02_04_HeightD")) | |
self.DS_02_02_04_HeightD.valueChanged.connect(self.on_DS_02_02_04_HeightD_valueChanged)# connect on def "on_DS_02_02_02_HeightC_valueChanged" | |
self.SP_02_02_05_NumberE = QtGui.QSpinBox(self.groupBox_02_02_ZigZag) | |
self.SP_02_02_05_NumberE.setGeometry(QtCore.QRect(260, 70, 51, 22)) | |
self.SP_02_02_05_NumberE.setFont(self.fontGlobal_08) | |
self.SP_02_02_05_NumberE.setToolTip(_fromUtf8("Number of contiguous heads")) | |
self.SP_02_02_05_NumberE.setMaximum(999999.999999) | |
self.SP_02_02_05_NumberE.setValue(self.NumberE) | |
self.SP_02_02_05_NumberE.setObjectName(_fromUtf8("SP_02_02_05_NumberE")) | |
self.SP_02_02_05_NumberE.valueChanged.connect(self.on_SP_02_02_05_NumberE_valueChanged)# connect on def "on_SP_02_02_04_NumberD_valueChanged" | |
self.groupBox_02_03_Hand = QtGui.QGroupBox(self.groupBox_01_TypeLine) | |
self.groupBox_02_03_Hand.setGeometry(QtCore.QRect(10, 220, 211, 71)) | |
self.groupBox_02_03_Hand.setFont(self.fontGlobal_08) | |
self.groupBox_02_03_Hand.setObjectName(_fromUtf8("groupBox_02_03_Hand")) | |
self.label_02_03_01_A = QtGui.QLabel(self.groupBox_02_03_Hand) | |
self.label_02_03_01_A.setGeometry(QtCore.QRect(10, 20, 61, 16)) | |
self.label_02_03_01_A.setFont(self.fontGlobal_08) | |
self.label_02_03_01_A.setToolTip(_fromUtf8("Length of complete line")) | |
self.label_02_03_01_A.setObjectName(_fromUtf8("label_02_03_01_A")) | |
self.label_02_03_02_B = QtGui.QLabel(self.groupBox_02_03_Hand) | |
self.label_02_03_02_B.setGeometry(QtCore.QRect(90, 20, 51, 16)) | |
self.label_02_03_02_B.setFont(self.fontGlobal_08) | |
self.label_02_03_02_B.setToolTip(_fromUtf8("Heigth of the wave")) | |
self.label_02_03_02_B.setObjectName(_fromUtf8("label_02_03_02_H")) | |
self.label_02_03_03_C = QtGui.QLabel(self.groupBox_02_03_Hand) | |
self.label_02_03_03_C.setGeometry(QtCore.QRect(150, 20, 51, 16)) | |
self.label_02_03_03_C.setFont(self.fontGlobal_08) | |
self.label_02_03_03_C.setToolTip(_fromUtf8("Length betwen two crown")) | |
self.label_02_03_03_C.setObjectName(_fromUtf8("label_02_03_03_P")) | |
self.DS_02_03_01_LengthA = QtGui.QDoubleSpinBox(self.groupBox_02_03_Hand) | |
self.DS_02_03_01_LengthA.setGeometry(QtCore.QRect(10, 40, 71, 22)) | |
self.DS_02_03_01_LengthA.setFont(self.fontGlobal_08) | |
self.DS_02_03_01_LengthA.setToolTip(_fromUtf8("Length of complete line")) | |
self.DS_02_03_01_LengthA.setMaximum(999999.999999) | |
self.DS_02_03_01_LengthA.setValue(self.LengthA) | |
self.DS_02_03_01_LengthA.setObjectName(_fromUtf8("DS_02_03_01_LengthA")) | |
self.DS_02_03_01_LengthA.valueChanged.connect(self.on_DS_02_03_01_LengthA_valueChanged)# connect on def "on_DS_02_03_01_LengthA_valueChanged" | |
self.DS_02_03_02_HeightB = QtGui.QDoubleSpinBox(self.groupBox_02_03_Hand) | |
self.DS_02_03_02_HeightB.setGeometry(QtCore.QRect(90, 40, 51, 22)) | |
self.DS_02_03_02_HeightB.setFont(self.fontGlobal_08) | |
self.DS_02_03_02_HeightB.setToolTip(_fromUtf8("Heigth of the wave")) | |
self.DS_02_03_02_HeightB.setMaximum(999999.999999) | |
self.DS_02_03_02_HeightB.setValue(self.HeightB) | |
self.DS_02_03_02_HeightB.setObjectName(_fromUtf8("DS_02_03_02_HeightB")) | |
self.DS_02_03_02_HeightB.valueChanged.connect(self.on_DS_02_03_02_HeightB_valueChanged)# connect on def "on_DS_02_03_02_HeightB_valueChanged" | |
self.DS_02_03_03_WaveC = QtGui.QDoubleSpinBox(self.groupBox_02_03_Hand) | |
self.DS_02_03_03_WaveC.setGeometry(QtCore.QRect(150, 40, 51, 22)) | |
self.DS_02_03_03_WaveC.setFont(self.fontGlobal_08) | |
self.DS_02_03_03_WaveC.setToolTip(_fromUtf8("Length betwen two crown")) | |
self.DS_02_03_03_WaveC.setMaximum(999999.999999) | |
self.DS_02_03_03_WaveC.setValue(self.WaveC) | |
self.DS_02_03_03_WaveC.setObjectName(_fromUtf8("DS_02_03_03_WaveC")) | |
self.DS_02_03_03_WaveC.valueChanged.connect(self.on_DS_02_03_03_WaveC_valueChanged) # connect on def "on_DS_02_03_03_WaveC_valueChanged" | |
self.groupBox_02_04_OptionsL = QtGui.QGroupBox(self.centralwidget) | |
self.groupBox_02_04_OptionsL.setGeometry(QtCore.QRect(240, 310, 101, 131)) | |
self.groupBox_02_04_OptionsL.setFont(self.fontGlobal_08) | |
self.groupBox_02_04_OptionsL.setFlat(False) | |
self.groupBox_02_04_OptionsL.setObjectName(_fromUtf8("groupBox_02_04_OptionsL")) | |
self.label_02_04_01 = QtGui.QLabel(self.groupBox_02_04_OptionsL) | |
self.label_02_04_01.setGeometry(QtCore.QRect(10, 20, 71, 16)) | |
self.label_02_04_01.setFont(self.fontGlobal_08) | |
self.label_02_04_01.setToolTip(_fromUtf8("Line width")) | |
self.label_02_04_01.setObjectName(_fromUtf8("label_02_04_01")) | |
self.label_02_04_02 = QtGui.QLabel(self.groupBox_02_04_OptionsL) | |
self.label_02_04_02.setGeometry(QtCore.QRect(90, 20, 46, 13)) | |
self.label_02_04_02.setFont(self.fontGlobal_08) | |
self.label_02_04_02.setToolTip(_fromUtf8("Points of line")) | |
self.label_02_04_02.setObjectName(_fromUtf8("label_02_04_02")) | |
self.DS_02_04_01_LineWidth = QtGui.QDoubleSpinBox(self.groupBox_02_04_OptionsL) | |
self.DS_02_04_01_LineWidth.setGeometry(QtCore.QRect(10, 20, 81, 22)) | |
self.DS_02_04_01_LineWidth.setFont(self.fontGlobal_08) | |
self.DS_02_04_01_LineWidth.setToolTip(_fromUtf8("Line Width")) | |
self.DS_02_04_01_LineWidth.setMaximum(999999.999999) | |
self.DS_02_04_01_LineWidth.setSingleStep(self.lineWidth) | |
self.DS_02_04_01_LineWidth.setValue(self.lineWidth) | |
self.DS_02_04_01_LineWidth.setSingleStep(1) | |
self.DS_02_04_01_LineWidth.setObjectName(_fromUtf8("DS_02_04_01_LineWidth")) | |
self.DS_02_04_01_LineWidth.valueChanged.connect(self.on_DS_02_04_01_LineWidth) # connect on def "on_DS_02_04_01_LineWidth_valueChanged" | |
self.DS_02_04_02_PSize = QtGui.QDoubleSpinBox(self.groupBox_02_04_OptionsL) | |
self.DS_02_04_02_PSize.setGeometry(QtCore.QRect(10, 50, 81, 22)) | |
self.DS_02_04_02_PSize.setFont(self.fontGlobal_08) | |
self.DS_02_04_02_PSize.setToolTip(_fromUtf8("Points of line")) | |
self.DS_02_04_02_PSize.setMaximum(999999.999999) | |
self.DS_02_04_02_PSize.setSingleStep(self.pointSize) | |
self.DS_02_04_02_PSize.setValue(self.pointSize) | |
self.DS_02_04_02_PSize.setSingleStep(1) | |
self.DS_02_04_02_PSize.setObjectName(_fromUtf8("DS_02_04_02_PSize")) | |
self.DS_02_04_02_PSize.valueChanged.connect(self.on_DS_02_04_02_PSize) # connect on def "on_DS_02_04_02_PSize" | |
self.PB_02_04_03_Color = QtGui.QPushButton(self.groupBox_02_04_OptionsL) | |
self.PB_02_04_03_Color.setGeometry(QtCore.QRect(10, 90, 81, 31)) | |
self.PB_02_04_03_Color.setFont(self.fontGlobal_08) | |
self.PB_02_04_03_Color.setToolTip(_fromUtf8("Color of line")) | |
self.PB_02_04_03_Color.setObjectName(_fromUtf8("PB_02_04_03_Color")) | |
self.PB_02_04_03_Color.clicked.connect(self.on_PB_02_04_03_Color) # | |
self.groupBox_02_05_Plane = QtGui.QGroupBox(self.groupBox_01_TypeLine) | |
self.groupBox_02_05_Plane.setGeometry(QtCore.QRect(10, 300, 211, 51)) | |
self.groupBox_02_05_Plane.setFont(self.fontGlobal_08) | |
self.groupBox_02_05_Plane.setEnabled(False) | |
self.groupBox_02_05_Plane.setObjectName(_fromUtf8("groupBox_02_05_Plane")) | |
self.RB_02_05_01_XY = QtGui.QRadioButton(self.groupBox_02_05_Plane) | |
self.RB_02_05_01_XY.setGeometry(QtCore.QRect(10, 20, 41, 17)) | |
self.RB_02_05_01_XY.setFont(self.fontGlobal_08) | |
self.RB_02_05_01_XY.setToolTip(_fromUtf8("Plans XY this function is used by ZigZag and Hand")) | |
self.RB_02_05_01_XY.setChecked(True) | |
self.RB_02_05_01_XY.setObjectName(_fromUtf8("RB_02_05_01_XY")) | |
self.RB_02_05_01_XY.clicked.connect(self.on_RB_02_05_01_XY) #connection radioButton | |
self.RB_02_05_02_YZ = QtGui.QRadioButton(self.groupBox_02_05_Plane) | |
self.RB_02_05_02_YZ.setGeometry(QtCore.QRect(60, 20, 41, 17)) | |
self.RB_02_05_02_YZ.setFont(self.fontGlobal_08) | |
self.RB_02_05_02_YZ.setToolTip(_fromUtf8("Plans YZ this function is used by ZigZag and Hand")) | |
self.RB_02_05_02_YZ.setObjectName(_fromUtf8("RB_02_05_02_YZ")) | |
self.RB_02_05_02_YZ.clicked.connect(self.on_RB_02_05_02_YZ) #connection radioButton | |
self.RB_02_05_03_XY = QtGui.QRadioButton(self.groupBox_02_05_Plane) | |
self.RB_02_05_03_XY.setGeometry(QtCore.QRect(110, 20, 41, 17)) | |
self.RB_02_05_03_XY.setFont(self.fontGlobal_08) | |
self.RB_02_05_03_XY.setToolTip(_fromUtf8("Plans XY this function is used by ZigZag and Hand")) | |
self.RB_02_05_03_XY.setObjectName(_fromUtf8("RB_02_05_03_XY")) | |
self.RB_02_05_03_XY.clicked.connect(self.on_RB_02_05_03_XY) #connection radioButton | |
### ---graphicsView---02_View | |
self.graphicsView_2 = QtGui.QGraphicsView(self.groupBox_02_05_Plane) #Plane type view | |
if platform.system() == "Windows" : | |
self.graphicsView_2.setGeometry(QtCore.QRect(170, 12, 31, 31)) # image = setGeometry - 2px | |
else: | |
self.graphicsView_2.setGeometry(QtCore.QRect(170, 12, 33, 33)) # image = setGeometry | |
self.graphicsView_2.setFont(self.fontGlobal_08) | |
self.graphicsView_2.setObjectName(_fromUtf8("graphicsView_2")) | |
pic = QtGui.QPixmap(self.path + "Macro_FCConvrtLines_View-top.png") | |
self.scene = QtGui.QGraphicsScene() | |
self.scene.addPixmap(QtGui.QPixmap(pic)) | |
self.graphicsView_2.setScene(ui.scene) | |
### ---graphicsView---02_View | |
### ---graphicsView---01_tableau | |
self.graphicsView = QtGui.QGraphicsView(self.groupBox_01_TypeLine) #Line type | |
if platform.system() == "Windows" : | |
self.graphicsView.setGeometry(QtCore.QRect(10, 360, 321, 91)) # image = setGeometry - 2px | |
else: | |
self.graphicsView.setGeometry(QtCore.QRect(10, 360, 323, 93)) # image = setGeometry | |
self.graphicsView.setFont(self.fontGlobal_08) | |
self.graphicsView.setFrameShape(QtGui.QFrame.StyledPanel) | |
self.graphicsView.setObjectName(_fromUtf8("graphicsView")) | |
pic = QtGui.QPixmap(self.path + "Macro_FCConvertLines_Title.png") | |
self.scene = QtGui.QGraphicsScene() | |
self.scene.addPixmap(QtGui.QPixmap(pic)) | |
self.graphicsView.setScene(ui.scene) | |
### ---graphicsView---01_tableau | |
self.label_Title = QtGui.QLabel(self.centralwidget) | |
self.label_Title.setGeometry(QtCore.QRect(110, 10, 161, 20)) | |
font = QtGui.QFont() | |
font.setPointSize(16) | |
font.setUnderline(True) | |
self.label_Title.setFont(font) | |
self.label_Title.setObjectName(_fromUtf8("label_Title")) | |
MainWindow.setCentralWidget(self.centralwidget) | |
self.retranslateUi(MainWindow) | |
QtCore.QMetaObject.connectSlotsByName(MainWindow) | |
def retranslateUi(self, MainWindow): | |
MainWindow.setWindowTitle(__title__ + " (" + __version__ + " : " + __date__ + ")") | |
self.PB_01_Save.setText("Save Type") | |
self.PB_02_Load.setText("Load type") | |
self.PB_03_Reset.setText("Reset") | |
self.PB_04_CreateComp.setText("Create Comp") | |
self.PB_05_Create.setText("Create") | |
self.LE_01_LineType.setText("Name type line") | |
self.PB_06_Quit.setText("Quit") | |
self.RB_01_01_Dash.setText("Dash") | |
self.RB_01_02_DashDot.setText("DashDot") | |
self.RB_01_03_DashDotDot.setText("DashDotDot") | |
self.RB_01_04_ZigZag.setText("Zigzags") | |
self.RB_01_05_Hand.setText("Hand") | |
self.groupBox_02_01_DashDot.setTitle("Dash ... ...") | |
self.label_02_01_01_A.setText("Line A") | |
self.label_02_01_02_B.setText("Space B") | |
self.label_02_01_03_C.setText("Line 2 C") | |
self.label_02_01_04_D.setText("Space 2 D") | |
self.groupBox_02_02_ZigZag.setTitle("ZigZag") | |
self.label_02_02_0X.setText("Number heads") | |
self.label_02_02_01_A.setText("Begin A") | |
self.label_02_02_02_B.setText("Dimension B") | |
self.label_02_02_03_C.setText("Gap C") | |
self.label_02_02_04_D.setText("Height D") | |
self.label_02_02_05_E.setText("Number E") | |
self.label_02_02_Length.setText(str((self.BeginA * 2) + ((self.NHeadsX * (self.DimensionB + (self.GapC * self.NumberE))) - self.DimensionB))) | |
self.groupBox_02_03_Hand.setTitle("Hand") | |
self.label_02_03_01_A.setText("Length A") | |
self.label_02_03_02_B.setText("Height B") | |
self.label_02_03_03_C.setText("Wave") | |
self.groupBox_02_04_OptionsL.setTitle("Options line") | |
self.DS_02_04_01_LineWidth.setSuffix(" Width") | |
self.DS_02_04_02_PSize.setSuffix(" Point Size") | |
self.PB_02_04_03_Color.setText("Color") | |
self.label_Title.setText("FCConvert Lines") | |
self.groupBox_02_05_Plane.setTitle("Plane") | |
self.RB_02_05_01_XY.setText("XY") | |
self.RB_02_05_02_YZ.setText("YZ") | |
self.RB_02_05_03_XY.setText("XZ") | |
self.groupBox_00_CutLine.setTitle("Cut Line") | |
self.CB_00_00_CreateLine.setText("Create L.") | |
self.CB_00_01_Dimension.setText("Dimension") | |
self.CB_00_02_BiColor.setText("BiColor") | |
self.CB_00_03_CreatePoints.setText("Points") | |
MainWindow.setWindowFlags(PySide.QtCore.Qt.WindowStaysOnTopHint) # PySide cette fonction met la fenêtre en avant | |
def on_groupBox_00_CutLine(self): # | |
self.PB_05_Create.setStyleSheet("background-color: QPalette.Base") # origin system | |
if self.groupBox_00_CutLine.isChecked(): | |
self.groupBox_01_TypeLine.setEnabled(False) | |
self.groupBox_02_05_Plane.setEnabled(False) | |
self.DS_01_NumberCut.setEnabled(True) | |
self.RB_01_01_Dash.setChecked(True) | |
self.PB_04_CreateComp.setEnabled(False) | |
pic = QtGui.QPixmap(self.path+"Macro_FCConvertLines_Title.png") | |
self.scene = QtGui.QGraphicsScene() | |
self.scene.addPixmap(QtGui.QPixmap(pic)) | |
self.graphicsView.setScene(ui.scene) | |
else: | |
self.groupBox_01_TypeLine.setEnabled(True) | |
self.groupBox_02_01_DashDot.setEnabled(True) | |
self.DS_01_NumberCut.setEnabled(False) | |
self.PB_04_CreateComp.setEnabled(True) | |
self.DS_02_01_03_Line2C.setEnabled(False) | |
self.DS_02_01_04_Space2D.setEnabled(False) | |
self.groupBox_02_02_ZigZag.setEnabled(False) | |
self.groupBox_02_03_Hand.setEnabled(False) | |
pic = QtGui.QPixmap(self.path+"Macro_FCConvertLines_Dash.png") | |
self.scene = QtGui.QGraphicsScene() | |
self.scene.addPixmap(QtGui.QPixmap(pic)) | |
self.graphicsView.setScene(ui.scene) | |
# FreeCAD.Console.PrintMessage(str("on_groupBox_00_CutLine ")+"\n") | |
def on_DS_01_NumberCut_valueChanged(self,Value): | |
self.NumberCut = Value | |
self.PB_05_Create.setStyleSheet("background-color: QPalette.Base") # origin system | |
# FreeCAD.Console.PrintMessage(str("SP_01_NumberCut ")+str(self.NumberCut)+"\n") | |
def on_CB_00_CB_00_00_CreateLine_clicked(self): | |
self.PB_05_Create.setStyleSheet("background-color: QPalette.Base") # origin system | |
# FreeCAD.Console.PrintMessage(str("on_CB_00_CB_00_00_CreateLine_clicked"+"\n") | |
def on_CB_00_01_Dimension_clicked(self): | |
self.PB_05_Create.setStyleSheet("background-color: QPalette.Base") # origin system | |
if self.CB_00_01_Dimension.isChecked(): # Dimension | |
self.DS_01_NumberCut.setSingleStep(1) | |
self.DS_01_NumberCut.setMaximum(9999999.9999999) | |
self.DS_01_NumberCut.setMinimum(-9999999) | |
self.DS_01_NumberCut.setDecimals(3) | |
self.DS_01_NumberCut.setSuffix(_fromUtf8(" Dim")) | |
self.DS_01_NumberCut.setValue(self.NumberCut) | |
self.DS_01_NumberCut.setToolTip(_fromUtf8("Cut the line to length")) | |
else: | |
self.DS_01_NumberCut.setSingleStep(1) # Cut line | |
self.DS_01_NumberCut.setMaximum(9999999) | |
self.DS_01_NumberCut.setMinimum(1) | |
self.DS_01_NumberCut.setDecimals(0) | |
self.DS_01_NumberCut.setSuffix(_fromUtf8(" Cut")) | |
self.DS_01_NumberCut.setValue(self.NumberCut) | |
self.DS_01_NumberCut.setToolTip(_fromUtf8("Cut in x parts the selected line")) | |
# FreeCAD.Console.PrintMessage(str("on_CB_00_01_Dimension_clicked ")+"\n") | |
def on_CB_00_02_BiColor_clicked(self): | |
self.PB_05_Create.setStyleSheet("background-color: QPalette.Base") # origin system | |
# FreeCAD.Console.PrintMessage(str("on_CB_00_03_CreatePoints_clicked ")+"\n") | |
def on_CB_00_03_CreatePoints_clicked(self): | |
self.PB_05_Create.setStyleSheet("background-color: QPalette.Base") # origin system | |
# FreeCAD.Console.PrintMessage(str("on_CB_00_03_CreatePoints_clicked ")+"\n") | |
def on_RB_01_01_Dash(self): | |
self.PB_05_Create.setStyleSheet("background-color: QPalette.Base") # origin system | |
self.groupBox_02_01_DashDot.setEnabled(True) | |
self.groupBox_02_02_ZigZag.setEnabled(False) | |
self.groupBox_02_03_Hand.setEnabled(False) | |
self.DS_02_01_01_LineA.setEnabled(True) | |
self.DS_02_01_02_SpaceB.setEnabled(True) | |
self.DS_02_01_03_Line2C.setEnabled(False) | |
self.DS_02_01_04_Space2D.setEnabled(False) | |
self.groupBox_02_05_Plane.setEnabled(False) | |
self.PB_04_CreateComp.setEnabled(True) | |
# FreeCAD.Console.PrintMessage(str("on_RB_01_01_Dash ")+"\n") | |
pic = QtGui.QPixmap(self.path+"Macro_FCConvertLines_Dash.png") | |
self.scene = QtGui.QGraphicsScene() | |
self.scene.addPixmap(QtGui.QPixmap(pic)) | |
self.graphicsView.setScene(ui.scene) | |
def on_RB_01_02_DashDot(self): | |
self.PB_05_Create.setStyleSheet("background-color: QPalette.Base") # origin system | |
self.groupBox_02_01_DashDot.setEnabled(True) | |
self.groupBox_02_02_ZigZag.setEnabled(False) | |
self.groupBox_02_03_Hand.setEnabled(False) | |
self.DS_02_01_01_LineA.setEnabled(True) | |
self.DS_02_01_02_SpaceB.setEnabled(True) | |
self.DS_02_01_03_Line2C.setEnabled(True) | |
self.DS_02_01_04_Space2D.setEnabled(True) | |
self.groupBox_02_05_Plane.setEnabled(False) | |
self.PB_04_CreateComp.setEnabled(True) | |
# FreeCAD.Console.PrintMessage(str("on_RB_01_02_DashDot ")+"\n") | |
pic = QtGui.QPixmap(self.path+"Macro_FCConvertLines_DashDot.png") | |
self.scene = QtGui.QGraphicsScene() | |
self.scene.addPixmap(QtGui.QPixmap(pic)) | |
self.graphicsView.setScene(ui.scene) | |
def on_RB_01_03_DashDotDot(self): | |
self.PB_05_Create.setStyleSheet("background-color: QPalette.Base") # origin system | |
self.groupBox_02_01_DashDot.setEnabled(True) | |
self.groupBox_02_02_ZigZag.setEnabled(False) | |
self.groupBox_02_03_Hand.setEnabled(False) | |
self.DS_02_01_01_LineA.setEnabled(True) | |
self.DS_02_01_02_SpaceB.setEnabled(True) | |
self.DS_02_01_03_Line2C.setEnabled(True) | |
self.DS_02_01_04_Space2D.setEnabled(True) | |
self.groupBox_02_05_Plane.setEnabled(False) | |
self.PB_04_CreateComp.setEnabled(True) | |
# FreeCAD.Console.PrintMessage(str("on_RB_01_03_DashDotDot ")+"\n") | |
pic = QtGui.QPixmap(self.path+"Macro_FCConvertLines_DashDotDot.png") | |
self.scene = QtGui.QGraphicsScene() | |
self.scene.addPixmap(QtGui.QPixmap(pic)) | |
self.graphicsView.setScene(ui.scene) | |
def on_RB_01_04_ZigZag(self): # | |
self.PB_05_Create.setStyleSheet("background-color: QPalette.Base") # origin system | |
self.groupBox_02_01_DashDot.setEnabled(False) | |
self.groupBox_02_02_ZigZag.setEnabled(True) | |
self.groupBox_02_03_Hand.setEnabled(False) | |
self.groupBox_02_05_Plane.setEnabled(True) | |
self.PB_04_CreateComp.setEnabled(False) | |
# FreeCAD.Console.PrintMessage(str("on_RB_01_04_ZigZag ")+"\n") | |
pic = QtGui.QPixmap(self.path+"Macro_FCConvertLines_ZigZag.png") | |
self.scene = QtGui.QGraphicsScene() | |
self.scene.addPixmap(QtGui.QPixmap(pic)) | |
self.graphicsView.setScene(ui.scene) | |
def on_RB_01_05_Hand(self): # | |
self.PB_05_Create.setStyleSheet("background-color: QPalette.Base") # origin system | |
self.groupBox_02_01_DashDot.setEnabled(False) | |
self.groupBox_02_02_ZigZag.setEnabled(False) | |
self.groupBox_02_03_Hand.setEnabled(True) | |
self.groupBox_02_05_Plane.setEnabled(True) | |
self.PB_04_CreateComp.setEnabled(False) | |
# FreeCAD.Console.PrintMessage(str("on_RB_01_05_Hand ")+"\n") | |
pic = QtGui.QPixmap(self.path+"Macro_FCConvertLines_Hand.png") | |
self.scene = QtGui.QGraphicsScene() | |
self.scene.addPixmap(QtGui.QPixmap(pic)) | |
self.graphicsView.setScene(ui.scene) | |
def on_RB_02_05_01_XY(self): | |
self.PB_05_Create.setStyleSheet("background-color: QPalette.Base") # origin system | |
self.Plan = 1 | |
pic = QtGui.QPixmap(self.path+"Macro_FCConvrtLines_View-top.png") | |
self.scene = QtGui.QGraphicsScene() | |
self.scene.addPixmap(QtGui.QPixmap(pic)) | |
self.graphicsView_2.setScene(ui.scene) | |
# FreeCAD.Console.PrintMessage(str("on_RB_02_05_01_XY ")+str(self.Plan)+"\n") | |
def on_RB_02_05_02_YZ(self): | |
self.PB_05_Create.setStyleSheet("background-color: QPalette.Base") # origin system | |
self.Plan = 2 | |
pic = QtGui.QPixmap(self.path+"Macro_FCConvrtLines_View-right.png") | |
self.scene = QtGui.QGraphicsScene() | |
self.scene.addPixmap(QtGui.QPixmap(pic)) | |
self.graphicsView_2.setScene(ui.scene) | |
# FreeCAD.Console.PrintMessage(str("on_RB_02_05_02_YZ ")+str(self.Plan)+"\n") | |
def on_RB_02_05_03_XY(self): | |
self.PB_05_Create.setStyleSheet("background-color: QPalette.Base") # origin system | |
self.Plan = 3 | |
pic = QtGui.QPixmap(self.path+"Macro_FCConvrtLines_View-front.png") | |
self.scene = QtGui.QGraphicsScene() | |
self.scene.addPixmap(QtGui.QPixmap(pic)) | |
self.graphicsView_2.setScene(ui.scene) | |
# FreeCAD.Console.PrintMessage(str("on_RB_02_05_03_XY ")+str(self.Plan)+"\n") | |
### DS ########################################################################## | |
def on_DS_02_01_01_LineA_valueChanged(self,value): | |
self.PB_05_Create.setStyleSheet("background-color: QPalette.Base") # origin system | |
self.LineA = value | |
# FreeCAD.Console.PrintMessage(str("DS_02_01_01_LineA ")+str(self.LineA)+"\n") | |
def on_DS_02_01_02_SpaceB_valueChanged(self,value): | |
self.PB_05_Create.setStyleSheet("background-color: QPalette.Base") # origin system | |
self.SpaceB = value | |
self.DS_02_01_04_Space2D.setValue(self.SpaceB) | |
self.Space2D = self.SpaceB | |
# FreeCAD.Console.PrintMessage(str("DS_02_01_02_SpaceB ")+str(self.SpaceB)+"\n") | |
def on_DS_02_01_03_Line2C_valueChanged(self,value): | |
self.PB_05_Create.setStyleSheet("background-color: QPalette.Base") # origin system | |
self.Line2C = value | |
# FreeCAD.Console.PrintMessage(str("DS_02_01_03_Line2C ")+str(self.Line2C)+"\n") | |
def on_DS_02_01_04_Space2D_valueChanged(self,value): | |
self.PB_05_Create.setStyleSheet("background-color: QPalette.Base") # origin system | |
self.Space2D = value | |
# FreeCAD.Console.PrintMessage(str("DS_02_01_04_Space2D ")+str(self.Space2D)+"\n") | |
def on_SP_02_02_01_NHeadsX_valueChanged(self,value): | |
self.PB_05_Create.setStyleSheet("background-color: QPalette.Base") # origin system | |
self.NHeadsX = value | |
self.label_02_02_Length.setText(str((self.BeginA * 2) + ((self.NHeadsX * (self.DimensionB + (self.GapC * self.NumberE))) - self.DimensionB))) | |
# FreeCAD.Console.PrintMessage(str("DS_02_02_01_NHeadsX ")+str(self.NHeadsX)+"\n") | |
def on_DS_02_02_01_BeginA_valueChanged(self,value): | |
self.PB_05_Create.setStyleSheet("background-color: QPalette.Base") # origin system | |
self.BeginA = value | |
self.label_02_02_Length.setText(str((self.BeginA * 2) + ((self.NHeadsX * (self.DimensionB + (self.GapC * self.NumberE))) - self.DimensionB))) | |
# FreeCAD.Console.PrintMessage(str("DS_02_02_01_BeginA ")+str(self.BeginA)+"\n") | |
def on_DS_02_02_02_DimensionB_valueChanged(self,value): | |
self.PB_05_Create.setStyleSheet("background-color: QPalette.Base") # origin system | |
self.DimensionB = value | |
self.label_02_02_Length.setText(str((self.BeginA * 2) + ((self.NHeadsX * (self.DimensionB + (self.GapC * self.NumberE))) - self.DimensionB))) | |
# FreeCAD.Console.PrintMessage(str("DS_02_02_02_DimensionB ")+str(self.DimensionB)+"\n") | |
def on_DS_02_02_03_GapC_valueChanged(self,value): | |
self.PB_05_Create.setStyleSheet("background-color: QPalette.Base") # origin system | |
self.GapC = value | |
self.label_02_02_Length.setText(str((self.BeginA * 2) + ((self.NHeadsX * (self.DimensionB + (self.GapC * self.NumberE))) - self.DimensionB))) | |
# FreeCAD.Console.PrintMessage(str("DS_02_02_03_GapC ")+str(self.GapC)+"\n") | |
def on_DS_02_02_04_HeightD_valueChanged(self,value): | |
self.PB_05_Create.setStyleSheet("background-color: QPalette.Base") # origin system | |
self.HeightD = value | |
self.label_02_02_Length.setText(str((self.BeginA * 2) + ((self.NHeadsX * (self.DimensionB + (self.GapC * self.NumberE))) - self.DimensionB))) | |
# FreeCAD.Console.PrintMessage(str("DS_02_02_04_HeightD ")+str(self.HeightD)+"\n") | |
def on_SP_02_02_05_NumberE_valueChanged(self,value): | |
self.PB_05_Create.setStyleSheet("background-color: QPalette.Base") # origin system | |
self.NumberE = value | |
self.label_02_02_Length.setText(str((self.BeginA * 2) + ((self.NHeadsX * (self.DimensionB + (self.GapC * self.NumberE))) - self.DimensionB))) | |
# FreeCAD.Console.PrintMessage(str("SP_02_02_05_NumberD ")+str(self.NumberE)+"\n") | |
def on_DS_02_03_01_LengthA_valueChanged(self,value): | |
self.PB_05_Create.setStyleSheet("background-color: QPalette.Base") # origin system | |
self.LengthA = value | |
# FreeCAD.Console.PrintMessage(str("DS_02_03_01_LengthA ")+str(self.LengthA)+"\n") | |
def on_DS_02_03_02_HeightB_valueChanged(self,value): | |
self.PB_05_Create.setStyleSheet("background-color: QPalette.Base") # origin system | |
self.HeightB = value | |
# FreeCAD.Console.PrintMessage(str("DS_02_03_02_HeightB ")+str(self.HeightB)+"\n") | |
def on_DS_02_03_03_WaveC_valueChanged(self,value): | |
self.PB_05_Create.setStyleSheet("background-color: QPalette.Base") # origin system | |
self.WaveC = value | |
# FreeCAD.Console.PrintMessage(str("DS_02_03_03_WaveC ")+str(self.WaveC)+"\n") | |
### PB ############################################################################ | |
def on_PB_01_Save(self): # | |
self.PB_05_Create.setStyleSheet("background-color: QPalette.Base") # origin system | |
SaveName = "" | |
preDefini = "" | |
if self.groupBox_00_CutLine.isChecked(): # 2 | |
preDefini = "CutLine_" | |
elif self.RB_01_01_Dash.isChecked(): # 8 | |
preDefini = "Dash_" | |
elif self.RB_01_02_DashDot.isChecked(): # 9 | |
preDefini = "DashDot_" | |
elif self.RB_01_03_DashDotDot.isChecked(): # 10 | |
preDefini = "DashDotDot_" | |
elif self.RB_01_04_ZigZag.isChecked(): # 11 | |
preDefini = "ZigZag_" | |
elif self.RB_01_05_Hand.isChecked(): # 12 | |
preDefini = "Hand_" | |
try: | |
SaveName = QFileDialog.getSaveFileName(None,QString.fromLocal8Bit("Save a file FCConvertL"),self.path + preDefini, "*.FCConvertL") # PyQt4 | |
except Exception: | |
SaveName, Filter = PySide.QtGui.QFileDialog.getSaveFileName(None, "Save a file FCConvertL", self.path + preDefini, "*.FCConvertL") # PySide | |
if SaveName == "": | |
FreeCAD.Console.PrintMessage("Process aborted"+"\n") | |
errorDialog("Process aborted") | |
else: | |
FreeCAD.Console.PrintMessage("Registration of "+SaveName+"\n") | |
try: | |
import codecs | |
file = codecs.open(SaveName, encoding='utf-8', mode='w')# r=read a=append w=write accepte les accents | |
try: | |
file.write("FCConvert_01"+",") # 0 # header version | |
if self.NameType == "": | |
self.NameType = "FCConvertLines" | |
file.write(self.NameType +",") # 1 # nom venant de la boite de dialogue | |
##### | |
if self.groupBox_00_CutLine.isChecked(): # 2 | |
file.write(str("1")+",") | |
else: | |
file.write(str("0")+",") | |
file.write(str(self.NumberCut)+",") # 3 | |
if self.CB_00_00_CreateLine.isChecked(): # 4 | |
file.write(str("1")+",") | |
else: | |
file.write(str("0")+",") | |
if self.CB_00_01_Dimension.isChecked(): # 5 | |
file.write(str("1")+",") | |
else: | |
file.write(str("0")+",") | |
if self.CB_00_02_BiColor.isChecked(): # 6 | |
file.write(str("1")+",") | |
else: | |
file.write(str("0")+",") | |
if self.CB_00_03_CreatePoints.isChecked(): # 7 | |
file.write(str("1")+",") | |
else: | |
file.write(str("0")+",") | |
##### | |
if self.RB_01_01_Dash.isChecked(): # 8 | |
file.write(str("1")+",") | |
else: | |
file.write(str("0")+",") | |
if self.RB_01_02_DashDot.isChecked(): # 9 | |
file.write(str("1")+",") | |
else: | |
file.write(str("0")+",") | |
if self.RB_01_03_DashDotDot.isChecked(): # 10 | |
file.write(str("1")+",") | |
else: | |
file.write(str("0")+",") | |
if self.RB_01_04_ZigZag.isChecked(): # 11 | |
file.write(str("1")+",") | |
else: | |
file.write(str("0")+",") | |
if self.RB_01_05_Hand.isChecked(): # 12 | |
file.write(str("1")+",") | |
else: | |
file.write(str("0")+",") | |
##### | |
file.write(str(self.LineA)+",") # 13 | |
file.write(str(self.SpaceB)+",") # 14 | |
file.write(str(self.Line2C)+",") # 15 | |
file.write(str(self.Space2D)+",") # 16 | |
##### | |
file.write(str(self.NHeadsX)+",") # 17 | |
file.write(str(self.BeginA)+",") # 18 | |
file.write(str(self.DimensionB)+",") # 19 | |
file.write(str(self.GapC)+",") # 20 | |
file.write(str(self.HeightD)+",") # 21 | |
file.write(str(self.NumberE)+",") # 22 | |
##### | |
file.write(str(self.LengthA)+",") # 23 | |
file.write(str(self.HeightB)+",") # 24 | |
file.write(str(self.WaveC)+",") # 25 | |
##### | |
file.write(str(self.lineWidth)+",") # 26 | |
file.write(str(self.pointSize)+",") # 27 | |
file.write(str(self.red)+",") # 28 | |
file.write(str(self.green)+",") # 29 | |
file.write(str(self.blue)+",") # 30 | |
##### | |
if self.RB_02_05_01_XY.isChecked(): # 31 | |
file.write(str("1")+",") | |
else: | |
file.write(str("0")+",") | |
if self.RB_02_05_02_YZ.isChecked(): # 32 | |
file.write(str("1")+",") | |
else: | |
file.write(str("0")+",") | |
if self.RB_02_05_03_XY.isChecked(): # 33 | |
file.write(str("1")+",") | |
else: | |
file.write(str("0")+",") | |
##### | |
file.write(str("00")+",") # 34 | |
file.write(str("00")+",") # 35 | |
file.write(str("00")+",") # 36 | |
file.write(str("00")+",") # 37 | |
file.write(str("00")+",") # 38 | |
file.write(str("00")+",") # 39 | |
file.write(str("00")+",") # 40 | |
file.write(str("00")+",") # 41 | |
file.write(str("00")+",") # 42 | |
file.write(str("00")+",") # 43 | |
file.write(str("00")+",") # 44 | |
file.write(str("00")+"\n") # 45 last data with line feed [ENTER] | |
finally: | |
file.close() | |
except Exception: | |
FreeCAD.Console.PrintError("Error Registration file "+SaveName+"\n") | |
errorDialog("Error Registration file "+SaveName) | |
# FreeCAD.Console.PrintMessage(str("on_PB_01_Save ")+"\n") | |
def on_PB_02_Load(self): # | |
self.PB_05_Create.setStyleSheet("background-color: QPalette.Base") # origin system | |
OpenName = "" | |
try: | |
OpenName = QFileDialog.getOpenFileName(None,QString.fromLocal8Bit("Read a file FCConvertL"),self.path,"*.FCConvertL") # PyQt4 | |
except Exception: | |
OpenName, Filter = PySide.QtGui.QFileDialog.getOpenFileName(None, "Read a file FCConvertL", self.path, "*.FCConvertL")#PySide | |
try: | |
if OpenName != "": | |
try: | |
import codecs | |
file = codecs.open(OpenName, encoding='utf-8', mode='r') # r=read a=append w=write accepte les accents | |
codeFile = file.readline().split(",") | |
if (str(codeFile[0]) == "FCConvert_01"): # 0 # header version | |
a = ui | |
a.on_PB_03_Reset() | |
self.LE_01_LineType.setText(codeFile[1]) # 1 # nom venant de la boite de dialogue | |
##### | |
if int(codeFile[2]) == 1: # 2 | |
self.groupBox_00_CutLine.setChecked(True) | |
else: | |
self.groupBox_00_CutLine.setChecked(False) | |
a = ui | |
a.on_groupBox_00_CutLine() | |
self.NumberCut = float(codeFile[3]) # 3 | |
self.DS_01_NumberCut.setValue(self.NumberCut) | |
if int(codeFile[4]) == 1: # 4 | |
self.CB_00_00_CreateLine.setChecked(True) | |
else: | |
self.CB_00_00_CreateLine.setChecked(False) | |
if int(codeFile[5]) == 1: # 5 | |
self.CB_00_01_Dimension.setChecked(True) | |
else: | |
self.CB_00_01_Dimension.setChecked(False) | |
a = ui | |
a.on_CB_00_01_Dimension_clicked() | |
if int(codeFile[6]) == 1: # 6 | |
self.CB_00_02_BiColor.setChecked(True) | |
else: | |
self.CB_00_02_BiColor.setChecked(False) | |
if int(codeFile[7]) == 1: # 7 | |
self.CB_00_03_CreatePoints.setChecked(True) | |
else: | |
self.CB_00_03_CreatePoints.setChecked(False) | |
##### | |
if int(codeFile[8]) == 1: # 8 | |
self.RB_01_01_Dash.setChecked(True) | |
a = ui | |
a.on_RB_01_01_Dash() | |
# else: | |
# self.RB_01_01_Dash.setChecked(False) | |
# a = ui | |
# a.on_RB_01_01_Dash() | |
if int(codeFile[9]) == 1: # 9 | |
self.RB_01_02_DashDot.setChecked(True) | |
a = ui | |
a.on_RB_01_02_DashDot() | |
# else: | |
# self.RB_01_02_DashDot.setChecked(False) | |
# a = ui | |
# a.on_RB_01_02_DashDot() | |
if int(codeFile[10]) == 1: # 10 | |
self.RB_01_03_DashDotDot.setChecked(True) | |
a = ui | |
a.on_RB_01_03_DashDotDot() | |
# else: | |
# self.RB_01_03_DashDotDot.setChecked(False) | |
# a = ui | |
# a.on_RB_01_03_DashDotDot() | |
if int(codeFile[11]) == 1: # 11 | |
self.RB_01_04_ZigZag.setChecked(True) | |
a = ui | |
a.on_RB_01_04_ZigZag() | |
# else: | |
# self.RB_01_04_ZigZag.setChecked(False) | |
# a = ui | |
# a.on_RB_01_04_ZigZag() | |
if int(codeFile[12]) == 1: # 12 | |
self.RB_01_05_Hand.setChecked(True) | |
a = ui | |
a.on_RB_01_05_Hand() | |
# else: | |
# self.RB_01_05_Hand.setChecked(False) | |
# a = ui | |
# a.on_RB_01_05_Hand() | |
##### | |
self.LineA = float(codeFile[13]) # 13 | |
self.DS_02_01_01_LineA.setValue(self.LineA) | |
self.SpaceB = float(codeFile[14]) # 14 | |
self.DS_02_01_02_SpaceB.setValue(self.SpaceB) | |
self.Line2C = float(codeFile[15]) # 15 | |
self.DS_02_01_03_Line2C.setValue(self.Line2C) | |
self.Space2D = float(codeFile[16]) # 16 | |
self.DS_02_01_04_Space2D.setValue(self.Space2D) | |
##### | |
self.NHeadsX = float(codeFile[17]) # 17 | |
self.SP_02_02_01_NHeadsX.setValue(self.NHeadsX) | |
self.BeginA = float(codeFile[18]) # 18 | |
self.DS_02_02_01_BeginA.setValue(self.BeginA) | |
self.DimensionB = float(codeFile[19]) # 19 | |
self.DS_02_02_02_DimensionB.setValue(self.DimensionB) | |
self.GapC = float(codeFile[20]) # 20 | |
self.DS_02_02_03_GapC.setValue(self.GapC) | |
self.HeightD = float(codeFile[21]) # 21 | |
self.DS_02_02_04_HeightD.setValue(self.HeightD) | |
self.NumberE = float(codeFile[22]) # 22 | |
self.SP_02_02_05_NumberE.setValue(self.NumberE) | |
self.label_02_02_Length.setText(str((self.BeginA * 2) + ((self.NHeadsX * (self.DimensionB + (self.GapC * self.NumberE))) - self.DimensionB))) | |
##### | |
self.LengthA = float(codeFile[23]) # 23 | |
self.DS_02_03_01_LengthA.setValue(self.LengthA) | |
self.HeightB = float(codeFile[24]) # 24 | |
self.DS_02_03_02_HeightB.setValue(self.HeightB) | |
self.WaveC = float(codeFile[25]) # 25 | |
self.DS_02_03_03_WaveC.setValue(self.WaveC) | |
##### | |
self.lineWidth = float(codeFile[26]) # 26 | |
self.DS_02_04_01_LineWidth.setValue(self.lineWidth) | |
self.pointSize = float(codeFile[27]) # 27 | |
self.DS_02_04_02_PSize.setValue(self.pointSize) | |
self.red = float(codeFile[28]) # 28 | |
self.green = float(codeFile[29]) # 29 | |
self.blue = float(codeFile[30]) # 30 | |
self.PB_02_04_03_Color.setStyleSheet("background-color: rgb("+str(self.red)+","+str(self.green)+","+str(self.blue)+"); color: cmj("+str(255)+","+str(255)+","+str(255)+")") | |
##### | |
if int(codeFile[31]) == 1: # 31 | |
self.RB_02_05_01_XY.setChecked(True) | |
# else: | |
# self.RB_02_05_01_XY.setChecked(False) | |
if int(codeFile[32]) == 1: # 32 | |
self.RB_02_05_02_YZ.setChecked(True) | |
# else: | |
# self.RB_02_05_02_YZ.setChecked(False) | |
if int(codeFile[33]) == 1: # 33 | |
self.RB_02_05_03_XY.setChecked(True) | |
# else: | |
# self.RB_02_05_03_XY.setChecked(False) | |
##### | |
forFuture = int(codeFile[34]) # 34 | |
forFuture = int(codeFile[35]) # 35 | |
forFuture = int(codeFile[36]) # 36 | |
forFuture = int(codeFile[37]) # 37 | |
forFuture = int(codeFile[38]) # 38 | |
forFuture = int(codeFile[39]) # 39 | |
forFuture = int(codeFile[40]) # 40 | |
forFuture = int(codeFile[41]) # 41 | |
forFuture = int(codeFile[42]) # 42 | |
forFuture = int(codeFile[43]) # 43 | |
forFuture = int(codeFile[44]) # 44 | |
forFuture = int(codeFile[45]) # 45 last data with line feed [ENTER] | |
# FreeCAD.Console.PrintMessage("____________________"+"\n") | |
finally: | |
file.close() | |
except Exception: | |
FreeCAD.Console.PrintError("Error in reading the file "+OpenName+"\n") | |
errorDialog("Error in reading the file "+OpenName) | |
# FreeCAD.Console.PrintMessage(str("on_PB_02_Load ")+"\n") | |
def on_PB_04_CreateComp(self): # | |
global ui | |
self.PB_05_Create.setStyleSheet("background-color: QPalette.Base") # origin system | |
self.Compound = 1 | |
ff = ui | |
ff.on_PB_05_Create() | |
self.Compound = 0 | |
# FreeCAD.Console.PrintMessage(str("on_PB_04_CreateComp ")+"\n") | |
def on_PB_02_04_03_Color(self): | |
self.PB_05_Create.setStyleSheet("background-color: QPalette.Base") # origin system | |
self.window.hide() # hide the window open color | |
couleur = QtGui.QColorDialog.getColor() | |
if couleur.isValid(): | |
self.red = int(str(couleur.name()[1:3]),16) | |
self.green = int(str(couleur.name()[3:5]),16) | |
self.blue = int(str(couleur.name()[5:7]),16) | |
self.PB_02_04_03_Color.setStyleSheet("background-color: rgb("+str(self.red)+","+str(self.green)+","+str(self.blue)+"); color: cmj("+str(255)+","+str(255)+","+str(255)+")") | |
self.window.show() # show the window and close color | |
# FreeCAD.Console.PrintMessage(str("PB_02_04_03_Color ")+"\n") | |
def on_LE_01_LineType_Pressed(self): | |
self.NameType = self.LE_01_LineType.text() # extract the string in the lineEdit | |
# FreeCAD.Console.PrintMessage(str("on_LE_01_LineType_Pressed ")+self.NameType+"\n") | |
def on_PB_05_Create(self): # OK create the line | |
selectionObjects = FreeCADGui.Selection.getSelection() | |
global emergency | |
if (len(selectionObjects) != 0) or (self.RB_01_04_ZigZag.isChecked()) or (self.RB_01_05_Hand.isChecked()): | |
emergency = 0 | |
try: | |
doc = FreeCAD.ActiveDocument | |
if doc == None: | |
doc = FreeCAD.newDocument() | |
except Exception: | |
FreeCAD.Console.PrintMessage("Error document"+"\n") | |
None | |
#### Chrono begin########################################################################### chrono begin | |
#depart = time.clock() # chrono begin | |
############################################################################################ chrono begin | |
self.PB_05_Create.setStyleSheet("background-color: QPalette.Base") # origin system | |
if self.groupBox_00_CutLine.isChecked(): # Cut and Dimension lines | |
if self.CB_00_00_CreateLine.isChecked(): | |
createLine = 1 | |
else: | |
createLine = 0 | |
if self.CB_00_02_BiColor.isChecked(): | |
biColor = 1 | |
else: | |
biColor = 0 | |
if self.CB_00_03_CreatePoints.isChecked(): | |
createPoint = 1 | |
else: | |
createPoint = 0 | |
if self.CB_00_01_Dimension.isChecked(): | |
cutLength(cutLength = self.NumberCut, cutLine = 00, red = self.red, green = self.green, blue = self.blue, typeColor = biColor, createLine = createLine, createPoints = createPoint, lineWidth = self.lineWidth, pSize = self.pointSize) | |
else: | |
cutLength(cutLength = 00, cutLine = self.NumberCut, red = self.red, green = self.green, blue = self.blue, typeColor = biColor, createLine = createLine, createPoints = createPoint, lineWidth = self.lineWidth, pSize = self.pointSize) | |
else: | |
if self.RB_01_01_Dash.isChecked(): | |
dashLine(self.LineA, self.SpaceB, compLine = self.Compound, red = self.red, green = self.green, blue = self.blue, typeLine = 1, lineWidth = self.lineWidth, pSize = self.pointSize) | |
if self.RB_01_02_DashDot.isChecked(): | |
dashLine(self.LineA, self.SpaceB, self.Line2C, self.Space2D, compLine = self.Compound, red = self.red, green = self.green, blue = self.blue, typeLine = 2, lineWidth = self.lineWidth, pSize = self.pointSize) | |
if self.RB_01_03_DashDotDot.isChecked(): | |
dashLine(self.LineA, self.SpaceB, self.Line2C, self.Space2D, compLine = self.Compound, red = self.red, green = self.green, blue = self.blue, typeLine = 3, lineWidth = self.lineWidth, pSize = self.pointSize) | |
if self.RB_01_04_ZigZag.isChecked(): | |
zigzagLine(NumberX = self.NHeadsX, BeginA = self.BeginA, DimensionB = self.DimensionB, GapC = self.GapC, HeightD = self.HeightD, NumberE = self.NumberE, compLine = self.Compound, red = self.red, green = self.green, blue = self.blue, plane = self.Plan, lineWidth = self.lineWidth, pSize = self.pointSize) | |
if self.RB_01_05_Hand.isChecked(): | |
handLine(LengthA = self.LengthA, HeightB = self.HeightB, WaveC = self.WaveC, red = self.red, green = self.green, blue = self.blue, plane = self.Plan, lineWidth = self.lineWidth, pSize = self.pointSize) | |
if emergency == 0: | |
self.PB_05_Create.setStyleSheet("background-color: green") # This function gives a color button | |
else: | |
self.PB_05_Create.setStyleSheet("background-color: red") # This function gives a color button | |
#### Chrono end ########################################################################### chrono end | |
#arrivee = time.clock() # chrono end | |
#FreeCAD.Console.PrintMessage("Time : "+str("%.2f" % ((arrivee - depart)/60))+" min"+"\n\n") # chrono end | |
########################################################################################### chrono end | |
else: | |
FreeCAD.Console.PrintError(str("Select one object ")+"\n") | |
self.PB_05_Create.setStyleSheet("background-color: red") # This function gives a color button | |
# FreeCAD.Console.PrintMessage(str("on_PB_05_Create ")+"\n") | |
def on_DS_02_04_01_LineWidth(self,LineWidth): | |
self.PB_05_Create.setStyleSheet("background-color: QPalette.Base") # origin system | |
self.lineWidth = LineWidth | |
# FreeCAD.Console.PrintMessage(str("on_DS_02_04_01_LineWidth ")+str(self.lineWidth)+"\n") | |
def on_DS_02_04_02_PSize(self,PointSize): | |
self.PB_05_Create.setStyleSheet("background-color: QPalette.Base") # origin system | |
self.pointSize = PointSize | |
# FreeCAD.Console.PrintMessage(str("on_DS_02_04_02_PSize ")+str(self.pointSize)+"\n") | |
def on_PB_03_Reset(self): # | |
global emergency | |
emergency = 0 | |
self.NumberCut = 2.0 | |
self.LineA = 2.0 | |
self.SpaceB = 0.5 | |
self.Line2C = 0.2 | |
self.Space2D = self.SpaceB | |
self.red = 0 | |
self.green = 0 | |
self.blue = 0 | |
self.NHeadsX = 20 | |
self.BeginA = 2.0 | |
self.DimensionB = 4.0 | |
self.GapC = 3.0 | |
self.HeightD = 2.0 | |
self.NumberE = 1 | |
self.Compound = 0 | |
self.lineWidth = 2.0 | |
self.pointSize = 2.0 | |
self.Plan = 1 | |
self.LengthA = 150 | |
self.HeightB = 2.0 | |
self.WaveC = 40.0 | |
self.groupBox_00_CutLine.setCheckable(True) | |
self.PB_04_CreateComp.setEnabled(False) | |
self.LE_01_LineType.setText("Name type line") | |
self.DS_01_NumberCut.setValue(self.NumberCut) | |
self.CB_00_02_BiColor.setChecked(True) | |
self.CB_00_03_CreatePoints.setChecked(False) | |
self.CB_00_01_Dimension.setChecked(False) | |
self.CB_00_00_CreateLine.setChecked(True) | |
self.RB_01_01_Dash.setChecked(True) | |
self.DS_02_01_01_LineA.setValue(self.LineA) | |
self.DS_02_01_02_SpaceB.setValue(self.SpaceB) | |
self.DS_02_01_03_Line2C.setValue(self.Line2C) | |
self.DS_02_01_04_Space2D.setValue(self.Space2D) | |
self.label_02_02_Length.setText(str((self.BeginA * 2) + ((self.NHeadsX * (self.DimensionB + (self.GapC * self.NumberE))) - self.DimensionB))) | |
self.SP_02_02_01_NHeadsX.setValue(self.NHeadsX) | |
self.DS_02_02_01_BeginA.setValue(self.BeginA) | |
self.DS_02_02_02_DimensionB.setValue(self.DimensionB) | |
self.DS_02_02_03_GapC.setValue(self.GapC) | |
self.DS_02_02_04_HeightD.setValue(self.HeightD) | |
self.SP_02_02_05_NumberE.setValue(self.NumberE) | |
self.DS_02_03_01_LengthA.setValue(self.LengthA) | |
self.DS_02_03_02_HeightB.setValue(self.HeightB) | |
self.DS_02_03_03_WaveC.setValue(self.WaveC) | |
self.DS_02_04_01_LineWidth.setValue(self.lineWidth) | |
self.DS_02_04_02_PSize.setValue(self.pointSize) | |
self.red = 0 | |
self.green = 0 | |
self.blue = 0 | |
self.DS_01_NumberCut.setSingleStep(1) # Cut line | |
self.DS_01_NumberCut.setMaximum(9999999) | |
self.DS_01_NumberCut.setMinimum(1) | |
self.DS_01_NumberCut.setDecimals(0) | |
self.DS_01_NumberCut.setSuffix(_fromUtf8(" Cut")) | |
self.DS_01_NumberCut.setValue(self.NumberCut) | |
self.DS_01_NumberCut.setToolTip(_fromUtf8("Cut in x parts the selected line")) | |
self.PB_02_04_03_Color.setStyleSheet("background-color: QPalette.Base") # origin system | |
self.RB_02_05_01_XY.setChecked(True) | |
self.groupBox_01_TypeLine.setEnabled(False) | |
self.groupBox_02_05_Plane.setEnabled(False) | |
self.DS_01_NumberCut.setEnabled(True) | |
pic = QtGui.QPixmap(self.path+"Macro_FCConvertLines_Title.png") | |
self.scene = QtGui.QGraphicsScene() | |
self.scene.addPixmap(QtGui.QPixmap(pic)) | |
self.graphicsView.setScene(ui.scene) | |
self.PB_05_Create.setStyleSheet("background-color: QPalette.Base") # origin system | |
pic = QtGui.QPixmap(self.path+"Macro_FCConvrtLines_View-top.png") | |
self.scene = QtGui.QGraphicsScene() | |
self.scene.addPixmap(QtGui.QPixmap(pic)) | |
self.graphicsView_2.setScene(ui.scene) | |
# FreeCAD.Console.PrintMessage(str("on_PB_03_Reset ")+"\n") | |
def on_PB_06_Quit(self): # | |
FreeCAD.Console.PrintMessage("Fin FCConvertLines"+"\n") | |
self.window.hide() | |
# FreeCAD.Console.PrintMessage(str("on_PB_06_Quit ")+"\n") | |
#________________________________________________________________________________________ | |
MainWindow = QtGui.QMainWindow() | |
ui = Ui_MainWindow() | |
ui.setupUi(MainWindow) | |
MainWindow.show() |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
This macro utility is intended for the use of the program FreeCAD http://www.freecadweb.org/
rename in Macro_FCConvertLines.png
The icon for your toolbar, it is to place in your macros directory (in the same location of the macro)
The image for the macro, it is to place in your macros directory (in the same location of the macro)
rename in Macro_FCConvertLines_Title.png
rename in Macro_FCConvertLines_Dash.png
rename in Macro_FCConvertLines_DashDot.png
rename in Macro_FCConvertLines_DashDotDot.png
rename in Macro_FCConvertLines_Zigzag.png
rename in Macro_FCConvertLines_Hand.png
rename in Macro_FCConvrtLines_View-front.png
rename in Macro_FCConvrtLines_View-right.png
rename in Macro_FCConvrtLines_View-top.png
(Edit: 05/09/2016 correct the names files ??)