Форум: "Прочее";
Текущий архив: 2013.03.22;
Скачать: [xml.tar.bz2];
ВнизКакая функция смещает вывод Canvas? Найти похожие ветки
← →
Roman_man (2012-09-15 17:49) [0]Т.е. рисуем прямоугольник в позиции 30, 30.
Потом смещаем. Рисуем в той же позиции, но прямоугольник будет смещен по Х на 100 пикселей.
Какая функция смещает вывод Canvas?
← →
alexdn © (2012-09-15 18:13) [1]image1.Canvas.MoveTo(30,30);
image1.Canvas.LineTo(30+100,30);
← →
Лакки (2012-09-15 18:13) [2]Coordinate Space and Transformation Functions
http://msdn.microsoft.com/en-us/library/windows/desktop/dd183476%28v=vs.85%29.aspx
А Гугл что, на профилактике сегодня?
← →
ZAQ (2012-09-15 19:32) [3]
> alexdn © (15.09.12 18:13) [1]
так вот как рисует вагонка... :)))
← →
Джобер (2012-09-15 19:36) [4]
> Какая функция смещает вывод Canvas?
Функция сложения.
← →
xayam © (2012-09-16 20:30) [5]
> MoveTo
сегодня уже короче придумали - просто "M"
← →
alexdn © (2012-09-16 21:20) [6]> Джобер (15.09.12 19:36) [4]
>
> > Какая функция смещает вывод Canvas?
>
> Функция сложения.
Мне кто нибудь может пример привести? смещается весь canvas? что то я не вьеду.
← →
antonn © (2012-09-16 21:23) [7]просто они считают вопрошающих с таким вопросом тупее себя, и думают раз он сам выводит - то пусть при выводе координату увеличивает.
← →
alexdn © (2012-09-16 21:45) [8]> antonn © (16.09.12 21:23) [7]
так всё таки Coordinate Space and Transformation Functions, разве они могут только часть canvas переместить? или это что то вроде репликации? мне лично кажется что image1.Canvas.LineTo(х+100,30); надёжнее.
← →
antonn © (2012-09-16 22:03) [9]
> разве они могут только часть canvas переместить?
а если нужно заставить вести вывод по смещенным координатам, а функция выводит их по своим?
SomeClass.DrawAndClick(x,y:integer; canvas:tcanvas)
принимает клик по координатам и производит рисование на канве. Хочется чтобы рисование на канве происходило не там, куда хочет рисовать процедура. А она в классе, который в DCU. Ну и что ты тут железно поменяешь?
← →
alexdn © (2012-09-16 22:21) [10]> antonn © (16.09.12 22:03) [9]
я скорее спрашивал происходит реплекация, т.е. смещение? или как? мне б хоть кто строчку кода сбросил, хоть по вопросу топистартера..
← →
sniknik © (2012-09-16 22:31) [11]var
MyRgn: HRGN;
begin
MyRgn := CreateRectRgn(10,10,100,100);
SelectClipRgn(Image1.Canvas.Handle, MyRgn);
Image1.Canvas.Pen.Color:= clRed;
Image1.Canvas.MoveTo(0, 0);
Image1.Canvas.LineTo(50, 50);
SelectClipRgn(Image1.Canvas.Handle, 0);
DeleteObject(MyRgn);
end;
← →
Германн © (2012-09-17 02:25) [12]
> antonn © (16.09.12 21:23) [7]
>
> просто они считают вопрошающих с таким вопросом тупее себя,
> и думают раз он сам выводит - то пусть при выводе координату
> увеличивает.
>
А дать ответ автору на этом форуме что тебе мешает?
← →
alexdn © (2012-09-17 07:52) [13]> sniknik © (16.09.12 22:31) [11]
ну вообщем так я и думал, идёт работа с частью/всем изображением, а если нужно например только одну линию перенести, а всё остальное оставить?.. тут без LineTo(х+100,30) не обойдёшься..
← →
Ega23 © (2012-09-17 08:08) [14]
> принимает клик по координатам и производит рисование на
> канве. Хочется чтобы рисование на канве происходило не там,
> куда хочет рисовать процедура. А она в классе, который
> в DCU. Ну и что ты тут железно поменяешь?
Выкину dcu на север и в горы и напишу свой собственный SomeClass, с преферансом и студентками.
← →
Inovet © (2012-09-17 08:24) [15]> [13] alexdn © (17.09.12 07:52)
Так это же не в векторах сохраняется, а в растре. Ещё бы Виндоус запоминала все почеркушки приложения, ага.
← →
sniknik © (2012-09-17 10:01) [16]> а если нужно заставить вести вывод по смещенным координатам, а функция выводит их по своим?
> SomeClass.DrawAndClick(x,y:integer; canvas:tcanvas)
> ну вообщем так я и думал, идёт работа с частью/всем изображением, а если нужно например только одну линию перенести, а всё остальное оставить?.. тут без LineTo(х+100,30) не обойдёшься..
как вас понимать Саид?
← →
antonn © (2012-09-17 12:07) [17]
> А дать ответ автору на этом форуме что тебе мешает?
это не тематический форум
> Ega23 © (17.09.12 08:08) [14]
>
> Выкину dcu
выкидывай, мне все равно
← →
Ega23 © (2012-09-17 12:35) [18]
> выкидывай, мне все равно
Ты не понял. Если у тебя есть некий код в виде dcu, который делает "что-то там", а тебе нужно делать "что-то там другое", то не имеет смысла допиливать напильником.
Тем более - dcu.
← →
antonn © (2012-09-17 12:43) [19]Я, собственно, об этом и говорю - что не весь код в своем приложении можно отредактировать, соответственно советы типа "прибавляй координату" смотрятся глупо (а то автор не догадался бы...).
← →
Студент (2012-09-17 15:13) [20]Может что такое надо автору?(*писалось по памяти нигде не компилировалось и не проверялось*)
var
bmp1,bmp2:TBitmap;
procedure form1.init();
begin
bmp1 := TBitmap.create(nil);
bmp2 := TBitmap.create(nil);
end;
procedure form1.destroy;
begin
bmp1.free();
bmp2.free();
inherited;
end;
procedure form1.timer1ontimer(sender:TObject);
var
x,y, x1,y1:integer;
begin
x := Random(400);
y := Random(400);
x1 := x + 50;
y1 := y + 50;
if form1.tag = 0 then
begin
bmp1.canvas.moveto(x,y);
bmp1.canvas.LineTo(x1,y1);
form1.tag :=1;
image1.canvas.draw(0,0,bmp2);
end
else
begin
bmp2.canvas.moveto(x,y);
bmp2.canvas.LineTo(x1,y1);
form1.tag :=0;
image1.canvas.draw(0,0,bmp1);
end;
end;
Страницы: 1 вся ветка
Форум: "Прочее";
Текущий архив: 2013.03.22;
Скачать: [xml.tar.bz2];
Память: 0.49 MB
Время: 0.063 c