powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / нарисовать линию, затем стереть её.
25 сообщений из 41, страница 1 из 2
нарисовать линию, затем стереть её.
    #39371730
andron81
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый день всем.

есть фон - шахматная доска. на ней необходимо начертить отрезок , а потом стереть с сохранением фона под ним.
можно ли это сделать ?
...
Рейтинг: 0 / 0
нарисовать линию, затем стереть её.
    #39371739
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
andron81,

Можно. Например, если разжиться мелом и тряпочкой.
https://docs.oracle.com/javafx/2/api/javafx/scene/shape/Line.html
...
Рейтинг: 0 / 0
нарисовать линию, затем стереть её.
    #39371742
andron81
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowiczandron81,

Можно. Например, если разжиться мелом и тряпочкой.
https://docs.oracle.com/javafx/2/api/javafx/scene/shape/Line.html

нарисовать то дело не хитрое. а вот стереть чтобы фон не пострадал ?
...
Рейтинг: 0 / 0
нарисовать линию, затем стереть её.
    #39371750
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
andron81нарисовать то дело не хитрое. а вот стереть чтобы фон не пострадал ?
http://stackoverflow.com/questions/22692031/removing-object-from-scene-in-javafx
...
Рейтинг: 0 / 0
нарисовать линию, затем стереть её.
    #39371760
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
andron81Добрый день всем.

есть фон - шахматная доска. на ней необходимо начертить отрезок , а потом стереть с сохранением фона под ним.
можно ли это сделать ?
автороперация XOR, что позволяет удалить изображение прямоугольника его повторной прорисовкой.
в Java API не знаю, где есть поддержка.
Поиск.
...
Рейтинг: 0 / 0
нарисовать линию, затем стереть её.
    #39371762
rema174
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Blazkowiczandron81нарисовать то дело не хитрое. а вот стереть чтобы фон не пострадал ?
http://stackoverflow.com/questions/22692031/removing-object-from-scene-in-javafx
он же не уточнил что он использует - мел самое то.
...
Рейтинг: 0 / 0
нарисовать линию, затем стереть её.
    #39371785
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rema174он же не уточнил что он использует - мел самое то.
для мела в операционке нет тряпки)).
Есть ведро с краской и хитрая рисовалка с XOR
))
...
Рейтинг: 0 / 0
нарисовать линию, затем стереть её.
    #39371796
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123rema174он же не уточнил что он использует - мел самое то.
для мела в операционке нет тряпки)).
Есть ведро с краской и хитрая рисовалка с XOR
))
Да, ну какой, нахер, XOR. 100500 анимаций работают без него. Но автору же влом конкретизировать вопрос.
...
Рейтинг: 0 / 0
нарисовать линию, затем стереть её.
    #39371801
mad_nazgul
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
andron81Добрый день всем.

есть фон - шахматная доска. на ней необходимо начертить отрезок , а потом стереть с сохранением фона под ним.
можно ли это сделать ?

Просто нарисуй заново шахматную доску! <:o)
...
Рейтинг: 0 / 0
нарисовать линию, затем стереть её.
    #39371807
andron81
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mad_nazgul,

нужно так : рисуется на шахматной доске

линия1 (x1,y1, x10,y10)
линия2 (x2,y2, x20,y20)
линия3 (x3,y3, x30,y30)
линия4 (x4,y4, x40,y40)
линия5 (x5,y5, x50,y50)
линия6 (x6,y6, x60,y60)


потом скажем необходимо стереть линия3 , линия5
...
Рейтинг: 0 / 0
нарисовать линию, затем стереть её.
    #39371820
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mad_nazgulПросто нарисуй заново шахматную доску! <:o)
Читер!
В далёком 1990м году вышла первая игра Commander Keen, которая, благодаря Джону Кармаку открыла путь аркадам на платформу ПК. Кармак зашел немного дальше нас и придумал как перерисовывать не всю шахматную доску.
...
Рейтинг: 0 / 0
нарисовать линию, затем стереть её.
    #39371823
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
andron81
нужно так : рисуется на шахматной доске

линия1 (x1,y1, x10,y10)
линия2 (x2,y2, x20,y20)
линия3 (x3,y3, x30,y30)
линия4 (x4,y4, x40,y40)
линия5 (x5,y5, x50,y50)
линия6 (x6,y6, x60,y60)


потом скажем необходимо стереть линия3 , линия5
Блин. Не смешно уже. Определитесь с платформой. Я рекомендую JavaFX.
Вам покакой-то неведомой причиной нужно на Java2D? ОК.
100500 примеров кода:
https://www.google.com/search?q=Java2D animate line
JDK demo, разве не вам я на днях советовал посмотреть?
...
Рейтинг: 0 / 0
нарисовать линию, затем стереть её.
    #39371853
andron81
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowiczandron81нужно так : рисуется на шахматной доске

линия1 (x1,y1, x10,y10)
линия2 (x2,y2, x20,y20)
линия3 (x3,y3, x30,y30)
линия4 (x4,y4, x40,y40)
линия5 (x5,y5, x50,y50)
линия6 (x6,y6, x60,y60)


потом скажем необходимо стереть линия3 , линия5
Блин. Не смешно уже. Определитесь с платформой. Я рекомендую JavaFX.
Вам покакой-то неведомой причиной нужно на Java2D? ОК.
100500 примеров кода:
https://www.google.com/search?q=Java2D animate line
JDK demo, разве не вам я на днях советовал посмотреть?

да не хотелось бы изучать всю технологию , я думал это просто всё можно устроить. А графика тут это не главное . это всего лишь иллюстрация к решению. просто реализация затянется надолгие дни .
...
Рейтинг: 0 / 0
нарисовать линию, затем стереть её.
    #39371870
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BlazkowiczДа, ну какой, нахер, XOR. 100500 анимаций работают без него. Но автору же влом конкретизировать вопрос.
))
счас погуглил
авторпотому что, кажется, нет режима XOR рисования для JavaFX холста, в отличие от AWT.
конечно. В FX этот режим нее нужен, т.к. заново рисуется шахматная доска целиком.
IMHO
...
Рейтинг: 0 / 0
нарисовать линию, затем стереть её.
    #39371872
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
andron81да не хотелось бы изучать всю технологию

Какую всю?

andron81я думал это просто всё можно устроить.
Можно.

andron81А графика тут это не главное .
А что тогда?

andron81это всего лишь иллюстрация к решению. просто реализация затянется надолгие дни .
ОК. Можно не продолжать.
...
Рейтинг: 0 / 0
нарисовать линию, затем стереть её.
    #39371930
andron81
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz
andron81я думал это просто всё можно устроить.
Можно.



раз так , то и написали бы )
...
Рейтинг: 0 / 0
нарисовать линию, затем стереть её.
    #39371932
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
andron81раз так , то и написали бы )
Код: java
1.
2.
3.
4.
5.
6.
7.
8.
class MyComponent extends JComponent { 
   paintComponent(Graphics g){
       drawBackground(g);
       if(lineIsVisible) {
           drawLine();  
       }
   }   
}
...
Рейтинг: 0 / 0
нарисовать линию, затем стереть её.
    #39371934
andron81
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz,

спасибо
...
Рейтинг: 0 / 0
нарисовать линию, затем стереть её.
    #39371978
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
andron81,

Будь осторожен с рисованием . Судя по вопросу ты намерен анимировать движения шахматной фигуры.
Этот фокус просадит производительность во много раз. По умному - нужен отдельный поток который
Не чаще периода 100 мс будет обновлять статус доски.
...
Рейтинг: 0 / 0
нарисовать линию, затем стереть её.
    #39371982
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonandron81,

Будь осторожен с рисованием . Судя по вопросу ты намерен анимировать движения шахматной фигуры.
Этот фокус просадит производительность во много раз. По умному - нужен отдельный поток который
Не чаще периода 100 мс будет обновлять статус доски.
Не-не-не, Дэвид Блейн. Хороший Game Loop работает совсем иначе.
...
Рейтинг: 0 / 0
нарисовать линию, затем стереть её.
    #39372014
andron81
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonandron81,

Будь осторожен с рисованием . Судя по вопросу ты намерен анимировать движения шахматной фигуры.
Этот фокус просадит производительность во много раз. По умному - нужен отдельный поток который
Не чаще периода 100 мс будет обновлять статус доски.

вы правы . настораживает , что мой обычный алгоритм в глубину не находит решений и за 5 мин и более...
может я визуально я увижу зацикливание.
сорри за минифлуд
у меня всё это получалось, за исключением стирания линии. стирал я её же методом отрисовки другим цветом, но этот фокус не проходит: белую черту меняю на серую, но доска ведь не серая :)
...
Рейтинг: 0 / 0
нарисовать линию, затем стереть её.
    #39372024
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
andron81у меня всё это получалось, за исключением стирания линии. стирал я её же методом отрисовки другим цветом, но этот фокус не проходит: белую черту меняю на серую, но доска ведь не серая :)
Никто в здравом уме линии не стирает. Отрисовывают фон и всё. А потом оптимизируют, отрисовывая только нужные участки фона.
...
Рейтинг: 0 / 0
нарисовать линию, затем стереть её.
    #39372059
andron81
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz Отрисовывают фон и всё. А потом оптимизируют, отрисовывая только нужные участки фона.

очень интересно. вот хочу удалить линию помеченным красным. см. рисунок.
объясните , пожалуйста, как тут можно отрисовать фон ?
...
Рейтинг: 0 / 0
нарисовать линию, затем стереть её.
    #39372062
andron81
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
andron81,

я извиняюсь , я возможно умолчал, что помимо доски есть ещё и другие линии , которые при удалении какой-либо линии "страдать" не должны
...
Рейтинг: 0 / 0
нарисовать линию, затем стереть её.
    #39372072
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
andron81очень интересно. вот хочу удалить линию помеченным красным. см. рисунок.
объясните , пожалуйста, как тут можно отрисовать фон ?
Блин, как трудно-то. Ещё раз. У растра нет такого понятия как удалить. У растра есть понятие поменять цвет пикселя.
Чтобы оперировать таким понятием как добавить-удалить линию, нужно иметь модель предметной области, которая могла бы это делать. И отдельно от модели - код рисования текущего состояние модели.
Это всё уже реализовано в куче готовых фреймверков, но не в Java2D.

Возможно в вашем случае и правда XOR будет простейшим решением, так как вы ленитесь понимать как всё устроено и просто хотите чтобы работало хоть как-то.
https://docs.oracle.com/javase/7/docs/api/java/awt/Graphics.html#setXORMode(java.awt.Color)
...
Рейтинг: 0 / 0
25 сообщений из 41, страница 1 из 2
Форумы / Java [игнор отключен] [закрыт для гостей] / нарисовать линию, затем стереть её.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]