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

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

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

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 21.01.2011, 17:39   #1
jaxik
Пользователь
 
Регистрация: 12.01.2008
Сообщений: 17
По умолчанию Масштабирование суммы

Здравствуйте уважаемые программисты, необходимо сделать масштабирование плюса, достаточно даже только на увеличение. Проблема в том, что две линии масштабируются не совсем корректно... т.е одна больше увеличивается по x, другая по y.

Цитата:
var
a,x1,y1,x2,y2,t,b:integer;
c:real;
x3,y3,x4,y4:integer;
d,n:integer;
begin
c:=strtoint(edit1.text);
x1:=100;
y1:=140;
x2:=100;
y2:=100;
With image1.Canvas do Begin
Brush.Color:=clWhite;
Pen.Color:=clBlack;
a:=y1-x1;
a:=floor(a*(c/100));
y1:=y1+a;
b:=x1-y1;
b:=floor(b*(c/100));
x1:=x1+b;
image1.Canvas.MoveTo(x1,x2);
image1.Canvas.LineTo(y1,y2);

x3:=120;
y3:=120;
x4:=120;
y4:=80;
With image1.Canvas do Begin
Brush.Color:=clWhite;
Pen.Color:=clBlack;
d:=y4-x4;
d:=floor(d*(c/100));
y4:=y4+d;
n:=x4-y4;
n:=floor(n*(c/100));
x4:=x3+n;
image1.Canvas.MoveTo(x3,x4);
image1.Canvas.LineTo(y3,y4);

end;
end;
end;
jaxik вне форума Ответить с цитированием
Старый 21.01.2011, 21:44   #2
Прик
Форумчанин
 
Регистрация: 08.09.2010
Сообщений: 880
По умолчанию

Код:
var
  x, y, c, L : integer;
begin
  c:=strtoint(edit1.text);
  L := 100;   //начальная длина линий креста
  x := 140;   //x-вая координата центра креста
  y := 120;   //y-вая координата
  with image1.Canvas do begin
    Brush.Color:=clWhite;
    Pen.Color:=clBlack;
    L := round(L * (c/100));

    MoveTo(x - L div 2, y);
    LineTo(x + L div 2, y);
    MoveTo(x, y - L div 2);
    LineTo(x, y + L div 2);
  end;
end;

Последний раз редактировалось Прик; 21.01.2011 в 21:48.
Прик вне форума Ответить с цитированием
Старый 21.01.2011, 21:47   #3
_Engine_
Форумчанин
 
Регистрация: 29.06.2008
Сообщений: 603
По умолчанию

А толщина линий?
_Engine_ вне форума Ответить с цитированием
Старый 21.01.2011, 22:18   #4
SNUPY
Форумчанин
 
Регистрация: 15.02.2008
Сообщений: 621
По умолчанию

http://programmersforum.ru/showthread.php?t=133862
Помог? Ну так нажми на весы!
SNUPY вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Масштабирование суммы jaxik Общие вопросы Delphi 1 21.01.2011 20:11
Масштабирование Град Microsoft Office Excel 6 24.10.2008 09:23
масштабирование Alex_Pro Общие вопросы .NET 0 21.05.2008 18:21
масштабирование lenivec Общие вопросы Delphi 1 23.02.2008 07:07
Масштабирование Формы SERG1980 Общие вопросы Delphi 1 28.03.2007 12:28