Lattice not working on surfaces from SubDs

Hello,

I am building a triangular lattice structure between two surfaces. I have come up with a lattice structure that I am happy with that works between two simple loft test surfaces, but when I apply the same definition to the final surfaces I want to use it for I can’t get it work in the same organized way.

Here is the test that worked:
Triangle Lattice 1.3 Test - question.gh (49.2 KB)

The final surfaces were made originally from subds and converted to nurbs. Here is the same definition with these surfaces that isn’t working:
Triangle Lattice 1.3 Final - question.gh (319.3 KB)

I have gone through the struts on the final one in detail and though some of the connections are in the correct places, many/most are incorrect. I have also tried shifting the various lists and can’t get even one of them to work correctly.

I’m sure there is something simple that I’m missing.

Any help would be greatly appreciated!

Here is a screenshot of the test (first) definition if helpful:

Screenshot of the final (second) definition:

It seems the issue is the way the surfaces are made from SubDs and the way they are ordered. On a very simple SubD plane converted to nurbs I get a somewhat symmetrical (still incorrect / not controllable) result:

Doing an AEC truss using a double curvature Nurbs Surface (or 2) OR a blob type of Mesh using Vertices Normals (steady amplitude or variable: say related with attractor Pts/Curves/Objects or some other way like s Sin/Cos global distortion etc etc) is the most challenging task known to man.

Reason? Dealing with clash issues (trusses in real life are made from “solids” like tubes, sleeves, cones, bolts, cats and dogs). Plus every similar “solid” should be an Instance Definition otherwise you’ll end up with a colossal R file (and you would face serious issues when you want to export it to some proper BIM app with a rational hierarcy structured way).

Then comes the envelope … and there things become very complicated (if you want some result that doesn’t leak over time).

But above all … is the connectivity part (real-life assembly/BOM/etc): in fact in double layred trusses (so called W) we output Nodes (Vertices) / Struts (Edges) in 2/3 Lists and then we inter-connect them using connectivity Trees - i.e. VV, VE, EV and EE (OK, the latter is not used often).

So it’s advisable to use a Mesh as a template (and some Method for var Vector amplitudes if you want that type of result) because connectivity for a Mesh is easier to get/manage/master (for a novice).

The ideal way for the var amplitude is an on-the-fly modification of the influence objects - but that requires 100% code (as any pro Level truss design attempt to be honest)

Thanks for the help and advice. I should have been more clear but this is for an elbow brace so luckily I don’t have to worry about things like BIM and outputting lists. The final strut collection will be put through Dendro to connect the thickened strut volumes all together into a single mesh for 3D printing.

The “something simple” that I’m looking for is how to get surfaces that come from SubDs to behave the same as normal nurbs surfaces with this definition.

Did you ever figure out a good method?

No, unfortunately - another GH expert told me it’s better to build the surfaces as lofts from curves instead so you can control the order so I did that and it worked.