List Joining - Need help


#1

Hello all,

I have a problem outlined below in the attached image.

List Joining

 

 

 

 

I have a series of points created by various means that I want to concatenate into a single list.

At present I have 5x lists. The Orange is the ‘first’ list [First List], the Green the ‘last’ [Last List].

In between I have the Red [Top] and Pink [Bottom] lists. The remainder is the [Centre] list.

What I would like would be a single list of points I can then List.Chop to form quads/diamonds for the use of putting down Adaptive components. The reason I’m doing it this way and not using some of the already published nodes (Unless someone can point me in the direction of one that works!) is that it’s a complex surface with simultaneous convex and concave planes.

I don’t know the right way to go about combining these lists… I’m assuming the use of List.Map and AddItemToFront/AddItemToEnd or a combination of List.Create and List.Combine but all my playing to date fails.

The context of this form can be found in my other thread located here (Grids to Face Issue).

 

Any thoughts?


#2

I’m sure this will be simple in retrospect, but it’s knocking me for six - I will have another crack at it at lunch today if nobody has any thoughts :slight_smile:


#3

In my previous example, the end result was a list that contained all of the points. Eduardo P Roca posted a great node called “Quads From Points Lists” some time ago. With a small tweak, you can use that to very quickly generate a list of quad points that can be used for AC/surface generation.

2015-06-02_11-59-43

 

2015-06-02_11-26-14


#4

Many thanks for the heads up Dimitar, I had a go at that but I’m still failing - the quads are not re-organising themselves based off proximity it appears. I’ve attached my .dyn file so that you can see easier than via a screengrab (Dynamo 0.8.0 version - sandbox capable).

Diamond_Library3

Thank you so much for helping a newbie out, I very much appreciate all your time and effort.


#5

Hi Sol,

I checked it out and I noticed a few things.The first thing(1) is that you’ve extruded each curve twice and you end up with two surfaces for each, thus you can get duplicate points after flattening. Secondly I think that floating points are getting in the way(2) as well.( http://floating-point-gui.de/basic/ ) It seems to me that intersection methods in Dynamo are trying to be too accurate and are evaluating geometry up to the umpteenth number after the decimal point and if things aren’t matching perfectly(very likely), you get a miss( an empty list).

2015-06-03_17-58-30

For (1) I was thinking that we could avoid creating surfaces and simply drape the curves to the surface with “Curve.PullOntoSurface”. Unfortunately the resulting curves were not translating properly around the edges:

2015-06-03_18-22-46

So I thought it would be easier to create planes instead of curves and intersect that with the surface. Unfortunately the result didn’t manage to intersect properly as well most likely due to (2). The best solution to the intersection problem seems to be the “Geometry.ClosestPointTo” node.

2015-06-03_18-32-08

On top of everything, I seem to be experiencing some noticeable slow-downs when intersecting the surface with the planes… Any tips dev team?

Diamond_Library4


#6

Ah me being a muppet then, nothing new! Many thanks for the deep investigation.

I’ll maybe have a think about a better approach to this and try deconstruct some of the Quads by Points List nodes that are out there for it.