NurbsSurfaceResult

from acron.core import NurbsSurfaceResult
class NurbsSurfaceResult

Bases:

Bases: ReferenceCount

The result of a NurbsSurfaceEvaluator. This object represents a surface in a particular coordinate space. It can return the point and/or normal to the surface at any point.

Inheritance diagram

digraph inheritanceb5738ce789 { bgcolor=transparent; rankdir=BT; size="8.0, 12.0"; "DTOOL_SUPER_BASE" [fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=11,height=0.25,shape=box,style=""]; "NurbsSurfaceResult" [URL="acron.core.NurbsSurfaceResult.html#acron.core.NurbsSurfaceResult",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=11,height=0.25,shape=box,style="",target="_top",tooltip="/**"]; "ReferenceCount" -> "NurbsSurfaceResult" [arrowsize=0.75,style=""]; "ReferenceCount" [URL="acron.core.ReferenceCount.html#acron.core.ReferenceCount",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=11,height=0.25,shape=box,style="",target="_top",tooltip="/**"]; "DTOOL_SUPER_BASE" -> "ReferenceCount" [arrowsize=0.75,style=""]; }
__init__()

The constructor automatically builds up the result as the product of the indicated set of basis matrices and the indicated table of control vertex positions.

eval_extended_point()

Evaluates the surface in n-dimensional space according to the extended vertices associated with the surface in the indicated dimension.

eval_extended_points()

Simultaneously performs eval_extended_point() on a contiguous sequence of dimensions. The dimensions evaluated are d through (d + num_values - 1); the results are filled into the num_values elements in the indicated result array.

eval_normal()

Computes the normal to the surface at the indicated point in parametric time. This normal vector will not necessarily be normalized, and could be zero. See also eval_point().

eval_point()

Computes the point on the surface corresponding to the indicated value in parametric time. Returns true if the u, v values are valid, false otherwise.

eval_segment_extended_point()

Evaluates the surface in n-dimensional space according to the extended vertices associated with the surface in the indicated dimension.

eval_segment_extended_points()

Simultaneously performs eval_extended_point() on a contiguous sequence of dimensions. The dimensions evaluated are d through (d + num_values - 1); the results are filled into the num_values elements in the indicated result array.

eval_segment_normal()

As eval_segment_point(), but computes the normal to the surface at the indicated point. The normal vector will not necessarily be normalized, and could be zero.

eval_segment_point()

Evaluates the point on the surface corresponding to the indicated value in parametric time within the indicated surface segment. u and v should be in the range [0, 1].

The surface is internally represented as a number of connected (or possibly unconnected) piecewise continuous segments. The exact number of segments for a particular surface depends on the knot vector, and is returned by get_num_segments(). Normally, eval_point() is used to evaluate a point along the continuous surface, but when you care more about local continuity, you can use eval_segment_point() to evaluate the points along each segment.

get_end_u()

Returns the last legal value of u on the surface.

get_end_v()

Returns the last legal value of v on the surface.

get_num_u_segments()

Returns the number of piecewise continuous segments within the surface in the U direction. This number is usually not important unless you plan to call eval_segment_point().

get_num_v_segments()

Returns the number of piecewise continuous segments within the surface in the V direction. This number is usually not important unless you plan to call eval_segment_point().

get_segment_u()

Accepts a u value in the range [0, 1], and assumed to be relative to the indicated segment (as in eval_segment_point()), and returns the corresponding u value in the entire surface (as in eval_point()).

get_segment_v()

Accepts a v value in the range [0, 1], and assumed to be relative to the indicated segment (as in eval_segment_point()), and returns the corresponding v value in the entire surface (as in eval_point()).

get_start_u()

Returns the first legal value of u on the surface. Usually this is 0.0.

get_start_v()

Returns the first legal value of v on the surface. Usually this is 0.0.