Make sure Options|Autosave and Options|'Automatically check for updates' are unchecked. Click slower. I can reliably click 20 times in 20 seconds on my 11 year old PC. You can change "_c > 11" to "_c > 5" in the checkbox update method. "_c > 11" is a compromise between responsiveness and lag for any GUI in any scene. I'm not ready to start tuning it for each GUI in each scene, but I will do it for this scene since there are only (8) instances of "_c > 11".
Q: How does the laser cut the object?
A: The laser converts the object to a polygon if needed, sets the polygon angle to zero without rotating the part, and puts recursive splitting code in the onDie method of the new polygon. When the polygon dies it generates _numOfSlices new polygons. That happens recursively for _numOfGens. Code is in the big laser onLaserHit method.
Well, since you mentioned accuracy, here are my thoughts:
1. Friction between the side guides and the plate will affect the measurement.
2. The person's head leaning against the side plate will affect the measurement.
3. Buoyancy will affect the measurement.
4. sim.frequency will affect the measurement (higher frequencies are typically more
accurate).
5. The side plates are not necessary.
6. Weight is measured in Newtons.
7. Mass is measured in kilograms.
8. If you select the whole body, right click, then select information, then the total mass will
be displayed.
9. A more accurate value may be obtained by averaging many values.
Thanks. I read up on UARTs before making this scene. This concept will allow other programs to do stuff Algodoo can't do, similar to what I did with AlgoSound.
Thanks for trying. You don't need to know much about Python. You just need to be able to run the script. Python_IPC_01.py should be in the C:\Users\XRay\Documents\Algodoo folder. It should be 8 KB. If it's 16 KB, then you tried loading it twice (since Algodoo only appends files and does not overwrite them). If the file is too big, just delete it and run the Agodoo scene again. Double-click Python_IPC_01.py and it just might work. That's how it works on my PC (although "Open with > Python" doesn't work). If double-clicking Python_IPC_01.py and "Open with > Python" doesn't work, then open IDLE, which is installed with Python. Find IDLE bt typing "IDLE" in the lower left corner of your desktop if using Windows.
Open IDLE. Do IDLE File>Open...Python_IPC_01.py, a new window opens displaying Python_IPC_01.py code, do Run>Run Module and a Python GUI that looks similar to the "Algodoo IPC A" GUI should show. If for any reason the script fails, IDLE will tell you why it failed. Communicate after Python_IPC_01.py and this Algodoo scene are both running.
Very well done. It's like going to the drive-in movies.
HingeBendConstant is the hinge torsional stiffness in N-m/radian.
HingeBendTarget is the angle where hinge torque is zero.
HingeBendConstant and HingeBendTarget are analogous to spring constant and target length for linear springs.
Nice scene. Works well. I played with it for a while. I tried adding very small attraction to the moon pieces, no improvement. I made a new moon and split it into 625 pieces (5 slices, 4 gens) by using the Laser Breaker, but there was no noticeable improvement over your original scene.
BTW I was going to script the springs in Algodoo until I found out you can't script springs in Algodoo. So now I output the poly surfaces to surfaces.txt using Algodoo, then I have a Python script that reads surfaces.txt and outputs mesh.phn to the "phunlets" folder. I can then load the phunlet directly or use scene.importPhunlet. All the parts are working OK, now I just need to add the IPC UART code to make the whole process automatic so that I can hit an object with a laser and the object gets replaced with the spring meshed model.