|
|
|
Рисование в JavaFX 2.0
|
|||
|---|---|---|---|
|
#18+
Есть задача в программе наглядно (графически) отобразить введённые значения (размеры, углы). На той же форме, где и вводятся значения. Посоветуйте контейнер для рисования в JavaFX 1. Чтобы я мог рисовать примитивы пропорциональные размерам контейнера. (для этого мне кажется надо знать его размеры.. имхо)) ) 2. Чтобы нарисованные в нём полилинии (и пр. мои примитивы) не вылазили за границы контейнера. (на Pane'е (и StackPane'е) есть такой глюк) 3. Чтобы изображение масштабировалось при изменении размера контейнера. Либо чтобы я самостоятельно мог бы поймать это событие и смасштабировать рисунок. Ещё нужно внутри полигона (обычно параллелограмма) нарисовать штриховку . Посоветуйте как это оптимальней сделать. Штриховки уже описал программно, но могу сделать растры. Проблема: не получается нарисованные полилинии ограничить гем. фигурой. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.05.2012, 00:44:05 |
|
||
|
Рисование в JavaFX 2.0
|
|||
|---|---|---|---|
|
#18+
avp.mk, - скорее всего надо делать руками. - что значит изменение размеров контейнера? Лучше приведи скрин расположения элементов ГУИ. В общем случае, т.к. тебе нужен масштаб и "не вылазило", то лови все события и на команду отрисовки вписывай НОВЫЙ размер рисунка в НОВОЕ место. Код: java 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.05.2012, 10:19:28 |
|
||
|
Рисование в JavaFX 2.0
|
|||
|---|---|---|---|
|
#18+
avp.mkЕщё нужно внутри полигона (обычно параллелограмма) нарисовать штриховку . В JavaFX не знаю. В Win32API есть кисть со штриховкой и объект Регион ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.05.2012, 10:20:59 |
|
||
|
Рисование в JavaFX 2.0
|
|||
|---|---|---|---|
|
#18+
Petro123avp.mkЕщё нужно внутри полигона (обычно параллелограмма) нарисовать штриховку . В JavaFX не знаю. В Win32API есть кисть со штриховкой и объект Регион В AWT тоже есть подобная функциональность в Prism пока не нашёл.. По мотивам этой статьи. (TexturePaint) http://today.java.net/pub/a/today/2009/07/30/javafx-custom-paints.html Переписал часть кода с чуднóго языка на Java. C учётом некоторых особенностей API JavaFX 2. Но в самом конце меня ждал неприятный сюрприз. Как я понял в связи с переходом с AWT на Prism код абсолютно бесполезен. Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. java.awt.TexturePaint cannot be cast to com.sun.prism.paint.Paint В пакете com.sun.prism.paint нашёл интересный класс ImagePattern. Но он уже успел стать depricated притом настолько, что приложение с его использованием даже не компилируется.. Esquisse.java uses or overrides a deprecated API. Note: Recompile with -Xlint:deprecation for details. Унаследоваться от com.sun.prism.paint.Paint и что-нибудь там начудить нельзя т.к. его конструктор не имеет модификатора public. Пробовал такой хренью заниматься, без толку. Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.05.2012, 23:34:59 |
|
||
|
Рисование в JavaFX 2.0
|
|||
|---|---|---|---|
|
#18+
avp.mk, а чё ты в рядом ветку про JavaFX не запостишь? Там было одно обсуждение про растровый АПИ в сабже. И все сошлись, что его нет там (( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.05.2012, 09:55:02 |
|
||
|
Рисование в JavaFX 2.0
|
|||
|---|---|---|---|
|
#18+
Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. Единственное что хоть как-то работает. Как сделать также с фигурой посложнее. Или как хотябы обрезать Label чтобы он стал параллелограммом. Разбаньте пожалуйста 1024. Я только у него пока видел приложения jfx. Может подскажет что-нибудь) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.05.2012, 09:56:30 |
|
||
|
Рисование в JavaFX 2.0
|
|||
|---|---|---|---|
|
#18+
Petro123Там было одно обсуждение про растровый АПИ в сабже. И все сошлись, что его нет там (( Мне не принципиально чтобы это был растр. Я их сначала векторными решил сделать. Всё ещё пока от этой мысли не отказался. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.05.2012, 10:25:14 |
|
||
|
Рисование в JavaFX 2.0
|
|||
|---|---|---|---|
|
#18+
avp.mkPetro123Там было одно обсуждение про растровый АПИ в сабже. И все сошлись, что его нет там (( Мне не принципиально чтобы это был растр. Я их сначала векторными решил сделать. Всё ещё пока от этой мысли не отказался. Профессиональный движёк (я делал на Delphi) делается не на компонентах визуальных \ панелях \ фреймах. А в виде класса Коордиинат, Рисовального, и т.д. Т.е. если говорить о векторном движке, то там есть класс точка, полигон, текст и т.д. Класса параллелограмм нету. Тогда рисовать можно на чём угодно. Брать Canvas\HDC\Printers.Canvas и т.д. ----- Это если руками и "как полагается". Т.е. если в JavaFX есть векторный API например, Canvas.LineTo(0,0,100,50). То нет проблем. ______________________________________________ "Сделай настолько просто, насколько это возможно, но не проще". © А. Эйнштейн. AutoPOI.ru — ГИС-технологии для Oracle ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.05.2012, 10:57:37 |
|
||
|
Рисование в JavaFX 2.0
|
|||
|---|---|---|---|
|
#18+
Petro123, Я рад конечно что я не сам с собой разговариваю. Но нельзя ли больше конкретики в советах и с рабочими кодом на jfx 2. Домыслы и возможности gdi(+) мало интересны.. Хотя увидив слово HDC сразу вспомнилась OpenGL.. Может ей воспользуюсь. JavaFX нет класса (графического) Точка, нет класса Canvas. Есть класс полилиния, полигон и много ещё которыми можно нарисовать параллелограмм. Про параллелограмм я написал для того что бы показать что у меня пока не такая сложная задача как закраска области нарисованной QuadCurve'ом. Но это пока.. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.05.2012, 11:28:00 |
|
||
|
Рисование в JavaFX 2.0
|
|||
|---|---|---|---|
|
#18+
avp.mk, ну, может ещё это поможет (правда растр) 12283117 В остальном, я сказал - практики в той теме про JavaFX. Удачи! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.05.2012, 11:41:38 |
|
||
|
Рисование в JavaFX 2.0
|
|||
|---|---|---|---|
|
#18+
avp.mkPetro123, Я рад конечно что я не сам с собой разговариваю. Но нельзя ли больше конкретики в советах и с рабочими кодом на jfx 2. Домыслы и возможности gdi(+) мало интересны.. Это его обычный стиль общения :) http://docs.oracle.com/javafx/2/api/javafx/scene/paint/Paint.html - посмотрите, возможно это что вам нужно (сделать свою реализацию аналогично Color, Gradient и т.п.). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.05.2012, 11:47:07 |
|
||
|
Рисование в JavaFX 2.0
|
|||
|---|---|---|---|
|
#18+
В JavaFX сцене пока нет Canvas, но что-то на эту тему уже обсуждают . ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.05.2012, 12:22:28 |
|
||
|
Рисование в JavaFX 2.0
|
|||
|---|---|---|---|
|
#18+
Leonidv http://docs.oracle.com/javafx/2/api/javafx/scene/paint/Paint.html - посмотрите, возможно это что вам нужно (сделать свою реализацию аналогично Color, Gradient и т.п.). В четвёртом посте я какраз и реализовывал класс (абстрактный) javafx.scene.paint.Paint, который в свою очередь должен реализовать метод impl_getPlatformPaint() который в свою очередь должен возвращать экземпляр com.sun.prism.paint.Paint. (хотя возможно что-то ещё... Не зря же у него стоит тип Object.....) Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.05.2012, 12:28:00 |
|
||
|
Рисование в JavaFX 2.0
|
|||
|---|---|---|---|
|
#18+
kamreВ JavaFX сцене пока нет Canvas оригинально :) Даже в HTML5 его ввели. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.05.2012, 12:28:45 |
|
||
|
Рисование в JavaFX 2.0
|
|||
|---|---|---|---|
|
#18+
avp.mk, Посмотрите, что возвращают gradient'ы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.05.2012, 13:02:38 |
|
||
|
Рисование в JavaFX 2.0
|
|||
|---|---|---|---|
|
#18+
LeonidvПосмотрите, что возвращают gradient'ы. Как сие понять? Классы LinearGradient и RadialGradient раширяют класс Paint, если вы об этом. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.05.2012, 13:11:20 |
|
||
|
Рисование в JavaFX 2.0
|
|||
|---|---|---|---|
|
#18+
avp.mkLeonidvПосмотрите, что возвращают gradient'ы. Как сие понять? Классы LinearGradient и RadialGradient раширяют класс Paint, если вы об этом. Я так понял, что вы не можете понять, что вернуть тут: public Object impl_getPlatformPaint() { Проще всего залесть в исходники и посмотреть, что возвращают тут классы, отвечающие за градиентный вывод. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.05.2012, 14:06:56 |
|
||
|
Рисование в JavaFX 2.0
|
|||
|---|---|---|---|
|
#18+
LeonidvЯ так понял, что вы не можете понять, что вернуть тут: public Object impl_getPlatformPaint() Предоставленый мной код - рабочий. LeonidvПроще всего залесть в исходники и посмотреть, что возвращают тут классы, отвечающие за градиентный вывод. Да, пожалуй. Только у меня нет исходных кодов этих классов. Не подскажите где их взять? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.05.2012, 14:19:10 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=37780470&tid=2131868]: |
0ms |
get settings: |
15ms |
get forum list: |
28ms |
check forum access: |
5ms |
check topic access: |
5ms |
track hit: |
48ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
75ms |
get tp. blocked users: |
2ms |
| others: | 315ms |
| total: | 509ms |

| 0 / 0 |
