[РЕШЕНО] Вопрос по Элипсам |
Здравствуйте, гость ( Вход | Регистрация )
[РЕШЕНО] Вопрос по Элипсам |
Tin-moon |
11.4.2010, 18:04
Сообщение
#1
|
Студент Группа: Новичок Сообщений: 11 Регистрация: 11.4.2010 Пользователь №: 1620 Спасибо сказали: 0 раз(а) Репутация: 0 |
Вот есть пример http://doc.crossplatform.ru/qt/4.3.5/graph...agramscene.html тут строят различные диаграммы. Вопрос как сюда можно добавить элементы в виде Элипсов?
После добавления:
Любой старый элемент отображается как этот круг. Кто что может подсказать.... |
|
|
Litkevich Yuriy |
11.4.2010, 18:07
Сообщение
#2
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
А что за класс такой Shape?
В примере такого вроде нету |
|
|
Tin-moon |
11.4.2010, 18:17
Сообщение
#3
|
Студент Группа: Новичок Сообщений: 11 Регистрация: 11.4.2010 Пользователь №: 1620 Спасибо сказали: 0 раз(а) Репутация: 0 |
А что за класс такой Shape? В примере такого вроде нету Это у меня так(немного переписал):
|
|
|
ViGOur |
12.4.2010, 8:47
Сообщение
#4
|
Мастер Группа: Модератор Сообщений: 3296 Регистрация: 9.10.2007 Из: Москва Пользователь №: 4 Спасибо сказали: 231 раз(а) Репутация: 40 |
|
|
|
Litkevich Yuriy |
12.4.2010, 8:56
Сообщение
#5
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
вообще я как-то порывался этот пример под себя переделать. Но, к сожалению, он написан так, что его нельзя расширить новой функциональностью
|
|
|
Tin-moon |
12.4.2010, 9:18
Сообщение
#6
|
Студент Группа: Новичок Сообщений: 11 Регистрация: 11.4.2010 Пользователь №: 1620 Спасибо сказали: 0 раз(а) Репутация: 0 |
Любой старый элемент отображается как этот круг. Как я понимаю у тебя рисуется через твой класс Shape, потому и все элементы рисуются элипсами.Для каждого элемента по идее нужен свой класс, который будет его рисовать... Если же я ошибаюсь, тогда покажи весь код... Переписал немного чтобы не смущал Shape Вот test.h
Test.cpp
Брал тут http://doc.crossplatform.ru/qt/4.3.5/graph...amitem-cpp.html |
|
|
Litkevich Yuriy |
12.4.2010, 9:28
Сообщение
#7
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
Tin-moon, я не понимаю, зачем ты свой класс делаешь?
Вот в классе DiagramItem, есть некий задел и его бы использовал. В частности посмотри конструктор класса, там есть оператор switch и в нём условие case StartEnd: судя по всему оно ни когда не выполняется, однако там есть интересный код (создаются дуги), вот его и воспроизвести. В вести дополнительный тип, например, MyArc |
|
|
Tin-moon |
12.4.2010, 9:36
Сообщение
#8
|
Студент Группа: Новичок Сообщений: 11 Регистрация: 11.4.2010 Пользователь №: 1620 Спасибо сказали: 0 раз(а) Репутация: 0 |
Tin-moon, я не понимаю, зачем ты свой класс делаешь? Вот в классе DiagramItem, есть некий задел и его бы использовал. В частности посмотри конструктор класса, там есть оператор switch и в нём условие case StartEnd: судя по всему оно ни когда не выполняется, однако там есть интересный код (создаются дуги), вот его и воспроизвести. В вести дополнительный тип, например, MyArc Он то не используется, но там помоему строится параллелограм если его включить в MainWindow, я просто хочу запихнуть круг к тем которые есть, а оно отрисовываем мой paint по тому многоугольнику из swith Читал у вас на форуме там человек решил с помощью QPainter, но не написал как и не появлялся уже давно у вас... |
|
|
Litkevich Yuriy |
12.4.2010, 9:44
Сообщение
#9
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
я просто хочу запихнуть круг к тем которые есть, при данной архитектуре я это вижу так:В главное окно добавить кнопку, которая будет сигнализировать сцене о новом режиме, т.е. соответственно DiagramScene добавить новый тип, и в операторе switch (конструктора DiagramItem), реализовать новый способ создания контура рисования (QPainterPath)Всё |
|
|
Tin-moon |
12.4.2010, 10:17
Сообщение
#10
|
Студент Группа: Новичок Сообщений: 11 Регистрация: 11.4.2010 Пользователь №: 1620 Спасибо сказали: 0 раз(а) Репутация: 0 |
я просто хочу запихнуть круг к тем которые есть, при данной архитектуре я это вижу так:В главное окно добавить кнопку, которая будет сигнализировать сцене о новом режиме, т.е. соответственно DiagramScene добавить новый тип, и в операторе switch (конструктора DiagramItem), реализовать новый способ создания контура рисования (QPainterPath)Всё Поскольку я ток начал работать с Qt Можно вопрос чайника?? Ругается на недекларированый id, и разве с помощью QPainterPath можно отрисовать круг? Плохо что нету редактирования а все пишет в одно спс вроде стало рисовать, вот только проблема стрелка далеко от элементов, может подскажешь как вернуть к кругу?? Сообщение отредактировал ViGOur - 12.4.2010, 10:23
Причина редактирования: Убрал ненужные циататы самого себя из этого же поста... Редактирование у тебя появится после 10 сообщений. :)
|
|
|
Текстовая версия | Сейчас: 24.4.2024, 5:06 |