:: Игры Разума
Оптические иллюзии на Фокпсро
Crispy
Автор

Сообщений: 18571
Дата регистрации: 16.05.2005
Попалось в руки поглядеть на разные оптические иллюзии. Некоторые понятное дело требуют довольно сложных картинок. Но есть и такие, что визуально просты до примитива. Однако тем не менее производят впечатление.
Решил ради интереса набросать одну из подобных простеньких иллюзий на фокспро.

Получилось такое:
* Оптическая иллюзия.
* Серые полоски левого столбца кажутся темнее серых полосок правого столбца.
* Тогда как из кода очевидно - что они абсолютно одного цвета.
oForm = CREATEOBJECT("form1")
nTop = 0
WITH oForm
FOR lni=1 TO 28
DO CASE
CASE lni<11
nTop = IIF(nTop=0,12,nTop)
nLeft = 12
nWidth = 355
nColor = RGB(0,0,0)
CASE BETWEEN(lni,11,19)
nTop = IIF(nTop=292,26,nTop)
nLeft = 33
nWidth = 136
nColor = RGB(192,192,192)
OTHERWISE
nTop = IIF(nTop=278,40,nTop)
nLeft = 208
nWidth = 136
nColor = RGB(192,192,192)
ENDCASE
shap = "shap"+LTRIM(STR(lni))
.AddObject(shap,"shape1", nTop, nLeft, nWidth, nColor)
nTop = nTop + 28
ENDFOR
.SetAll('Visible',.T.)
.Show(1)
ENDWITH
*******************
DEFINE CLASS form1 AS form
Height = 290
Width = 390
AutoCenter = .T.
BackColor = RGB(255,255,255)
ENDDEFINE
DEFINE CLASS shape1 AS shape
Height = 13
BorderStyle = 0
PROCEDURE Init
LPARAMETERS nTop, nLeft, nWidth, nColor
WITH this
.Top = nTop
.Left = nLeft
.Width = nWidth
.BackColor = nColor
ENDWITH
ENDPROC
ENDDEFINE
*******************

Возможно у кого-то возникнет желание офоксить и еще какой-нибудь наглядный "оптичский обман здрения"(с) (мультфильм "Волшебное кольцо").


------------------
В действительности все иначе, чем на самом деле.
                                      (Антуан де Сент-Экзюпери)
Ratings: 0 negative/0 positive


Извините, только зарегистрированные пользователи могут оставлять сообщения в этом форуме.

On-line: 2 (Гостей: 2)

© 2000-2024 Fox Club 
Яндекс.Метрика