@ue-too/board / index / ZoomByHandlerFunction
型エイリアス: ZoomByHandlerFunction()
ZoomByHandlerFunction = (
delta,camera,config) =>number
定義: packages/board/src/camera/camera-rig/zoom-handler.ts:161
Handler function type for relative "zoom by" camera operations.
パラメータ
delta
number
Zoom level change (added to current zoom)
camera
Current camera instance
config
Zoom behavior configuration
戻り値
number
Transformed zoom delta (after applying restrictions and clamping)
Remarks
Zoom-by handlers process relative zoom change requests. They form a pipeline that can apply restrictions, clamping, and other transformations to the delta.
Handler pipeline pattern:
- Each handler receives the zoom delta, camera state, and config
- Returns a potentially modified delta
- Handlers can be chained using createHandlerChain
Common transformations:
- Boundary clamping (prevent exceeding min/max zoom)
- Zoom locking (return zero delta)
- Delta dampening or acceleration
例
typescript
const myZoomByHandler: ZoomByHandlerFunction = (delta, camera, config) => {
// Custom logic: dampen large zoom changes
if (Math.abs(delta) > 1.0) {
return delta * 0.5; // 50% dampening
}
return delta;
};参照
- createHandlerChain for composing handler pipelines
- createDefaultZoomByOnlyHandler for the default implementation