Testing geometry types against each other based on area tolerance

Hi,

I’m trying to reduce the number of panel types by comparing each panel’s area against the others within a tolerance that I can specify.

As you can see in the image below, the difference between these two panels is 1.03, which is acceptable for grouping.

However, when I apply this logic to a larger set of panels, it doesn’t work correctly, and I can’t figure out how to continue with the grouping process.

Do you have any suggestions on how I can separate the panels by matching their areas within a tolerance, so I can reduce the total number of types and make the panels more standardized?

testing against each other.gh (160.4 KB)

Dear Ahmed,

Looking at your gh. code I see you compare the area of every panel to the one 1 higher in the list. I think that is a fundamental error.
I advice to use the average area or the median area to compare with.
As you can see the differences are very small within a range of 0.0003 (unless I made a mistake)

regards, Eef

Example on how to check against median (middle in the list)



testing against each otherEW.gh (167.8 KB)

grouping_byAreaTolerance.gh (160.2 KB)

Hi @Ahmed_Alnaseri,

I wonder if this can be an approach for you—may be related to what @Eef_Weenink brought up earlier:
testing against each other.gh (164.5 KB)

Hi Eef,

Thank you! I was trying to figure out my mistake, grear point.

Thank you!

Thank you very much Jakob, works perfectly!