UNPKG

@threepipe/plugin-svg-renderer

Version:

Plugins for SVG Rendering of 3d objects for Threepipe

57 lines 1.82 kB
import { PerspectiveCamera } from '../threepipe'; import { DrawPass, SVGDrawHandler, SVGDrawInfo, SVGDrawOptions, Viewmap, ViewmapBuildInfo, ViewmapOptions } from './core'; import { SVGMesh } from './core/SVGMesh'; import { Svg } from '@svgdotjs/svg.js'; export interface ExportOptions { prettify?: boolean; } export declare class SVGRenderInfo { resolution: { w: number; h: number; }; renderingTime: number; readonly svgDrawInfo: SVGDrawInfo; readonly viewmapInfo: ViewmapBuildInfo; } export interface ProgressInfo { currentStepName: string; currentStep: number; totalSteps: number; } /** * */ export declare class SVGRenderer { readonly viewmap: Viewmap; readonly drawHandler: SVGDrawHandler; constructor(vOptions?: ViewmapOptions, sOptions?: SVGDrawOptions); /** * Render a SVG file from the given meshes and returns it. * @param meshes Mehses to render * @param camera Camera used to compute the perspective * @param size Size of the render (will be scaled by camera aspect ratio) * @param options Options to customize the render * @param info Object containing info (e.g. times) on the rendering process * @returns SVG object from the Svgdotjs lib */ generateSVG(meshes: Array<SVGMesh>, camera: PerspectiveCamera, size: { w: number; h: number; }, info?: SVGRenderInfo): Promise<Svg>; /** * Adds a pass to the SVG rendering pipeline. * @param pass */ addPass(pass: DrawPass): void; /** * Removes a pass from the SVG rendering pipeline * @param pass */ removePass(pass: DrawPass): void; /** * Removes all the passes from the SVG rendering pipeline. */ clearPasses(): void; } //# sourceMappingURL=SVGRenderer.d.ts.map