Пример #1
0
#Agujeros en ala inferior
vOrigenL=Base.Vector(0,0,-cantoPerfil/2-espCubrejAlas)
vDirXL=Base.Vector(1,0,0)
vDirYL=Base.Vector(0,1,0)
vDirZL=Base.Vector(0,0,1)
listaCoordCentrosL=[]
diametro=fiAgujAlas
altura=espCubrejAlas+eAlaPerfil
xLinic=-math.fsum(dXFilasTAla)/2
yLinic=-math.fsum(dYFilasTAla)/2
for i in range(0,nXFilasTAla):
    for j in range (0,nYFilasTAla):
        centro=[xLinic+math.fsum(dXFilasTAla[0:i]),yLinic+math.fsum(dYFilasTAla[0:j])]
        listaCoordCentrosL.append(centro)

agujAlaInf=Geometria3D.conjCilindSCgen(vOrigenL,vDirXL,vDirYL,vDirZL,listaCoordCentrosL,diametro,altura)
pieza=pieza.cut(agujAlaInf)

#Agujeros en ala superior
vOrigenL=Base.Vector(0,0,cantoPerfil/2+espCubrejAlas)
vDirXL=Base.Vector(1,0,0)
vDirYL=Base.Vector(0,1,0)
vDirZL=Base.Vector(0,0,-1)
listaCoordCentrosL=[]
diametro=fiAgujAlas
altura=espCubrejAlas+eAlaPerfil
xLinic=-math.fsum(dXFilasTAla)/2
yLinic=-math.fsum(dYFilasTAla)/2
for i in range(0,nXFilasTAla):
    for j in range (0,nYFilasTAla):
        centro=[xLinic+math.fsum(dXFilasTAla[0:i]),yLinic+math.fsum(dYFilasTAla[0:j])]
Пример #2
0
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')