@kitware/vtk.js
Version:
Visualization Toolkit for the Web
110 lines (97 loc) • 2.98 kB
TypeScript
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;