|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
18.06.2018, 13:22 | #1 |
Новичок
Джуниор
Регистрация: 27.04.2018
Сообщений: 2
|
Параллелограмм на канвасе
Всех приветствую. В рамках моей дипломной работы я должен осуществить рисование параллелограмма как одного из элементов блок-схемы. Казалось бы, дело проще палёной репы, но беда в том, что способ рисования геометрических фигур через LineTo(x + сколько-то, y + столько-то) не прокатит, ибо нижеприведённый код отрисовки параллелограмма по координатам бесполезен, поскольку при увеличении размера фигуры меняется угол наклона вертикальных линий (оно и понятно).
Код:
Исходник программы прилагаю. FormChart Builder.zip |
18.06.2018, 14:39 | #2 |
Старожил
Регистрация: 15.02.2010
Сообщений: 15,760
|
|
18.06.2018, 15:28 | #3 | ||
никакой
Пользователь
Регистрация: 21.05.2018
Сообщений: 36
|
Цитата:
А вот вам следует освежить в памяти, что Цитата:
З.Ы. Кстати, ведь любой параллелограмм можно так повернуть, что пара сторон будет строго вертикальна. Последний раз редактировалось mihаli4; 18.06.2018 в 15:35. |
||
18.06.2018, 15:35 | #4 |
Старожил
Регистрация: 15.02.2010
Сообщений: 15,760
|
В чем?
Я это наизусть со школы знаю. И? Где в общем случае прямые линии. А учитывая, что в коде ТС строится "наклонным", то вы очень тупо выглядите. А какие трудности? Углы просто не меняются. Или вы опять ступили и у ТС трудности с вычисление "следующей" точки? |
18.06.2018, 16:25 | #5 |
Новичок
Джуниор
Регистрация: 27.04.2018
Сообщений: 2
|
Да, я практически дырявый пень в геометрии, признаюсь честно, но я пытался разобраться в плане "как надо сделать", несмотря на нехватку практических знаний. Я и не просил всё полностью сделать за меня, но хотя бы как минимум дать наводку, если уж больно принципиальны.
Последний раз редактировалось MrMaroon; 18.06.2018 в 16:32. |
18.06.2018, 17:02 | #6 |
Старожил
Регистрация: 15.02.2010
Сообщений: 15,760
|
Наводка: взять листок, начертить и записать. Например:
Пусть нижняя левая точка имеет координаты (0, 0) Правая нижняя будет (новая_длина1, 0) Первая верхняя: треугольник на базе (0, 0), этой точки и конце высоты в старых размерах и новых подобны, а значит стороны пропорциональны; находим коэффициент, новую высоту и y точки; x легко найти из длины вектора Вторая верхняя у совпадает с предыдущей, а x = х_предыдущей + новая_длина1. |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Ошибка в канвасе | Putin-mode | Общие вопросы C/C++ | 29 | 21.11.2013 08:24 |
Клавиши в канвасе | treut | Java Мобильная разработка (Android) | 1 | 24.03.2012 00:55 |
Конструктор на канвасе | Heming | Помощь студентам | 5 | 07.07.2010 00:35 |
Параллелограмм | Серафимий Долговяз | Паскаль, Turbo Pascal, PascalABC.NET | 0 | 15.02.2009 17:59 |
Как вывести на канвасе текст не с белым, а прозрачным фоном? | Altera | Общие вопросы Delphi | 2 | 29.03.2008 20:21 |