Salome HOME
Get rid of redundant definitions.
[modules/shaper.git] / test.squish / shared / scripts / common.py
1 ## Copyright (C) 2014-2017  CEA/DEN, EDF R&D
2 ##
3 ## This library is free software; you can redistribute it and/or
4 ## modify it under the terms of the GNU Lesser General Public
5 ## License as published by the Free Software Foundation; either
6 ## version 2.1 of the License, or (at your option) any later version.
7 ##
8 ## This library is distributed in the hope that it will be useful,
9 ## but WITHOUT ANY WARRANTY; without even the implied warranty of
10 ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
11 ## Lesser General Public License for more details.
12 ##
13 ## You should have received a copy of the GNU Lesser General Public
14 ## License along with this library; if not, write to the Free Software
15 ## Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
16 ##
17 ## See http:##www.salome-platform.org/ or
18 ## email : webmaster.salome@opencascade.com<mailto:webmaster.salome@opencascade.com>
19 ##
20
21 import filecmp
22 import os
23 import shutil
24
25 testSettings.logScreenshotOnError = True
26 testSettings.logScreenshotOnFail = True
27 # RESULTS_PATH = "/dn48/SHAPER/eso/sources/test.squish/shared/testresults/"
28 DATA_PATH = os.getenv('TEST_DATA_DIR')
29 TMP_DIR = os.path.join(DATA_PATH, 'tmp')
30
31 g_points = {"XY_plane": (332, 250), "XZ_plane": (355, 207)}  # one of the construction planes
32 def help_points(name):
33     return g_points[name]
34
35 #---------------------------------------------------------------------------------------------
36 # Tools
37 def findMenuItem(menuObject, item):
38     for child in object.children(menuObject):
39         if child.text == item:
40             return child
41     return None
42
43 #---------------------------------------------------------------------------------------------
44 # Tools for Property Panel
45 def getPropertyPanelRealName():
46     return "{name='property_panel_dock' type='XGUI_PropertyPanel' visible='1' window=':SALOME*_STD_TabDesktop'}"
47
48 def getSpinBoxRealName(name):
49     return "{container=%s name='%s' type='ModuleBase_ParamSpinBox' visible='1'}" % (getPropertyPanelRealName(), name)
50
51 #---------------------------------------------------------------------------------------------
52 def create_tmp():
53     remove_tmp()
54     os.makedirs(TMP_DIR)
55
56 def remove_tmp():
57     if os.path.exists(TMP_DIR):
58         shutil.rmtree(TMP_DIR)
59
60 #---------------------------------------------------------------------------------------------
61 def set_defaults():
62     waitForObject(":SALOME*_STD_TabDesktop").resize(1024, 768)
63     create_tmp()
64
65 def activate_SHAPER():
66     clickButton(waitForObject(":SALOME*.Shaper_QToolButton"))
67     clickButton(waitForObject(":Activate module.New_QPushButton"))
68
69 def close_application():
70     sendEvent("QCloseEvent", waitForObject(":SALOME*_STD_TabDesktop"))
71     clickButton(waitForObject(":Exit.Ok_QPushButton"))
72     clickButton(waitForObject(":Close active study.Close w/o saving_QPushButton"))
73 #     snooze(10)
74     remove_tmp()
75
76 def close_application_wo_saving():
77     sendEvent("QCloseEvent", waitForObject(":SALOME*_STD_TabDesktop"))
78     clickButton(waitForObject(":Exit.Ok_QPushButton"))
79     clickButton(waitForObject(":Close active study.Close w/o saving_QPushButton"))
80     remove_tmp()
81
82 def part_create():
83     activateItem(waitForObjectItem(":SALOME*_QMenuBar", "Part"))
84     activateItem(waitForObjectItem(":Part_QMenu", "New part"))
85
86 def sketch_create(point, actions):
87     clickButton(waitForObject(":SALOME*.Sketch_QToolButton"))
88     mouseClick(waitForObject(":SALOME*.3D View Operations_OCCViewer_ViewPort3d"), point[0], point[1], 0, Qt.LeftButton)
89     activateItem(waitForObjectItem(":SALOME*_QMenuBar", "Sketch"))
90
91     actions()
92
93     clickButton(waitForObject(":Sketch.property_panel_ok_QToolButton"))
94
95 def point_create_in_view(point, aux=0):
96     mouseClick(waitForObjectItem(":SALOME*_QMenuBar", "Sketch"))
97     mouseClick(waitForObjectItem(":Sketch_QMenu", "Point"))
98
99     if aux == 1:
100         clickButton(waitForObject(":Point.Auxiliary_QCheckBox"))
101
102     mouseClick(waitForObject(":SALOME*.3D View Operations_OCCViewer_ViewPort3d"), point[0], point[1], 0, Qt.LeftButton)
103     clickButton(waitForObject(":Point.property_panel_cancel_QToolButton"))
104
105 def point_create(point, aux=0):
106     mouseClick(waitForObjectItem(":SALOME*_QMenuBar", "Sketch"))
107     mouseClick(waitForObjectItem(":Sketch_QMenu", "Point"))
108
109     if aux == 1:
110         clickButton(waitForObject(":Point.Auxiliary_QCheckBox"))
111
112     type(waitForObject(":Point.X _ModuleBase_ParamSpinBox"), "<Ctrl+A>")
113     type(waitForObject(":Point.X _ModuleBase_ParamSpinBox"), point[0])
114
115     type(waitForObject(":Point.Y _ModuleBase_ParamSpinBox"), "<Ctrl+A>")
116     type(waitForObject(":Point.Y _ModuleBase_ParamSpinBox"), point[1])
117
118     clickButton(waitForObject(":Point.property_panel_ok_QToolButton"))
119
120 def line_create_in_view(start_point, end_point, aux=0):
121     mouseClick(waitForObjectItem(":SALOME*_QMenuBar", "Sketch"))
122     mouseClick(waitForObjectItem(":Sketch_QMenu", "Line"))
123
124     if aux == 1:
125         clickButton(waitForObject(":Line.Auxiliary_QCheckBox"))
126
127     mouseClick(waitForObject(":SALOME*.3D View Operations_OCCViewer_ViewPort3d"), start_point[0], start_point[1], 0, Qt.LeftButton)
128     mouseClick(waitForObject(":SALOME*.3D View Operations_OCCViewer_ViewPort3d"), end_point[0], end_point[1], 0, Qt.LeftButton)
129
130     clickButton(waitForObject(":Line.property_panel_cancel_QToolButton"))
131
132 def closing_line_create_in_view(start_point, end_point, aux=0):
133     mouseClick(waitForObjectItem(":SALOME*_QMenuBar", "Sketch"))
134     mouseClick(waitForObjectItem(":Sketch_QMenu", "Line"))
135
136     if aux == 1:
137         clickButton(waitForObject(":Line.Auxiliary_QCheckBox"))
138
139     mouseClick(waitForObject(":SALOME*.3D View Operations_OCCViewer_ViewPort3d"), start_point[0], start_point[1], 0, Qt.LeftButton)
140     mouseClick(waitForObject(":SALOME*.3D View Operations_OCCViewer_ViewPort3d"), end_point[0], end_point[1], 0, Qt.LeftButton)
141
142 def lines_create_in_view(points, aux=0):
143     mouseClick(waitForObjectItem(":SALOME*_QMenuBar", "Sketch"))
144     mouseClick(waitForObjectItem(":Sketch_QMenu", "Line"))
145
146     if aux == 1:
147         clickButton(waitForObject(":Line.Auxiliary_QCheckBox"))
148
149     for point in points:
150       mouseClick(waitForObject(":SALOME*.3D View Operations_OCCViewer_ViewPort3d"), point[0], point[1], 0, Qt.LeftButton)
151
152 def lines_close():
153     clickButton(waitForObject(":Line.property_panel_cancel_QToolButton"))
154
155 def line_create(start_point, end_point, aux=0):  # Set aux=1 to create auxiliary line
156     mouseClick(waitForObjectItem(":SALOME*_QMenuBar", "Sketch"))
157     mouseClick(waitForObjectItem(":Sketch_QMenu", "Line"))
158
159     if aux == 1:
160         clickButton(waitForObject(":Line.Auxiliary_QCheckBox"))
161
162     type(waitForObject(":Start point.X _ModuleBase_ParamSpinBox"), "<Ctrl+A>")
163     type(waitForObject(":Start point.X _ModuleBase_ParamSpinBox"), start_point[0])
164
165     type(waitForObject(":Start point.Y _ModuleBase_ParamSpinBox"), "<Ctrl+A>")
166     type(waitForObject(":Start point.Y _ModuleBase_ParamSpinBox"), start_point[1])
167
168     type(waitForObject(":End point.X _ModuleBase_ParamSpinBox"), "<Ctrl+A>")
169     type(waitForObject(":End point.X _ModuleBase_ParamSpinBox"), end_point[0])
170
171     type(waitForObject(":End point.Y _ModuleBase_ParamSpinBox"), "<Ctrl+A>")
172     type(waitForObject(":End point.Y _ModuleBase_ParamSpinBox"), end_point[1])
173
174     clickButton(waitForObject(":Line.property_panel_ok_QToolButton"))
175
176 def circle_create_in_view(center, radius, aux=0):
177     mouseClick(waitForObjectItem(":SALOME*_QMenuBar", "Sketch"))
178     mouseClick(waitForObjectItem(":Sketch_QMenu", "Circle"))
179
180     if aux == 1:
181         clickButton(waitForObject(":Circle.Auxiliary_QCheckBox"))
182
183     mouseClick(waitForObject(":SALOME*.3D View Operations_OCCViewer_ViewPort3d"), center[0], center[1], 0, Qt.LeftButton)
184     mouseClick(waitForObject(":SALOME*.3D View Operations_OCCViewer_ViewPort3d"), radius[0], radius[1], 0, Qt.LeftButton)
185
186     clickButton(waitForObject(":Circle.property_panel_cancel_QToolButton"))
187
188 def circle_create(center, radius, aux=0):
189     mouseClick(waitForObjectItem(":SALOME*_QMenuBar", "Sketch"))
190     mouseClick(waitForObjectItem(":Sketch_QMenu", "Circle"))
191
192     if aux == 1:
193         clickButton(waitForObject(":Circle.Auxiliary_QCheckBox"))
194
195     type(waitForObject(":Center.X _ModuleBase_ParamSpinBox"), "<Ctrl+A>")
196     type(waitForObject(":Center.X _ModuleBase_ParamSpinBox"), center[0])
197
198     type(waitForObject(":Center.Y _ModuleBase_ParamSpinBox"), "<Ctrl+A>")
199     type(waitForObject(":Center.Y _ModuleBase_ParamSpinBox"), center[1])
200
201     type(waitForObject(":Circle.CircleRadius_ModuleBase_ParamSpinBox"), "<Ctrl+A>")
202     type(waitForObject(":Circle.CircleRadius_ModuleBase_ParamSpinBox"), radius)
203
204     clickButton(waitForObject(":Circle.property_panel_ok_QToolButton"))
205
206 def arc_create(center, start_point, end_point, aux=0):
207     mouseClick(waitForObjectItem(":SALOME*_QMenuBar", "Sketch"))
208     mouseClick(waitForObjectItem(":Sketch_QMenu", "Arc"))
209
210     if aux == 1:
211         clickButton(waitForObject(":Arc.Auxiliary_QCheckBox"))
212
213     type(waitForObject(":Center.X _ModuleBase_ParamSpinBox_2"), "<Ctrl+A>")
214     type(waitForObject(":Center.X _ModuleBase_ParamSpinBox_2"), center[0])
215
216     type(waitForObject(":Center.Y _ModuleBase_ParamSpinBox_2"), "<Ctrl+A>")
217     type(waitForObject(":Center.Y _ModuleBase_ParamSpinBox_2"), center[1])
218
219     type(waitForObject(":Start point.X _ModuleBase_ParamSpinBox_2"), "<Ctrl+A>")
220     type(waitForObject(":Start point.X _ModuleBase_ParamSpinBox_2"), start_point[0])
221
222     type(waitForObject(":Start point.Y _ModuleBase_ParamSpinBox_2"), "<Ctrl+A>")
223     type(waitForObject(":Start point.Y _ModuleBase_ParamSpinBox_2"), start_point[1])
224
225     type(waitForObject(":End point.X _ModuleBase_ParamSpinBox_2"), "<Ctrl+A>")
226     type(waitForObject(":End point.X _ModuleBase_ParamSpinBox_2"), end_point[0])
227
228     type(waitForObject(":End point.Y _ModuleBase_ParamSpinBox_2"), "<Ctrl+A>")
229     type(waitForObject(":End point.Y _ModuleBase_ParamSpinBox_2"), end_point[1])
230
231     clickButton(waitForObject(":Arc.property_panel_ok_QToolButton"))
232
233 def arc_create_in_view(center, start_point, end_point, aux=0):
234     mouseClick(waitForObjectItem(":SALOME*_QMenuBar", "Sketch"))
235     mouseClick(waitForObjectItem(":Sketch_QMenu", "Arc"))
236
237     if aux == 1:
238         clickButton(waitForObject(":Arc.Auxiliary_QCheckBox"))
239
240     mouseClick(waitForObject(":SALOME*.3D View Operations_OCCViewer_ViewPort3d"), center[0], center[1], 0, Qt.LeftButton)
241     mouseClick(waitForObject(":SALOME*.3D View Operations_OCCViewer_ViewPort3d"), start_point[0], start_point[1], 0, Qt.LeftButton)
242     mouseClick(waitForObject(":SALOME*.3D View Operations_OCCViewer_ViewPort3d"), end_point[0], end_point[1], 0, Qt.LeftButton)
243
244     clickButton(waitForObject(":Arc.property_panel_cancel_QToolButton"))
245
246 def save(filename):
247     mouseClick(waitForObjectItem(":SALOME*_QMenuBar", "File"))
248     mouseClick(waitForObjectItem(":_QMenu", "Save As..."))
249
250     type(waitForObject(":fileNameEdit_QLineEdit"), filename)
251     clickButton(waitForObject(":Save File.Save_QPushButton"))
252
253 def extrusion(point, to_size, from_size):
254     mouseClick(waitForObjectItem(":SALOME*_QMenuBar", "Features"))
255     mouseClick(waitForObjectItem(":_QMenu", "Extrusion"))
256
257     mouseClick(waitForObject(":SALOME*.3D View Operations_OCCViewer_ViewPort3d"), point[0], point[1], 0, Qt.LeftButton)
258
259     type(waitForObject(":Extrusion.to_size_ModuleBase_ParamSpinBox"), "<Ctrl+A>")
260     type(waitForObject(":Extrusion.to_size_ModuleBase_ParamSpinBox"), to_size)
261
262     type(waitForObject(":Extrusion.from_size_ModuleBase_ParamSpinBox"), "<Ctrl+A>")
263     type(waitForObject(":Extrusion.from_size_ModuleBase_ParamSpinBox"), from_size)
264
265     clickButton(waitForObject(":Extrusion.property_panel_ok_QToolButton"))
266
267 def open(filename):
268     clickButton(waitForObject(":SALOME*.Open_QToolButton"))
269     waitForObject(":fileNameEdit_QLineEdit_2").setText(filename)
270     type(waitForObject(":fileNameEdit_QLineEdit_2"), "<Return>")
271
272 def point_fixe(point):
273     mouseClick(waitForObjectItem(":SALOME*_QMenuBar", "Sketch"))
274     mouseClick(waitForObjectItem(":Sketch_QMenu", "Fixed"))
275     mouseClick(waitForObject(":SALOME*.3D View Operations_OCCViewer_ViewPort3d"), point[0], point[1], 0, Qt.LeftButton)
276     clickButton(waitForObject(":Fixed.property_panel_cancel_QToolButton"))
277
278
279 def distance(start_point, end_point, annotation_point):
280     mouseClick(waitForObjectItem(":SALOME*_QMenuBar", "Sketch"))
281     mouseClick(waitForObjectItem(":Sketch_QMenu", "Distance"))
282     mouseClick(waitForObject(":SALOME*.3D View Operations_OCCViewer_ViewPort3d"), start_point[0], start_point[1], 0, Qt.LeftButton)
283     mouseClick(waitForObject(":SALOME*.3D View Operations_OCCViewer_ViewPort3d"), end_point[0], end_point[1], 0, Qt.LeftButton)
284     mouseClick(waitForObject(":SALOME*.3D View Operations_OCCViewer_ViewPort3d"), annotation_point[0], annotation_point[1], 0, Qt.LeftButton)
285
286     # if length!=0:
287         # type(waitForObject(":_ModuleBase_ParamSpinBox"), "<Ctrl+A>")
288         # type(waitForObject(":_ModuleBase_ParamSpinBox"), length)
289
290     clickButton(waitForObject(":Distance.property_panel_cancel_QToolButton"))
291
292 def change_distance(point, value):
293     doubleClick(waitForObject(":SALOME*.3D View Operations_OCCViewer_ViewPort3d"), point[0], point[1], 0, Qt.LeftButton)
294     type(waitForObject(":Distance.ConstraintValue_ModuleBase_ParamSpinBox"), "<Ctrl+A>")
295     type(waitForObject(":Distance.ConstraintValue_ModuleBase_ParamSpinBox"), value)
296     clickButton(waitForObject(":Distance.property_panel_ok_QToolButton"))
297
298 def parallel(point_1, point_2):
299     mouseClick(waitForObjectItem(":SALOME*_QMenuBar", "Sketch"))
300     mouseClick(waitForObjectItem(":Sketch_QMenu", "Parallel"))
301     mouseClick(waitForObject(":SALOME*.3D View Operations_OCCViewer_ViewPort3d"), point_1[0], point_1[1], 0, Qt.LeftButton)
302     mouseClick(waitForObject(":SALOME*.3D View Operations_OCCViewer_ViewPort3d"), point_2[0], point_2[1], 0, Qt.LeftButton)
303     clickButton(waitForObject(":Parallel.property_panel_cancel_QToolButton_2"))
304
305 def perpendicular(point_1, point_2):
306     mouseClick(waitForObjectItem(":SALOME*_QMenuBar", "Sketch"))
307     mouseClick(waitForObjectItem(":Sketch_QMenu", "Perpendicular"))
308
309     mouseClick(waitForObject(":SALOME*.3D View Operations_OCCViewer_ViewPort3d"), point_1[0], point_1[1], 0, Qt.LeftButton)
310     mouseClick(waitForObject(":SALOME*.3D View Operations_OCCViewer_ViewPort3d"), point_2[0], point_2[1], 0, Qt.LeftButton)
311
312     clickButton(waitForObject(":Perpendicular.property_panel_cancel_QToolButton"))
313
314 def coincident(point_1, point_2):
315     mouseClick(waitForObjectItem(":SALOME*_QMenuBar", "Sketch"))
316     mouseClick(waitForObjectItem(":Sketch_QMenu", "Coincident"))
317     mouseClick(waitForObject(":SALOME*.3D View Operations_OCCViewer_ViewPort3d"), point_1[0], point_1[1], 0, Qt.LeftButton)
318     mouseClick(waitForObject(":SALOME*.3D View Operations_OCCViewer_ViewPort3d"), point_2[0], point_2[1], 0, Qt.LeftButton)
319     clickButton(waitForObject(":Coincident.property_panel_cancel_QToolButton"))
320
321 def equal(point_1, point_2):
322     mouseClick(waitForObjectItem(":SALOME*_QMenuBar", "Sketch"))
323     mouseClick(waitForObjectItem(":Sketch_QMenu", "Equal"))
324     mouseClick(waitForObject(":SALOME*.3D View Operations_OCCViewer_ViewPort3d"), point_1[0], point_1[1], 0, Qt.LeftButton)
325     mouseClick(waitForObject(":SALOME*.3D View Operations_OCCViewer_ViewPort3d"), point_2[0], point_2[1], 0, Qt.LeftButton)
326     clickButton(waitForObject(":Equal.property_panel_cancel_QToolButton"))
327
328 def vertical(point):
329     mouseClick(waitForObjectItem(":SALOME*_QMenuBar", "Sketch"))
330     mouseClick(waitForObjectItem(":Sketch_QMenu", "Vertical"))
331     mouseClick(waitForObject(":SALOME*.3D View Operations_OCCViewer_ViewPort3d"), point[0], point[1], 0, Qt.LeftButton)
332     clickButton(waitForObject(":Vertical.property_panel_cancel_QToolButton"))
333
334 def horizontal(point):
335     mouseClick(waitForObjectItem(":SALOME*_QMenuBar", "Sketch"))
336     mouseClick(waitForObjectItem(":Sketch_QMenu", "Horizontal"))
337     mouseClick(waitForObject(":SALOME*.3D View Operations_OCCViewer_ViewPort3d"), point[0], point[1], 0, Qt.LeftButton)
338     clickButton(waitForObject(":Horizontal.property_panel_cancel_QToolButton"))
339
340 def fit_all():
341     clickButton(waitForObject(":SALOME*.Fit All_QToolButton"))
342
343 def boolean_select_operation_type(type):
344     real_name = "{container=':property_panel_dock.Operation type_QGroupBox' toolTip='%s' type='QToolButton' unnamed='1' visible='1'}" % type
345     clickButton(waitForObject(real_name))
346
347 def boolean_cut(main_object, tool_object):
348     mouseClick(waitForObjectItem(":SALOME*_QMenuBar", "Features"))
349     mouseClick(waitForObjectItem(":_QMenu", "Boolean"))
350
351     boolean_select_operation_type("Cut")
352
353     mouseClick(waitForObject(":Boolean.Main objects_QListWidget"), 89, 62, 0, Qt.LeftButton)
354     mouseClick(waitForObject(":SALOME*.3D View Operations_OCCViewer_ViewPort3d"), main_object[0], main_object[1], 0, Qt.LeftButton)
355
356     mouseClick(waitForObject(":Boolean.Tool object_QListWidget"), 98, 87, 0, Qt.LeftButton)
357     mouseClick(waitForObject(":SALOME*.3D View Operations_OCCViewer_ViewPort3d"), tool_object[0], tool_object[1], 0, Qt.LeftButton)
358
359     clickButton(waitForObject(":Boolean.property_panel_ok_QToolButton"))
360
361 def boolean_fuse(main_object, tool_object):
362     mouseClick(waitForObjectItem(":SALOME*_QMenuBar", "Features"))
363     mouseClick(waitForObjectItem(":_QMenu", "Boolean"))
364
365     boolean_select_operation_type("Fuse")
366
367     mouseClick(waitForObject(":Boolean.Main objects_QListWidget"), 89, 62, 0, Qt.LeftButton)
368     mouseClick(waitForObject(":SALOME*.3D View Operations_OCCViewer_ViewPort3d"), main_object[0], main_object[1], 0, Qt.LeftButton)
369
370     mouseClick(waitForObject(":Boolean.Tool object_QListWidget"), 98, 87, 0, Qt.LeftButton)
371     mouseClick(waitForObject(":SALOME*.3D View Operations_OCCViewer_ViewPort3d"), tool_object[0], tool_object[1], 0, Qt.LeftButton)
372
373     clickButton(waitForObject(":Boolean.property_panel_ok_QToolButton"))
374
375 def boolean_common(main_object, tool_object):
376     mouseClick(waitForObjectItem(":SALOME*_QMenuBar", "Features"))
377     mouseClick(waitForObjectItem(":_QMenu", "Boolean"))
378
379     boolean_select_operation_type("Common")
380
381     mouseClick(waitForObject(":Boolean.Main objects_QListWidget"), 89, 62, 0, Qt.LeftButton)
382     mouseClick(waitForObject(":SALOME*.3D View Operations_OCCViewer_ViewPort3d"), main_object[0], main_object[1], 0, Qt.LeftButton)
383
384     mouseClick(waitForObject(":Boolean.Tool object_QListWidget"), 98, 87, 0, Qt.LeftButton)
385     mouseClick(waitForObject(":SALOME*.3D View Operations_OCCViewer_ViewPort3d"), tool_object[0], tool_object[1], 0, Qt.LeftButton)
386
387     clickButton(waitForObject(":Boolean.property_panel_ok_QToolButton"))
388
389 def length(point, annotation_point):
390     mouseClick(waitForObjectItem(":SALOME*_QMenuBar", "Sketch"))
391     mouseClick(waitForObjectItem(":Sketch_QMenu", "Length"))
392
393     mouseClick(waitForObject(":SALOME*.3D View Operations_OCCViewer_ViewPort3d"), point[0], point[1], 0, Qt.LeftButton)
394     mouseClick(waitForObject(":SALOME*.3D View Operations_OCCViewer_ViewPort3d"), annotation_point[0], annotation_point[1], 0, Qt.LeftButton)
395
396     clickButton(waitForObject(":Length.property_panel_cancel_QToolButton"))
397
398 def change_length(point, value):
399     mouseClick(waitForObject(":SALOME*.3D View Operations_OCCViewer_ViewPort3d"), point[0], point[1], 0, Qt.LeftButton)
400
401     type(waitForObject(":Length.ConstraintValue_ModuleBase_ParamSpinBox"), "<Ctrl+A>")
402     type(waitForObject(":Length.ConstraintValue_ModuleBase_ParamSpinBox"), value)
403
404     clickButton(waitForObject(":Length.property_panel_ok_QToolButton"))
405
406 def radius(point, annotation_point):
407     mouseClick(waitForObjectItem(":SALOME*_QMenuBar", "Sketch"))
408     mouseClick(waitForObjectItem(":Sketch_QMenu", "Radius"))
409
410     mouseClick(waitForObject(":SALOME*.3D View Operations_OCCViewer_ViewPort3d"), point[0], point[1], 0, Qt.LeftButton)
411     mouseClick(waitForObject(":SALOME*.3D View Operations_OCCViewer_ViewPort3d"), annotation_point[0], annotation_point[1], 0, Qt.LeftButton)
412
413     clickButton(waitForObject(":Radius.property_panel_cancel_QToolButton"))
414
415 def change_radius(point, value):
416     mouseClick(waitForObject(":SALOME*.3D View Operations_OCCViewer_ViewPort3d"), point[0], point[1], 0, Qt.LeftButton)
417
418     type(waitForObject(":Radius.ConstraintValue_ModuleBase_ParamSpinBox"), "<Ctrl+A>")
419     type(waitForObject(":Radius.ConstraintValue_ModuleBase_ParamSpinBox"), value)
420
421     clickButton(waitForObject(":Radius.property_panel_ok_QToolButton"))
422
423 def tangent(point_1, point_2):
424     mouseClick(waitForObjectItem(":SALOME*_QMenuBar", "Sketch"))
425     mouseClick(waitForObjectItem(":Sketch_QMenu", "Tangent"))
426
427     mouseClick(waitForObject(":SALOME*.3D View Operations_OCCViewer_ViewPort3d"), point_1[0], point_1[1], 0, Qt.LeftButton)
428     mouseClick(waitForObject(":SALOME*.3D View Operations_OCCViewer_ViewPort3d"), point_2[0], point_2[1], 0, Qt.LeftButton)
429
430     clickButton(waitForObject(":Tangent.property_panel_cancel_QToolButton"))
431
432 def partition(main_objects, tool_object):
433     mouseClick(waitForObjectItem(":SALOME*_QMenuBar", "Features"))
434     mouseClick(waitForObjectItem(":_QMenu", "Partition"))
435
436     for main_object in main_objects:
437         mouseClick(waitForObject(":SALOME*.3D View Operations_OCCViewer_ViewPort3d"), main_object[0], main_object[1], 33554432, Qt.LeftButton)
438
439     mouseClick(waitForObject(":Boolean.Tool object_QListWidget"), 83, 132, 0, Qt.LeftButton)
440     mouseClick(waitForObject(":SALOME*.3D View Operations_OCCViewer_ViewPort3d"), tool_object[0], tool_object[1], 0, Qt.LeftButton)
441     clickButton(waitForObject(":Boolean.property_panel_ok_QToolButton"))
442
443 def plane(point, distance):
444     mouseClick(waitForObjectItem(":SALOME*_QMenuBar", "Construction"))
445     mouseClick(waitForObjectItem(":_QMenu", "Plane"))
446
447     mouseClick(waitForObject(":SALOME*.3D View Operations_OCCViewer_ViewPort3d"), point[0], point[1], 0, Qt.LeftButton)
448
449     type(waitForObject(":Plane.distance_ModuleBase_ParamSpinBox"), "<Ctrl+A>")
450     type(waitForObject(":Plane.distance_ModuleBase_ParamSpinBox"), 100)
451     type(waitForObject(":Plane.distance_ModuleBase_ParamSpinBox"), "<Return>")
452
453     clickButton(waitForObject(":Plane.property_panel_ok_QToolButton"))
454
455 def point(x, y, z):
456     mouseClick(waitForObjectItem(":SALOME*_QMenuBar", "Construction"))
457     mouseClick(waitForObjectItem(":_QMenu", "Point"))
458
459     type(waitForObject(":Point.x_ModuleBase_ParamSpinBox"), "<Ctrl+A>")
460     type(waitForObject(":Point.x_ModuleBase_ParamSpinBox"), x)
461
462     type(waitForObject(":Point.y_ModuleBase_ParamSpinBox"), "<Ctrl+A>")
463     type(waitForObject(":Point.y_ModuleBase_ParamSpinBox"), y)
464
465     type(waitForObject(":Point.z_ModuleBase_ParamSpinBox"), "<Ctrl+A>")
466     type(waitForObject(":Point.z_ModuleBase_ParamSpinBox"), z)
467     type(waitForObject(":Point.z_ModuleBase_ParamSpinBox"), "<Return>")
468
469     clickButton(waitForObject(":Point.property_panel_ok_QToolButton"))
470
471 def axis(point_1, point_2):
472     mouseClick(waitForObjectItem(":SALOME*_QMenuBar", "Construction"))
473     mouseClick(waitForObjectItem(":_QMenu", "Axis"))
474
475     mouseDrag(waitForObject(":SALOME*.3D View Operations_OCCViewer_ViewPort3d"), point_1[0] - 40, point_1[1] - 40, 80, 80, 1, Qt.LeftButton)
476     mouseDrag(waitForObject(":SALOME*.3D View Operations_OCCViewer_ViewPort3d"), point_2[0] - 40, point_2[1] - 40, 80, 80, 1, Qt.LeftButton)
477
478     clickButton(waitForObject(":Axis.property_panel_ok_QToolButton"))
479
480
481
482
483
484
485
486