Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница: 1 |

 

  Вопрос: Рисуем линии быстро! Добавлено: 24.11.07 12:08  

Автор вопроса:  Yanex | Web-сайт: Progr.Do.am | ICQ: 387761649 
Знаю, в API есть команда для помещения точки на PictureBox, работающая намного быстрее PSet. Имя ее сейчас точно не помню (кажется, PutPixel или SetPixel), но это неважно.

Надо другое: можно ли с API быстрее рисовать линии? А то Line неимоверно тормозит при прорисовке графики.

Ответить

  Ответы Всего ответов: 7  

Номер ответа: 1
Автор ответа:
 VisualPaul



ICQ: 402519798 

Вопросов: 12
Ответов: 111
 Профиль | | #1 Добавлено: 24.11.07 12:16
ну да

Ответить

Номер ответа: 2
Автор ответа:
 Yanex



ICQ: 387761649 

Вопросов: 32
Ответов: 169
 Web-сайт: Progr.Do.am
 Профиль | | #2
Добавлено: 24.11.07 12:18
ну да


Если можно, отсюда поподробнее =)

Ответить

Номер ответа: 3
Автор ответа:
 Winand



Вопросов: 87
Ответов: 2795
 Web-сайт: winandfx.narod.ru
 Профиль | | #3
Добавлено: 24.11.07 12:48
Думаю или вот эти две функции
Private Declare Function MoveToEx Lib "gdi32" (ByVal hdc As Long, ByVal X As Long, ByVal Y As Long, lpPoint As POINTAPI) As Long
Private Declare Function LineTo Lib "gdi32" (ByVal hdc As Long, ByVal X As Long, ByVal Y As Long) As Long

или через ПолиЛайн (имхо даже удобнее)
Option Explicit
Private Type POINTAPI
        X As Long
        Y As Long
End Type
Private Declare Function Polyline Lib "gdi32" (ByVal hdc As Long, lpPoint As POINTAPI, ByVal nCount As Long) As Long
Dim Pts(0 To 6) As POINTAPI

Private Sub Form_Paint()
    'KPD-Team 1999
    'URL: http://www.allapi.net/
    'E-Mail: KPDTeam@Allapi.net

    Pts(0).X = 10: Pts(0).Y = 10
    Pts(1).X = 10: Pts(1).Y = 100
    Pts(2).X = 10: Pts(2).Y = 50
    Pts(3).X = 50: Pts(3).Y = 10
    Pts(4).X = 10: Pts(4).Y = 50
    Pts(5).X = 50: Pts(5).Y = 100
    Polyline Me.hdc, Pts(0), 6
    '<...>
End Sub

Ответить

Номер ответа: 4
Автор ответа:
 Yanex



ICQ: 387761649 

Вопросов: 32
Ответов: 169
 Web-сайт: Progr.Do.am
 Профиль | | #4
Добавлено: 24.11.07 12:51
Ага, спасибо, посмотрю.

Ответить

Номер ответа: 5
Автор ответа:
 VβÐUηìt



Вопросов: 246
Ответов: 3333
 Web-сайт: смекаешь.рф
 Профиль | | #5
Добавлено: 24.11.07 13:30
SetPixel работает быстрее PSet только в полтора раза, а ни "намного".

Ответить

Номер ответа: 6
Автор ответа:
 Artyom



Разработчик

Вопросов: 130
Ответов: 6602
 Профиль | | #6 Добавлено: 24.11.07 14:26
вообще надо постараться чтоб нарисовать линию медленнее чем метод Line.

2 VBD - привет

Ответить

Номер ответа: 7
Автор ответа:
 VβÐUηìt



Вопросов: 246
Ответов: 3333
 Web-сайт: смекаешь.рф
 Профиль | | #7
Добавлено: 24.11.07 18:21
Привет

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам