UIDragDetector
*このコンテンツは、ベータ版のAI(人工知能)を使用して翻訳されており、エラーが含まれている可能性があります。このページを英語で表示するには、 こちら をクリックしてください。
UIDragDetector インスタンスは、スライダーやスピナーなどのエクスペリエンス内の 2D ユーザーインターフェイス要素との相互作用を促進し、協力します。主な機能には以下があります:
どのインスタンスにも を配置して、コードの 1行もなくすべての入力でドラッグできるようにします。
複数の DragStyle オプションから選択し、オブジェクトがResponseStyle を介して動作にどのように応答するかを定義し、オプションで轴、移動制限、またはドラッグ境界を適用します。
スクリプトは、ドラッグされたオブジェクトの操作に応答して、設定の調整などのロジック応答をドライブできます。
UIDragDetectors 作業は、 選択 、 移動 、 スケール 、または 回転 ツールを使用していない限り、Studioで行われます。特定のプラグインまたはStudioの UI編集ツール もしくは、 エディタ ツールも使用していません。
概要
プロパティ
この UIDragDetector の親にマウスが有効になったときに表示されるカーソルアイコンを設定します。
検出器の BoundingUI が設定する定されたとき、ドラッグされた UI オブジェクトのバインディング行動を決定します。
バインディング領域が親 GuiObject のドラッグ境界を定義するインスタンス。
マウスがこの UIDragDetector の親にホバーしたときに表示されるカーソルアイコンを設定します。
ドラッグアクスが UIDragDetector インスタンスで設定されているとき、DragStyle が Enum.UIDragDetectorDragStyle.TranslateLine に設定されます。
カスタムドラッグ関数からの入力/出力の相対性を定義するパラダイムを設定します。
現在のドラッグによって実行された回転。
カスタムドラッグ関数からの入力/出力の空間を定義するパラダイムを設定します。
提案された動作を生成するために使用されるパラダイム。
現在のドラッグによって行われた翻訳は、UDim2 値で表現されます。
UIDragDetector がユーザーの入力に応答するかどうか。
MinDragAngle と一緒に、探知器の回転運動を生成する試みを妨げます。
以下の MinDragTranslation と一緒に、検出器の線形/平面動作を生成する試みを妨げます。
MaxDragAngle と一緒に、探知器の回転運動を生成する試みを妨げます。
以下の MaxDragTranslation と一緒に、検出器の線形/平面動作を生成する試みを妨げます。
ローカルスペースと絶対中心位置が検出器の参照スペースと起源である GuiObject インスタンス。
提案された動作に対する応答を定義するために使用されるパラダイム。
翻訳の最大ドラッグ速度。
UIDragDetector で回転できる最大角度 per秒。
Enum.UIDragSpeedAxisMapping 値は、 X / Y 次元のドラッグ速度を決定します。
方法
提案された動作を変更または制限する機能を追加します。
現在のドラッグの参照元の位置を返す UDim2 参照位置。
現在のドラッグの参照要素の参照回転を返します。
パスする関数は、DragStyle が Enum.UIDragDetectorDragStyle.Scriptable に設定されている場合にのみ使用され、if と only が設定されている場合にのみ使用されます。
イベント
ユーザーが DragStart が開始された後、UI 要素をドラッグ続行すると、炎が発生します。
ユーザーがUI 要素をドラッグ中止すると発火します。
ユーザーがUI 要素をドラッグ開始すると、発火します。
プロパティ
ActivatedCursorIcon
この UIDragDetector の親にマウスが有効になったときに表示されるカーソルアイコンを設定します。このプロパティが空白のままにされると、ディテクターはデフォルトのアイコンを使用します。
有効になったカーソルアイコンを変更するには、このプロパティを使用したい画像のアセットIDに設定します。
BoundingBehavior
検出器の BoundingUI が設設定するされたとき、ドラッグされた UI オブジェクトのバインディング行動を決定します。それぞれの設定の行動については、Enum.UIDragDetectorBoundingBehavior を参照してください。
BoundingUI
設定する定されると、UIDragDetector インスタンスは、親の GuiObject の境界が バウンディングUI インスタンスの境界を超えてドラッグされることを許可しません。
親 GuiObject の一部が バウンディングUI 境界の外にある場合、ドラッグ開始時の初期入力位置とドラッグ中の相対位置は、ドラッグ後にドラッグオブジェクト全体が境界内にあるまで、バインディング検出に使用され、その後オブジェクトはバウンディング境界内に制限されます。
CursorIcon
マウスがこの UIDragDetector の親にホバーしたときに表示されるカーソルアイコンを設定します。このプロパティが空白のままにされると、ディテクターはデフォルトのアイコンを使用します。
カーソルアイコンを変更するには、このプロパティを使用したい画像のアセットIDに設定します。
DragAxis
Vector2 ドラッグ済みオブジェクトの移動軸を定義する値は、DragStyle が Enum.UIDragDetectorDragStyle.TranslateLine に設定されたとき、ドラッグ済みオブジェクトの軸を移動します。軸は、 が定義されていない限り、ローカルスペースで定義されます。その場合、軸はそのインスタンスのローカルスペースで定義されます。
DragRelativity
カスタムドラッグ関数を SetDragStyleFunction() または AddConstraintFunction() を通じて登録した場合にのみ適用されます。登録機能の入力/出力の相対性を定義するパラダイムを設定します。
たとえば、このプロパティを に設定した登録済み関数から を返すと、探知器の親が に移動し、同じ をこのプロパティを に設定して返すと、探知器の親が に移動します。
DragRotation
現在のドラッグによって実行された回転。この値は、 が定義されていない限り、ローカルスペースに対して度数で定義され、その場合、回転はそのインスタンスのローカルスペースとその正の X 軸から定義されます。
ドラッグしてオブジェクトを回転させるアクティブな操作がない状態で、このプロパティを変更できます。
DragSpace
カスタムドラッグ関数を SetDragStyleFunction() または AddConstraintFunction() を通じて登録した場合にのみ適用されます。登録機能の入力/出力のスペースを定義するパラダイムを設定します。
たとえば、探知器の親 が回転した親の子である場合:
このプロパティが UDim2.fromOffset(1, 0) に設定された登録済み関数から Enum.UIDragDetectorDragSpace.Parent を返すと、検出器の親 GuiObject が、親の回転によって影響を受けるローカルスペースで 1ピクセル右に移動します。
このプロパティが UDim2.fromOffset(1, 0) に設定された登録済み関数から Enum.UIDragDetectorDragSpace.LayerCollector を返すと、探知器の親 GuiObject が LayerCollector のスペースで 1ピクセル右に移動します。
DragUDim2
現在のドラッグによって行われた翻訳は、UDim2 値で表現されます。翻訳は、Offset または Scale 値の変更によって行われ、DragRelativity 値に応じてローカルスペースに相対するものであり、ReferenceUIInstance が定義されていない限り。
ドラッグして移動するアクティブなオブジェクトがない状態で、このプロパティを変更できます。
MaxDragAngle
このプロパティが MinDragAngle より大きい場合、回転は MinDragAngle と MaxDragAngle の範囲内に制限されます。正の値は時計回りの回転を妨げ、負の値は反時計回りの回転を妨げます。
これは制約ではありません; 単に検出器が制限内に留まるために動作を生成する試みを妨げるだけです。ドラッグにカスタム制約を追加するには、AddConstraintFunction() を参照してください。
関連しているのは、DragStyle が Enum.UIDragDetectorDragStyle.Rotate である場合のみです。
MaxDragTranslation
対応する Offset および/または Scale 値がすべての次元で MinDragTranslation より大きい場合、線形/平面翻訳は MinDragTranslation および MaxDragTranslation の範囲内に収まります。
これは制約ではありません; 単に検出器が制限内に留まるために動作を生成する試みを妨げるだけです。ドラッグにカスタム制約を追加するには、AddConstraintFunction() を参照してください。
関連しているのは、DragStyle が Enum.UIDragDetectorDragStyle.TranslateLine または Enum.UIDragDetectorDragStyle.TranslatePlane である場合のみです。
MinDragAngle
このプロパティが MaxDragAngle 未満である場合、回転は MinDragAngle と MaxDragAngle の範囲内に収まります。正の値は時計回りの回転を妨げ、負の値は反時計回りの回転を妨げます。
これは制約ではありません; 単に検出器が制限内に留まるために動作を生成する試みを妨げるだけです。ドラッグにカスタム制約を追加するには、AddConstraintFunction() を参照してください。
関連しているのは、DragStyle が Enum.UIDragDetectorDragStyle.Rotate である場合のみです。
MinDragTranslation
対応する Offset および/または Scale 値がすべての次元で MaxDragTranslation より少ない場合、線形/平面翻訳は MinDragTranslation および MaxDragTranslation の範囲内に収まります。
これは制約ではありません; 単に検出器が制限内に留まるために動作を生成する試みを妨げるだけです。ドラッグにカスタム制約を追加するには、AddConstraintFunction() を参照してください。
関連しているのは、DragStyle が Enum.UIDragDetectorDragStyle.TranslateLine または Enum.UIDragDetectorDragStyle.TranslatePlane である場合のみです。
ReferenceUIInstance
ローカルスペースと絶対中心位置が検出器の参照スペースと起源である GuiObject インスタンス。この参照を設定すると、DragUDim2、DragRotation、および DragAxis のようなプロパティが影響を受けます。
ResponseStyle
提案されたモーションが計算され、潜在的に制限された後、このパラダイムは GuiObject によって影響を受ける UIDragDetector を移動するかどうかを決定するために使用されます。オプションは Enum.UIDragDetectorResponseStyle を参照してください。
SelectionModeDragSpeed
翻訳の最大ドラッグ速度を、最初の祖先 Scale と Offset の組み合わせ、または ScreenGui または SurfaceGui に属する UIDragDetector に設定します。この値は正の値である必要があり、0 以下の値はすべて 0 にクリップされます。
SelectionModeRotateSpeed
UIDragDetector が回転できる最大角度 per秒を定義します。この値は正の値である必要があり、0 以下の値はすべて 0 にクリップされます。
方法
AddConstraintFunction
提案された動作を変更または制限する機能を追加します。機能は、入力 UDim2 (位置) と浮動 (回転) の 提案 動作と UDim2 および浮動の 修正済み または未修正の動作を返します。priority で順番に呼び出される複数の機能を追加し、結果をチェーンで渡すことができます。
入力は、 プロパティによって定義されたスペースで、デルタまたは最終の希望位置/回転を基にして表現されます。出力は、指定された Enum.UIDragDetectorDragRelativity と Enum.UIDragDetectorDragSpace を第 3 と第 4 の返回値として返すことで除外されない限り、同じ空間と相対性で表現される必要があります。
追加された制約関数を削除するには、返された接続オブジェクトに Disconnect() を呼び出します。
パラメータ
このメソッドを介して追加された関数の優先順位の順序。高い値は低い値より優先されます。
提案された動作を変更または制限する機能。この機能は、入力 UDim2 と 提案 の動作の浮動、および UDim2 と 修正済み または未修正の動作を返します。オプションで Enum.UIDragDetectorDragRelativity と Enum.UIDragDetectorDragSpace を第 3 と第 4 の返却値として出力オーバーライドとして返すことができます。
戻り値
この接続オブジェクトを使用して、制約関数を削除します。
GetReferencePosition
が設定する定されていない場合、この関数は、ドラッグされたオブジェクトの直接の親 の位置 (存在する場合) またはドラッグされたオブジェクトの位置 を返します。
ReferenceUIInstance が設定する定されると、この関数はその参照インスタンスの UDim2 位置を返します。
戻り値
GetReferenceRotation
ReferenceUIInstance が設定する定されていない場合、この関数はドラッグされたオブジェクトの直接の親 GuiObject (存在する場合)、またはドラッグされたオブジェクトの回転を返します。
ReferenceUIInstance が設定する定されると、この関数はその参照インスタンスの回転を返します。
戻り値
現在のドラッグの参照要素の回転。
SetDragStyleFunction
パスする関数は、DragStyle が Enum.UIDragDetectorDragStyle.Scriptable に設定されている場合にのみ使用され、if と only が設定されている場合にのみ使用されます。指定された関数は、シグナルの画面スペース入力位置をタイプ Vector2 で受け取り、ドラッグの望みの動作を含む UDim2 (位置) と浮動 (回転) を返します。返却値のスペースと運動の相対性は、指定された DragSpace および DragRelativity プロパティで覆われない限り、第三と第四の返却値として指定された Enum.UIDragDetectorDragRelativity および Enum.UIDragDetectorDragSpace によって決定されます。
機能が nil を返す場合、オブジェクトは移動しません。これは、スクリプトがまだ正しい答えを提供するために必要なすべての情報を収集していない場合や、オブジェクトを現在の場所に留めたい一時的な場合など、スクリプトが正しい答えを提供するのに役立ちます。
パラメータ
DragContinue。この関数は、シグナルの画面スペース入力位置を受け取り、希望する動作を含む UDim2 と浮動を返し、希望のスペースと相対性でドラッグの希望動作を含みます。この機能が nil を返す場合、オブジェクトは移動しません。