SurfaceEvaluate

A general purpose surface evaluator.

Syntax

rhinoscriptsyntax.SurfaceEvaluate ( surface_id, parameter, derivative)

rhinoscript.surface.SurfaceEvaluate ( surface_id, parameter, derivative)

Parameters

surface_id

Required.  String or Guid.  The object's identifier.

parameter

Required.  Tuple.  A tuple containing the U,V parameter to evaluate.

derivative

Required.  Number.  The number of derivatives to evaluate.

Returns

List

A list of length (derivative+1)*(derivative+2)/2 if successful.  The elements are as follows:

Element

Type

Description

0

Point3d

The 3-D point.

1

Vector3d

The first derivative.

2

Vector3d

The first derivative.

3

Vector3d

The second derivative.

4

Vector3d

The second derivative.

5

Vector3d

The second derivative.

6

Vector3d

etc...

None

If not successful, or on error.

Example

import rhinoscriptsyntax as rs

def TestSurfaceEvaluate():

    srf = rs.GetObject("Select surface to evaluate", rs.filter.surface, True)

    if srf is None: return

    point = rs.GetPointOnSurface(srf, "Point to evaluate")

    if point is None: return

    der = rs.GetInteger("Number of derivatives to evaluate", 1, 1)

    if der is None: return

    uv = rs.SurfaceClosestPoint(srf, point)

    res = rs.SurfaceEvaluate(srf, uv, der)

    if res is None:

        print "Failed to evaluate surface."

        return

    for i,r in enumerate(res):

        print i, " = ", r

TestSurfaceEvaluate()

Also See

EvaluateSurface

SurfaceClosestPoint