Skip to content

@ue-too/board / index / restrictZoomByHandler

函式: restrictZoomByHandler() ​

restrictZoomByHandler(delta, camera, config): number

定義於: packages/board/src/camera/camera-rig/zoom-handler.ts:362

Handler pipeline step that prevents "zoom by" operations when zoom is locked.

參數 ​

delta ​

number

Zoom level change

camera ​

BoardCamera

Current camera instance

config ​

ZoomHandlerRestrictConfig

Restriction configuration

回傳 ​

number

Zero (if locked) or delta (if unlocked)

備註 ​

This handler implements a global zoom lock for relative zoom operations.

Behavior:

  • If restrictZoom is true: Returns 0 (prevents any change)
  • If restrictZoom is false: Returns delta unchanged

Use this for:

  • Disabling zoom during specific application states
  • Fixed-zoom viewing modes
  • Read-only camera modes

Can be used standalone, but typically composed into a handler pipeline via createDefaultZoomByOnlyHandler or createHandlerChain.

範例 ​

typescript
const config: ZoomHandlerRestrictConfig = {
  restrictZoom: true  // Lock zoom
};

const delta = 0.5;
const result = restrictZoomByHandler(delta, camera, config);
// result = 0 (zoom locked, no change allowed)

參閱 ​

createDefaultZoomByOnlyHandler for default pipeline usage