1 # Copyright (C) 2003 CEA/DEN, EDF R&D
5 # File : visu_many_objects.py
6 # Author : Vadim SANDLER
13 # >>> Getting study builder ==================================================
14 myStudy = salome.myStudy
15 myBuilder = myStudy.NewBuilder()
17 # >>> Creating virtual component =============================================
18 myComponent = myBuilder.NewComponent("VIRTUAL")
19 AName = myBuilder.FindOrCreateAttribute(myComponent, "AttributeName")
20 AName.SetValue("Virtual")
21 ACmt = myBuilder.FindOrCreateAttribute(myComponent, "AttributeComment")
22 ACmt.SetValue("Virtual")
24 # >>> Creating objects =======================================================
25 # TO CHANGE TOTAL NUMBER OF OBJECTS, SET PROPER <myNb1>, <myNb2>, <myNb3>
26 # IF YOU DON'T WANT TO ADD REFERENCES, SET <myAddRef> = 0
33 myContainer = myBuilder.NewObject(myComponent)
34 AName = myBuilder.FindOrCreateAttribute(myContainer, "AttributeName")
35 AName.SetValue("References")
36 ACmt = myBuilder.FindOrCreateAttribute(myContainer, "AttributeComment")
37 ACmt.SetValue("Container for objects")
39 for i in range(0,myNb1):
40 myObject1 = myBuilder.NewObject(myComponent)
41 AName = myBuilder.FindOrCreateAttribute(myObject1, "AttributeName")
42 AName.SetValue("Object "+str(i))
43 ACmt = myBuilder.FindOrCreateAttribute(myObject1, "AttributeComment")
44 ACmt.SetValue("Virtual object "+str(i))
46 myRefObject = myBuilder.NewObject(myContainer)
47 myBuilder.Addreference(myRefObject,myObject1);
49 for j in range(0,myNb2):
50 myObject2 = myBuilder.NewObject(myObject1)
51 AName = myBuilder.FindOrCreateAttribute(myObject2, "AttributeName")
52 AName.SetValue("Object "+str(i)+"-"+str(j))
53 ACmt = myBuilder.FindOrCreateAttribute(myObject2, "AttributeComment")
54 ACmt.SetValue("Virtual object "+str(i)+"-"+str(j))
56 myRefObject = myBuilder.NewObject(myContainer)
57 myBuilder.Addreference(myRefObject,myObject2);
59 for k in range(0,myNb3):
60 myObject3 = myBuilder.NewObject(myObject2)
61 AName = myBuilder.FindOrCreateAttribute(myObject3, "AttributeName")
62 AName.SetValue("Object "+str(i)+"-"+str(j)+"-"+str(k))
63 ACmt = myBuilder.FindOrCreateAttribute(myObject3, "AttributeComment")
64 ACmt.SetValue("Virtual object "+str(i)+"-"+str(j)+"-"+str(k))
66 myRefObject = myBuilder.NewObject(myContainer)
67 myBuilder.Addreference(myRefObject,myObject3);
69 # >>> Updating Object Browser ================================================
70 salome.sg.updateObjBrowser(1)
72 # ============================================================================