/** @packageDocumentation * @module Polyface */ import { IndexedPolyface } from "../Polyface"; import { Angle } from "../../geometry3d/Angle"; /** * Helper context for normal averaging. * All methods are static. * @internal */ export declare class BuildAverageNormalsContext { /** * * At each vertex of the mesh * * Find clusters of almost parallel normals * * Compute simple average of those normals * * Index to the averages * * For typical meshes, this correctly clusters adjacent normals. * * One cam imagine a vertex with multiple "smooth cone-like" sets of incident facets such that averaging occurs among two nonadjacent cones. But this does not seem to be a problem in practice. * @param polyface polyface to update. * @param toleranceAngle averaging is done between normals up to this angle. */ static buildFastAverageNormals(polyface: IndexedPolyface, toleranceAngle: Angle): void; /** * Set up indexed normals with one normal in the plane of each facet of the mesh. * @param polyface mesh to modify */ static buildPerFaceNormals(polyface: IndexedPolyface): void; } //# sourceMappingURL=BuildAverageNormalsContext.d.ts.map