Question about Galapagos

Hello, i want solve the problem of Curve Equipartition like in this thread

https://discourse.mcneel.com/t/divide-curve-by-equal-distance/

The idea is using divide distance and closest point; the last point always have parameter t<1.
Is it possible to use Galapagos to increase this parameter to 1 with all other parameters to get equal curves?

test divide.gh (10.9 KB)

I find the problem and i don’t know why that happened
If i plug fixed number to index Galapagos worked fine but if i use list length don’t work properly

1 Like

I assume that is because if you set it to list length, and galapagos starts to modify the slider, the list length will start changing as well

1 Like

Yes exactly i notice that after my post

I use Goat, it’s very fast but the only problem is change index manually and the result is not 100% : 0.999881 there is always a little distance at the end

then you should increase the amount of digits in your Distance slider. about 5 will do

1 Like

Yes i did that and increase the digits to 6 but always there is a very little distance.
The solution of @DanielPiker is the best ; i just want make my own solution

If you are really picky then neither can be marked as being the best. While the galapagos method will leave a very small piece at the end, the Kangaroo solution will end up with not exactly the same curve lengths. The thing that the solution of Daniel does differently is divide a curve and then start iteratively moving the inner points, hence it looks to be more accurate, but that isn’t necessarily the case.

Yes i see that but it’s faster .
i see in the link in the first post they used other method and there are other mathematics solutions which i can’t create them with grasshopper

When i use definition of @DanielPiker ,i find that using Goat with simple slider and number will improve Kangaroo results and find more close equal lengths where there is no contact between the definition and Goat; i don’t understand how that happened

Kangaroo stops when it has reached the energy given in the Threshold input -
but it looks like Goat is triggering all components to re-solve so it is performing more iterations.

You can achieve the same result more simply by changing the Threshold value!

The default is 1e-15 (Grasshopper rounds values this small for display, so it shows as 0), but you can try something like 1e-20 for higher accuracy, or even set it to actual 0, which means it won’t ever stop iterating until you change the boolean input of ‘On’ to false.

1 Like

Thank you that’s work Great and i choose 1e-40 or 1e-30
Is it possible to auto reset the solver when change slider number?

I know exact numbers can be satisfying, but don’t lose track of their physical meaning.

I can’t think of many real life situations where you’d need measurements to that level of accuracy, unless you’re dealing with objects the size of the observable universe, measured to a tolerance less than the size of an atom!

If you use the Zombie solver, it resets whenever the inputs are changed.

1 Like

Thank you i used Zombie solver but didn’t change Threshold value, now it work fine
i just want get the equal segments like when we use middle point , i don’t need it in real life

Test of Divide Curve vs definition of Daniel to divide Arc
And the definition give precise values