Форум: "Начинающим";
Текущий архив: 2009.10.11;
Скачать: [xml.tar.bz2];
ВнизМасштабирование с соблюдением расстояний между объектами Найти похожие ветки
← →
Hamyachok (2009-08-10 11:59) [0]Здравствуйте, мастера!
Пытаюсь разработать программу проектирования чертежей. Возникла проблема. Не могу придумать алгоритм масштабирования, чтоб соблюдались все пропорции(размер и расстояние). Все распологается на ScrollBox, а объекты - TShape.
Пробовал увеличивать все объекты на определенный коэффициент, а после этого распологать относительно верхнего-левого угла главного помещения. Но возникло 2-е проблемы:
1. Масштаб был только (1:1, 1:2, 1:4, 1:8) - это батва!!!
2. При добавлении на чертеж новых комнат, проблема - если конта слева от центральной.
Подскажите, может у кого-то есть идеи, без этого дальнейшая разработка бессмысленна!?!?!?!?!
← →
Jeer © (2009-08-10 12:35) [1]
> дальнейшая разработка бессмысленна
С такими знаниями она изначально бессмысленна.
P.S.
CAD-ы работают с векторной графикой и числами в плавающем формате.
← →
Сергей М. © (2009-08-10 12:41) [2]
> 1. Масштаб был только (1:1, 1:2, 1:4, 1:8) - это батва
Копать надо)
← →
KilkennyCat © (2009-08-10 12:44) [3]
> Подскажите, может у кого-то есть идеи
есть идея заплатить программистам. Можно мне ;)
← →
Hamyachok (2009-08-10 12:51) [4]
> С такими знаниями она изначально бессмысленна.
обнадежил
Рассматривал разные пути:
1. Если увеличивать все объекты в зависимости от задонного коэфициента, все получается неплохо, но опять возникает проблема расположения, да и в размерах тоже, может быть несовпадение.
2. Есть мысль. Может быть сами объекты не трогать.
Я видел процедуру, с помощью которой масштабируют форму со всеми лежащими на ней объектами в зависимости от расширения экрана.
Как вам такой вариант???
P.S. сейчас найду, напишу.
← →
Hamyachok (2009-08-10 12:53) [5]вот процедура о которой я говорил:
procedure AdjustResolution(oForm:TForm);
var
iPercentage:integer;
begin
if Screen.Width > 640 then
begin
iPercentage:=Round(((Screen.Width-640)/640)*100)+100;
oForm.ScaleBy(iPercentage,100);
end;
end;
← →
Hamyachok (2009-08-10 12:55) [6]
> есть идея заплатить программистам. Можно мне ;)
Это называется совет мастера - начинающему?!?!?!?!?!?!
← →
Kolan © (2009-08-10 12:56) [7]О, Венгерская нотация.
← →
Anatoly Podgoretsky © (2009-08-10 13:18) [8]> Сергей М. (10.08.2009 12:41:02) [2]
Намек на лопату?
← →
Anatoly Podgoretsky © (2009-08-10 13:19) [9]> Hamyachok (10.08.2009 12:51:04) [4]
Не надо, не трать усилий.
← →
Hamyachok (2009-08-10 13:35) [10]
> Не надо, не трать усилий.
А что тогда делать?
← →
Kolan © (2009-08-10 13:45) [11]Начните с изучения аналогичных программ.
Из этого анализа вы поймете какие технологии вам надо изучить, для того, чтобы сделать подобную программу.
Получите нужные знания (именно их вам сейчас не хватает).
После этого можно переходит к проектированию системы.
← →
KilkennyCat © (2009-08-10 13:47) [12]
>
> Это называется совет мастера - начинающему?!?!?!?!?!?!
А как ты хотел? Ты замахнулся на сложный проект. Тут можно посоветовать всего две вещи:
1) Учить
2) Заплатить
первый вариант тебе уже направили:
> Jeer © (10.08.09 12:35) [1]
> CAD-ы работают с векторной графикой и числами в плавающем
> формате.
второй я тож предложил.
И путать советы с халявной разработкой нехилого проекта не надо.
← →
Jeer © (2009-08-10 18:19) [13]
> Пытаюсь разработать программу проектирования чертежей
А как можно чертеж проектировать ? Загадка для меня.
Чертить, рисовать.. - это понятно, но проектировать чертеж ?
> > дальнейшая разработка бессмысленна
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2009.10.11;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.005 c