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

Вниз

Помогите поставить точку на координатной плоскости   Найти похожие ветки 

 
NaRuTo   (2007-11-25 10:38) [0]

Я создаю программу, которая умеет ставить точки на координатной плоскости, но у меня за единичный отрезок 14 px,  если я хочу поставить точку, то мне приходится прицеливаться точно в точку.
Как мне сделать так чтобы, если курсор направить ближе к точке, то точка будет ставится в этой точке?


 
{RASkov}   (2007-11-25 11:24) [1]

> [0] NaRuTo   (25.11.07 10:38)

Зачем этот вопрос задавать в конфе по компонентам?

Вот.... так.... попробуй:

const CELLSIZE = 25;
     HALFCELLSIZE = CELLSIZE div 2;

implementation

{$R *.dfm}

procedure CorrectXY(const FromX, FromY: Integer; var ToX, ToY: Integer; const Diag: Boolean=False);
var CorrectX, CorrectY: Integer;
begin
 CorrectX:=(FromX mod CELLSIZE);
 CorrectY:=(FromY mod CELLSIZE);
 ToX:=FromX-CorrectX; if CorrectX>HALFCELLSIZE then INC(ToX, CELLSIZE);
 ToY:=FromY-CorrectY; if CorrectY>HALFCELLSIZE then INC(ToY, CELLSIZE);
 if Diag then if ABS(XCen-ToX) > ABS(YCen-ToY) then ToY:=YCen else ToX:=XCen;
end;


 
{RASkov}   (2007-11-25 11:28) [2]

CELLSIZE - выставь свое значение... т.е. 14.
параметр const Diag тебе наверное не нужен, я просто из своего модуля скопировал кусок "не глядя"....

ЗЫ Эх.... думаю ветку перенесут в "начинающие"....


 
Zeqfreed ©   (2007-11-25 12:05) [3]

x" = (x + 7) / 14 ?



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

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

Наверх




Память: 0.44 MB
Время: 0.057 c
1-1191232247
Yurikon
2007-10-01 13:50
2007.12.23
Директивы компилятору


15-1195735621
Bruther
2007-11-22 15:47
2007.12.23
Как сделать чтобы программа работала


2-1196165148
ImA
2007-11-27 15:05
2007.12.23
Paradox в меня не понимать =)


15-1195968708
PZ
2007-11-25 08:31
2007.12.23
«Шедевры Метража»


15-1195650597
Cyrax
2007-11-21 16:09
2007.12.23
PHP5: Как считать без "бонусов" массив из переменной $_REQUEST





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский