Skip to content
Shapemetry

Surface

3D NURBS surfaces. Wire: NurbsSurface JSON string.

import { Surface } from '@huukhanhnguyen/geometry'

API reference

Surface.area

Surface.area(surface_json: string, deflection?: number | null, maximum_grid_divisions?: number | null): number

Wasm: surface_area

Surface.closestParam

Surface.closestParam(surface_json: string, x: number, y: number, z: number, use_seed: boolean, seed_u: number, seed_v: number): Float64Array

Wasm: surface_closest_param

Surface.curvature

Surface.curvature(surface_json: string, u: number, v: number): Float64Array

Wasm: surface_curvature

Surface.derivatives

Surface.derivatives(surface_json: string, u: number, v: number): Float64Array

Wasm: surface_derivatives

Surface.derivatives2

Surface.derivatives2(surface_json: string, u: number, v: number): Float64Array

Wasm: surface_derivatives2

Surface.derivativesAtVList

Surface.derivativesAtVList(surface_json: string, u: number, vs: Float64Array): Float64Array

Wasm: surface_derivatives_at_v_list

Surface.fromCorners

Surface.fromCorners(corners: Float64Array): string

Wasm: surface_from_corners

Surface.isocurve

Surface.isocurve(surface_json: string, t: number, direction: string): string

Wasm: surface_isocurve

Surface.loft

Surface.loft(curves_json: string, degree_v: number): string

Wasm: surface_loft

Surface.normalAt

Surface.normalAt(surface_json: string, u: number, v: number): Float64Array

Wasm: surface_normal_at

Surface.patch

Surface.patch(curves_json: string, grid_n: number, samples: number): string

Wasm: surface_patch

Surface.patchWithEdges

Surface.patchWithEdges(edges_json: string, grid_n: number, samples: number): string

Wasm: surface_patch_with_edges

Surface.pipe

Surface.pipe(profiles_json: string, path_json: string, samples: number): string

Wasm: surface_pipe

Surface.point

Surface.point(surface_json: string, u: number, v: number): Float64Array

Wasm: surface_point

Surface.points

Surface.points(surface_json: string, uvs: Float64Array): Float64Array

Wasm: surface_points

Surface.reverse

Surface.reverse(surface_json: string): string

Wasm: surface_reverse

Surface.revolve

Surface.revolve(curves_json: string, center: Float64Array, axis: Float64Array, angle: number): string

Wasm: surface_revolve

Surface.split

Surface.split(surface_json: string, t: number, direction: string): string

Wasm: surface_split

Surface.tessellate

Surface.tessellate(surface_json: string, deflection?: number | null, maximum_grid_divisions?: number | null): Float64Array

Wasm: surface_tessellate

Surface.torus

Surface.torus(center: Float64Array, axis: Float64Array, r_major: number, r_minor: number): string

Wasm: surface_torus

Surface.transform

Surface.transform(surface_json: string, elements: Float64Array): string

Wasm: surface_transform

Surface.uniformGrid

Surface.uniformGrid(degree_u: number, degree_v: number, rows: number, columns: number, control_points: Float64Array, weights: Float64Array): string

Wasm: surface_uniform_grid

See GEOMETRY_CATALOG.md for catalog ownership.

Last updated: 📖 1 min readEdit on GitHub