Форум пользователей Visio
http://visio.getbb.ru/

Тест на скорость выделения фигур
http://visio.getbb.ru/viewtopic.php?f=6&t=1320
Страница 1 из 1

Автор:  Shishok [ 05 апр 2018, 13:49 ]
Заголовок сообщения:  Тест на скорость выделения фигур

Вот, потестил разные способы выделения фигур. Всех. 5151 штука.
Код:
Option Explicit

'Результат (выделение на листе 5151 шейпа):

'1. Средний ноутбук:
'Test_1 - 0,3007813
'Test_2 - 1,414063
'Test_3 - 65,09766

'2. Довольно мощный копьютер
'Test_1 - 0,1210938
'Test_2 - 0,5742188
'Test_3 - 24,65625

Dim t
Dim sh As Visio.Shape

Sub Test_1() ' штатное выделение
t = Timer

ActiveWindow.DeselectAll

ActiveWindow.SelectAll

Debug.Print Timer - t
End Sub

Sub Test_2() ' создание выделения "в памяти"
Dim i As Integer, vsoSel As Visio.Selection
   
Set vsoSel = ActiveWindow.Selection

ActiveWindow.DeselectAll

t = Timer
For Each sh In ActivePage.Shapes
    vsoSel.Select sh, visSelect
Next
   
ActiveWindow.Selection = vsoSel

Debug.Print Timer - t
End Sub

Sub Test_3() ' выделение перебором

ActiveWindow.DeselectAll

t = Timer
For Each sh In ActivePage.Shapes
    ActiveWindow.Select sh, visSelect
Next

Debug.Print Timer - t
End Sub


Результат вполне очевиден.

Можно попробовать:

Вложения:
Test_SpeedSelect.zip [1.25 Mб]
Скачиваний: 54

Страница 1 из 1 Часовой пояс: UTC + 3 часа [ Летнее время ]
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/