Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2002.02.18;
Скачать: [xml.tar.bz2];

Вниз

HELP. Алгоритм.   Найти похожие ветки 

 
novomod   (2002-01-31 14:24) [0]

Движется два объекта, один горизонтально, а другой вертикально.
Условие IF (ОБЪЕКТ1)TOP= (ОБЪЕКТ2)TOP THEN
IF (ОБЪЕКТ1)LEFT=(ОБЪЕКТ2)LEFT THEN BEGIN (......)END;
Нужно задать алгоритм для диапазона left для ОБЪЕКТА1.
Т.е. как бы при "попадание" ОБЪЕКТА1 в площадь ОБЪЕКТА2 происходит определенное действие.
Я же не буду писать следующий код:
IF (ОБЪЕКТ1)TOP= (ОБЪЕКТ2)TOP THEN
IF (ОБЪЕКТ1)LEFT=(ОБЪЕКТ2)LEFT THEN BEGIN (......)END;
IF (ОБЪЕКТ1)TOP= (ОБЪЕКТ2)TOP THEN
IF (ОБЪЕКТ1)LEFT=(ОБЪЕКТ2)LEFT+1 THEN BEGIN (......)END;
IF (ОБЪЕКТ1)TOP= (ОБЪЕКТ2)TOP THEN
IF (ОБЪЕКТ1)LEFT=(ОБЪЕКТ2)LEFT+2 THEN BEGIN (......)END;
IF (ОБЪЕКТ1)TOP= (ОБЪЕКТ2)TOP THEN
IF (ОБЪЕКТ1)LEFT=(ОБЪЕКТ2)LEFT+3 THEN BEGIN (......)END;и т.д.
(если мне нужно прописать диапазон от 1до 1000) пару десятков таких строк я бы написал, но......
Кто конечно понял чего я хочу и ответил по теме -!!!!!СПАСИБО!!!!


 
MBo   (2002-01-31 14:41) [1]

Тяжело понять смысл вопроса...
p:tpoint;
r:trect;

p.x:=Obj1.Left;
p.y:=Obj1.Top;
r:=Obj2.BoundsRect;
if PtInRect(r,p) then ...


 
novomod   (2002-01-31 15:04) [2]

Благодарю,попробую!


 
Юрий Зотов   (2002-01-31 15:16) [3]

Возможно, так:

var
R: TRect;

if IntersectRect(R, Obj1.BoundsRect, Obj2.BoundsRect)
and (R = Ob2.BoundsRect) then ...

Посмотрите также UnionRect.


 
novomod   (2002-02-01 18:06) [4]

Юрий Зотов.
Спасибо. Функциклирует!
Только не
if IntersectRect(R, Obj1.BoundsRect, Obj2.BoundsRect)
and (R = Ob2.BoundsRect) then ...
А if IntersectRect(R, Obj1.BoundsRect, Obj2.BoundsRect)then...
Я разобрался ОК!




Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2002.02.18;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.004 c
6-57174
Almaz
2001-11-27 01:16
2002.02.18
Создание сети через dial-up


1-57154
Ptr
2002-02-04 10:53
2002.02.18
Вызов фенции


1-57059
Ihor
2002-02-04 15:54
2002.02.18
Регулярные выражения


3-56995
vopros
2002-01-22 15:03
2002.02.18
Опять paradox. опять индексы...Теперь пишет Index is ReadOnly


3-57012
Savage
2002-01-24 15:44
2002.02.18
MS SQL Server - запись файла в базу





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский