In case you hadn't heard, all the liberals are leaving Facebook and going to liker.com.
They are having some growing pains, but I think they'll get it worked out.
Printable View
In case you hadn't heard, all the liberals are leaving Facebook and going to liker.com.
They are having some growing pains, but I think they'll get it worked out.
Attachment 56697
This is my latest painting.
Frank Laid Flat
James Lehman 2020
Acrylic on canvas 48x36 inch.
I used LaserBoy in the design process of this piece.
I actually designed the elements back in 1986. I got some isometric ruled graph paper and flipped it over on a tracing table so I could see the lines through the plain white side of the paper. I used a steel ruler and some Sharpie markers to make a set of nine originals and photocopied them 72 times each. I cut them out and glued them together into this:
Attachment 56738
The Visible Portions Of Frank
James Lehman 1986
folded photocopy paper 99x49.5 inch
Attachment 56739
Attachment 56740
Attachment 56741
The piece that I just completed (Frank Laid Flat) is the same 9 elements laid flat with colored backgrounds.
I recreated all of the designs in CAD, saved them as a DXF file, opened that in LaserBoy, exported a high resolution bitmap from LB and colored it in in a raster image editor.
Then I printed exact to scale 2D rulers to lay it out on the canvas.
The solid colors are painted with liquid paint and a brush (inside of masking tape areas) and the black was done all in one shot with flat black spray paint (also with a lot of masking tape).
Attachment 56742
This version of LaserBoy introduces something completely new.
https://laserboy.org/code/LaserBoy_Current.zip
LaserBoy ASCII math forms!
[single frames]
math rhodonea
math epicycloid
math epitrochoid
math hypocycloid
math hypotrochoid
math lissajou
math pendulum
math pendulum_sum
math pendulum_xy
math pendulum_xyz
math harmonograph
math harmonograph_3D
math amplitude_mod
math amplitude_mod_xy
math amplitude_mod_xyz
math frequency_mod
math frequency_mod_xy
math frequency_mod_xyz
[animated frame sets]
math rhodoneas
math epicycloids
math epitrochoids
math hypocycloids
math hypotrochoids
math lissajous
math pendulums
math pendulums_sum
math pendulums_xy
math pendulums_xyz
math harmonographs
math harmonographs_3D
math amplitude_mods
math amplitude_mods_xy
math amplitude_mods_xyz
math frequency_mods
math frequency_mods_xy
math frequency_mods_xyz
Each of these take parameters in a specific order from text and render into LaserBoy frames.
All of the math is done with double float and scaled to 100% of signed short int space.
Animations are written as two sets of identical single forms.
LaserBoy does linear interpolation between them to create all the frames in between.
See:
./LaserBoy/txt/math.txt
To open this file
i to import
4 for txt
math.txt
1 to replace frame set
Each form is a solid color.
For better effect,
g frame to palette trans
up arrow 5 taps to the palette of pure hues.
C (capital) to set all frames to use this palette
^ (shift 6) to span the palette through the vertices of all frames
[Esc] back to main and hit
` ( or ~) to play the frame set
Enjoy!
http://laserboy.org/math.mp4
This is the contents of math.txt. It is only one example of each form.
https://laserboy.org/math.txt
Thanks.
Take a look at math.txt.
It's pretty easy to create some insane abstracts.
If you really want to see something, after you change to the palette of all hues,Code:#
# This file was written by James Lehman.
# creator of LaserBoy,
#
# the free, multiplatform laser display application
# that reads this format.
#
# <james@akrobiz.com>
# Extra Stimulus Inc., Akron, Ohio USA
# http://laserboy.org/
#
# ASCII format version: LaserBoy-txt-07-01-2020
#
####################################################################################################
####################################################################################################
#
# Copy the following header for txt files for version: LaserBoy-txt-07-01-2020
#
####################################################################################################
#
# pendulum position P1(t) =
# P1.amplitude * sin(t * P1.frequency + P1.phase) * e^(-P1.damping * t) + P1.offset
#
# frequency_mod P1(t) ~~ P2(t) =
# P1.amplitude * sin(t * P1.frequency * P2(t) + P1.phase) * e^(-P1.damping * t) + P1.offset
#
# In each form, if(iterations == -1)
# iterations = "math iterations ???"
math iterations 200
#
# In each form, if(frames == -1)
# frames = "math frames ???"
math frames 4
#
# phase is in radians, degrees, 0.0 to 1.0
# p = phase * (two_pi / one_rotation);
#math one_rotation 6.28318530718
math one_rotation 360.0
#math one_rotation 1.0
#
# duration is orbiting the unit circle (time).
# d = duration * (two_pi / one_period);
#math one_period 6.28318530718
math one_period 1.0
#
####################################################################################################
####################################################################################################
math one_rotation 360.0
math one_period 1.0
math iterations 2400
math frames 100
#----------------------------------------------
# single frame forms
#----------------------------------------------
#----------------------------------------------
# https://en.wikipedia.org/wiki/Rhodonea
math rhodonea 255 0 0
# radius pedals_numerator pedals_denominator
1.0 5.0 7.0
# start duration iterations
0.0 3.5 -1
#----------------------------------------------
# https://en.wikipedia.org/wiki/Epicycloid
math epicycloid 255 255 0
# fixed_radius roller_radius
3.0 13.0
# start duration iterations
0.0 13.0 -1
#----------------------------------------------
# https://en.wikipedia.org/wiki/Epitrochoid
math epitrochoid 255 0 127
# fixed_radius roller_radius roller_offset
3.0 4.0 6.0
# start duration iterations
0.0 4.0 -1
#----------------------------------------------
# https://en.wikipedia.org/wiki/Hypocycloid
math hypocycloid 0 255 255
# fixed_radius roller_radius
12.0 5.0
# start duration iterations
0.0 5.0 -1
#----------------------------------------------
# https://en.wikipedia.org/wiki/Hypotrochoid
math hypotrochoid 127 0 127
# fixed_radius roller_radius roller_offset
12.0 5.0 15.0
# start duration iterations
0.0 5.0 -1
#----------------------------------------------
# https://en.wikipedia.org/wiki/Lissajous_curve
math lissajou 0 0 255
# amplitude frequency phase
1.0 1.0 0.0
1.0 1.0 90.0
# duration iterations
1.0 -1
#----------------------------------------------
math pendulum 255 255 255
# x(t) = t
# y(t) = P1(t)
# amplitude frequency phase damping
1.0 1.0 0.0 0.0
# duration iterations
1.0 -1
#----------------------------------------------
math pendulum_sum 0 255 0
# x(t) = t
# y(t) = P1(t) + P2(t)
# amplitude frequency phase damping
1.0 1.0 0.0 0.0
0.5 10.0 0.0 0.0
# duration iterations
1.0 -1
#----------------------------------------------
math pendulum_xy 0 0 255
# x(t) = P1(t)
# y(t) = P2(t)
# amplitude frequency phase damping offset
1.0 2.05 120.0 0.02 0.0
1.0 1.0 12.0 0.01 0.0
# duration iterations
17.0 -1
#----------------------------------------------
math pendulum_xyz 128 0 128
# x(t) = P1(t)
# y(t) = P2(t)
# z(t) = P3(t)
# amplitude frequency phase damping offset
1.0 30.1 0.0 0.22 0.0
1.0 20.0 120.0 0.05 0.0
1.0 40.3 0.0 0.3 0.0
# duration iterations
1.0 -1
#----------------------------------------------
math harmonograph 255 0 0
# https://en.wikipedia.org/wiki/Harmonograph
# x(t) = P1(t) + P2(t)
# y(t) = P3(t) + P4(t)
# amplitude frequency phase damping offset
# X
1.0 7.0 0.0 0.0 0.0
2.1 0.05 90.0 0.0 0.0
# Y
1.0 7.2 0.0 0.0 0.0
2.1 0.05 0.0 0.0 0.0
# duration iterations
20.0 -1
#----------------------------------------------
math harmonograph_3D 127 255 0
# https://en.wikipedia.org/wiki/Harmonograph
# x(t) = P1(t) + P2(t)
# y(t) = P3(t) + P4(t)
# z(t) = P5(t) + P6(t)
# amplitude frequency phase damping offset
# X
1.0 6.0 0.0 0.0 0.0
2.1 0.05 90.0 0.0 0.0
# Y
1.0 6.1 0.0 0.0 0.0
2.1 0.05 0.0 0.0 0.0
# Z
1.0 6.0 0.0 0.0 0.0
2.1 0.10 0.0 0.0 0.0
# duration iterations
20.0 -1
#----------------------------------------------
math amplitude_mod 255 255 0
# x(t) = t
# y(t) = P1(t) * P2(t)
# amplitude frequency phase damping offset
1.0 100.0 0.0 0.0 0.0
1.0 1.0 0.0 0.0 1.0
# duration iterations
1.0 -1
#----------------------------------------------
math amplitude_mod_xy 255 255 0
# x(t) = P1(t) * P2(t)
# y(t) = P3(t) * P4(t)
# amplitude frequency phase damping offset
# X
1.0 60.0 0.0 0.0 0.0
1.0 1.0 0.0 0.0 1.0
# Y
1.0 60.0 90.0 0.0 0.0
1.0 1.0 90.0 0.0 1.0
# duration iterations
1.0 -1
#----------------------------------------------
math amplitude_mod_xyz 200 0 127
# x(t) = P1(t) * P2(t)
# y(t) = P3(t) * P4(t)
# z(t) = P5(t) * P6(t)
# amplitude frequency phase damping offset
# X
1.0 50.0 0.0 0.0 0.0
1.0 50.3 0.0 0.0 0.70
# Y
1.0 50.0 60.0 0.0 0.0
1.0 50.7 90.0 0.0 0.70
# Z
1.0 50.0 90.0 0.0 0.0
1.0 50.9 0.0 0.0 0.70
# duration iterations
0.5 -1
#----------------------------------------------
math frequency_mod 255 255 0
# x(t) = t
# y(t) = P1(t) ~~ P2(t)
# amplitude frequency phase damping offset
1.0 10.0 0.0 0.0 0.0
0.50 1.0 0.0 0.0 2.0
# duration iterations
1.0 -1
#----------------------------------------------
math frequency_mod_xy 255 255 0
# x(t) = P1(t) ~~ P2(t)
# y(t) = P3(t) ~~ P4(t)
# amplitude frequency phase damping offset
# X
1.0 3.0 0.0 0.0 3.0
0.20 13.0 0.0 0.0 0.0
# Y
1.0 2.0 90.0 0.0 3.0
0.20 13.0 90.0 0.0 0.0
# duration iterations
1.1 -1
#----------------------------------------------
math frequency_mod_xyz 255 255 0
# x(t) = P1(t) ~~ P2(t)
# y(t) = P3(t) ~~ P4(t)
# z(t) = P5(t) ~~ P6(t)
# amplitude frequency phase damping offset
# X
1.0 0.10 0.0 0.0 3.0
0.20 20.0 0.0 0.0 0.0
# Y
1.0 0.10 180.0 0.0 3.0
0.20 20.7 00.0 0.0 0.0
# Z
1.0 0.10 180.0 0.0 3.0
0.20 21.40 0.0 0.0 0.0
# duration iterations
2.0 -1
#----------------------------------------------
# animated frames forms
#----------------------------------------------
#----------------------------------------------
# https://en.wikipedia.org/wiki/Rhodonea
math rhodoneas 255 255 255
# radius pedals_numerator pedals_denominator
1.0 7.5 8.0
# radius pedals_numerator pedals_denominator
1.0 8.5 8.0
# start duration iterations frames
0.0 16.0 -1 -1
#----------------------------------------------
# https://en.wikipedia.org/wiki/Epicycloid
math epicycloids 255 0 127
# fixed_radius roller_radius
6.95 12.0
# fixed_radius roller_radius
7.0 12.0
# start duration iterations frames
0.0 36.0 -1 -1
#----------------------------------------------
# https://en.wikipedia.org/wiki/Epitrochoid
math epitrochoids 127 0 255
# fixed_radius roller_radius roller_offset
5.0 1.0 -11.0
# fixed_radius roller_radius roller_offset
5.0 1.0 11.0
# start duration iterations frames
0.10 1.0 -1 -1
#----------------------------------------------
# https://en.wikipedia.org/wiki/Hypocycloid
math hypocycloids 255 255 0
# fixed_radius roller_radius
30.0 20.0
# fixed_radius roller_radius
30.0 19.7
# start duration iterations frames
0.25 20.0 -1 -1
#----------------------------------------------
# https://en.wikipedia.org/wiki/Hypotrochoid
math hypotrochoids 127 255 127
# fixed_radius roller_radius roller_offset
6.4 13.0 11.0
# fixed_radius roller_radius roller_offset
6.6 13.0 11.0
# start duration iterations frames
0.25 26.0 -1 -1
#----------------------------------------------
# https://en.wikipedia.org/wiki/Lissajous_curve
math lissajous 63 63 255
# amplitude frequency phase
1.0 5.0 0.0
1.0 7.0 0.0
# amplitude frequency phase
1.0 5.0 0.0
1.0 7.03 180.0
# duration iterations frames
6.0 -1 -1
#----------------------------------------------
math pendulums 255 127 0
# x(t) = t
# y(t) = P1(t)
# amplitude frequency phase damping
3.14 1.0 0.0 0.0
# amplitude frequency phase damping
3.14 30.0 0.0 1.0
# duration iterations frames
1.0 -1 -1
#----------------------------------------------
math pendulums_sum 255 127 0
# x(t) = t
# y(t) = P1(t) + P2(t)
# amplitude frequency phase damping offset
1.5 1.0 0.0 0.0 0.0
0.0 33.0 0.0 0.0 0.0
# amplitude frequency phase damping offset
1.5 3.3 0.0 0.0 0.0
1.5 33.0 0.0 0.0 0.0
# duration iterations frames
1.0 -1 -1
#----------------------------------------------
math pendulums_xy 0 255 255
# x(t) = P1(t)
# y(t) = P2(t)
# amplitude frequency phase damping offset
1.0 3.0 0.0 0.0007 0.0
1.0 5.011 180.0 0.0007 0.0
# amplitude frequency phase damping offset
1.0 3.0 0.0 0.06 0.0
1.0 5.0 0.0 0.06 0.0
# duration iterations frames
15.0 -1 -1
#----------------------------------------------
math pendulums_xyz 128 0 128
# x(t) = P1(t)
# y(t) = P2(t)
# z(t) = P3(t)
# amplitude frequency phase damping offset
1.0 3.0 0.0 0.005 0.0
1.0 4.0 90.0 0.005 0.0
1.0 10.0 0.0 0.005 0.0
# amplitude frequency phase damping offset
1.0 3.0 0.0 0.01 0.0
1.0 4.02 110.0 0.015 0.0
1.0 10.0 0.0 0.01 0.0
# duration iterations frames
12.0 -1 -1
#----------------------------------------------
math harmonographs 255 0 0
# https://en.wikipedia.org/wiki/Harmonograph
# x(t) = P1(t) + P2(t)
# y(t) = P3(t) + P4(t)
# amplitude frequency phase damping offset
1.0 1.5 0.0 0.0 0.0
1.13 0.05 90.0 0.0 0.0
1.0 1.5 90.0 0.0 0.0
1.13 0.05 0.0 0.0 0.0
# amplitude frequency phase damping offset
1.0 1.5 0.0 0.024 0.0
1.13 0.05 90.0 0.02 0.0
1.0 1.5 90.0 0.024 0.0
1.13 0.05 0.0 0.02 0.0
# duration iterations frames
40.0 -1 -1
#----------------------------------------------
math harmonographs_3D 127 255 0
# https://en.wikipedia.org/wiki/Harmonograph
# x(t) = P1(t) + P2(t)
# y(t) = P3(t) + P4(t)
# z(t) = P5(t) + P6(t)
# amplitude frequency phase damping offset
# X
1.0 6.0 0.0 0.0 0.0
2.1 0.05 0.0 0.0 0.0
# Y
1.0 6.0 30.0 0.0 0.0
2.1 0.05 0.0 0.0 0.0
# Z
1.0 6.0 0.0 0.0 0.0
2.1 0.15 0.0 0.0 0.0
# amplitude frequency phase damping offset
# X
1.0 6.0 0.0 0.0 0.0
2.1 0.05 120.0 0.0 0.0
# Y
1.0 6.2 0.0 0.0 0.0
2.1 0.05 0.0 0.0 0.0
# Z
1.0 6.0 0.0 0.0 0.0
2.1 0.10 0.0 0.0 0.0
# duration iterations frames
20.0 -1 -1
#----------------------------------------------
math amplitude_mods 0 200 0
# x(t) = t
# y(t) = P1(t) * P2(t)
# amplitude frequency phase damping offset
1.0 20.0 0.0 0.0 0.0
1.0 1.0 0.0 0.0 1.0
# amplitude frequency phase damping offset
1.0 20.0 0.0 0.0 0.0
1.0 1.0 180.0 0.0 1.0
# duration iterations frames
2.0 -1 -1
#----------------------------------------------
math amplitude_mods_xy 0 127 255
# x(t) = P1(t) * P2(t)
# y(t) = P3(t) * P4(t)
# amplitude frequency phase damping offset
# X
1.0 60.0 0.0 0.0 0.0
1.0 1.0 0.0 0.0 1.0
# Y
1.0 60.0 90.0 0.0 0.0
1.0 1.0 90.0 0.0 1.0
# amplitude frequency phase damping offset
# X
1.0 60.0 0.0 0.0 0.0
1.0 1.0 0.0 0.0 1.0
# Y
1.0 60.0 270.0 0.0 0.0
1.0 1.0 90.0 0.0 1.0
# duration iterations frames
1.0 -1 -1
#----------------------------------------------
math amplitude_mods_xyz 200 0 127
# x(t) = P1(t) * P2(t)
# y(t) = P3(t) * P4(t)
# z(t) = P5(t) * P6(t)
# amplitude frequency phase damping offset
# X
1.0 70.0 0.0 0.0 0.0
1.0 70.4 70.0 0.0 0.350
# X
1.0 70.0 60.0 0.0 0.0
1.0 70.6 90.0 0.0 0.350
# Y
1.0 70.0 90.0 0.0 0.0
1.0 70.8 0.0 0.0 0.350
# amplitude frequency phase damping offset
# Z
1.0 70.0 90.0 0.0 0.0
1.0 71.2 20.0 0.0 0.650
# Y
1.0 70.0 100.0 0.0 0.0
1.0 72.6 90.0 0.0 0.650
# Z
1.0 70.0 200.0 0.0 0.0
1.0 73.3 0.0 0.0 0.650
# duration iterations frames
0.15 -1 -1
#----------------------------------------------
math frequency_mods 0 160 0
# x(t) = t
# y(t) = P1(t) ~~ P2(t)
# amplitude frequency phase damping offset
3.0 0.3 0.0 0.0 0.0
0.350 3.0 0.0 0.0 2.0
# amplitude frequency phase damping offset
3.0 0.3 180.0 0.0 0.0
0.350 3.3 0.0 0.0 2.0
# duration iterations frames
2.0 -1 -1
#----------------------------------------------
math frequency_mods_xy 255 255 255
# x(t) = P1(t) ~~ P2(t)
# y(t) = P3(t) ~~ P4(t)
# amplitude frequency phase damping offset
# X
1.0 1.0 0.0 0.0 3.1
0.20 7.0 0.0 0.0 0.0
# Y
1.0 1.0 0.0 0.0 3.1
0.20 7.0 90.0 0.0 0.0
# amplitude frequency phase damping offset
# X
1.0 1.0 360.0 0.0 3.1
0.20 7.0 0.0 0.0 0.0
# Y
1.0 1.0 360.0 0.0 3.1
0.20 7.0 90.0 0.0 0.0
# duration iterations frames
1.0 -1 -1
#----------------------------------------------
math frequency_mods_xyz 255 255 0
# x(t) = P1(t) ~~ P2(t)
# y(t) = P3(t) ~~ P4(t)
# z(t) = P5(t) ~~ P6(t)
# amplitude frequency phase damping offset
# X
1.0 0.10 0.0 0.0 3.0
0.20 20.0 0.0 0.0 0.0
# Y
1.0 0.10 180.0 0.0 3.0
0.20 20.7 00.0 0.0 0.0
# Z
1.0 0.10 180.0 0.0 3.0
0.20 21.4 00.0 0.0 0.0
# amplitude frequency phase damping offset
# X
1.0 0.10 0.0 0.0 3.0
0.20 20.0 0.0 0.0 0.0
# Y
1.0 0.10 180.0 0.0 3.0
0.20 20.7 360.0 0.0 0.0
# Z
1.0 0.10 180.0 0.0 3.0
0.20 21.4 360.0 0.0 0.0
# duration iterations frames
2.0 -1 -1
###############################################
###############################################
apply the frame set effect 'echos'. Add as many trails as you can handle. Say yes to the color shifting.
Then play the animation on your screen.
I made a difference today.
Have plans for much more.