点对点

This commit is contained in:
2025-07-26 20:12:34 +08:00
parent 4febfadd56
commit 68182d7764
11 changed files with 253 additions and 38 deletions

View File

@@ -17,6 +17,8 @@ namespace NBF
private SwipeGesture _swipeGesture;
private bool _focus;
private bool _canZoom;
private bool _canPan;
private Vector3 _zoomLimit;
private Rect _panLimit;
@@ -83,15 +85,19 @@ namespace NBF
{
_zoomLimit = previewableAsset.zoom;
_panLimit = previewableAsset.pan;
model.transform.localPosition = previewableAsset.position;
_canPan = previewableAsset.canPan;
_canZoom = previewableAsset.canZoom;
// model.transform.localPosition = previewableAsset.position;
model.transform.localScale = previewableAsset.scale;
model.transform.localRotation = Quaternion.Euler(previewableAsset.rotation);
}
else
{
_canPan = false;
_canZoom = false;
_zoomLimit = Vector3.zero;
_panLimit = Rect.zero;
model.transform.localPosition = previewableAsset.position;
// model.transform.localPosition = previewableAsset.position;
model.transform.localScale = Vector3.one;
model.transform.localRotation = Quaternion.Euler(Vector3.zero);
}
@@ -135,11 +141,12 @@ namespace NBF
v.y = 0;
if (Mathf.Abs(v.z) < 1) //消除手抖影响
v.z = 0;
_renderImage.StartRotate(v);
}
else
else if (_canPan)
{
v.y = -gesture.delta.y * 0.005f;
v.y = gesture.delta.y * 0.005f;
v.x = gesture.delta.x * 0.005f;
//平移
var pos = _renderImage.modelRoot.localPosition;
@@ -170,6 +177,7 @@ namespace NBF
private void OnMouseWheel(EventContext context)
{
if (!_canZoom) return;
if (!_focus) return;
float delta = context.inputEvent.mouseWheelDelta / Stage.devicePixelRatio;
SetZoom(delta * 0.2f);