Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 15.03.2013, 19:07   #1
Arbis
 
Регистрация: 15.03.2013
Сообщений: 8
По умолчанию WinAPI векторные изображения

С помощью мыши рисую разные геометрические фигуры, которые выбираю из меню. При выборе новой фигуры, нарисованные до этого преобразуются в новый тип. Например, после выбора прямоугольников, все нарисованные линии становятся прямоугольниками. Просьба помочь. Файла проекта прикреплен.

http://www.programmersclub.ru/прорис...х-изображений/
Arbis вне форума Ответить с цитированием
Старый 15.03.2013, 20:13   #2
s-andriano
Старожил
 
Аватар для s-andriano
 
Регистрация: 08.04.2012
Сообщений: 3,229
По умолчанию

Трудно что-то посоветовать, не зная, что именно нужно получить.

Могу предположить, что проблему можно решить, если хранить тип фигуры вместе с фигурой.
s-andriano вне форума Ответить с цитированием
Старый 15.03.2013, 20:50   #3
Arbis
 
Регистрация: 15.03.2013
Сообщений: 8
По умолчанию

Нужно чтобы после выбора фигуры для рисования, до этого нарисованные не перерисовывались. Должна быть некая аналогия Painta.
Arbis вне форума Ответить с цитированием
Старый 15.03.2013, 21:50   #4
s-andriano
Старожил
 
Аватар для s-andriano
 
Регистрация: 08.04.2012
Сообщений: 3,229
По умолчанию

Ну так не перерисовывайте их.
В чем проблема?
s-andriano вне форума Ответить с цитированием
Старый 15.03.2013, 22:52   #5
Arbis
 
Регистрация: 15.03.2013
Сообщений: 8
По умолчанию

Я ведь и спрашиваю как реализовать их сохранение. Допустим после рисования линий, я выбираю рисование квадратов, но нарисованные до этого линии становятся квадратами - это и есть баг.
Arbis вне форума Ответить с цитированием
Старый 15.03.2013, 23:20   #6
s-andriano
Старожил
 
Аватар для s-andriano
 
Регистрация: 08.04.2012
Сообщений: 3,229
По умолчанию

Сами по себе квадратами они стать не могут.
Значит, Вы их перерисовываете.
Не делайте этого.
Либо, если по каким-то причинам не делать этого невозможно, запоминайте вместе с каждой фигурой ее тип (Вы ведь запоминаете фигуры, иначе бы они не могли перерисовываться). И рисуйте с учетом этого типа.
То есть рисование фигуры должно осуществляться всегда по ее собственному типу, а не по типу, который действует в данный момент в программе.
s-andriano вне форума Ответить с цитированием
Старый 15.03.2013, 23:32   #7
Arbis
 
Регистрация: 15.03.2013
Сообщений: 8
По умолчанию

Я запоминаю координаты и заношу их в массив структур и в цикле вывожу их на экран. А как запоминать по типу фигуры? Приведите пример ?
Arbis вне форума Ответить с цитированием
Старый 15.03.2013, 23:41   #8
s-andriano
Старожил
 
Аватар для s-andriano
 
Регистрация: 08.04.2012
Сообщений: 3,229
По умолчанию

Вот в структуре и должно быть предусмотрено отдельное поле для типа фигуры.
И выводить на экран нужно именно по этому типу, а не по типу, который у Вас в данный момент установлен для рисования.
Последний же (тип, установленный для рисования) используется исключительно при создании новых фигур, т.е. прописывается в поле типа вновь создаваемой фигуры.
s-andriano вне форума Ответить с цитированием
Старый 15.03.2013, 23:52   #9
Arbis
 
Регистрация: 15.03.2013
Сообщений: 8
По умолчанию

Ну так как тип будет меняться они тоже будут перерисовываться.
Arbis вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Различие кода mfc и WinApi(mfc ручками набили, а WinApi автоматически с генерировался!! нужно явное отличие, не могу найти) Артём1991 Помощь студентам 0 25.03.2012 17:13
Строки Векторные данные (язык Pelles C) Kotik Wasil Помощь студентам 0 12.12.2010 20:53
векторные типы данных angedonia Общие вопросы C/C++ 4 09.06.2010 09:08
Класс "векторные операции" для трехмерных векторов. Студентка@ Помощь студентам 1 30.01.2008 19:21