fliping code and some minor adjustments
This commit is contained in:
parent
6f5ae0dd42
commit
125b2f3543
|
@ -56,6 +56,9 @@ class _CommandAlignment:
|
|||
return
|
||||
FreeCAD.ActiveDocument.openTransaction("Alignment")
|
||||
|
||||
# switch on Bound Box
|
||||
FemMeshObject.ViewObject.BoundingBox = True
|
||||
|
||||
n = FemMeshObject.FemMesh.Nodes
|
||||
p = Mesh.calculateEigenTransform(n)
|
||||
p2 = p.inverse()
|
||||
|
@ -63,11 +66,12 @@ class _CommandAlignment:
|
|||
|
||||
taskd = _AlignTaskPanel(FemMeshObject)
|
||||
FreeCADGui.Control.showDialog(taskd)
|
||||
FreeCAD.ActiveDocument.commitTransaction()
|
||||
|
||||
def IsActive(self):
|
||||
if FemGui.getActiveAnalysis():
|
||||
return True
|
||||
for i in FemGui.getActiveAnalysis().Member:
|
||||
if i.isDerivedFrom("Fem::FemMeshObject"):
|
||||
return True
|
||||
else:
|
||||
return False
|
||||
|
||||
|
@ -87,6 +91,8 @@ class _AlignTaskPanel:
|
|||
|
||||
#Connect Signals and Slots
|
||||
QtCore.QObject.connect(self.formUi.pushButton_FlipX, QtCore.SIGNAL("clicked()"), self.flipX)
|
||||
QtCore.QObject.connect(self.formUi.pushButton_FlipY, QtCore.SIGNAL("clicked()"), self.flipY)
|
||||
QtCore.QObject.connect(self.formUi.pushButton_FlipZ, QtCore.SIGNAL("clicked()"), self.flipZ)
|
||||
|
||||
self.update()
|
||||
|
||||
|
@ -100,11 +106,30 @@ class _AlignTaskPanel:
|
|||
|
||||
def accept(self):
|
||||
FreeCADGui.Control.closeDialog()
|
||||
self.obj.ViewObject.BoundingBox = False
|
||||
FreeCAD.ActiveDocument.commitTransaction()
|
||||
|
||||
|
||||
def reject(self):
|
||||
FreeCADGui.Control.closeDialog()
|
||||
self.obj.ViewObject.BoundingBox = False
|
||||
FreeCAD.ActiveDocument.abortTransaction()
|
||||
|
||||
def flipX(self):
|
||||
p = self.obj.Placement
|
||||
r2 = p.Rotation.multiply(FreeCAD.Rotation(FreeCAD.Vector(1,0,0),180))
|
||||
p.Rotation = r2
|
||||
return
|
||||
def flipY(self):
|
||||
p = self.obj.Placement
|
||||
r2 = p.Rotation.multiply(FreeCAD.Rotation(FreeCAD.Vector(0,1,0),180))
|
||||
p.Rotation = r2
|
||||
return
|
||||
def flipZ(self):
|
||||
p = self.obj.Placement
|
||||
r2 = p.Rotation.multiply(FreeCAD.Rotation(FreeCAD.Vector(0,0,1),180))
|
||||
zl = self.obj.FemMesh.BoundBox.ZLength
|
||||
p.Rotation = r2
|
||||
return
|
||||
|
||||
FreeCADGui.addCommand('MachDist_Alignment',_CommandAlignment())
|
||||
|
|
|
@ -52,7 +52,9 @@ class _CommandIsostatic:
|
|||
|
||||
def IsActive(self):
|
||||
if FemGui.getActiveAnalysis():
|
||||
return True
|
||||
for i in FemGui.getActiveAnalysis().Member:
|
||||
if i.isDerivedFrom("Fem::FemMeshObject"):
|
||||
return True
|
||||
else:
|
||||
return False
|
||||
|
||||
|
|
|
@ -144,35 +144,9 @@ class _MaterialTaskPanel:
|
|||
self.formUi = form_class()
|
||||
self.form = QtGui.QWidget()
|
||||
self.formUi.setupUi(self.form)
|
||||
#self.form.setObjectName("TaskPanel")
|
||||
#self.grid = QtGui.QGridLayout(self.form)
|
||||
#self.grid.setObjectName("grid")
|
||||
#self.title = QtGui.QLabel(self.form)
|
||||
#self.grid.addWidget(self.title, 0, 0, 1, 2)
|
||||
|
||||
# tree
|
||||
#self.tree = QtGui.QTreeWidget(self.form)
|
||||
#self.grid.addWidget(self.tree, 1, 0, 1, 2)
|
||||
#self.tree.setColumnCount(3)
|
||||
#self.tree.header().resizeSection(0,50)
|
||||
#self.tree.header().resizeSection(1,80)
|
||||
#self.tree.header().resizeSection(2,60)
|
||||
|
||||
# buttons
|
||||
#self.addButton = QtGui.QPushButton(self.form)
|
||||
#self.addButton.setObjectName("addButton")
|
||||
#self.addButton.setIcon(QtGui.QIcon(":/icons/MachDist_Add.svg"))
|
||||
#self.grid.addWidget(self.addButton, 3, 0, 1, 1)
|
||||
#self.addButton.setEnabled(True)
|
||||
QtCore.QObject.connect(self.formUi.pushButton_FlipX, QtCore.SIGNAL("clicked()"), self.flipX)
|
||||
|
||||
#self.delButton = QtGui.QPushButton(self.form)
|
||||
#self.delButton.setObjectName("delButton")
|
||||
#self.delButton.setIcon(QtGui.QIcon(":/icons/MachDist_Remove.svg"))
|
||||
#self.grid.addWidget(self.delButton, 3, 1, 1, 1)
|
||||
#self.delButton.setEnabled(True)
|
||||
|
||||
#QtCore.QObject.connect(self.addButton, QtCore.SIGNAL("clicked()"), self.addElement)
|
||||
#QtCore.QObject.connect(self.delButton, QtCore.SIGNAL("clicked()"), self.removeElement)
|
||||
self.update()
|
||||
|
||||
def isAllowedAlterSelection(self):
|
||||
|
@ -194,5 +168,44 @@ class _MaterialTaskPanel:
|
|||
def reject(self):
|
||||
FreeCADGui.ActiveDocument.resetEdit()
|
||||
|
||||
|
||||
def add_L_data(self):
|
||||
l_filename = QtGui.QFileDialog.getOpenFileName(None, 'Open file','','R-Script File for L Coefficients (*.txt)')
|
||||
values = self.parse_R_output(l_filename)
|
||||
self.lc1.setValue(values[0])
|
||||
self.lc2.setValue(values[1])
|
||||
self.lc3.setValue(values[2])
|
||||
self.lc4.setValue(values[3])
|
||||
self.lc5.setValue(values[4])
|
||||
self.lc6.setValue(values[5])
|
||||
|
||||
|
||||
def add_LT_data(self):
|
||||
lt_filename = QtGui.QFileDialog.getOpenFileName(None, 'Open file','','R-Script File for LT Coefficients (*.txt)')
|
||||
values = self.parse_R_output(lt_filename)
|
||||
self.ltc1.setValue(values[0])
|
||||
self.ltc2.setValue(values[1])
|
||||
self.ltc3.setValue(values[2])
|
||||
self.ltc4.setValue(values[3])
|
||||
self.ltc5.setValue(values[4])
|
||||
self.ltc6.setValue(values[5])
|
||||
|
||||
|
||||
def parse_R_output(self,filename):
|
||||
file = open(str(filename))
|
||||
lines = file.readlines()
|
||||
found = False
|
||||
coeff = []
|
||||
for line in lines:
|
||||
if line[0:9] == "c0 to c5:":
|
||||
found = True
|
||||
coeff.append(float(line[15:]))
|
||||
continue
|
||||
if found and line[0:4] == "MSE:":
|
||||
found = False
|
||||
if found:
|
||||
coeff.append(float(line[15:]))
|
||||
|
||||
file.close()
|
||||
return coeff[0],coeff[1],coeff[2],coeff[3],coeff[4],coeff[5]
|
||||
|
||||
FreeCADGui.addCommand('MachDist_Material',_CommandMaterial())
|
||||
|
|
|
@ -57,8 +57,8 @@ class _CommandMesh:
|
|||
FreeCADGui.doCommand("Gui.activeDocument().setEdit(App.ActiveDocument.ActiveObject.Name)")
|
||||
else:
|
||||
import os
|
||||
filename = QtGui.QFileDialog.getOpenFileName(QtGui.qApp.activeWindow(),'Open part file..',os.getcwd(),'Mesh or Part files (*.bdf *.stp *.igs);;All files(*)')
|
||||
if filename.right(3) in (u'bdf'):
|
||||
filename = QtGui.QFileDialog.getOpenFileName(QtGui.qApp.activeWindow(),'Open part file..',os.getcwd(),'Mesh or Part files (*.bdf *.unv *.med *.dat *.stp *.igs);;All files(*)')
|
||||
if filename.right(3) in (u'bdf',u'med',u'dat',u'unv'):
|
||||
FreeCADGui.addModule("Fem")
|
||||
FreeCADGui.doCommand("Fem.insert('" + str(filename) +"','"+FreeCAD.ActiveDocument.Name+ "')")
|
||||
FreeCADGui.doCommand("FemGui.getActiveAnalysis().Member = FemGui.getActiveAnalysis().Member + [App.activeDocument().ActiveObject]")
|
||||
|
|
Loading…
Reference in New Issue
Block a user