import { Image } from '../../Image.js'; import type { Point } from '../../geometry/index.js'; import type { FastKeypoint } from '../keypoints/getFastKeypoints.js'; import type { Match } from '../matching/bruteForceMatch.js'; import type { DrawKeypointsOptions } from './drawKeypoints.js'; import type { DrawMatchesOptions } from './drawMatches.js'; export declare const MontageDisposition: { readonly HORIZONTAL: "horizontal"; readonly VERTICAL: "vertical"; }; export type MontageDisposition = (typeof MontageDisposition)[keyof typeof MontageDisposition]; export interface MontageOptions { /** * Factor by which to scale the images. * @default `1` */ scale?: number; /** * How should the images be aligned: vertically or horizontally. * @default `'horizontal'` */ disposition?: MontageDisposition; } export declare class Montage { /** * Scaled width of the first image. */ readonly sourceWidth: number; /** * Scaled height of the first image. */ readonly sourceHeight: number; /** * Scaled width of the second image. */ readonly destinationWidth: number; /** * Scaled height of the second image. */ readonly destinationHeight: number; /** * Origin of the destination / second image relative to top-left corner of the Montage. */ readonly destinationOrigin: Point; /** * Width of the Montage. */ readonly width: number; /** * Height of the Montage. */ readonly height: number; /** * Factor by which to scale the images are scaled in the montage. */ readonly scale: number; readonly disposition: MontageDisposition; /** * Image of the Montage. */ image: Image; /** * Create a Montage of two images. The two images are placed side by side for comparison. * @param source - First image. * @param destination - Second image. * @param options - Montage options. */ constructor(source: Image, destination: Image, options?: MontageOptions); /** * Draw keypoints on the Montage. * @param keypoints - Keypoints to draw. * @param options - Draw keypoints options. */ drawKeypoints(keypoints: FastKeypoint[], options?: DrawKeypointsOptions): void; /** * Draw the matches between source and destination keypoints. * @param matches - Matches to draw. * @param sourceKeypoints - Source keypoints. * @param destinationKeypoints - Destination keypoints. * @param options - Draw matches options. */ drawMatches(matches: Match[], sourceKeypoints: FastKeypoint[], destinationKeypoints: FastKeypoint[], options?: DrawMatchesOptions): void; } //# sourceMappingURL=Montage.d.ts.map