# Sort Points Via Domains

I have a set of initial points separated in branches. I want to sort them into sub branches with the use of predefined domains in such a way that if the point is within that given domain, it should go into its sub branch. I have no idea what I am doing wrong.

domain.gh (13.3 KB)

If I explode the trees I get the correct results, however I need to do it with sub branches.

Should work like this:

domain2.gh (11.5 KB)

Noâ€¦ Most of the final data is just multiple copies of the same thing. The item number is right, but not the values.

Here is the entire problem. I have 3 sets of data. One corresponds to an angle Alpha, a second one corresponding to a given length. And a final one corresponding to a second angle Beta.

I need to sort the first data within 2 degree range. Then match the data from the length within 2 m range with the result of this step. This just aranges the length data in the corresponding new sub branches. And the final step is sort this result using the second angle Beta within 2 deegree rangeâ€¦ In the example file I upload now I am able to do it if I explode the data tree and do the sorting for every single branch manually. I must not repeat data just sort it according to 3 criteria.

Example.gh (19.5 KB)

Here is more or less the logic. We have a given set of gemoetries. They all have corresponding angle Alpha, Length and an angle Beta. We have to group them in familisies with tollerance +/- 1 degree (m, mm or whatever unit is used). First we group them with the Alpha angle as a rule. Once this is done we apply a second sorting using the length as a rule, but we keep the tree structure achieved from the first step. This must create sub branches. After this we use this result with the angle Beta as a rule.

Maybe there is a better way to do it than to use sub branches. I donâ€™t know. I am stuck.

Tip:

Instead of looking to create dimensions that equal the N of the used sort values (â€śhandyâ€ť when you have lotâ€™s of values) I would strongly suggest to sort first by value1, then by value2 â€¦ then by valueN and put the results obviously in a 2 dim tree where the second dimension contains the sorted objects (plus the values) and the first is the branch of objects and values. That way you can invite any N of sorting values to the party, avoid locomotive paths PLUS you can locate any item very easily: since the scope of any sort is to locate the sorted things.

Posting the thing captured below (using just matching Lists thus the sorting tree has 1 dimension) has no meaning since is 100% code (using user defined classes of sorting values) â€¦ but I do hope that you get the gist of the whole approach.

1 Like

Yeah the trouble is that if I knew how to do it I wonâ€™t ask. â€śLife sucksâ€ť is a nice message. If you donâ€™t like helping why do you bother?

Chill! You were helped, werenâ€™t you? Donâ€™t worry about the panel description. life sucks doesnâ€™t reflect, him not wanting to help you.

1 Like

Help is a relative thing: sometimes is a quideline some times is an indicative solution and some times is the solution. People frequently interpret help only if the latter is provited.

Anyway if you want a code based solution notify.

Technically my entire problem resolves around making the Includes component work without the need to explode the tree. Any work around of this situation is what I am looking for.