import { Intersection, Object3D, Raycaster, Vector3 } from 'three';
import { IViewer } from '../GraphicsSystem/IView';
import { Filter } from './SelectFilter';
/**
 * 构造射线投射器.
 * @param {Vector3} ptVcs 屏幕坐标系的点
 */
export declare function GenerateRaycaster(ptVcs: Vector3, view: IViewer): Raycaster;
/**
 * 根据鼠标位置确定鼠标范围内选中的实体.
 * @param {Vector3} ptVcs 鼠标的屏幕点
 * @param {IViewer} view 指定视图
 * @param {Object3D} [selectObject] 选择的对象. 如果为空则为app.view.scene
 * @param {Boolean} selectBoxGetLastestEn 点选曲线和点时是否选取最后创建的 默认true
 * @returns {Object3D[]} 返回选择到的对象,注意该返回的对象并不会得到它的子对象.
 */
export declare function PointPick(ptVcs: Vector3, view: IViewer, filter?: Filter, selectObjects?: Object3D[], selectSize?: number): Object3D[];
export declare function PointPickOneObject(ptVcs: Vector3, view: IViewer, filter?: Filter, selectObjects?: Object3D[], useSelectBox?: boolean): Object3D | undefined;
export declare function Raycast(ray: Raycaster, objectCol: Object3D[], filter?: Filter): Intersection | undefined;
//# sourceMappingURL=PointPick.d.ts.map