videx-3d
Version:
React 3D component library designed for sub surface visualizations in the browser
46 lines (45 loc) • 1.72 kB
TypeScript
import { BufferGeometry, InstancedMesh, Material } from 'three';
import { PointerEvents } from '../../events/interaction-events';
import { SymbolsType } from '../../sdk/data/types/Symbol';
import { CommonComponentProps } from '../common';
/**
* Symbol props
* @expand
*/
export type SymbolProps = {
geometry: BufferGeometry;
material: Material | Material[];
data: SymbolsType;
customDepthMaterial?: Material;
customDistanceMaterial?: Material;
} & PointerEvents & CommonComponentProps;
/**
* A generic component used for simplifying mesh instancing. Use this component if you need a large number of
* meshes sharing the same base geometry and material, but that may be transformed or colored individually.
*
* Typical use case is for visualizations of data along a wellbore, such as in the `Shoes` and `FormationMarkers` component.
*
* @remarks
* Data, including colors, transformations and user defined data, must be mapped to the `SymbolsType` type.
*
* @example
* <Symbols
* position={position}
* data={data}
* geometry={geometry}
* material={material}
* layers={layers}
* />
*
* @see {@link SymbolsType}
* @see [InstancedMesh](https://threejs.org/docs/#api/en/objects/InstancedMesh)
*
* @group Components
*/
export declare const Symbols: import('react').ForwardRefExoticComponent<{
geometry: BufferGeometry;
material: Material | Material[];
data: SymbolsType;
customDepthMaterial?: Material;
customDistanceMaterial?: Material;
} & PointerEvents & CommonComponentProps & import('react').RefAttributes<InstancedMesh<BufferGeometry<import('three').NormalBufferAttributes>, Material | Material[], import('three').InstancedMeshEventMap>>>;