24.10.2012, 19:10
|
#8
|
ПроЭктировщик
Регистрация: 17.07.2009
Сообщений: 182
Написано 51 полезных сообщений (для 71 пользователей)
|
Ответ: 2d сетка
Ну что ж ,можно праздновать победу . После долгих размышлений (проб и ошибок) ,все-таки нашел решение (правда в правом верхнем и левом нижнем углах ячейки заметно не правильные результаты ,всего несколько пикселов, думаю этим можно пренебречь ) .
Вот выкладываю готовый код:
Graphics 800,600 ,32,2
SetBuffer BackBuffer()
tile_sizeX = 50
tile_sizeY = 30
ClsColor 34 ,139 ,34
While Not KeyHit(1)
Cls
mx# = MouseX() : my# = MouseY()
For y = 1 To 11 ;Step 1
For x# = 1 To 11
px# = ((x-6)*tile_sizeX )+(y*(x-6))
py# = y*tile_sizeY
Color 3 ,35, 3
If x<11
Line 400 + px,py , 400 + ( (x-5)*tile_sizeX )+(y*(x-5)),py
Text 400 +px+20 ,py+5 , Int(x)
EndIf
If y<11
Line 400 + px,py , 400 + ( (x-6)*tile_sizeX )+((y+1)*(x-6)) ,(y+1)*tile_sizeY
Text 400 +px+20 ,py+15 , Int(y)
EndIf
; Plot 400 + px, py
; Text 400 + px ,py , (y*x)
; Text 400 +px ,py , px
Next
Next
ym# = Floor#(my/tile_sizeY )
xm# = Floor#( ( mx-400)/(tile_sizeX+ym+0.5)+6)
Text mx,my-10,Int(xm) +" : "+Int(ym)
Text mx,my,"\"
Text 20,20,"MouseX : "+Int(mx)+" MouseY : "+Int(my)
Text 20,40,"X : "+Int(xm)
Text 20,60,"Y : "+Int(ym)
Flip
Wend
End
возможно кому-нибудь пригодится ...
|
(Offline)
|
|