Made a new work livecoding (properly, this time) a longer shape, called "Indeterminate M". Really like this piece, it shows the livecoding decisions in the uneven layering -- different beat lengths, amounts of material extruded, temperature changes. Video: https://youtu.be/C7EMrQUydUA (available after 1:30PM BST today) #generativeart #3dprinting #liveprinter
#generativeart #3dprinting #LivePrinter
First time with threejs, made a 3D simulator for #LivePrinter. Far from finished, a total hack but it’s fast enough and works well enough for now!
Making some good lissajous shapes in solid form, all #generativeart with #liveprinter
Tuesday 25th 2-5pm I’m running a #LivePrinter sort-of-workshop at Goldsmiths (New Cross, London) to get feedback from livecoders, programming-adjacent music and art people, etc. Let me know if you’re interested with a paragraph why and I’ll see if we have space! If not, I’m hoping to do some more in the future in a more structured way
This one sounded really good -- an evolving soundscape that changes based on the height of the print and gains complexity with each layer. A techno grid of 16x16 quarter notes at 135 bpm. I think it slays, but that's me and I've been inhaling too much of the plastic fumes recently https://youtu.be/xx47h4tUU5Q?t=256 #liveprinter #techno #machinemusic
#LivePrinter #techno #machinemusic
Integrated @thi.ng iterators into #LivePrinter and made a zigzag warp print test: https://youtu.be/j9LCLPz5vAc with code here: https://github.com/pixelpusher/liveprinter/blob/master/testing/iteratorgrid.js thanks to @toxi and others! #livecoding #3dprinting
#LivePrinter #livecoding #3dprinting
Due to a request, I added another function to #LivePrinter called lib.getdata(). It gets data from any HTTP server using GET or POST. It expects a JSON object with a "data" key that contains an array of [x,y,z] points. See below to use:
liveprinter code to get data from a remote server using POST:
const data = await lib.getdata("http://localhost:8888/data");
loginfo(JSON.stringify(data));
// loop through data
for (let p of data) {
loginfo(`${p}`);
let [x,y,z] = p;
loginfo(`moveto ${x},${y}`);
// move to coordinates from data
# mov2 x:x y:y
}
What's returned from the server http://localhost:8888/data with a POST command:
{ data: [
[0,0,0],
[1,1,1],
[2,2,2]
]
}
Hey #LivePrinter runs on #Prusa #3Dprinters! The newest commit adds instructions for #linux systems and a small fix for serial ports and another fix for long printer bed levelling operations like on the Creality
#LivePrinter #prusa #3dprinters #linux
New experiments… bit more complex algorithm called “time circles”. #LivePrinter
Like the last post, a video record of the performance (still a work in progress):
A live performance using #LivePrinter of drawing a series of parallel lines of the same duration in time, at different pitches (different printing speeds), then repeating on top of one another with different note progressions:
See the code for the entire performance captured from LivePrinter:
https://www.notion.so/bitprint/performance-lines-to-pitches-39cb99db91af40b6a1821bd8d7119cfe?pvs=4
Drawing lines at specific pitches on top of one another to make 3D sculptures #liveprinter #3dprinting
@toxi this is super cool, I’m really impressed with all the work you’ve put into your system. Really want to use it at some point! But… I don’t see how you can get around the approach I’ve been taking with #LivePrinter which is hand-coding a series of actions, as opposed to these interval functions. It’s tricky to impose regularity on the unpredictable process of drawing and painting. But I look forward to seeing what you get up to!
Hey it’s been about a year since I first got the #3dprinter musical fractals working https://youtube.com/watch?v=CkE8AfNgn2g&feature=shares #liveprinter
Just livecoding some weird circular shapes with thick thick lines on a #3Dprinter with #liveprinter tonight just because https://youtube.com/watch?v=PtFYmdT-rCU&feature=shares
Had fun 3D printing a thing. #LivePrinter works well on Enders! Drawing a line for 6000ms and whilst changing direction slightly (every 10ms) by +/-60 degrees multiplied by a sine wave (period 1s) multiplied by a cosine wave (period 333ms), sort of #conceptualart
Ok I think I’ve got the new #liveprinter “warping” functions set — the trick was to create different ones for warping movement time/speed and space separately! Now I can render sine waves of exact time durations (6 beats at 110 bpm at the speed of a C6 note) in any direction:
Hey look I added the ability to livecode different time-based functions into #LivePrinter so you can do fun things like print a line for 1.3s and apply a sine wave warp horizontally with a period of 160ms and and amplitude of 10mm! Time-based 3D printing is fun.