@itwin/core-frontend
Version:
iTwin.js frontend components
35 lines • 1.33 kB
TypeScript
/** @packageDocumentation
* @module Rendering
*/
import { IndexMap } from "@itwin/core-bentley";
import { Point2d, Point3d, XYAndZ } from "@itwin/core-geometry";
import { Feature, OctEncodedNormal } from "@itwin/core-common";
/** @internal */
export interface VertexKeyProps {
position: Point3d;
fillColor: number;
normal?: OctEncodedNormal;
uvParam?: Point2d;
feature?: Feature;
}
/** @internal */
export declare class VertexKey {
readonly position: Point3d;
readonly normal?: OctEncodedNormal;
readonly uvParam?: Point2d;
readonly fillColor: number;
readonly feature?: Feature;
constructor(position: Point3d, fillColor: number, normal?: OctEncodedNormal, uvParam?: Point2d, feature?: Feature);
static create(props: VertexKeyProps): VertexKey;
equals(rhs: VertexKey, tolerance: XYAndZ): boolean;
compare(rhs: VertexKey, tolerance: XYAndZ): number;
}
/** @internal */
export declare class VertexMap extends IndexMap<VertexKey> {
private readonly _tolerance;
constructor(tolerance: XYAndZ);
insertKey(props: VertexKeyProps, onInsert?: (vk: VertexKey) => any): number;
arePositionsAlmostEqual(p0: VertexKeyProps, p1: VertexKeyProps): boolean;
comparePositions(p0: VertexKeyProps, p1: VertexKeyProps): number;
}
//# sourceMappingURL=VertexKey.d.ts.map