I am glad that there is an ongoing conversation about this stuff though....
It could bring a lot of stuff to light. And maybe it will inspire a few new ideas.
James.
I am glad that there is an ongoing conversation about this stuff though....
It could bring a lot of stuff to light. And maybe it will inspire a few new ideas.
James.
Creator of LaserBoy!
LaserBoy is free and runs in Windows, MacOS and Linux (including Raspberry Pi!).
Download LaserBoy!
YouTube Tutorials
Ask me about my LaserBoy Correction Amp Kit for sale!
All software has a learning curve usually proportional to its capabilities and unique features. Pointing with a mouse is in no way easier than tapping a key.
Maybe the best thing to do is write your own ideas into your own code and if you want to share them, document them and store the parameters in an easy to read file format. Then, if other developers want to use your ideas, they could also import your settings files.
My extensions to the wave file format are somewhat documented. The code is open source. My text file format is also documented.
There have been some other apps developed that can read LB formatted wave files.
I'm usually pretty happy to help someone understand these formats.
James.
Creator of LaserBoy!
LaserBoy is free and runs in Windows, MacOS and Linux (including Raspberry Pi!).
Download LaserBoy!
YouTube Tutorials
Ask me about my LaserBoy Correction Amp Kit for sale!
All software has a learning curve usually proportional to its capabilities and unique features. Pointing with a mouse is in no way easier than tapping a key.
You raise a very valid point. The parameters in my proposal file only change the frame and its points, but does nothing for the timing or the duration of a specific frame. I believe all current parameters are quite unambiguous, there's only one correct result when you interpolate a line, or add points at transitions/angles, no matter how you do it... As you say an Ilda file is not connected to time as is a wave or a stream of points. So is it necessary to think of a clever way to do timing optimisation? Because that's indeed something that's entirely dependent on the program or system that displays the frame.
Instead of a fixed interpolation distance, it might be better to have a fixed point count per frame and the optimisation algorithm would calculate how many points to add based on that. That's harder to do than just interpolating with a fixed distance, so programmers might not implement it and that wouldn't be beneficial.
Lies! There are no comments here...
Code:LaserBoy.wtf-12-02-2014 . 0 0 0 48000 2 10 1 1 100 6 18 1000 61 4800 0 0 0 0 0 0 1 1 0 0 800 1000 333 50000 60 0.0174533 2 0.7 6 0.7 0.2 0.0174533 0.01 16 10 aabuL0_Z 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 1 0 0 1 0 0 1 1 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 0 1 0 0 1 0 1 0 0 0 -5 -5 -5 0 0 0 0 4 0 0 7 7 7 0 0 0 . . . . If this file is currupted, delete it!
Actually that is documentation, CMB. That is the series of keystrokes you have to hit to navigate between the LB menus. Be sure to convert each group of 2-3 digits into the associated key, first. You may also find that you need a German, Spanish and French keyboard for some of the keys . . .
"Help, help, I'm being repressed!"
You know, the corner dwell time shouldn't really be based on the angle; it should be based on the max delta energy required for each scanner. That is, for a 90 degree angle, at least one scanner is going to have to stop and possibly reverse direction. Consider a right angle aligned with the x y axis where one scanner is going to stop and the other is going to start after the corner. There is no need to wait longer than it takes the moving scanner to stop, so the dwell should max at 90 degrees in that case, not 180.
Sorry that's so abbreviated; typing on the phone is tedious.
Do you think a regular ilda file with only the necessary points to define the art (no extra corner points, no collinear points etc) would work for that?
That's true in some regard. Then it's better to go with the idea of hints... but that's not very concrete. You could for example create a file that says how many points a frame should have and how fast it should scan etc. and leave the rest to the optimising algorithm. Or when you have a projector which is particularly bad at scanning sharp corners, it could have a hint to add more points at corners. I've no clue how that would work in real life though.
But if you do a 180° (or 0° as defined in the document above) both scanners have to come to a complete stop before returning. Isn't that the hardest case for the scanners?
Sorry for the confusion. When I said my text file format is documented, I was referring to my text file format for frame data.
http://laserboy.org/forum/index.php?topic=218.0
LaserBoy exports and imports plain ASCII text for palettes and frame sets.
The text file format of the wtf files is documented in the code. No it is not a list of keystrokes to enter.... It's the set of all LaserBoy settings in a particular order that can be saved and loaded quickly. There is a series of versions of this file format and LB knows how to identify and read them back to 2009.
All of those settings in LB didn't come from nowhere.... I had to figure out what I thought might influence the way the scanners would respond to timed samples per second (a wave file).
I will not say that this is the right way to do it or that it is completely done. It just happens to produce results that seem to work.
In my mind, it seems that you can't do things that require knowledge of time without a connection to time. Optimization is in the time domain.
The nice thing about wave is that it was designed to be extensible and it is obviously connected to time (samples per second).
It also represents a kind of DAC that is conveniently disconnected from any hardware or real-time. It's like printing to a fake printer that saves a PDF file. When you need it, there it is, fully cooked.
But even if you never save a wave file from LB it will still let you save as much of the optimizations as is allowed in an ILDA file.
James.
Last edited by james; 01-13-2015 at 16:29.
Creator of LaserBoy!
LaserBoy is free and runs in Windows, MacOS and Linux (including Raspberry Pi!).
Download LaserBoy!
YouTube Tutorials
Ask me about my LaserBoy Correction Amp Kit for sale!
All software has a learning curve usually proportional to its capabilities and unique features. Pointing with a mouse is in no way easier than tapping a key.
In general, I would like to stop thinking about points and optimization settings and let the software handle it. I have a ton of ideas on how that could be accomplished that I have been tossing around and hope to someday implement.
Why not share your ideas and let others implement it? :P
But then we're back to square one... 100 different programs with 100 different outputs for the same content.
I've shared my ideas here and elsewhere before.