Is there a way to do sweep1 align with surface in Grasshopper or RhinoCommon?

None of the Brep.CreateFromSweep statics look like they can do it. I expect to see a surface somewhere in the parameter list, and maybe an align flag and an edge index. When I look at the available methods I see nothing like that.

Have I missed something?

I would really, really, really like to be able to do this in code. Even for the simple thing that I’m doing I would have to perform 3 X 15 manual sweep1s and break my code up into a before manual sweep chunk and a post manual sweep chunk. But this defeats the purpose of using grasshopper. I can’t tweak a slider and see the results.

So…

  • If it doesn’t exist then I’d like it
  • If it does exist, where is it?
    //
    // Summary:
    //     Sweep1 function that fits a surface through profile curves that define the surface
    //     cross-sections and one curve that defines a surface edge.
    //
    // Parameters:
    //   rail:
    //     Rail to sweep shapes along
    //
    //   shapes:
    //     Shape curves
    //
    //   closed:
    //     Only matters if shapes are closed
    //
    //   tolerance:
    //     Tolerance for fitting surface and rails
    //
    // Returns:
    //     Array of Brep sweep results
    public static Brep[] CreateFromSweep(Curve rail, IEnumerable<Curve> shapes, bool closed, double tolerance);
    //
    // Summary:
    //     Sweep1 function that fits a surface through a profile curve that define the surface
    //     cross-sections and one curve that defines a surface edge.
    //
    // Parameters:
    //   rail:
    //     Rail to sweep shapes along
    //
    //   shape:
    //     Shape curve
    //
    //   closed:
    //     Only matters if shape is closed
    //
    //   tolerance:
    //     Tolerance for fitting surface and rails
    //
    // Returns:
    //     Array of Brep sweep results
    public static Brep[] CreateFromSweep(Curve rail, Curve shape, bool closed, double tolerance);
    //
    // Summary:
    //     Sweep1 function that fits a surface through a series of profile curves that define
    //     the surface cross-sections and one curve that defines a surface edge. The Segmented
    //     version breaks the rail at curvature kinks and sweeps each piece separately,
    //     then put the results together into a Brep.
    //
    // Parameters:
    //   rail:
    //     Rail to sweep shapes along
    //
    //   shapes:
    //     Shape curves
    //
    //   closed:
    //     Only matters if shapes are closed
    //
    //   tolerance:
    //     Tolerance for fitting surface and rails
    //
    // Returns:
    //     Array of Brep sweep results
    public static Brep[] CreateFromSweepSegmented(Curve rail, IEnumerable<Curve> shapes, bool closed, double tolerance);
    //
    // Summary:
    //     Sweep1 function that fits a surface through a profile curve that define the surface
    //     cross-sections and one curve that defines a surface edge. The Segmented version
    //     breaks the rail at curvature kinks and sweeps each piece separately, then put
    //     the results together into a Brep.
    //
    // Parameters:
    //   rail:
    //     Rail to sweep shapes along
    //
    //   shape:
    //     Shape curve
    //
    //   closed:
    //     Only matters if shape is closed
    //
    //   tolerance:
    //     Tolerance for fitting surface and rails
    //
    // Returns:
    //     Array of Brep sweep results
    public static Brep[] CreateFromSweepSegmented(Curve rail, Curve shape, bool closed, double tolerance);

Hi @jmcauley,

No, there isn’t an override in RhinoCommon that allows you you to sweep1 with ‘align to surface.’

RhinoCommon’s sweep1 methods have not kept up with the enhancements make to the Sweep1 command. We hope to address this in the future.

https://mcneel.myjetbrains.com/youtrack/issue/RH-56247

– Dale