NLib Routines

Routines

Arithmetic

  1. A_bilcpt Compute combination of four control points
  2. A_bilpoi Compute combination of four points
  3. A_circpt Translate combination of two control points
  4. A_cirpoi Translate combination of two points
  5. A_comcpt Compute combination of two control points
  6. A_compoi Compute combination of two points
  7. A_cptpoi Map control point to w = 0 hyperspace
  8. A_crocpo Cross product of two control points
  9. A_difcpt Compute the difference of two control points
  10. A_difpcp Compute the difference of control point and point
  11. A_difpoi Compute the difference of two points
  12. A_dotcpo Dot product of two control points in Euclidean space
  13. A_dotcpt Dot product of two control points in homogeneous space
  14. A_dotpoi Dot product of two points
  15. A_euccpt Map homogeneous control point to Euclidean control point
  16. A_euclid Compute Euclidean point from homogeneous coordinates
  17. A_extcpc Extract coordinates of a control point
  18. A_exteco Extract Euclidean coordinates of a control point
  19. A_extpoc Extract coordinates of a point
  20. A_extwei Extract the weight of a control point
  21. A_extzco Extract the z coordinate of a control point
  22. A_getcpt Create control point object from coordinates
  23. A_getpoi Create point object from coordinates
  24. A_initcp Initialize control point
  25. A_initpo Initialize point
  26. A_magcpt Compute magnitude of control point
  27. A_magpoi Compute magnitude of point
  28. A_mapcpt Map control point to Euclidean space
  29. A_poicpt Convert point to control point
  30. A_ratder Compute rational derivative from Euclidean derivative
  31. A_rewecp Re-weight control point
  32. A_scacpo Scale first three coordinates of a control point
  33. A_scacpt Scale control point
  34. A_scapoi Scale a point
  35. A_sclcpt Scale control point with respect to a point
  36. A_setcpw Set w component of control point
  37. A_setcpx Set x component of control point
  38. A_setcpy Set y component of control point
  39. A_setcpz Set z component of control point
  40. A_sumcpt Compute the sum of two control points
  41. A_sumpcp Compute the sum of control point and point
  42. A_sumpoi Compute the sum of two points
  43. A_tracpt Transform control point given a 4x4 matrix
  44. A_trapoi Transform point given a 4x4 matrix
  45. A_trlcpt Translate control point by a given vector
  46. A_updcpt Update control point by adding a term to it
  47. A_updpoi Update a point by adding a term to it
  48. A_vcocpt Compute vector combination of two control points
  49. A_vcopoi Compute vector combination of two points
  50. A_weight Compute weighted control point

Bezier

  1. B_allber Compute all Bernstein polynomials at a given parameter
  2. B_arclen Compute arc length of Bezier curve
  3. B_bernst Evaluate a Bernstein polynomial at a given parameter
  4. B_cbepow Convert Bezier curve to power basis form
  5. B_cdegel Elevate the degree of a Bezier curve
  6. B_cdegre Reduce the degree of a Bezier curve
  7. B_cdemat Compute Bezier curve degree elevation matrix
  8. B_cextsd Extend Bezier curve to share same derivatives
  9. B_cfncu4 Product of Bezier function and Bezier curve in 4-D
  10. B_cfncur Product of Bezier function and Bezier curve
  11. B_cfnevn Compute a point on a Bezier curve function
  12. B_cfnprt Product of two Bezier functions
  13. B_circpt Compute weighted control points of Bezier circle
  14. B_circra Center, radius, start/end angles of 2-D Bezier circle
  15. B_cpobez Convert power basis curve to Bezier form
  16. B_cprmat Compute Bezier product matrix
  17. B_crepar Reparameterize a Bezier curve with a Bezier function
  18. B_csplit Split a Bezier curve at a given parameter
  19. B_cubapt Least-squares cubic to end points and end tangents
  20. B_curcro Cross product of two Bezier curves
  21. B_curevn Compute a point on a Bezier curve
  22. B_curprt Dot product of two Bezier curves
  23. B_degrco Compute Bezier degree reduction coefficients
  24. B_fdegel Elevate the degree of a Bezier function
  25. B_gcubin Global cubic curve interpolation
  26. B_gcurin Global curve interpolation
  27. B_getciw Compute weight of conic arc closest to that of circle
  28. B_ipomat Inverse of power basis conversion matrix
  29. B_iremat Non-zero elements of inverse of reparameterization matrix
  30. B_makcir Compute circular arc to given end points and tangents
  31. B_makcon Create a Bezier conic arc
  32. B_powmat Non-zero elements of power basis conversion matrix
  33. B_reclen Recursive procedure for Bezier arc lenth computation
  34. B_repmat Non-zero elements of reparameterzation matrix
  35. B_sbepow Convert Bezier surface to power basis form
  36. B_sdegel Elevate the degree of a Bezier surface for a row/column
  37. B_sdegre Reduce the degree of a Bezier surface
  38. B_sextsd Extend Bezier surface strip to share same derivatives
  39. B_sfndel Elevate the degree of a Bezier surface function
  40. B_sfnevn Compute a point on a Bezier surface function
  41. B_sfnprt Product of bivariate Bezier functions
  42. B_sfnsur Product of bivariate Bezier function and Bezier surface
  43. B_splcon Split a Bezier conic arc
  44. B_spobez Convert power basis surface to Bezier form
  45. B_surcro Cross product of two Bezier surfaces
  46. B_surevn Compute a point on a Bezier surface
  47. B_surprt Dot product of two Bezier surfaces

Error Checking

  1. E_cfnsto Check for sufficient storage in curve function structure
  2. E_clrerr Clear error handle
  3. E_cmasto Storage check in control point matrix structure
  4. E_curcpe Check curve control points equal
  5. E_curcpf: Replace (near-) equal curve  control points
  6. E_curdef Check curve definition
  7. E_curinp A complete curve check
  8. E_currev  Check curve control points for direction reversal at ends
  9. E_cursto Check for sufficient storage in curve structure
  10. E_curwei Check whether curve weights are within range
  11. E_endpar Check if parameter <= first knot or >= last knot
  12. E_errtyp Return type of error
  13. E_imasto Check for sufficient storage in integer matrix structure
  14. E_kntdef Check knot vector definition
  15. E_parval Check if parameter is out of range
  16. E_pmasto Check for sufficient storage in point matrix structure
  17. E_rmasto Check for sufficient storage in real matrix structure
  18. E_seterr Set error handle
  19. E_sfnsto Check storage in surface function structure
  20. E_surdef Check surface definition
  21. E_surinp A complete surface check
  22. E_sursto Check for sufficient storage in surface structure
  23. E_surwei Check whether surface weights are within range

Geometrical

  1. G_araspl Compute Area Of Spherical polygon
  2. G_araspt Compute Area of rectangular spherical patch
  3. G_arecpl Are three control points collinear?
  4. G_arepos Are points the same?
  5. G_aretrl Are 3 points colinear
  6. G_arevps Are vectors point to the same direction?
  7. G_boxbre Break min-max box object down to its components
  8. G_boxcen Compute the center of a box
  9. G_boxdef Define bounding box
  10. G_boxdia Compute the diagonal of a box
  11. G_boxdim Compute the dimensions of a box
  12. G_bx2ovl Compute area of 2-D box overlap
  13. G_circer Compute center and readius of a circle given by 3 points
  14. G_cirder Derivatives of a circle given in trigonometric form
  15. G_defppl Set index in polgon definition
  16. G_discpl Compute the length of a control polygon
  17. G_discpo Compute homogeneous distance between two control points
  18. G_discpp Compute the distance between two control points
  19. G_discpw Compute the length of a control polygon in 4-D
  20. G_dispab Distance between point and line segment
  21. G_dispca Distance between a point and a circular arc
  22. G_displn Compute distance of point from line
  23. G_dispnl Distance of point from line given in implicit form
  24. G_dispnp Distance of point from plane given in implicit form
  25. G_dispol Compute the length of a polygon given by the vertices
  26. G_dispop Compute the distance between two points
  27. G_dispp2 Compute the distance between two points in 2-D
  28. G_disppl Compute distance of point from plane
  29. G_disqab Distance between point and line segment
  30. G_disqp2 Compute the squared distance between two points in 2-D
  31. G_disqpp Compute the squared distance between two points
  32. G_dolsin Do line segments intersect?
  33. G_gweabc Get weight of one control point to ensure collinearity
  34. G_impln2 Implicit equation of line to point-vector form
  35. G_imppln Implicit equation of plane to point-normal form
  36. G_intcpl Intersect closed convex polygon with line segment
  37. G_intlnl Intersect two lines
  38. G_intlnp Intersect line and plane
  39. G_intlsg Intersect two line segments
  40. G_intplp Intersect two planes
  41. G_isntlc Is point net closed?
  42. G_ispgpg Point grid-in-polygon gravity field test
  43. G_ispgpl Point grid-in-polygon test
  44. G_ispplc Is polygon closed?
  45. G_ispppl Point-in-polygon test
  46. G_itvbre Break interval object down to its components
  47. G_linbox Compute extended bounding box of line segment
  48. G_linbre Break line object down to its components
  49. G_lindir Get direction vector of line
  50. G_linsfl Set bounding flag of line
  51. G_lipost Line-point side test
  52. G_ln2imp Point-vector definition of 2D line to implicit form
  53. G_lsqcir Least-squares circle to a set of 2D points
  54. G_lsqdln Best fitting line to scattered points
  55. G_lsqdpl Best fitting plane to scattered points
  56. G_lsqln2 Least-squares line to a set of 2D points
  57. G_lsqln3 Least-squares line to a set of 3D points
  58. G_lsqpln Best-fit plane to a set of 3D points
  59. G_lsqsph Leas-squares sphere to a set of 3D points
  60. G_makitv Make interval object
  61. G_makln1 Make line object from end points
  62. G_makln2 Make line object from start point and direction vector
  63. G_makntl Make point net object
  64. G_makpln Make plane object from point and normal vector
  65. G_makppl Make polgon object
  66. G_makrct Make rectangle object
  67. G_mxapln Maximum area plane to grid of points
  68. G_netbox Compute bounding box of point net
  69. G_netleg Find index of control net leg closest to a given point
  70. G_ntlbre Break net object down to its components
  71. G_plnbre Break plane object down to its components
  72. G_plnimp Point-normal definition of plane to implicit form
  73. G_plnnor Get normal vector of plane
  74. G_plpost Plane-point side test
  75. G_po1box Compute the min-max box of a 1-D point array
  76. G_po1ext Compute maximum extent of 1-D point array
  77. G_po2box Compute the min-max box of a 2-D point array
  78. G_po2ext Compute maximum extent of 2-D point array
  79. G_poicln Find k closest points to given point in 2-D point set
  80. G_poiord Order points along a 3-D curve
  81. G_poirct Bounding Rectangle of a 2D point set
  82. G_polbox Compute bounding box of polygon
  83. G_polleg Find index of polygon leg closest to a given point
  84. G_poloff Compute the offset of a polygon
  85. G_polpln Plane fit to 3D polyline points
  86. G_polppr Get parameter of point based om polygonal approximation
  87. G_pplbre Break polygon object down to its components
  88. G_prjpab Project point onto line segment
  89. G_prjphp Project point onto a quadrilateral
  90. G_prjpln Project point onto a line
  91. G_prjppl Project point onto a plane
  92. G_pyarea Area and orientation of a closed 2D polygon
  93. G_rctbre Break rectangle object down to its components
  94. G_rctitv Convert rectangle into two intervals
  95. G_reflcp Reflect a control point through a plane
  96. G_sphcer Compute center and radius of a sphere given by 4 points
  97. G_tra3da Compute 3D affine transf. matrix given 4 points and image
  98. G_traaxl General axial transformations
  99. G_tragnr Compute general rotation matrix
  100. G_traort Matrix to take one orthonormal system into another
  101. G_traro2 Rotate 2-D point set
  102. G_trasc2 Scale 2-D point set
  103. G_trash2 Shear 2-D point set
  104. G_tratr2 Translate 2-D point set
  105. G_tratrl Compute translation matrix
  106. G_travec Compute matrix to take one 2-D unit vector into another
  107. G_traxyz Transform general vector into one of the principal axes
  108. G_vecang Compute the angle between two vectors
  109. G_veccmb Compute the combination of two vectors
  110. G_veccop Compute a copy of a given vector
  111. G_veccos Compute the cosine of the angle between two vectors
  112. G_veccro Compute cross product of two vectors
  113. G_veccrp Compute cross product of vectors passed in by reference
  114. G_vecdan Compute the directed angle between two 2-D vectors
  115. G_vecdcp Difference vector between two control points in 3-D
  116. G_vecdif Compute the difference of two vectors
  117. G_vecdir Compute direction vector from two points
  118. G_vecdop Compute dot product of vectors passed in by reference
  119. G_vecdot Compute the dot product of two vectors
  120. G_vecmag Compute the magnitude of a vector
  121. G_vecmak Make VECTOR data type from <x,y,z> data
  122. G_vecmap Compute the magnitude of a vector passed in by reference
  123. G_vecmix Compute the mixed product of three vectors
  124. G_vecnip Normalize a given vector passed in by reference
  125. G_vecnor Normalize a given vector
  126. G_vecper Compute a vector perpendicular to a given 2-D vector
  127. G_vecpfv Compute point along a vector
  128. G_vecrev Reverse the direction of a given vector
  129. G_vecrvp Reverse the direction of a given vector in place
  130. G_vecrwp Reverse direction of a vector wrt another vector in place
  131. G_vecrwv Reverse direction of a vector wrt another vector
  132. G_vecsca Scale a given vector
  133. G_vecscp Scale a given vector passed in by reference
  134. G_vecsum Compute the sum of two vectors

Mathematical

  1. M_chkfop Check floating point operations for under- and overflow
  2. M_cmabre Get members of control point matrix object
  3. M_cmachk Check if memory is needed to store control point matrix
  4. M_cmacmp Get matrix pointer of control point matrix object
  5. M_cmadef Set parameters of control point matrix
  6. M_cmaind Get highest indexes of control point matrix object
  7. M_cplevn Evaluate polynomial curve given in power basis form
  8. M_cpswap Swap two control points
  9. M_CTridiag Solve corner triDiagonal system
  10. M_Tridiag: Solve triDiagonal system
  11. M_espcur Compute equally spaced points on a curve
  12. M_espsur Compute equally spaced points on a surface
  13. M_fliflo Generate a randon sequence of flips and flops
  14. M_forbac Forward elimination and backward substitution
  15. M_getcma Allocate memory to store control point matrix elements
  16. M_getima Allocate memory to store integer matrix elements
  17. M_getpma Allocate memory to store point matrix elements
  18. M_getrma Allocate memory to store real matrix elements
  19. M_i1mima Minimum or maximum of 1-D integer array
  20. M_i2mima Minimum or maximum of 2-D integer array
  21. M_imabre Get members of integer matrix object
  22. M_imachk Check if memory is needed to store an integer matrix
  23. M_imadef Set parameters of integer matrix
  24. M_imaimp Get matrix pointer of integer matrix object
  25. M_imaind Get highest indexes of integer matrix object
  26. M_inicma Initialize a control point matrix to NULL
  27. M_iniima Initialize an integer matrix to NULL
  28. M_inipma Initialize a point matrix to NULL
  29. M_inirma Initialize a real matrix to NULL
  30. M_inrand Generate a random number in the range of 0 to RAND_MAX
  31. M_inrhas Create hash table for reals
  32. M_inswap Swap two integer numbers
  33. M_intfel Find element in a sorted integer array
  34. M_intfsp Find interval a given integer value is in
  35. M_iscman Is control point matrix initialized to NULL?
  36. M_ishel2 Sort index array using Shellsort output index array
  37. M_ishell Sort index array using Shellsort
  38. M_isiman Is integer matrix initialized to NULL?
  39. M_ispman Is point matrix initialized to NULL?
  40. M_isrman Is real matrix initialized to NULL?
  41. M_lsslsy Least squares solution to linear system of equations
  42. M_ludcmp LU decompose a square matrix
  43. M_ludpiv LU decomposition with partial pivoting
  44. M_makcma Define control point matrix
  45. M_makima Define integer matrix
  46. M_makpma Define point matrix
  47. M_makrma Define real matrix
  48. M_minfun Minimize a scalar-valued function of 1 variable
  49. M_pascal Compute i-th row of Pascal triangle from i-1th row
  50. M_pastri Compute Pascal triangle
  51. M_pmabre Get members of point matrix object
  52. M_pmachk Check if memory is needed to store a point matrix
  53. M_pmadef Set parameters of point matrix
  54. M_pmaind Get highest indexes of point matrix object
  55. M_pmapmp Get matrix pointer of point matrix object
  56. M_pofbpv Forward/backward with partial pivoting and POINT rhs
  57. M_polder Evaluate polynomial and its derivatives
  58. M_polnew Polynomial root finding via Newton's method
  59. M_poswap Swap two points
  60. M_prtrma Print real matrix data to the standard output
  61. M_quades Solve quadratic equation
  62. M_r1mima Minimum or maximum of 1-D real array
  63. M_r2mima Minimum or maximum of 2-D real array
  64. M_rafbpv Forward/backward with partial pivoting
  65. M_rafoba Forward elimination and backward substitution for reals
  66. M_reaclu Find clusters in a sorted array
  67. M_reafsp Find interval a given real value is in
  68. M_rerhas Retrieve elements from hash table
  69. M_reswap Swap two real numbers
  70. M_rinsch Insertion search on a real array
  71. M_rishel Sort real and integer array using Shellsort
  72. M_rmabre Get members of real matrix object
  73. M_rmachk Check if memory is needed to store a real matrix
  74. M_rmacpt Product of real matrix and control point array
  75. M_rmadef Set parameters of real matrix
  76. M_rmaevv Compute eigenvalues and eigenvectors of a matrix
  77. M_rmaind Get highest indexes of real matrix object
  78. M_rmainv Compute the inverse of a real matrix
  79. M_rmaivp Inverse of a real matrix with partial pivoting
  80. M_rmaivs Invers of a real matrix with singe value decomposition
  81. M_rmamtm Product of real matrix and its transpose
  82. M_rmamtr Product of real matrix and the transpose of another
  83. M_rmamul Compute the product of two real matrices
  84. M_rmapoi Product of real matrix and point array
  85. M_rmarmp Get matrix pointer of real matrix object
  86. M_rmatrp Compute the transpose of a real matrix
  87. M_rmcprm Product of matrix - control point - transpose of matrix
  88. M_rrshel Sort real array pair using Shellsort
  89. M_rshel2 Sort real array using Shellsort output index array
  90. M_rshell Sort real array using Shellsort
  91. M_splevn Evaluate polynomial surface given in power basis form
  92. M_svdcpf Single Value Decomposition, decomposition, full matrix
  93. M_svdinv Compute inverse of real matrix using Single Value Decomp
  94. M_svdsbf Single Value Decomposition, substitution, full matrix
  95. M_tanaki Compute a tangent vector via the 5-point Akima method
  96. M_tanbes Compute a tangent vector via the 3-point Bessel method
  97. M_uprhas Update hash table by adding an element to it

NURBS

These NURBS routines (N_xxxxxx) classified by type:  Basic (B),  Advanced (A), and Tessellation (T).

 Entry-level users will find it easier to work with the 'B' routines.

 

Conics

  1. B N_conarc  Create a conic arc
  2. B N_conbca  Create Bezier cubic/quartic circular arc <= 180 degrees
  3. B N_conci2  Create a quadratic circle/circular arc
  4. B N_conci4  Create a quartic degree 4 circle/circular arc
  5. B N_conci5  Create a quintic circle/circular arc
  6. B N_concir  Create a circle/circular arc
  7. B N_conciw  Extract circle weights
  8. B N_concsc  Create a cubic semi-circle
  9. B N_conell  Create a ellipse/elliptical arc
  10. B N_congeo  Compute geometric definition of conic
  11. B N_conimp  Compute the implicit equation of a conic curve
  12. B N_consha  Compute conic shape invariance
  13. B N_contyp  Determine the type of conic
  14. B U_GetConicData  Get conic data for arc creation

Curves

  1. B N_curbox  Compute min-max box of a curve
  2. B N_curcdr  Compute derivative of curvature of curve
  3. B N_curcgc  Is a curve Gn smoothly closed
  4. B N_curcrv  Compute curvature and osculating circle of a curve
  5. B N_curder  Compute derivatives of a curve
  6. B N_curevn  Compute a point on a curve
  7. B N_curext  Compute largest extent of a curve
  8. B N_curfre  Compute the Frenet frame of a curve at a given point
  9. B N_curg1s  Get G1-continuous segments of a curve
  10. B N_curgds  Get degenerate segments of a curve
  11. B N_curglc  Get linear and curved segments of a curve
  12. B N_curipv  Compute minimum position vector of curve control points
  13. B N_curkts  Scale knot vector of a curve to given interval
  14. B N_curlin  Create line as a curve
  15. B N_curln2  Create line as a curve 2 points
  16. B N_curmpv  Compute maximum position vector of curve control points
  17. B N_curmwp  Compute curve min-max weights and position vectors
  18. B N_curpoi  Create point as a degenerate curve
  19. B N_curprj  Project a curve onto a plane
  20. B N_currev  Reverse a curve
  21. B N_currot  Rotate a curve about a general axis
  22. B N_cursca  Scale a curve with respect to a point
  23. B N_curtan  Unit tangent and point of a curve
  24. B N_curtra  Transform a curve given a 4x4 matrix
  25. B N_curtrl  Translate a curve
  26. B N_curtrn  Translate a curve, but not in place
  27. B N_curtyp  Determine type of curve
  28. B N_curunc  Unclamp a curve
  29. B N_curunu  Unclamp a curve with a given knot vector
  30. A N_curadm  Compute the average position vector magnitude of a curve
  31. A N_curali  Align a  curve to a given coordinate frame
  32. A N_curbod  Upper bound on second derivative of offset curve
  33. A N_curbsd  Upper bound on second derivative of a  curve
  34. A N_curdrk  Compute derivatives of a  curve wrt a knot
  35. A N_curesp  Compute equally spaced points on a curve
  36. A N_cureve  Compute point and derivatives on extended curve
  37. A N_curevr  Compute a point on a  curve in homogeneous space
  38. A N_curfod  1st and 2nd derivatives of functional curve offset
  39. A N_curmep  Modify curve so that an endpoint passes through a point
  40. A N_curodr  Compute 1st and 2nd derivatives of offset curves
  41. A N_currdr  Derivatives of a  curve in homogeneous space
  42. A N_curswe  Scale weighted control points of  curve
  43. A N_curxcd  Extend a curve a given distance
  44. A N_curxcp  Extend a curve to a point
  45. A N_curxcr  Extend a curve a given parametric distance

Curve Functions

  1. B N_cfnder  Compute derivatives of a curve function
  2. B N_cfnevn  Compute a point on a curve function
  3. A N_cfndrk  Compute derivatives of a curve function wrt a knot
  4. A N_cfnrbf  Evaluate rational basis function given as curve function

Curve Polynomials

  1. B N_cplder  Compute derivatives of a power basis curve
  2. B N_cplevn  Compute a point on a power basis curve
  3. B N_cplrep  Reparameterize a power basis curve

Surfaces

  1. B N_surbox  Compute min-max box of a surface
  2. B N_surcgc  Is a surface Gn smoothly closed
  3. B N_surcrv  Compute Gaussian, mean and principal curvatures
  4. B N_surder  Compute derivatives of a surface
  5. B N_suresc  Compute a point on a surface curve
  6. B N_surevn  Compute a point on a surface
  7. B N_surext  Compute largest extent of a surface
  8. B N_surgdp  Get degenerate patch strips of a surface
  9. B N_surkts  Scale knot vectors of a surface to given rectangle
  10. B N_surmpv  Compute maximum position vector of surface control points
  11. B N_surmwp  Compute surface min-max weights and position vectors
  12. B N_surnor  Compute the surface normal at given parameter values
  13. B N_surnrp  Compute the surface normal at a pole
  14. B N_surprj  Project a surface onto a plane
  15. B N_surrev  Reverse a surface
  16. B N_surrot  Rotate a surface about a general axis
  17. B N_sursca  Scale a surface with respect to a point
  18. B N_surtra  Transform a surface given a 4x4 matrix
  19. B N_surtrl  Translate a surface
  20. B N_surtyp  Determine type of surface
  21. B N_surunc  Unclamp a surface
  22. B N_suruuv  Unclamp a surface with given knot vectors
  23. A N_surbnd  Upper bound on second derivative of unit normal
  24. A N_surbod  Upper bound on second derivatives of offset surface
  25. A N_surbsd  Upper bound on second derivative of a  surface
  26. A N_surdcp Compute derivatives of a surface wrt a control point
  27. A N_surdrk  Compute derivatives of a  surface wrt a knot
  28. A N_suresp  Compute equally spaced points on a surface
  29. A N_sureve  Compute point and derivatives on extended surface
  30. A N_surevg  Compute a grid of points on a  surface
  31. A N_surfod  1st and 2nd derivatives of functional surface offset
  32. A N_surmbc  Modify surface to assume new boundary curve
  33. A N_surndr  Compute 1st and 2nd derivatives of UNIT surface normal
  34. A N_surngp  Compute points and unit normals at a grid of points
  35. A N_surrdr  Derivatives of a  surface in homogeneous space
  36. A N_surswe  Scale weighted control points of  surface
  37. A N_surxsc  Extend a surface to a curve
  38. A N_surxsd  Extend a surface a given distance
  39. A N_surxsr  Extend a surface a given parametric distance

Common Surfaces

  1. B N_cmsbil  Create bilinear surface
  2. B N_cmsccp  Create a cylinder/cone surface/patch
  3. B N_cmsell  Create a ellipsoid/patch
  4. B N_cmsgcl  Create a generalized cylinder
  5. B N_cmsgco  Create a generalized cone between a curve and a point
  6. B N_cmshyp  Create a hyperboloid of one sheet/hyperbolic patch
  7. B N_cmspar  Create a elliptic parabaloid/patch
  8. B N_cmsrev  Create surface of revolution
  9. B N_cmsrls  Create a ruled surface between two arbitrary curves
  10. B N_cmssph  Create a sphere/spherical patch
  11. B N_cmstor  Create a torus/toroidal patch
  12. A N_cmsrul  Ruled surface of two curves using symbolic operators

Advanced Surface Constructions

  1. A N_ascacb  Approximate cross-boundary derivative field
  2. A N_ascadf  Adjust derivative field
  3. A N_ascase  Approximate surface skinning with error bound
  4. A N_ascask  Approximate surface skinning
  5. A N_ascasu  Approximate surface skinning with given knot vector
  6. A N_ascbbc  Bicubic Coons surface through boundary and derivatives
  7. A N_ascbc3  Bicubic Coons surf given bndys, derivs and tensor-surf
  8. A N_ascbcc  Bicubic Coons surface through four boundary curves
  9. A N_ascblc  Bilinear Coons surface through four boundary curves
  10. A N_asccbd  Compute cross-boundary derivative field
  11. A N_asccbv  Compute "B" vectors for curve alignment
  12. A N_asccd2  Compute cross-boundary derivative field
  13. A N_asccd3  Compute cross-boundary derivatives for Coons surface
  14. A N_asccpg  Make intersection parameters compatible for Gordon sur
  15. A N_ascdfb  Cross-boundary derivative from surface, end twists and derivatives
  16. A N_ascdfs  Cross-boundary derivative data from  surface
  17. A N_ascdfv  Cross-boundary derivative data from vector and curve
  18. A N_ascdvf  Cross-boundary derivative data from vector field
  19. A N_ascgor  Gordon surface trough compatible non-rational curves
  20. A N_ascgsk  General surface skinning
  21. A N_ascgsu  Surface skinning with given parameters and knot vector
  22. A N_ascgt1  Compute twist vectors for bicubic Coons surface
  23. A N_ascgtn  Compute tensor product surface for Coons construction
  24. A N_ascgws  Get weight and scale factor for G1 continuity
  25. A N_ascici  Iso-curve inversion/projection using Newton's method
  26. A N_asckim  Merge knot vectors to have the same internal knots
  27. A N_ascnpi  N-sided patch construction to boundary and derivatives
  28. A N_ascsbc  Approximate skinning with boundary conditions and rails
  29. A N_ascske  Surface skinning via approximation of cross-sectional curves
  30. A N_ascssk  General spine curve-based surface skinning
  31. A N_ascswe  Create a swept  surface
  32. A N_ascsws  Swept  surface with boundary conditions
  33. A N_ascSweepCrossTangentCurve
  34. A N_ascswu  Create a swung surface
  35. A N_asctsw  Create a translational sweep surface

Surface Functions

  1. B N_sfnder  Compute all derivatives of a surface function
  2. B N_sfnevn  Compute a point on a surface function
  3. A N_sfnrbf  Evaluate rat basis function given as a surface function
  4. A N_sfndrk  Compute derivatives of a surface function wrt a knot
  5. A N_sfnevg  Compute a grid of points on a surface function

Surface Polynomials

  1. B N_splder  Compute derivatives of a power basis surface
  2. B N_splevn  Compute a point on a power basis surface
  3. B N_splrep  Reparameterize a power basis surface

Fitting

  1. B N_fitbca  Best fitting circle or circular arc to a set of points
  2. B N_fitBArc  Compute a biarc to given end points and end tangents 
  3. B N_fitCubic  Cubic spline interpolation
  4. B N_fitcfs  Curve interpolation through row/column of surface data
  5. B N_fitciu  Curve interpolation with specified knot vector
  6. B N_fitcpa  Parameterization for global curve interpolation
  7. B N_fitcsp  Cubic spline interpolation
  8. B N_fitPeriodicCubic  Periodic cubic spline interpolation
  9. B N_fitfpa  Parameterization for global functional interpolation
  10. B N_fitgca  Global curve approximation with arbitrary degree
  11. B N_fitgcc  Curve interpolation to closed data with end conditions
  12. B N_fitgcd  Curve interpolation with end derivatives specified
  13. B N_fitgch  Curve interpolation with given higher end derivatives
  14. B N_fitgci  Global curve interpolation with arbitrary degree
  15. B N_fitgct Curve interpolation with end tangents specified
  16. B N_fitgfi  Global function interpolation with arbitrary degree
  17. B N_fitgsa  Global surface approximation with arbitrary degree
  18. B N_fitgsi  Global surface interpolation with arbitrary degrees
  19. B N_fitkna  Compute knot vector for global curve approximation
  20. B N_fitknd  Knot vector for curve interpolation with end derivatives
  21. B N_fitknh  Knot vector for interpolation with high end derivatives
  22. B N_fitkni  Compute knot vector for global curve interpolation
  23. B N_fitlin  Best fitting line segment to a set of random points
  24. B N_fitpln  Best fitting plane to random points
  25. B N_fitsfi  Surface function interpolation with arbitrary degrees
  26. B N_fitspa  Parameterization for global surface interpolation
  27. A N_fitbia  Compute a biarc to given end points and end tangents
  28. A N_fitcae  Curve approximation with error bound specified
  29. A N_fitcak  Curve approximation with knots and end tangents
  30. A N_fitcat  Global curve approximation with end tangents
  31. A N_fitcau  Curve approximation with specified knot vector
  32. A N_fitcba  Data approximation with piecewise biarc segments
  33. A N_fitcca  Data approximation with piecewise cubic segments
  34. A N_fitcdm  Curve interpolation with end derivatives and matrix
  35. A N_fitcdu  Curve interpolation with end derivatives and knot vector
  36. A N_fitcek  Curve approximation with error bound and knot vector
  37. A N_fitcet  Curve approximation with error bound & end constraints
  38. A N_fitcfd  Curve interpolation with first derivatives specified
  39. A N_fitcfu  Curve interpolation with first derivatives & knot vector
  40. A N_fitcik  Curve interpolation with knots and end tangents
  41. A N_fitcim  Curve interpolation with specified matrix
  42. A N_fitcir  Curve interpolation with piecewise circular arcs
  43. A N_fitcis  Interpolate points based on curve shaping
  44. A N_fitclc  Curve interpolation with C1 non-rational cubic curves
  45. A N_fitclt  Local C1 cubic curve interpolation with end tangents
  46. A N_fitcon  Curve interpolation with piecewise conic arcs
  47. A N_fitcqa  Data approximation with piecewise conic segments
  48. A N_fitcra  Remove all removable knots from an approximating curve
  49. A N_fitcrd  Remove all removable knots with derivative constraints
  50. A N_fitcrp  Remove knots with derivative constraints and priorities
  51. A N_fitctm  Curve interpolation with end derivative and matrix
  52. A N_fitctu  Curve interpolation with end derivative and knot vector
  53. A N_fitcwl  Weighted & constrained least-squares curve approximation
  54. A N_fitcwp Weighted & constrained least squares periodic fit to points
  55. A N_fitcwu  Weighted/constrained least-squares with knot vector
  56. A N_fitgac  Curve approximation to closed data with end conditions
  57. A N_fitgah  Global curve approximation with end derivatives
  58. A N_fitgfu  Function interpolation with given parameters
  59. A N_fitghu  Curve approximation with end derivatives and knots
  60. A N_fither  Fit Hermite curve to end kth and (k+1)th derivatives
  61. A N_fitkad  Knot vector for curve interpolation with all derivatives
  62. A N_fitkah  Knot vector for curve approximation with end derivatives
  63. A N_fitknf  Knot vectors for random data approximation
  64. A N_fitknr  Compute knot vectors for surface approx to random points
  65. A N_fitknt  Knot vector for curve interpolation with end derivative
  66. A N_fitlca  Check scatter and compute local cubic approximant
  67. A N_fitlqa  Check scatter and compute local conic approximant
  68. A N_fitpar  Curve interpolation with piecewise parabolic arcs
  69. A N_fitpte  Least squares curve fit to points
  70. A N_fitPointsNormals Fit surface to an array of points and normals
  71. A N_fitRandomPN Fit surface to random set of points and normals.
  72. A N_fitrma  Compute interpolation matrix for curve fitting
  73. A N_fitrp1  Compute parameters for surface fit of random data
  74. A N_fitrp2  Compute parameters for surface fit of random data
  75. A N_fitrp3  Parameters for surface fitting of random data
  76. A N_fitsab  Surface approximation with boundary curves specified
  77. A N_fitsae  Surface approximation with error bound specified
  78. A N_fitsap  Surface approximation to variable number of points
  79. A N_fitsas  Approximate random points based on surface shaping
  80. A N_fitsat  Surface approximation with error bounds and tangents
  81. A N_fitsau  Surface approximation with given knot vectors
  82. A N_fitscp  Smooth 3D points in preparation for curve fitting
  83. A N_fitsib  Surface interpolation to a nxm points and boundaries
  84. A N_fitsis  Interpolate points based on surface shaping
  85. A N_fitsit  Surface interpolation with tangent constraints
  86. A N_fitsiu  Surface interpolation with given knot vectors
  87. A N_fitslb  Surface interpolation with C11 bicubic surfaces
  88. A N_fitspl  Best fitting sphere to a set of points
  89. A N_fitspr  Parameterization for surface interpolation in u/v-dis
  90. A N_fitspg  Best fitting sphere to a set of points
  91. A N_fitsr1  Least squares surface approximation to random points
  92. A N_fitsr2  Least squares surface approximation to random points
  93. A N_fitsr3 Periodic Least squares fit to random points
  94. A N_fitsra  Remove all removable knots from an approximating surface
  95. A N_fitsrb  Update surface removal bound for surface fitting
  96. A N_fitsrc  Remove all removable knots from an interpolating surface
  97. A N_fitsrt  Remove all removable knots from an approximating surface
  98. A N_fitste  Tangent error for one knot removal for fitting
  99. A N_fitsvp  Surface interpolation to variable number of points
  100. A N_fittau  Curve approximation with end tangents, knots and pars

Approximations

  1. A N_appbca  Approximate curve with circular arcs and biarcs
  2. A N_appber  Check error of biarc approximation
  3. A N_appcir  Approximate circle A full or arc with non-rational curve
  4. A N_appcos  Approximate curve on surface from uv-curve
  5. A N_appcu1  Compute number of ctrl pts for circle approximation
  6. A N_appccp  Non-rational approximation of cylinder or cone
  7. A N_appcra  Non-rational approximation of a circle or arc
  8. A N_appcu2  Perform non-rational curve fit to circle data
  9. A N_appcSpiral Cubic approximation of a spiral with error specified
  10. A N_appfoc  Functional offset of  curve using point sampling
  11. A N_appfos  Functional offset of  surface using point sampling
  12. A N_appgca  Approximate  curve with non-rational curve
  13. A N_appgck  Curve approximation with knot vector passed in
  14. A N_appgsa  Approximate  surface with non-rational surface
  15. A N_appnca  Approximate any G1  curve with non-rational curve
  16. A N_appncp  Get points for approximation of curves
  17. A N_appoca  Approximate offset of  curve with non-rational curve
  18. A N_appocp  Offset of  curve
  19. A N_appocs  Offset of  curve using point sampling
  20. A N_apposs  Offset of  surface using point sampling
  21. A N_apppca  Approximate procedural curve with error bound specified
  22. A N_apppcf  Fit procedural curve points with error bound specified
  23. A N_apppcp  Get points for approximation of procedural curve
  24. A N_apprev  Non-rational approaximation of surface of revolution
  25. A N_appsph  Non-rational approximation of sphere
  26. A N_appsSiral Sweep a curve along a spiral ( or helix)
  27. A N_appsbs  Approximate subsurface bounded by 4 curves
  28. A N_appsun  Approximate unit normal of surface
  29. A N_apptor  Non-rational approximation of a torus

Shaping

  1. A N_shacab  Shape curve to approximate given points
  2. A N_shacap  Shape curve to approximate given points
  3. A N_shacax  Axial deformations of curves
  4. A N_shacbe  Bend a  curve
  5. A N_shacca  Constraint-based curve shaping with interp or approx
  6. A N_shaccb  Constraint-based curve modification
  7. A N_shacfl  Flatten a  curve
  8. A N_shacin  Shape curve to interpolate given points
  9. A N_shacmw  Modify one curve weight
  10. A N_shacra  Remove all removable knots from a curve being shaped
  11. A N_shacrb  Make rational basis function for curve warping