Files
XRLib/Assets/Resources/UIToolkit/Sample/Input/UTKBoundsFieldSample.uxml
2026-01-21 20:43:54 +09:00

24 lines
1.9 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<UXML xmlns="UnityEngine.UIElements" xmlns:utk="UVC.UIToolkit">
<Style src="../UTKSampleCommon.uss" />
<Style src="UTKVectorFieldSample.uss" />
<VisualElement class="utk-sample-container">
<Label class="utk-sample-desc" text="Bounds 입력 필드 (center, extents)" />
<!-- Collision -->
<VisualElement class="utk-sample-section">
<Label class="utk-sample-section__title" text="Collision" />
<VisualElement class="utk-sample-row">
<utk:UTKBoundsField name="bounds-collision" label="Bounds" class="utk-sample-bounds-field" />
</VisualElement>
</VisualElement>
<!-- Code Sample -->
<VisualElement class="utk-code-sample-container">
<utk:UTKCodeBlock title="C#" code="// 기본 Bounds 필드 생성&#10;var boundsField = new UTKBoundsField();&#10;boundsField.label = &quot;충돌 영역&quot;;&#10;boundsField.Value = new Bounds(&#10; new Vector3(0, 1, 0), // 중심점&#10; new Vector3(2, 2, 2) // 크기&#10;);&#10;&#10;// 값 변경 이벤트&#10;boundsField.OnValueChanged += (bounds) =&gt; {&#10; Debug.Log($&quot;Center: {bounds.center}, Size: {bounds.size}&quot;);&#10;};&#10;&#10;// 라벨 생성자 사용&#10;var collisionField = new UTKBoundsField(&quot;Collision Bounds&quot;);&#10;&#10;// BoxCollider와 연동&#10;var collider = GetComponent&lt;BoxCollider&gt;();&#10;boundsField.Value = collider.bounds;&#10;boundsField.OnValueChanged += (b) =&gt; {&#10; collider.center = b.center;&#10; collider.size = b.size;&#10;};" />
<utk:UTKCodeBlock title="UXML" code="&lt;!-- 기본 Bounds 필드 --&gt;&#10;&lt;utk:UTKBoundsField label=&quot;충돌 영역&quot; /&gt;&#10;&#10;&lt;!-- 비활성화 상태 --&gt;&#10;&lt;utk:UTKBoundsField label=&quot;읽기 전용&quot; IsEnabled=&quot;false&quot; /&gt;" />
</VisualElement>
</VisualElement>
</UXML>