# Ref : http://docs.salome-platform.org/latest/gui/GEOM/tui_working_with_groups_page.html
#################################################
for aSolid in range(0, len(p1_solids)):
    # Get ID (surface)
    p1_sufaces = geompy.ExtractShapes(p1_solids[aSolid],
                                      geompy.ShapeType["FACE"], False)
    id_p1_sufaces = []
    for aSurface in range(0, len(p1_solids)):
        id_p1_sufaces.append(geompy.GetSubShapeID(p1, p1_sufaces[aSurface]))
    # make groups (surface)
    gf = []
    for aGroup in range(0, len(p1_sufaces)):
        gf.append(geompy.CreateGroup(p1, geompy.ShapeType["FACE"]))
    for aGroup in range(0, len(p1_sufaces)):
        geompy.AddObject(gf[aGroup], id_p1_sufaces[aGroup])
    geompy.UnionIDs(gf[aGroup], id_p1_sufaces)
    # add objects in the study
    for aGroup in range(0, len(p1_sufaces)):
        geompy.addToStudyInFather(p1, gf[aGroup], 'face{0}'.format(aGroup + 1))

#Intersect_1 = geompy.IntersectListOfGroups([Group_4, Group_5])
#Cut_1 = geompy.CutListOfGroups([Group_4], [Intersect_1])
#Cut_2 = geompy.CutListOfGroups([Group_5], [Intersect_1])

#################################################
## DISPLAY
#################################################
#gg.createAndDisplayGO(id_p1)
#gg.setDisplayMode(id_p1,1)
#gg.setColor(id_p1, 150, 150, 180)
#gg.setTransparency(id_p1, 0.8)
示例#2
0
Sommet_4 = geompy.MakeVertex(Lplq, lplq, 0)
Sommet_5 = geompy.MakeVertex(0, lplq, 0)
Sommet_6 = geompy.MakeVertex(0, lfin, 0)

Ligne_1 = geompy.MakeLineTwoPnt(Sommet_1, Sommet_2)
Ligne_2 = geompy.MakeLineTwoPnt(Sommet_2, Sommet_3)
Ligne_3 = geompy.MakeLineTwoPnt(Sommet_3, Sommet_6)
Ligne_4 = geompy.MakeLineTwoPnt(Sommet_1, Sommet_6)
Ligne_5 = geompy.MakeLineTwoPnt(Sommet_3, Sommet_4)
Ligne_6 = geompy.MakeLineTwoPnt(Sommet_4, Sommet_5)
Ligne_7 = geompy.MakeLineTwoPnt(Sommet_5, Sommet_6)
Face_1 = geompy.MakeFaceWires([Ligne_1, Ligne_2, Ligne_3, Ligne_4], 1)
Face_2 = geompy.MakeFaceWires([Ligne_3, Ligne_5, Ligne_6, Ligne_7], 1)
Plaque = geompy.MakeCompound([Face_1, Face_2])
Sym = geompy.CreateGroup(Plaque, geompy.ShapeType["EDGE"])
geompy.UnionIDs(Sym, [4])
gauche = geompy.CreateGroup(Plaque, geompy.ShapeType["EDGE"])
geompy.UnionIDs(gauche, [7])
droite = geompy.CreateGroup(Plaque, geompy.ShapeType["EDGE"])
geompy.UnionIDs(droite, [11])
Fin = geompy.CreateGroup(Plaque, geompy.ShapeType["FACE"])
geompy.UnionIDs(Fin, [2])
centre = geompy.CreateGroup(Plaque, geompy.ShapeType["EDGE"])
geompy.UnionIDs(centre, [4, 9])
ext = geompy.CreateGroup(Plaque, geompy.ShapeType["EDGE"])
geompy.UnionIDs(ext, [19])

geompy.addToStudy(O, 'O')
geompy.addToStudy(OX, 'OX')
geompy.addToStudy(OY, 'OY')
geompy.addToStudy(OZ, 'OZ')
示例#3
0
Sommet_2 = geompy.MakeVertex(rayon, longu, 0)
Sommet_3 = geompy.MakeVertex(rayon, 0, 0)
[geomObj_3] = geompy.SubShapeAll(Sommet_3, geompy.ShapeType["VERTEX"])
[geomObj_4] = geompy.SubShapeAll(Sommet_3, geompy.ShapeType["VERTEX"])
Sommet_4 = geompy.MakeVertex(0, longu, 0)

Arc_1 = geompy.MakeArcCenter(Sommet_4, Sommet_1, Sommet_2, False)
Ligne_1 = geompy.MakeLineTwoPnt(Sommet_2, Sommet_3)
Anneau = geompy.MakeWire([Arc_1, Ligne_1], 1e-07)

# definition du point haut pour encastrement
listSubShapeIDs = geompy.SubShapeAllIDs(Anneau, geompy.ShapeType["VERTEX"])
listSubShapeIDs = geompy.SubShapeAllIDs(Anneau, geompy.ShapeType["VERTEX"])
listSameIDs = geompy.GetSameIDs(Anneau, geomObj_1)
Haut = geompy.CreateGroup(Anneau, geompy.ShapeType["VERTEX"])
geompy.UnionIDs(Haut, [3])

# definition du point bas pour application de la force
listSameIDs = geompy.GetSameIDs(Anneau, geomObj_2)
listSameIDs = geompy.GetSameIDs(Anneau, geomObj_3)
Bas = geompy.CreateGroup(Anneau, geompy.ShapeType["VERTEX"])
geompy.UnionIDs(Bas, [6])
listSameIDs = geompy.GetSameIDs(Anneau, geomObj_4)

geompy.addToStudy(Sommet_1, 'Sommet_1')
geompy.addToStudy(Sommet_2, 'Sommet_2')
geompy.addToStudy(Sommet_3, 'Sommet_3')
geompy.addToStudy(Sommet_4, 'Sommet_4')
geompy.addToStudy(Arc_1, 'Arc_1')
geompy.addToStudy(Ligne_1, 'Ligne_1')
geompy.addToStudy(Anneau, 'Anneau')
示例#4
0
###

import GEOM
import geompy
import math
import SALOMEDS


geompy.init_geom(theStudy)

Box_1 = geompy.MakeBoxDXDYDZ(18, 18, 6)
listSubShapeIDs = geompy.SubShapeAllIDs(Box_1, geompy.ShapeType["FACE"])
listSubShapeIDs = geompy.SubShapeAllIDs(Box_1, geompy.ShapeType["FACE"])
listSubShapeIDs = geompy.SubShapeAllIDs(Box_1, geompy.ShapeType["SOLID"])
forc = geompy.CreateGroup(Box_1, geompy.ShapeType["FACE"])
geompy.UnionIDs(forc, [33])
toutface = geompy.CreateGroup(Box_1, geompy.ShapeType["FACE"])
geompy.UnionIDs(toutface, [3, 13, 23, 27, 31, 33])
tout = geompy.CreateGroup(Box_1, geompy.ShapeType["SOLID"])
geompy.UnionIDs(tout, [1])
geomObj_1 = geompy.GetSubShape(Box_1, [3])
geompy.addToStudy( Box_1, 'Box_1' )
geompy.addToStudyInFather( Box_1, forc, 'forc' )
geompy.addToStudyInFather( Box_1, toutface, 'toutface' )
geompy.addToStudyInFather( Box_1, tout, 'tout' )

### Store presentation parameters of displayed objects
import iparameters
ipar = iparameters.IParameters(theStudy.GetModuleParameters("Interface Applicative", "GEOM", 1))

#Set up entries:
示例#5
0
[geomObj_5] = geompy.SubShapeAll(Edge_2, geompy.ShapeType["EDGE"])
[geomObj_6] = geompy.SubShapeAll(Edge_2, geompy.ShapeType["EDGE"])

[geomObj_7] = geompy.SubShapeAll(Edge_3, geompy.ShapeType["EDGE"])
[geomObj_8] = geompy.SubShapeAll(Edge_3, geompy.ShapeType["EDGE"])

[geomObj_9] = geompy.SubShapeAll(Edge_4, geompy.ShapeType["EDGE"])
[geomObj_10] = geompy.SubShapeAll(Edge_4, geompy.ShapeType["EDGE"])
listSameIDs = geompy.GetSameIDs(Plaque, geomObj_3)
listSameIDs = geompy.GetSameIDs(Plaque, geomObj_4)
listSameIDs = geompy.GetSameIDs(Plaque, geomObj_5)
listSameIDs = geompy.GetSameIDs(Plaque, geomObj_6)
listSameIDs = geompy.GetSameIDs(Plaque, geomObj_9)
listSameIDs = geompy.GetSameIDs(Plaque, geomObj_10)
Encastre = geompy.CreateGroup(Plaque, geompy.ShapeType["EDGE"])
geompy.UnionIDs(Encastre, [9])
geomObj_11 = geompy.CreateGroup(Plaque, geompy.ShapeType["EDGE"])
geompy.UnionIDs(geomObj_11, [3])
listSameIDs = geompy.GetSameIDs(Plaque, geomObj_7)
Moment = geompy.CreateGroup(Plaque, geompy.ShapeType["EDGE"])
geompy.UnionIDs(Moment, [10])
listSameIDs = geompy.GetSameIDs(Plaque, geomObj_8)
geompy.addToStudy(Centre, 'Centre')
geompy.addToStudy(Vertex_droite, 'Vertex_droite')
geompy.addToStudy(Vertex_gauche, 'Vertex_gauche')
geompy.addToStudy(Arc_1, 'Arc_1')
geompy.addToStudy(centre_loin, 'centre_loin')
geompy.addToStudy(Line_extrusion, 'Line_extrusion')
geompy.addToStudy(Plaque, 'Plaque')
geompy.addToStudyInFather(Plaque, Edge_2, 'Edge_2')
geompy.addToStudyInFather(Plaque, Edge_3, 'Edge_3')
示例#6
0
O = geompy.MakeVertex(0, 0, 0)
OX = geompy.MakeVectorDXDYDZ(1, 0, 0)
OY = geompy.MakeVectorDXDYDZ(0, 1, 0)
OZ = geompy.MakeVectorDXDYDZ(0, 0, 1)
Sommet_1 = geompy.MakeVertex(0, 0, 0)
Sommet_2 = geompy.MakeVertex(1, 0, 0)
Sommet_3 = geompy.MakeVertex(1, 1, 0)
Sommet_4 = geompy.MakeVertex(0, 1, 0)
Ligne_1 = geompy.MakeLineTwoPnt(Sommet_1, Sommet_2)
Ligne_2 = geompy.MakeLineTwoPnt(Sommet_2, Sommet_3)
Ligne_3 = geompy.MakeLineTwoPnt(Sommet_3, Sommet_4)
Ligne_4 = geompy.MakeLineTwoPnt(Sommet_4, Sommet_1)
Plaque = geompy.MakeFaceWires([Ligne_1, Ligne_2, Ligne_3, Ligne_4], 1)
listSubShapeIDs = geompy.SubShapeAllIDs(Plaque, geompy.ShapeType["EDGE"])
BORD = geompy.CreateGroup(Plaque, geompy.ShapeType["EDGE"])
geompy.UnionIDs(BORD, [3, 6, 8, 10])
geomObj_1 = geompy.GetSubShape(Plaque, [3])
geompy.addToStudy(O, 'O')
geompy.addToStudy(OX, 'OX')
geompy.addToStudy(OY, 'OY')
geompy.addToStudy(OZ, 'OZ')
geompy.addToStudy(Sommet_1, 'Sommet_1')
geompy.addToStudy(Sommet_2, 'Sommet_2')
geompy.addToStudy(Sommet_3, 'Sommet_3')
geompy.addToStudy(Sommet_4, 'Sommet_4')
geompy.addToStudy(Ligne_1, 'Ligne_1')
geompy.addToStudy(Ligne_2, 'Ligne_2')
geompy.addToStudy(Ligne_3, 'Ligne_3')
geompy.addToStudy(Ligne_4, 'Ligne_4')
geompy.addToStudy(Plaque, 'Plaque')
geompy.addToStudyInFather(Plaque, BORD, 'BORD')
示例#7
0
Face_16 = geompy.MakeFaceWires([Ligne_7, Ligne_8, Ligne_9, Ligne_10], 1)

Partition_1 = geompy.MakePartition([Extrusion_1], [R_volution_1], [], [], geompy.ShapeType["FACE"], 0, [], 0)
[Partition_2,Face_3] = geompy.ExtractShapes(Partition_1, geompy.ShapeType["FACE"], True)
Partition_2 = geompy.MakePartition([R_volution_1], [Extrusion_1], [], [], geompy.ShapeType["FACE"], 0, [], 0)
[Face_2,Face_4,Partition_3,Face_5,Face_7] = geompy.ExtractShapes(Partition_2, geompy.ShapeType["FACE"], True)
Partition_3 = geompy.MakePartition([Face_15, Face_16], [Partition_2], [], [], geompy.ShapeType["FACE"], 0, [], 0)
[Face_5,Virole,Face_8,Fonds] = geompy.ExtractShapes(Partition_3, geompy.ShapeType["FACE"], True)
Virole = geompy.MakeCompound([Face_4])
Fonds = geompy.MakeCompound([Face_2, Face_7])
Piquage = geompy.MakeCompound([Face_1, Face_3])
Supports = geompy.MakeCompound([Face_5, Face_8])
ViroleS = geompy.MakeFuse(Virole, Supports)
Bidon = geompy.MakeCompound([Fonds, Piquage, ViroleS])
Encastre = geompy.CreateGroup(Bidon, geompy.ShapeType["EDGE"])
geompy.UnionIDs(Encastre, [59])
Appui = geompy.CreateGroup(Bidon, geompy.ShapeType["EDGE"])
geompy.UnionIDs(Appui, [66])
Fonds_1 = geompy.CreateGroup(Bidon, geompy.ShapeType["FACE"])
geompy.UnionIDs(Fonds_1, [3, 10])
Virole_1 = geompy.CreateGroup(Bidon, geompy.ShapeType["FACE"])
geompy.UnionIDs(Virole_1, [37])
Bride_1 = geompy.CreateGroup(Bidon, geompy.ShapeType["FACE"])
geompy.UnionIDs(Bride_1, [18])
Piquage_2 = geompy.CreateGroup(Bidon, geompy.ShapeType["FACE"])
geompy.UnionIDs(Piquage_2, [25])

Supports_1 = geompy.CreateGroup(Bidon, geompy.ShapeType["FACE"])
geompy.UnionIDs(Supports_1, [55, 62])