Commit 1d505907e52018788d7b7e6cdd21efd82993ca9f
1 parent
0215f3d6
Exists in
master
and in
67 other branches
ADD: Merged pt_BR translation
Showing
1 changed file
with
619 additions
and
255 deletions
Show diff stats
po/pt_BR.po
... | ... | @@ -8,357 +8,391 @@ |
8 | 8 | msgid "" |
9 | 9 | msgstr "" |
10 | 10 | "Project-Id-Version: InVesalius\n" |
11 | -"Report-Msgid-Bugs-To: http://svn.softwarepublico.gov.br/trac/invesalius\n" | |
12 | -"POT-Creation-Date: 2010-03-13 10:17-0300\n" | |
11 | +"Report-Msgid-Bugs-To: \n" | |
12 | +"POT-Creation-Date: 2012-09-03 16:29-0300\n" | |
13 | 13 | "PO-Revision-Date: 2010-11-30 02:42+0000\n" |
14 | 14 | "Last-Translator: Invesalius team <invesalius@cti.gov.br>\n" |
15 | -"Language-Team: Portuguese (Brazil) (http://www.transifex.com/projects/p/invesalius/language/pt_BR/)\n" | |
15 | +"Language-Team: Portuguese (Brazil) (http://www.transifex.com/projects/p/" | |
16 | +"invesalius/language/pt_BR/)\n" | |
17 | +"Language: pt_BR\n" | |
16 | 18 | "MIME-Version: 1.0\n" |
17 | 19 | "Content-Type: text/plain; charset=UTF-8\n" |
18 | 20 | "Content-Transfer-Encoding: 8bit\n" |
19 | -"Language: pt_BR\n" | |
20 | 21 | "Plural-Forms: nplurals=2; plural=(n > 1);\n" |
21 | 22 | "X-Poedit-Country: GENERIC\n" |
22 | 23 | "X-Poedit-Language: English\n" |
23 | 24 | "X-Poedit-SourceCharset: utf-8\n" |
24 | 25 | |
26 | +#: clut_raycasting.py:535 | |
27 | +#, fuzzy, python-format | |
28 | +msgid "Value: %-6d" | |
29 | +msgstr "Valor" | |
30 | + | |
31 | +#: clut_raycasting.py:536 | |
32 | +#, python-format | |
33 | +msgid "Alpha: %-.3f" | |
34 | +msgstr "" | |
35 | + | |
25 | 36 | #: constants.py:31 |
26 | 37 | #, python-format |
27 | 38 | msgid "M %d" |
28 | 39 | msgstr "M %d" |
29 | 40 | |
30 | -#: constants.py:91 | |
41 | +#: constants.py:41 | |
42 | +#, fuzzy | |
43 | +msgid "Off" | |
44 | +msgstr " Desabilitado" | |
45 | + | |
46 | +#: constants.py:42 | |
47 | +msgid "RedBlue" | |
48 | +msgstr "" | |
49 | + | |
50 | +#: constants.py:43 | |
51 | +msgid "CristalEyes" | |
52 | +msgstr "" | |
53 | + | |
54 | +#: constants.py:44 | |
55 | +msgid "Interlaced" | |
56 | +msgstr "" | |
57 | + | |
58 | +#: constants.py:45 constants.py:306 | |
59 | +msgid "Left" | |
60 | +msgstr "Esquerda" | |
61 | + | |
62 | +#: constants.py:46 constants.py:305 | |
63 | +msgid "Right" | |
64 | +msgstr "Direita" | |
65 | + | |
66 | +#: constants.py:47 | |
67 | +msgid "Dresden" | |
68 | +msgstr "" | |
69 | + | |
70 | +#: constants.py:48 | |
71 | +msgid "Checkboard" | |
72 | +msgstr "" | |
73 | + | |
74 | +#: constants.py:49 | |
75 | +msgid "Anaglyph" | |
76 | +msgstr "" | |
77 | + | |
78 | +#: constants.py:102 | |
31 | 79 | msgid "Keep all slices" |
32 | 80 | msgstr "Manter todas as fatias" |
33 | 81 | |
34 | -#: constants.py:91 | |
82 | +#: constants.py:102 | |
35 | 83 | msgid "Skip 1 for each 2 slices" |
36 | 84 | msgstr "Pular 1 a cada 2 fatias" |
37 | 85 | |
38 | -#: constants.py:92 | |
86 | +#: constants.py:103 | |
39 | 87 | msgid "Skip 2 for each 3 slices" |
40 | 88 | msgstr "Pular 2 a cada 3 fatias" |
41 | 89 | |
42 | -#: constants.py:92 | |
90 | +#: constants.py:103 | |
43 | 91 | msgid "Skip 3 for each 4 slices" |
44 | 92 | msgstr "Pular 3 a cada 4 fatias" |
45 | 93 | |
46 | -#: constants.py:93 | |
94 | +#: constants.py:104 | |
47 | 95 | msgid "Skip 4 for each 5 slices" |
48 | 96 | msgstr "Pular 4 a cada 5 fatias" |
49 | 97 | |
50 | -#: constants.py:93 | |
98 | +#: constants.py:104 | |
51 | 99 | msgid "Skip 5 for each 6 slices" |
52 | 100 | msgstr "Pular 5 a cada 6 fatias" |
53 | 101 | |
54 | -#: constants.py:133 slice_menu.py:76 slice_menu.py:81 | |
102 | +#: constants.py:144 slice_menu.py:76 slice_menu.py:81 | |
55 | 103 | msgid "Default " |
56 | 104 | msgstr "Padrão " |
57 | 105 | |
58 | -#: constants.py:134 | |
106 | +#: constants.py:145 | |
59 | 107 | msgid "Hue" |
60 | 108 | msgstr "Matiz" |
61 | 109 | |
62 | -#: constants.py:135 | |
110 | +#: constants.py:146 | |
63 | 111 | msgid "Saturation" |
64 | 112 | msgstr "Saturação" |
65 | 113 | |
66 | -#: constants.py:136 | |
114 | +#: constants.py:147 | |
67 | 115 | msgid "Desert" |
68 | 116 | msgstr "Deserto" |
69 | 117 | |
70 | -#: constants.py:137 | |
118 | +#: constants.py:148 | |
71 | 119 | msgid "Rainbow" |
72 | 120 | msgstr "Arco-íris" |
73 | 121 | |
74 | -#: constants.py:138 | |
122 | +#: constants.py:149 | |
75 | 123 | msgid "Ocean" |
76 | 124 | msgstr "Oceano" |
77 | 125 | |
78 | -#: constants.py:139 | |
126 | +#: constants.py:150 | |
79 | 127 | msgid "Inverse Gray" |
80 | 128 | msgstr "Cinza invertido" |
81 | 129 | |
82 | -#: constants.py:180 constants.py:265 dialogs.py:433 dialogs.py:446 | |
83 | -#: dicom_preview_panel.py:619 dicom_preview_panel.py:620 presets.py:30 | |
130 | +#: constants.py:191 constants.py:276 dialogs.py:522 dialogs.py:535 | |
131 | +#: dicom_preview_panel.py:675 dicom_preview_panel.py:676 presets.py:30 | |
84 | 132 | #: presets.py:48 presets.py:103 presets.py:134 |
85 | 133 | msgid "Bone" |
86 | 134 | msgstr "Osso" |
87 | 135 | |
88 | -#: constants.py:187 | |
136 | +#: constants.py:198 | |
89 | 137 | #, python-format |
90 | 138 | msgid "Mask %d" |
91 | 139 | msgstr "Máscara %d" |
92 | 140 | |
93 | -#: constants.py:240 task_surface.py:43 | |
141 | +#: constants.py:251 task_surface.py:43 | |
94 | 142 | msgid "Draw" |
95 | 143 | msgstr "Desenhar" |
96 | 144 | |
97 | -#: constants.py:240 task_surface.py:43 | |
145 | +#: constants.py:251 task_surface.py:43 | |
98 | 146 | msgid "Erase" |
99 | 147 | msgstr "Apagar" |
100 | 148 | |
101 | -#: constants.py:240 data_notebook.py:434 task_surface.py:43 | |
149 | +#: constants.py:251 data_notebook.py:434 task_surface.py:43 | |
102 | 150 | msgid "Threshold" |
103 | 151 | msgstr "Limiar" |
104 | 152 | |
105 | -#: constants.py:251 constants.py:256 | |
153 | +#: constants.py:262 constants.py:267 | |
106 | 154 | msgid "Low" |
107 | 155 | msgstr "Baixa" |
108 | 156 | |
109 | -#: constants.py:252 constants.py:256 | |
157 | +#: constants.py:263 constants.py:267 | |
110 | 158 | msgid "Medium" |
111 | 159 | msgstr "Média" |
112 | 160 | |
113 | -#: constants.py:253 constants.py:256 | |
161 | +#: constants.py:264 constants.py:267 | |
114 | 162 | msgid "High" |
115 | 163 | msgstr "Alta" |
116 | 164 | |
117 | -#: constants.py:254 constants.py:255 constants.py:256 surface.py:381 | |
165 | +#: constants.py:265 constants.py:266 constants.py:267 surface.py:392 | |
118 | 166 | msgid "Optimal *" |
119 | 167 | msgstr "Ótima *" |
120 | 168 | |
121 | -#: constants.py:261 | |
169 | +#: constants.py:272 | |
122 | 170 | #, python-format |
123 | 171 | msgid "Surface %d" |
124 | 172 | msgstr "Superfície %d" |
125 | 173 | |
126 | -#: constants.py:264 | |
174 | +#: constants.py:275 | |
127 | 175 | msgid "Abdomen" |
128 | 176 | msgstr "Abdômen" |
129 | 177 | |
130 | -#: constants.py:266 | |
178 | +#: constants.py:277 | |
131 | 179 | msgid "Brain Posterior Fossa" |
132 | 180 | msgstr "Fossa Posterior Cerebral" |
133 | 181 | |
134 | -#: constants.py:267 | |
182 | +#: constants.py:278 | |
135 | 183 | msgid "Brain" |
136 | 184 | msgstr "Cérebro" |
137 | 185 | |
138 | -#: constants.py:268 control.py:339 slice_menu.py:39 slice_menu.py:51 | |
186 | +#: constants.py:279 control.py:361 slice_menu.py:39 slice_menu.py:51 | |
139 | 187 | msgid "Default" |
140 | 188 | msgstr "Padrão" |
141 | 189 | |
142 | -#: constants.py:269 | |
190 | +#: constants.py:280 | |
143 | 191 | msgid "Emphysema" |
144 | 192 | msgstr "Enfisema" |
145 | 193 | |
146 | -#: constants.py:270 | |
194 | +#: constants.py:281 | |
147 | 195 | msgid "Ischemia - Hard Non Contrast" |
148 | 196 | msgstr "Isquemia - Contraste Tecidos Duros" |
149 | 197 | |
150 | -#: constants.py:271 | |
198 | +#: constants.py:282 | |
151 | 199 | msgid "Ischemia - Soft Non Contrast" |
152 | 200 | msgstr "Isquemia - Contraste Tecidos Moles" |
153 | 201 | |
154 | -#: constants.py:272 | |
202 | +#: constants.py:283 | |
155 | 203 | msgid "Larynx" |
156 | 204 | msgstr "Laringe" |
157 | 205 | |
158 | -#: constants.py:273 | |
206 | +#: constants.py:284 | |
159 | 207 | msgid "Liver" |
160 | 208 | msgstr "Fígado" |
161 | 209 | |
162 | -#: constants.py:274 | |
210 | +#: constants.py:285 | |
163 | 211 | msgid "Lung - Soft" |
164 | 212 | msgstr "Pulmão - Mole" |
165 | 213 | |
166 | -#: constants.py:275 | |
214 | +#: constants.py:286 | |
167 | 215 | msgid "Lung - Hard" |
168 | 216 | msgstr "Pulmão - Duro" |
169 | 217 | |
170 | -#: constants.py:276 | |
218 | +#: constants.py:287 | |
171 | 219 | msgid "Mediastinum" |
172 | 220 | msgstr "Mediastino" |
173 | 221 | |
174 | -#: constants.py:277 control.py:340 slice_menu.py:46 slice_menu.py:51 | |
222 | +#: constants.py:288 control.py:362 slice_menu.py:46 slice_menu.py:51 | |
175 | 223 | msgid "Manual" |
176 | 224 | msgstr "Manual" |
177 | 225 | |
178 | -#: constants.py:278 | |
226 | +#: constants.py:289 | |
179 | 227 | msgid "Pelvis" |
180 | 228 | msgstr "Pelvis" |
181 | 229 | |
182 | -#: constants.py:279 | |
230 | +#: constants.py:290 | |
183 | 231 | msgid "Sinus" |
184 | 232 | msgstr "Seio" |
185 | 233 | |
186 | -#: constants.py:280 | |
234 | +#: constants.py:291 | |
187 | 235 | msgid "Vasculature - Hard" |
188 | 236 | msgstr "Vascular - Duro" |
189 | 237 | |
190 | -#: constants.py:281 | |
238 | +#: constants.py:292 | |
191 | 239 | msgid "Vasculature - Soft" |
192 | 240 | msgstr "Vascular - Mole" |
193 | 241 | |
194 | -#: constants.py:290 | |
242 | +#: constants.py:301 | |
195 | 243 | msgid "Front" |
196 | 244 | msgstr "Frente" |
197 | 245 | |
198 | -#: constants.py:291 | |
246 | +#: constants.py:302 | |
199 | 247 | msgid "Back" |
200 | 248 | msgstr "Atrás" |
201 | 249 | |
202 | -#: constants.py:292 | |
250 | +#: constants.py:303 | |
203 | 251 | msgid "Top" |
204 | 252 | msgstr "Topo" |
205 | 253 | |
206 | -#: constants.py:293 | |
254 | +#: constants.py:304 | |
207 | 255 | msgid "Bottom" |
208 | 256 | msgstr "Base" |
209 | 257 | |
210 | -#: constants.py:294 | |
211 | -msgid "Right" | |
212 | -msgstr "Direita" | |
213 | - | |
214 | -#: constants.py:295 | |
215 | -msgid "Left" | |
216 | -msgstr "Esquerda" | |
217 | - | |
218 | -#: constants.py:296 | |
258 | +#: constants.py:307 | |
219 | 259 | msgid "Isometric" |
220 | 260 | msgstr "Isométrica" |
221 | 261 | |
222 | -#: constants.py:307 | |
262 | +#: constants.py:318 | |
223 | 263 | msgid "Airways" |
224 | 264 | msgstr "Vias Aéreas" |
225 | 265 | |
226 | -#: constants.py:308 | |
266 | +#: constants.py:319 | |
227 | 267 | msgid "Airways II" |
228 | 268 | msgstr "Vias Aéreas II" |
229 | 269 | |
230 | -#: constants.py:309 | |
270 | +#: constants.py:320 | |
231 | 271 | msgid "Black & White" |
232 | 272 | msgstr "Preto & Branco" |
233 | 273 | |
234 | -#: constants.py:310 | |
274 | +#: constants.py:321 | |
235 | 275 | msgid "Bone + Skin" |
236 | 276 | msgstr "Osso + Pele" |
237 | 277 | |
238 | -#: constants.py:311 | |
278 | +#: constants.py:322 | |
239 | 279 | msgid "Bone + Skin II" |
240 | 280 | msgstr "Osso + Pele II" |
241 | 281 | |
242 | -#: constants.py:312 | |
282 | +#: constants.py:323 | |
243 | 283 | msgid "Dark Bone" |
244 | 284 | msgstr "Osso Escuro" |
245 | 285 | |
246 | -#: constants.py:313 | |
286 | +#: constants.py:324 | |
247 | 287 | msgid "Glossy" |
248 | 288 | msgstr "Brilhante" |
249 | 289 | |
250 | -#: constants.py:314 | |
290 | +#: constants.py:325 | |
251 | 291 | msgid "Glossy II" |
252 | 292 | msgstr "Brilhante II" |
253 | 293 | |
254 | -#: constants.py:315 | |
294 | +#: constants.py:326 | |
255 | 295 | msgid "Gold Bone" |
256 | 296 | msgstr "Osso Dourado" |
257 | 297 | |
258 | -#: constants.py:316 | |
298 | +#: constants.py:327 | |
259 | 299 | msgid "High Contrast" |
260 | 300 | msgstr "Contraste Alto" |
261 | 301 | |
262 | -#: constants.py:317 | |
302 | +#: constants.py:328 | |
263 | 303 | msgid "Low Contrast" |
264 | 304 | msgstr "Contraste Baixo" |
265 | 305 | |
266 | -#: constants.py:318 constants.py:325 | |
306 | +#: constants.py:329 constants.py:336 | |
267 | 307 | msgid "Soft on White" |
268 | 308 | msgstr "Mole sobre Branco" |
269 | 309 | |
270 | -#: constants.py:319 | |
310 | +#: constants.py:330 | |
271 | 311 | msgid "Mid Contrast" |
272 | 312 | msgstr "Contraste Médio" |
273 | 313 | |
274 | -#: constants.py:320 | |
314 | +#: constants.py:331 | |
275 | 315 | msgid "No Shading" |
276 | 316 | msgstr "Sem Sombreamento" |
277 | 317 | |
278 | -#: constants.py:321 | |
318 | +#: constants.py:332 | |
279 | 319 | msgid "Pencil" |
280 | 320 | msgstr "Lápis" |
281 | 321 | |
282 | -#: constants.py:322 | |
322 | +#: constants.py:333 | |
283 | 323 | msgid "Red on White" |
284 | 324 | msgstr "Vermelho sobre Branco" |
285 | 325 | |
286 | -#: constants.py:323 | |
326 | +#: constants.py:334 | |
287 | 327 | msgid "Skin On Blue" |
288 | 328 | msgstr "Pele Sobre Azul" |
289 | 329 | |
290 | -#: constants.py:324 | |
330 | +#: constants.py:335 | |
291 | 331 | msgid "Skin On Blue II" |
292 | 332 | msgstr "Pele Sobre Azul II" |
293 | 333 | |
294 | -#: constants.py:326 | |
334 | +#: constants.py:337 | |
295 | 335 | msgid "Soft + Skin" |
296 | 336 | msgstr "Mole + Pele" |
297 | 337 | |
298 | -#: constants.py:327 | |
338 | +#: constants.py:338 | |
299 | 339 | msgid "Soft + Skin II" |
300 | 340 | msgstr "Mole + Pele II" |
301 | 341 | |
302 | -#: constants.py:328 | |
342 | +#: constants.py:339 | |
303 | 343 | msgid "Soft + Skin III" |
304 | 344 | msgstr "Mole + Pele III" |
305 | 345 | |
306 | -#: constants.py:329 | |
346 | +#: constants.py:340 | |
307 | 347 | msgid "Soft On Blue" |
308 | 348 | msgstr "Mole Sobre Azul" |
309 | 349 | |
310 | -#: constants.py:330 | |
350 | +#: constants.py:341 | |
311 | 351 | msgid "Soft" |
312 | 352 | msgstr "Mole" |
313 | 353 | |
314 | -#: constants.py:331 | |
354 | +#: constants.py:342 | |
315 | 355 | msgid "Standard" |
316 | 356 | msgstr "Padrão" |
317 | 357 | |
318 | -#: constants.py:332 | |
358 | +#: constants.py:343 | |
319 | 359 | msgid "Vascular" |
320 | 360 | msgstr "Vascular" |
321 | 361 | |
322 | -#: constants.py:333 | |
362 | +#: constants.py:344 | |
323 | 363 | msgid "Vascular II" |
324 | 364 | msgstr "Vascular II" |
325 | 365 | |
326 | -#: constants.py:334 | |
366 | +#: constants.py:345 | |
327 | 367 | msgid "Vascular III" |
328 | 368 | msgstr "Vascular III" |
329 | 369 | |
330 | -#: constants.py:335 | |
370 | +#: constants.py:346 | |
331 | 371 | msgid "Vascular IV" |
332 | 372 | msgstr "Vascular IV" |
333 | 373 | |
334 | -#: constants.py:336 | |
374 | +#: constants.py:347 | |
335 | 375 | msgid "Yellow Bone" |
336 | 376 | msgstr "Osso Amarelo" |
337 | 377 | |
338 | -#: constants.py:358 constants.py:360 | |
378 | +#: constants.py:369 constants.py:371 | |
339 | 379 | msgid " Off" |
340 | 380 | msgstr " Desabilitado" |
341 | 381 | |
342 | -#: constants.py:361 volume.py:552 | |
382 | +#: constants.py:372 volume.py:642 | |
343 | 383 | msgid "Cut plane" |
344 | 384 | msgstr "Plano para corte" |
345 | 385 | |
346 | -#: control.py:275 | |
386 | +#: control.py:300 | |
347 | 387 | #, python-format |
348 | 388 | msgid "Loading file %d of %d" |
349 | 389 | msgstr "Carregando arquivo %d de %d" |
350 | 390 | |
351 | -#: control.py:367 dialogs.py:514 presets.py:44 presets.py:62 presets.py:117 | |
352 | -#: presets.py:148 task_slice.py:406 task_slice.py:408 task_slice.py:420 | |
353 | -#: task_slice.py:422 task_slice.py:458 task_slice.py:461 | |
354 | -msgid "Custom" | |
355 | -msgstr "Personalizado" | |
356 | - | |
357 | -#: control.py:372 | |
391 | +#: control.py:418 | |
358 | 392 | msgid "Untitled" |
359 | 393 | msgstr "Sem Título" |
360 | 394 | |
361 | -#: control.py:446 | |
395 | +#: control.py:554 | |
362 | 396 | msgid "Fix gantry tilt applying the degrees below" |
363 | 397 | msgstr "Corrigir inclinação (gantry-tilt), aplicando o seguinte valor" |
364 | 398 | |
... | ... | @@ -398,11 +432,11 @@ msgstr "Superfícies 3D" |
398 | 432 | msgid "Measures" |
399 | 433 | msgstr "Medições" |
400 | 434 | |
401 | -#: data_notebook.py:182 frame.py:894 | |
435 | +#: data_notebook.py:182 frame.py:982 | |
402 | 436 | msgid "Measure distance" |
403 | 437 | msgstr "Medir distância" |
404 | 438 | |
405 | -#: data_notebook.py:185 frame.py:899 | |
439 | +#: data_notebook.py:185 frame.py:987 | |
406 | 440 | msgid "Measure angle" |
407 | 441 | msgstr "Medir ângulo" |
408 | 442 | |
... | ... | @@ -435,429 +469,565 @@ msgstr "Tipo" |
435 | 469 | msgid "Value" |
436 | 470 | msgstr "Valor" |
437 | 471 | |
438 | -#: default_tasks.py:134 | |
472 | +#: default_tasks.py:136 | |
439 | 473 | msgid "Data" |
440 | 474 | msgstr "Dados" |
441 | 475 | |
442 | -#: default_tasks.py:208 default_tasks.py:213 | |
476 | +#: default_tasks.py:210 default_tasks.py:215 | |
443 | 477 | msgid "InVesalius start" |
444 | 478 | msgstr "Inicie o InVesalius" |
445 | 479 | |
446 | -#: default_tasks.py:209 default_tasks.py:214 default_tasks.py:242 | |
480 | +#: default_tasks.py:211 default_tasks.py:216 default_tasks.py:244 | |
447 | 481 | msgid "Select region of interest" |
448 | 482 | msgstr "Selecione a região de interesse" |
449 | 483 | |
450 | -#: default_tasks.py:210 default_tasks.py:215 default_tasks.py:244 | |
484 | +#: default_tasks.py:212 default_tasks.py:217 default_tasks.py:246 | |
451 | 485 | msgid "Configure 3D surface" |
452 | 486 | msgstr "Configure a superfície 3D" |
453 | 487 | |
454 | -#: default_tasks.py:211 | |
488 | +#: default_tasks.py:213 | |
455 | 489 | msgid "Export data" |
456 | 490 | msgstr "Exporte os dados" |
457 | 491 | |
458 | -#: default_tasks.py:216 | |
492 | +#: default_tasks.py:218 | |
459 | 493 | msgid "Utilize navigation system" |
460 | 494 | msgstr "Sistema de neuronavegação" |
461 | 495 | |
462 | -#: default_viewers.py:79 default_viewers.py:168 task_exporter.py:235 | |
496 | +#: default_viewers.py:79 default_viewers.py:168 task_exporter.py:238 | |
463 | 497 | msgid "Axial slice" |
464 | 498 | msgstr "Fatia Axial" |
465 | 499 | |
466 | -#: default_viewers.py:84 default_viewers.py:174 task_exporter.py:236 | |
500 | +#: default_viewers.py:84 default_viewers.py:174 task_exporter.py:239 | |
467 | 501 | msgid "Coronal slice" |
468 | 502 | msgstr "Fatia Coronal" |
469 | 503 | |
470 | -#: default_viewers.py:89 default_viewers.py:180 task_exporter.py:237 | |
504 | +#: default_viewers.py:89 default_viewers.py:180 task_exporter.py:240 | |
471 | 505 | msgid "Sagittal slice" |
472 | 506 | msgstr "Fatia Sagital" |
473 | 507 | |
474 | -#: default_viewers.py:95 default_viewers.py:186 task_exporter.py:238 | |
508 | +#: default_viewers.py:95 default_viewers.py:186 task_exporter.py:241 | |
475 | 509 | msgid "Volume" |
476 | 510 | msgstr "Volume" |
477 | 511 | |
478 | -#: default_viewers.py:416 | |
512 | +#: default_viewers.py:434 | |
479 | 513 | msgid "Preset name" |
480 | 514 | msgstr "Nome do padrão" |
481 | 515 | |
482 | -#: default_viewers.py:419 | |
516 | +#: default_viewers.py:437 | |
483 | 517 | msgid "Save raycasting preset" |
484 | 518 | msgstr "Salvar modo raycasting" |
485 | 519 | |
486 | -#: default_viewers.py:449 | |
520 | +#: default_viewers.py:467 | |
487 | 521 | msgid "Tools" |
488 | 522 | msgstr "Ferramentas" |
489 | 523 | |
490 | -#: dialogs.py:56 | |
524 | +#: dialogs.py:57 | |
491 | 525 | msgid "Value will be applied." |
492 | 526 | msgstr "Valor será aplicado." |
493 | 527 | |
494 | -#: dialogs.py:60 | |
528 | +#: dialogs.py:61 | |
495 | 529 | msgid "Value will not be applied." |
496 | 530 | msgstr "Valor não será aplicado." |
497 | 531 | |
498 | -#: dialogs.py:98 | |
532 | +#: dialogs.py:95 | |
533 | +msgid "" | |
534 | +"Your operational system is 32bits or have low memory. \n" | |
535 | +"If you manipulate 3D surface or volume rendering \n" | |
536 | +"it's recommended to reduce the image resolution." | |
537 | +msgstr "" | |
538 | + | |
539 | +#: dialogs.py:109 | |
540 | +#, fuzzy | |
541 | +msgid "Percentage of image resolution" | |
542 | +msgstr "Resolução de decimação:" | |
543 | + | |
544 | +#: dialogs.py:155 | |
499 | 545 | msgid "Loading DICOM files" |
500 | 546 | msgstr "Carregando arquivos DICOM" |
501 | 547 | |
502 | -#: dialogs.py:140 | |
548 | +#: dialogs.py:200 | |
503 | 549 | msgid "Open InVesalius 3 project..." |
504 | 550 | msgstr "Abrir projeto do InVesalius 3" |
505 | 551 | |
506 | -#: dialogs.py:177 | |
552 | +#: dialogs.py:228 | |
553 | +msgid "Open Analyze File..." | |
554 | +msgstr "" | |
555 | + | |
556 | +#: dialogs.py:266 | |
507 | 557 | msgid "Choose a DICOM folder:" |
508 | 558 | msgstr "Selecione uma pasta DICOM:" |
509 | 559 | |
510 | -#: dialogs.py:208 | |
560 | +#: dialogs.py:297 | |
511 | 561 | msgid "Save project as..." |
512 | 562 | msgstr "Salvar projeto como..." |
513 | 563 | |
514 | -#: dialogs.py:211 | |
564 | +#: dialogs.py:300 | |
515 | 565 | msgid "InVesalius project (*.inv3)|*.inv3" |
516 | 566 | msgstr "Projeto InVesalius (*.inv3)|*.inv3" |
517 | 567 | |
518 | -#: dialogs.py:274 dialogs.py:552 dialogs.py:577 | |
568 | +#: dialogs.py:363 dialogs.py:641 dialogs.py:666 | |
519 | 569 | #, python-format |
520 | 570 | msgid "" |
521 | 571 | "The project %s has been modified.\n" |
522 | 572 | "Save changes?" |
523 | -msgstr "O projeto %s foi modificado.\n Deseja salvar as alterações?" | |
573 | +msgstr "" | |
574 | +"O projeto %s foi modificado.\n" | |
575 | +" Deseja salvar as alterações?" | |
524 | 576 | |
525 | -#: dialogs.py:288 | |
577 | +#: dialogs.py:377 | |
526 | 578 | #, python-format |
527 | 579 | msgid "%s is an empty directory." |
528 | 580 | msgstr "%s é um diretório vazio." |
529 | 581 | |
530 | -#: dialogs.py:301 | |
582 | +#: dialogs.py:390 | |
531 | 583 | msgid "There are no DICOM files in the selected directory." |
532 | 584 | msgstr "Não há arquivos DICOM no diretório selecionado" |
533 | 585 | |
534 | -#: dialogs.py:312 | |
586 | +#: dialogs.py:401 | |
535 | 587 | msgid "There is no mask of reference to create a surface." |
536 | 588 | msgstr "É necessário ter uma máscara para criar uma superfície." |
537 | 589 | |
538 | -#: dialogs.py:323 | |
590 | +#: dialogs.py:412 | |
539 | 591 | msgid "No masks were selected for removal." |
540 | 592 | msgstr "Nenhuma máscara foi selecionada para remoção." |
541 | 593 | |
542 | -#: dialogs.py:334 | |
594 | +#: dialogs.py:423 | |
543 | 595 | msgid "No surfaces were selected for removal." |
544 | 596 | msgstr "Nenhuma superfície foi selecionada para remoção." |
545 | 597 | |
546 | -#: dialogs.py:346 | |
598 | +#: dialogs.py:435 | |
547 | 599 | msgid "No measures were selected for removal." |
548 | 600 | msgstr "Nenhum medida foi selecionada para remoção." |
549 | 601 | |
550 | -#: dialogs.py:357 | |
602 | +#: dialogs.py:446 | |
551 | 603 | msgid "No masks were selected for duplication." |
552 | 604 | msgstr "Nenhuma máscara foi selecionada para duplicação." |
553 | 605 | |
554 | -#: dialogs.py:370 | |
606 | +#: dialogs.py:459 | |
555 | 607 | msgid "No surfaces were selected for duplication." |
556 | 608 | msgstr "Nenhuma superície foi selecionada para duplicação." |
557 | 609 | |
558 | -#: dialogs.py:416 | |
610 | +#: dialogs.py:505 | |
559 | 611 | msgid "New mask name:" |
560 | 612 | msgstr "Nome da nova máscara:" |
561 | 613 | |
562 | -#: dialogs.py:420 | |
614 | +#: dialogs.py:509 | |
563 | 615 | msgid "Name the mask to be created" |
564 | 616 | msgstr "Nome da máscara a ser criada" |
565 | 617 | |
566 | -#: dialogs.py:427 | |
618 | +#: dialogs.py:516 | |
567 | 619 | msgid "Threshold preset:" |
568 | 620 | msgstr "Faixa de limiar:" |
569 | 621 | |
570 | -#: dialogs.py:529 | |
622 | +#: dialogs.py:603 presets.py:44 presets.py:62 presets.py:117 presets.py:148 | |
623 | +#: task_slice.py:421 task_slice.py:423 task_slice.py:435 task_slice.py:437 | |
624 | +#: task_slice.py:473 task_slice.py:476 | |
625 | +msgid "Custom" | |
626 | +msgstr "Personalizado" | |
627 | + | |
628 | +#: dialogs.py:618 | |
571 | 629 | #, python-format |
572 | 630 | msgid "%s does not exist." |
573 | 631 | msgstr "%s não existe." |
574 | 632 | |
575 | -#: dialogs.py:540 | |
633 | +#: dialogs.py:629 | |
576 | 634 | msgid "Please, provide more than one DICOM file for 3D reconstruction" |
577 | 635 | msgstr "São necessários mais arquivos DICOM para a reconstrução 3D." |
578 | 636 | |
579 | -#: dialogs.py:601 | |
580 | -msgid "(c) 2007-2010 Renato Archer Information Technology Centre" | |
637 | +#: dialogs.py:690 | |
638 | +#, fuzzy | |
639 | +msgid "(c) 2007-2012 Renato Archer Information Technology Centre - CTI" | |
581 | 640 | msgstr "(r) 2007-2010 Centro de Tecnologia da Informação Renato Archer" |
582 | 641 | |
583 | -#: dialogs.py:602 | |
642 | +#: dialogs.py:691 | |
643 | +#, fuzzy | |
584 | 644 | msgid "" |
585 | 645 | "InVesalius is a medical imaging program for 3D reconstruction. It uses a " |
586 | 646 | "sequence of 2D DICOM image files acquired with CT or MRI scanners. " |
587 | 647 | "InVesalius allows for the export of 3D volumes or surfaces as STL files for " |
588 | 648 | "creating physical models of a patient's anatomy using rapid prototyping " |
589 | -"technologies." | |
590 | -msgstr "InVesalius é um software para reconstrução 3D de imanges médicas a partir de uma seqüência de imagens DICOM 2D, obtidas com equipamentos de TC ou RM. O InVesalius permite que sejam exportados volumes ou superífices 3D no formato STL, para criação de réplicas físicas de estruturas anatômicas do paciente, através de tecnologias de prototipagem rápida." | |
649 | +"technologies. The software has the support of the CTI, CNPq and Ministry of " | |
650 | +"Health" | |
651 | +msgstr "" | |
652 | +"InVesalius é um software para reconstrução 3D de imanges médicas a partir de " | |
653 | +"uma seqüência de imagens DICOM 2D, obtidas com equipamentos de TC ou RM. O " | |
654 | +"InVesalius permite que sejam exportados volumes ou superífices 3D no formato " | |
655 | +"STL, para criação de réplicas físicas de estruturas anatômicas do paciente, " | |
656 | +"através de tecnologias de prototipagem rápida." | |
591 | 657 | |
592 | -#: dialogs.py:610 | |
658 | +#: dialogs.py:699 | |
593 | 659 | msgid "GNU GPL (General Public License) version 2" |
594 | 660 | msgstr "GNU GPL (Licença Pública Geral) versão 2" |
595 | 661 | |
596 | -#: dialogs.py:636 | |
662 | +#: dialogs.py:731 | |
597 | 663 | msgid "Save raycasting preset as:" |
598 | 664 | msgstr "Salvar modo de raycasting como:" |
599 | 665 | |
600 | -#: dialogs.py:679 | |
666 | +#: dialogs.py:774 | |
601 | 667 | msgid "New surface name:" |
602 | 668 | msgstr "Nome da nova superfície:" |
603 | 669 | |
604 | -#: dialogs.py:683 | |
670 | +#: dialogs.py:778 | |
605 | 671 | msgid "Name the surface to be created" |
606 | 672 | msgstr "Nome da superfície a ser criada" |
607 | 673 | |
608 | -#: dialogs.py:690 | |
674 | +#: dialogs.py:785 | |
609 | 675 | msgid "Mask of reference:" |
610 | 676 | msgstr "Máscara de referência:" |
611 | 677 | |
612 | -#: dialogs.py:708 | |
678 | +#: dialogs.py:803 | |
613 | 679 | msgid "Surface quality:" |
614 | 680 | msgstr "Qualidade da superfície:" |
615 | 681 | |
616 | -#: dialogs.py:737 | |
682 | +#: dialogs.py:832 | |
617 | 683 | msgid "Fill holes" |
618 | 684 | msgstr "Preencher buracos" |
619 | 685 | |
620 | -#: dialogs.py:740 | |
686 | +#: dialogs.py:835 | |
621 | 687 | msgid "Keep largest region" |
622 | 688 | msgstr "Manter maior região" |
623 | 689 | |
624 | -#: dialogs.py:774 | |
690 | +#: dialogs.py:869 | |
625 | 691 | msgid "BMP image" |
626 | 692 | msgstr "Imagem BMP" |
627 | 693 | |
628 | -#: dialogs.py:775 | |
694 | +#: dialogs.py:870 | |
629 | 695 | msgid "JPG image" |
630 | 696 | msgstr "Imagem JPG" |
631 | 697 | |
632 | -#: dialogs.py:776 | |
698 | +#: dialogs.py:871 | |
633 | 699 | msgid "PNG image" |
634 | 700 | msgstr "Imagem PNG" |
635 | 701 | |
636 | -#: dialogs.py:777 | |
702 | +#: dialogs.py:872 | |
637 | 703 | msgid "PostScript document" |
638 | 704 | msgstr "Documento PostScript" |
639 | 705 | |
640 | -#: dialogs.py:778 | |
706 | +#: dialogs.py:873 | |
641 | 707 | msgid "POV-Ray file" |
642 | 708 | msgstr "Arquivo POV-Ray" |
643 | 709 | |
644 | -#: dialogs.py:779 | |
710 | +#: dialogs.py:874 | |
645 | 711 | msgid "TIFF image" |
646 | 712 | msgstr "Imagem TIFF" |
647 | 713 | |
648 | -#: dicom.py:1424 dicom.py:1427 | |
714 | +#: dicom.py:1520 dicom.py:1524 dicom.py:1526 | |
649 | 715 | msgid "unnamed" |
650 | 716 | msgstr "sem_nome" |
651 | 717 | |
652 | -#: dicom_preview_panel.py:45 | |
718 | +#: dicom_preview_panel.py:49 | |
653 | 719 | #, python-format |
654 | 720 | msgid "Image size: %d x %d" |
655 | 721 | msgstr "Tamanho da imagem: %d x %d" |
656 | 722 | |
657 | -#: dicom_preview_panel.py:46 | |
723 | +#: dicom_preview_panel.py:50 | |
658 | 724 | #, python-format |
659 | 725 | msgid "Spacing: %.2f" |
660 | 726 | msgstr "Espaçamento: %.2f" |
661 | 727 | |
662 | -#: dicom_preview_panel.py:47 | |
728 | +#: dicom_preview_panel.py:51 | |
663 | 729 | #, python-format |
664 | 730 | msgid "Location: %.2f" |
665 | 731 | msgstr "Localização: %.2f" |
666 | 732 | |
667 | -#: dicom_preview_panel.py:49 | |
733 | +#: dicom_preview_panel.py:53 | |
668 | 734 | #, python-format |
669 | 735 | msgid "" |
670 | 736 | "%s %s\n" |
671 | 737 | "Made in InVesalius" |
672 | -msgstr "%s %s\n Criado com InVesalius" | |
738 | +msgstr "" | |
739 | +"%s %s\n" | |
740 | +" Criado com InVesalius" | |
673 | 741 | |
674 | -#: dicom_preview_panel.py:187 dicom_preview_panel.py:188 | |
742 | +#: dicom_preview_panel.py:189 dicom_preview_panel.py:190 | |
675 | 743 | msgid "Image" |
676 | 744 | msgstr "Imagem" |
677 | 745 | |
678 | -#: dicom_preview_panel.py:395 | |
746 | +#: dicom_preview_panel.py:409 | |
679 | 747 | #, python-format |
680 | 748 | msgid "%d Images" |
681 | 749 | msgstr "%d Imagens" |
682 | 750 | |
683 | -#: dicom_preview_panel.py:519 dicom_preview_panel.py:540 | |
751 | +#: dicom_preview_panel.py:534 dicom_preview_panel.py:555 | |
684 | 752 | #, python-format |
685 | 753 | msgid "Image %d" |
686 | 754 | msgstr "Imagem %d" |
687 | 755 | |
688 | -#: dicom_preview_panel.py:691 | |
756 | +#: dicom_preview_panel.py:747 | |
689 | 757 | msgid "Auto-play" |
690 | 758 | msgstr "Reproduzir" |
691 | 759 | |
692 | -#: frame.py:126 | |
760 | +#: frame.py:134 | |
693 | 761 | msgid "Data panel" |
694 | 762 | msgstr "Painel de dados" |
695 | 763 | |
696 | -#: frame.py:133 | |
764 | +#: frame.py:141 | |
697 | 765 | msgid "Preview medical data to be reconstructed" |
698 | 766 | msgstr "Pré-visualização dos dados que serão reconstruídos" |
699 | 767 | |
700 | -#: frame.py:403 | |
768 | +#: frame.py:147 | |
769 | +msgid "Retrieve DICOM from PACS" | |
770 | +msgstr "" | |
771 | + | |
772 | +#: frame.py:480 | |
701 | 773 | msgid "Import DICOM...\tCtrl+I" |
702 | 774 | msgstr "Importar DICOM...\tCtrl+I" |
703 | 775 | |
704 | -#: frame.py:405 | |
776 | +#: frame.py:482 | |
777 | +#, fuzzy | |
778 | +msgid "Import Others Files" | |
779 | +msgstr "Importar arquivos DICOM...\tCtrl+I" | |
780 | + | |
781 | +#: frame.py:483 | |
705 | 782 | msgid "Open Project...\tCtrl+O" |
706 | 783 | msgstr "Abrir Projeto...\tCtrl+O" |
707 | 784 | |
708 | -#: frame.py:406 | |
785 | +#: frame.py:484 | |
709 | 786 | msgid "Save Project\tCtrl+S" |
710 | 787 | msgstr "Salvar Projeto\tCtrl+S" |
711 | 788 | |
712 | -#: frame.py:407 | |
789 | +#: frame.py:485 | |
713 | 790 | msgid "Save Project As..." |
714 | 791 | msgstr "Salvar Projeto Como..." |
715 | 792 | |
716 | -#: frame.py:408 | |
793 | +#: frame.py:486 | |
717 | 794 | msgid "Close Project" |
718 | 795 | msgstr "Fechar Projeto" |
719 | 796 | |
720 | -#: frame.py:417 | |
797 | +#: frame.py:495 | |
721 | 798 | msgid "Exit" |
722 | 799 | msgstr "Sair" |
723 | 800 | |
724 | -#: frame.py:460 | |
801 | +#: frame.py:502 | |
802 | +msgid "R <-> L" | |
803 | +msgstr "" | |
804 | + | |
805 | +#: frame.py:503 | |
806 | +msgid "A <-> P" | |
807 | +msgstr "" | |
808 | + | |
809 | +#: frame.py:504 | |
810 | +msgid "T <-> B" | |
811 | +msgstr "" | |
812 | + | |
813 | +#: frame.py:508 | |
814 | +msgid "R-L <-> A-P" | |
815 | +msgstr "" | |
816 | + | |
817 | +#: frame.py:509 | |
818 | +msgid "R-L <-> T-B" | |
819 | +msgstr "" | |
820 | + | |
821 | +#: frame.py:510 | |
822 | +msgid "A-P <-> T-B" | |
823 | +msgstr "" | |
824 | + | |
825 | +#: frame.py:514 | |
826 | +msgid "Flip" | |
827 | +msgstr "" | |
828 | + | |
829 | +#: frame.py:515 | |
830 | +msgid "Swap axes" | |
831 | +msgstr "" | |
832 | + | |
833 | +#: frame.py:552 | |
834 | +msgid "Preferences..." | |
835 | +msgstr "" | |
836 | + | |
837 | +#: frame.py:556 | |
725 | 838 | msgid "Getting Started..." |
726 | 839 | msgstr "Primeiros Passos..." |
727 | 840 | |
728 | -#: frame.py:463 | |
841 | +#: frame.py:559 | |
729 | 842 | msgid "About..." |
730 | 843 | msgstr "Sobre..." |
731 | 844 | |
732 | -#: frame.py:479 | |
845 | +#: frame.py:567 | |
733 | 846 | msgid "File" |
734 | 847 | msgstr "Arquivo" |
735 | 848 | |
736 | -#: frame.py:484 | |
849 | +#: frame.py:571 | |
850 | +msgid "Options" | |
851 | +msgstr "" | |
852 | + | |
853 | +#: frame.py:572 | |
737 | 854 | msgid "Help" |
738 | 855 | msgstr "Ajuda" |
739 | 856 | |
740 | -#: frame.py:566 surface.py:358 surface.py:539 | |
857 | +#: frame.py:654 surface.py:355 surface.py:728 surface.py:729 | |
741 | 858 | msgid "Ready" |
742 | 859 | msgstr "Pronto" |
743 | 860 | |
744 | -#: frame.py:716 | |
861 | +#: frame.py:804 | |
745 | 862 | msgid "Import DICOM files..." |
746 | 863 | msgstr "Importar arquivos DICOM...\tCtrl+I" |
747 | 864 | |
748 | -#: frame.py:723 | |
865 | +#: frame.py:811 | |
749 | 866 | msgid "Open a InVesalius project..." |
750 | 867 | msgstr "Abrir projeto InVesalius..." |
751 | 868 | |
752 | -#: frame.py:727 | |
869 | +#: frame.py:815 | |
753 | 870 | msgid "Save InVesalius project" |
754 | 871 | msgstr "Salvar projeto InVesalius" |
755 | 872 | |
756 | -#: frame.py:869 | |
873 | +#: frame.py:957 | |
757 | 874 | msgid "Zoom" |
758 | 875 | msgstr "Zoom" |
759 | 876 | |
760 | -#: frame.py:874 | |
877 | +#: frame.py:962 | |
761 | 878 | msgid "Zoom based on selection" |
762 | 879 | msgstr "Zoom baseado na seleção" |
763 | 880 | |
764 | -#: frame.py:879 | |
881 | +#: frame.py:967 | |
765 | 882 | msgid "Rotate" |
766 | 883 | msgstr "Rotacionar" |
767 | 884 | |
768 | -#: frame.py:884 | |
885 | +#: frame.py:972 | |
769 | 886 | msgid "Move" |
770 | 887 | msgstr "Mover" |
771 | 888 | |
772 | -#: frame.py:889 | |
889 | +#: frame.py:977 | |
773 | 890 | msgid "Constrast" |
774 | 891 | msgstr "Contraste" |
775 | 892 | |
776 | -#: frame.py:1042 | |
893 | +#: frame.py:1130 | |
777 | 894 | msgid "Scroll slices" |
778 | 895 | msgstr "Alterar fatias" |
779 | 896 | |
780 | -#: frame.py:1046 | |
897 | +#: frame.py:1134 | |
781 | 898 | msgid "Slices' cross intersection" |
782 | 899 | msgstr "Cruz de interseção de fatias" |
783 | 900 | |
784 | -#: frame.py:1203 frame.py:1272 | |
901 | +#: frame.py:1291 frame.py:1360 | |
785 | 902 | msgid "Hide task panel" |
786 | 903 | msgstr "Esconder barra de tarefas" |
787 | 904 | |
788 | -#: frame.py:1207 frame.py:1294 | |
905 | +#: frame.py:1295 frame.py:1382 | |
789 | 906 | msgid "Hide text" |
790 | 907 | msgstr "Esconder texto" |
791 | 908 | |
792 | -#: frame.py:1278 | |
909 | +#: frame.py:1366 | |
793 | 910 | msgid "Show task panel" |
794 | 911 | msgstr "Exibir barra de tarefas" |
795 | 912 | |
796 | -#: frame.py:1288 | |
913 | +#: frame.py:1376 | |
797 | 914 | msgid "Show text" |
798 | 915 | msgstr "Exibir texto" |
799 | 916 | |
800 | -#: imagedata_utils.py:87 imagedata_utils.py:260 imagedata_utils.py:365 | |
917 | +#: imagedata_utils.py:92 imagedata_utils.py:226 imagedata_utils.py:331 | |
918 | +#: imagedata_utils.py:424 | |
801 | 919 | msgid "Generating multiplanar visualization..." |
802 | 920 | msgstr "Gerando visualização multiplanar..." |
803 | 921 | |
804 | -#: import_panel.py:214 | |
922 | +#: import_network_panel.py:101 import_panel.py:94 | |
923 | +msgid "Import" | |
924 | +msgstr "" | |
925 | + | |
926 | +#: import_network_panel.py:239 import_panel.py:224 | |
805 | 927 | msgid "Patient name" |
806 | 928 | msgstr "Nome do paciente" |
807 | 929 | |
808 | -#: import_panel.py:215 | |
930 | +#: import_network_panel.py:240 import_panel.py:225 | |
809 | 931 | msgid "Patient ID" |
810 | 932 | msgstr "ID Paciente" |
811 | 933 | |
812 | -#: import_panel.py:216 | |
934 | +#: import_network_panel.py:241 import_panel.py:226 | |
813 | 935 | msgid "Age" |
814 | 936 | msgstr "Idade" |
815 | 937 | |
816 | -#: import_panel.py:217 | |
938 | +#: import_network_panel.py:242 import_panel.py:227 | |
817 | 939 | msgid "Gender" |
818 | 940 | msgstr "Sexo" |
819 | 941 | |
820 | -#: import_panel.py:218 | |
942 | +#: import_network_panel.py:243 import_panel.py:228 | |
821 | 943 | msgid "Study description" |
822 | 944 | msgstr "Descrição do estudo" |
823 | 945 | |
824 | -#: import_panel.py:219 | |
946 | +#: import_network_panel.py:244 import_panel.py:229 | |
825 | 947 | msgid "Modality" |
826 | 948 | msgstr "Modalidade" |
827 | 949 | |
828 | -#: import_panel.py:220 | |
950 | +#: import_network_panel.py:245 import_panel.py:230 | |
829 | 951 | msgid "Date acquired" |
830 | 952 | msgstr "Data de aquisição" |
831 | 953 | |
832 | -#: import_panel.py:221 | |
954 | +#: import_network_panel.py:246 import_panel.py:231 | |
833 | 955 | msgid "# Images" |
834 | 956 | msgstr "# Imagens" |
835 | 957 | |
836 | -#: import_panel.py:222 | |
958 | +#: import_network_panel.py:247 import_panel.py:232 | |
837 | 959 | msgid "Institution" |
838 | 960 | msgstr "Instituição" |
839 | 961 | |
840 | -#: import_panel.py:223 | |
962 | +#: import_network_panel.py:248 import_panel.py:233 | |
841 | 963 | msgid "Date of birth" |
842 | 964 | msgstr "Data de nascimento" |
843 | 965 | |
844 | -#: import_panel.py:224 | |
966 | +#: import_network_panel.py:249 import_panel.py:234 | |
845 | 967 | msgid "Accession Number" |
846 | 968 | msgstr "Número de acesso" |
847 | 969 | |
848 | -#: import_panel.py:225 | |
970 | +#: import_network_panel.py:250 import_panel.py:235 | |
849 | 971 | msgid "Referring physician" |
850 | 972 | msgstr "Médico" |
851 | 973 | |
852 | -#: import_panel.py:241 | |
974 | +#: import_network_panel.py:266 import_panel.py:251 | |
853 | 975 | msgid "InVesalius Database" |
854 | 976 | msgstr "Banco de Dados InVesalius" |
855 | 977 | |
856 | -#: language_dialog.py:36 | |
978 | +#: import_network_panel.py:497 | |
979 | +msgid "Word" | |
980 | +msgstr "" | |
981 | + | |
982 | +#: import_network_panel.py:504 | |
983 | +msgid "Search" | |
984 | +msgstr "" | |
985 | + | |
986 | +#: import_network_panel.py:663 | |
987 | +msgid "Active" | |
988 | +msgstr "" | |
989 | + | |
990 | +#: import_network_panel.py:664 | |
991 | +msgid "Host" | |
992 | +msgstr "" | |
993 | + | |
994 | +#: import_network_panel.py:665 | |
995 | +msgid "Port" | |
996 | +msgstr "" | |
997 | + | |
998 | +#: import_network_panel.py:666 | |
999 | +msgid "AETitle" | |
1000 | +msgstr "" | |
1001 | + | |
1002 | +#: import_network_panel.py:667 | |
1003 | +msgid "Status" | |
1004 | +msgstr "" | |
1005 | + | |
1006 | +#: import_network_panel.py:694 | |
1007 | +msgid "Add" | |
1008 | +msgstr "" | |
1009 | + | |
1010 | +#: import_network_panel.py:695 | |
1011 | +msgid "Remove" | |
1012 | +msgstr "" | |
1013 | + | |
1014 | +#: import_network_panel.py:696 | |
1015 | +msgid "Check status" | |
1016 | +msgstr "" | |
1017 | + | |
1018 | +#: import_network_panel.py:769 | |
1019 | +msgid "ok" | |
1020 | +msgstr "" | |
1021 | + | |
1022 | +#: import_network_panel.py:771 | |
1023 | +msgid "error" | |
1024 | +msgstr "" | |
1025 | + | |
1026 | +#: language_dialog.py:78 | |
857 | 1027 | msgid "Language selection" |
858 | 1028 | msgstr "Seleção de idioma" |
859 | 1029 | |
860 | -#: language_dialog.py:79 | |
1030 | +#: language_dialog.py:122 | |
861 | 1031 | msgid "Choose user interface language" |
862 | 1032 | msgstr "Selecione o idioma" |
863 | 1033 | |
... | ... | @@ -869,6 +1039,38 @@ msgstr "Analisando regiões selecionadas..." |
869 | 1039 | msgid "Splitting disconected parts" |
870 | 1040 | msgstr "Separando regiões desconexas..." |
871 | 1041 | |
1042 | +#: preferences.py:18 | |
1043 | +#, fuzzy | |
1044 | +msgid "Preferences" | |
1045 | +msgstr "Máscara de referência:" | |
1046 | + | |
1047 | +#: preferences.py:41 | |
1048 | +msgid "Visualization" | |
1049 | +msgstr "" | |
1050 | + | |
1051 | +#: preferences.py:42 | |
1052 | +#, fuzzy | |
1053 | +msgid "Language" | |
1054 | +msgstr "Seleção de idioma" | |
1055 | + | |
1056 | +#: preferences.py:95 | |
1057 | +#, fuzzy | |
1058 | +msgid "Surface" | |
1059 | +msgstr "Superfície %d" | |
1060 | + | |
1061 | +#: preferences.py:98 | |
1062 | +msgid "Interpolation " | |
1063 | +msgstr "" | |
1064 | + | |
1065 | +#: preferences.py:106 | |
1066 | +msgid "Volume Rendering" | |
1067 | +msgstr "" | |
1068 | + | |
1069 | +#: preferences.py:109 | |
1070 | +#, fuzzy | |
1071 | +msgid "Rendering" | |
1072 | +msgstr "Sexo" | |
1073 | + | |
872 | 1074 | #: presets.py:31 presets.py:49 presets.py:104 presets.py:135 |
873 | 1075 | msgid "Soft Tissue" |
874 | 1076 | msgstr "Tecidos Moles" |
... | ... | @@ -929,45 +1131,40 @@ msgstr "Brilho e Contraste" |
929 | 1131 | msgid "Pseudo Colour" |
930 | 1132 | msgstr "Pseudo Cor" |
931 | 1133 | |
932 | -#: slice_menu.py:106 | |
933 | -msgid "Image Tiling" | |
934 | -msgstr "Conjunto de Imagens" | |
935 | - | |
936 | -#: surface.py:422 surface.py:456 surface.py:464 surface.py:521 | |
937 | -#: surface_process.py:55 surface_process.py:67 surface_process.py:76 | |
938 | -#: surface_process.py:89 surface_process.py:98 surface_process.py:109 | |
1134 | +#: surface.py:418 surface.py:508 surface.py:526 surface.py:548 surface.py:576 | |
1135 | +#: surface.py:598 surface.py:617 surface.py:631 surface.py:648 | |
939 | 1136 | msgid "Generating 3D surface..." |
940 | 1137 | msgstr "Gerando superfície 3D..." |
941 | 1138 | |
942 | -#: task_exporter.py:105 | |
1139 | +#: task_exporter.py:108 | |
943 | 1140 | msgid "Export InVesalius screen to an image file" |
944 | 1141 | msgstr "Exportar tela do InVesalius para um arquivo de imagem" |
945 | 1142 | |
946 | -#: task_exporter.py:107 | |
1143 | +#: task_exporter.py:110 | |
947 | 1144 | msgid "Export picture..." |
948 | 1145 | msgstr "Exportar imagem..." |
949 | 1146 | |
950 | -#: task_exporter.py:116 | |
1147 | +#: task_exporter.py:119 | |
951 | 1148 | msgid "Export 3D surface" |
952 | 1149 | msgstr "Exportar superfície 3D" |
953 | 1150 | |
954 | -#: task_exporter.py:117 | |
1151 | +#: task_exporter.py:120 | |
955 | 1152 | msgid "Export 3D surface..." |
956 | 1153 | msgstr "Exportar superfície 3D..." |
957 | 1154 | |
958 | -#: task_exporter.py:308 | |
1155 | +#: task_exporter.py:311 | |
959 | 1156 | msgid "Save 3D surface as..." |
960 | 1157 | msgstr "Salvar superfície 3D como..." |
961 | 1158 | |
962 | -#: task_exporter.py:327 | |
1159 | +#: task_exporter.py:330 | |
963 | 1160 | msgid "You need to create a surface and make " |
964 | 1161 | msgstr "É necessário criar uma superfície e torná-la " |
965 | 1162 | |
966 | -#: task_exporter.py:328 | |
1163 | +#: task_exporter.py:331 | |
967 | 1164 | msgid "visible before exporting it." |
968 | 1165 | msgstr "visível antes de exportá-la." |
969 | 1166 | |
970 | -#: task_generic.py:65 task_navigator.py:65 | |
1167 | +#: task_generic.py:65 | |
971 | 1168 | msgid "Testing..." |
972 | 1169 | msgstr "Testando..." |
973 | 1170 | |
... | ... | @@ -987,47 +1184,48 @@ msgstr "Abrir um projeto InVesalius existente..." |
987 | 1184 | msgid "Open an existing project..." |
988 | 1185 | msgstr "Abrir um projeto existente..." |
989 | 1186 | |
990 | -#: task_slice.py:82 | |
1187 | +#: task_slice.py:83 | |
991 | 1188 | msgid "Create mask for slice segmentation and editing" |
992 | 1189 | msgstr "Criar máscara para segmentação e edição de fatia" |
993 | 1190 | |
994 | -#: task_slice.py:83 | |
1191 | +#: task_slice.py:84 | |
995 | 1192 | msgid "Create new mask" |
996 | 1193 | msgstr "Nome da nova máscara:" |
997 | 1194 | |
998 | -#: task_slice.py:111 | |
999 | -msgid "Save surface" | |
1195 | +#: task_slice.py:112 | |
1196 | +#, fuzzy | |
1197 | +msgid "Create surface" | |
1000 | 1198 | msgstr "Gerar superfície" |
1001 | 1199 | |
1002 | -#: task_slice.py:112 | |
1200 | +#: task_slice.py:113 | |
1003 | 1201 | msgid "Overwrite last surface" |
1004 | 1202 | msgstr "Sobrescrever anterior" |
1005 | 1203 | |
1006 | -#: task_slice.py:217 | |
1204 | +#: task_slice.py:228 | |
1007 | 1205 | msgid "Mask properties" |
1008 | 1206 | msgstr "Propriedades da máscara" |
1009 | 1207 | |
1010 | -#: task_slice.py:225 | |
1208 | +#: task_slice.py:236 | |
1011 | 1209 | msgid "Advanced editing tools" |
1012 | 1210 | msgstr "Ferramentas avançadas de edição" |
1013 | 1211 | |
1014 | -#: task_slice.py:309 | |
1212 | +#: task_slice.py:320 | |
1015 | 1213 | msgid "Set predefined or manual threshold:" |
1016 | 1214 | msgstr "Selecione ou edite valor de limiar:" |
1017 | 1215 | |
1018 | -#: task_slice.py:503 | |
1216 | +#: task_slice.py:528 | |
1019 | 1217 | msgid "Choose brush type, size or operation:" |
1020 | 1218 | msgstr "Tipo, tamanho e operação do pincel:" |
1021 | 1219 | |
1022 | -#: task_slice.py:509 | |
1220 | +#: task_slice.py:534 | |
1023 | 1221 | msgid "Circle" |
1024 | 1222 | msgstr "Círculo" |
1025 | 1223 | |
1026 | -#: task_slice.py:513 | |
1224 | +#: task_slice.py:538 | |
1027 | 1225 | msgid "Square" |
1028 | 1226 | msgstr "Quadrado" |
1029 | 1227 | |
1030 | -#: task_slice.py:549 | |
1228 | +#: task_slice.py:574 | |
1031 | 1229 | msgid "Brush threshold range:" |
1032 | 1230 | msgstr "Limiar do pincel:" |
1033 | 1231 | |
... | ... | @@ -1052,9 +1250,9 @@ msgid "Advanced options" |
1052 | 1250 | msgstr "Ferramentas avançadas" |
1053 | 1251 | |
1054 | 1252 | #: task_surface.py:246 |
1055 | -msgid "" | |
1056 | -"Automatically select largest disconnected region and create new surface" | |
1057 | -msgstr "Seleção automática de maior região desconexa e criação de nova superfície" | |
1253 | +msgid "Automatically select largest disconnected region and create new surface" | |
1254 | +msgstr "" | |
1255 | +"Seleção automática de maior região desconexa e criação de nova superfície" | |
1058 | 1256 | |
1059 | 1257 | #: task_surface.py:247 |
1060 | 1258 | msgid "Select largest part" |
... | ... | @@ -1064,30 +1262,31 @@ msgstr "Separar maior superfície" |
1064 | 1262 | msgid "" |
1065 | 1263 | "Automatically select disconnected regions and create one new surface per " |
1066 | 1264 | "region" |
1067 | -msgstr "Seleção automática de superfícies desconexas e criação de superfícies correspondentes" | |
1265 | +msgstr "" | |
1266 | +"Seleção automática de superfícies desconexas e criação de superfícies " | |
1267 | +"correspondentes" | |
1068 | 1268 | |
1069 | 1269 | #: task_surface.py:256 |
1070 | 1270 | msgid "Split all disconnected surfaces" |
1071 | 1271 | msgstr "Separar todas regiões desconexas" |
1072 | 1272 | |
1073 | 1273 | #: task_surface.py:264 |
1074 | -msgid "" | |
1075 | -"Manually insert seeds of regions of interest and create one new surface" | |
1274 | +msgid "Manually insert seeds of regions of interest and create one new surface" | |
1076 | 1275 | msgstr "Selecionar manualmente regiões de interesse através de sementes" |
1077 | 1276 | |
1078 | 1277 | #: task_surface.py:265 |
1079 | 1278 | msgid "Select regions of interest..." |
1080 | 1279 | msgstr "Selecionar as regiões de interesse..." |
1081 | 1280 | |
1082 | -#: task_surface.py:396 | |
1281 | +#: task_surface.py:402 | |
1083 | 1282 | msgid "Transparency:" |
1084 | 1283 | msgstr "Transparência:" |
1085 | 1284 | |
1086 | -#: task_surface.py:532 | |
1285 | +#: task_surface.py:538 | |
1087 | 1286 | msgid "Decimate resolution:" |
1088 | 1287 | msgstr "Resolução de decimação:" |
1089 | 1288 | |
1090 | -#: task_surface.py:542 | |
1289 | +#: task_surface.py:548 | |
1091 | 1290 | msgid "Smooth iterations:" |
1092 | 1291 | msgstr "Interações de suavização:" |
1093 | 1292 | |
... | ... | @@ -1103,26 +1302,191 @@ msgstr "Medição" |
1103 | 1302 | msgid "Add text annotations" |
1104 | 1303 | msgstr "Adicionar anotações" |
1105 | 1304 | |
1106 | -#: viewer_slice.py:449 viewer_slice.py:453 | |
1107 | -msgid "R" | |
1108 | -msgstr "D" | |
1109 | - | |
1110 | -#: viewer_slice.py:449 viewer_slice.py:453 | |
1111 | -msgid "L" | |
1112 | -msgstr "E" | |
1113 | - | |
1114 | -#: viewer_slice.py:449 viewer_slice.py:451 | |
1305 | +#: viewer_slice.py:437 viewer_slice.py:441 viewer_slice.py:492 | |
1306 | +#: viewer_slice.py:494 viewer_slice.py:552 viewer_slice.py:561 | |
1307 | +#: viewer_slice.py:570 viewer_slice.py:579 viewer_slice.py:628 | |
1308 | +#: viewer_slice.py:637 viewer_slice.py:646 viewer_slice.py:655 | |
1115 | 1309 | msgid "A" |
1116 | 1310 | msgstr "A" |
1117 | 1311 | |
1118 | -#: viewer_slice.py:449 viewer_slice.py:451 | |
1312 | +#: viewer_slice.py:437 viewer_slice.py:439 viewer_slice.py:492 | |
1313 | +#: viewer_slice.py:496 viewer_slice.py:552 viewer_slice.py:561 | |
1314 | +#: viewer_slice.py:570 viewer_slice.py:579 viewer_slice.py:590 | |
1315 | +#: viewer_slice.py:599 viewer_slice.py:608 viewer_slice.py:617 | |
1316 | +msgid "R" | |
1317 | +msgstr "D" | |
1318 | + | |
1319 | +#: viewer_slice.py:437 viewer_slice.py:441 viewer_slice.py:492 | |
1320 | +#: viewer_slice.py:494 viewer_slice.py:552 viewer_slice.py:561 | |
1321 | +#: viewer_slice.py:570 viewer_slice.py:579 viewer_slice.py:628 | |
1322 | +#: viewer_slice.py:637 viewer_slice.py:646 viewer_slice.py:655 | |
1119 | 1323 | msgid "P" |
1120 | 1324 | msgstr "P" |
1121 | 1325 | |
1122 | -#: viewer_slice.py:451 viewer_slice.py:453 | |
1326 | +#: viewer_slice.py:437 viewer_slice.py:439 viewer_slice.py:492 | |
1327 | +#: viewer_slice.py:496 viewer_slice.py:552 viewer_slice.py:561 | |
1328 | +#: viewer_slice.py:570 viewer_slice.py:579 viewer_slice.py:590 | |
1329 | +#: viewer_slice.py:599 viewer_slice.py:608 viewer_slice.py:617 | |
1330 | +msgid "L" | |
1331 | +msgstr "E" | |
1332 | + | |
1333 | +#: viewer_slice.py:439 viewer_slice.py:441 viewer_slice.py:494 | |
1334 | +#: viewer_slice.py:496 viewer_slice.py:590 viewer_slice.py:599 | |
1335 | +#: viewer_slice.py:608 viewer_slice.py:617 viewer_slice.py:628 | |
1336 | +#: viewer_slice.py:637 viewer_slice.py:646 viewer_slice.py:655 | |
1123 | 1337 | msgid "T" |
1124 | 1338 | msgstr "S" |
1125 | 1339 | |
1126 | -#: viewer_slice.py:451 viewer_slice.py:453 | |
1340 | +#: viewer_slice.py:439 viewer_slice.py:441 viewer_slice.py:494 | |
1341 | +#: viewer_slice.py:496 viewer_slice.py:590 viewer_slice.py:599 | |
1342 | +#: viewer_slice.py:608 viewer_slice.py:617 viewer_slice.py:628 | |
1343 | +#: viewer_slice.py:637 viewer_slice.py:646 viewer_slice.py:655 | |
1127 | 1344 | msgid "B" |
1128 | 1345 | msgstr "I" |
1346 | + | |
1347 | +#: viewer_slice.py:555 viewer_slice.py:564 viewer_slice.py:573 | |
1348 | +#: viewer_slice.py:582 | |
1349 | +#, fuzzy | |
1350 | +msgid "AL" | |
1351 | +msgstr "AE" | |
1352 | + | |
1353 | +#: viewer_slice.py:555 viewer_slice.py:564 viewer_slice.py:573 | |
1354 | +#: viewer_slice.py:582 | |
1355 | +#, fuzzy | |
1356 | +msgid "RA" | |
1357 | +msgstr "DA" | |
1358 | + | |
1359 | +#: viewer_slice.py:555 viewer_slice.py:564 viewer_slice.py:573 | |
1360 | +#: viewer_slice.py:582 | |
1361 | +#, fuzzy | |
1362 | +msgid "PR" | |
1363 | +msgstr "PD" | |
1364 | + | |
1365 | +#: viewer_slice.py:555 viewer_slice.py:564 viewer_slice.py:573 | |
1366 | +#: viewer_slice.py:582 | |
1367 | +#, fuzzy | |
1368 | +msgid "LP" | |
1369 | +msgstr "EP" | |
1370 | + | |
1371 | +#: viewer_slice.py:558 viewer_slice.py:567 viewer_slice.py:576 | |
1372 | +#: viewer_slice.py:585 | |
1373 | +#, fuzzy | |
1374 | +msgid "LA" | |
1375 | +msgstr "EA" | |
1376 | + | |
1377 | +#: viewer_slice.py:558 viewer_slice.py:567 viewer_slice.py:576 | |
1378 | +#: viewer_slice.py:585 | |
1379 | +#, fuzzy | |
1380 | +msgid "AR" | |
1381 | +msgstr "AD" | |
1382 | + | |
1383 | +#: viewer_slice.py:558 viewer_slice.py:567 viewer_slice.py:576 | |
1384 | +#: viewer_slice.py:585 | |
1385 | +#, fuzzy | |
1386 | +msgid "RP" | |
1387 | +msgstr "DP" | |
1388 | + | |
1389 | +#: viewer_slice.py:558 viewer_slice.py:567 viewer_slice.py:576 | |
1390 | +#: viewer_slice.py:585 | |
1391 | +#, fuzzy | |
1392 | +msgid "PL" | |
1393 | +msgstr "PE" | |
1394 | + | |
1395 | +#: viewer_slice.py:593 viewer_slice.py:602 viewer_slice.py:611 | |
1396 | +#: viewer_slice.py:620 | |
1397 | +#, fuzzy | |
1398 | +msgid "TL" | |
1399 | +msgstr "SE" | |
1400 | + | |
1401 | +#: viewer_slice.py:593 viewer_slice.py:602 viewer_slice.py:611 | |
1402 | +#: viewer_slice.py:620 | |
1403 | +#, fuzzy | |
1404 | +msgid "RT" | |
1405 | +msgstr "DS" | |
1406 | + | |
1407 | +#: viewer_slice.py:593 viewer_slice.py:602 viewer_slice.py:611 | |
1408 | +#: viewer_slice.py:620 | |
1409 | +#, fuzzy | |
1410 | +msgid "BR" | |
1411 | +msgstr "ID" | |
1412 | + | |
1413 | +#: viewer_slice.py:593 viewer_slice.py:602 viewer_slice.py:611 | |
1414 | +#: viewer_slice.py:620 | |
1415 | +#, fuzzy | |
1416 | +msgid "LB" | |
1417 | +msgstr "EI" | |
1418 | + | |
1419 | +#: viewer_slice.py:596 viewer_slice.py:605 viewer_slice.py:614 | |
1420 | +#: viewer_slice.py:623 | |
1421 | +#, fuzzy | |
1422 | +msgid "LT" | |
1423 | +msgstr "ES" | |
1424 | + | |
1425 | +#: viewer_slice.py:596 viewer_slice.py:605 viewer_slice.py:614 | |
1426 | +#: viewer_slice.py:623 | |
1427 | +#, fuzzy | |
1428 | +msgid "TR" | |
1429 | +msgstr "SD" | |
1430 | + | |
1431 | +#: viewer_slice.py:596 viewer_slice.py:605 viewer_slice.py:614 | |
1432 | +#: viewer_slice.py:623 | |
1433 | +#, fuzzy | |
1434 | +msgid "RB" | |
1435 | +msgstr "DI" | |
1436 | + | |
1437 | +#: viewer_slice.py:596 viewer_slice.py:605 viewer_slice.py:614 | |
1438 | +#: viewer_slice.py:623 | |
1439 | +#, fuzzy | |
1440 | +msgid "BL" | |
1441 | +msgstr "IE" | |
1442 | + | |
1443 | +#: viewer_slice.py:631 viewer_slice.py:640 viewer_slice.py:649 | |
1444 | +#: viewer_slice.py:658 | |
1445 | +#, fuzzy | |
1446 | +msgid "TA" | |
1447 | +msgstr "SA" | |
1448 | + | |
1449 | +#: viewer_slice.py:631 viewer_slice.py:640 viewer_slice.py:649 | |
1450 | +#: viewer_slice.py:658 | |
1451 | +#, fuzzy | |
1452 | +msgid "PT" | |
1453 | +msgstr "PS" | |
1454 | + | |
1455 | +#: viewer_slice.py:631 viewer_slice.py:640 viewer_slice.py:649 | |
1456 | +#: viewer_slice.py:658 | |
1457 | +#, fuzzy | |
1458 | +msgid "BP" | |
1459 | +msgstr "IP" | |
1460 | + | |
1461 | +#: viewer_slice.py:631 viewer_slice.py:640 viewer_slice.py:649 | |
1462 | +#: viewer_slice.py:658 | |
1463 | +#, fuzzy | |
1464 | +msgid "AB" | |
1465 | +msgstr "AI" | |
1466 | + | |
1467 | +#: viewer_slice.py:634 viewer_slice.py:643 viewer_slice.py:652 | |
1468 | +#: viewer_slice.py:661 | |
1469 | +#, fuzzy | |
1470 | +msgid "AT" | |
1471 | +msgstr "AS" | |
1472 | + | |
1473 | +#: viewer_slice.py:634 viewer_slice.py:643 viewer_slice.py:652 | |
1474 | +#: viewer_slice.py:661 | |
1475 | +#, fuzzy | |
1476 | +msgid "TP" | |
1477 | +msgstr "SP" | |
1478 | + | |
1479 | +#: viewer_slice.py:634 viewer_slice.py:643 viewer_slice.py:652 | |
1480 | +#: viewer_slice.py:661 | |
1481 | +#, fuzzy | |
1482 | +msgid "PB" | |
1483 | +msgstr "PI" | |
1484 | + | |
1485 | +#: viewer_slice.py:634 viewer_slice.py:643 viewer_slice.py:652 | |
1486 | +#: viewer_slice.py:661 | |
1487 | +#, fuzzy | |
1488 | +msgid "BA" | |
1489 | +msgstr "IA" | |
1490 | + | |
1491 | +#~ msgid "Image Tiling" | |
1492 | +#~ msgstr "Conjunto de Imagens" | ... | ... |