vDirXL=Base.Vector(0,1,0) vDirYL=Base.Vector(-1,0,0) vDirZL=Base.Vector(0,0,-1) listaCoordChapaL=Geometria3D.simYZlistaCoord(listaCoordChapaL) listaCoordAgujL=[] espesorChapa=eRigAla diamAguj=0 rig4=Metalicas.chapaAgSCgen(vOrigenL,vDirXL,vDirYL,vDirZL,listaCoordChapaL,listaCoordAgujL,espesorChapa,diamAguj) pieza=pieza.fuse(rig1.fuse(rig2.fuse(rig3.fuse(rig4)))) Part.show(pieza) #****Representación en planos Pieza=FreeCAD.ActiveDocument.addObject("Part::Feature","Pieza") Pieza.Shape=pieza FreeCADGui.Selection.addSelection(Pieza) Geometria3D.vistaIsoAnterosup(App,escala,Pieza) Geometria3D.vistaIsoAnteroinf(App,escala,Pieza) Geometria3D.vistaIsoPosterosup(App,escala,Pieza) Geometria3D.vistaIsoPosteroinf(App,escala,Pieza) ocultas='s' SupInf='Sup' Geometria3D.vistaPlanta(App,escala,Pieza,ocultas,SupInf) AntPost='Post' Geometria3D.vistaFront(App,escala,Pieza,ocultas,AntPost) IzqDer='Der' Geometria3D.vistaLat(App,escala,Pieza,ocultas,IzqDer)
pieza=pieza.fuse(sold) #Agujeros en placa base vOrigenL=Base.Vector(xminAg,yminAg,0) vDirXL=Base.Vector(1,0,0) vDirYL=Base.Vector(0,1,0) vDirZL=Base.Vector(0,0,1) listaCoordCentrosL=[] diametro=fiAguj altura=ePlaca xLinic=0 yLinic=0 for i in range(0,nXFilasAg): for j in range (0,nYFilasAg): centro=[xLinic+math.fsum(dXFilasAg[0:i]),yLinic+math.fsum(dYFilasAg[0:j])] listaCoordCentrosL.append(centro) aguj=Geometria3D.conjCilindSCgen(vOrigenL,vDirXL,vDirYL,vDirZL,listaCoordCentrosL,diametro,altura) pieza=pieza.cut(aguj) #****Representación en planos Pieza=FreeCAD.ActiveDocument.addObject("Part::Feature","Pieza") Pieza.Shape=pieza FreeCADGui.Selection.addSelection(Pieza) Geometria3D.vistasIsom(App,escala,Pieza) ocultas='s' Geometria3D.vistaPlanta(App,escala,Pieza,ocultas,'Sup') Geometria3D.vistaFront(App,escala,Pieza,ocultas,'Ant') Geometria3D.vistaLat(App,escala,Pieza,ocultas,'Izq')