Вверх ↑
Этот топик читают: Гость
Ответов: 787
Рейтинг: 168
#31: 2023-08-19 18:22:07 ЛС | профиль | цитата
Вот мой калейдоскоп на скорую руку.
https://forum.hiasm.com/getfile/39630

Редактировалось 1 раз(а), последний 2023-08-19 18:32:37
карма: 15

0
Ответов: 1291
Рейтинг: 47
#32: 2023-08-20 01:37:18 ЛС | профиль | цитата
Gunta, круто, спасибо, я минуты 2 смотрел завороженный) Даже не поймешь сразу сколько там отражений.. Если ты не против я твой алгоритм отражений добавлю в свой калейдоскоп, выглядит интересней гораздо. Я в своем кстати обратную связь применял, в результате чего отражения могли зайти в тупик.

Редактировалось 2 раз(а), последний 2023-08-20 01:38:00
карма: 3
Hiasm + Flowstone + CopperCube + GoDot + JS
0
Ответов: 787
Рейтинг: 168
#33: 2023-08-20 07:51:36 ЛС | профиль | цитата
Aziz писал(а):
Даже не поймешь сразу сколько там отражений..

Два зеркала, 60 градусов, 6 изображений (5 отражений)
https://forum.hiasm.com/getfile/39631
карма: 15

0
Ответов: 1291
Рейтинг: 47
#34: 2023-08-20 11:23:54 ЛС | профиль | цитата
Gunta, здорово. Как бы еще добавить рандома туда, ведь это основная сила калейдоскопа. Я так понял рандом у тебя идет статично от загруженной картинки. Вот бы не меняя ее, генерить его в программе. Хотя выражение "генерить рандом" некорректно, скорее симулировать или псевдорандом)
карма: 3
Hiasm + Flowstone + CopperCube + GoDot + JS
0
Ответов: 495
Рейтинг: 163
#35: 2023-08-20 16:28:41 ЛС | профиль | цитата
Aziz, мод Калейдоскоп 3 от Gunta, картинку вставить отдельно т.к. при отправке большой размер.
При клике мыши в разное место картинки - меняет вид
Двойной клик - выход
картинка для вставки.jpg
мод

Add(MainForm,2953706,77,21)
{
Height=400
Position=1
Point(Handle)
link(onCreate,3242294:doEvent1,[])
}
Add(Img_UseFlip,6086006,476,119)
{
}
Add(Img_UseRotate,12298025,532,119)
{
Angle=60
}
Add(Bitmap,5760383,273,175)
{
@Hint=#17:Вставить картинку|
AddHint(-154,-5,111,13,@Hint)
}
Add(PaintBox,5978430,140,231)
{
Width=500
Height=500
Align=5
Point(onMouseDown)
Point(MouseX)
Point(MouseY)
Point(onDblClick)
link(onBeforeDraw,13843299:doDraw,[])
link(onMouseDown,5263590:doEvent1,[])
link(onDblClick,2953706:doClose,[(191,251)(191,205)(60,205)(60,48)])
}
Add(Img_Bmp,21455,462,231)
{
Point(Transform)
link(onDraw,16119310:doDraw,[])
link(Bitmap,16599006:Var2,[])
link(Transform,13995889:Transform,[])
}
Add(Img_UseOffset,13995889,476,168)
{
X=150
Y=0
link(AddTransform,6086006:Transform,[])
}
Add(Img_Bmp,16119310,518,231)
{
Point(Transform)
link(onDraw,5266569:doCopy,[])
link(Bitmap,9728234:Var1,[(524,215)])
link(SourceBitmap,16599006:Var3,[(531,208)])
link(Transform,12298025:Transform,[])
}
Add(Img_Copy,5266569,581,231)
{
Width=150
Height=300
link(onCopy,13663903:doDraw,[])
link(Source,9728234:Var2,[])
}
Add(Bitmap,7115792,581,21)
{
HWidth=300
HHeight=300
FillColor=-16777201
Point(doCreate)
}
Add(Img_UseFlip,11503516,644,119)
{
}
Add(Img_UseRotate,1015864,721,119)
{
Angle=60
}
Add(Img_Bmp,13663903,630,231)
{
Point(Transform)
link(onDraw,1080091:doDraw,[])
link(Bitmap,6800049:Var2,[])
link(Transform,7900911:Transform,[])
}
Add(Img_UseOffset,7900911,644,168)
{
X=150
Y=0
link(AddTransform,11503516:Transform,[])
}
Add(Img_Bmp,1080091,707,231)
{
Point(Transform)
link(onDraw,11275472:doCopy,[])
link(Bitmap,13635533:Var2,[])
link(SourceBitmap,6800049:Var3,[(720,215)])
link(Transform,1015864:Transform,[])
}
Add(Img_Copy,10818205,413,231)
{
Width=150
Height=300
link(onCopy,21455:doDraw,[])
link(Source,8852339:Var2,[])
}
Add(GetDataEx,8852339,413,203)
{
link(Data,11854815:Bitmap,[])
}
Add(GetDataEx,16599006,462,203)
{
Angle=3
link(Data,8852339:Var3,[])
}
Add(GetDataEx,9728234,581,210)
{
link(Data,7115792:Bitmap,[])
}
Add(GetDataEx,6800049,630,210)
{
Angle=3
link(Data,9728234:Var3,[])
}
Add(Img_Copy,11275472,763,231)
{
Width=150
Height=300
link(onCopy,6360327:doDraw,[])
link(Source,1942347:Var2,[])
}
Add(Img_UseFlip,16622997,833,119)
{
}
Add(Img_Bmp,6360327,819,231)
{
Point(Transform)
link(onDraw,1968501:doDraw,[])
link(Bitmap,13283937:Var2,[])
link(Transform,3680919:Transform,[])
}
Add(Img_UseOffset,3680919,833,168)
{
X=150
Y=0
link(AddTransform,16622997:Transform,[])
}
Add(GetDataEx,1942347,763,203)
{
Angle=3
link(Data,13635533:Var3,[])
}
Add(GetDataEx,13635533,707,203)
{
Angle=3
link(Data,5978430:Bitmap,[(678,208)(678,338)(146,338)])
}
Add(CounterEx,9911111,77,231)
{
Max=359
Point(onThroughMax)
Point(onThroughMin)
Point(doPrev)
Point(doStep)
Point(doMax)
link(onNext,5978430:doRefresh,[])
}
Add(Timer,4020990,28,231)
{
Interval=33
Point(doInterval)
link(onTimer,9911111:doNext,[])
}
Add(Img_UseRotate,3452604,70,280)
{
link(Angle,9911111:Count,[])
}
Add(Bitmap,11854815,413,105)
{
HWidth=300
HHeight=300
FillColor=-16777201
Point(doCreate)
}
Add(Hub,3242294,259,35)
{
OutCount=5
link(onEvent1,7115792:doCreate,[])
link(onEvent2,11854815:doCreate,[(346,48)(346,125)])
link(onEvent3,12383141:doCreate,[(332,55)(332,160)])
link(onEvent4,13090529:In,[])
link(onEvent5,13189779:doCreateElliptic,[(284,69)(284,96)(100,96)(100,118)])
}
Add(Img_Bmp,13843299,357,231)
{
Point(Transform)
link(onDraw,10818205:doCopy,[])
link(Bitmap,8852339:Var1,[(363,208)])
link(SourceBitmap,9558740:Var2,[])
link(Transform,3452604:Transform,[(377,215)(126,215)(126,337)(76,337)])
}
Add(RGN_SetToWindow,4847611,175,112)
{
link(Handle,8624422:Var2,[])
link(Region,13189779:Result,[(188,99)(159,99)(159,156)(118,156)])
}
Add(MoveWindow,11326587,266,112)
{
link(Handle,8624422:Var3,[(272,79)])
}
Add(GetDataEx,8624422,175,74)
{
Angle=3
link(Data,2953706:Handle,[(83,79)])
}
Add(RGN_Elliptic,13189779,112,112)
{
Point1=2293772
Point2=19530026
Point2AsOffset=0
link(onCreateElliptic,4847611:doSetRegion,[])
}
Add(Img_Ellipse,1968501,875,231)
{
Point1=458759
Point2=19464489
Size=7
Color=8388608
link(Bitmap,13283937:Var3,[(881,208)])
}
Add(GetDataEx,13283937,819,203)
{
Angle=3
link(Data,1942347:Var3,[])
}
Add(Img_Copy,4627948,273,294)
{
X=100
Y=100
Width=300
Height=300
link(onCopy,11088325:doDraw,[])
link(Source,5760383:Bitmap,[])
link(X,5978430:MouseX,[(286,278)(153,278)])
link(Y,5978430:MouseY,[(293,272)(160,272)])
}
Add(Bitmap,12383141,364,140)
{
HWidth=300
HHeight=300
FillColor=-16777201
Point(doCreate)
}
Add(Hub,5263590,224,238)
{
link(onEvent1,16267611:doWork1,[(259,244)])
link(onEvent2,11326587:doMove,[(252,251)(252,118)])
}
Add(Img_Bmp,11088325,322,294)
{
Point(Transform)
link(Bitmap,9558740:Var1,[(328,187)])
}
Add(GetDataEx,9558740,364,182)
{
link(Data,12383141:Bitmap,[])
}
Add(LineBreak,14373332,217,294)
{
link(Out,16267611:doWork2,[])
Primary=[13090529,77,-238]
}
Add(HubEx,16267611,255,294)
{
link(onEvent,4627948:doCopy,[])
}


Редактировалось 1 раз(а), последний 2023-08-20 16:33:02
карма: 4

0
Ответов: 1291
Рейтинг: 47
#36: 2023-08-21 01:26:41 ЛС | профиль | цитата
tig-rrr, красота, спасибо!) Кстати, мой первый калейдоскоп мне помню в детстве наскоро изготовил мой отец-художник Чингиз Азизов. Помню, как он взял отрезал 3 узких прямоугольника из стекла, затем сложил их друг с другом треугольником как зеркала, затем вырезал 3 кружочка, один из которых наждачкой сделал матовым. Затем молотком побил стеклышек и покрасил их акварельной вроде краской в разные цвета, насыпал между 2 задними стеклами круглыми и все это обернул в коричневый тонкий картон, проклеил ПВА и перемотал зеленой ниткой и отдал мне. Я только под конец понял что это такое он сделал)) И все работало!
карма: 3
Hiasm + Flowstone + CopperCube + GoDot + JS
0
36
Сообщение
...
Прикрепленные файлы
(файлы не залиты)