Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Программирование игр для мобильных телефонов > MidletPascal > Основной форум

Основной форум Сюда все проблемы связанные с программированием.

Ответ
 
Опции темы
Старый 11.12.2009, 18:54   #1
VotapilD
Оператор ЭВМ
 
Регистрация: 07.12.2009
Адрес: Мытищи
Сообщений: 44
Написано 6 полезных сообщений
(для 6 пользователей)
Сообщение Вектора и сейф экрана...

Какой процедурой можно рисовать вектор, зная координаты 3 точек: предпредпоследней, предпоследней, последней.
И востановку рисунка, после рисования менюшки? Может библиотечка какая...
(Offline)
 
Ответить с цитированием
Старый 11.12.2009, 19:27   #2
ViNT
Модератор
 
Регистрация: 03.04.2007
Сообщений: 2,252
Написано 597 полезных сообщений
(для 817 пользователей)
Ответ: Вектора и сейф экрана...

Линии только по двум точкам можно рисовать (начало - конец).
Восстановить содержимое экрана можно, сохранив его предварительно функцией ImageFromCanvas.
(Offline)
 
Ответить с цитированием
Старый 12.12.2009, 12:58   #3
odd
Мастер
 
Аватар для odd
 
Регистрация: 06.09.2007
Адрес: Донецк, ДНР
Сообщений: 1,023
Написано 298 полезных сообщений
(для 713 пользователей)
Ответ: Вектора и сейф экрана...

Вы имеете ввиду кривую Безье?
Попробую поискать алгоритм в нете.
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
VotapilD (22.12.2009)
Старый 12.12.2009, 20:52   #4
VotapilD
Оператор ЭВМ
 
Регистрация: 07.12.2009
Адрес: Мытищи
Сообщений: 44
Написано 6 полезных сообщений
(для 6 пользователей)
Ответ: Вектора и сейф экрана...

Я пытался цыклом... Была идея реализовать с помощью xspead yspead, но ненаю с чего начать...
(Offline)
 
Ответить с цитированием
Старый 14.12.2009, 23:06   #5
VotapilD
Оператор ЭВМ
 
Регистрация: 07.12.2009
Адрес: Мытищи
Сообщений: 44
Написано 6 полезных сообщений
(для 6 пользователей)
Ответ: Вектора и сейф экрана...

Так, идей ни у кого нет... Я долго думал))) Но не смог придумать ничего лучше, чем "Надо создать библиотеку для работы с векторами..."
Может всё таки цикл подскажете?)))
(Offline)
 
Ответить с цитированием
Старый 14.12.2009, 23:35   #6
DIMMON4IK
Знающий
 
Аватар для DIMMON4IK
 
Регистрация: 21.07.2009
Адрес: Украина
Сообщений: 219
Написано 44 полезных сообщений
(для 78 пользователей)
Ответ: Вектора и сейф экрана...

Тебе не это нужно?
__________________


(Offline)
 
Ответить с цитированием
Старый 15.12.2009, 19:21   #7
VotapilD
Оператор ЭВМ
 
Регистрация: 07.12.2009
Адрес: Мытищи
Сообщений: 44
Написано 6 полезных сообщений
(для 6 пользователей)
Ответ: Вектора и сейф экрана...

Да, забыл отписаться, что нашёл. (Спасибо ViNTу) Просто она позже появилась)
(Offline)
 
Ответить с цитированием
Старый 15.12.2009, 22:38   #8
VotapilD
Оператор ЭВМ
 
Регистрация: 07.12.2009
Адрес: Мытищи
Сообщений: 44
Написано 6 полезных сообщений
(для 6 пользователей)
Плохо Ответ: Вектора и сейф экрана...

Program Nya;
Uses    sensor,bezier;
Var    xf, yf, xs, ys, xb, yb, sx, xy:integer; 
state, i, j, dre: integer;
//
//Безье изгиб
Procedure MakeBpoints;
Begin
	xb:=xs-(xf-xs)/2;
	yb:=ys-(yf-ys)/2;
	xf:=xs;
	yf:=ys;
        xs:=pointer_dragged_x;
	ys:=pointer_dragged_y;
	DrawBezier(xf, yf, xb, yb, xs, ys);
End;
//
Begin
    sensor.init; // Инициализация библиотеки
    repeat
        state:=pointer_state; // Читаем состояние сенсора
        MakeBpoints;//Просчт точки Безье
	 // Рисуем нормали
	SetColor(200, 200, 200);
	DrawLine(xf, yf, xb, yb);
	DrawLine(xb, yb, xs, ys);
	SetColor(0, 0, 0);
	//
        Repaint; // Отрисовка линии 
				delay(20);
    until false;
В чем ошибка? Телефон всё время рисует из точки 0;0 ((
Philips X800
(Offline)
 
Ответить с цитированием
Старый 15.12.2009, 23:29   #9
Bruteo
ПроЭктировщик
 
Регистрация: 31.01.2007
Сообщений: 128
Написано 20 полезных сообщений
(для 43 пользователей)
Ответ: Вектора и сейф экрана...

Сообщение от VotapilD Посмотреть сообщение
В чем ошибка? Телефон всё время рисует из точки 0;0 ((
Philips X800
Думаю, нужно смотреть в сторону функций для работы с сенсорным экраном. Pointer_pressed_x с последующим сбросом данных библиотеки, возможно, спасёт
(Offline)
 
Ответить с цитированием
Старый 16.12.2009, 00:56   #10
12121
Нуждающийся
 
Регистрация: 26.12.2008
Сообщений: 57
Написано 22 полезных сообщений
(для 28 пользователей)
Ответ: Вектора и сейф экрана...

Попробуй вызывать MakeBpoints; только если есть прикосновение к экрану.
А так xs:=pointer_dragged_x;
ys:=pointer_dragged_y; наверно нули возвращают.
(Offline)
 
Ответить с цитированием
Старый 21.12.2009, 01:50   #11
VotapilD
Оператор ЭВМ
 
Регистрация: 07.12.2009
Адрес: Мытищи
Сообщений: 44
Написано 6 полезных сообщений
(для 6 пользователей)
Ответ: Вектора и сейф экрана...

/me ОЧЕНЬ ЗЛОЙ!
Такую простую вещь и не могу сделать(
Плиз, ребята, хелп^^
Program Pointer;
Uses    sensor,bezier;//uses
Var    xf, yf, xs, ys, xb, yb, sx, xy,nya, i, j, dre, xx, yy, state, key: integer;


//Безье изгиб
Procedure MakeBpoints;
Begin
 state:=pointer_state; // Читаем состояние сенсора
 if state=1 then begin
	if (xf=0) and (yf=0) then begin
	 xf:=pointer_dragged_x; 
	 yf:=pointer_dragged_y;
	 nya:=1;
  end;
  else begin
	xb:=xs-(xf-xs)/2;
	yb:=ys-(yf-ys)/2;	
	xf:=xs;
	yf:=ys;
 end;
  xs:=pointer_dragged_x;
  ys:=pointer_dragged_y;
	if nya=1 then begin
	 xb:=xf-(xf-xs)/2;
	 yb:=yf-(yf-ys)/2;	
	 nya:=0;
  end;
	DrawBezier(xf, yf, xb, yb, xs, ys);
 end;
 else begin
	xf:=0;//x First
	yf:=0;
	xb:=0;//x Bezie
	yb:=0;
	xs:=0;//x Second
	ys:=0;
 end;
End;
//



//           >=<=<=!=ИГРА=!=>=>=<
Begin
sensor.init; // Инициализация библиотеки
repeat
	 MakeBpoints;
	 Repaint; // Отрисовка линии 
until false;
End.
Вектор не прерывается, ведёт себя странно при рисовании(не так искривляется (по оси x, по крайней мере))
(Offline)
 
Ответить с цитированием
Старый 22.12.2009, 16:26   #12
VotapilD
Оператор ЭВМ
 
Регистрация: 07.12.2009
Адрес: Мытищи
Сообщений: 44
Написано 6 полезных сообщений
(для 6 пользователей)
Ответ: Вектора и сейф экрана...

Нашёл) Там функции типа xs:=pointer_dragged_x; ys:=pointer_dragged_y; при state=1 возвращают старые значения...
(Offline)
 
Ответить с цитированием
Старый 22.12.2009, 23:21   #13
VotapilD
Оператор ЭВМ
 
Регистрация: 07.12.2009
Адрес: Мытищи
Сообщений: 44
Написано 6 полезных сообщений
(для 6 пользователей)
Ответ: Вектора и сейф экрана...

Всё супер! Тема закрыта! Всем спасибо!(Кому надо, ставил плюсы) Буду продолжать разработку проги, но дальше уже мелочи, но приятные)
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Затемнение экрана SubZer0 Программирование 4 03.08.2014 21:35
Lib_rc: поворот экрана Piligrim Библиотеки 22 06.04.2010 22:58
Очистка экрана Winner Основной форум 7 14.02.2010 00:08
Центр отрезка (вектора) Horror Математика 1 07.10.2007 01:32
Эффект затухания экрана c0mrad 2D-программирование 14 27.01.2007 01:50


Часовой пояс GMT +4, время: 18:56.


vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com