import type { Edge } from "@thi.ng/adjacency"; import type { GroupAttribs, ITessellation } from "./api.js"; import { Group } from "./api/group.js"; /** * Creates a group of polygons from the given tessellation. If `attribs` are * given, they will be used as the group's attribs. * * @remarks * Also see: * * - [ITessellation](https://docs.thi.ng/umbrella/geom-tessellate/interfaces/ITessellation.html) * - {@link edgesFromTessellation} * - {@link edgePointsFromTessellation} * - {@link graphFromTessellation} * * @param tess * @param attribs */ export declare const groupFromTessellation: (tess: ITessellation, attribs?: GroupAttribs) => Group; /** * Create a directed or undirected graph from the given tessellation. The graph * is stored as * [`AdjacencyBitMatrix`](https://docs.thi.ng/umbrella/adjacency/classes/AdjacencyBitMatrix.html) * and can be edited, queried, and analyzed further. * * @remarks * Also see: * * - [ITessellation](https://docs.thi.ng/umbrella/geom-tessellate/interfaces/ITessellation.html) * - {@link edgesFromTessellation} * - {@link edgePointsFromTessellation} * - {@link groupFromTessellation} * * @param tessel */ export declare const graphFromTessellation: ({ points, faces }: ITessellation, directed?: boolean) => import("@thi.ng/adjacency").AdjacencyBitMatrix; /** * Returns an iterable of unique edges in the given tessellation, where each * edge is a 2-tuple of point indices `[a,b]`, each referring to points in the * tessellation's `points` array. * * @remarks * Also see: * * - [ITessellation](https://docs.thi.ng/umbrella/geom-tessellate/interfaces/ITessellation.html) * - {@link edgePointsFromTessellation} * - {@link graphFromTessellation} * - {@link groupFromTessellation} * * @example * ```ts * import * as g from "@thi.ng/geom"; * * // tessellate rect into a triangle fan * const tess = g.tessellate(g.rect(100), [g.TESSELLATE_TRI_FAN]); * * // extract unique edges (ignoring direction) * console.log([...g.edgesFromTessellation(tess)]); * // [[ 3, 4 ], [ 2, 3 ], [ 2, 4 ], [ 1, 2 ], * // [ 1, 4 ], [ 0, 1 ], [ 0, 3 ], [ 0, 4 ]] * ``` * * @param tess */ export declare const edgesFromTessellation: (tess: ITessellation) => Generator; /** * Similar to {@link edgesFromTessellation}, but returns edges as pairs of * points (instead of point IDs). * * @remarks * Also see: * * - [ITessellation](https://docs.thi.ng/umbrella/geom-tessellate/interfaces/ITessellation.html) * - {@link edgesFromTessellation} * - {@link graphFromTessellation} * - {@link groupFromTessellation} * * @param tess */ export declare const edgePointsFromTessellation: (tess: ITessellation) => IterableIterator; //# sourceMappingURL=from-tessellation.d.ts.map