Показать сообщение отдельно
  #23 (permalink)  
Старый 10.01.2011, 08:34
Аватар для Vulkan
Профессор
Отправить личное сообщение для Vulkan Посмотреть профиль Найти все сообщения от Vulkan
 
Регистрация: 25.05.2010
Сообщений: 511

Спасибо всем, проблему решил, сейчас всё идеально, короче написал проверку на разрывы:
записываю последнюю координату, если расстояние между последней и текущей координатой больше чем размер кисти дорисовываю линии по типу кисти:
lineWidth = brush.size * 2;
lineCap = 'round';
lineJoin = 'round';
сейчас всё идеально дорисовывает. Схематично вот проверка:
fault = brush.size,
        difference = {
            x: Math.abs(oldcoordinats.x - coordinats.x),
            y: Math.abs(oldcoordinats.y - coordinats.y)
        }
...
if (oldcoordinats.x && (difference.x > fault || difference.y > fault)) {
//то начинаем процесс дорисовки
}
Ответить с цитированием