UNPKG

@kitware/vtk.js

Version:

Visualization Toolkit for the Web

110 lines (97 loc) 2.98 kB
import { vtkAlgorithm, vtkObject } from './../../interfaces'; import { DesiredOutputPrecision } from './../../Common/DataModel/DataSetAttributes'; import { SolidType } from './PlatonicSolidSource/Constants'; /** * */ export interface IPlatonicSolidSourceInitialValues { solidType?: SolidType; outputPointsPrecision?: DesiredOutputPrecision; scale?: number; } type vtkPlatonicSolidSourceBase = vtkObject & Omit< vtkAlgorithm, | 'getInputData' | 'setInputData' | 'setInputConnection' | 'getInputConnection' | 'addInputConnection' | 'addInputData' >; export interface vtkPlatonicSolidSource extends vtkPlatonicSolidSourceBase { /** * Get the desired output precision. * @returns {DesiredOutputPrecision} */ getOutputPointsPrecision(): DesiredOutputPrecision; /** * Get the scale factor of the source. */ getScale(): number; /** * Get the solid type of the source. * @returns {SolidType} */ getSolidType(): SolidType; /** * Request data for the source. * @param inData * @param outData */ requestData(inData: any, outData: any): void; /** * Set the desired output precision. * @param {DesiredOutputPrecision} outputPointsPrecision */ setOutputPointsPrecision( outputPointsPrecision: DesiredOutputPrecision ): boolean; /** * Set the scale factor of the source. * @param {Number} scale The scale factor. */ setScale(scale: number): boolean; /** * Set the solid type of the source. * @param {SolidType} solidType */ setSolidType(solidType: SolidType): boolean; } /** * Method used to decorate a given object (publicAPI+model) with vtkPlatonicSolidSource characteristics. * * @param publicAPI object on which methods will be bounds (public) * @param model object on which data structure will be bounds (protected) * @param {IPlatonicSolidSourceInitialValues} [initialValues] (default: {}) */ export function extend( publicAPI: object, model: object, initialValues?: IPlatonicSolidSourceInitialValues ): void; /** * Method used to create a new instance of vtkPlatonicSolidSource. * @param {IPlatonicSolidSourceInitialValues} [initialValues] for pre-setting some of its content */ export function newInstance( initialValues?: IPlatonicSolidSourceInitialValues ): vtkPlatonicSolidSource; /** * vtkPlatonicSolidSource can generate each of the five Platonic solids: * tetrahedron, cube, octahedron, icosahedron, and dodecahedron. Each of the * solids is placed inside a sphere centered at the origin with radius 1.0. * * @example * ```js * import vtkPlatonicSolidSource from '@kitware/vtk.js/Filters/Sources/RegularPolygonSource'; * * const regularPolygonSource = vtkPlatonicSolidSource.newInstance(); * const polydata = regularPolygonSource.getOutputData(); * ``` */ export declare const vtkPlatonicSolidSource: { newInstance: typeof newInstance; extend: typeof extend; }; export default vtkPlatonicSolidSource;