DevelopableSrf

public class DevelopableSrf
Helpers for developable surface functions

Methods

GetLocalDevopableRuling

#Since v6.0
public static int GetLocalDevopableRuling(NurbsCurve rail0, double t0, Interval dom0, NurbsCurve rail1, double t1, Interval dom1, ref double t0_out, ref double t1_out)
Finds minimum twist ruling between 2 curves at local domains
rail0 (NurbsCurve)First rail
t0 (double)Seed parameter on first rail
dom0 (Interval)Parameter sub-domain to adjust in on first rail
rail1 (NurbsCurve)Second rail
t1 (double)Seed parameter on second rail
dom1 (Interval)Parameter sub-domain to adjust in on second rail
t0_out (ref double)Result ruling on first rail
t1_out (ref double)Result ruling on second rail
-1: Error 0: Exact non-twisting ruling found between t0_out and t1_out 1: Ruling found between t0_out and t1_out that has less twist the ruling between t0 and t1

RulingMinTwist

#Since v6.0
public static bool RulingMinTwist(NurbsCurve rail0, double t0, Interval dom0, NurbsCurve rail1, double t1, Interval dom1, ref double t0_out, ref double t1_out, ref double cos_twist_out)
Find a ruling from rail0(t0_out) to rail1(t1_out) that has the least twist across the ruling with t0_out in domain0 and t1_out in domain1. max_cos_twist is cos(twist) for the returned ruling
rail0 (NurbsCurve)
t0 (double)
dom0 (Interval)
rail1 (NurbsCurve)
t1 (double)
dom1 (Interval)
t0_out (ref double)
t1_out (ref double)
cos_twist_out (ref double)

RulingMinTwist

#Since v6.0
public static bool RulingMinTwist(NurbsCurve rail0, double t0, NurbsCurve rail1, double t1, Interval dom1, ref double t1_out, ref double cos_twist_out)
Find a ruling from rail0(t0) to rail1(t1_out) that has the least twist across the ruling with t1_out in domain1. max_cos_twist is cos(twist) for the returned ruling
rail0 (NurbsCurve)
t0 (double)
rail1 (NurbsCurve)
t1 (double)
dom1 (Interval)
t1_out (ref double)
cos_twist_out (ref double)

UntwistRulings

#
public static bool UntwistRulings(NurbsCurve rail0, NurbsCurve rail1, ref IEnumerable<Point2d> rulings)
rail0 (NurbsCurve)
rail1 (NurbsCurve)
rulings (ref IEnumerable<Point2d>)