|
0 / 0 / 0
Регистрация: 17.09.2012
Сообщений: 12
|
||||||
Paint - жирная линия23.11.2013, 16:42. Показов 3051. Ответов 10
Метки нет (Все метки)
помогите пожалуйста, я хочу сделать для рисования , что бы была возможность рисовать жирной линией. пытаюсь через setStroke сделать, но у меня выдаёт, что setStroke is undefined... как исправить эту ошибку?
вот код:
0
|
||||||
| 23.11.2013, 16:42 | |
|
Ответы с готовыми решениями:
10
Что означает вертикальная жирная линия в Proteus Добавить справку в Paint. Создать графический интерфейс - прототип Paint - в Delphi
|
|
Кандёхаем веселее!
296 / 330 / 76
Регистрация: 02.10.2012
Сообщений: 2,175
|
||||||
| 23.11.2013, 18:05 | ||||||
|
У Graphics нету stroke, это у наследника, Graphics2D. Graphics2D
Попробуйте так:
1
|
||||||
|
0 / 0 / 0
Регистрация: 17.09.2012
Сообщений: 12
|
|
| 23.11.2013, 18:28 [ТС] | |
|
MLPMan, СПАСИБОО!!!
0
|
|
|
0 / 0 / 0
Регистрация: 17.09.2012
Сообщений: 12
|
||||||
| 26.11.2013, 14:48 [ТС] | ||||||
|
теперь у меня другая проблема, я думал раз расширю линию, то и она ловиться будет легко. Но так не вышло... подсвечивается линия очень тяжело, т.к. курсор почти не ловит точки. Что в коде надо дописать, чтоб количество точек расширилось и я спокойно мог подсвечивать линию курсором?? Помогите Пожалуйста!!!
![]() вот сам код:
0
|
||||||
|
2000 / 1427 / 92
Регистрация: 25.11.2010
Сообщений: 3,611
|
|
| 26.11.2013, 15:10 | |
|
Начнем с простых вопросов. Что такое Line?
0
|
|
|
0 / 0 / 0
Регистрация: 17.09.2012
Сообщений: 12
|
|||||||
| 26.11.2013, 19:53 [ТС] | |||||||
|
вот, щас добавлю :
0
|
|||||||
|
Кандёхаем веселее!
296 / 330 / 76
Регистрация: 02.10.2012
Сообщений: 2,175
|
|
| 27.11.2013, 07:16 | |
|
Можно добавить для каждой линии несколько "фиктивных", невидимых линий, которые будут хранить ссылку на "настоящую", а их координаты смещены на пару точек. И при попадании будут подсвечивать ту, на которую ссылка. Но тогда надо еще родить алгоритм смещения, ведь для "более горизонтальных" целесообразно дорисовывать сверху и снизу, а вертикальных - наооборот, слева и справа.
0
|
|
|
2000 / 1427 / 92
Регистрация: 25.11.2010
Сообщений: 3,611
|
|
| 27.11.2013, 11:11 | |
|
Ок, понятно. magmuffin, предложение. Отрисуйте не линии, а только точки. И посмотрите, в какое количество точек Вы пытаетесь попасть при определении, выделена линия или нет. Причем проведите мышь быстро, чтобы было более наглядно.
0
|
|
|
0 / 0 / 0
Регистрация: 17.09.2012
Сообщений: 12
|
|
| 27.11.2013, 12:50 [ТС] | |
|
Skipy, сама линия строится из точек, т.е. я так понимаю что на прямой идёт 1 точка, и по этому очень сложно курсором поймать её, а если быстро курсором провести, то линия вообще не выделяется. Я вот думал, что можно прописать к этим точка доп. координаты, чтоб место 1 точки было справо и слева ещё по точке(общее 3) , чтоб было легче выделить линию. Но не знаю как это написать
0
|
|
|
2000 / 1427 / 92
Регистрация: 25.11.2010
Сообщений: 3,611
|
|
| 27.11.2013, 13:28 | |
|
Вы вообще понимаете, что происходит? Когда Вы быстро ведете мышью, точки расположены на расстоянии друг от друга. Я не случайно предложил только точки отрисовать, Вы бы это увидели. И чтобы выделить - Вам надо попасть ровно в точку. Это нереально.
Действовать надо по-другому. 1. Вы строите по точкам GeneralPath. 2. Вы определяете окрестность от курсора мыши, в которой Вы ищете линию. Расстояние от мыши до линии равно расстоянию от линии до мыши, но координаты мыши Вы ВСЕГДА знаете в отличие от координат линии между двумя точками. Скажем, расстояние до линии для выделения - не более пяти точек. 3. Вы создаете объект типа Rectangle2D - квадрат со стороной 10 точек - и при движении мыши помещаете его так, чтобы курсор был в центре. 4. Вы проверяете пересечение квадрата с объектом типа GeneralPath, который реализует интерфейс Shape, т.е., у него есть метод intersects(Rectangle2D). В таком случае Вы получаете пересечение с отрисованной линией, а не с точкой. И рисовать можно с использованием того же GeneralPath, Graphics2D работает с Shape.
0
|
|
|
0 / 0 / 0
Регистрация: 17.09.2012
Сообщений: 12
|
|
| 27.11.2013, 13:40 [ТС] | |
|
Skipy, я вроде Вас понял, но вот не могу сообразить , как это в код писать...что-то я совсем запутался, что Вы тут написали я понял, а как это в коде оформить не понятно...
0
|
|
| 27.11.2013, 13:40 | |
|
Помогаю со студенческими работами здесь
11
Создать меню с командами Size, Color, Paint, Quit. При запуске приложения сделать недоступной команду Paint Жирная ссылка
Жирная черта в HTML таблице Жирная черта в конце страницы (задолбала) Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога
Финальные проекты на Си и на C++:
hello-sdl3-c. zip
hello-sdl3-cpp. zip
Результат:
|
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога
MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
|
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд.
Даже если у вас. . .
|
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает
монорепозиторий в котором находятся все исходники.
При создании нового решения, мы просто добавляем нужные проекты
и имеем. . .
|
|
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение:
В этой книге («Подход, основанный на вариантах использования») Ивар утверждает,
что архитектура программного обеспечения — это
структуры,. . .
|
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога
Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
|
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога
Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip
На первой гифке отладочные линии отключены, а на второй включены:. . .
|
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога
Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем.
. . .
|