[page:Object3D] →

[name]

해당 클래스는 DCC 툴인 블렌더의 상호 작용 모델과 비슷한 기능을 3D 공간에서 객체를 변환하는데 사용할 수 있습니다. 다른 컨트롤과 달리, 해당 기능은 카메라의 장면 변환을 의미하지 않습니다.

[name] 는 연결된 3D 객체가 씬(scene) 그래프의 일부 입니다.

예시

[example:misc_controls_transform misc / controls / transform ]

생성자

[name]( [param:Camera camera], [param:HTMLDOMElement domElement] )

[page:Camera camera]: 렌더링 된 장면의 카메라입니다.

[page:HTMLDOMElement domElement]: 이벤트 리스너에 사용되는 HTML 엘리먼트입니다.

새로운 [name] 객체를 생성합니다.

이벤트

change

Fires if any type of change (object or property change) is performed. Property changes are separate events you can add event listeners to. The event type is "propertyname-changed".

mouseDown

Fires if a pointer (mouse/touch) becomes active.

mouseUp

Fires if a pointer (mouse/touch) is no longer active.

objectChange

Fires if the controlled 3D object is changed.

Properties

See the base [page:Object3D] class for common properties.

[property:String axis]

The current transformation axis.

[property:Camera camera]

The camera of the rendered scene.

[property:HTMLDOMElement domElement]

The HTMLDOMElement used to listen for mouse / touch events. This must be passed in the constructor; changing it here will not set up new event listeners.

[property:Boolean dragging]

Whether or not dragging is currently performed. Read-only property.

[property:Boolean enabled]

Whether or not the controls are enabled.

[property:String mode]

The current transformation mode. Possible values are "translate", "rotate" and "scale". Default is *translate*.

[property:Object3D object]

The 3D object being controlled.

[property:Number rotationSnap]

By default, 3D objects are continously rotated. If you set this property to a numeric value (radians), you can define in which steps the 3D object should be rotated. Deault is *null*.

[property:Boolean showX]

Whether or not the x-axis helper should be visible. Default is *true*.

[property:Boolean showY]

Whether or not the y-axis helper should be visible. Default is *true*.

[property:Boolean showZ]

Whether or not the z-axis helper should be visible. Default is *true*.

[property:Number size]

The size of the helper UI (axes/planes). Default is *1*.

[property:String space]

Defines in which coordinate space transformations should be performed. Possible values are "world" and "local". Default is *world*.

[property:Number translationSnap]

By default, 3D objects are continously translated. If you set this property to a numeric value (world units), you can define in which steps the 3D object should be translated. Deault is *null*.

Methods

See the base [page:Object3D] class for common methods.

[method:TransformControls attach] ( [param:Object3D object] )

[page:Object3D object]: The 3D object that should be transformed.

Sets the 3D object that should be transformed and ensures the controls UI is visible.

[method:TransformControls detach] ()

Removes the current 3D object from the controls and makes the helper UI is invisible.

[method:null dispose] ()

Should be called if the controls is no longer required.

[method:String getMode] ()

Returns the transformation mode.

[method:null setMode] ( [param:String mode] )

[page:String mode]: The transformation mode.

Sets the transformation mode.

[method:null setRotationSnap] ( [param:Number rotationSnap] )

[page:Number rotationSnap]: The rotation snap.

Sets the rotation snap.

[method:null setSize] ( [param:Number size] )

[page:Number size]: The size of the helper UI.

Sets the size of the helper UI.

[method:null setSpace] ( [param:String space] )

[page:String space]: The coordinate space in which transformations are applied.

Sets the coordinate space in which transformations are applied.

[method:null setTranslationSnap] ( [param:Number translationSnap] )

[page:Number translationSnap]: The translation snap.

Sets the translation snap.

Source

[link:https://github.com/mrdoob/three.js/blob/master/examples/jsm/controls/TransformControls.js examples/jsm/controls/TransformControls.js]