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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 23.09.2009, 00:55   #1
stscolt
Пользователь
 
Регистрация: 21.04.2008
Сообщений: 50
По умолчанию Перенос Параллелепипеда по осям

Я написал прогу, где рисуется параллелепипед. Теперь мне нужно его переносить по осям XOY, XOZ, ZOY. Кто знает подскажите. Прога во вложенному архиве. Заранее благодарен.
Вложения
Тип файла: zip Лаба.zip (11.8 Кб, 15 просмотров)
stscolt вне форума Ответить с цитированием
Старый 23.09.2009, 08:20   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Я бы сделал так:
Оформил твое
Код:
ax:=0; ay:=h; az:=w;
 a.X:=round(x_n(ax,az));
 a.Y:=round(y_n(ay,az));
 bx:=0; by:=h; bz:=0;
 b.X:=round(x_n(bx,bz));
 b.Y:=round(y_n(by,bz));
 cx:=l; cy:=h; cz:=0;
 c.X:=round(x_n(cx,cz));
 c.Y:=round(y_n(cy,cz));
 dx:=l; dy:=h; dz:=w;
 d.X:=round(x_n(dx,dz));
 d.Y:=round(y_n(dy,dz));
 a1x:=0; a1y:=0; a1z:=w;
 a1.X:=round(x_n(a1x,a1z));
 a1.Y:=round(y_n(a1y,a1z));
 b1.X:=round(x_n(0,0));
 b1.Y:=round(y_n(0,0));
 c1x:=l; c1y:=0; c1z:=0;
 c1.X:=round(x_n(c1x,c1z));
 c1.Y:=round(y_n(c1y,c1z));
 d1x:=l; d1y:=0; d1z:=w;
 d1.X:=round(x_n(d1x,d1z));
 d1.Y:=round(y_n(d1y,d1z));
отдельной роцедурой. А в кнопке переноса вызывал эту процедуру увеличивая соответственно нужную координату, и запускал процедуру отрисовки.
И еще: отрисовку я бы делал в OnPaint
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 23.09.2009, 08:22   #3
Utkin
Старожил
 
Аватар для Utkin
 
Регистрация: 04.02.2009
Сообщений: 17,351
По умолчанию

Я не рассматривал твою прогу, но могу предложить вариант смещения любой фигуры. Для этого ее нужно рисовать всегда относительно одной точки. Ну скажем какого-нибудь нижнего угла паралллепипеда. То есть для его построения задается только одна координата х, у, z. Все остальное строиться исходя из данной координаты.
Маньяк-самоучка
Utkin появился в результате деления на нуль.
Осторожно! Альтернативная логика
Utkin вне форума Ответить с цитированием
Старый 23.09.2009, 08:29   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
То есть для его построения задается только одна координата х, у, z
Судя по коду у автора есть точка опоры:ax:=0; ay:=h; az:=w;
I'm learning to live...
Stilet вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Перенос изображения soonner HTML и CSS 4 28.06.2009 19:43
перенос данных Romuald Microsoft Office Excel 8 23.02.2009 12:40
перенос данных Viento Microsoft Office Excel 10 16.01.2009 00:13
Перенос данных. Victor Microsoft Office Excel 8 01.09.2007 21:02