crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

4 страниц V  « < 2 3 4  
Ответить в данную темуНачать новую тему
> QGraphicsRectItem и setPos()
lifrost
  опции профиля:
сообщение 30.3.2011, 9:59
Сообщение #31


Студент
*

Группа: Участник
Сообщений: 38
Регистрация: 4.3.2011
Из: Миасс
Пользователь №: 2468

Спасибо сказали: 0 раз(а)




Репутация:   0  


Кстати, есть ещё идея со сигналами/слотами...Это я про дорисовку полигонов.
Можно ли как-нибудь сделать общий слот в котором будет происходить перерисовка объектов, а объекты в которых происходит изменение позиции будут слать сигнал с новыми данными в слот..... Что-то типа того, было бы не плохо, но я вообще без понятия реально ли это реализовать.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
abc
  опции профиля:
сообщение 30.3.2011, 11:49
Сообщение #32


Участник
**

Группа: Участник
Сообщений: 221
Регистрация: 16.12.2010
Из: СПб
Пользователь №: 2272

Спасибо сказали: 26 раз(а)




Репутация:   4  


в реализации new Arс ты столкнулся с той же проблемой, что и я - когда при скашивании граней, они теряют параллельность своих линий. А почему нельзя добавить больше одной перегородки?
в реализации newWindow можно раздвигать и без кликов - глобальные переменные спасае)
а моя грань поможет сделать сложную фигуру, это может быть одной из возможностей программы... чтоб уметь нарисовать совершенно косое кривое извращение
я думаю, что нужно как раз качественно реализовать наиболее часто используемый вид окна - прямоугольник, с возможностью добавлять внутрь перегородки, удалять грани и притютюхивать на их место арку..
можно просто несколько шаблонов сделать - простой прямоугольник, прямоугольник с аркой, ну и что там ещё
ещё тебе нужно уметь изменять ширину граней... а уголки двух граней, которые стыкуются, всегда равны?

Цитата(lifrost @ 30.3.2011, 10:59) *
Кстати, есть ещё идея со сигналами/слотами...

да, хорошая идея) эт чтоб избавиться от глобальных переменных, как я понимаю?
можно и класс сцены занаследовать и двигать итемы в ней, только нужно будет проверять, какой итем под мышью
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
lifrost
  опции профиля:
сообщение 31.3.2011, 7:09
Сообщение #33


Студент
*

Группа: Участник
Сообщений: 38
Регистрация: 4.3.2011
Из: Миасс
Пользователь №: 2468

Спасибо сказали: 0 раз(а)




Репутация:   0  


Цитата(abc @ 30.3.2011, 13:49) *
в реализации new Arс ты столкнулся с той же проблемой, что и я - когда при скашивании граней, они теряют параллельность своих линий. А почему нельзя добавить больше одной перегородки?
в реализации newWindow можно раздвигать и без кликов - глобальные переменные спасае)
а моя грань поможет сделать сложную фигуру, это может быть одной из возможностей программы... чтоб уметь нарисовать совершенно косое кривое извращение
я думаю, что нужно как раз качественно реализовать наиболее часто используемый вид окна - прямоугольник, с возможностью добавлять внутрь перегородки, удалять грани и притютюхивать на их место арку..
можно просто несколько шаблонов сделать - простой прямоугольник, прямоугольник с аркой, ну и что там ещё
ещё тебе нужно уметь изменять ширину граней... а уголки двух граней, которые стыкуются, всегда равны?

Цитата(lifrost @ 30.3.2011, 10:59) *
Кстати, есть ещё идея со сигналами/слотами...

да, хорошая идея) эт чтоб избавиться от глобальных переменных, как я понимаю?
можно и класс сцены занаследовать и двигать итемы в ней, только нужно будет проверять, какой итем под мышью


1) А как добавить больше одной перегородки в реализации new Arc...?
2) В new Window - я не понял как дорисовать без кликов ((
3) Углы всегда равны.

На счет сигнал/слот, ну во-первых, избавиться от глобальных переменных, а во-вторых, чтобы другие классы видели изменения точек - тока я вообще без понятия как это реализовать )) Я пробовал множественное наследование, но пока без успешно.

Ах, да - на счет ширины граней - это на самом деле не обязательно, я такого просто не видел в других программах, если это тока какая-то фишка будет. Просто с точки зрения производственной реализации это не реально - грани - это же профиль, а он имеет стандартную ширину.


Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
abc
  опции профиля:
сообщение 31.3.2011, 9:57
Сообщение #34


Участник
**

Группа: Участник
Сообщений: 221
Регистрация: 16.12.2010
Из: СПб
Пользователь №: 2272

Спасибо сказали: 26 раз(а)




Репутация:   4  


я проснулся ночью в поту! я полдня мучился, не знал, как обойтись без глобальных переменных, а ведь это же очевидно - двигать итемы в классе сцены... она будет знать обо всех точках итемов, и всех их перерисовывать... итемам ничего не нужно будет знать друг о друге... я помню, как я в начале нашей работы отвёл тебя от идеи ловить мышь в классе сцены... я, однако, тогда не знал, что квадрат будет составлен из нескольких полигонов, а потом я совершенно не подумал вернуться к твоему изначальному плану.
короче, твой вариант с дорисовыванием по кликам можно доработать... но скашивание всё равно вызовет проблемы, о которых я уже писал
по вопросам:
1) а как ты одну добавляешь? это ведь QGraphicsRectItem?
2) ты не понял, как совместно перерисовывать полигоны? или как это сделать без глобальных переменных?

если грани имеют стандартную ширину, это облегчает дело, но я ещё хочу обратить твоё внимание, что размеры нашего окна должны быть пропорциональны размерам реального окна
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
lifrost
  опции профиля:
сообщение 31.3.2011, 10:20
Сообщение #35


Студент
*

Группа: Участник
Сообщений: 38
Регистрация: 4.3.2011
Из: Миасс
Пользователь №: 2468

Спасибо сказали: 0 раз(а)




Репутация:   0  


Цитата(abc @ 31.3.2011, 11:57) *
я проснулся ночью в поту! я полдня мучился, не знал, как обойтись без глобальных переменных, а ведь это же очевидно - двигать итемы в классе сцены... она будет знать обо всех точках итемов, и всех их перерисовывать... итемам ничего не нужно будет знать друг о друге... я помню, как я в начале нашей работы отвёл тебя от идеи ловить мышь в классе сцены... я, однако, тогда не знал, что квадрат будет составлен из нескольких полигонов, а потом я совершенно не подумал вернуться к твоему изначальному плану.
короче, твой вариант с дорисовыванием по кликам можно доработать... но скашивание всё равно вызовет проблемы, о которых я уже писал
по вопросам:
1) а как ты одну добавляешь? это ведь QGraphicsRectItem?
2) ты не понял, как совместно перерисовывать полигоны? или как это сделать без глобальных переменных?

если грани имеют стандартную ширину, это облегчает дело, но я ещё хочу обратить твоё внимание, что размеры нашего окна должны быть пропорциональны размерам реального окна


Так =). Все-таки нужно наследоваться от сцены, добавить нужно кол-во полигонов и двигать их? На счет скосов, пока можно обойтись без этого.
В итоге: получается забить на все предыдущие варианты?

1) уже понял.
2) да я не понял как совместно перерисовать итемы без кликов.

Хотя эти два вопроса можно выкинуть раз все таки наследоваться от сцены )) Там кстати и текст с размерами будет проще вставить...ах да вот на счет масштабирование реальный размер и нарисованный - вот тут реально сложновато все про масштабировать...
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
abc
  опции профиля:
сообщение 31.3.2011, 11:43
Сообщение #36


Участник
**

Группа: Участник
Сообщений: 221
Регистрация: 16.12.2010
Из: СПб
Пользователь №: 2272

Спасибо сказали: 26 раз(а)




Репутация:   4  


2) задаёшь новые координаты вершин, затем устанавливаешь новые полигоны для итемов, в которых эти вершины участвуют

а я вижу пользование этой программой так:
передо мной бумажка, на которой расписаны размеры окна. я в программе ввожу эти размеры, а программа их пропорционально уменьшает и рисует окно.. Зачем мне колбасить окно мышью, если заранее известны размеры? Створки в окно можно добавлять уже вручную... а можно и створки по заданным размерам автоматом рисовать. ну, это с прямоугольным окном. более сложные детали, наверное, пусть пользователь сам рисует
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
lifrost
  опции профиля:
сообщение 1.4.2011, 7:33
Сообщение #37


Студент
*

Группа: Участник
Сообщений: 38
Регистрация: 4.3.2011
Из: Миасс
Пользователь №: 2468

Спасибо сказали: 0 раз(а)




Репутация:   0  


Цитата(abc @ 31.3.2011, 13:43) *
2) задаёшь новые координаты вершин, затем устанавливаешь новые полигоны для итемов, в которых эти вершины участвуют

а я вижу пользование этой программой так:
передо мной бумажка, на которой расписаны размеры окна. я в программе ввожу эти размеры, а программа их пропорционально уменьшает и рисует окно.. Зачем мне колбасить окно мышью, если заранее известны размеры? Створки в окно можно добавлять уже вручную... а можно и створки по заданным размерам автоматом рисовать. ну, это с прямоугольным окном. более сложные детали, наверное, пусть пользователь сам рисует

Вот если бы было все так просто, но во всех программах сделано так что можно и вводить и двигать размер окна....

2) это ты написал про реализацию для одного класса, а если каждый полигон в своем классе, то как тогда его перерисовать, у меня чет не вышло

Попробовал я унаследоваться от сцены и рисовать там полигоны, мне чет эта затея теперь не нравиться....
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
abc
  опции профиля:
сообщение 1.4.2011, 11:52
Сообщение #38


Участник
**

Группа: Участник
Сообщений: 221
Регистрация: 16.12.2010
Из: СПб
Пользователь №: 2272

Спасибо сказали: 26 раз(а)




Репутация:   4  


пусть двигается, но изначально строй окно по заданным размерам, пожааааалуйста)

вот двигаю полигоны в классе сцены
красота)
Прикрепленный файл  WDesigner.zip ( 30,64 килобайт ) Кол-во скачиваний: 199
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
lifrost
  опции профиля:
сообщение 1.4.2011, 12:01
Сообщение #39


Студент
*

Группа: Участник
Сообщений: 38
Регистрация: 4.3.2011
Из: Миасс
Пользователь №: 2468

Спасибо сказали: 0 раз(а)




Репутация:   0  


Цитата(abc @ 1.4.2011, 13:52) *
пусть двигается, но изначально строй окно по заданным размерам, пожааааалуйста)

вот двигаю полигоны в классе сцены
красота)
Прикрепленный файл  WDesigner.zip ( 30,64 килобайт ) Кол-во скачиваний: 199


Ок, изначально размеры, потом можем двигать.
Да - вот от теперь вижу что от сцены - все круто )
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

4 страниц V  « < 2 3 4
Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 29.11.2024, 16:32