Salome HOME
*** empty log message ***
[modules/gui.git] / src / SALOME_SWIG / test_table.py
1 #  Copyright (C) 2003  CEA/DEN, EDF R&D
2 #
3 #
4 #
5 #  File   : test_table.py
6 #  Author : Vadim SANDLER
7 #  Module : SALOME
8 #  $Header$
9
10 import salome
11 import math
12 import SALOMEDS
13
14 # >>> Getting study builder ==================================================
15 myStudy = salome.myStudy
16 myBuilder = myStudy.NewBuilder()
17
18 # >>> Creating virtual component =============================================
19 myComponent = myStudy.FindComponent("VirtualComponent")
20 if not myComponent:
21    myComponent = myBuilder.NewComponent("VirtualComponent")
22    aName = myBuilder.FindOrCreateAttribute(myComponent, "AttributeName")
23    aName.SetValue("VirtualComponent")
24
25 # >>> Creating object with Table of integer ==================================
26 myTIntObject = myBuilder.NewObject(myComponent)
27 AName = myBuilder.FindOrCreateAttribute(myTIntObject, "AttributeName")
28 AName.SetValue("Table Of Integer")
29 AIntTable = myBuilder.FindOrCreateAttribute(myTIntObject, "AttributeTableOfInteger")
30
31 a=[1,2,3,4,5,6,7,8,9,10]
32 AIntTable.AddRow(a)
33 a=[110,120,130,140,150,160,170,180,190,200]
34 AIntTable.AddRow(a)
35 a=[-1,272,0,0,-642,10000,13,578,-578,99]
36 AIntTable.AddRow(a)
37 AIntTable.SetTitle("TEST table of integer")
38 AIntTable.SetRowTitle(1,"FR")
39 AIntTable.SetRowUnit(1,"m/h")
40 AIntTable.SetRowTitle(2,"SR")
41 AIntTable.SetRowUnit(2,"s")
42 AIntTable.SetRowTitle(3,"TR")
43 AIntTable.SetRowUnit(3,"$")
44 c=["C1","C2","C3","C4","C5","C6","C7","C8","C9","C10"]
45 AIntTable.SetColumnTitles(c)
46
47 # >>> Creating object with Table of real =====================================
48 myTRealObject = myBuilder.NewObject(myComponent)
49 AName = myBuilder.FindOrCreateAttribute(myTRealObject, "AttributeName")
50 AName.SetValue("Table Of Real")
51 ARealTable = myBuilder.FindOrCreateAttribute(myTRealObject, "AttributeTableOfReal")
52
53 k={}
54 l={}
55 for j in range(0,20):
56    k[j] = j*10+1
57    l[j] = "C"+str(j+1)
58 ARealTable.AddRow(k.values())
59 ARealTable.SetRowTitle(1, "Row 0")
60 ARealTable.SetRowUnit(1, "Hz")
61 ARealTable.SetColumnTitles(l.values())
62 for i in range(1,11):
63    for j in range(1,21):
64       if j % 2 == 1:
65          k[j] = math.log10(j*30*math.pi/180) * 20 + i * 15 + j*5
66       else:
67          k[j] = math.sin(j*30*math.pi/180) * 20 + i * 15 + j*5 
68    ARealTable.AddRow(k.values())
69    ARealTable.SetRowTitle(i+1, "Row " + str(i))
70    ARealTable.SetRowUnit(i+1, "Wt")
71 ARealTable.SetTitle("TEST table of real")
72
73 # >>> Creating object with integer attribute =================================
74 myIntObject = myBuilder.NewObject(myComponent)
75 AName = myBuilder.FindOrCreateAttribute(myIntObject, "AttributeName")
76 AName.SetValue("Integer")
77 AInt = myBuilder.FindOrCreateAttribute(myIntObject, "AttributeInteger")
78 AInt.SetValue(123)
79
80 # >>> Creating object with real attribute ====================================
81 myRealObject = myBuilder.NewObject(myComponent)
82 AName = myBuilder.FindOrCreateAttribute(myRealObject, "AttributeName")
83 AName.SetValue("Real")
84 AReal = myBuilder.FindOrCreateAttribute(myRealObject, "AttributeReal")
85 AReal.SetValue(-56.9634)
86
87 # >>> Creating object with comment attribute =================================
88 myCmtObject = myBuilder.NewObject(myComponent)
89 AName = myBuilder.FindOrCreateAttribute(myCmtObject, "AttributeName")
90 AName.SetValue("Comment")
91 ACmt = myBuilder.FindOrCreateAttribute(myCmtObject, "AttributeComment")
92 ACmt.SetValue("Just a comment")
93
94 # >>> Updating Object Browser ================================================
95 salome.sg.updateObjBrowser(1)
96
97 # ============================================================================
98
99
100