@@ -73,9 +73,9 @@ def makeline(self,idel):
73
73
})
74
74
if res [0 ]:
75
75
try :
76
- startpoint = vec3 ( float (res [1 ][lbl_startptx ]),float (res [1 ][lbl_startpty ]),float (res [1 ][lbl_startptz ]))
76
+ startpoint = [ float (res [1 ][lbl_startptx ]),float (res [1 ][lbl_startpty ]),float (res [1 ][lbl_startptz ])]
77
77
nbsources = int (res [1 ][lbl_nbsources ])
78
- step = vec3 ( float (res [1 ][lbl_stepx ]),float (res [1 ][lbl_stepy ]),float (res [1 ][lbl_stepz ]))
78
+ step = [ float (res [1 ][lbl_stepx ]),float (res [1 ][lbl_stepy ]),float (res [1 ][lbl_stepz ])]
79
79
except :
80
80
print (_ (u"Wrong parameters" ),file = sys .stderr )
81
81
return
@@ -92,9 +92,11 @@ def enable_grp_sources(self,idgrp):
92
92
def disable_grp_sources (self ,idgrp ):
93
93
self .set_grp_src_activation (idgrp ,False )
94
94
def rotate_src (self ,idgrp ):
95
- lbl_vec = _ (u"Vector of rotation" )
95
+ lbl_vecx = _ (u"Vector of rotation x" )
96
+ lbl_vecy = _ (u"Vector of rotation y" )
97
+ lbl_vecz = _ (u"Vector of rotation z" )
96
98
lbl_angle = _ (u"Angle (degrees)" )
97
- lbl_rotation_pos = _ (u"Rotation centre" )
99
+ lbl_rotation_pos = _ (u"Rotation centre x (m) " )
98
100
##Evaluation du centre de rotation
99
101
#on recupere le groupe des sources
100
102
srcgroup = ui .element (idgrp )
@@ -110,15 +112,19 @@ def rotate_src(self,idgrp):
110
112
111
113
res = ui .application .getuserinput (_ (u"Rotation of a group of sound sources" ),
112
114
"" ,
113
- { lbl_vec : "[0.,0.,1.]" ,
115
+ { lbl_vecx : "0" ,
116
+ lbl_vecy : "0" ,
117
+ lbl_vecz : "1" ,
114
118
lbl_angle : "90" ,
115
- lbl_rotation_pos : str (centregroup )
119
+ lbl_rotation_posx : str (centregroup [0 ]),
120
+ lbl_rotation_posy : str (centregroup [1 ]),
121
+ lbl_rotation_posz : str (centregroup [2 ])
116
122
})
117
123
if res [0 ]:
118
124
try :
119
- vecrotation = vec3 (eval (res [1 ][lbl_vec ]))
125
+ vecrotation = vec3 (float (res [1 ][lbl_vecx ]), float ( res [ 1 ][ lbl_vecy ]), float ( res [ 1 ][ lbl_vecz ]))
120
126
anglerotation = float (res [1 ][lbl_angle ])
121
- centregroup = vec3 (eval (res [1 ][lbl_rotation_pos ]))
127
+ centregroup = vec3 (float (res [1 ][lbl_rotation_posx ]), float ( res [ 1 ][ lbl_rotation_posy ]), float ( res [ 1 ][ lbl_rotation_posz ]))
122
128
except :
123
129
print (_ (u"Wrong parameters" ),file = sys .stderr )
124
130
return
@@ -128,18 +134,23 @@ def rotate_src(self,idgrp):
128
134
srclst = srcgroup .getallelementbytype (ui .element_type .ELEMENT_TYPE_SCENE_SOURCES_SOURCE )
129
135
for src in srclst :
130
136
sourceEl = ui .element (src )
131
- rotatedpos = vec3 (sourceEl .getpositionconfig ("pos_source" ))- centregroup
137
+ pos_source = sourceEl .getpositionconfig ("pos_source" )
138
+ rotatedpos = vec3 (pos_source [0 ], pos_source [1 ], pos_source [2 ])- centregroup
132
139
rotatedpos = rotatedpos .rotate (vecrotation ,math .radians (anglerotation ))+ centregroup
133
- sourceEl .updatepositionconfig ("pos_source" ,[rotatedpos . x ,rotatedpos . y , rotatedpos . z ])
140
+ sourceEl .updatepositionconfig ("pos_source" ,[rotatedpos [ 0 ] ,rotatedpos [ 1 ], rotatedpos [ 2 ])
134
141
def translate_src (self ,idgrp ):
135
- lbl_vec = _ (u"Direction (m)" )
142
+ lbl_vecx = _ (u"Direction x (m)" )
143
+ lbl_vecy = _ (u"Direction y (m)" )
144
+ lbl_vecz = _ (u"Direction z (m)" )
136
145
res = ui .application .getuserinput (_ (u"Translation of a group of sound sources" ),
137
146
"" ,
138
- { lbl_vec : "[1.,0.,0.]"
147
+ { lbl_vecx : "1" ,
148
+ lbl_vecy : "0" ,
149
+ lbl_vecz : "0" ,
139
150
})
140
151
if res [0 ]:
141
152
try :
142
- vectranslation = vec3 (eval (res [1 ][lbl_vec ]))
153
+ vectranslation = vec3 (float (res [1 ][lbl_vec ]), float ( res [ 1 ][ lbl_vecy ]), float ( res [ 1 ][ lbl_vecz ]))
143
154
except :
144
155
print (_ (u"Wrong parameters" ),file = sys .stderr )
145
156
return
@@ -150,7 +161,8 @@ def translate_src(self,idgrp):
150
161
for src in srclst :
151
162
sourceEl = ui .element (src )
152
163
#On recupere la position de la source
153
- newpos = vec3 (sourceEl .getpositionconfig ("pos_source" ))+ vectranslation
154
- sourceEl .updatepositionconfig ("pos_source" ,[newpos .x ,newpos .y ,newpos .z ])
164
+ pos_source = sourceEl .getpositionconfig ("pos_source" )
165
+ newpos = vec3 (pos_source [0 ], pos_source [1 ], pos_source [2 ])+ vectranslation
166
+ sourceEl .updatepositionconfig ("pos_source" ,[newpos [0 ],newpos [1 ],newpos [2 ]])
155
167
156
168
ui .application .register_menu_manager (ui .element_type .ELEMENT_TYPE_SCENE_SOURCES , manager ())
0 commit comments