KR20220065899A - Devices, methods, and graphical user interfaces for system-wide behavior for 3d models - Google Patents

Devices, methods, and graphical user interfaces for system-wide behavior for 3d models Download PDF

Info

Publication number
KR20220065899A
KR20220065899A KR1020227015606A KR20227015606A KR20220065899A KR 20220065899 A KR20220065899 A KR 20220065899A KR 1020227015606 A KR1020227015606 A KR 1020227015606A KR 20227015606 A KR20227015606 A KR 20227015606A KR 20220065899 A KR20220065899 A KR 20220065899A
Authority
KR
South Korea
Prior art keywords
virtual
input
dimensional object
user interface
representation
Prior art date
Application number
KR1020227015606A
Other languages
Korean (ko)
Inventor
필립 록켈
조나단 알. 다스콜라
스티븐 오. 르메이
제프리 엠. 폴크너
데이비드 제이. 아데이
데이비드 루이
지안카를로 예르케스
그랜트 알. 폴
클레어 티. 카셈셋
리사 케이. 포셀
브래들리 더블유. 그리핀
엘리자베스 캐롤라인 퍼체스 크랜필
Original Assignee
애플 인크.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from DKPA201870346A external-priority patent/DK201870346A1/en
Application filed by 애플 인크. filed Critical 애플 인크.
Publication of KR20220065899A publication Critical patent/KR20220065899A/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • G06F3/04883Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures for inputting data by handwriting, e.g. gesture or text
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/16Constructional details or arrangements
    • G06F1/1613Constructional details or arrangements for portable computers
    • G06F1/1633Constructional details or arrangements of portable computers not specific to the type of enclosures covered by groups G06F1/1615 - G06F1/1626
    • G06F1/1637Details related to the display arrangement, including those related to the mounting of the display in the housing
    • G06F1/1643Details related to the display arrangement, including those related to the mounting of the display in the housing the display being associated to a digitizer, e.g. laptops that can be used as penpads
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/16Constructional details or arrangements
    • G06F1/1613Constructional details or arrangements for portable computers
    • G06F1/1633Constructional details or arrangements of portable computers not specific to the type of enclosures covered by groups G06F1/1615 - G06F1/1626
    • G06F1/1684Constructional details or arrangements related to integrated I/O peripherals not covered by groups G06F1/1635 - G06F1/1675
    • G06F1/1686Constructional details or arrangements related to integrated I/O peripherals not covered by groups G06F1/1635 - G06F1/1675 the I/O peripheral being an integrated camera
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/16Constructional details or arrangements
    • G06F1/1613Constructional details or arrangements for portable computers
    • G06F1/1633Constructional details or arrangements of portable computers not specific to the type of enclosures covered by groups G06F1/1615 - G06F1/1626
    • G06F1/1684Constructional details or arrangements related to integrated I/O peripherals not covered by groups G06F1/1635 - G06F1/1675
    • G06F1/1694Constructional details or arrangements related to integrated I/O peripherals not covered by groups G06F1/1635 - G06F1/1675 the I/O peripheral being a single or a set of motion sensors for pointer control or gesture input obtained by sensing movements of the portable computer
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/016Input arrangements with force or tactile feedback as computer generated output to the user
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/0304Detection arrangements using opto-electronic means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/0346Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of the device orientation or free movement in a 3D space, e.g. 3D mice, 6-DOF [six degrees of freedom] pointers using gyroscopes, accelerometers or tilt-sensors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/04815Interaction with a metaphor-based environment or interaction object displayed as three-dimensional, e.g. changing the user viewpoint with respect to the environment or object
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/0482Interaction with lists of selectable items, e.g. menus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04845Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range for image manipulation, e.g. dragging, rotation, expansion or change of colour
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/0485Scrolling or panning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/0486Drag-and-drop
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • G06F3/04886Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures by partitioning the display area of the touch-screen or the surface of the digitising tablet into independently controllable areas, e.g. virtual keyboards or menus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T13/00Animation
    • G06T13/203D [Three Dimensional] animation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/003Navigation within 3D models or images
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/006Mixed reality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/20Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/80Analysis of captured images to determine intrinsic or extrinsic camera parameters, i.e. camera calibration
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72403User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2203/00Indexing scheme relating to G06F3/00 - G06F3/048
    • G06F2203/01Indexing scheme relating to G06F3/01
    • G06F2203/014Force feedback applied to GUI
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2203/00Indexing scheme relating to G06F3/00 - G06F3/048
    • G06F2203/048Indexing scheme relating to G06F3/048
    • G06F2203/04806Zoom, i.e. interaction techniques or interactors for controlling the zooming operation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2203/00Indexing scheme relating to G06F3/00 - G06F3/048
    • G06F2203/048Indexing scheme relating to G06F3/048
    • G06F2203/04808Several contacts: gestures triggering a specific function, e.g. scrolling, zooming, right-click, when the user establishes several contacts with the surface simultaneously; e.g. using several fingers or a combination of fingers and pen
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/24Indexing scheme for image data processing or generation, in general involving graphical user interfaces [GUIs]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30244Camera pose
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2210/00Indexing scheme for image generation or computer graphics
    • G06T2210/04Architectural design, interior design
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2219/00Indexing scheme for manipulating 3D models or images for computer graphics
    • G06T2219/20Indexing scheme for editing of 3D models
    • G06T2219/2012Colour editing, changing, or manipulating; Use of colour codes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2219/00Indexing scheme for manipulating 3D models or images for computer graphics
    • G06T2219/20Indexing scheme for editing of 3D models
    • G06T2219/2016Rotation, translation, scaling

Abstract

디스플레이 생성 컴포넌트, 하나 이상의 입력 디바이스들, 및 하나 이상의 카메라들을 갖는 컴퓨터 시스템은 하나 이상의 카메라들의 시야를 포함하는 제1 사용자 인터페이스 영역 내에 가상 객체를 디스플레이하라는 요청을 수신한다. 요청에 응답하여, 객체 배치 기준들이 충족되지 않는다는 결정에 따라, 가상 객체의 표현은 제1 세트의 시각적 속성들로 그리고 물리적 환경의 어느 부분이 하나 이상의 카메라들의 시야 내에 디스플레이되는지와 독립적인 제1 배향으로 디스플레이된다. 객체 배치 기준들이 충족된다는 결정에 따라, 가상 객체의 표현은 제1 세트의 시각적 속성들과 구별되는 제2 세트의 시각적 속성들로 그리고 평면에 대응하는 제2 배향으로 디스플레이된다.A computer system having a display creation component, one or more input devices, and one or more cameras receives a request to display a virtual object within a first user interface area that includes a field of view of the one or more cameras. In response to the request, in accordance with a determination that the object placement criteria are not met, the representation of the virtual object is presented with a first set of visual attributes and a first orientation independent of which part of the physical environment is displayed within the field of view of the one or more cameras. is displayed as Upon determining that the object placement criteria are met, the representation of the virtual object is displayed with a second set of visual properties distinct from the first set of visual properties and in a second orientation corresponding to the plane.

Description

3D 모델들에 대한 시스템 전체 거동을 위한 디바이스들, 방법들, 및 그래픽 사용자 인터페이스들 {DEVICES, METHODS, AND GRAPHICAL USER INTERFACES FOR SYSTEM-WIDE BEHAVIOR FOR 3D MODELS}DEVICES, METHODS, AND GRAPHICAL USER INTERFACES FOR SYSTEM-WIDE BEHAVIOR FOR 3D MODELS

본 발명은 대체로 다양한 콘텍스트(context)들로 가상 객체들을 디스플레이하는 전자 디바이스들을 포함하지만 이에 제한되지 않는, 가상 객체들을 디스플레이하는 전자 디바이스들에 관한 것이다.FIELD OF THE INVENTION The present invention relates generally to electronic devices for displaying virtual objects, including, but not limited to, electronic devices for displaying virtual objects in various contexts.

증강 현실을 위한 컴퓨터 시스템들의 개발은 최근에 상당히 증가하였다. 예시적인 증강 현실 환경들은 물리적 세계를 대체하거나 증강시키는 적어도 일부 가상 요소들을 포함한다. 컴퓨터 시스템들 및 다른 전자 컴퓨팅 디바이스들에 대한, 터치 감응형 표면들과 같은 입력 디바이스들은 가상/증강 현실 환경들과 상호작용하는 데 사용된다. 예시적인 터치 감응형 표면들은 터치패드들, 터치 감응형 원격 제어부들 및 터치 스크린 디스플레이들을 포함한다. 그러한 표면들은 디스플레이 상의 사용자 인터페이스들 및 그 내부의 객체들을 조작하는 데 사용된다. 예시적인 사용자 인터페이스 객체들은 디지털 이미지들, 비디오, 텍스트, 아이콘들, 버튼들과 같은 제어 요소들, 및 기타 그래픽들을 포함한다.The development of computer systems for augmented reality has increased significantly in recent years. Example augmented reality environments include at least some virtual elements that replace or augment the physical world. Input devices, such as touch-sensitive surfaces, to computer systems and other electronic computing devices are used to interact with virtual/augmented reality environments. Exemplary touch-sensitive surfaces include touchpads, touch-sensitive remote controls, and touch screen displays. Such surfaces are used to manipulate user interfaces on the display and objects therein. Exemplary user interface objects include digital images, video, text, icons, control elements such as buttons, and other graphics.

그러나, 적어도 일부 가상 요소들(예를 들어, 애플리케이션들, 증강 현실 환경들, 혼합 현실 환경들, 및 가상 현실 환경들)을 포함하는 환경들과 상호작용하기 위한 방법들 및 인터페이스들은 번거롭고, 비효율적이고, 제한된다. 예를 들어, 증강 현실 환경 내의 가상 객체를 배향 및 위치설정하기 위해 입력들의 시퀀스를 사용하는 것은 지루하고, 사용자에 대한 상당한 인지적 부담을 생성하고, 가상/증강 현실 환경에서의 경험을 손상시킨다. 게다가, 이러한 방법들은 필요 이상으로 오래 걸려서, 에너지가 낭비된다. 이러한 후자의 고려사항은 배터리-작동형 디바이스들에서 특히 중요하다.However, methods and interfaces for interacting with environments that include at least some virtual elements (eg, applications, augmented reality environments, mixed reality environments, and virtual reality environments) are cumbersome, inefficient and , is limited. For example, using a sequence of inputs to orient and position a virtual object in an augmented reality environment is tedious, creates a significant cognitive burden on the user, and compromises the experience in the virtual/augmented reality environment. Moreover, these methods take longer than necessary, and energy is wasted. This latter consideration is particularly important in battery-operated devices.

따라서, 가상 객체들과 상호작용하기 위한 개선된 방법들 및 인터페이스들을 갖는 컴퓨터 시스템들이 필요하다. 그러한 방법들 및 인터페이스들은, 선택적으로, 가상 객체들과 상호작용하기 위한 종래의 방법들을 보완하거나 대체한다. 그러한 방법들 및 인터페이스들은 사용자로부터의 입력들의 수, 크기, 및/또는 종류를 줄이고 더 효율적인 인간-기계 인터페이스를 생성한다. 배터리-작동형 디바이스들의 경우, 그러한 방법들 및 인터페이스들은 전력을 절약하고 배터리 충전들 사이의 시간을 증가시킨다.Accordingly, there is a need for computer systems with improved methods and interfaces for interacting with virtual objects. Such methods and interfaces optionally complement or replace conventional methods for interacting with virtual objects. Such methods and interfaces reduce the number, size, and/or kind of inputs from the user and create a more efficient human-machine interface. For battery-operated devices, such methods and interfaces conserve power and increase the time between battery charges.

가상 객체들과 상호작용하기 위한 인터페이스들(예컨대, 증강 현실(AR)을 위한 사용자 인터페이스들 및 관련된 비-AR 인터페이스들)과 연관된 상기 결점들 및 다른 문제들은 개시된 컴퓨터 시스템들에 의해 감소되거나 제거된다. 일부 실시예들에서, 컴퓨터 시스템은 데스크톱 컴퓨터를 포함한다. 일부 실시예들에서, 컴퓨터 시스템은 휴대용(예를 들어, 노트북 컴퓨터, 태블릿 컴퓨터, 또는 핸드헬드 디바이스)이다. 일부 실시예들에서, 컴퓨터 시스템은 개인용 전자 디바이스(예를 들어, 워치와 같은 웨어러블 전자 디바이스)를 포함한다. 일부 실시예들에서, 컴퓨터 시스템은 터치패드를 갖는다(그리고/또는 터치패드와 통신함). 일부 실시예들에서, 컴퓨터 시스템은 터치 감응형 디스플레이("터치 스크린" 또는 "터치 스크린 디스플레이"로도 알려짐)를 갖는다(그리고/또는 터치 감응형 디스플레이와 통신함). 일부 실시예들에서, 컴퓨터 시스템은 그래픽 사용자 인터페이스(GUI), 하나 이상의 프로세서들, 메모리, 및 다수의 기능들을 수행하기 위해 메모리에 저장되는 하나 이상의 모듈들, 프로그램들 또는 명령어들의 세트들을 갖는다. 일부 실시예들에서, 사용자는 부분적으로 터치 감응형 표면 상의 스타일러스 및/또는 손가락 접촉들 및 제스처들을 통해 GUI와 상호작용한다. 일부 실시예들에서, 기능들은 선택적으로 게임 하기, 이미지 편집, 그리기, 프레젠팅(presenting), 워드 프로세싱, 스프레드시트 작성, 전화 걸기, 화상 회의, 이메일 보내기, 인스턴트 메시징(instant messaging), 운동 지원, 디지털 사진촬영, 디지털 비디오 녹화, 웹 브라우징, 디지털 음악 재생, 메모하기(note taking), 및/또는 디지털 비디오 재생을 포함한다. 이러한 기능들을 수행하기 위한 실행가능 명령어들은, 선택적으로, 하나 이상의 프로세서들에 의한 실행을 위해 구성된 비일시적 컴퓨터 판독가능 저장 매체 또는 다른 컴퓨터 프로그램 제품에 포함된다.The above shortcomings and other problems associated with interfaces for interacting with virtual objects (eg, user interfaces for augmented reality (AR) and related non-AR interfaces) are reduced or eliminated by the disclosed computer systems. . In some embodiments, the computer system comprises a desktop computer. In some embodiments, the computer system is portable (eg, a notebook computer, tablet computer, or handheld device). In some embodiments, the computer system includes a personal electronic device (eg, a wearable electronic device such as a watch). In some embodiments, the computer system has (and/or communicates with) a touchpad. In some embodiments, the computer system has (and/or communicates with) a touch-sensitive display (also known as a “touch screen” or “touch screen display”). In some embodiments, the computer system has a graphical user interface (GUI), one or more processors, memory, and sets of one or more modules, programs, or instructions stored in the memory to perform a number of functions. In some embodiments, the user interacts with the GUI through gestures and stylus and/or finger contacts, in part, on the touch-sensitive surface. In some embodiments, functions selectively include: playing games, editing images, drawing, presenting, word processing, creating spreadsheets, making phone calls, video conferencing, sending emails, instant messaging, exercise support, digital photography, digital video recording, web browsing, digital music playback, note taking, and/or digital video playback. Executable instructions for performing these functions are optionally included in a non-transitory computer-readable storage medium or other computer program product configured for execution by one or more processors.

일부 실시예들에 따르면, 디스플레이, 터치 감응형 표면, 및 하나 이상의 카메라들을 갖는 컴퓨터 시스템에서 방법이 수행된다. 본 방법은 디스플레이 상의 제1 사용자 인터페이스 영역 내에 가상 객체의 표현을 디스플레이하는 단계를 포함한다. 본 방법은 또한, 디스플레이 상의 제1 사용자 인터페이스 영역 내에 가상 객체의 제1 표현을 디스플레이하는 동안, 디스플레이 상의 가상 객체의 표현에 대응하는 터치 감응형 표면 상의 위치에서 접촉에 의한 제1 입력을 검출하는 단계를 포함한다. 본 방법은 또한, 접촉에 의한 제1 입력을 검출하는 것에 응답하여, 접촉에 의한 제1 입력이 제1 기준들을 충족한다는 결정에 따라, 제1 사용자 인터페이스 영역의 적어도 일부분의 디스플레이를 하나 이상의 카메라들의 시야의 표현으로 대체하는 것을 포함하여, 디스플레이 상에 제2 사용자 인터페이스 영역을 디스플레이하고; 제1 사용자 인터페이스 영역을 디스플레이하는 것으로부터 제2 사용자 인터페이스 영역을 디스플레이하는 것으로 스위칭하는 동안 가상 객체의 표현을 연속적으로 디스플레이하는 단계를 포함한다.In accordance with some embodiments, a method is performed in a computer system having a display, a touch-sensitive surface, and one or more cameras. The method includes displaying a representation of the virtual object within a first user interface area on the display. The method also includes, while displaying a first representation of the virtual object within a first user interface area on the display, detecting a first input by contact at a location on the touch-sensitive surface corresponding to the representation of the virtual object on the display. includes The method also includes, in response to detecting the first input by the contact, according to a determination that the first input by the contact meets the first criteria, a display of at least a portion of the first user interface area of the one or more cameras display a second user interface area on the display, comprising replacing with a representation of the field of view; continuously displaying the representation of the virtual object while switching from displaying the first user interface area to displaying the second user interface area.

일부 실시예들에 따르면, 디스플레이, 터치 감응형 표면, 및 하나 이상의 카메라들을 갖는 컴퓨터 시스템에서 방법이 수행된다. 본 방법은 디스플레이 상의 제1 사용자 인터페이스 영역 내에 가상 객체의 제1 표현을 디스플레이하는 단계를 포함한다. 본 방법은 또한, 디스플레이 상의 제1 사용자 인터페이스 영역 내에 가상 객체의 제1 표현을 디스플레이하는 동안, 디스플레이 상의 가상 객체의 제1 표현에 대응하는 터치 감응형 표면 상의 위치에서 제1 접촉에 의한 제1 입력을 검출하는 단계를 포함한다. 본 방법은 또한, 제1 접촉에 의한 제1 입력을 검출하는 것에 응답하여 그리고 제1 접촉에 의한 입력이 제1 기준들을 충족한다는 결정에 따라, 제1 사용자 인터페이스 영역과 상이한 제2 사용자 인터페이스 영역 내에 가상 객체의 표현을 디스플레이하는 단계를 포함한다. 본 방법은 또한, 제2 사용자 인터페이스 영역 내에 가상 객체의 제2 표현을 디스플레이하는 동안, 제2 입력을 검출하는 단계; 및 제2 입력을 검출하는 것에 응답하여, 제2 입력이 제2 사용자 인터페이스 영역 내의 가상 객체를 조작하라는 요청에 대응한다는 결정에 따라, 제2 입력에 기초하여 제2 사용자 인터페이스 영역 내의 가상 객체의 제2 표현의 디스플레이 속성을 변경하고; 제2 입력이 증강 현실 환경에 가상 객체를 디스플레이하라는 요청에 대응한다는 결정에 따라, 하나 이상의 카메라들의 시야의 표현과 함께 가상 객체의 제3 표현을 디스플레이하는 단계를 포함한다.In accordance with some embodiments, a method is performed in a computer system having a display, a touch-sensitive surface, and one or more cameras. The method includes displaying a first representation of the virtual object within a first user interface area on the display. The method also includes, while displaying a first representation of the virtual object within a first user interface area on the display, a first input by a first contact at a location on the touch-sensitive surface corresponding to the first representation of the virtual object on the display. It includes the step of detecting The method is also responsive to detecting the first input by the first contact and in accordance with determining that the input by the first contact meets first criteria, within a second user interface region different from the first user interface region. and displaying the representation of the virtual object. The method also includes, while displaying a second representation of the virtual object within the second user interface area, detecting a second input; and in response to detecting the second input, according to a determination that the second input corresponds to a request to manipulate the virtual object in the second user interface area, the second input of the virtual object in the second user interface area based on the second input. 2 change the display properties of the representation; according to a determination that the second input corresponds to a request to display the virtual object in the augmented reality environment, displaying a third representation of the virtual object along with a representation of the field of view of the one or more cameras.

일부 실시예들에 따르면, 디스플레이 및 터치 감응형 표면을 갖는 컴퓨터 시스템에서 방법이 수행된다. 본 방법은 제1 사용자 인터페이스를 디스플레이하라는 요청에 응답하여, 제1 아이템의 표현과 함께 제1 사용자 인터페이스를 디스플레이하는 단계를 포함한다. 본 방법은 또한, 제1 아이템이 각각의 가상 3차원 객체에 대응한다는 결정에 따라, 제1 아이템이 제1 각각의 가상 3차원 객체에 대응한다는 것을 나타내는 시각적 표시와 함께 제1 아이템의 표현을 디스플레이하는 단계를 포함한다. 본 방법은 또한, 제1 아이템이 각각의 가상 3차원 객체에 대응하지 않는다는 결정에 따라, 시각적 표시 없이 제1 아이템의 표현을 디스플레이하는 단계를 포함한다. 본 방법은 또한, 제1 아이템의 표현을 디스플레이한 후, 제2 아이템을 포함하는 제2 사용자 인터페이스를 디스플레이하라는 요청을 수신하는 단계를 포함한다. 본 방법은 또한, 제2 사용자 인터페이스를 디스플레이하라는 요청에 응답하여, 제2 아이템의 표현과 함께 제2 사용자 인터페이스를 디스플레이하는 단계를 포함한다. 본 방법은 또한, 제2 아이템이 각각의 가상 3차원 객체에 대응한다는 결정에 따라, 제2 아이템이 제2 각각의 가상 3차원 객체에 대응한다는 것을 나타내는 시각적 표시와 함께 제2 아이템의 표현을 디스플레이하는 단계를 포함한다. 본 방법은 또한, 제2 아이템이 각각의 가상 3차원 객체에 대응하지 않는다는 결정에 따라, 시각적 표시 없이 제2 아이템의 표현을 디스플레이하는 단계를 포함한다.In accordance with some embodiments, a method is performed in a computer system having a display and a touch-sensitive surface. The method includes, in response to a request to display the first user interface, displaying the first user interface with a representation of the first item. The method also includes, according to a determination that the first item corresponds to a respective virtual three-dimensional object, displaying a representation of the first item with a visual indication indicating that the first item corresponds to the first respective virtual three-dimensional object including the steps of The method also includes, in accordance with a determination that the first item does not correspond to the respective virtual three-dimensional object, displaying a representation of the first item without a visual indication. The method also includes, after displaying the representation of the first item, receiving a request to display a second user interface including the second item. The method also includes, in response to the request to display the second user interface, displaying the second user interface with the presentation of the second item. The method also includes, according to a determination that the second item corresponds to a respective virtual three-dimensional object, displaying a representation of the second item with a visual indication indicating that the second item corresponds to a second respective virtual three-dimensional object including the steps of The method also includes, in accordance with a determination that the second item does not correspond to the respective virtual three-dimensional object, displaying the representation of the second item without a visual indication.

일부 실시예들에 따르면, 디스플레이 생성 컴포넌트, 하나 이상의 입력 디바이스들, 및 하나 이상의 카메라들을 갖는 컴퓨터 시스템에서 방법이 수행된다. 본 방법은 하나 이상의 카메라들의 시야의 적어도 일부분을 포함하는 제1 사용자 인터페이스 영역 내에 가상 객체를 디스플레이하라는 요청을 수신하는 단계를 포함한다. 본 방법은 또한, 제1 사용자 인터페이스 영역 내에 가상 객체를 디스플레이하라는 요청에 응답하여, 디스플레이 생성 컴포넌트를 통해, 제1 사용자 인터페이스 영역에 포함되는 하나 이상의 카메라들의 시야의 적어도 일부분 위에 가상 객체의 표현을 디스플레이하는 단계를 포함하고, 하나 이상의 카메라들의 시야는 하나 이상의 카메라들이 위치되는 물리적 환경의 뷰(view)이다. 가상 객체의 표현을 디스플레이하는 단계는, 객체 배치 기준들이 충족되지 않는다는 결정에 따라 - 객체 배치 기준들은 객체 배치 기준들이 충족되기 위해 가상 객체에 대한 배치 위치가 하나 이상의 카메라들의 시야 내에서 식별될 것을 요구함 -, 제1 세트의 시각적 속성들로 그리고 물리적 환경의 어느 부분이 하나 이상의 카메라들의 시야 내에 디스플레이되는지와 독립적인 제1 배향으로 가상 객체의 표현을 디스플레이하는 단계; 및 객체 배치 기준들이 충족된다는 결정에 따라, 제1 세트의 시각적 속성들과 구별되는 제2 세트의 시각적 속성들로 그리고 하나 이상의 카메라들의 시야 내에서 검출되는 물리적 환경 내의 평면에 대응하는 제2 배향으로 가상 객체의 표현을 디스플레이하는 단계를 포함한다.According to some embodiments, a method is performed in a computer system having a display generating component, one or more input devices, and one or more cameras. The method includes receiving a request to display a virtual object within a first user interface area that includes at least a portion of a field of view of one or more cameras. The method also includes, in response to a request to display the virtual object within the first user interface area, displaying, via the display creation component, a representation of the virtual object over at least a portion of a field of view of one or more cameras included in the first user interface area. wherein the field of view of the one or more cameras is a view of the physical environment in which the one or more cameras are located. displaying the representation of the virtual object, in accordance with a determination that the object placement criteria are not met - the object placement criteria require that a placement location for the virtual object be identified within the field of view of one or more cameras for the object placement criteria to be met - displaying the representation of the virtual object with a first set of visual properties and in a first orientation independent of which part of the physical environment is displayed within the field of view of the one or more cameras; and in accordance with a determination that the object placement criteria are met, in a second set of visual attributes distinct from the first set of visual attributes and in a second orientation corresponding to a plane in the physical environment detected within the field of view of the one or more cameras. and displaying the representation of the virtual object.

일부 실시예들에 따르면, 디스플레이 생성 컴포넌트, 하나 이상의 입력 디바이스들, 하나 이상의 카메라들, 및 하나 이상의 카메라들을 포함하는 디바이스의 자세의 변경들을 검출하기 위한 하나 이상의 자세 센서들을 갖는 컴퓨터 시스템에서 방법이 수행된다. 본 방법은 하나 이상의 카메라들의 시야의 표현을 포함하는 제1 사용자 인터페이스 영역 내에 물리적 환경의 증강 현실 뷰를 디스플레이하라는 요청을 수신하는 단계를 포함한다. 본 방법은 또한, 물리적 환경의 증강 현실 뷰를 디스플레이하라는 요청을 수신하는 것에 응답하여, 하나 이상의 카메라들의 시야의 표현을 디스플레이하고, 캘리브레이션 기준들이 물리적 환경의 증강 현실 뷰에 대해 충족되지 않는다는 결정에 따라, 물리적 환경에서의 하나 이상의 카메라들의 이동에 따라 동적으로 애니메이션화되는 캘리브레이션 사용자 인터페이스 객체를 디스플레이하는 단계를 포함하고, 캘리브레이션 사용자 인터페이스 객체를 디스플레이하는 단계는, 캘리브레이션 사용자 인터페이스 객체를 디스플레이하는 동안, 하나 이상의 자세 센서들을 통해, 물리적 환경에서의 하나 이상의 카메라들의 자세의 변경을 검출하는 단계; 및 물리적 환경에서의 하나 이상의 카메라들의 자세의 변경을 검출하는 것에 응답하여, 물리적 환경에서의 하나 이상의 카메라들의 자세의 검출된 변경에 따라 캘리브레이션 사용자 인터페이스 객체의 적어도 하나의 디스플레이 파라미터를 조정하는 단계를 포함한다. 본 방법은 또한, 물리적 환경에서의 하나 이상의 카메라들의 자세의 검출된 변경에 따라 디스플레이 상에서 이동하는 캘리브레이션 사용자 인터페이스 객체를 디스플레이하는 동안, 캘리브레이션 기준들이 충족되는 것을 검출하는 단계를 포함한다. 본 방법은 또한, 캘리브레이션 기준들이 충족되는 것을 검출하는 것에 응답하여, 캘리브레이션 사용자 인터페이스 객체를 디스플레이하는 것을 중지하는 단계를 포함한다.According to some embodiments, a method is performed in a computer system having a display generating component, one or more input devices, one or more cameras, and one or more pose sensors for detecting changes in pose of a device comprising the one or more cameras. do. The method includes receiving a request to display an augmented reality view of the physical environment within a first user interface area that includes a representation of a field of view of one or more cameras. The method also includes, in response to receiving the request to display the augmented reality view of the physical environment, display a representation of the field of view of the one or more cameras, in accordance with a determination that calibration criteria are not met for the augmented reality view of the physical environment. , displaying a calibration user interface object that is dynamically animated in response to movement of the one or more cameras in the physical environment, wherein displaying the calibration user interface object comprises, while displaying the calibration user interface object, one or more postures; detecting, via sensors, a change in pose of one or more cameras in the physical environment; and in response to detecting a change in the pose of the one or more cameras in the physical environment, adjusting at least one display parameter of the calibration user interface object according to the detected change in the pose of the one or more cameras in the physical environment. do. The method also includes detecting that calibration criteria are met while displaying a calibration user interface object that moves on the display according to the detected change in pose of the one or more cameras in the physical environment. The method also includes, in response to detecting that the calibration criteria are met, ceasing to display the calibration user interface object.

일부 실시예들에 따르면, 디스플레이 생성 컴포넌트, 및 터치 감응형 표면을 포함하는 하나 이상의 입력 디바이스들을 갖는 컴퓨터 시스템에서 방법이 수행된다. 본 방법은 디스플레이 생성 컴포넌트에 의해, 제1 사용자 인터페이스 영역 내에 가상 3차원 객체의 제1 시점(perspective)의 표현을 디스플레이하는 단계를 포함한다. 본 방법은 또한, 디스플레이 상의 제1 사용자 인터페이스 영역 내에 가상 3차원 객체의 제1 시점의 표현을 디스플레이하는 동안, 가상 3차원 객체의 제1 시점으로부터 가시적이지 않은 가상 3차원 객체의 일부분을 디스플레이하기 위해 가상 3차원 객체를 디스플레이에 대해 회전시키라는 요청에 대응하는 제1 입력을 검출하는 단계를 포함한다. 본 방법은 또한, 제1 입력을 검출하는 것에 응답하여, 제1 입력이 제1 축을 중심으로 3차원 객체를 회전시키라는 요청에 대응한다는 결정에 따라, 제1 입력의 크기에 기초하여 결정되는 그리고 제1 축에 대한 임계량 초과의 회전에 의해 가상 3차원 객체의 회전을 제한하는 이동에 대한 한계에 의해 제약되는 양만큼 가상 3차원 객체를 제1 축에 대해 회전시키고; 제1 입력이 제1 축과 상이한 제2 축을 중심으로 3차원 객체를 회전시키라는 요청에 대응한다는 결정에 따라, 제1 입력의 크기에 기초하여 결정되는 양만큼 가상 3차원 객체를 제2 축에 대해 회전시키는 단계를 포함하고, 각각의 임계치 초과의 크기를 갖는 입력의 경우, 디바이스는 임계량 초과의 회전만큼 제2 축에 대해 가상 3차원 객체를 회전시킨다.According to some embodiments, a method is performed in a computer system having a display generating component and one or more input devices including a touch-sensitive surface. The method includes displaying, by a display creation component, a representation of a first perspective of the virtual three-dimensional object within a first user interface area. The method also includes, while displaying a representation of the first viewpoint of the virtual three-dimensional object within the first user interface area on the display, for displaying a portion of the virtual three-dimensional object that is not visible from the first viewpoint of the virtual three-dimensional object. detecting a first input corresponding to a request to rotate the virtual three-dimensional object relative to the display. The method further includes, in response to detecting the first input, determining that the first input corresponds to a request to rotate the three-dimensional object about the first axis, based on a magnitude of the first input; and rotate the virtual three-dimensional object about the first axis by an amount constrained by a limit on movement that limits rotation of the virtual three-dimensional object by rotation about the first axis by more than a threshold amount; Upon determining that the first input corresponds to a request to rotate the three-dimensional object about a second axis different from the first axis, the virtual three-dimensional object is moved along the second axis by an amount determined based on the size of the first input. rotating the virtual three-dimensional object about the second axis by a rotation greater than the threshold amount for an input having a magnitude greater than the respective threshold.

일부 실시예들에 따르면, 디스플레이 생성 컴포넌트 및 터치 감응형 표면을 갖는 컴퓨터 시스템에서 방법이 수행된다. 본 방법은 디스플레이 생성 컴포넌트를 통해, 제1 제스처 인식 기준들을 충족하는 입력들에 응답하여 수행되는 제1 객체 조작 거동 및 제2 제스처 인식 기준들을 충족하는 입력들에 응답하여 수행되는 제2 객체 조작 거동을 포함하는 복수의 객체 조작 거동들과 연관된 사용자 인터페이스 객체를 포함하는 제1 사용자 인터페이스 영역을 디스플레이하는 단계를 포함한다. 본 방법은 또한, 제1 사용자 인터페이스 영역을 디스플레이하는 동안, 터치 감응형 표면을 가로지르는 하나 이상의 접촉들의 이동을 검출하는 것을 포함하여, 사용자 인터페이스 객체에 대한 입력의 제1 부분을 검출하고, 하나 이상의 접촉들이 터치 감응형 표면 상에서 검출되는 동안, 제1 제스처 인식 기준들 및 제2 제스처 인식 기준들 양자 모두에 대한 하나 이상의 접촉들의 이동을 평가하는 단계를 포함한다. 본 방법은 또한, 입력의 제1 부분을 검출하는 것에 응답하여, 입력의 제1 부분에 기초하여 사용자 인터페이스 객체의 외관을 업데이트하는 단계를 포함하고, 사용자 인터페이스 객체의 외관을 업데이트하는 단계는, 입력의 제1 부분이 제2 제스처 인식 기준들을 충족하기 전에 제1 제스처 인식 기준들을 충족한다는 결정에 따라, 입력의 제1 부분에 기초하여 제1 객체 조작 거동에 따라 사용자 인터페이스 객체의 외관을 변경하고; 제2 제스처 인식 기준들에 대한 임계치를 증가시킴으로써 제2 제스처 인식 기준들을 업데이트하는 단계; 및 입력이 제1 제스처 인식 기준들을 충족하기 전에 제2 제스처 인식 기준들을 충족한다는 결정에 따라, 입력의 제1 부분에 기초하여 제2 객체 조작 거동에 따라 사용자 인터페이스 객체의 외관을 변경하고; 제1 제스처 인식 기준들에 대한 임계치를 증가시킴으로써 제1 제스처 인식 기준들을 업데이트하는 단계를 포함한다.According to some embodiments, a method is performed in a computer system having a display generating component and a touch-sensitive surface. The method includes, via a display creation component, a first object manipulation behavior performed in response to inputs that meet first gesture recognition criteria and a second object manipulation behavior performed in response to inputs that meet second gesture recognition criteria and displaying a first user interface region comprising a user interface object associated with a plurality of object manipulation behaviors comprising: The method also includes, while displaying the first user interface region, detecting movement of one or more contacts across the touch-sensitive surface, detecting a first portion of the input to the user interface object, the one or more evaluating movement of the one or more contacts relative to both the first gesture recognition criteria and the second gesture recognition criteria while the contacts are detected on the touch-sensitive surface. The method also includes, in response to detecting the first portion of the input, updating an appearance of the user interface object based on the first portion of the input, wherein updating the appearance of the user interface object comprises: change the appearance of the user interface object according to the first object manipulation behavior based on the first portion of the input, according to a determination that the first portion of the user meets the first gesture recognition criteria before meeting the second gesture recognition criteria; updating the second gesture recognition criteria by increasing a threshold for the second gesture recognition criteria; and according to determining that the input meets the second gesture recognition criteria before meeting the first gesture recognition criteria, change the appearance of the user interface object according to the second object manipulation behavior based on the first portion of the input; and updating the first gesture recognition criteria by increasing a threshold for the first gesture recognition criteria.

일부 실시예들에 따르면, 디스플레이 생성 컴포넌트, 하나 이상의 입력 디바이스들, 하나 이상의 오디오 출력 생성기들, 및 하나 이상의 카메라들을 갖는 컴퓨터 시스템에서 방법이 수행된다. 본 방법은 디스플레이 생성 컴포넌트를 통해, 하나 이상의 카메라들의 시야의 표현을 포함하는 제1 사용자 인터페이스 영역 내에 가상 객체의 표현을 디스플레이하는 단계를 포함하고, 디스플레이하는 단계는 하나 이상의 카메라들의 시야 내에서 캡처되는 물리적 환경에서 검출되는 평면과 가상 객체의 표현 사이의 제1 공간적 관계를 유지하는 단계를 포함한다. 본 방법은 또한, 하나 이상의 카메라들의 시야를 조정하는 디바이스의 이동을 검출하는 단계를 포함한다. 본 방법은 또한, 하나 이상의 카메라들의 시야를 조정하는 디바이스의 이동을 검출하는 것에 응답하여, 하나 이상의 카메라들의 시야가 조정됨에 따라 하나 이상의 카메라들의 시야 내에서 검출되는 평면과 가상 객체 사이의 제1 공간적 관계에 따라 제1 사용자 인터페이스 영역 내의 가상 객체의 표현의 디스플레이를 조정하고, 디바이스의 이동이 임계량 초과의 가상 객체로 하여금 하나 이상의 카메라들의 시야의 디스플레이된 부분의 외측으로 이동하게 한다는 결정에 따라, 하나 이상의 오디오 출력 생성기들을 통해, 제1 오디오 경보를 생성하는 단계를 포함한다.According to some embodiments, a method is performed in a computer system having a display generating component, one or more input devices, one or more audio output generators, and one or more cameras. The method includes, via a display creation component, displaying a representation of the virtual object in a first user interface area comprising a representation of the field of view of the one or more cameras, wherein the displaying is captured within the field of view of the one or more cameras. maintaining a first spatial relationship between the plane detected in the physical environment and the representation of the virtual object. The method also includes detecting movement of the device adjusting the field of view of the one or more cameras. The method also includes, in response to detecting movement of the device adjusting the field of view of the one or more cameras, a first spatial distance between the virtual object and the plane detected within the field of view of the one or more cameras as the field of view of the one or more cameras is adjusted. adjust the display of the representation of the virtual object within the first user interface area according to the relationship, and upon determining that movement of the device causes more than a threshold amount of the virtual object to move outside the displayed portion of the field of view of the one or more cameras, one and generating, via the above audio output generators, a first audio alert.

일부 실시예들에 따르면, 전자 디바이스는 디스플레이 생성 컴포넌트, 선택적으로 하나 이상의 입력 디바이스들, 선택적으로 하나 이상의 터치 감응형 표면들, 선택적으로 하나 이상의 카메라들, 선택적으로 터치 감응형 표면과의 접촉들의 세기들을 검출하기 위한 하나 이상의 센서들, 선택적으로 하나 이상의 오디오 출력 생성기들, 선택적으로 하나 이상의 디바이스 배향 센서들, 선택적으로 하나 이상의 촉각적 출력 생성기들, 선택적으로 자세의 변경들을 검출하기 위한 하나 이상의 자세 센서들, 하나 이상의 프로세서들, 및 하나 이상의 프로그램들을 저장하는 메모리를 포함하고; 하나 이상의 프로그램들은 하나 이상의 프로세서들에 의해 실행되도록 구성되고, 하나 이상의 프로그램들은 본 명세서에 기술되는 방법들 중 임의의 방법의 동작들을 수행하거나 또는 그의 수행을 야기하기 위한 명령어들을 포함한다. 일부 실시예들에 따르면, 컴퓨터 판독가능 저장 매체는, 디스플레이 생성 컴포넌트, 선택적으로 하나 이상의 입력 디바이스들, 선택적으로 하나 이상의 터치 감응형 표면들, 선택적으로 하나 이상의 카메라들, 선택적으로 터치 감응형 표면과의 접촉들의 세기들을 검출하기 위한 하나 이상의 센서들, 선택적으로 하나 이상의 오디오 출력 생성기들, 선택적으로 하나 이상의 디바이스 배향 센서들, 선택적으로 하나 이상의 촉각적 출력 생성기들, 및 선택적으로 하나 이상의 자세 센서들을 갖는 전자 디바이스에 의해 실행될 때, 디바이스로 하여금 본 명세서에 기술된 방법들 중 임의의 방법의 동작들을 수행하게 하는 또는 그러한 동작들의 수행을 야기하게 하는 명령어들을 저장하였다. 일부 실시예들에 따르면, 디스플레이 생성 컴포넌트, 선택적으로 하나 이상의 입력 디바이스들, 선택적으로 하나 이상의 터치 감응형 표면들, 선택적으로 하나 이상의 카메라들, 선택적으로 터치 감응형 표면과의 접촉들의 세기들을 검출하기 위한 하나 이상의 센서들, 선택적으로 하나 이상의 오디오 출력 생성기들, 선택적으로 하나 이상의 디바이스 배향 센서들, 선택적으로 하나 이상의 촉각적 출력 생성기들, 선택적으로 하나 이상의 자세 센서들, 메모리, 및 메모리 내에 저장된 하나 이상의 프로그램들을 실행하기 위한 하나 이상의 프로세서들을 갖는 전자 디바이스 상의 그래픽 사용자 인터페이스는 본 명세서에 기술된 방법들 중 임의의 방법에서 기술된 바와 같이, 입력들에 응답하여 업데이트되는, 본 명세서에 기술된 방법들 중 임의의 방법으로 디스플레이되는 요소들 중 하나 이상을 포함한다. 일부 실시예들에 따르면, 전자 디바이스는, 디스플레이 생성 컴포넌트, 선택적으로 하나 이상의 입력 디바이스들, 선택적으로 하나 이상의 터치 감응형 표면들, 선택적으로 하나 이상의 카메라들, 선택적으로 터치 감응형 표면과의 접촉들의 세기들을 검출하기 위한 하나 이상의 센서들, 선택적으로 하나 이상의 오디오 출력 생성기들, 선택적으로 하나 이상의 디바이스 배향 센서들, 선택적으로 하나 이상의 촉각적 출력 생성기들, 및 선택적으로 자세의 변경들을 검출하기 위한 하나 이상의 자세 센서들; 및 본 명세서에 기술된 방법들 중 임의의 방법의 동작들을 수행하기 위한 또는 그러한 동작들의 수행을 야기하기 위한 수단을 포함한다. 일부 실시예들에 따르면, 디스플레이 생성 컴포넌트, 선택적으로 하나 이상의 입력 디바이스들, 선택적으로 하나 이상의 터치 감응형 표면들, 선택적으로 하나 이상의 카메라들, 선택적으로 터치 감응형 표면과의 접촉들의 세기들을 검출하기 위한 하나 이상의 센서들, 선택적으로 하나 이상의 오디오 출력 생성기들, 선택적으로 하나 이상의 디바이스 배향 센서들, 선택적으로 하나 이상의 촉각적 출력 생성기들, 및 선택적으로 자세의 변경들을 검출하기 위한 하나 이상의 자세 센서들을 갖는 전자 디바이스에서 사용하기 위한 정보 프로세싱 장치는 본 명세서에 기술된 방법들 중 임의의 방법의 동작들을 수행하기 위한 또는 그러한 동작들의 수행을 야기하기 위한 수단을 포함한다.According to some embodiments, the electronic device is a display generating component, optionally one or more input devices, optionally one or more touch-sensitive surfaces, optionally one or more cameras, optionally an intensity of contacts with the touch-sensitive surface. one or more sensors to detect , optionally one or more audio output generators, optionally one or more device orientation sensors, optionally one or more tactile output generators, optionally one or more attitude sensor to detect changes in pose. one or more processors, and a memory to store one or more programs; The one or more programs are configured to be executed by the one or more processors, and the one or more programs include instructions for performing or causing performance of any of the methods described herein. According to some embodiments, a computer-readable storage medium comprises a display generating component, optionally one or more input devices, optionally one or more touch-sensitive surfaces, optionally one or more cameras, optionally a touch-sensitive surface; having one or more sensors for detecting intensities of contacts of, optionally one or more audio output generators, optionally one or more device orientation sensors, optionally one or more tactile output generators, and optionally one or more posture sensors stored thereon instructions that, when executed by the electronic device, cause the device to perform or cause performance of any of the methods described herein. Detecting intensities of contacts with the display generating component, optionally one or more input devices, optionally one or more touch-sensitive surfaces, optionally one or more cameras, optionally the touch-sensitive surface, according to some embodiments one or more sensors, optionally one or more audio output generators, optionally one or more device orientation sensors, optionally one or more tactile output generators, optionally one or more posture sensors, memory, and one or more stored in the memory. Any of the methods described herein, wherein the graphical user interface on the electronic device having one or more processors for executing programs is updated in response to inputs, as described in any of the methods described herein. including one or more of the elements displayed in any manner. According to some embodiments, the electronic device comprises a display generating component, optionally one or more input devices, optionally one or more touch-sensitive surfaces, optionally one or more cameras, optionally of contacts with the touch-sensitive surface. one or more sensors to detect intensities, optionally one or more audio output generators, optionally one or more device orientation sensors, optionally one or more tactile output generators, and optionally one or more sensors to detect changes in posture. posture sensors; and means for performing or causing performance of any of the methods described herein. Detecting intensities of contacts with the display generating component, optionally one or more input devices, optionally one or more touch-sensitive surfaces, optionally one or more cameras, optionally the touch-sensitive surface, according to some embodiments having one or more sensors for, optionally one or more audio output generators, optionally one or more device orientation sensors, optionally one or more tactile output generators, and optionally one or more orientation sensors for detecting changes in pose. An information processing apparatus for use in an electronic device comprises means for performing or causing performance of any of the methods described herein.

따라서, 디스플레이 생성 컴포넌트들, 선택적으로 하나 이상의 입력 디바이스들, 선택적으로 하나 이상의 터치 감응형 표면들, 선택적으로 하나 이상의 카메라들, 선택적으로 터치 감응형 표면과의 접촉들의 세기들을 검출하기 위한 하나 이상의 센서들, 선택적으로 하나 이상의 오디오 출력 생성기들, 선택적으로 하나 이상의 디바이스 배향 센서들, 선택적으로 하나 이상의 촉각적 출력 생성기들, 및 선택적으로 하나 이상의 자세 센서들을 갖는 전자 디바이스들에는 다양한 콘텍스트들로 가상 객체들을 디스플레이하기 위한 개선된 방법들 및 인터페이스들이 제공되고, 그에 의해 그러한 디바이스들에 의해 유효성, 효율 및 사용자 만족도를 증가시킨다. 그러한 방법들 및 인터페이스들은 다양한 콘텍스트들로 가상 객체들을 디스플레이하기 위해 종래의 방법들을 보완하거나 대체할 수 있다.Accordingly, display generating components, optionally one or more input devices, optionally one or more touch-sensitive surfaces, optionally one or more cameras, optionally one or more sensors for detecting intensities of contacts with the touch-sensitive surface. Electronic devices having, optionally one or more audio output generators, optionally one or more device orientation sensors, optionally one or more tactile output generators, and optionally one or more posture sensors, include virtual objects in various contexts. Improved methods and interfaces for displaying are provided, thereby increasing effectiveness, efficiency and user satisfaction with such devices. Such methods and interfaces may complement or replace conventional methods for displaying virtual objects in various contexts.

다양하게 기술된 실시예들의 보다 양호한 이해를 위해, 유사한 도면 부호들이 도면 전체에 걸쳐서 대응 부분들을 나타내는 하기의 도면들과 관련하여 하기의 발명을 실시하기 위한 구체적인 내용이 참조되어야 한다.
도 1a는 일부 실시예들에 따른, 터치 감응형 디스플레이를 갖는 휴대용 다기능 디바이스를 예시하는 블록도이다.
도 1b는 일부 실시예들에 따른, 이벤트 처리를 위한 예시적인 컴포넌트들을 예시하는 블록도이다.
도 1c는 일부 실시예들에 따른 촉각적 출력 모듈을 예시하는 블록도이다.
도 2는 일부 실시예들에 따른, 터치 스크린을 갖는 휴대용 다기능 디바이스를 예시한다.
도 3은 일부 실시예들에 따른, 디스플레이 및 터치 감응형 표면을 갖는 예시적인 다기능 디바이스의 블록도이다.
도 4a는 일부 실시예들에 따른, 휴대용 다기능 디바이스 상의 애플리케이션들의 메뉴에 대한 예시적인 사용자 인터페이스를 예시한다.
도 4b는 일부 실시예들에 따른, 디스플레이와는 별개인 터치 감응형 표면을 갖는 다기능 디바이스에 대한 예시적인 사용자 인터페이스를 예시한다.
도 4c 내지 도 4e는 일부 실시예들에 따른 동적 세기 임계치들의 예들을 예시한다.
도 4f 내지 도 4k는 일부 실시예들에 따른 샘플 촉각적 출력 패턴들의 세트를 예시한다.
도 5a 내지 도 5at는 일부 실시예들에 따른, 제1 사용자 인터페이스 영역을 디스플레이하는 것으로부터 제2 사용자 인터페이스 영역을 디스플레이하는 것으로 스위칭하는 동안 가상 객체의 표현을 디스플레이하기 위한 예시적인 사용자 인터페이스들을 예시한다.
도 6a 내지 도 6aj는 일부 실시예들에 따른, 제1 사용자 인터페이스 영역 내에 가상 객체의 제1 표현을, 제2 사용자 인터페이스 영역 내에 가상 객체의 제2 표현을, 그리고 하나 이상의 카메라들의 시야의 표현과 함께 가상 객체의 제3 표현을 디스플레이하기 위한 예시적인 사용자 인터페이스들을 예시한다.
도 7a 내지 도 7e, 도 7f1, 도 7f2, 도 7g1, 도 7g2, 및 도 7h 내지 도 7p는 일부 실시예들에 따른, 아이템이 가상 3차원 객체에 대응한다는 것을 나타내는 시각적 표시를 갖는 아이템을 디스플레이하기 위한 예시적인 사용자 인터페이스들을 예시한다.
도 8a 내지 도 8e는 일부 실시예들에 따른, 제1 사용자 인터페이스 영역을 디스플레이하는 것으로부터 제2 사용자 인터페이스 영역을 디스플레이하는 것으로 스위칭하는 동안 가상 객체의 표현을 디스플레이하기 위한 프로세스의 흐름도들이다.
도 9a 내지 도 9d는 일부 실시예들에 따른, 제1 사용자 인터페이스 영역 내에 가상 객체의 제1 표현을, 제2 사용자 인터페이스 영역 내에 가상 객체의 제2 표현을, 그리고 하나 이상의 카메라들의 시야의 표현과 함께 가상 객체의 제3 표현을 디스플레이하기 위한 프로세스의 흐름도들이다.
도 10a 내지 도 10d는 일부 실시예들에 따른, 아이템이 가상 3차원 객체에 대응한다는 것을 나타내는 시각적 표시를 갖는 아이템을 디스플레이하기 위한 프로세스의 흐름도들이다.
도 11a 내지 도 11v는 일부 실시예들에 따른, 객체 배치 기준들이 충족되는지 여부에 따라 상이한 시각적 속성들을 갖는 가상 객체를 디스플레이하기 위한 예시적인 사용자 인터페이스들을 예시한다.
도 12a 내지 도 12d, 도 12e-1, 도 12e-2, 도 12f-1, 도 12f-2, 도 12g-1, 도 12g-2, 도 12h-1, 도 12h-2, 도 12i-1, 도 12i-2, 도 12j, 도 12k-1, 도 12k-2, 도 12l-1, 및 도 12l-2는 일부 실시예들에 따른, 디바이스의 하나 이상의 카메라들의 이동에 따라 동적으로 애니메이션화되는 캘리브레이션 사용자 인터페이스 객체를 디스플레이하기 위한 예시적인 사용자 인터페이스들을 예시한다.
도 13a 내지 도 13m은 일부 실시예들에 따른, 축을 중심으로 하는 가상 객체의 회전을 제약하기 위한 예시적인 사용자 인터페이스들을 예시한다.
도 14a 내지 도 14z는 일부 실시예들에 따른, 이동의 제1 임계치 크기가 제1 객체 조작 거동에 대해 충족된다는 결정에 따라, 제2 객체 조작 거동에 필요한 이동의 제2 임계치 크기를 증가시키기 위한 예시적인 사용자 인터페이스들을 예시한다.
도 14aa 내지 도 14ad는 일부 실시예들에 따른, 이동의 제1 임계치 크기가 제1 객체 조작 거동에 대해 충족된다는 결정에 따라, 제2 객체 조작 거동에 필요한 이동의 제2 임계치 크기를 증가시키기 위한 동작들을 예시하는 흐름도들을 예시한다.
도 15a 내지 도 15ai는 일부 실시예들에 따른, 디바이스의 이동이 가상 객체로 하여금 하나 이상의 디바이스 카메라들의 디스플레이된 시야의 외측으로 이동하게 한다는 결정에 따라 오디오 경보를 생성하기 위한 예시적인 사용자 인터페이스들을 예시한다.
도 16a 내지 도 16g는 일부 실시예들에 따른, 객체 배치 기준들이 충족되는지 여부에 따라 상이한 시각적 속성들을 갖는 가상 객체를 디스플레이하기 위한 프로세스의 흐름도들이다.
도 17a 내지 도 17d는 일부 실시예들에 따른, 디바이스의 하나 이상의 카메라들의 이동에 따라 동적으로 애니메이션화되는 캘리브레이션 사용자 인터페이스 객체를 디스플레이하기 위한 프로세스의 흐름도들이다.
도 18a 내지 도 18i는 일부 실시예들에 따른, 축을 중심으로 하는 가상 객체의 회전을 제약하기 위한 프로세스의 흐름도들이다.
도 19a 내지 도 19h는 일부 실시예들에 따른, 이동의 제1 임계치 크기가 제1 객체 조작 거동에 대해 충족된다는 결정에 따라, 제2 객체 조작 거동에 필요한 이동의 제2 임계치 크기를 증가시키기 위한 프로세스의 흐름도들이다.
도 20a 내지 도 20f는 일부 실시예들에 따른, 디바이스의 이동이 가상 객체로 하여금 하나 이상의 디바이스 카메라들의 디스플레이된 시야의 외측으로 이동하게 한다는 결정에 따라 오디오 경보를 생성하기 위한 프로세스의 흐름도들이다.
For a better understanding of the variously described embodiments, reference should be made to the specific details for carrying out the following invention in connection with the following drawings in which like reference numerals indicate corresponding parts throughout.
1A is a block diagram illustrating a portable multifunction device with a touch-sensitive display, in accordance with some embodiments.
1B is a block diagram illustrating example components for event processing, in accordance with some embodiments.
1C is a block diagram illustrating a tactile output module in accordance with some embodiments.
2 illustrates a portable multifunction device with a touch screen, in accordance with some embodiments.
3 is a block diagram of an exemplary multifunction device having a display and a touch-sensitive surface, in accordance with some embodiments.
4A illustrates an example user interface for a menu of applications on a portable multifunction device, in accordance with some embodiments.
4B illustrates an example user interface for a multifunction device having a touch-sensitive surface separate from a display, in accordance with some embodiments.
4C-4E illustrate examples of dynamic intensity thresholds in accordance with some embodiments.
4F-4K illustrate a set of sample tactile output patterns in accordance with some embodiments.
5A-5A illustrate example user interfaces for displaying a representation of a virtual object while switching from displaying a first user interface area to displaying a second user interface area, in accordance with some embodiments; .
6A-6J illustrate a first representation of a virtual object within a first user interface area, a second representation of a virtual object within a second user interface area, and a representation of a field of view of one or more cameras, in accordance with some embodiments; Together illustrate example user interfaces for displaying a third representation of a virtual object.
7A-7E, 7F1, 7F2, 7G1, 7G2, and 7H-7P display an item with a visual indication indicating that the item corresponds to a virtual three-dimensional object, in accordance with some embodiments. Examples of user interfaces for doing so are illustrated.
8A-8E are flow diagrams of a process for displaying a representation of a virtual object while switching from displaying a first user interface area to displaying a second user interface area, in accordance with some embodiments.
9A-9D illustrate a first representation of a virtual object within a first user interface area, a second representation of a virtual object within a second user interface area, and a representation of a field of view of one or more cameras, in accordance with some embodiments; Together are flow diagrams of a process for displaying a third representation of the virtual object.
10A-10D are flow diagrams of a process for displaying an item with a visual indication that the item corresponds to a virtual three-dimensional object, in accordance with some embodiments.
11A-11V illustrate example user interfaces for displaying a virtual object having different visual properties depending on whether object placement criteria are met, in accordance with some embodiments.
12A to 12D, 12E-1, 12E-2, 12F-1, 12F-2, 12G-1, 12G-2, 12H-1, 12H-2, 12I-1 , FIGS. 12I-2 , 12J , 12K-1 , 12K-2 , 12L-1 , and 12L-2 are dynamically animated according to movement of one or more cameras of the device, in accordance with some embodiments. Illustrates example user interfaces for displaying a calibration user interface object.
13A-13M illustrate example user interfaces for constraining rotation of a virtual object about an axis, in accordance with some embodiments.
14A-14Z illustrate a method for increasing a second threshold magnitude of movement required for a second object manipulation behavior in accordance with a determination that the first threshold magnitude of movement is satisfied for the first object manipulation behavior, in accordance with some embodiments; Example user interfaces are illustrated.
14AA-14A illustrate a method for increasing a second threshold magnitude of movement required for a second object manipulation behavior in accordance with a determination that the first threshold magnitude of motion is satisfied for the first object manipulation behavior, in accordance with some embodiments. Illustrated flowcharts illustrating operations.
15A-15AI illustrate example user interfaces for generating an audio alert upon determining that movement of the device causes a virtual object to move outside of the displayed field of view of one or more device cameras, in accordance with some embodiments. do.
16A-16G are flow diagrams of a process for displaying a virtual object having different visual properties depending on whether object placement criteria are met, in accordance with some embodiments.
17A-17D are flow diagrams of a process for displaying a calibration user interface object that is dynamically animated in response to movement of one or more cameras of a device, in accordance with some embodiments.
18A-18I are flow diagrams of a process for constraining rotation of a virtual object about an axis, in accordance with some embodiments.
19A-19H illustrate a method for increasing a second threshold magnitude of movement required for a second object manipulation behavior in accordance with a determination that the first threshold magnitude of movement is satisfied for the first object manipulation behavior, in accordance with some embodiments. These are the flow charts of the process.
20A-20F are flow diagrams of a process for generating an audio alert upon determining that movement of a device causes a virtual object to move outside of the displayed field of view of one or more device cameras, in accordance with some embodiments.

가상 객체는 가상 환경 내의 3차원 객체의 그래픽 표현이다. 가상 객체들과 상호작용하여 가상 객체들을 애플리케이션 사용자 인터페이스(예컨대, 증강 현실 환경을 디스플레이하지 않는 2차원 애플리케이션 사용자 인터페이스)의 콘텍스트로 디스플레이되는 것으로부터 증강 현실 환경(예컨대, 물리적 세계에서 이용가능하지 않은 추가 정보를 사용자에게 제공하는 보충 정보로 물리적 세계의 뷰가 증강되는 환경)의 콘텍스트로 디스플레이되는 것으로 전이(transition)시키는 종래의 방법들은 (예컨대, 증강 현실 환경에서 실제 또는 원하는 외관에 대한 가상 객체의 크기, 위치, 및/또는 배향을 조정하는) 의도된 결과를 달성하기 위해 종종 다수의 별개 입력들(예컨대, 제스처들 및 버튼 누르기들의 시퀀스 등)을 필요로 한다. 추가로, 종래의 입력 방법들은 종종, 물리적 세계의 뷰를 캡처하기 위해 하나 이상의 디바이스 카메라들을 활성화하는 데 필요한 시간 및/또는 증강 현실 환경에 놓일 수 있는 가상 객체들에 관하여 (예컨대, 물리적 세계의 캡처된 뷰에서 평면들 및/또는 표면들을 검출하는) 물리적 세계의 뷰를 분석 및 특성화하는 데 필요한 시간으로 인해 증강 현실 환경을 디스플레이하라는 요청을 수신하는 것과 증강 현실 환경을 디스플레이하는 것 사이에 지연을 수반한다. 본 명세서의 실시예들은 (예컨대, 애플리케이션 사용자 인터페이스의 콘텍스트로 가상 객체를 디스플레이하는 것으로부터 증강 현실 환경에서 가상 객체를 디스플레이하는 것으로 스위칭하도록 사용자가 입력을 제공하게 함으로써, 가상 객체를 증강 현실 환경에서 디스플레이하기 전에 사용자가 가상 객체의 디스플레이 속성들을 (예컨대, 3차원 스테이징 환경(staging environment)에서) 변경하게 함으로써, 사용자가 다수의 애플리케이션들에 걸쳐 시스템 전체에서 가상 객체들을 용이하게 식별하게 하는 표시를 제공함으로써, 객체에 대한 배치 정보를 결정하는 동안 객체의 시각적 속성을 변경함으로써, 캘리브레이션에 필요한 디바이스의 이동을 나타내도록 애니메이션화된(animated) 캘리브레이션 사용자 인터페이스 객체를 제공함으로써, 축을 중심으로 하는 디스플레이된 가상 객체의 회전을 제약함으로써, 이동의 임계치 크기가 제1 객체 조작 거동에 대해 충족될 때 제2 객체 조작 거동에 대한 이동의 임계치 크기를 증가시킴으로써, 그리고 가상 객체가 디스플레이된 시야 외부로 이동하였다는 것을 나타내기 위해 오디오 경보를 제공함으로써) 사용자가 다양한 콘텍스트들로 가상 객체들을 디스플레이하고/하거나 그들과 상호작용하기 위한 직관적인 방식을 제공한다.A virtual object is a graphical representation of a three-dimensional object within a virtual environment. Interacting with the virtual objects to transform the virtual objects from being displayed in the context of the application user interface (eg, a two-dimensional application user interface that does not display the augmented reality environment) to the augmented reality environment (eg, additions not available in the physical world). Conventional methods of transitioning information to being displayed in the context of an environment in which the view of the physical world is augmented with supplemental information providing the user (eg, the size of the virtual object relative to the real or desired appearance in the augmented reality environment) , position, and/or orientation) often require multiple discrete inputs (eg, a sequence of gestures and button presses, etc.) to achieve an intended result. Additionally, conventional input methods often involve the time necessary to activate one or more device cameras to capture a view of the physical world and/or virtual objects that may be placed in the augmented reality environment (eg, capture of the physical world). involves a delay between receiving a request to display the augmented reality environment and displaying the augmented reality environment due to the time required to analyze and characterize the view of the physical world (detecting planes and/or surfaces in the rendered view) do. Embodiments herein provide a method for displaying a virtual object in an augmented reality environment (eg, by causing a user to provide input to switch from displaying the virtual object in the context of an application user interface to displaying the virtual object in the augmented reality environment). By allowing the user to change the display properties of the virtual object (eg, in a three-dimensional staging environment) prior to doing so, by providing an indication that allows the user to easily identify the virtual objects throughout the system across multiple applications. , rotation of the displayed virtual object about an axis by changing the visual properties of the object while determining placement information for the object, thereby providing an animated calibration user interface object to represent the movement of the device required for calibration by increasing the threshold magnitude of movement for the second object manipulation behavior when the threshold magnitude of movement is met for the first object manipulation behavior, and to indicate that the virtual object has moved outside the displayed field of view. Provides an intuitive way for a user to display and/or interact with virtual objects in various contexts (by providing audio alerts).

본 명세서에 기술된 시스템들, 방법들, 및 GUI들은 다수의 방식들로 가상/증강 현실 환경들과의 사용자 인터페이스 상호작용들을 개선한다. 예를 들어, 그들은 가상 객체를 증강 현실 환경에서 디스플레이하는 것을, 그리고, 상이한 입력들에 응답하여, 가상 객체의 외관을 증강 현실 환경에서 디스플레이하기 위해 조정하는 것을 더 용이하게 만든다.The systems, methods, and GUIs described herein improve user interface interactions with virtual/augmented reality environments in a number of ways. For example, they make it easier to display the virtual object in the augmented reality environment and, in response to different inputs, adjust the appearance of the virtual object for display in the augmented reality environment.

이하에서, 도 1a 내지 도 1c, 도 2, 및 도 3은 예시적인 디바이스들의 설명을 제공한다. 도 4a, 도 4b, 도 5a 내지 도 5at, 도 6a 내지 도 6aj, 도 7a 내지 도 7p, 도 11a 내지 도 11v, 도 12a 내지 도 12l, 도 13a 내지 도 13m, 도 14a 내지 도 14z, 및 도 15a 내지 도 15ai는 다양한 콘텍스트들로 가상 객체들을 디스플레이하기 위한 예시적인 사용자 인터페이스들을 예시한다. 도 8a 내지 도 8e는 제1 사용자 인터페이스 영역을 디스플레이하는 것으로부터 제2 사용자 인터페이스 영역을 디스플레이하는 것으로 스위칭하는 동안 가상 객체의 표현을 디스플레이하기 위한 프로세스를 예시한다. 도 9a 내지 도 9d는 제1 사용자 인터페이스 영역 내에 가상 객체의 제1 표현을, 제2 사용자 인터페이스 영역 내에 가상 객체의 제2 표현을, 그리고 하나 이상의 카메라들의 시야의 표현과 함께 가상 객체의 제3 표현을 디스플레이하기 위한 프로세스를 예시한다. 도 10a 내지 도 10d는 아이템이 가상 3차원 객체에 대응한다는 것을 나타내는 시각적 표시를 갖는 아이템을 디스플레이하기 위한 프로세스를 예시한다. 도 16a 내지 도 16g는 객체 배치 기준들이 충족되는지 여부에 따라 상이한 시각적 속성들을 갖는 가상 객체를 디스플레이하기 위한 프로세스를 예시한다. 도 17a 내지 도 17d는 디바이스의 하나 이상의 카메라들의 이동에 따라 동적으로 애니메이션화되는 캘리브레이션 사용자 인터페이스 객체를 디스플레이하기 위한 프로세스를 예시한다. 도 18a 내지 도 18i는 축을 중심으로 하는 가상 객체의 회전을 제약하기 위한 프로세스를 예시한다. 도 14aa 내지 도 14ad 및 도 19a 내지 도 19h는 이동의 제1 임계치 크기가 제1 객체 조작 거동에 대해 충족된다는 결정에 따라, 제2 객체 조작 거동에 필요한 이동의 제2 임계치 크기를 증가시키기 위한 프로세스를 예시한다. 도 20a 내지 도 20f는 디바이스의 이동이 가상 객체로 하여금 하나 이상의 디바이스 카메라들의 디스플레이된 시야의 외측으로 이동하게 한다는 결정에 따라 오디오 경보를 생성하기 위한 프로세스를 예시한다. 도 5a 내지 도 5at, 도 6a 내지 도 6aj, 도 7a 내지 도 7p, 도 11a 내지 도 11v, 도 12a 내지 도 12l, 도 13a 내지 도 13m, 도 14a 내지 도 14z, 및 도 15a 내지 도 15ai의 사용자 인터페이스들은 도 8a 내지 도 8e, 도 9a 내지 도 9d, 도 10a 내지 도 10d, 도 14aa 내지 도 14ad, 도 16a 내지 도 16g, 도 17a 내지 도 17d, 도 18a 내지 도 18i, 도 19a 내지 도 19h, 및 도 20a 내지 도 20f의 프로세스들을 예시하는 데 사용된다.In the following, FIGS. 1A-1C , 2 , and 3 provide descriptions of exemplary devices. 4A, 4B, 5A-5A, 6A-6J, 7A-7P, 11A-11V, 12A-12L, 13A-13M, 14A-14Z, and FIGS. 15A-15AI illustrate example user interfaces for displaying virtual objects in various contexts. 8A-8E illustrate a process for displaying a representation of a virtual object while switching from displaying a first user interface area to displaying a second user interface area. 9A-9D illustrate a first representation of the virtual object within a first user interface area, a second representation of the virtual object within a second user interface area, and a third representation of the virtual object with a representation of a field of view of one or more cameras; A process for displaying is exemplified. 10A-10D illustrate a process for displaying an item with a visual indication indicating that the item corresponds to a virtual three-dimensional object. 16A-16G illustrate a process for displaying a virtual object with different visual properties depending on whether object placement criteria are met. 17A-17D illustrate a process for displaying a calibration user interface object that is dynamically animated in response to movement of one or more cameras of a device. 18A-18I illustrate a process for constraining rotation of a virtual object about an axis. 14AA-14A and 19A-19H show a process for increasing a second threshold magnitude of movement required for a second object manipulation behavior in accordance with a determination that the first threshold magnitude of motion is satisfied for the first object manipulation behavior to exemplify 20A-20F illustrate a process for generating an audio alert upon a determination that movement of the device causes the virtual object to move outside of the displayed field of view of one or more device cameras. 5A-5AT, 6A-6J, 7A-7P, 11A-11V, 12A-12L, 13A-13M, 14A-14Z, and 15A-15AI The interfaces are shown in FIGS. 8A-8E, 9A-9D, 10A-10D, 14AA-14A, 16A-16G, 17A-17D, 18A-18I, 19A-19H, and to illustrate the processes of FIGS. 20A-20F.

예시적인 디바이스들Exemplary devices

이제, 실시예들이 상세하게 참조될 것이며, 그 실시예들의 예들이 첨부 도면들에 예시된다. 하기의 상세한 설명에서, 많은 구체적인 상세사항들이 다양하게 설명된 실시예들의 완전한 이해를 제공하기 위해 기재된다. 그러나, 다양한 설명된 실시예들이 이들 구체적인 상세사항들 없이 실시될 수 있다는 것은 당업자에게 명백할 것이다. 다른 예들에서, 잘 알려진 방법들, 절차들, 컴포넌트들, 회로들, 및 네트워크들은 실시예들의 태양들을 불필요하게 모호하게 하지 않기 위해 상세히 설명되지 않았다.Reference will now be made in detail to embodiments, examples of which are illustrated in the accompanying drawings. In the following detailed description, numerous specific details are set forth in order to provide a thorough understanding of the variously described embodiments. It will be apparent, however, to one skilled in the art, that the various described embodiments may be practiced without these specific details. In other instances, well-known methods, procedures, components, circuits, and networks have not been described in detail in order not to unnecessarily obscure aspects of the embodiments.

일부 예들에서, 용어들, 제1, 제2 등이 본 명세서에서 다양한 요소들을 설명하는 데 사용되지만, 이들 요소들은 이들 용어들에 의해 제한되어서는 안 된다는 것이 또한 이해될 것이다. 이러한 용어들은 하나의 요소를 다른 요소와 구별하는 데에만 사용된다. 예를 들어, 다양한 설명된 실시예들의 범주로부터 벗어남이 없이, 제1 접촉이 제2 접촉으로 지칭될 수 있고, 유사하게, 제2 접촉이 제1 접촉으로 지칭될 수 있다. 제1 접촉 및 제2 접촉은 둘 모두 접촉이지만, 문맥상 명백히 달리 표시하지 않는 한, 이들이 동일한 접촉인 것은 아니다.It will also be understood that, in some instances, the terms first, second, etc. are used herein to describe various elements, but these elements should not be limited by these terms. These terms are only used to distinguish one element from another. For example, a first contact may be referred to as a second contact, and similarly, a second contact may be referred to as a first contact, without departing from the scope of the various described embodiments. The first contact and the second contact are both contacts, but they are not the same contact, unless the context clearly indicates otherwise.

본 명세서에서 다양하게 기술된 실시예들의 설명에 사용되는 용어는 특정 실시예들을 기술하는 목적만을 위한 것이고, 제한하려는 의도는 아니다. 다양한 기술된 실시예들의 설명 및 첨부된 청구범위에 사용되는 바와 같이, 단수의 형태("a", "an", 및 "the")는 문맥상 명백히 달리 나타내지 않는다면 복수의 형태도 마찬가지로 포함하려는 것으로 의도된다. 또한, 본 명세서에서 사용되는 바와 같은 용어 "및/또는"은 열거되는 연관된 항목들 중 하나 이상의 항목들의 임의의 및 모든 가능한 조합들을 나타내고 그들을 포괄하는 것임이 이해될 것이다. 용어들 "포함한다(include)", "포함하는(including)", "포함한다(comprise)", 및/또는 "포함하는(comprising)"은, 본 명세서에서 사용될 때, 언급된 특징들, 정수들, 단계들, 동작들, 요소들, 및/또는 컴포넌트들의 존재를 특정하지만, 하나 이상의 다른 특징들, 정수들, 단계들, 동작들, 요소들, 컴포넌트들, 및/또는 이들의 그룹들의 존재 또는 추가를 배제하지 않음이 추가로 이해될 것이다.The terminology used in the description of the variously described embodiments herein is for the purpose of describing the specific embodiments only, and is not intended to be limiting. As used in the description of the various described embodiments and in the appended claims, the singular forms "a", "an", and "the" are intended to include the plural forms as well, unless the context clearly dictates otherwise. It is intended It will also be understood that the term “and/or” as used herein represents and encompasses any and all possible combinations of one or more of the listed associated items. The terms “include,” “including,” “comprise,” and/or “comprising,” as used herein, refer to the recited features, integers, Specifies the presence of steps, steps, actions, elements, and/or components, but the presence of one or more other features, integers, steps, actions, elements, components, and/or groups thereof. Or it will be further understood that the addition is not excluded.

본 명세서에서 사용되는 바와 같이, "~는 경우(if)"라는 용어는, 선택적으로, 문맥에 따라 "~할 때(when)" 또는 "~ 시(upon)" 또는 "결정하는 것에 응답하여(in response to determining)" 또는 "검출하는 것에 응답하여(in response to detecting)"를 의미하는 것으로 해석된다. 유사하게, 어구 "~라고 결정된 경우" 또는 "[언급된 조건 또는 이벤트가] 검출된 경우"는, 선택적으로, 문맥에 따라 "~라고 결정할 때" 또는 "~라고 결정하는 것에 응답하여" 또는 "[언급된 조건 또는 이벤트]를 검출할 시" 또는 "[언급된 조건 또는 이벤트]를 검출하는 것에 응답하여"를 의미하는 것으로 해석된다.As used herein, the term "if" is, optionally, depending on the context, "when" or "upon" or "in response to determining ( It is interpreted to mean "in response to determining" or "in response to detecting". Similarly, the phrases “when it is determined that” or “when [the stated condition or event] is detected” are, optionally, depending on the context, “when determined to be” or “in response to determining that” or “ be construed to mean "on detecting [the stated condition or event]" or "in response to detecting [the stated condition or event]."

전자 디바이스들, 그러한 디바이스들에 대한 사용자 인터페이스들, 및 그러한 디바이스들을 사용하기 위한 연관된 프로세스들의 실시예들이 기술된다. 일부 실시예들에서, 디바이스는 PDA 및/또는 음악 재생기 기능들과 같은 다른 기능들을 또한 포함하는 휴대용 통신 디바이스, 예컨대 이동 전화기이다. 휴대용 다기능 디바이스들의 예시적인 실시예들은 미국 캘리포니아주 쿠퍼티노 소재의 애플 인크.(Apple Inc.)로부터의 아이폰(iPhone)®, 아이팟 터치(iPod Touch)®, 및 아이패드(iPad)® 디바이스들을 제한 없이 포함한다. 터치 감응형 표면들(예컨대, 터치 스크린 디스플레이들 및/또는 터치패드들)을 갖는 랩톱 또는 태블릿 컴퓨터들과 같은 다른 휴대용 전자 디바이스들이 선택적으로 사용된다. 일부 실시예들에서, 디바이스는 휴대용 통신 디바이스가 아니라 터치 감응형 표면(예컨대, 터치 스크린 디스플레이 및/또는 터치패드)을 갖는 데스크톱 컴퓨터임이 또한 이해되어야 한다.Embodiments of electronic devices, user interfaces for such devices, and associated processes for using such devices are described. In some embodiments, the device is a portable communication device, such as a mobile phone, that also includes other functions such as PDA and/or music player functions. Illustrative embodiments of portable multifunction devices are limited to iPhone®, iPod Touch®, and iPad® devices from Apple Inc. of Cupertino, CA. include without Other portable electronic devices such as laptop or tablet computers with touch-sensitive surfaces (eg, touch screen displays and/or touchpads) are optionally used. It should also be understood that in some embodiments, the device is not a portable communication device, but a desktop computer with a touch-sensitive surface (eg, a touch screen display and/or a touchpad).

이하의 논의에서, 디스플레이 및 터치 감응형 표면을 포함하는 전자 디바이스가 기술된다. 그러나, 전자 디바이스가 선택적으로 물리적 키보드, 마우스 및/또는 조이스틱과 같은 하나 이상의 다른 물리적 사용자 인터페이스 디바이스들을 포함한다는 것이 이해되어야 한다.In the discussion below, an electronic device including a display and a touch-sensitive surface is described. However, it should be understood that the electronic device optionally includes one or more other physical user interface devices such as a physical keyboard, mouse and/or joystick.

디바이스는 전형적으로 다음 중 하나 이상과 같은 다양한 애플리케이션들을 지원한다: 메모하기 애플리케이션, 드로잉 애플리케이션, 프레젠테이션 애플리케이션, 워드 프로세싱 애플리케이션, 웹사이트 제작 애플리케이션, 디스크 저작 애플리케이션, 스프레드시트 애플리케이션, 게임 애플리케이션, 전화 애플리케이션, 화상 회의 애플리케이션, 이메일 애플리케이션, 인스턴트 메시징 애플리케이션, 운동 지원 애플리케이션, 사진 관리 애플리케이션, 디지털 카메라 애플리케이션, 디지털 비디오 카메라 애플리케이션, 웹 브라우징 애플리케이션, 디지털 음악 재생기 애플리케이션, 및/또는 디지털 비디오 재생기 애플리케이션.A device typically supports a variety of applications, such as one or more of the following: note-taking applications, drawing applications, presentation applications, word processing applications, website creation applications, disk authoring applications, spreadsheet applications, gaming applications, phone applications, imaging Conferencing applications, email applications, instant messaging applications, athletic support applications, photo management applications, digital camera applications, digital video camera applications, web browsing applications, digital music player applications, and/or digital video player applications.

디바이스 상에서 실행되는 다양한 애플리케이션들은, 선택적으로, 터치 감응형 표면과 같은 적어도 하나의 보편적인 물리적 사용자 인터페이스 디바이스를 사용한다. 터치 감응형 표면의 하나 이상의 기능들뿐만 아니라 디바이스 상에 디스플레이되는 대응하는 정보는, 선택적으로, 하나의 애플리케이션으로부터 다음 애플리케이션으로 그리고/또는 각각의 애플리케이션 내에서 조정되고/되거나 변경된다. 이러한 방식으로, 디바이스의 (터치 감응형 표면과 같은) 보편적인 물리적 아키텍처는, 선택적으로, 사용자에게 직관적이고 투명한 사용자 인터페이스들을 이용하여 다양한 애플리케이션들을 지원한다.Various applications running on the device optionally use at least one common physical user interface device, such as a touch-sensitive surface. One or more functions of the touch-sensitive surface as well as corresponding information displayed on the device are optionally adjusted and/or changed from one application to the next and/or within each application. In this way, the universal physical architecture (such as a touch-sensitive surface) of the device supports a variety of applications, optionally with user interfaces that are intuitive and transparent to the user.

이제, 터치 감응형 디스플레이들을 갖는 휴대용 디바이스들의 실시예들에 주목한다. 도 1a는 일부 실시예들에 따른, 터치 감응형 디스플레이 시스템(112)을 갖는 휴대용 다기능 디바이스(100)를 예시하는 블록도이다. 터치 감응형 디스플레이 시스템(112)은 때때로 편의상 "터치 스크린"이라고 지칭되고, 때때로 터치 감응형 디스플레이로 단순히 지칭된다. 디바이스(100)는 메모리(102)(선택적으로, 하나 이상의 컴퓨터 판독가능 저장 매체들을 포함함), 메모리 제어기(122), 하나 이상의 프로세싱 유닛(CPU)들(120), 주변기기 인터페이스(118), RF 회로부(108), 오디오 회로부(110), 스피커(111), 마이크로폰(113), 입/출력(I/O) 서브시스템(106), 다른 입력 또는 제어 디바이스들(116), 및 외부 포트(124)를 포함한다. 디바이스(100)는 선택적으로 하나 이상의 광 센서(optical sensor)들(164)을 포함한다. 디바이스(100)는 선택적으로, 디바이스(100)(예컨대, 디바이스(100)의 터치 감응형 디스플레이 시스템(112)과 같은 터치 감응형 표면) 상에서의 접촉들의 세기들을 검출하기 위한 하나 이상의 세기 센서들(165)을 포함한다. 디바이스(100)는 선택적으로, 디바이스(100) 상의 촉각적 출력들을 생성하기 위한 (예를 들어, 디바이스(100)의 터치 감응형 디스플레이 시스템(112) 또는 디바이스(300)의 터치패드(355)와 같은 터치 감응형 표면 상의 촉각적 출력들을 생성하기 위한) 하나 이상의 촉각적 출력 생성기들(167)을 포함한다. 이들 컴포넌트는 선택적으로 하나 이상의 통신 버스들 또는 신호 라인들(103)을 통해 통신한다.Attention is now directed to embodiments of portable devices having touch-sensitive displays. 1A is a block diagram illustrating a portable multifunction device 100 having a touch-sensitive display system 112 in accordance with some embodiments. Touch-sensitive display system 112 is sometimes referred to as a “touch screen” for convenience, and is sometimes simply referred to as a touch-sensitive display. Device 100 includes memory 102 (optionally including one or more computer-readable storage media), memory controller 122 , one or more processing units (CPUs) 120 , peripherals interface 118 , RF Circuitry 108 , audio circuitry 110 , speaker 111 , microphone 113 , input/output (I/O) subsystem 106 , other input or control devices 116 , and external port 124 . ) is included. Device 100 optionally includes one or more optical sensors 164 . Device 100 may optionally include one or more intensity sensors for detecting intensities of contacts on device 100 (eg, a touch-sensitive surface such as touch-sensitive display system 112 of device 100 ). 165). Device 100 optionally includes a touch-sensitive display system 112 of device 100 or a touchpad 355 of device 300 for generating tactile outputs on device 100 (eg, a touchpad 355 of device 100 ). one or more tactile output generators 167 (for generating tactile outputs on the same touch-sensitive surface). These components optionally communicate via one or more communication buses or signal lines 103 .

디바이스(100)는 휴대용 다기능 디바이스의 일례일 뿐이고, 디바이스(100)는, 선택적으로, 도시된 것보다 더 많거나 더 적은 컴포넌트들을 갖거나, 선택적으로, 둘 이상의 컴포넌트들을 조합하거나, 또는 선택적으로 컴포넌트들의 상이한 구성 또는 배열을 갖는다는 것이 이해되어야 한다. 도 1a에 도시된 다양한 컴포넌트들은, 하나 이상의 신호 프로세싱 및/또는 주문형 집적 회로(application specific integrated circuit)들을 비롯한, 하드웨어, 소프트웨어, 펌웨어, 또는 이들의 조합으로 구현된다.Device 100 is only one example of a portable multifunction device, and device 100 may optionally have more or fewer components than shown, optionally combine two or more components, or optionally a component It should be understood that they have a different configuration or arrangement of the The various components shown in FIG. 1A are implemented in hardware, software, firmware, or combinations thereof, including one or more signal processing and/or application specific integrated circuits.

메모리(102)는, 선택적으로, 고속 랜덤 액세스 메모리를 포함하고, 또한 선택적으로, 하나 이상의 자기 디스크 저장 디바이스, 플래시 메모리 디바이스, 또는 다른 비휘발성 솔리드 스테이트 메모리 디바이스(non-volatile solid-state memory device)와 같은 비휘발성 메모리를 포함한다. CPU(들)(120) 및 주변기기 인터페이스(118)와 같은 디바이스(100)의 다른 컴포넌트들에 의한 메모리(102)에 대한 액세스는 선택적으로 메모리 제어기(122)에 의해 제어된다.Memory 102 optionally includes high-speed random access memory and, optionally, one or more magnetic disk storage devices, flash memory devices, or other non-volatile solid-state memory devices. non-volatile memory such as Access to memory 102 by other components of device 100 , such as CPU(s) 120 and peripherals interface 118 , is optionally controlled by memory controller 122 .

주변기기 인터페이스(118)는 디바이스의 입력 및 출력 주변기기들을 CPU(들)(120) 및 메모리(102)에 커플링시키는 데 사용될 수 있다. 하나 이상의 프로세서들(120)은 디바이스(100)에 대한 다양한 기능들을 수행하기 위해 그리고 데이터를 프로세싱하기 위해 메모리(102)에 저장된 다양한 소프트웨어 프로그램들 및/또는 명령어들의 세트들을 구동 또는 실행시킨다.Peripherals interface 118 may be used to couple input and output peripherals of the device to CPU(s) 120 and memory 102 . One or more processors 120 run or execute various software programs and/or sets of instructions stored in memory 102 to process data and to perform various functions for device 100 .

일부 실시예들에서, 주변기기 인터페이스(118), CPU(들)(120) 및 메모리 제어기(122)는, 선택적으로, 칩(104)과 같은 단일 칩 상에 구현된다. 일부 다른 실시예들에서, 이들은 선택적으로 별개의 칩들 상에서 구현된다.In some embodiments, peripherals interface 118 , CPU(s) 120 and memory controller 122 are optionally implemented on a single chip, such as chip 104 . In some other embodiments, they are optionally implemented on separate chips.

RF(radio frequency) 회로부(108)는 전자기 신호들이라고도 지칭되는 RF 신호들을 수신 및 송신한다. RF 회로부(108)는 전기 신호들을 전자기 신호들로/로부터 변환하고, 전자기 신호들을 통해 통신 네트워크들 및 다른 통신 디바이스들과 통신한다. RF 회로부(108)는, 선택적으로, 안테나 시스템, RF 송수신기, 하나 이상의 증폭기, 튜너, 하나 이상의 발진기, 디지털 신호 프로세서, CODEC 칩셋, SIM(subscriber identity module) 카드, 메모리 등을 포함하지만 이들로 제한되지 않는, 이러한 기능들을 수행하기 위한 잘 알려진 회로부를 포함한다. RF 회로부(108)는, 선택적으로, 네트워크들, 예컨대 월드 와이드 웹(WWW)으로도 지칭되는 인터넷, 인트라넷, 및/또는 무선 네트워크, 예컨대 셀룰러 전화 네트워크, 무선 LAN(local area network) 및/또는 MAN(metropolitan area network), 및 다른 디바이스들과 무선 통신에 의해 통신한다. 무선 통신은, 선택적으로, GSM(Global System for Mobile Communications), EDGE(Enhanced Data GSM Environment), HSDPA(high-speed downlink packet access), HSUPA(high-speed uplink packet access), EV-DO(Evolution, Data-Only), HSPA, HSPA+, DC-HSPA(Dual-Cell HSPA), LTE(long term evolution), NFC(near field communication), W-CDMA(wideband code division multiple access), CDMA(code division multiple access), TDMA(time division multiple access), 블루투스(Bluetooth), Wi-Fi(Wireless Fidelity)(예컨대, IEEE 802.11a, IEEE 802.11ac, IEEE 802.11ax, IEEE 802.11b, IEEE 802.11g 및/또는 IEEE 802.11n), VoIP(voice over Internet Protocol), Wi-MAX, 이메일용 프로토콜(예컨대, IMAP(Internet message access protocol) 및/또는 POP(post office protocol)), 인스턴트 메시징(예컨대, XMPP(extensible messaging and presence protocol), SIMPLE(Session Initiation Protocol for Instant Messaging and Presence Leveraging Extensions), IMPS(Instant Messaging and Presence Service)), 및/또는 SMS(Short Message Service), 또는 본 문서의 출원일 당시 아직 개발되지 않은 통신 프로토콜들을 비롯한, 임의의 다른 적합한 통신 프로토콜을 포함하지만 이들로 제한되지는 않는, 복수의 통신 표준들, 프로토콜들 및 기술들 중 임의의 것을 이용한다.Radio frequency (RF) circuitry 108 receives and transmits RF signals, also referred to as electromagnetic signals. RF circuitry 108 converts electrical signals to/from electromagnetic signals and communicates with communication networks and other communication devices via the electromagnetic signals. The RF circuitry 108 may optionally include, but is not limited to, an antenna system, an RF transceiver, one or more amplifiers, a tuner, one or more oscillators, a digital signal processor, a CODEC chipset, a subscriber identity module (SIM) card, memory, and the like. However, well-known circuitry for performing these functions is included. The RF circuitry 108 may optionally include networks such as the Internet, an intranet, and/or a wireless network, also referred to as the World Wide Web (WWW), such as a cellular telephone network, a wireless local area network (LAN) and/or a MAN (metropolitan area network), and communicates with other devices by wireless communication. Wireless communication, optionally, Global System for Mobile Communications (GSM), Enhanced Data GSM Environment (EDGE), high-speed downlink packet access (HSDPA), high-speed uplink packet access (HSUPA), Evolution (EV-DO), Data-Only), HSPA, HSPA+, DC-HSPA (Dual-Cell HSPA), LTE (long term evolution), NFC (near field communication), W-CDMA (wideband code division multiple access), CDMA (code division multiple access) ), time division multiple access (TDMA), Bluetooth (Bluetooth), Wireless Fidelity (Wi-Fi) (eg, IEEE 802.11a, IEEE 802.11ac, IEEE 802.11ax, IEEE 802.11b, IEEE 802.11g and/or IEEE 802.11n) ), voice over Internet Protocol (VoIP), Wi-MAX, protocols for email (eg, Internet message access protocol (IMAP) and/or post office protocol (POP)), instant messaging (eg, extensible messaging and presence protocol (XMPP) ), Session Initiation Protocol for Instant Messaging and Presence Leveraging Extensions (SIMPLE), Instant Messaging and Presence Service (IMPS), and/or Short Message Service (SMS), or communication protocols not yet developed as of the filing date of this document. , including any other suitable communication protocol, but It utilizes any of a plurality of communication standards, protocols and technologies, including but not limited to these.

오디오 회로부(110), 스피커(111), 및 마이크로폰(113)은 사용자와 디바이스(100) 사이에서 오디오 인터페이스를 제공한다. 오디오 회로부(110)는 주변기기 인터페이스(118)로부터 오디오 데이터를 수신하고, 그 오디오 데이터를 전기 신호로 변환하고, 그 전기 신호를 스피커(111)에 송신한다. 스피커(111)는 전기 신호를 사람이 들을 수 있는 음파로 변환한다. 오디오 회로부(110)는 또한 마이크로폰(113)에 의해 음파로부터 변환된 전기 신호를 수신한다. 오디오 회로부(110)는 전기 신호를 오디오 데이터로 변환하고, 프로세싱을 위해 오디오 데이터를 주변기기 인터페이스(118)에 송신한다. 오디오 데이터는, 선택적으로, 주변기기 인터페이스(118)에 의해 메모리(102) 및/또는 RF 회로부(108)로부터 인출되고/되거나 메모리(102) 및/또는 RF 회로부(108)로 전송된다. 일부 실시예들에서, 오디오 회로부(110)는 또한 헤드셋 잭(예컨대, 도 2의 212)을 포함한다. 헤드셋 잭은 출력-전용 헤드폰들, 또는 출력(예컨대, 한쪽 또는 양쪽 귀용 헤드폰) 및 입력(예컨대, 마이크로폰) 양쪽 모두를 갖는 헤드셋과 같은 분리가능한 오디오 입/출력 주변기기들과 오디오 회로부(110) 사이의 인터페이스를 제공한다.The audio circuitry 110 , the speaker 111 , and the microphone 113 provide an audio interface between the user and the device 100 . The audio circuit unit 110 receives audio data from the peripheral device interface 118 , converts the audio data into an electrical signal, and transmits the electrical signal to the speaker 111 . The speaker 111 converts the electrical signal into sound waves that humans can hear. The audio circuitry 110 also receives an electrical signal converted from sound waves by the microphone 113 . The audio circuitry 110 converts the electrical signal into audio data and transmits the audio data to the peripherals interface 118 for processing. Audio data is optionally fetched from and/or transmitted to memory 102 and/or RF circuitry 108 by peripherals interface 118 . In some embodiments, audio circuitry 110 also includes a headset jack (eg, 212 in FIG. 2 ). The headset jack is a connection between the audio circuitry 110 and detachable audio input/output peripherals, such as output-only headphones, or a headset that has both an output (eg, one or both ear headphones) and an input (eg, a microphone). Provides an interface.

I/O 서브시스템(106)은 터치 감응형 디스플레이 시스템(112) 및 다른 입력 또는 제어 디바이스들(116)과 같은, 디바이스(100) 상의 입/출력 주변기기들을 주변기기 인터페이스(118)와 커플링시킨다. I/O 서브시스템(106)은 선택적으로 디스플레이 제어기(156), 광 센서 제어기(158), 세기 센서 제어기(159), 햅틱 피드백 제어기(161) 및 다른 입력 또는 제어 디바이스들을 위한 하나 이상의 입력 제어기(160)를 포함한다. 하나 이상의 입력 제어기들(160)은 다른 입력 또는 제어 디바이스들(116)로부터/로 전기 신호들을 수신/송신한다. 다른 입력 또는 제어 디바이스들(116)은 선택적으로 물리적 버튼들(예컨대, 푸시 버튼(push button), 로커 버튼(rocker button) 등), 다이얼, 슬라이더 스위치, 조이스틱, 클릭 휠 등을 포함한다. 일부 다른 실시예들에서, 입력 제어기(들)(160)는 선택적으로 키보드, 적외선 포트, USB 포트, 스타일러스, 및/또는 마우스와 같은 포인터 디바이스 중 임의의 것과 커플링된다(또는 어떤 것에도 커플링되지 않는다). 하나 이상의 버튼들(예컨대, 도 2의 208)은, 선택적으로, 스피커(111) 및/또는 마이크로폰(113)의 음량 제어를 위한 업/다운 버튼을 포함한다. 하나 이상의 버튼들은 선택적으로 푸시 버튼(예컨대, 도 2의 206)을 포함한다.I/O subsystem 106 couples input/output peripherals on device 100 , such as touch-sensitive display system 112 and other input or control devices 116 , with peripherals interface 118 . I/O subsystem 106 optionally includes one or more input controllers for display controller 156 , light sensor controller 158 , intensity sensor controller 159 , haptic feedback controller 161 , and other input or control devices. 160). One or more input controllers 160 receive/transmit electrical signals to/from other input or control devices 116 . Other input or control devices 116 optionally include physical buttons (eg, push buttons, rocker buttons, etc.), dials, slider switches, joysticks, click wheels, and the like. In some other embodiments, input controller(s) 160 is optionally coupled to (or coupled to any of a keyboard, infrared port, USB port, stylus, and/or pointer device such as a mouse). doesn't work). One or more buttons (eg, 208 in FIG. 2 ) optionally include an up/down button for volume control of the speaker 111 and/or the microphone 113 . The one or more buttons optionally include a push button (eg, 206 in FIG. 2 ).

터치 감응형 디스플레이 시스템(112)은 디바이스와 사용자 사이의 입력 인터페이스 및 출력 인터페이스를 제공한다. 디스플레이 제어기(156)는 터치 감응형 디스플레이 시스템(112)으로부터/으로 전기 신호들을 수신 및/또는 전송한다. 터치 감응형 디스플레이 시스템(112)은 사용자에게 시각적 출력을 디스플레이한다. 시각적 출력은 선택적으로 그래픽들, 텍스트, 아이콘들, 비디오 및 이들의 임의의 조합(총칭하여 "그래픽들"로 지칭됨)을 포함한다. 일부 실시예들에서, 시각적 출력의 일부 또는 전부가 사용자 인터페이스 객체들에 대응된다. 본 명세서에 사용된 바와 같이, "어포던스(affordance)"라는 용어는 사용자-상호작용형 그래픽 사용자 인터페이스 객체(예컨대, 그래픽 사용자 인터페이스 객체 쪽으로 향하는 입력들에 응답하도록 구성되는 그래픽 사용자 인터페이스 객체)를 지칭한다. 사용자-상호작용형 그래픽 사용자 인터페이스 객체들의 예들은, 제한 없이, 버튼, 슬라이더, 아이콘, 선택가능한 메뉴 항목, 스위치, 하이퍼링크, 또는 다른 사용자 인터페이스 제어부를 포함한다.The touch-sensitive display system 112 provides an input interface and an output interface between the device and the user. The display controller 156 receives and/or transmits electrical signals to/from the touch-sensitive display system 112 . The touch-sensitive display system 112 displays a visual output to the user. The visual output optionally includes graphics, text, icons, video, and any combination thereof (collectively referred to as “graphics”). In some embodiments, some or all of the visual output corresponds to user interface objects. As used herein, the term “affordance” refers to a user-interactive graphical user interface object (eg, a graphical user interface object that is configured to respond to inputs directed towards the graphical user interface object). . Examples of user-interactive graphical user interface objects include, without limitation, buttons, sliders, icons, selectable menu items, switches, hyperlinks, or other user interface controls.

터치 감응형 디스플레이 시스템(112)은 햅틱 및/또는 촉각적 접촉에 기초하여 사용자로부터의 입력을 수용하는 터치 감응형 표면, 센서 또는 센서들의 세트를 갖는다. 터치 감응형 디스플레이 시스템(112) 및 디스플레이 제어기(156)는 (메모리(102) 내의 임의의 연관된 모듈들 및/또는 명령어들의 세트들과 함께) 터치 감응형 디스플레이 시스템(112) 상에서의 접촉(및 접촉의 임의의 이동 또는 중단)을 검출하고, 검출된 접촉을 터치 감응형 디스플레이 시스템(112) 상에 디스플레이된 사용자 인터페이스 객체들(예를 들어, 하나 이상의 소프트 키들, 아이콘들, 웹 페이지들 또는 이미지들)과의 상호작용으로 변환한다. 일부 실시예들에서, 터치 감응형 디스플레이 시스템(112)과 사용자 사이의 접촉 지점은 사용자의 손가락 또는 스타일러스에 대응된다.The touch-sensitive display system 112 has a touch-sensitive surface, sensor, or set of sensors that receives input from a user based on haptic and/or tactile contact. Touch-sensitive display system 112 and display controller 156 (along with any associated modules and/or sets of instructions within memory 102) contact (and contact) on touch-sensitive display system 112 . detect any movement or interruption of the user interface object (eg, one or more soft keys, icons, web pages or images) displayed on the touch-sensitive display system 112 ; ) into an interaction with In some embodiments, the point of contact between the touch-sensitive display system 112 and the user corresponds to the user's finger or stylus.

터치 감응형 디스플레이 시스템(112)은 선택적으로 LCD(액정 디스플레이) 기술, LPD(발광 중합체 디스플레이) 기술, 또는 LED(발광 다이오드) 기술을 이용하지만, 다른 실시예들에서는 다른 디스플레이 기술들이 이용된다. 터치 감응형 디스플레이 시스템(112) 및 디스플레이 제어기(156)는 선택적으로 용량성, 저항성, 적외선 및 표면 음향파 기술들뿐만 아니라, 다른 근접 센서 어레이들 또는 터치 감응형 디스플레이 시스템(112)과의 하나 이상의 접촉 지점들을 결정하기 위한 다른 요소들을 포함하지만 이들로 한정되지 않는, 현재 알려져 있거나 추후에 개발될 복수의 터치 감지 기술들 중 임의의 것을 이용하여, 접촉 및 그의 임의의 이동 또는 중단을 검출한다. 일부 실시예들에서, 미국 캘리포니아주 쿠퍼티노 소재의 애플 인크.로부터의 아이폰®, 아이팟 터치®, 및 아이패드®에서 발견되는 것과 같은 투영형 상호 용량 감지 기술(projected mutual capacitance sensing technology)이 이용된다.Touch-sensitive display system 112 optionally uses LCD (liquid crystal display) technology, LPD (light emitting polymer display) technology, or LED (light emitting diode) technology, although other display technologies are used in other embodiments. The touch-sensitive display system 112 and display controller 156 may optionally include one or more of capacitive, resistive, infrared and surface acoustic wave technologies, as well as other proximity sensor arrays or touch-sensitive display system 112 . Detecting a contact and any movement or interruption thereof using any of a plurality of touch sensing technologies currently known or to be developed in the future, including but not limited to other factors for determining points of contact. In some embodiments, a projected mutual capacitance sensing technology such as that found in the iPhone®, iPod touch®, and iPad® from Apple Inc. of Cupertino, CA is used. .

터치 감응형 디스플레이 시스템(112)은 선택적으로 100 dpi를 초과하는 비디오 해상도를 갖는다. 일부 실시예들에서, 터치 스크린 비디오 해상도는 400dpi를 초과한다(예컨대, 500dpi, 800dpi, 또는 그 이상). 사용자는 선택적으로 스타일러스, 손가락 등과 같은 임의의 적합한 객체 또는 부속물을 이용하여 터치 감응형 디스플레이 시스템(112)과 접촉한다. 일부 실시예들에서, 사용자 인터페이스는 손가락 기반 접촉들 및 제스처들을 이용하여 동작하도록 설계되는데, 이는 터치 스크린 상에서의 손가락의 더 넓은 접촉 면적으로 인해 스타일러스 기반 입력보다 덜 정밀할 수 있다. 일부 실시예들에서, 디바이스는 대략적인 손가락 기반 입력을 사용자가 원하는 액션(action)들을 수행하기 위한 정밀한 포인터/커서 위치 또는 커맨드로 변환한다.The touch-sensitive display system 112 optionally has a video resolution greater than 100 dpi. In some embodiments, the touch screen video resolution exceeds 400 dpi (eg, 500 dpi, 800 dpi, or more). The user optionally makes contact with the touch-sensitive display system 112 using any suitable object or appendage, such as a stylus, finger, or the like. In some embodiments, the user interface is designed to operate using finger-based contacts and gestures, which may be less precise than stylus-based input due to the larger contact area of the finger on the touch screen. In some embodiments, the device converts coarse finger-based input into precise pointer/cursor positions or commands for the user to perform desired actions.

일부 실시예들에서, 터치 스크린 이외에, 디바이스(100)는, 선택적으로, 특정 기능들을 활성화 또는 비활성화시키기 위한 터치패드(도시되지 않음)를 포함한다. 일부 실시예들에서, 터치패드는, 터치 스크린과는 달리, 시각적 출력을 디스플레이하지 않는 디바이스의 터치 감응형 영역이다. 터치패드는 선택적으로 터치 감응형 디스플레이 시스템(112)과는 별개인 터치 감응형 표면, 또는 터치 스크린에 의해 형성된 터치 감응형 표면의 연장부이다.In some embodiments, in addition to a touch screen, device 100 optionally includes a touchpad (not shown) for activating or deactivating certain functions. In some embodiments, the touchpad is a touch-sensitive area of the device that, unlike the touch screen, does not display visual output. The touchpad is optionally a touch-sensitive surface separate from the touch-sensitive display system 112 , or an extension of the touch-sensitive surface formed by the touch screen.

디바이스(100)는 또한 다양한 컴포넌트들에 전력을 공급하기 위한 전력 시스템(162)을 포함한다. 전력 시스템(162)은, 선택적으로, 전력 관리 시스템, 하나 이상의 전원(예컨대, 배터리, 교류 전류(alternating current, AC)), 재충전 시스템, 전력 고장 검출 회로, 전력 변환기 또는 인버터, 전력 상태 표시자(예컨대, 발광 다이오드(LED)), 및 휴대용 디바이스들 내에서의 전력의 생성, 관리 및 분배와 연관된 임의의 다른 컴포넌트들을 포함한다.Device 100 also includes a power system 162 for powering various components. Power system 162 may optionally include a power management system, one or more power sources (eg, a battery, alternating current (AC)), a recharge system, a power failure detection circuit, a power converter or inverter, a power status indicator ( light emitting diodes (LEDs), for example), and any other components associated with the generation, management, and distribution of power within portable devices.

디바이스(100)는 또한 선택적으로 하나 이상의 광 센서(164)를 포함한다. 도 1a는 I/O 서브시스템(106) 내의 광 센서 제어기(158)와 커플링된 광 센서를 도시한다. 광 센서(들)(164)는 선택적으로 CCD(charge-coupled device) 또는 CMOS(complementary metal-oxide semiconductor) 포토트랜지스터들을 포함한다. 광 센서(들)(164)는 하나 이상의 렌즈를 통해 투영되는, 주변환경으로부터의 광을 수광하고, 그 광을 이미지를 표현하는 데이터로 변환한다. 이미징 모듈(143)(카메라 모듈로도 지칭됨)과 함께, 광 센서(들)(164)는 선택적으로, 정지 이미지들 및/또는 비디오를 캡처한다. 일부 실시예들에서, 광 센서는 디바이스(100)의 전면 상의 터치 감응형 디스플레이 시스템(112)의 반대편인 디바이스의 배면 상에 위치되어, 터치 스크린이 정지 및/또는 비디오 이미지 획득을 위한 뷰파인더로서 사용될 수 있게 한다. 일부 실시예들에서, 다른 광 센서가 (예를 들어, 셀카를 위해, 사용자가 터치 스크린 상에서 다른 화상 회의 참가자들을 보면서 화상 회의를 하기 위해, 등등을 위해) 사용자의 이미지가 획득되도록 디바이스의 전면 상에 위치된다.Device 100 also optionally includes one or more optical sensors 164 . 1A shows a light sensor coupled with a light sensor controller 158 in the I/O subsystem 106 . The optical sensor(s) 164 optionally include charge-coupled device (CCD) or complementary metal-oxide semiconductor (CMOS) phototransistors. The light sensor(s) 164 receives light from the environment, projected through one or more lenses, and converts the light into data representing an image. In conjunction with imaging module 143 (also referred to as camera module), optical sensor(s) 164 optionally captures still images and/or video. In some embodiments, the optical sensor is located on the back of the device opposite the touch-sensitive display system 112 on the front of the device 100 so that the touch screen acts as a viewfinder for still and/or video image acquisition. make it usable In some embodiments, another light sensor is placed on the front of the device to obtain an image of the user (eg, for a selfie, for the user to videoconference while viewing other videoconference participants on the touch screen, etc.) is located in

디바이스(100)는, 또한, 선택적으로, 하나 이상의 접촉 세기 센서들(165)을 포함한다. 도 1a는 I/O 서브시스템(106) 내의 세기 센서 제어기(159)와 커플링된 접촉 세기 센서를 도시한다. 접촉 세기 센서(들)(165)는, 선택적으로, 하나 이상의 압전 저항 스트레인 게이지, 용량성 힘 센서, 전기적 힘 센서, 압전 힘 센서, 광학적 힘 센서, 용량성 터치 감응형 표면, 또는 다른 세기 센서들(예컨대, 터치 감응형 표면 상에서의 접촉의 힘(또는 압력)을 측정하는 데 사용되는 센서들)을 포함한다. 접촉 세기 센서(들)(165)는 주변환경으로부터 접촉 세기 정보(예컨대, 압력 정보 또는 압력 정보에 대한 대용물(proxy))를 수신한다. 일부 실시예들에서, 적어도 하나의 접촉 세기 센서는 터치 감응형 표면(예컨대, 터치 감응형 디스플레이 시스템(112))과 함께 위치(collocate)되거나 그에 근접한다. 일부 실시예들에서, 적어도 하나의 접촉 세기 센서는 디바이스(100)의 전면 상에 위치된 터치 스크린 디스플레이 시스템(112)의 반대편인 디바이스(100)의 배면 상에 위치된다.Device 100 also optionally includes one or more contact intensity sensors 165 . 1A shows a contact intensity sensor coupled with an intensity sensor controller 159 in the I/O subsystem 106 . Contact intensity sensor(s) 165 may optionally include one or more piezoresistive strain gauges, capacitive force sensors, electrical force sensors, piezoelectric force sensors, optical force sensors, capacitive touch-sensitive surfaces, or other intensity sensors. (eg, sensors used to measure the force (or pressure) of a contact on a touch-sensitive surface). Contact intensity sensor(s) 165 receives contact intensity information (eg, pressure information or a proxy for pressure information) from the environment. In some embodiments, at least one contact intensity sensor is collocated with or proximate to a touch-sensitive surface (eg, touch-sensitive display system 112 ). In some embodiments, the at least one contact intensity sensor is located on the back of the device 100 opposite the touch screen display system 112 positioned on the front of the device 100 .

디바이스(100)는 또한 선택적으로 하나 이상의 근접 센서(166)를 포함한다. 도 1a는 주변기기 인터페이스(118)와 커플링된 근접 센서(166)를 도시한다. 대안적으로, 근접 센서(166)는 I/O 서브시스템(106) 내의 입력 제어기(160)와 커플링된다. 일부 실시예들에서, 근접 센서는 다기능 디바이스가 사용자의 귀 근처에 위치될 때(예를 들어, 사용자가 전화 통화를 하고 있을 때), 터치 감응형 디스플레이 시스템(112)을 끄고 디스에이블시킨다.Device 100 also optionally includes one or more proximity sensors 166 . 1A shows a proximity sensor 166 coupled with a peripherals interface 118 . Alternatively, proximity sensor 166 is coupled with input controller 160 in I/O subsystem 106 . In some embodiments, the proximity sensor turns off and disables the touch-sensitive display system 112 when the multifunction device is placed near the user's ear (eg, when the user is on a phone call).

디바이스(100)는, 또한, 선택적으로, 하나 이상의 촉각적 출력 생성기들(167)을 포함한다. 도 1a는 I/O 서브시스템(106) 내의 햅틱 피드백 제어기(161)와 커플링된 촉각적 출력 생성기를 도시한다. 일부 실시예들에서, 촉각적 출력 생성기(들)(167)는 스피커들 또는 다른 오디오 컴포넌트들과 같은 하나 이상의 전자음향 디바이스들 및/또는 모터, 솔레노이드, 전기활성 중합체, 압전 액추에이터, 정전 액추에이터, 또는 다른 촉각적 출력 생성 컴포넌트(예를 들어, 전기 신호들을 디바이스 상의 촉각적 출력들로 변환하는 컴포넌트)와 같이 에너지를 선형 모션(linear motion)으로 변환하는 전자기계 디바이스들을 포함한다. 촉각적 출력 생성기(들)(167)는 햅틱 피드백 모듈(133)로부터 촉각적 피드백 생성 명령어들을 수신하고, 디바이스(100)의 사용자에 의해 감지될 수 있는 디바이스(100) 상의 촉각적 출력들을 생성한다. 일부 실시예들에서, 적어도 하나의 촉각적 출력 생성기는 터치 감응형 표면(예컨대, 터치 감응형 디스플레이 시스템(112))과 함께 위치되거나 그에 근접하며, 선택적으로, 터치 감응형 표면을 수직으로(예컨대, 디바이스(100)의 표면 내/외로) 또는 측방향으로(예컨대, 디바이스(100)의 표면과 동일한 평면에서 전후로) 이동시킴으로써 촉각적 출력을 생성한다. 일부 실시예들에서, 적어도 하나의 촉각적 출력 생성기 센서는 디바이스(100)의 전면 상에 위치된 터치 감응형 디스플레이 시스템(112)의 반대편인 디바이스(100)의 배면 상에 위치된다.Device 100 also optionally includes one or more tactile output generators 167 . 1A shows a tactile output generator coupled with a haptic feedback controller 161 in the I/O subsystem 106 . In some embodiments, tactile output generator(s) 167 may be connected to one or more electroacoustic devices, such as speakers or other audio components, and/or a motor, a solenoid, an electroactive polymer, a piezoelectric actuator, an electrostatic actuator, or Electromechanical devices that convert energy into linear motion, such as other tactile output generating components (eg, components that convert electrical signals to tactile outputs on the device). Tactile output generator(s) 167 receive tactile feedback generation instructions from haptic feedback module 133 and generate tactile outputs on device 100 that can be sensed by a user of device 100 . . In some embodiments, the at least one tactile output generator is positioned with or proximate a touch-sensitive surface (eg, touch-sensitive display system 112 ) and, optionally, vertically (eg, vertically) the touch-sensitive surface. , generate a tactile output by moving it into/out of the surface of the device 100 ) or laterally (eg, back and forth in the same plane as the surface of the device 100 ). In some embodiments, the at least one tactile output generator sensor is located on the back side of the device 100 opposite the touch-sensitive display system 112 located on the front side of the device 100 .

디바이스(100)는 또한 선택적으로 하나 이상의 가속도계(168)를 포함한다. 도 1a는 주변기기 인터페이스(118)와 커플링된 가속도계(168)를 도시한다. 대안으로, 가속도계(168)는 선택적으로 I/O 서브시스템(106) 내의 입력 제어기(160)와 커플링된다. 일부 실시예들에서, 하나 이상의 가속도계들로부터 수신된 데이터의 분석에 기초하여 터치 스크린 디스플레이 상에 세로보기(portrait view) 또는 가로보기(landscape view)로 정보가 디스플레이된다. 디바이스(100)는, 선택적으로, 가속도계(들)(168) 외에도, 자력계(도시되지 않음), 및 디바이스(100)의 위치 및 배향(예컨대, 세로 또는 가로)에 관한 정보를 획득하기 위한 GPS(또는 GLONASS 또는 다른 글로벌 내비게이션 시스템) 수신기(도시되지 않음)를 포함한다.Device 100 also optionally includes one or more accelerometers 168 . 1A shows an accelerometer 168 coupled with a peripherals interface 118 . Alternatively, the accelerometer 168 is optionally coupled with an input controller 160 in the I/O subsystem 106 . In some embodiments, information is displayed on the touch screen display in a portrait view or a landscape view based on analysis of data received from one or more accelerometers. Device 100 may optionally include, in addition to accelerometer(s) 168 , a magnetometer (not shown), and a GPS (eg, vertical or horizontal) for obtaining information regarding the position and orientation of device 100 (eg, longitudinal or transverse). or a GLONASS or other global navigation system) receiver (not shown).

일부 실시예들에서, 메모리(102)에 저장된 소프트웨어 컴포넌트들은 운영 체제(126), 통신 모듈(또는 명령어들의 세트)(128), 접촉/모션 모듈(또는 명령어들의 세트)(130), 그래픽 모듈(또는 명령어들의 세트)(132), 햅틱 피드백 모듈(또는 명령어들의 세트)(133), 텍스트 입력 모듈(또는 명령어들의 세트)(134), GPS 모듈(또는 명령어들의 세트)(135), 및 애플리케이션들(또는 명령어들의 세트들)(136)을 포함한다. 게다가, 일부 실시예들에서, 메모리(102)는 도 1a 및 도 3에 도시된 바와 같이 디바이스/글로벌 내부 상태(157)를 저장한다. 디바이스/글로벌 내부 상태(157)는, 존재하는 경우, 어느 애플리케이션들이 현재 활성 상태인지를 나타내는 활성 애플리케이션 상태; 어떤 애플리케이션들, 뷰들 또는 다른 정보가 터치 감응형 디스플레이 시스템(112)의 다양한 영역들을 점유하는지를 표시하는 디스플레이 상태; 디바이스의 다양한 센서들 및 다른 입력 또는 제어 디바이스들(116)로부터 획득된 정보를 포함하는 센서 상태; 및 디바이스의 위치 및/또는 자세에 관한 위치 및/또는 포지션 정보 중 하나 이상을 포함한다.In some embodiments, software components stored in memory 102 include operating system 126 , communication module (or set of instructions) 128 , contact/motion module (or set of instructions) 130 , graphics module ( or set of instructions) 132 , a haptic feedback module (or set of instructions) 133 , a text input module (or set of instructions) 134 , a GPS module (or set of instructions) 135 , and applications (or sets of instructions) 136 . Furthermore, in some embodiments, memory 102 stores device/global internal state 157 as shown in FIGS. 1A and 3 . The device/global internal state 157, if present, includes an active application state indicating which applications are currently active; a display state indicating which applications, views, or other information occupy the various areas of the touch-sensitive display system 112 ; sensor status, including information obtained from the device's various sensors and other input or control devices 116; and location and/or position information regarding the location and/or posture of the device.

운영 체제(126)(예컨대, iOS, Darwin, RTXC, LINUX, UNIX, OS X, WINDOWS, 또는 VxWorks와 같은 임베디드 운영 체제)는 일반적인 시스템 태스크들(예컨대, 메모리 관리, 저장 디바이스 제어, 전력 관리 등)을 제어 및 관리하기 위한 다양한 소프트웨어 컴포넌트들 및/또는 드라이버들을 포함하고, 다양한 하드웨어와 소프트웨어 컴포넌트들 사이의 통신을 용이하게 한다.Operating system 126 (eg, an embedded operating system such as iOS, Darwin, RTXC, LINUX, UNIX, OS X, WINDOWS, or VxWorks) performs general system tasks (eg, memory management, storage device control, power management, etc.) It includes various software components and/or drivers for controlling and managing the software, and facilitates communication between various hardware and software components.

통신 모듈(128)은 하나 이상의 외부 포트(124)를 통한 다른 디바이스들과의 통신을 가능하게 하고, 또한 RF 회로부(108) 및/또는 외부 포트(124)에 의해 수신되는 데이터를 처리하기 위한 다양한 소프트웨어 컴포넌트들을 포함한다. 외부 포트(124)(예컨대, USB, 파이어와이어(FIREWIRE) 등)는 다른 디바이스들에 직접적으로 또는 네트워크(예컨대, 인터넷, 무선 LAN 등)를 통해 간접적으로 커플링하도록 구성된다. 일부 실시예들에서, 외부 포트는 미국 캘리포니아주 쿠퍼티노 소재의 애플 인크.로부터의 일부 아이폰®, 아이팟 터치®, 및 아이패드® 디바이스들에서 사용되는 30-핀 커넥터와 동일하거나 유사하고/하거나 호환가능한 멀티-핀(예를 들어, 30-핀) 커넥터이다. 일부 실시예들에서, 외부 포트는 미국 캘리포니아 주 쿠퍼티노 소재의 애플 인크.로부터의 일부 아이폰®, 아이팟 터치®, 및 아이패드® 디바이스들에서 사용되는 라이트닝 커넥터(Lightning connector)와 동일하거나 유사하고/하거나 호환가능한 라이트닝 커넥터이다.Communication module 128 enables communication with other devices via one or more external ports 124 , and also provides various functions for processing data received by RF circuitry 108 and/or external ports 124 . Includes software components. External port 124 (eg, USB, FIREWIRE, etc.) is configured to couple directly to other devices or indirectly through a network (eg, Internet, wireless LAN, etc.). In some embodiments, the external port is the same as, similar to, and/or compatible with the 30-pin connector used in some iPhone®, iPod touch®, and iPad® devices from Apple Inc. of Cupertino, CA. Possible multi-pin (eg 30-pin) connectors. In some embodiments, the external port is the same as or similar to the Lightning connector used in some iPhone®, iPod touch®, and iPad® devices from Apple Inc. of Cupertino, CA and/or or a compatible Lightning connector.

접촉/모션 모듈(130)은 선택적으로 (디스플레이 제어기(156)와 함께) 터치 감응형 디스플레이 시스템(112), 및 다른 터치 감응형 디바이스들(예를 들어, 터치패드 또는 물리적 클릭 휠)과의 접촉을 검출한다. 접촉/모션 모듈(130)은 접촉이 발생했는지의 여부를 결정하는 것(예컨대, 손가락-다운 이벤트(finger-down event)를 검출하는 것), 접촉의 세기(예컨대, 접촉의 힘 또는 압력, 또는 접촉의 힘 또는 압력에 대한 대체물)를 결정하는 것, 접촉의 이동이 있는지의 여부를 결정하여 터치 감응형 표면을 가로지르는 이동을 추적하는 것(예컨대, 하나 이상의 손가락-드래깅 이벤트(finger-dragging event)들을 검출하는 것), 및 접촉이 중지되었는지의 여부를 결정하는 것(예컨대, 손가락-업 이벤트(finger-up event) 또는 접촉 중단을 검출하는 것)과 같은, (예를 들어, 손가락에 의한, 또는 스타일러스에 의한) 접촉의 검출과 관련된 다양한 동작들을 수행하기 위한 다양한 소프트웨어 컴포넌트들을 포함한다. 접촉/모션 모듈(130)은 터치 감응형 표면으로부터 접촉 데이터를 수신한다. 일련의 접촉 데이터에 의해 표현되는 접촉 지점의 이동을 결정하는 것은, 선택적으로, 접촉 지점의 속력(크기), 속도(크기 및 방향), 및/또는 가속도(크기 및/또는 방향의 변화)를 결정하는 것을 포함한다. 이들 동작들은 선택적으로 단일 접촉들(예컨대, 한 손가락 접촉들 또는 스타일러스 접촉들)에 또는 복수의 동시 접촉들(예컨대, "멀티터치"/다수의 손가락 접촉들)에 적용된다. 일부 실시예들에서, 접촉/모션 모듈(130) 및 디스플레이 제어기(156)는 터치패드 상에서의 접촉을 검출한다.Contact/motion module 130 may optionally (along with display controller 156) contact touch-sensitive display system 112, and other touch-sensitive devices (eg, a touchpad or physical click wheel). to detect The contact/motion module 130 is configured to determine whether a contact has occurred (eg, to detect a finger-down event), the strength of the contact (eg, force or pressure of the contact, or determining a force or substitute for pressure of a contact, determining whether there is movement of the contact to track movement across the touch-sensitive surface (eg, one or more finger-dragging events); )), and determining whether contact has ceased (eg, detecting a finger-up event or contact cessation) (eg, by a finger). , or with a stylus) for performing various operations related to detection of contact. The contact/motion module 130 receives contact data from the touch-sensitive surface. Determining the movement of the point of contact represented by the set of contact data optionally determines a speed (magnitude), velocity (magnitude and direction), and/or acceleration (change in magnitude and/or direction) of the point of contact. includes doing These actions are optionally applied to single contacts (eg, one finger contacts or stylus contacts) or to multiple simultaneous contacts (eg, "multi-touch"/multiple finger contacts). In some embodiments, contact/motion module 130 and display controller 156 detect contact on the touchpad.

접촉/모션 모듈(130)은, 선택적으로, 사용자에 의한 제스처 입력을 검출한다. 터치 감응형 표면 상에서의 상이한 제스처들은 상이한 접촉 패턴들(예컨대, 검출된 접촉들의 상이한 모션들, 타이밍들, 및/또는 세기들)을 갖는다. 따라서, 제스처는, 선택적으로, 특정 접촉 패턴을 검출함으로써 검출된다. 예를 들어, 손가락 탭 제스처(finger tap gesture)를 검출하는 것은 손가락-다운 이벤트를 검출한 다음에 손가락-다운 이벤트와 동일한 위치(또는 실질적으로 동일한 위치)에서(예컨대, 아이콘의 위치에서) 손가락-업(리프트오프(liftoff)) 이벤트를 검출하는 것을 포함한다. 다른 예로서, 터치 감응형 표면 상에서 손가락 스와이프 제스처(finger swipe gesture)를 검출하는 것은 손가락-다운 이벤트를 검출한 다음에 하나 이상의 손가락-드래깅 이벤트들을 검출하고, 그에 후속하여 손가락-업(리프트오프) 이벤트를 검출하는 것을 포함한다. 유사하게, 탭, 스와이프, 드래그, 및 다른 제스처들은 선택적으로 스타일러스를 위한 특정 접촉 패턴을 검출함으로써 스타일러스를 위해 검출된다.The contact/motion module 130 optionally detects a gesture input by the user. Different gestures on the touch-sensitive surface have different contact patterns (eg, different motions, timings, and/or intensities of the detected contacts). Thus, the gesture is, optionally, detected by detecting a specific contact pattern. For example, detecting a finger tap gesture may include detecting a finger-down event followed by a finger-down event at the same (or substantially the same location) as the finger-down event (eg, at the location of the icon). and detecting an up (liftoff) event. As another example, detecting a finger swipe gesture on the touch-sensitive surface detects a finger-down event followed by one or more finger-dragging events, followed by a finger-up (lift-off) event. ) to detect the event. Similarly, tap, swipe, drag, and other gestures are detected for the stylus by optionally detecting a specific contact pattern for the stylus.

일부 실시예들에서, 손가락 탭 제스처를 검출하는 것은, 손가락-다운 이벤트와 손가락-업 이벤트를 검출하는 것 사이의 시간의 길이에 좌우되지만, 손가락-다운 이벤트와 손가락-업 이벤트를 검출하는 것 사이의 손가락 접촉의 세기에 독립적이다. 일부 실시예들에서, 탭 제스처는, 탭 동안의 손가락 접촉의 세기가 (공칭 접촉-검출 세기 임계치보다 큰) 주어진 세기 임계치, 예컨대 가볍게 누르기 또는 깊게 누르기 세기 임계치를 충족하는지 여부에 독립적으로, 손가락-다운 이벤트와 손가락-업 이벤트 사이의 시간의 길이가 미리결정된 값 미만(예컨대, 0.1, 0.2, 0.3, 0.4 또는 0.5초 미만)이라는 결정에 따라 검출된다. 따라서, 손가락 탭 제스처는, 특정 입력 기준들이 충족되기 위하여 접촉의 특성 세기가 주어진 세기 임계치를 충족할 것을 요구하지 않는 특정 입력 기준들을 충족할 수 있다. 명확화를 위해, 탭 제스처에서의 손가락 접촉은 전형적으로, 손가락-다운 이벤트가 검출되기 위하여 공칭 접촉-검출 세기 임계치(이 미만에서는 접촉이 검출되지 않음)를 충족할 필요가 있다. 스타일러스 또는 다른 접촉에 의한 탭 제스처를 검출하는 것에 유사한 분석이 적용된다. 디바이스가 터치 감응형 표면 위에 호버링(hovering)하는 손가락 또는 스타일러스 접촉을 검출할 수 있는 경우에, 공칭 접촉-검출 세기 임계치는 선택적으로 손가락 또는 스타일러스와 터치 감응형 표면 사이의 물리적 접촉에 대응하지 않는다.In some embodiments, detecting a finger tap gesture depends on the length of time between detecting a finger-down event and a finger-up event, but between detecting a finger-down event and a finger-up event. is independent of the intensity of finger contact. In some embodiments, the tap gesture is, independently of whether the intensity of the finger contact during the tap meets a given intensity threshold (greater than a nominal contact-detection intensity threshold), such as a light press or deep press intensity threshold, the finger- is detected according to a determination that the length of time between the down event and the finger-up event is less than a predetermined value (eg, less than 0.1, 0.2, 0.3, 0.4, or 0.5 seconds). Thus, a finger tap gesture may meet certain input criteria that do not require the characteristic intensity of the contact to meet a given intensity threshold in order for the specific input criteria to be met. For clarity, a finger contact in a tap gesture typically needs to meet a nominal contact-detection intensity threshold below which no contact is detected for a finger-down event to be detected. A similar analysis applies to detecting a tap gesture by a stylus or other contact. In cases where the device is capable of detecting a finger or stylus contact hovering over the touch-sensitive surface, the nominal contact-detection intensity threshold optionally does not correspond to physical contact between the finger or stylus and the touch-sensitive surface.

동일한 개념들이 다른 유형의 제스처들에 유사한 방식으로 적용된다. 예를 들어, 스와이프 제스처, 핀치(pinch) 제스처, 디핀치(depinch) 제스처, 및/또는 길게 누르기 제스처는 선택적으로 그 제스처에 포함되는 접촉들의 세기들에 독립적이거나, 또는 그 제스처를 수행하는 접촉(들)이 인식되기 위하여 세기 임계치들에 도달할 것을 요구하지 않는 기준들의 만족에 기초하여 검출된다. 예를 들어, 스와이프 제스처는 하나 이상의 접촉들의 이동량에 기초하여 검출되고; 핀치 제스처는 2개 이상의 접촉들의 서로를 향하는 이동에 기초하여 검출되고; 디핀치 제스처는 2개 이상의 접촉들의 서로로부터 멀어지는 이동에 기초하여 검출되고; 길게 누르기 제스처는 임계량 미만의 이동을 갖는 터치 감응형 표면 상에서의 접촉의 지속기간에 기초하여 검출된다. 이와 같이, 특정 제스처 인식 기준들이 충족되기 위하여 접촉(들)의 세기가 각자의 세기 임계치를 충족할 것을 특정 제스처 인식 기준들이 요구하지 않는다는 진술은, 특정 제스처 인식 기준들이, 그 제스처에서의 접촉(들)이 각자의 세기 임계치에 도달하지 않는 경우 충족될 수 있고, 그 제스처에서의 접촉들 중 하나 이상이 각자의 세기 임계치에 도달하거나 그를 초과하는 상황들에서도 또한 충족될 수 있다는 것을 의미한다. 일부 실시예들에서, 탭 제스처는, 접촉이 미리정의된 기간 동안 각자의 세기 임계치 초과인지 미만인지 여부에 무관하게, 손가락-다운 및 손가락-업 이벤트가 미리정의된 기간 내에서 검출된다는 결정에 기초하여 검출되고, 스와이프 제스처는, 접촉이 접촉 이동의 끝에서 각자의 세기 임계치 초과이더라도, 접촉 이동이 미리정의된 크기보다 더 크다는 결정에 기초하여 검출된다. 제스처의 검출이 제스처를 수행하는 접촉들의 세기에 의해 영향을 받는 구현예들(예를 들어, 디바이스는 접촉의 세기가 세기 임계치 초과일 때 길게 누르기를 더 신속하게 검출하거나, 또는 접촉의 세기가 더 높을 때 탭 입력의 검출을 지연시킴)에서도, 그러한 제스처들의 검출은, 접촉이 특정 세기 임계치에 도달하지 않는 상황들에서 제스처를 인식하기 위한 기준들이 충족될 수 있는 한(예를 들어, 제스처를 인식하는 데 걸리는 시간이 변경되더라도) 접촉들이 특정 세기 임계치에 도달할 것을 요구하지 않는다.The same concepts apply in a similar way to other types of gestures. For example, a swipe gesture, a pinch gesture, a deep pinch gesture, and/or a long press gesture is optionally independent of the intensities of the contacts included in the gesture, or the contact performing the gesture. The(s) are detected based on the satisfaction of criteria that do not require reaching intensity thresholds in order to be recognized. For example, the swipe gesture is detected based on an amount of movement of the one or more contacts; a pinch gesture is detected based on movement of two or more contacts towards each other; a de-pinch gesture is detected based on movement of two or more contacts away from each other; The long press gesture is detected based on a duration of contact on the touch-sensitive surface that has less than a threshold amount of movement. As such, a statement that particular gesture recognition criteria does not require that the intensity of the contact(s) meet its respective intensity threshold in order for the particular gesture recognition criteria to be met is that the particular gesture recognition criteria ) may be satisfied if the respective intensity threshold is not reached, and may also be satisfied in situations where one or more of the contacts in the gesture reach or exceed the respective intensity threshold. In some embodiments, the tap gesture is based on determining that a finger-down and finger-up event is detected within a predefined time period, regardless of whether the contact is above or below a respective intensity threshold for a predefined time period. and a swipe gesture is detected based on a determination that the contact movement is greater than a predefined amount, even if the contact exceeds a respective intensity threshold at the end of the contact movement. Implementations in which the detection of the gesture is affected by the strength of the contacts performing the gesture (eg, the device detects the long press more quickly when the strength of the contact is above an strength threshold, or the strength of the contact is higher Even when high, which delays detection of a tap input), detection of such gestures is still possible as long as the criteria for recognizing a gesture can be met (e.g., recognizing a gesture in situations where the contact does not reach a certain intensity threshold). It does not require that contacts reach a specific intensity threshold (even if the time taken to do so changes).

접촉 세기 임계치들, 지속기간 임계치들, 및 이동 임계치들은, 일부 상황들에서, 동일한 입력 요소와의 다수의 상이한 상호작용들이 보다 풍부한 세트의 사용자 상호작용들 및 응답들을 제공할 수 있도록 동일한 입력 요소 또는 영역으로 향하는 2개 이상의 상이한 제스처들을 구별하기 위한 휴리스틱(heuristic)들을 생성하기 위해 다양한 상이한 조합들로 조합된다. 특정 제스처 인식 기준들이 충족되기 위하여 접촉(들)의 세기가 각자의 세기 임계치를 충족할 것을 특정 세트의 제스처 인식 기준들이 요구하지 않는다는 진술은, 제스처가 각자의 세기 임계치 초과의 세기를 갖는 접촉을 포함할 때 충족되는 기준들을 갖는 다른 제스처들을 식별하기 위한 다른 세기 의존적 제스처 인식 기준들의 동시 평가를 배제하지 않는다. 예를 들어, 일부 상황들에서, 제1 제스처에 대한 제1 제스처 인식 기준들 - 이는 제1 제스처 인식 기준들이 충족되기 위하여 접촉(들)의 세기가 각자의 세기 임계치를 충족할 것을 요구하지 않음 - 은 제2 제스처에 대한 제2 제스처 인식 기준들 - 이는 각자의 세기 임계치에 도달하는 접촉(들)에 의존함 - 과 경쟁 관계에 있다. 그러한 경쟁들에서, 제스처는 선택적으로 제2 제스처에 대한 제2 제스처 인식 기준들이 먼저 충족되는 경우 제1 제스처에 대한 제1 제스처 인식 기준들을 충족하는 것으로 인식되지 않는다. 예를 들어, 접촉이 미리정의된 이동량만큼 이동하기 전에 접촉이 각자의 세기 임계치에 도달하는 경우, 스와이프 제스처보다는 오히려 깊게 누르기 제스처가 검출된다. 역으로, 접촉이 각자의 세기 임계치에 도달하기 전에 접촉이 미리정의된 이동량만큼 이동하는 경우, 깊게 누르기 제스처보다는 오히려 스와이프 제스처가 검출된다. 그러한 상황들에서도, 제1 제스처에 대한 제1 제스처 인식 기준들은 여전히, 제1 제스처 인식 기준들이 충족되기 위하여 접촉(들)의 세기가 각자의 세기 임계치를 충족할 것을 요구하지 않는데, 이는 접촉이 제스처(예를 들어, 각자의 세기 임계치 초과의 세기로 증가하지 않은 접촉을 갖는 스와이프 제스처)의 끝까지 각자의 세기 임계치 미만으로 머무른 경우, 제스처가 제1 제스처 인식 기준들에 의해 스와이프 제스처로서 인식되었을 것이기 때문이다. 이와 같이, 특정 제스처 인식 기준들이 충족되기 위하여 접촉(들)의 세기가 각자의 세기 임계치를 충족할 것을 요구하지 않는 특정 제스처 인식 기준들은, (A) 일부 상황들에서 (예를 들어, 탭 제스처의 경우) 세기 임계치와 관련한 접촉의 세기를 무시하고/하거나 (B) 일부 상황들에서 (예를 들어, 인식을 위해 깊게 누르기 제스처와 경쟁하는 길게 누르기 제스처의 경우) 특정 제스처 인식 기준들이 입력에 대응하는 제스처를 인식하기 전에, (예를 들어, 깊게 누르기 제스처에 대한) 세기 의존적 제스처 인식 기준들의 경쟁 세트가 입력을 세기 의존적 제스처에 대응하는 것으로서 인식하는 경우 (예를 들어, 길게 누르기 제스처에 대한) 특정 제스처 인식 기준들이 실패할 것이라는 의미에서 세기 임계치와 관련한 접촉의 세기에 여전히 의존할 것이다.Contact intensity thresholds, duration thresholds, and movement thresholds may, in some circumstances, be configured with the same input element or They are combined in various different combinations to create heuristics for distinguishing between two or more different gestures directed to an area. A statement that a particular set of gesture recognition criteria does not require that the intensity of the contact(s) meet a respective intensity threshold for the particular gesture recognition criteria to be met includes a contact for which the gesture has an intensity above the respective intensity threshold. does not preclude simultaneous evaluation of different intensity-dependent gesture recognition criteria to identify different gestures with criteria met when doing so. For example, in some situations, first gesture recognition criteria for a first gesture, which does not require that the intensity of the contact(s) meet a respective intensity threshold for the first gesture recognition criteria to be met. is in competition with second gesture recognition criteria for a second gesture, which depend on the contact(s) reaching their respective intensity threshold. In such competitions, the gesture is optionally not recognized as meeting the first gesture recognition criteria for the first gesture if the second gesture recognition criteria for the second gesture are first met. For example, if a contact reaches their respective intensity threshold before moving by a predefined amount of movement, a deep press gesture rather than a swipe gesture is detected. Conversely, if the contact moves a predefined amount of movement before reaching its respective intensity threshold, a swipe gesture is detected rather than a deep press gesture. Even in such situations, the first gesture recognition criteria for a first gesture still do not require that the intensity of the contact(s) meet a respective intensity threshold for the first gesture recognition criteria to be met, which means that the contact If the gesture remained below the respective intensity threshold until the end of the (eg, a swipe gesture with a contact that did not increase in intensity above the respective intensity threshold), the gesture would have been recognized as a swipe gesture by the first gesture recognition criteria. because it will As such, certain gesture recognition criteria that do not require that the intensity of the contact(s) meet their respective intensity threshold in order for the specific gesture recognition criteria to be met are: (A) in some situations (e.g., of a tap gesture case) ignores the intensity of the contact relative to the intensity threshold and/or (B) in some situations (eg, for a long press gesture competing with a deep press gesture for recognition) that certain gesture recognition criteria Prior to recognizing a gesture, if a competing set of intensity-dependent gesture recognition criteria (e.g., for a deep press gesture) recognizes an input as corresponding to a force-dependent gesture (e.g., for a long press gesture) It will still depend on the intensity of the contact relative to the intensity threshold in the sense that gesture recognition criteria will fail.

그래픽 모듈(132)은, 디스플레이되는 그래픽의 시각적 효과(예컨대, 밝기, 투명도, 채도, 콘트라스트 또는 다른 시각적 속성)를 변경하기 위한 컴포넌트들을 포함하는, 터치 감응형 디스플레이 시스템(112) 또는 다른 디스플레이 상에서 그래픽을 렌더링 및 디스플레이하기 위한 다양한 공지된 소프트웨어 컴포넌트들을 포함한다. 본 명세서에서 사용되는 바와 같이, 용어 "그래픽"은 텍스트, 웹 페이지들, 아이콘들(예컨대, 소프트 키들을 포함하는 사용자 인터페이스 객체들), 디지털 이미지들, 비디오들, 애니메이션들 등을 제한 없이 포함하는, 사용자에게 디스플레이될 수 있는 임의의 객체를 포함한다.The graphics module 132 is configured to provide graphics on a touch-sensitive display system 112 or other display, including components for changing a visual effect (eg, brightness, transparency, saturation, contrast, or other visual property) of a displayed graphic. various well-known software components for rendering and displaying As used herein, the term “graphic” includes, without limitation, text, web pages, icons (eg, user interface objects including soft keys), digital images, videos, animations, and the like. , including any object that can be displayed to the user.

일부 실시예들에서, 그래픽 모듈(132)은 사용될 그래픽을 표현하는 데이터를 저장한다. 각각의 그래픽에는, 선택적으로, 대응하는 코드가 할당된다. 그래픽 모듈(132)은, 필요한 경우, 좌표 데이터 및 다른 그래픽 속성 데이터와 함께, 디스플레이될 그래픽을 특정하는 하나 이상의 코드들을 애플리케이션들 등으로부터 수신하며, 이어서 스크린 이미지 데이터를 생성하여 디스플레이 제어기(156)에 출력한다.In some embodiments, graphics module 132 stores data representing graphics to be used. Each graphic is optionally assigned a corresponding code. Graphics module 132 receives one or more codes from applications, etc. that specify a graphic to be displayed, along with coordinate data and other graphic attribute data, if necessary, and then generates screen image data to display controller 156 . print out

햅틱 피드백 모듈(133)은 디바이스(100)와의 사용자 상호작용들에 응답하여 디바이스(100) 상의 하나 이상의 위치들에서 촉각적 출력 생성기(들)(167)를 사용하여 촉각적 출력들을 생성하기 위하여 명령어들(예를 들어, 햅틱 피드백 제어기(161)에 의해 사용되는 명령어들)을 생성하기 위한 다양한 소프트웨어 컴포넌트들을 포함한다.The haptic feedback module 133 is configured to generate tactile outputs using the tactile output generator(s) 167 at one or more locations on the device 100 in response to user interactions with the device 100 . It includes various software components for generating instructions (eg, instructions used by haptic feedback controller 161 ).

선택적으로 그래픽 모듈(132)의 컴포넌트인 텍스트 입력 모듈(134)은 다양한 애플리케이션들(예컨대, 연락처(137), 이메일(140), IM(141), 브라우저(147), 및 텍스트 입력을 필요로 하는 임의의 다른 애플리케이션)에 텍스트를 입력하기 위한 소프트 키보드들을 제공한다.The text input module 134 , optionally a component of the graphics module 132 , can be used for various applications (eg, contacts 137 , email 140 , IM 141 , browser 147 , and text input It provides soft keyboards for entering text into any other application).

GPS 모듈(135)은 디바이스의 위치를 결정하고, 이 정보를 다양한 애플리케이션들에서의 사용을 위해 (예를 들어, 위치 기반 다이얼링에서 사용하기 위해 전화(138)에, 사진/비디오 메타데이터로서 카메라(143)에, 그리고 날씨 위젯들, 지역 옐로 페이지 위젯들 및 지도/내비게이션 위젯들과 같은 위치 기반 서비스들을 제공하는 애플리케이션들에) 제공한다.The GPS module 135 determines the location of the device and uses this information to the phone 138 for use in various applications (eg, in location-based dialing) and the camera as photo/video metadata. 143), and to applications that provide location-based services such as weather widgets, local yellow page widgets and map/navigation widgets).

애플리케이션들(136)은, 선택적으로, 다음의 모듈들(또는 명령어들의 세트들), 또는 이들의 서브세트 또는 수퍼세트(superset)를 포함한다:Applications 136 optionally include the following modules (or sets of instructions), or a subset or superset thereof:

Figure pat00001
연락처 모듈(137)(때때로 주소록 또는 연락처 목록으로 지칭됨);
Figure pat00001
Contacts module 137 (sometimes referred to as an address book or contact list);

Figure pat00002
전화 모듈(138);
Figure pat00002
phone module 138;

Figure pat00003
화상 회의 모듈(139);
Figure pat00003
video conferencing module 139;

Figure pat00004
이메일 클라이언트 모듈(140);
Figure pat00004
email client module 140;

Figure pat00005
인스턴트 메시징(IM) 모듈(141);
Figure pat00005
an instant messaging (IM) module 141;

Figure pat00006
운동 지원 모듈(142);
Figure pat00006
exercise support module 142;

Figure pat00007
정지 및/또는 비디오 이미지들을 위한 카메라 모듈(143);
Figure pat00007
a camera module 143 for still and/or video images;

Figure pat00008
이미지 관리 모듈(144);
Figure pat00008
image management module 144;

Figure pat00009
브라우저 모듈(147);
Figure pat00009
browser module 147;

Figure pat00010
캘린더 모듈(148);
Figure pat00010
calendar module 148;

Figure pat00011
날씨 위젯(149-1), 주식 위젯(149-2), 계산기 위젯(149-3), 알람 시계 위젯(149-4), 사전 위젯(149-5), 및 사용자에 의해 얻어지는 다른 위젯들뿐 아니라 사용자-생성 위젯들(149-6) 중 하나 이상을 선택적으로 포함하는 위젯 모듈들(149);
Figure pat00011
Weather widget 149-1, stock widget 149-2, calculator widget 149-3, alarm clock widget 149-4, dictionary widget 149-5, and other widgets obtained by the user only but also widget modules 149, optionally including one or more of user-created widgets 149-6;

Figure pat00012
사용자-생성 위젯들(149-6)을 만들기 위한 위젯 생성기 모듈(150);
Figure pat00012
a widget generator module 150 for creating user-created widgets 149-6;

Figure pat00013
검색 모듈(151);
Figure pat00013
search module 151;

Figure pat00014
비디오 재생기 모듈 및 음악 재생기 모듈로 선택적으로 구성된 비디오 및 음악 재생기 모듈(152);
Figure pat00014
a video and music player module 152 optionally configured with a video player module and a music player module;

Figure pat00015
메모 모듈(153);
Figure pat00015
memo module 153;

Figure pat00016
지도 모듈(154); 및/또는
Figure pat00016
map module 154; and/or

Figure pat00017
온라인 비디오 모듈(155).
Figure pat00017
Online video module (155).

선택적으로 메모리(102) 내에 저장되는 다른 애플리케이션들(136)의 예들은 다른 워드 프로세싱 애플리케이션들, 다른 이미지 편집 애플리케이션들, 드로잉 애플리케이션들, 프레젠테이션 애플리케이션들, JAVA-인에이블형(enabled) 애플리케이션들, 암호화, 디지털 저작권 관리, 음성 인식 및 음성 복제를 포함한다.Examples of other applications 136 optionally stored in memory 102 include other word processing applications, other image editing applications, drawing applications, presentation applications, JAVA-enabled applications, encryption , digital rights management, voice recognition and voice replication.

터치 감응형 디스플레이 시스템(112), 디스플레이 제어기(156), 접촉 모듈(130), 그래픽 모듈(132) 및 텍스트 입력 모듈(134)과 함께, 연락처 모듈(137)은, 하기를 비롯한, 주소록 또는 연락처 목록(예를 들어, 메모리(102) 또는 메모리(370) 내의 연락처 모듈(137)의 애플리케이션 내부 상태(192)에 저장됨)을 관리하도록 하는 실행가능한 명령어들을 포함한다: 이름(들)을 주소록에 추가하는 것; 주소록으로부터 이름(들)을 삭제하는 것; 전화번호(들), 이메일 주소(들), 물리적 주소(들) 또는 다른 정보를 이름과 연관시키는 것; 이미지를 이름과 연관시키는 것; 이름들을 분류 및 정렬하는 것; 전화(138), 화상 회의(139), 이메일(140) 또는 IM(141)에 의한 통신을 개시하고/하거나 용이하게 하기 위해 전화번호들 및/또는 이메일 주소들을 제공하는 것 등.Along with the touch-sensitive display system 112 , the display controller 156 , the contact module 130 , the graphics module 132 , and the text input module 134 , the contacts module 137 may include an address book or contacts executable instructions to manage a list (eg, stored in the application internal state 192 of the contact module 137 in memory 102 or memory 370): to add; deleting name(s) from the address book; associating a name with a phone number(s), email address(es), physical address(es), or other information; associating an image with a name; sorting and sorting names; providing phone numbers and/or email addresses to initiate and/or facilitate communication by phone 138 , video conferencing 139 , email 140 , or IM 141 , and the like.

RF 회로부(108), 오디오 회로부(110), 스피커(111), 마이크로폰(113), 터치 감응형 디스플레이 시스템(112), 디스플레이 제어기(156), 접촉 모듈(130), 그래픽 모듈(132), 및 텍스트 입력 모듈(134)과 함께, 전화 모듈(138)은, 전화번호에 대응하는 문자들의 시퀀스를 입력하고, 주소록(137) 내의 하나 이상의 전화번호에 액세스하고, 입력된 전화번호를 수정하고, 각자의 전화번호를 다이얼링하고, 대화를 하고, 대화가 완료된 때 접속해제하거나 끊도록 하는 실행가능한 명령어들을 포함한다. 전술된 바와 같이, 무선 통신은 선택적으로 복수의 통신 표준, 프로토콜 및 기술 중 임의의 것을 사용한다.RF circuitry 108 , audio circuitry 110 , speaker 111 , microphone 113 , touch-sensitive display system 112 , display controller 156 , contact module 130 , graphics module 132 , and In conjunction with the text entry module 134 , the phone module 138 enters a sequence of characters corresponding to a phone number, accesses one or more phone numbers in the address book 137 , modifies the entered phone number, and each Contains executable commands to dial the phone number of a user, initiate a conversation, and disconnect or hang up when the conversation is complete. As noted above, wireless communications optionally use any of a plurality of communication standards, protocols and technologies.

RF 회로부(108), 오디오 회로부(110), 스피커(111), 마이크로폰(113), 터치 감응형 디스플레이 시스템(112), 디스플레이 제어기(156), 광 센서(들)(164), 광 센서 제어기(158), 접촉 모듈(130), 그래픽 모듈(132), 텍스트 입력 모듈(134), 연락처 목록(137) 및 전화 모듈(138)과 함께, 화상 회의 모듈(139)은 사용자 지시들에 따라 사용자와 한 명 이상의 다른 참여자들 사이의 화상 회의를 개시, 시행 및 종료하도록 하는 실행가능한 명령어들을 포함한다.RF circuitry 108 , audio circuitry 110 , speaker 111 , microphone 113 , touch-sensitive display system 112 , display controller 156 , optical sensor(s) 164 , optical sensor controller ( 158 ), along with contact module 130 , graphics module 132 , text input module 134 , contact list 137 and phone module 138 , video conferencing module 139 communicates with the user according to user instructions. and executable instructions for initiating, conducting, and terminating a video conference between one or more other participants.

RF 회로부(108), 터치 감응형 디스플레이 시스템 (112), 디스플레이 제어기(156), 접촉 모듈(130), 그래픽 모듈(132) 및 텍스트 입력 모듈(134)과 함께, 이메일 클라이언트 모듈(140)은 사용자 지시들에 응답하여 이메일을 작성, 전송, 수신, 및 관리하도록 하는 실행가능한 명령어들을 포함한다. 이미지 관리 모듈(144)과 함께, 이메일 클라이언트 모듈(140)은 카메라 모듈(143)로 촬영된 정지 또는 비디오 이미지들을 갖는 이메일을 생성 및 전송하는 것을 매우 용이하게 한다.Along with RF circuitry 108 , touch-sensitive display system 112 , display controller 156 , contact module 130 , graphics module 132 , and text input module 134 , email client module 140 is a user and executable instructions for composing, sending, receiving, and managing email in response to the instructions. Together with the image management module 144 , the email client module 140 greatly facilitates creating and sending emails with still or video images captured with the camera module 143 .

RF 회로부(108), 터치 감응형 디스플레이 시스템(112), 디스플레이 제어기(156), 접촉 모듈(130), 그래픽 모듈(132) 및 텍스트 입력 모듈(134)과 함께, 인스턴트 메시징 모듈(141)은, 인스턴트 메시지에 대응하는 문자들의 시퀀스를 입력하고, 이전에 입력된 문자들을 수정하고, (예를 들어, 전화 기반 인스턴트 메시지들을 위한 단문자 메시지 서비스(SMS) 또는 멀티미디어 메시지 서비스(Multimedia Message Service, MMS) 프로토콜을 이용하거나 인터넷 기반 인스턴트 메시지들을 위한 XMPP, SIMPLE, APNs(Apple Push Notification Service) 또는 IMPS를 이용하여) 각자의 인스턴트 메시지를 송신하고, 인스턴트 메시지들을 수신하고, 수신된 인스턴트 메시지들을 보도록 하는 실행가능한 명령어들을 포함한다. 일부 실시예들에서, 송신 및/또는 수신된 인스턴트 메시지들은 선택적으로 그래픽, 사진, 오디오 파일, 비디오 파일 및/또는 MMS 및/또는 EMS(Enhanced Messaging Service)에서 지원되는 바와 같은 다른 첨부물들을 포함한다. 본 명세서에서 사용되는 바와 같이, "인스턴트 메시징"은 전화 기반 메시지들(예컨대, SMS 또는 MMS를 이용하여 전송되는 메시지들) 및 인터넷 기반 메시지들(예컨대, XMPP, SIMPLE, APNs, 또는 IMPS를 이용하여 전송되는 메시지들) 둘 모두를 지칭한다.The instant messaging module 141, along with the RF circuitry 108, the touch-sensitive display system 112, the display controller 156, the contact module 130, the graphics module 132, and the text input module 134, Enter a sequence of characters corresponding to an instant message, modify previously entered characters (eg, a Short Message Service (SMS) or Multimedia Message Service (MMS) for phone-based instant messages); Executable to send each instant message, receive instant messages and view received instant messages using XMPP, SIMPLE, APNs (Apple Push Notification Service) or IMPS protocol or using XMPP, SIMPLE, APNs (Apple Push Notification Service) for Internet based instant messages contains commands. In some embodiments, transmitted and/or received instant messages optionally include graphics, photos, audio files, video files and/or other attachments as supported by MMS and/or Enhanced Messaging Service (EMS). As used herein, “instant messaging” refers to phone-based messages (eg, messages sent using SMS or MMS) and internet-based messages (eg, using XMPP, SIMPLE, APNs, or IMPS). messages that are transmitted).

RF 회로부(108), 터치 감응형 디스플레이 시스템(112), 디스플레이 제어기(156), 접촉 모듈(130), 그래픽 모듈(132), 텍스트 입력 모듈(134), GPS 모듈(135), 지도 모듈(154), 및 비디오 및 음악 재생기 모듈(152)과 함께, 운동 지원 모듈(142)은 (예를 들어, 시간, 거리, 및/또는 열량 소비 목표와 함께) 운동들을 고안하고; (스포츠 디바이스들 및 스마트 워치들 내의) 운동 센서들과 통신하고; 운동 센서 데이터를 수신하고; 운동을 모니터링하는 데 사용되는 센서들을 캘리브레이션하고; 운동을 위한 음악을 선택 및 재생하고; 운동 데이터를 디스플레이, 저장 및 송신하도록 하는 실행가능 명령어들을 포함한다.RF circuitry 108 , touch sensitive display system 112 , display controller 156 , contact module 130 , graphics module 132 , text input module 134 , GPS module 135 , map module 154 . ), and in conjunction with the video and music player module 152 , the exercise support module 142 devises exercises (eg, along with time, distance, and/or calorie expenditure goals); communicate with motion sensors (in sports devices and smart watches); receive motion sensor data; calibrate sensors used to monitor movement; select and play music for exercise; executable instructions to display, store, and transmit athletic data.

터치 감응형 디스플레이 시스템(112), 디스플레이 제어기(156), 광 센서(들)(164), 광 센서 제어기(158), 접촉 모듈(130), 그래픽 모듈(132) 및 이미지 관리 모듈(144)과 함께, 카메라 모듈(143)은, 정지 이미지들 또는 비디오(비디오 스트림을 포함함)를 캡처하고 이들을 메모리(102) 내에 저장하고/하거나, 정지 이미지 또는 비디오의 특성을 수정하고/하거나, 메모리(102)로부터 정지 이미지 또는 비디오를 삭제하도록 하는 실행가능 명령어들을 포함한다.a touch-sensitive display system 112 , a display controller 156 , an optical sensor(s) 164 , an optical sensor controller 158 , a contact module 130 , a graphics module 132 , and an image management module 144 ; Together, the camera module 143 captures still images or video (including a video stream) and stores them in the memory 102 , modifies characteristics of the still image or video, and/or the memory 102 ) to delete a still image or video from

터치 감응형 디스플레이 시스템(112), 디스플레이 제어기(156), 접촉 모듈(130), 그래픽 모듈(132), 텍스트 입력 모듈(134) 및 카메라 모듈(143)과 함께, 이미지 관리 모듈(144)은 정지 및/또는 비디오 이미지들을 배열하거나, 수정(예컨대, 편집)하거나, 또는 그렇지 않으면 조작하고, 라벨링하고, 삭제하고, (예컨대, 디지털 슬라이드 쇼 또는 앨범에) 제시하고, 저장하도록 하는 실행가능 명령어들을 포함한다.Along with the touch-sensitive display system 112 , the display controller 156 , the contact module 130 , the graphics module 132 , the text input module 134 , and the camera module 143 , the image management module 144 is stopped. and/or executable instructions to arrange, modify (eg, edit), or otherwise manipulate, label, delete, present (eg, in a digital slide show or album), and store video images do.

RF 회로부(108), 터치 감응형 디스플레이 시스템(112), 디스플레이 시스템 제어기(156), 접촉 모듈(130), 그래픽 모듈(132) 및 텍스트 입력 모듈(134)과 함께, 브라우저 모듈(147)은, 웹 페이지들 또는 이들의 부분들뿐만 아니라 웹 페이지들에 링크된 첨부물들 및 다른 파일들을 검색하고, 그들에 링크하고, 수신하고, 그리고 디스플레이하는 것을 비롯한, 사용자 지시들에 따라 인터넷을 브라우징하도록 하는 실행가능 명령어들을 포함한다.With RF circuitry 108 , touch-sensitive display system 112 , display system controller 156 , contact module 130 , graphics module 132 and text input module 134 , browser module 147 includes: Execution to browse the Internet according to user instructions, including retrieving, linking to, receiving, and displaying web pages or portions thereof, as well as attachments and other files linked to web pages Includes possible commands.

RF 회로부(108), 터치 감응형 디스플레이 시스템(112), 디스플레이 시스템 제어기(156), 접촉 모듈(130), 그래픽 모듈(132), 텍스트 입력 모듈(134), 이메일 클라이언트 모듈(140), 및 브라우저 모듈(147)과 함께, 캘린더 모듈(148)은 사용자 지시들에 따라 캘린더들 및 캘린더들과 연관된 데이터(예를 들어, 캘린더 엔트리들, 할 일 목록들 등)를 생성, 디스플레이, 수정, 및 저장하도록 하는 실행가능한 명령어들을 포함한다.RF circuitry 108 , touch-sensitive display system 112 , display system controller 156 , contact module 130 , graphics module 132 , text input module 134 , email client module 140 , and browser In conjunction with module 147 , calendar module 148 creates, displays, modifies, and stores calendars and data associated with calendars (eg, calendar entries, to-do lists, etc.) according to user instructions. Contains executable instructions to make

RF 회로부(108), 터치 감응형 디스플레이 시스템(112), 디스플레이 시스템 제어기(156), 접촉 모듈(130), 그래픽 모듈(132), 텍스트 입력 모듈(134) 및 브라우저 모듈(147)과 함께, 위젯 모듈들(149)은 사용자에 의해 선택적으로 다운로드 및 사용되거나(예컨대, 날씨 위젯(149-1), 주식 위젯(149-2), 계산기 위젯(149-3), 알람 시계 위젯(149-4) 및 사전 위젯(149-5)), 또는 사용자에 의해 생성되는(예컨대, 사용자-생성 위젯(149-6)) 미니-애플리케이션들이다. 일부 실시예들에서, 위젯은 HTML(Hypertext Markup Language) 파일, CSS(Cascading Style Sheets) 파일 및 자바스크립트(JavaScript) 파일을 포함한다. 일부 실시예들에서, 위젯은 XML(Extensible Markup Language) 파일 및 자바스크립트 파일(예컨대, 야후(Yahoo)! 위젯들)을 포함한다.Widget, along with RF circuitry 108 , touch-sensitive display system 112 , display system controller 156 , contact module 130 , graphics module 132 , text input module 134 and browser module 147 . Modules 149 are optionally downloaded and used by the user (eg, weather widget 149-1, stock widget 149-2, calculator widget 149-3, alarm clock widget 149-4). and dictionary widget 149-5), or mini-applications created by the user (eg, user-created widget 149-6). In some embodiments, the widget includes a Hypertext Markup Language (HTML) file, a Cascading Style Sheets (CSS) file, and a JavaScript file. In some embodiments, a widget includes an Extensible Markup Language (XML) file and a JavaScript file (eg, Yahoo! widgets).

RF 회로부(108), 터치 감응형 디스플레이 시스템(112), 디스플레이 시스템 제어기(156), 접촉 모듈(130), 그래픽 모듈(132), 텍스트 입력 모듈(134) 및 브라우저 모듈(147)과 함께, 위젯 생성기 모듈(150)은 위젯들을 생성(예를 들어, 웹 페이지의 사용자-지정 일부분을 위젯으로 변경)하도록 하는 실행가능한 명령어들을 포함한다.Widget, along with RF circuitry 108 , touch-sensitive display system 112 , display system controller 156 , contact module 130 , graphics module 132 , text input module 134 and browser module 147 . The generator module 150 includes executable instructions to create widgets (eg, change a user-specified portion of a web page into a widget).

터치 감응형 디스플레이 시스템(112), 디스플레이 시스템 제어기(156), 접촉 모듈(130), 그래픽 모듈(132) 및 텍스트 입력 모듈(134)과 함께, 검색 모듈(151)은 사용자 지시들에 따라 하나 이상의 검색 기준들(예컨대, 하나 이상의 사용자-특정 검색어들)에 매칭되는 메모리(102) 내의 텍스트, 음악, 사운드, 이미지, 비디오, 및/또는 다른 파일들을 검색하도록 하는 실행가능 명령어들을 포함한다.Together with the touch-sensitive display system 112 , the display system controller 156 , the contact module 130 , the graphics module 132 , and the text input module 134 , the search module 151 may be configured to perform one or more functions according to user instructions. executable instructions to search for text, music, sound, image, video, and/or other files in memory 102 that match search criteria (eg, one or more user-specific search terms).

터치 감응형 디스플레이 시스템(112), 디스플레이 시스템 제어기(156), 접촉 모듈(130), 그래픽 모듈(132), 오디오 회로부(110), 스피커(111), RF 회로부(108), 및 브라우저 모듈(147)과 함께, 비디오 및 음악 재생기 모듈(152)은 사용자가 MP3 또는 AAC 파일들과 같은 하나 이상의 파일 포맷으로 저장된 녹음된 음악 및 다른 사운드 파일들을 다운로드 및 재생하도록 허용하는 실행가능한 명령어들, 및 비디오들을 (예를 들어, 터치 감응형 디스플레이 시스템(112) 상에서, 또는 무선으로 또는 외부 포트(124)를 통해 접속된 외부 디스플레이 상에서) 디스플레이하거나, 제시하거나, 그렇지 않으면 재생하도록 하는 실행가능한 명령어들을 포함한다. 일부 실시예들에서, 디바이스(100)는 선택적으로 아이팟(애플 인크.의 상표)과 같은 MP3 재생기의 기능을 포함한다.Touch-sensitive display system 112 , display system controller 156 , contact module 130 , graphics module 132 , audio circuitry 110 , speaker 111 , RF circuitry 108 , and browser module 147 . ), the video and music player module 152 generates executable instructions that allow a user to download and play recorded music and other sound files stored in one or more file formats, such as MP3 or AAC files, and videos. executable instructions to display, present, or otherwise play (eg, on touch-sensitive display system 112 , or on an external display connected wirelessly or via external port 124 ). In some embodiments, device 100 optionally includes the functionality of an MP3 player, such as an iPod (trademark of Apple Inc.).

터치 감응형 디스플레이 시스템(112), 디스플레이 제어기(156), 접촉 모듈(130), 그래픽 모듈(132) 및 텍스트 입력 모듈(134)과 함께, 메모 모듈(153)은 사용자 지시들에 따라 메모들, 할 일 목록들 등을 생성 및 관리하도록 하는 실행가능한 명령어들을 포함한다.Along with the touch-sensitive display system 112 , the display controller 156 , the contact module 130 , the graphics module 132 and the text input module 134 , the memo module 153 is configured to take notes according to user instructions; Contains executable instructions for creating and managing to-do lists and the like.

RF 회로부(108), 터치 감응형 디스플레이 시스템(112), 디스플레이 시스템 제어기(156), 접촉 모듈(130), 그래픽 모듈(132), 텍스트 입력 모듈(134), GPS 모듈(135), 및 브라우저 모듈(147)과 함께, 지도 모듈(154)은 사용자 지시들에 따라 지도들 및 지도들과 연관된 데이터(예를 들어, 운전 길 안내; 특정 위치에서의 또는 그 인근의 상점들 및 다른 관심 지점들에 관한 데이터; 및 다른 위치 기반 데이터)를 수신, 디스플레이, 수정, 및 저장하도록 하는 실행가능한 명령어들을 포함한다.RF circuitry 108 , touch-sensitive display system 112 , display system controller 156 , contact module 130 , graphics module 132 , text input module 134 , GPS module 135 , and browser module In conjunction with 147 , the map module 154 provides maps and data associated with the maps (eg, driving directions; to shops and other points of interest at or near a specific location) according to user instructions. data; and other location-based data).

터치 감응형 디스플레이 시스템(112), 디스플레이 시스템 제어기(156), 접촉 모듈(130), 그래픽 모듈(132), 오디오 회로부(110), 스피커(111), RF 회로부(108), 텍스트 입력 모듈(134), 이메일 클라이언트 모듈(140), 및 브라우저 모듈(147)과 함께, 온라인 비디오 모듈(155)은 사용자가 H.264와 같은 하나 이상의 파일 포맷의 온라인 비디오들에 액세스하고, 그들을 브라우징하고, (예를 들어, 스트리밍 및/또는 다운로드에 의해) 수신하고, (예를 들어, 터치 스크린(112) 상에서, 또는 무선으로 또는 외부 포트(124)를 통해 접속된 외부 디스플레이 상에서) 재생하고, 특정 온라인 비디오로의 링크와 함께 이메일을 전송하고, 달리 관리하도록 허용하는 실행가능한 명령어들을 포함한다. 일부 실시예들에서, 이메일 클라이언트 모듈(140)보다는 오히려 인스턴트 메시징 모듈(141)이 특정 온라인 비디오로의 링크를 전송하는 데 사용된다.Touch-sensitive display system 112 , display system controller 156 , contact module 130 , graphics module 132 , audio circuitry 110 , speaker 111 , RF circuitry 108 , text input module 134 . ), email client module 140, and browser module 147, online video module 155, allows a user to access, browse online videos in one or more file formats, such as H.264, (e.g., Receive (eg, by streaming and/or download), play (eg, on touch screen 112 , or on an external display connected wirelessly or via external port 124 ), and with specific online video Sends an email with a link to and contains executable commands that allow it to be managed otherwise. In some embodiments, instant messaging module 141 rather than email client module 140 is used to send a link to a particular online video.

앞서 식별된 모듈들 및 애플리케이션들 각각은 상술한 하나 이상의 기능들 및 본 출원에 기술되는 방법들(예컨대, 본 명세서에 기술되는 컴퓨터 구현 방법들 및 다른 정보 프로세싱 방법들)을 수행하기 위한 실행가능 명령어들의 세트에 대응한다. 이들 모듈(즉, 명령어들의 세트들)은 별개의 소프트웨어 프로그램들, 절차들 또는 모듈들로서 구현될 필요가 없으며, 따라서 이들 모듈의 다양한 서브세트들이 선택적으로 다양한 실시예들에서 조합되거나 그렇지 않으면 재배열된다. 일부 실시예들에서, 메모리(102)는 선택적으로, 앞서 식별된 모듈들 및 데이터 구조들의 서브세트를 저장한다. 또한, 메모리(102)는, 선택적으로, 전술되지 않은 추가의 모듈들 및 데이터 구조들을 저장한다.Each of the modules and applications identified above includes executable instructions for performing one or more of the functions described above and the methods described herein (eg, the computer-implemented methods and other information processing methods described herein). corresponding to a set of These modules (ie, sets of instructions) need not be implemented as separate software programs, procedures or modules, and thus various subsets of these modules are optionally combined or otherwise rearranged in various embodiments. . In some embodiments, memory 102 optionally stores a subset of the modules and data structures identified above. In addition, the memory 102 optionally stores additional modules and data structures not described above.

일부 실시예들에서, 디바이스(100)는 디바이스 상의 미리정의된 세트의 기능들의 동작이 터치 스크린 및/또는 터치패드를 통해 전용으로 수행되는 디바이스이다. 터치 스크린 및/또는 터치패드를 디바이스(100)의 동작을 위한 주 입력 제어 디바이스로서 사용함으로써, 디바이스(100) 상의 (푸시 버튼들, 다이얼들 등과 같은) 물리적 입력 제어 디바이스들의 수가 선택적으로 감소된다.In some embodiments, device 100 is a device in which operation of a predefined set of functions on the device is performed exclusively via a touch screen and/or touchpad. By using a touch screen and/or touchpad as the primary input control device for operation of device 100 , the number of physical input control devices (such as push buttons, dials, etc.) on device 100 is selectively reduced.

전적으로 터치 스크린 및/또는 터치패드를 통해 수행되는 미리정의된 세트의 기능들은, 선택적으로, 사용자 인터페이스들 간의 내비게이션을 포함한다. 일부 실시예들에서, 터치패드는, 사용자에 의해 터치될 때, 디바이스(100)를 디바이스(100) 상에 디스플레이되는 임의의 사용자 인터페이스로부터 메인, 홈 또는 루트 메뉴로 내비게이팅한다. 이러한 실시예들에서, "메뉴 버튼"이 터치패드를 이용하여 구현된다. 일부 다른 실시예들에서, 메뉴 버튼은 터치패드 대신에 물리적 푸시 버튼 또는 다른 물리적 입력 제어 디바이스이다.The predefined set of functions performed entirely via the touch screen and/or touchpad optionally include navigation between user interfaces. In some embodiments, the touchpad, when touched by a user, navigates device 100 to a main, home, or root menu from any user interface displayed on device 100 . In these embodiments, a “menu button” is implemented using a touchpad. In some other embodiments, the menu button is a physical push button or other physical input control device instead of a touchpad.

도 1b는 일부 실시예들에 따른, 이벤트 처리를 위한 예시적인 컴포넌트들을 예시하는 블록도이다. 일부 실시예들에서, 메모리(102(도 1a) 또는 370(도 3))는 (예컨대, 운영 체제(126)에서의) 이벤트 분류기(170) 및 개개의 애플리케이션(136-1)(예컨대, 전술한 애플리케이션들(136, 137 내지 155, 380 내지 390) 중 임의의 것)을 포함한다.1B is a block diagram illustrating example components for event processing, in accordance with some embodiments. In some embodiments, memory 102 ( FIG. 1A ) or 370 ( FIG. 3 ) includes event classifier 170 (eg, in operating system 126 ) and respective application 136 - 1 (eg, above applications 136, any of 137-155, 380-390).

이벤트 분류기(170)는 이벤트 정보를 수신하고, 이벤트 정보를 전달할 애플리케이션(136-1), 및 애플리케이션(136-1)의 애플리케이션 뷰(191)를 결정한다. 이벤트 분류기(170)는 이벤트 모니터(171) 및 이벤트 디스패처 모듈(event dispatcher module)(174)을 포함한다. 일부 실시예들에서, 애플리케이션(136-1)은 애플리케이션이 활성이거나 실행 중일 때 터치 감응형 디스플레이 시스템(112) 상에 디스플레이되는 현재 애플리케이션 뷰(들)를 나타내는 애플리케이션 내부 상태(192)를 포함한다. 일부 실시예들에서, 디바이스/글로벌 내부 상태(157)는 이벤트 분류기(170)에 의해 어느 애플리케이션(들)이 현재 활성인지 결정하는 데 이용되며, 애플리케이션 내부 상태(192)는 이벤트 분류기(170)에 의해 이벤트 정보를 전달할 애플리케이션 뷰들(191)을 결정하는 데 이용된다.The event classifier 170 receives the event information, and determines an application 136 - 1 to which to forward the event information, and an application view 191 of the application 136 - 1 . The event sorter 170 includes an event monitor 171 and an event dispatcher module 174 . In some embodiments, application 136 - 1 includes an application internal state 192 representing the current application view(s) displayed on touch-sensitive display system 112 when the application is active or running. In some embodiments, device/global internal state 157 is used by event classifier 170 to determine which application(s) is currently active, and application internal state 192 is sent to event classifier 170 It is used to determine the application views 191 to which the event information by the

일부 실시예들에서, 애플리케이션 내부 상태(192)는 애플리케이션(136-1)이 실행을 재개할 때 이용될 재개 정보, 애플리케이션(136-1)에 의해 디스플레이되고 있거나 디스플레이될 준비가 된 정보를 나타내는 사용자 인터페이스 상태 정보, 사용자가 애플리케이션(136-1)의 이전 상태 또는 뷰로 되돌아가는 것을 가능하게 하기 위한 상태 큐(queue), 및 사용자에 의해 취해진 이전 액션들의 재실행(redo)/실행취소(undo) 큐 중 하나 이상과 같은 추가 정보를 포함한다.In some embodiments, application internal state 192 is a user indicating resume information to be used when application 136 - 1 resumes execution, information being displayed by application 136 - 1 or ready to be displayed. Interface state information, a state queue to enable the user to return to a previous state or view of the application 136 - 1 , and a redo/undo queue of previous actions taken by the user. Include additional information, such as one or more.

이벤트 모니터(171)는 주변기기 인터페이스(118)로부터 이벤트 정보를 수신한다. 이벤트 정보는 서브이벤트(예를 들어, 다중 터치 제스처의 일부로서 터치 감응형 디스플레이 시스템(112) 상에서의 사용자 터치)에 대한 정보를 포함한다. 주변기기 인터페이스(118)는 I/O 서브시스템(106) 또는 센서, 예컨대, 근접 센서(166), 가속도계(들)(168), 및/또는 (오디오 회로부(110)를 통한) 마이크로폰(113)으로부터 수신하는 정보를 송신한다. 주변기기 인터페이스(118)가 I/O 서브시스템(106)으로부터 수신하는 정보는 터치 감응형 디스플레이 시스템(112) 또는 터치 감응형 표면으로부터의 정보를 포함한다.The event monitor 171 receives event information from the peripheral interface 118 . The event information includes information about a subevent (eg, a user touch on the touch-sensitive display system 112 as part of a multi-touch gesture). Peripheral interface 118 is from I/O subsystem 106 or sensors, such as proximity sensor 166 , accelerometer(s) 168 , and/or microphone 113 (via audio circuitry 110 ). Transmits the information it receives. Information that peripherals interface 118 receives from I/O subsystem 106 includes information from touch-sensitive display system 112 or a touch-sensitive surface.

일부 실시예들에서, 이벤트 모니터(171)는 요청들을 미리결정된 간격으로 주변기기 인터페이스(118)에 전송한다. 이에 응답하여, 주변기기 인터페이스(118)는 이벤트 정보를 송신한다. 다른 실시예들에서, 주변기기 인터페이스(118)는 중요한 이벤트(예컨대, 미리결정된 잡음 임계치를 초과하는 입력 및/또는 미리결정된 지속기간 초과 동안의 입력을 수신하는 것)가 있을 때에만 이벤트 정보를 송신한다.In some embodiments, event monitor 171 sends requests to peripherals interface 118 at predetermined intervals. In response, peripherals interface 118 transmits event information. In other embodiments, peripherals interface 118 transmits event information only when there is a significant event (eg, receiving input exceeding a predetermined noise threshold and/or input for exceeding a predetermined duration). .

일부 실시예들에서, 이벤트 분류기(170)는 또한 히트 뷰(hit view) 결정 모듈(172) 및/또는 활성 이벤트 인식기 결정 모듈(173)을 포함한다.In some embodiments, the event classifier 170 also includes a hit view determination module 172 and/or an active event recognizer determination module 173 .

히트 뷰 결정 모듈(172)은 터치 감응형 디스플레이 시스템(112)이 하나 초과의 뷰를 디스플레이할 때 하나 이상의 뷰들 내에서 서브이벤트가 발생한 곳을 결정하기 위한 소프트웨어 절차들을 제공한다. 뷰들은 사용자가 디스플레이 상에서 볼 수 있는 제어부들 및 다른 요소들로 구성된다.Hit view determination module 172 provides software procedures for determining where a subevent occurred within one or more views when touch-sensitive display system 112 displays more than one view. Views are made up of controls and other elements that the user can see on the display.

애플리케이션과 연관된 사용자 인터페이스의 다른 태양은 본 명세서에서 때때로 애플리케이션 뷰들 또는 사용자 인터페이스 창(user interface window)들로 지칭되는 한 세트의 뷰들인데, 여기서 정보가 디스플레이되고 터치 기반 제스처가 발생한다. 터치가 검출되는 (각각의 애플리케이션의) 애플리케이션 뷰들은 선택적으로 애플리케이션의 프로그램 또는 뷰 계층구조 내의 프로그램 레벨들에 대응한다. 예를 들어, 터치가 검출되는 최하위 레벨의 뷰는 선택적으로 히트 뷰로 지칭되고, 적절한 입력들로서 인식되는 이벤트들의 세트는, 선택적으로, 터치 기반 제스처를 시작하는 초기 터치의 히트 뷰에 적어도 부분적으로 기초하여 결정된다.Another aspect of a user interface associated with an application is a set of views, sometimes referred to herein as application views or user interface windows, in which information is displayed and touch-based gestures occur. The application views (of each application) for which touch is detected optionally correspond to program levels in the application's program or view hierarchy. For example, the lowest-level view in which a touch is detected is optionally referred to as a hit view, and the set of events recognized as appropriate inputs is, optionally, based at least in part on the hit view of the initial touch that initiates the touch-based gesture. is decided

히트 뷰 결정 모듈(172)은 터치 기반 제스처의 서브이벤트들과 관련된 정보를 수신한다. 애플리케이션이 계층구조에서 조직화된 다수의 뷰들을 갖는 경우, 히트 뷰 결정 모듈(172)은 히트 뷰를, 서브이벤트를 처리해야 하는 계층구조 내의 최하위 뷰로서 식별한다. 대부분의 상황들에서, 히트 뷰는 개시되는 서브이벤트(즉, 이벤트 또는 잠재적 이벤트를 형성하는 서브이벤트들의 시퀀스에서의 제1 서브이벤트)가 발생하는 최하위 레벨 뷰이다. 일단 히트 뷰가 히트 뷰 결정 모듈에 의해 식별되면, 히트 뷰는 전형적으로 그것이 히트 뷰로서 식별되게 한 것과 동일한 터치 또는 입력 소스와 관련된 모든 서브이벤트들을 수신한다.The hit view determination module 172 receives information related to sub-events of the touch-based gesture. If the application has multiple views organized in a hierarchy, hit view determination module 172 identifies the hit view as the lowest view in the hierarchy that should handle the subevent. In most situations, the hit view is the lowest level view in which the initiated subevent (ie, the first subevent in the sequence of subevents forming the event or potential event) occurs. Once a hit view is identified by the hit view determination module, the hit view typically receives all subevents related to the same touch or input source that caused it to be identified as the hit view.

활성 이벤트 인식기 결정 모듈(173)은 뷰 계층구조 내에서 어느 뷰 또는 뷰들이 서브이벤트들의 특정 시퀀스를 수신해야 하는지를 결정한다. 일부 실시예들에서, 활성 이벤트 인식기 결정 모듈(173)은 히트 뷰만이 서브이벤트들의 특정 시퀀스를 수신해야 하는 것으로 결정한다. 다른 실시예들에서, 활성 이벤트 인식기 결정 모듈(173)은 서브이벤트의 물리적 위치를 포함하는 모든 뷰들이 적극 참여 뷰(actively involved view)들인 것으로 결정하고, 그에 따라 모든 적극 참여 뷰들이 서브이벤트들의 특정 시퀀스를 수신해야 하는 것으로 결정한다. 다른 실시예들에서, 터치 서브이벤트들이 전적으로 하나의 특정 뷰와 연관된 영역으로 한정되었더라도, 계층구조 내의 상위 뷰들은 여전히 적극 참여 뷰들로서 유지될 것이다.The active event recognizer determination module 173 determines which view or views within the view hierarchy should receive a particular sequence of subevents. In some embodiments, the active event recognizer determination module 173 determines that only the hit view should receive a particular sequence of subevents. In other embodiments, the active event recognizer determination module 173 determines that all views including the physical location of the subevent are actively involved views, so that all actively involved views are specific to the subevents. It decides that it should receive the sequence. In other embodiments, even if the touch subevents are exclusively confined to the area associated with one particular view, the top views in the hierarchy will still remain as actively engaged views.

이벤트 디스패처 모듈(174)은 이벤트 정보를 이벤트 인식기(예컨대, 이벤트 인식기(180))에 디스패치한다. 활성 이벤트 인식기 결정 모듈(173)을 포함하는 실시예들에서, 이벤트 디스패처 모듈(174)은 이벤트 정보를 활성 이벤트 인식기 결정 모듈(173)에 의해 결정된 이벤트 인식기에 전달한다. 일부 실시예들에서, 이벤트 디스패처 모듈(174)은 이벤트 큐 내에 이벤트 정보를 저장하는데, 이벤트 정보는 각각의 이벤트 수신기 모듈(182)에 의해 인출된다.The event dispatcher module 174 dispatches event information to an event recognizer (eg, event recognizer 180 ). In embodiments that include an active event recognizer determination module 173 , the event dispatcher module 174 communicates event information to the event recognizer determined by the active event recognizer determination module 173 . In some embodiments, the event dispatcher module 174 stores event information in an event queue, which event information is fetched by each event receiver module 182 .

일부 실시예들에서, 운영 체제(126)는 이벤트 분류기(170)를 포함한다. 대안으로, 애플리케이션(136-1)은 이벤트 분류기(170)를 포함한다. 또 다른 실시예들에서, 이벤트 분류기(170)는 독립형 모듈이거나, 또는 접촉/모션 모듈(130)과 같이 메모리(102)에 저장되는 다른 모듈의 일부이다.In some embodiments, operating system 126 includes event classifier 170 . Alternatively, application 136 - 1 includes event classifier 170 . In still other embodiments, event classifier 170 is a standalone module or is part of another module stored in memory 102 , such as contact/motion module 130 .

일부 실시예들에서, 애플리케이션(136-1)은 복수의 이벤트 핸들러들(190) 및 하나 이상의 애플리케이션 뷰들(191)을 포함하며, 이들의 각각은 애플리케이션의 사용자 인터페이스의 각각의 뷰 내에 발생하는 터치 이벤트들을 처리하기 위한 명령어들을 포함한다. 애플리케이션(136-1)의 각각의 애플리케이션 뷰(191)는 하나 이상의 이벤트 인식기들(180)을 포함한다. 전형적으로, 각각의 애플리케이션 뷰(191)는 복수의 이벤트 인식기들(180)을 포함한다. 다른 실시예들에서, 이벤트 인식기들(180) 중 하나 이상은 사용자 인터페이스 키트(도시되지 않음) 또는 애플리케이션(136-1)이 방법들 및 다른 속성들을 물려받는 상위 레벨 객체와 같은 별개의 모듈의 일부이다. 일부 실시예들에서, 각각의 이벤트 핸들러(190)는 데이터 업데이터(176), 객체 업데이터(177), GUI 업데이터(178), 및/또는 이벤트 분류기(170)로부터 수신된 이벤트 데이터(179) 중 하나 이상을 포함한다. 이벤트 핸들러(190)는 선택적으로 데이터 업데이터(176), 객체 업데이터(177) 또는 GUI 업데이터(178)를 이용하거나 호출하여 애플리케이션 내부 상태(192)를 업데이트한다. 대안으로, 애플리케이션 뷰들(191) 중 하나 이상은 하나 이상의 각각의 이벤트 핸들러(190)를 포함한다. 또한, 일부 실시예들에서, 데이터 업데이터(176), 객체 업데이터(177), 및 GUI 업데이터(178) 중 하나 이상은 각각의 애플리케이션 뷰(191) 내에 포함된다.In some embodiments, application 136 - 1 includes a plurality of event handlers 190 and one or more application views 191 , each of which is a touch event occurring within a respective view of the application's user interface. Includes instructions for processing them. Each application view 191 of application 136 - 1 includes one or more event recognizers 180 . Typically, each application view 191 includes a plurality of event recognizers 180 . In other embodiments, one or more of event recognizers 180 may be part of a separate module, such as a user interface kit (not shown) or a higher-level object from which application 136-1 inherits methods and other properties. am. In some embodiments, each event handler 190 is one of data updater 176 , object updater 177 , GUI updater 178 , and/or event data 179 received from event classifier 170 . includes more than Event handler 190 optionally uses or calls data updater 176 , object updater 177 , or GUI updater 178 to update application internal state 192 . Alternatively, one or more of the application views 191 include one or more respective event handlers 190 . Also, in some embodiments, one or more of data updater 176 , object updater 177 , and GUI updater 178 are included within each application view 191 .

각각의 이벤트 인식기(180)는 이벤트 분류기(170)로부터 이벤트 정보(예컨대, 이벤트 데이터(179))를 수신하고 그 이벤트 정보로부터 이벤트를 식별한다. 이벤트 인식기(180)는 이벤트 수신기(182) 및 이벤트 비교기(184)를 포함한다. 일부 실시예들에서, 이벤트 인식기(180)는 또한 적어도 메타데이터(183) 및 이벤트 전달 명령어들(188)(선택적으로 서브이벤트 전달 명령어들을 포함함)의 서브세트를 포함한다.Each event recognizer 180 receives event information (eg, event data 179 ) from the event classifier 170 and identifies an event from the event information. The event recognizer 180 includes an event receiver 182 and an event comparator 184 . In some embodiments, event recognizer 180 also includes at least a subset of metadata 183 and event delivery instructions 188 (optionally including subevent delivery instructions).

이벤트 수신기(182)는 이벤트 분류기(170)로부터 이벤트 정보를 수신한다. 이벤트 정보는 서브이벤트, 예를 들어 터치 또는 터치 이동에 관한 정보를 포함한다. 서브이벤트에 따라서, 이벤트 정보는 또한 서브이벤트의 위치와 같은 추가 정보를 포함한다. 서브이벤트가 터치의 모션과 관련되는 경우, 이벤트 정보는 또한 선택적으로 서브이벤트의 속력 및 방향을 포함한다. 일부 실시예들에서, 이벤트들은 하나의 배향으로부터 다른 배향으로(예컨대, 세로 배향으로부터 가로 배향으로, 또는 그 반대로)의 디바이스의 회전을 포함하며, 이벤트 정보는 디바이스의 현재 배향(디바이스 자세로도 지칭됨)에 관한 대응하는 정보를 포함한다.The event receiver 182 receives event information from the event classifier 170 . The event information includes information about a sub-event, for example, a touch or a touch movement. Depending on the subevent, the event information also includes additional information such as the location of the subevent. If the sub-event relates to motion of the touch, the event information also optionally includes the speed and direction of the sub-event. In some embodiments, the events include rotation of the device from one orientation to another (eg, from a portrait orientation to a landscape orientation, or vice versa), and the event information includes the current orientation of the device (also referred to as device pose). ) and corresponding information about

이벤트 비교기(184)는 이벤트 정보를 미리정의된 이벤트 또는 서브이벤트 정의들과 비교하고, 그 비교에 기초하여, 이벤트 또는 서브이벤트를 결정하거나, 이벤트 또는 서브이벤트의 상태를 결정 또는 업데이트한다. 일부 실시예들에서, 이벤트 비교기(184)는 이벤트 정의들(186)을 포함한다. 이벤트 정의들(186)은 이벤트들(예컨대, 서브이벤트들의 미리정의된 시퀀스들), 예를 들어 이벤트 1(187-1), 이벤트 2(187-2) 등의 정의들을 포함한다. 일부 실시예들에서, 이벤트(187) 내의 서브이벤트들은, 예를 들어, 터치 시작, 터치 종료, 터치 이동, 터치 취소, 및 다중 터치를 포함한다. 일례에서, 이벤트 1(187-1)에 대한 정의는 디스플레이된 객체 상에서의 더블 탭이다. 더블 탭은, 예를 들어, 미리결정된 페이즈(phase) 동안의 디스플레이된 객체 상의 제1 터치(터치 시작), 미리결정된 페이즈 동안의 제1 리프트오프(터치 종료), 미리결정된 페이즈 동안의 디스플레이된 객체 상의 제2 터치(터치 시작), 및 미리결정된 페이즈 동안의 제2 리프트오프(터치 종료)를 포함한다. 다른 예에서, 이벤트 2(187-2)에 대한 정의는 디스플레이된 객체 상에서의 드래깅이다. 드래깅은, 예를 들어, 미리결정된 페이즈 동안의 디스플레이된 객체 상의 터치(또는 접촉), 터치 감응형 디스플레이 시스템(112)을 가로지르는 터치의 이동, 및 터치의 리프트오프(터치 종료)를 포함한다. 일부 실시예들에서, 이벤트는 또한 하나 이상의 연관된 이벤트 핸들러들(190)에 대한 정보를 포함한다.The event comparator 184 compares the event information to predefined event or subevent definitions, and based on the comparison, determines an event or subevent, or determines or updates the status of the event or subevent. In some embodiments, event comparator 184 includes event definitions 186 . Event definitions 186 include definitions of events (eg, predefined sequences of sub-events), eg, Event 1 187-1, Event 2 187-2, and the like. In some embodiments, subevents within event 187 include, for example, touch start, touch end, touch move, touch cancel, and multi-touch. In one example, the definition for event 1 187 - 1 is a double tap on the displayed object. A double tap is, for example, a first touch (touch start) on a displayed object during a predetermined phase, a first liftoff (touch end) during a predetermined phase, a displayed object during a predetermined phase a second touch on the upper body (touch start), and a second liftoff (touch end) for a predetermined phase. In another example, the definition for event 2 187 - 2 is dragging on the displayed object. Dragging includes, for example, a touch (or contact) on the displayed object for a predetermined phase, movement of the touch across the touch-sensitive display system 112 , and liftoff of the touch (touch termination). In some embodiments, the event also includes information about one or more associated event handlers 190 .

일부 실시예들에서, 이벤트 정의(187)는 각각의 사용자 인터페이스 객체에 대한 이벤트의 정의를 포함한다. 일부 실시예들에서, 이벤트 비교기(184)는 어느 사용자 인터페이스 객체가 서브이벤트와 연관되는지 결정하도록 히트 테스트(hit test)를 수행한다. 예를 들어, 3개의 사용자 인터페이스 객체들이 터치 감응형 디스플레이 시스템(112) 상에 디스플레이된 애플리케이션 뷰에서, 터치 감응형 디스플레이 시스템(112) 상에서 터치가 검출되는 경우, 이벤트 비교기(184)는 3개의 사용자 인터페이스 객체들 중 어느 것이 터치(서브이벤트)와 연관되어 있는지를 결정하도록 히트 테스트를 수행한다. 각각의 디스플레이된 객체가 각각의 이벤트 핸들러(190)와 연관되는 경우, 이벤트 비교기는 어느 이벤트 핸들러(190)가 활성화되어야 하는지 결정하는 데 히트 테스트의 결과를 이용한다. 예를 들어, 이벤트 비교기(184)는 히트 테스트를 트리거하는 객체 및 서브이벤트와 연관된 이벤트 핸들러를 선택한다.In some embodiments, event definition 187 includes a definition of an event for each user interface object. In some embodiments, event comparator 184 performs a hit test to determine which user interface object is associated with a subevent. For example, in an application view in which three user interface objects are displayed on touch-sensitive display system 112 , if a touch is detected on touch-sensitive display system 112 , event comparator 184 may A hit test is performed to determine which of the interface objects is associated with a touch (subevent). When each displayed object is associated with a respective event handler 190, the event comparator uses the result of the hit test to determine which event handler 190 should be activated. For example, the event comparator 184 selects an event handler associated with the object and subevent that triggers the hit test.

일부 실시예들에서, 각각의 이벤트(187)에 대한 정의는 또한 서브이벤트들의 시퀀스가 이벤트 인식기의 이벤트 유형에 대응하는지 대응하지 않는지 여부가 결정된 후까지 이벤트 정보의 전달을 지연하는 지연된 액션들을 포함한다.In some embodiments, the definition for each event 187 also includes deferred actions of delaying delivery of event information until after it is determined whether the sequence of subevents corresponds to or does not correspond to an event type of the event recognizer. .

각각의 이벤트 인식기(180)가, 일련의 서브이벤트들이 이벤트 정의들(186) 내의 이벤트들 중 어떠한 것과도 매칭되지 않는 것으로 결정하는 경우, 각각의 이벤트 인식기(180)는 이벤트 불가능, 이벤트 실패, 또는 이벤트 종료 상태에 진입하고, 그 후 각각의 이벤트 인식기는 터치 기반 제스처의 후속 서브이벤트들을 무시한다. 이러한 상황에서, 만일 있다면, 히트 뷰에 대해 활성 상태로 유지되는 다른 이벤트 인식기들이 진행 중인 터치 기반 제스처의 서브이벤트들을 계속해서 추적 및 프로세싱한다.If each event recognizer 180 determines that the set of sub-events does not match any of the events in event definitions 186 , each event recognizer 180 determines that the event is impossible, event failed, or An event end state is entered, after which each event recognizer ignores subsequent sub-events of the touch-based gesture. In this situation, other event recognizers that remain active for the hit view, if any, continue to track and process sub-events of the touch-based gesture in progress.

일부 실시예들에서, 각각의 이벤트 인식기(180)는 이벤트 전달 시스템이 어떻게 적극 참여 이벤트 인식기들에 대한 서브이벤트 전달을 수행해야 하는지를 나타내는 구성가능한 속성들, 플래그(flag)들, 및/또는 목록들을 갖는 메타데이터(183)를 포함한다. 일부 실시예들에서, 메타데이터(183)는 이벤트 인식기들이 어떻게 서로 상호작용하는지, 또는 상호작용 가능하게 되는지를 나타내는 구성가능한 속성들, 플래그들, 및/또는 목록들을 포함한다. 일부 실시예들에서, 메타데이터(183)는, 서브이벤트들이 뷰 또는 프로그램 계층구조에서의 다양한 레벨들에 전달되는지 여부를 나타내는 구성가능한 속성들, 플래그들, 및/또는 목록들을 포함한다.In some embodiments, each event recognizer 180 includes configurable attributes, flags, and/or lists that indicate how the event delivery system should perform subevent delivery to actively participating event recognizers. and metadata 183 with In some embodiments, metadata 183 includes configurable attributes, flags, and/or lists that indicate how event recognizers interact with, or become interactive, with each other. In some embodiments, metadata 183 includes configurable properties, flags, and/or lists that indicate whether subevents are delivered to various levels in the view or program hierarchy.

일부 실시예들에서, 각각의 이벤트 인식기(180)는 이벤트의 하나 이상의 특정 서브이벤트들이 인식될 때 이벤트와 연관된 이벤트 핸들러(190)를 활성화한다. 일부 실시예들에서, 각각의 이벤트 인식기(180)는 이벤트와 연관된 이벤트 정보를 이벤트 핸들러(190)에 전달한다. 이벤트 핸들러(190)를 활성화시키는 것은 각각의 히트 뷰에 서브이벤트들을 전송(및 지연 전송)하는 것과는 별개이다. 일부 실시예들에서, 이벤트 인식기(180)는 인식된 이벤트와 연관된 플래그를 보내고, 그 플래그와 연관된 이벤트 핸들러(190)는 그 플래그를 캐치하고 미리정의된 프로세스를 수행한다.In some embodiments, each event recognizer 180 activates an event handler 190 associated with the event when one or more specific subevents of the event are recognized. In some embodiments, each event recognizer 180 passes event information associated with the event to an event handler 190 . Activating the event handler 190 is separate from sending (and delayed sending) subevents to each hit view. In some embodiments, event recognizer 180 sends a flag associated with the recognized event, and event handler 190 associated with the flag catches the flag and performs a predefined process.

일부 실시예들에서, 이벤트 전달 명령어들(188)은 이벤트 핸들러를 활성화하지 않으면서 서브이벤트에 관한 이벤트 정보를 전달하는 서브이벤트 전달 명령어들을 포함한다. 대신에, 서브이벤트 전달 명령어들은 일련의 서브이벤트들과 연관된 이벤트 핸들러들에 또는 적극 참여 뷰들에 이벤트 정보를 전달한다. 일련의 서브이벤트들 또는 적극 참여 뷰들과 연관된 이벤트 핸들러들은 이벤트 정보를 수신하고 미리결정된 프로세스를 수행한다.In some embodiments, event delivery instructions 188 include subevent delivery instructions that deliver event information about a subevent without activating an event handler. Instead, subevent delivery instructions pass event information to event handlers associated with a series of subevents or to actively engaged views. Event handlers associated with a series of subevents or actively engaged views receive event information and perform a predetermined process.

일부 실시예들에서, 데이터 업데이터(176)는 애플리케이션(136-1)에서 이용되는 데이터를 생성 및 업데이트한다. 예를 들어, 데이터 업데이터(176)는 연락처 모듈(137)에서 이용되는 전화번호를 업데이트하거나, 비디오 및 음악 재생기 모듈(152)에서 이용되는 비디오 파일을 저장한다. 일부 실시예들에서, 객체 업데이터(177)는 애플리케이션(136-1)에서 이용되는 객체들을 생성 및 업데이트한다. 예를 들어, 객체 업데이터(177)는 새로운 사용자 인터페이스 객체를 생성하거나, 또는 사용자 인터페이스 객체의 위치를 업데이트한다. GUI 업데이터(178)는 GUI를 업데이트한다. 예를 들어, GUI 업데이터(178)는 터치 감응형 디스플레이 상의 디스플레이를 위해 디스플레이 정보를 준비하고 이를 그래픽 모듈(132)에 전송한다.In some embodiments, data updater 176 creates and updates data used in application 136 - 1 . For example, the data updater 176 updates a phone number used in the contact module 137 or stores a video file used in the video and music player module 152 . In some embodiments, object updater 177 creates and updates objects used in application 136 - 1 . For example, the object updater 177 creates a new user interface object or updates the location of the user interface object. GUI updater 178 updates the GUI. For example, GUI updater 178 prepares display information for display on a touch-sensitive display and sends it to graphics module 132 .

일부 실시예들에서, 이벤트 핸들러(들)(190)는 데이터 업데이터(176), 객체 업데이터(177), 및 GUI 업데이터(178)를 포함하거나 이들에 액세스한다. 일부 실시예들에서, 데이터 업데이터(176), 객체 업데이터(177), 및 GUI 업데이터(178)는 각각의 애플리케이션(136-1) 또는 애플리케이션 뷰(191)의 단일 모듈 내에 포함된다. 다른 실시예들에서, 이들은 둘 이상의 소프트웨어 모듈들 내에 포함된다.In some embodiments, event handler(s) 190 includes or accesses data updater 176 , object updater 177 , and GUI updater 178 . In some embodiments, data updater 176 , object updater 177 , and GUI updater 178 are included within a single module of each application 136 - 1 or application view 191 . In other embodiments, they are included within two or more software modules.

터치 감응형 디스플레이 상의 사용자 터치들의 이벤트 처리에 관하여 전술한 논의는 또한 입력 디바이스들을 갖는 다기능 디바이스들(100)을 동작시키기 위한 다른 형태들의 사용자 입력들에도 적용되지만, 그 모두가 터치 스크린들 상에서 개시되는 것이 아니라는 것을 이해해야 한다. 예를 들어, 단일 또는 다수의 키보드 누르기 또는 유지(hold)와 선택적으로 조화된 마우스 이동 및 마우스 버튼 누르기; 터치패드 상에서의, 탭, 드래그, 스크롤 등과 같은 접촉 이동들; 펜 스타일러스 입력들; 디바이스의 이동; 구두 명령어들; 검출된 눈 이동들; 생체측정 입력들; 및/또는 이들의 임의의 조합은, 인식될 이벤트를 정의하는 서브이벤트들에 대응하는 입력들로서 선택적으로 이용된다.The discussion above regarding event handling of user touches on a touch-sensitive display also applies to other forms of user inputs for operating multifunction devices 100 having input devices, but all of which are initiated on touch screens. You have to understand that it is not. mouse movement and mouse button presses optionally coordinated with, for example, single or multiple keyboard presses or holds; contact movements, such as tap, drag, scroll, etc., on the touchpad; pen stylus inputs; movement of the device; verbal commands; detected eye movements; biometric inputs; and/or any combination thereof is optionally used as inputs corresponding to subevents defining the event to be recognized.

도 1c는 일부 실시예들에 따른 촉각적 출력 모듈을 예시하는 블록도이다. 일부 실시예들에서, I/O 서브시스템(106)(예컨대, 햅틱 피드백 제어기(161)(도 1a) 및/또는 다른 입력 제어기(들)(160)(도 1a))은 도 1c에 도시된 예시적인 컴포넌트들 중 적어도 일부를 포함한다. 일부 실시예들에서, 주변기기 인터페이스(118)는 도 1c에 도시된 예시적인 컴포넌트들 중 적어도 일부를 포함한다.1C is a block diagram illustrating a tactile output module in accordance with some embodiments. In some embodiments, I/O subsystem 106 (eg, haptic feedback controller 161 ( FIG. 1A ) and/or other input controller(s) 160 ( FIG. 1A )) may be configured as shown in FIG. 1C . It includes at least some of the example components. In some embodiments, peripherals interface 118 includes at least some of the example components shown in FIG. 1C .

일부 실시예들에서, 촉각적 출력 모듈은 햅틱 피드백 모듈(133)을 포함한다. 일부 실시예들에서, 햅틱 피드백 모듈(133)은 전자 디바이스 상의 소프트웨어 애플리케이션들로부터 사용자 인터페이스 피드백(예컨대, 전자 디바이스의 사용자 인터페이스들에서의 이벤트들의 발생 또는 동작들의 수행을 나타내는 경보들 및 다른 통지들 및 디스플레이된 사용자 인터페이스들에 대응하는 사용자 입력들에 응답하는 피드백)에 대한 촉각적 출력들을 모으고 조합한다. 햅틱 피드백 모듈(133)은 (촉각적 출력들을 생성하기 위해 사용되는 파형들을 제공하기 위한) 파형 모듈(123), (상이한 채널들에서의 파형들과 같은 파형들을 혼합하기 위한) 믹서(125), (파형들의 동적 범위를 감소시키거나 압축하기 위한) 압축기(127), (파형들에서의 고주파 신호 성분들을 필터링하기 위한) 저역 통과 필터(129), 및 (열 조건들에 따라 파형들을 조정하기 위한) 열 제어기(131) 중 하나 이상을 포함한다. 일부 실시예들에서, 햅틱 피드백 모듈(133)은 햅틱 피드백 제어기(161)(도 1a) 내에 포함된다. 일부 실시예들에서, 햅틱 피드백 모듈(133)의 별개의 유닛(또는 햅틱 피드백 모듈(133)의 별개의 구현예)이 또한 오디오 제어기(예컨대, 오디오 회로부(110), 도 1a) 내에 포함되고 오디오 신호들을 생성하기 위해 사용된다. 일부 실시예들에서, 촉각적 출력들에 대한 파형들을 생성하고 오디오 신호들을 생성하기 위해 단일 햅틱 피드백 모듈(133)이 사용된다.In some embodiments, the tactile output module includes a haptic feedback module 133 . In some embodiments, the haptic feedback module 133 provides user interface feedback from software applications on the electronic device (eg, alerts and other notifications indicating the occurrence of events or performance of actions in user interfaces of the electronic device and Gathers and combines tactile outputs (feedback in response to user inputs corresponding to displayed user interfaces). The haptic feedback module 133 includes a waveform module 123 (for providing waveforms used to generate tactile outputs), a mixer 125 (for mixing waveforms, such as waveforms in different channels), Compressor 127 (for reducing or compressing the dynamic range of waveforms), low-pass filter 129 (for filtering high frequency signal components in the waveforms), and (for adjusting waveforms according to thermal conditions) ) thermal controller 131 . In some embodiments, the haptic feedback module 133 is included within the haptic feedback controller 161 ( FIG. 1A ). In some embodiments, a separate unit of haptic feedback module 133 (or a separate implementation of haptic feedback module 133 ) is also included within the audio controller (eg, audio circuitry 110 , FIG. 1A ) and includes audio used to generate signals. In some embodiments, a single haptic feedback module 133 is used to generate waveforms for tactile outputs and to generate audio signals.

일부 실시예들에서, 햅틱 피드백 모듈(133)은 또한 트리거 모듈(121)(예컨대, 생성되는 촉각적 출력을 결정하고, 대응하는 촉각적 출력을 생성하기 위한 프로세스를 개시하는 소프트웨어 애플리케이션, 운영 체제, 또는 다른 소프트웨어 모듈)을 포함한다. 일부 실시예들에서, 트리거 모듈(121)은 (예컨대, 파형 모듈(123)에 의해) 파형들의 생성을 개시하기 위한 트리거 신호들을 생성한다. 예를 들어, 트리거 모듈(121)은 미리설정된 타이밍 기준들에 기초하여 트리거 신호들을 생성한다. 일부 실시예들에서, 트리거 모듈(121)은 햅틱 피드백 모듈(133)의 외측으로부터 트리거 신호들을 수신하고(예컨대, 일부 실시예들에서, 햅틱 피드백 모듈(133)은 햅틱 피드백 모듈(133)의 외측에 위치되는 하드웨어 입력 프로세싱 모듈(146)로부터 트리거 신호들을 수신함), 트리거 신호들을 사용자 인터페이스 요소(예컨대, 애플리케이션 내의 어포던스 또는 애플리케이션 아이콘) 또는 하드웨어 입력 디바이스(예컨대, 세기 감응형 터치 스크린과 같은 세기 감응형 입력 표면 또는 홈 버튼)의 활성화에 기초하여 (예컨대, 트리거 모듈(121)을 이용하여) 동작들을 트리거하는 소프트웨어 애플리케이션들 또는 햅틱 피드백 모듈(133) 내의 다른 컴포넌트들(예컨대, 파형 모듈(123))로 중계한다. 일부 실시예들에서, 트리거 모듈(121)은 또한 (예컨대, 도 1a 및 도 3의 햅틱 피드백 모듈(133)로부터) 촉각적 피드백 생성 명령어들을 수신한다. 일부 실시예들에서, 트리거 모듈(121)은 (예컨대, 도 1a 및 도 3의 햅틱 피드백 모듈(133)로부터) 햅틱 피드백 모듈(133)(또는 햅틱 피드백 모듈(133) 내의 트리거 모듈(121))이 촉각적 피드백 명령어들을 수신하는 것에 응답하여 트리거 신호들을 생성한다.In some embodiments, haptic feedback module 133 may also include trigger module 121 (eg, a software application, operating system, or other software modules). In some embodiments, trigger module 121 generates trigger signals to initiate generation of waveforms (eg, by waveform module 123 ). For example, the trigger module 121 generates trigger signals based on preset timing criteria. In some embodiments, the trigger module 121 receives trigger signals from outside of the haptic feedback module 133 (eg, in some embodiments, the haptic feedback module 133 is outside of the haptic feedback module 133 ) Receive trigger signals from a hardware input processing module 146 located in ), send trigger signals to a user interface element (eg, affordance in an application or application icon) or a hardware input device (eg, an intensity-sensitive touch screen, such as an intensity-sensitive touch screen). Software applications or other components within haptic feedback module 133 (eg, waveform module 123 ) that trigger actions (eg, using trigger module 121 ) based on activation of an input surface or home button) relayed by In some embodiments, the trigger module 121 also receives tactile feedback generation instructions (eg, from the haptic feedback module 133 of FIGS. 1A and 3 ). In some embodiments, the trigger module 121 (eg, from the haptic feedback module 133 of FIGS. 1A and 3 ) is the haptic feedback module 133 (or the trigger module 121 in the haptic feedback module 133 ). It generates trigger signals in response to receiving these tactile feedback commands.

파형 모듈(123)은 (예컨대, 트리거 모듈(121)로부터) 트리거 신호들을 입력으로서 수신하고, 트리거 신호들을 수신하는 것에 응답하여, 하나 이상의 촉각적 출력들의 생성을 위해 파형들(예컨대, 도 4f 및 도 4g를 참조하여 아래에서 더욱 상세하게 기술되는 파형들과 같은, 파형 모듈(123)에 의해 사용하기 위해 지정된 파형들의 미리정의된 세트로부터 선택되는 파형들)을 제공한다.Waveform module 123 receives trigger signals as input (eg, from trigger module 121 ), and in response to receiving the trigger signals, generates waveforms (eg, FIG. 4F and waveforms selected from a predefined set of waveforms designated for use by waveform module 123 , such as those described in more detail below with reference to FIG. 4G .

믹서(125)는 (예컨대, 파형 모듈(123)로부터) 파형들을 입력으로서 수신하고, 파형들을 함께 혼합한다. 예를 들어, 믹서(125)가 둘 이상의 파형들(예컨대, 제1 채널에서의 제1 파형, 및 제2 채널에서의 제1 파형과 적어도 부분적으로 중첩되는 제2 파형)을 수신할 때, 믹서(125)는 둘 이상의 파형들의 합산에 대응하는 조합된 파형을 출력한다. 일부 실시예들에서, 믹서(125)는 또한 (예컨대, 특정 파형(들)의 축척을 증가시킴으로써 그리고/또는 파형들 중 나머지의 축척을 감소시킴으로써) 특정 파형(들)을 둘 이상의 파형들 중 나머지에 비해 강조하기 위해 둘 이상의 파형들 중 하나 이상의 파형들을 수정한다. 일부 상황들에서, 믹서(125)는 조합된 파형으로부터 제거하기 위해 하나 이상의 파형들을 선택한다(예컨대, 촉각적 출력 생성기(167)에 의해 동시에 출력되도록 요청되었던 3개 초과의 소스들로부터의 파형들이 있을 때 가장 오래된 소스로부터의 파형이 드롭된다).Mixer 125 receives waveforms as input (eg, from waveform module 123 ) and mixes the waveforms together. For example, when mixer 125 receives two or more waveforms (eg, a first waveform in a first channel, and a second waveform that at least partially overlaps with the first waveform in a second channel), the mixer 125 outputs a combined waveform corresponding to the summation of two or more waveforms. In some embodiments, mixer 125 also converts the particular waveform(s) to the remainder of the two or more waveforms (eg, by increasing the scale of the particular waveform(s) and/or decreasing the scale of the other of the waveforms). Modifies one or more of the two or more waveforms for emphasis in comparison. In some situations, mixer 125 selects one or more waveforms to remove from the combined waveform (eg, waveforms from more than three sources that have been requested to be output simultaneously by tactile output generator 167 are When present, the waveform from the oldest source is dropped).

압축기(127)는 파형들(예컨대, 믹서(125)로부터의 조합된 파형)을 입력으로서 수신하고, 파형들을 수정한다. 일부 실시예들에서, 압축기(127)는 (예컨대, 촉각적 출력 생성기들(도 1a의 167 또는 도 3의 357)의 물리적 사양들에 따라) 파형들을 감소시켜서, 그 파형들에 대응하는 촉각적 출력들이 감소되게 한다. 일부 실시예들에서, 압축기(127)는, 예컨대 파형들에 대한 미리정의된 최대 진폭을 강제함으로써, 파형들을 제한한다. 예를 들어, 압축기(127)는, 미리정의된 진폭 임계치를 초과하지 않는 파형들의 일부분들의 진폭들을 유지하면서 미리정의된 진폭 임계치를 초과하는 파형들의 일부분들의 진폭들을 감소시킨다. 일부 실시예들에서, 압축기(127)는 파형들의 동적 범위를 감소시킨다. 일부 실시예들에서, 압축기(127)는 파형들의 동적 범위를 동적으로 감소시켜, 조합된 파형들이 촉각적 출력 생성기(167)의 성능 사양들(예컨대, 힘 및/또는 이동가능 질량체 변위 한계들) 내에 유지되게 한다.Compressor 127 receives waveforms (eg, a combined waveform from mixer 125 ) as input and modifies the waveforms. In some embodiments, compressor 127 reduces waveforms (eg, according to the physical specifications of tactile output generators 167 of FIG. 1A or 357 of FIG. 3 ), such that a tactile corresponding waveform is causes the outputs to be reduced. In some embodiments, compressor 127 limits the waveforms, such as by forcing a predefined maximum amplitude for the waveforms. For example, compressor 127 reduces amplitudes of portions of waveforms that exceed a predefined amplitude threshold while maintaining amplitudes of portions of waveforms that do not exceed a predefined amplitude threshold. In some embodiments, compressor 127 reduces the dynamic range of the waveforms. In some embodiments, the compressor 127 dynamically reduces the dynamic range of the waveforms so that the combined waveforms meet the performance specifications of the tactile output generator 167 (eg, force and/or movable mass displacement limits). to be kept within

저역 통과 필터(129)는 파형들(예컨대, 압축기(127)로부터의 압축된 파형들)을 입력으로서 수신하고, 파형들을 필터링(예컨대, 평활화)한다(예컨대, 파형들에서의 고주파 신호 성분들을 제거 또는 감소시킨다). 예를 들어, 일부 경우에, 압축기(127)는, 압축된 파형들로, 촉각적 출력들이 압축된 파형들에 따라 생성될 때 촉각적 출력 생성기(167)의 성능 사양들을 초과하고/하거나 촉각적 출력들의 생성을 간섭하는 관련없는 신호들(예컨대, 고주파 신호 성분들)을 포함한다. 저역 통과 필터(129)는 파형들에서의 그러한 관련없는 신호들을 감소 또는 제거한다.Low pass filter 129 receives waveforms (eg, compressed waveforms from compressor 127 ) as input, and filters (eg, smoothes) the waveforms (eg, removes high frequency signal components in the waveforms) or decrease). For example, in some cases, compressor 127, with compressed waveforms, exceeds performance specifications of tactile output generator 167 and/or tactile outputs when tactile outputs are generated according to the compressed waveforms. Includes extraneous signals (eg, high frequency signal components) that interfere with the generation of the outputs. Low pass filter 129 reduces or removes such extraneous signals in the waveforms.

열 제어기(131)는 파형들(예컨대, 저역 통과 필터(129)로부터의 필터링된 파형들)을 입력으로서 수신하고, (예컨대, 디바이스(100) 내에서 검출되는 내부 온도들, 예컨대 햅틱 피드백 제어기(161)의 온도, 및/또는 디바이스(100)에 의해 검출되는 외부 온도들에 기초하여) 디바이스(100)의 열 조건들에 따라 파형들을 조정한다. 예를 들어, 일부 경우에, 햅틱 피드백 제어기(161)의 출력은 온도에 따라 변한다(예컨대, 햅틱 피드백 제어기(161)는, 동일한 파형들을 수신하는 것에 응답하여, 햅틱 피드백 제어기(161)가 제1 온도로 있을 때 제1 촉각적 출력을 생성하고, 햅틱 피드백 제어기(161)가 제1 온도와는 별개인 제2 온도로 있을 때 제2 촉각적 출력을 생성한다). 예를 들어, 촉각적 출력들의 크기(또는 진폭)는 온도에 따라 변화할 수 있다. 온도 변화의 영향을 감소시키기 위해, 파형들은 수정된다(예컨대, 파형들의 진폭이 온도에 기초하여 증가 또는 감소된다).Thermal controller 131 receives waveforms (eg, filtered waveforms from low pass filter 129 ) as input, and (eg, internal temperatures detected within device 100 , such as a haptic feedback controller ( Adjust the waveforms according to the thermal conditions of the device 100 (based on the temperature of 161 , and/or external temperatures detected by the device 100 ). For example, in some cases, the output of the haptic feedback controller 161 changes with temperature (eg, in response to receiving the same waveforms, the haptic feedback controller 161 causes the first generate a first tactile output when at a temperature, and the haptic feedback controller 161 generates a second tactile output when at a second temperature separate from the first temperature). For example, the magnitude (or amplitude) of the tactile outputs may change with temperature. To reduce the effect of temperature changes, the waveforms are modified (eg, the amplitude of the waveforms is increased or decreased based on the temperature).

일부 실시예들에서, 햅틱 피드백 모듈(133)(예컨대, 트리거 모듈(121))은 하드웨어 입력 프로세싱 모듈(146)에 커플링된다. 일부 실시예들에서, 도 1a에서의 다른 입력 제어기(들)(160)는 하드웨어 입력 프로세싱 모듈(146)을 포함한다. 일부 실시예들에서, 하드웨어 입력 프로세싱 모듈(146)은 하드웨어 입력 디바이스(145)(예컨대, 도 1a에서의 다른 입력 또는 제어 디바이스들(116), 예컨대 세기 감응형 터치 스크린과 같은 세기 감응형 입력 표면 또는 홈 버튼)로부터 입력들을 수신한다. 일부 실시예들에서, 하드웨어 입력 디바이스(145)는 본 명세서에 기술되는 임의의 입력 디바이스, 예컨대 터치 감응형 디스플레이 시스템(112)(도 1a), 키보드/마우스(350)(도 3), 터치패드(355)(도 3), 다른 입력 또는 제어 디바이스들(116)(도 1a) 중 하나, 또는 세기 감응형 홈 버튼이다. 일부 실시예들에서, 하드웨어 입력 디바이스(145)는 터치 감응형 디스플레이 시스템(112)(도 1a), 키보드/마우스(350)(도 3), 또는 터치패드(355)(도 3)가 아닌, 세기 감응형 홈 버튼으로 이루어진다. 일부 실시예들에서, 하드웨어 입력 디바이스(145)(예컨대, 세기 감응형 홈 버튼 또는 터치 스크린)로부터의 입력들에 응답하여, 하드웨어 입력 프로세싱 모듈(146)은, 미리정의된 입력 기준들을 만족하는 사용자 입력, 예컨대 홈 버튼의 "클릭"(예컨대, "다운 클릭" 또는 "업 클릭")에 대응하는 입력이 검출되었음을 나타내기 위해 하나 이상의 트리거 신호들을 햅틱 피드백 모듈(133)에 제공한다. 일부 실시예들에서, 햅틱 피드백 모듈(133)은, 홈 버튼의 "클릭"에 대응하는 입력에 응답하여 홈 버튼의 "클릭"에 대응하는 파형들을 제공하여, 물리적 홈 버튼을 누르는 햅틱 피드백을 시뮬레이션한다.In some embodiments, the haptic feedback module 133 (eg, the trigger module 121 ) is coupled to the hardware input processing module 146 . In some embodiments, the other input controller(s) 160 in FIG. 1A includes a hardware input processing module 146 . In some embodiments, the hardware input processing module 146 is configured with a hardware input device 145 (eg, other input or control devices 116 in FIG. 1A , such as an intensity-sensitive input surface, such as an intensity-sensitive touch screen). or home button). In some embodiments, hardware input device 145 may be any input device described herein, such as touch-sensitive display system 112 ( FIG. 1A ), keyboard/mouse 350 ( FIG. 3 ), touchpad. 355 ( FIG. 3 ), one of the other input or control devices 116 ( FIG. 1A ), or an intensity-sensitive home button. In some embodiments, the hardware input device 145 is not the touch-sensitive display system 112 ( FIG. 1A ), the keyboard/mouse 350 ( FIG. 3 ), or the touchpad 355 ( FIG. 3 ); It consists of a force-sensitive home button. In some embodiments, in response to inputs from a hardware input device 145 (eg, an intensity-sensitive home button or touch screen), the hardware input processing module 146 configures the user to satisfy predefined input criteria. One or more trigger signals are provided to the haptic feedback module 133 to indicate that an input corresponding to an input, eg, a “click” (eg, a “down click” or an “up click”) of the home button has been detected. In some embodiments, the haptic feedback module 133 provides waveforms corresponding to a “click” of the home button in response to an input corresponding to a “click” of the home button, simulating haptic feedback of pressing the physical home button. do.

일부 실시예들에서, 촉각적 출력 모듈은 햅틱 피드백 제어기(161)(예컨대, 도 1a에서의 햅틱 피드백 제어기(161))를 포함하는데, 이는 촉각적 출력들의 생성을 제어한다. 일부 실시예들에서, 햅틱 피드백 제어기(161)는 복수의 촉각적 출력 생성기들에 커플링되고, 복수의 촉각적 출력 생성기들 중 하나 이상의 촉각적 출력 생성기들을 선택하여, 촉각적 출력들을 생성하기 위한 파형들을 그 선택된 하나 이상의 촉각적 출력 생성기들로 전송한다. 일부 실시예들에서, 햅틱 피드백 제어기(161)는, 하드웨어 입력 디바이스(145)의 활성화에 대응하는 촉각적 출력 요청들, 및 소프트웨어 이벤트들에 대응하는 촉각적 출력 요청들(예컨대, 햅틱 피드백 모듈(133)로부터의 촉각적 출력 요청들)을 조정하고, (예컨대, 하드웨어 입력 디바이스(145)의 활성화에 대응하는 촉각적 출력들을 소프트웨어 이벤트들에 대응하는 촉각적 출력들보다 우선순위화하기 위해서와 같이, 특정 파형(들)의 축척을 증가시킴으로써 그리고/또는 파형들 중 나머지의 축척을 감소시킴으로써) 특정 파형(들)을 둘 이상의 파형들 중 나머지에 비해 강조하기 위해 둘 이상의 파형들 중 하나 이상의 파형들을 수정한다.In some embodiments, the tactile output module includes a haptic feedback controller 161 (eg, haptic feedback controller 161 in FIG. 1A ), which controls the generation of tactile outputs. In some embodiments, haptic feedback controller 161 is coupled to a plurality of tactile output generators and is configured to select one or more of the plurality of tactile output generators to generate tactile outputs. Send the waveforms to the selected one or more tactile output generators. In some embodiments, haptic feedback controller 161 provides tactile output requests corresponding to activation of hardware input device 145 and tactile output requests corresponding to software events (eg, a haptic feedback module (eg, haptic feedback module) 133), and (eg, to prioritize tactile outputs corresponding to activation of hardware input device 145 over tactile outputs corresponding to software events) , by increasing the scale of the particular waveform(s) and/or decreasing the scale of the rest of the waveforms) make corrections

일부 실시예들에서, 도 1c에 도시된 바와 같이, 햅틱 피드백 제어기(161)의 출력이 디바이스(100)의 오디오 회로부(예컨대, 도 1a의 오디오 회로부(110))에 커플링되고, 오디오 신호들을 디바이스(100)의 오디오 회로부에 제공한다. 일부 실시예들에서, 햅틱 피드백 제어기(161)는 촉각적 출력들을 생성하기 위해 사용되는 파형들 및 촉각적 출력들의 생성과 함께 오디오 출력들을 제공하기 위해 사용되는 오디오 신호들 양쪽 모두를 제공한다. 일부 실시예들에서, 햅틱 피드백 제어기(161)는 오디오 신호들 및/또는 (촉각적 출력들을 생성하기 위해 사용되는) 파형들을 수정하여, (예컨대, 오디오 신호들 및/또는 파형들을 지연시킴으로써) 오디오 출력들 및 촉각적 출력들이 동기화되게 한다. 일부 실시예들에서, 햅틱 피드백 제어기(161)는 디지털 파형들을 아날로그 신호들로 변환하기 위해 사용되는 디지털-아날로그 변환기를 포함하며, 이 아날로그 신호들은 증폭기(163) 및/또는 촉각적 출력 생성기(167)에 의해 수신된다.In some embodiments, as shown in FIG. 1C , the output of the haptic feedback controller 161 is coupled to audio circuitry of the device 100 (eg, the audio circuitry 110 of FIG. 1A ) and generates audio signals. It is provided in the audio circuit unit of the device 100 . In some embodiments, the haptic feedback controller 161 provides both the waveforms used to generate the tactile outputs and the audio signals used to provide the audio outputs in conjunction with the generation of the tactile outputs. In some embodiments, haptic feedback controller 161 modifies audio signals and/or waveforms (used to generate tactile outputs), thereby delaying audio signals and/or waveforms (eg, by delaying audio signals and/or waveforms). Let the outputs and tactile outputs be synchronized. In some embodiments, haptic feedback controller 161 includes a digital-to-analog converter used to convert digital waveforms to analog signals, which analog signals include amplifier 163 and/or tactile output generator 167 ) is received by

일부 실시예들에서, 촉각적 출력 모듈은 증폭기(163)를 포함한다. 일부 실시예들에서, 증폭기(163)는 (예컨대, 햅틱 피드백 제어기(161)로부터) 파형들을 수신하고, 그 파형들을 증폭하고 이어서 증폭된 파형들을 촉각적 출력 생성기(167)(예컨대, 촉각적 출력 생성기들(도 1a의 167 또는 도 3의 357) 중 임의의 것)로 전송한다. 예를 들어, 증폭기(163)는 수신된 파형들을 촉각적 출력 생성기(167)의 물리적 사양들에 따르는 신호 레벨들로(예컨대, 촉각적 출력 생성기(167)로 전송된 신호들이, 햅틱 피드백 제어기(161)로부터 수신된 파형들에 대응하는 촉각적 출력들을 생성하도록 촉각적 출력들을 생성하기 위한 촉각적 출력 생성기(167)에 의해 요구되는 전압 및/또는 전류로) 증폭하고, 증폭된 파형들을 촉각적 출력 생성기(167)로 전송한다. 이에 응답하여, 촉각적 출력 생성기(167)는 (예컨대, 이동가능 질량체의 중립 위치에 대한 하나 이상의 치수들에서 앞뒤로 이동가능 질량체를 시프트시킴으로써) 촉각적 출력들을 생성한다.In some embodiments, the haptic output module includes an amplifier 163 . In some embodiments, amplifier 163 receives waveforms (eg, from haptic feedback controller 161 ), amplifies the waveforms, and then converts the amplified waveforms to tactile output generator 167 (eg, tactile output). to the generators (any of 167 in FIG. 1A or 357 in FIG. 3). For example, the amplifier 163 converts the received waveforms to signal levels conforming to the physical specifications of the tactile output generator 167 (eg, the signals transmitted to the tactile output generator 167 , the haptic feedback controller ( amplify (with a voltage and/or current required by tactile output generator 167 to generate tactile outputs) to generate tactile outputs corresponding to the waveforms received from 161; to the output generator 167 . In response, tactile output generator 167 generates tactile outputs (eg, by shifting the movable mass back and forth in one or more dimensions relative to the neutral position of the movable mass).

일부 실시예들에서, 촉각적 출력 모듈은 센서(169)를 포함하며, 이 센서는 촉각적 출력 생성기(167)에 커플링된다. 센서(169)는 촉각적 출력 생성기(167) 또는 촉각적 출력 생성기(167)의 하나 이상의 컴포넌트들(예컨대, 촉각적 출력들을 생성하는 데 사용되는 멤브레인(membrane)과 같은 하나 이상의 이동 부품들)의 상태들 또는 상태 변화들(예컨대, 기계적 위치, 물리적 변위, 및/또는 이동)을 검출한다. 일부 실시예들에서, 센서(169)는 자기장 센서(예컨대, 홀 효과(Hall effect) 센서) 또는 다른 변위 및/또는 이동 센서이다. 일부 실시예들에서, 센서(169)는 정보(예컨대, 촉각적 출력 생성기(167) 내의 하나 이상의 부품들의 위치, 변위, 및/또는 이동)를 햅틱 피드백 제어기(161)에 제공하고, 촉각적 출력 생성기(167)의 상태에 관한 센서(169)에 의해 제공된 정보에 따라, 햅틱 피드백 제어기(161)는 햅틱 피드백 제어기(161)로부터 출력되는 파형들(예컨대, 선택적으로 증폭기(163)를 통해, 촉각적 출력 생성기(167)로 전송되는 파형들)을 조정한다.In some embodiments, the tactile output module includes a sensor 169 , which is coupled to a tactile output generator 167 . The sensor 169 is the tactile output generator 167 or one or more components of the tactile output generator 167 (eg, one or more moving parts, such as a membrane used to generate the tactile outputs). Detect states or state changes (eg, mechanical position, physical displacement, and/or movement). In some embodiments, sensor 169 is a magnetic field sensor (eg, a Hall effect sensor) or other displacement and/or movement sensor. In some embodiments, sensor 169 provides information (eg, position, displacement, and/or movement of one or more components within tactile output generator 167 ) to haptic feedback controller 161 , and a tactile output In accordance with the information provided by the sensor 169 regarding the state of the generator 167 , the haptic feedback controller 161 generates waveforms output from the haptic feedback controller 161 (eg, optionally via the amplifier 163 , the tactile sense). waveforms sent to the redundancy output generator 167).

도 2는 일부 실시예들에 따른, 터치 스크린(예를 들어, 터치 감응형 디스플레이 시스템(112), 도 1a)을 갖는 휴대용 다기능 디바이스(100)를 예시한다. 터치 스크린은, 선택적으로, 사용자 인터페이스(UI)(200) 내에서 하나 이상의 그래픽들을 디스플레이한다. 이러한 실시예들은 물론 하기에 기술되는 다른 실시예들에서, 사용자는, 예를 들어, 하나 이상의 손가락들(202)(도면에서 축척대로 도시되지 않음) 또는 하나 이상의 스타일러스들(203)(도면에서 축척대로 도시되지 않음)을 이용하여 그래픽 상에 제스처를 행함으로써 그래픽들 중 하나 이상을 선택하는 것이 가능하게 된다. 일부 실시예들에서, 하나 이상의 그래픽의 선택은 사용자가 하나 이상의 그래픽과의 접촉을 중단할 때 발생한다. 일부 실시예들에서, 제스처는 선택적으로 디바이스(100)와 접촉한 손가락의 하나 이상의 탭들, (좌측에서 우측으로의, 우측에서 좌측으로의, 상측으로의 그리고/또는 하측으로의) 하나 이상의 스와이프들, 및/또는 (우측에서 좌측으로의, 좌측에서 우측으로의, 상측으로의 그리고/또는 하측으로의) 롤링을 포함한다. 일부 구현예들 또는 상황들에서, 그래픽과 부주의하여 접촉되면 그 그래픽은 선택되지 않는다. 예를 들면, 선택에 대응하는 제스처가 탭일 때, 애플리케이션 아이콘 위를 스윕(sweep)하는 스와이프 제스처는 선택적으로, 대응하는 애플리케이션을 선택하지 않는다.2 illustrates portable multifunction device 100 having a touch screen (eg, touch-sensitive display system 112 , FIG. 1A ), in accordance with some embodiments. The touch screen, optionally, displays one or more graphics within user interface (UI) 200 . In these embodiments, as well as other embodiments described below, the user may, for example, use one or more fingers 202 (not to scale in the figures) or one or more styluses 203 (in the figures to scale). It becomes possible to select one or more of the graphics by making a gesture on the graphic using (not shown). In some embodiments, selection of the one or more graphics occurs when the user ceases to contact the one or more graphics. In some embodiments, the gesture may optionally include one or more taps of a finger in contact with device 100 , one or more swipes (left to right, right to left, up and/or down). , and/or rolling (right to left, left to right, up and/or down). In some implementations or situations, if inadvertently contacted with a graphic, the graphic is not selected. For example, when the gesture corresponding to the selection is a tap, the swipe gesture to sweep over the application icon optionally does not select the corresponding application.

디바이스(100)는 또한 선택적으로 "홈" 또는 메뉴 버튼(204)과 같은 하나 이상의 물리적 버튼을 포함한다. 전술된 바와 같이, 메뉴 버튼(204)은 선택적으로, 디바이스(100) 상에서 선택적으로 실행되는 애플리케이션들의 세트 내의 임의의 애플리케이션(136)으로 내비게이팅하는 데 사용된다. 대안적으로, 일부 실시예들에서, 메뉴 버튼은 터치 스크린 디스플레이 상에 디스플레이된 GUI에서 소프트 키로서 구현된다.Device 100 also optionally includes one or more physical buttons, such as a “home” or menu button 204 . As described above, the menu button 204 is optionally used to navigate to any application 136 in the set of applications that are selectively running on the device 100 . Alternatively, in some embodiments, the menu button is implemented as a soft key in a GUI displayed on a touch screen display.

일부 실시예들에서, 디바이스(100)는 터치 스크린 디스플레이, 메뉴 버튼(204)(때때로, 홈 버튼(204)으로 불림), 디바이스의 전원을 켜거나/끄고 디바이스를 잠그기 위한 푸시 버튼(206), 음량 조정 버튼(들)(208), 가입자 식별 모듈(SIM) 카드 슬롯(210), 헤드셋 잭(212), 및 도킹/충전 외부 포트(124)를 포함한다. 푸시 버튼(206)은, 선택적으로, 버튼을 누르고 버튼을 미리정의된 시간 간격 동안 누른 상태로 유지함으로써 디바이스의 전원을 온/오프시키고/시키거나; 버튼을 누르고 미리정의된 시간 간격이 경과하기 전에 버튼을 누름해제함으로써 디바이스를 잠그고/잠그거나; 디바이스를 잠금해제하거나 잠금해제 프로세스를 개시하는 데 사용된다. 일부 실시예들에서, 디바이스(100)는 또한 마이크로폰(113)을 통해 일부 기능들의 활성화 또는 비활성화를 위한 구두 입력을 수용한다. 디바이스(100)는 또한, 선택적으로, 터치 감응형 디스플레이 시스템(112) 상에서의 접촉들의 세기들을 검출하기 위한 하나 이상의 접촉 세기 센서들(165) 및/또는 디바이스(100)의 사용자를 위해 촉각적 출력들을 생성하기 위한 하나 이상의 촉각적 출력 생성기들(167)을 포함한다.In some embodiments, device 100 includes a touch screen display, a menu button 204 (sometimes called home button 204), a push button 206 for powering on/off the device and locking the device; volume control button(s) 208 , a subscriber identity module (SIM) card slot 210 , a headset jack 212 , and a docking/charging external port 124 . Push button 206 optionally powers on/off the device by pressing the button and holding the button depressed for a predefined time interval; lock the device by pressing the button and releasing the button before a predefined time interval elapses; Used to unlock a device or initiate an unlock process. In some embodiments, device 100 also accepts verbal input for activation or deactivation of some functions via microphone 113 . Device 100 may also optionally include one or more contact intensity sensors 165 for detecting intensities of contacts on touch-sensitive display system 112 and/or a tactile output for a user of device 100 . one or more tactile output generators 167 for generating

도 3은 일부 실시예들에 따른, 디스플레이 및 터치 감응형 표면을 갖는 예시적인 다기능 디바이스의 블록도이다. 디바이스(300)가 휴대용일 필요는 없다. 일부 실시예들에서, 디바이스(300)는, 랩톱 컴퓨터, 데스크톱 컴퓨터, 태블릿 컴퓨터, 멀티미디어 플레이어 디바이스, 내비게이션 디바이스, (어린이 학습 장난감과 같은) 교육용 디바이스, 게이밍 시스템, 또는 제어 디바이스(예컨대, 가정용 또는 산업용 제어기)이다. 디바이스(300)는 전형적으로 하나 이상의 프로세싱 유닛(CPU)들(310), 하나 이상의 네트워크 또는 다른 통신 인터페이스들(360), 메모리(370), 및 이들 컴포넌트를 상호접속하기 위한 하나 이상의 통신 버스들(320)을 포함한다. 통신 버스들(320)은 선택적으로 시스템 컴포넌트들을 상호접속하고 이들 사이의 통신을 제어하는 회로부(때때로 칩셋이라고 지칭됨)를 포함한다. 디바이스(300)는 전형적으로 터치 스크린 디스플레이인 디스플레이(340)를 포함하는 입/출력(I/O) 인터페이스(330)를 포함한다. I/O 인터페이스(330)는 또한, 선택적으로, 키보드 및/또는 마우스(또는 다른 포인팅 디바이스)(350) 및 터치패드(355), 디바이스(300) 상에 촉각적 출력들을 생성하기 위한 촉각적 출력 생성기(357)(예컨대, 도 1a를 참조하여 전술된 촉각적 출력 생성기(들)(167)와 유사함), 및 센서들(359)(예컨대, 광 센서, 가속도 센서, 근접 센서, 터치 감응형 센서, 및/또는 도 1a를 참조하여 전술된 접촉 세기 센서(들)(165)와 유사한 접촉 세기 센서)을 포함한다. 메모리(370)는 DRAM, SRAM, DDR RAM 또는 다른 랜덤 액세스 솔리드 스테이트 메모리 디바이스들과 같은 고속 랜덤 액세스 메모리를 포함하며; 선택적으로 하나 이상의 자기 디스크 저장 디바이스, 광 디스크 저장 디바이스, 플래시 메모리 디바이스, 또는 다른 비휘발성 솔리드 스테이트 저장 디바이스와 같은 비휘발성 메모리를 포함한다. 메모리(370)는 선택적으로 CPU(들)(310)로부터 원격으로 위치된 하나 이상의 저장 디바이스들을 포함한다. 일부 실시예들에서, 메모리(370)는 휴대용 다기능 디바이스(100)(도 1a)의 메모리(102)에 저장된 프로그램들, 모듈들, 및 데이터 구조들과 유사한 프로그램들, 모듈들, 및 데이터 구조들, 또는 이들의 서브세트를 저장한다. 또한, 메모리(370)는, 선택적으로, 휴대용 다기능 디바이스(100)의 메모리(102) 내에 존재하지 않는 추가의 프로그램들, 모듈들 및 데이터 구조들을 저장한다. 예를 들어, 디바이스(300)의 메모리(370)는, 선택적으로, 드로잉 모듈(380), 프레젠테이션 모듈(382), 워드 프로세싱 모듈(384), 웹사이트 제작 모듈(386), 디스크 저작 모듈(388), 및/또는 스프레드시트 모듈(390)을 저장하는 반면, 휴대용 다기능 디바이스(100)(도 1a)의 메모리(102)는, 선택적으로, 이러한 모듈들을 저장하지 않는다.3 is a block diagram of an exemplary multifunction device having a display and a touch-sensitive surface, in accordance with some embodiments. Device 300 need not be portable. In some embodiments, device 300 is a laptop computer, desktop computer, tablet computer, multimedia player device, navigation device, educational device (such as a children's learning toy), gaming system, or control device (eg, home or industrial). controller). Device 300 typically includes one or more processing units (CPUs) 310 , one or more network or other communication interfaces 360 , memory 370 , and one or more communication buses to interconnect these components ( 320). Communication buses 320 optionally include circuitry (sometimes referred to as a chipset) that interconnects system components and controls communication between them. Device 300 includes an input/output (I/O) interface 330 that includes a display 340 that is typically a touch screen display. I/O interface 330 may also, optionally, a keyboard and/or mouse (or other pointing device) 350 and touchpad 355 , tactile output for generating tactile outputs on device 300 . Generator 357 (eg, similar to tactile output generator(s) 167 described above with reference to FIG. 1A ), and sensors 359 (eg, light sensor, acceleration sensor, proximity sensor, touch sensitive) sensor, and/or a contact intensity sensor similar to the contact intensity sensor(s) 165 described above with reference to FIG. 1A . memory 370 includes high-speed random access memory, such as DRAM, SRAM, DDR RAM, or other random access solid state memory devices; optionally including non-volatile memory such as one or more magnetic disk storage devices, optical disk storage devices, flash memory devices, or other non-volatile solid state storage devices. Memory 370 optionally includes one or more storage devices located remotely from CPU(s) 310 . In some embodiments, memory 370 includes programs, modules, and data structures similar to programs, modules, and data structures stored in memory 102 of portable multifunction device 100 ( FIG. 1A ). , or a subset thereof. In addition, memory 370 optionally stores additional programs, modules, and data structures not present in memory 102 of portable multifunction device 100 . For example, memory 370 of device 300 may optionally include drawing module 380 , presentation module 382 , word processing module 384 , website creation module 386 , and disk authoring module 388 . ), and/or spreadsheet module 390 , while memory 102 of portable multifunction device 100 ( FIG. 1A ), optionally, does not store these modules.

도 3에서의 앞서 식별된 요소들 각각은, 선택적으로, 전술된 메모리 디바이스들 중 하나 이상에 저장된다. 앞서 식별된 모듈들 각각은 상술한 기능을 수행하기 위한 명령어들의 세트에 대응한다. 앞서 식별된 모듈들 또는 프로그램들(즉, 명령어들의 세트들)은 별개의 소프트웨어 프로그램들, 절차들 또는 모듈들로서 구현될 필요가 없으며, 따라서 다양한 실시예들에서 이들 모듈의 다양한 서브세트들이 선택적으로 조합되거나 그렇지 않으면 재배열된다. 일부 실시예들에서, 메모리(370)는 선택적으로, 앞서 식별된 모듈들 및 데이터 구조들의 서브세트를 저장한다. 또한, 메모리(370)는, 선택적으로, 전술되지 않은 추가의 모듈들 및 데이터 구조들을 저장한다.Each of the previously identified elements in FIG. 3 is optionally stored in one or more of the aforementioned memory devices. Each of the modules identified above corresponds to a set of instructions for performing the functions described above. The modules or programs (ie, sets of instructions) identified above need not be implemented as separate software programs, procedures or modules, and thus various subsets of these modules may be selectively combined in various embodiments in various embodiments. or otherwise rearranged. In some embodiments, memory 370 optionally stores a subset of the modules and data structures identified above. Also, memory 370 optionally stores additional modules and data structures not described above.

이제 휴대용 다기능 디바이스(100) 상에서 선택적으로 구현되는 사용자 인터페이스들("UI")의 실시예들에 주목한다.Attention is now directed to embodiments of user interfaces (“UIs”) that are optionally implemented on portable multifunction device 100 .

도 4a는 일부 실시예들에 따른, 휴대용 다기능 디바이스(100) 상의 애플리케이션들의 메뉴에 대한 예시적인 사용자 인터페이스(400)를 예시한다. 유사한 사용자 인터페이스들이 선택적으로 디바이스(300) 상에 구현된다. 일부 실시예들에서, 사용자 인터페이스(400)는 하기의 요소들, 또는 그들의 서브세트나 수퍼세트를 포함한다:4A illustrates an example user interface 400 for a menu of applications on portable multifunction device 100 in accordance with some embodiments. Similar user interfaces are optionally implemented on device 300 . In some embodiments, user interface 400 includes the following elements, or a subset or superset thereof:

Figure pat00018
셀룰러 및 Wi-Fi 신호들과 같은 무선 통신(들)에 대한 신호 강도 표시자(들);
Figure pat00018
signal strength indicator(s) for wireless communication(s), such as cellular and Wi-Fi signals;

Figure pat00019
시간;
Figure pat00019
time;

Figure pat00020
블루투스 표시자;
Figure pat00020
bluetooth indicator;

Figure pat00021
배터리 상태 표시자;
Figure pat00021
battery status indicator;

Figure pat00022
다음과 같은, 빈번하게 사용되는 애플리케이션들에 대한 아이콘들을 갖는 트레이(408):
Figure pat00022
Tray 408 with icons for frequently used applications, such as:

o 부재 중 전화들 또는 음성메일 메시지들의 개수의 표시자(414)를 선택적으로 포함하는 "전화"라고 라벨링된 전화 모듈(138)에 대한 아이콘(416); o an icon 416 for the phone module 138 labeled “Call” optionally including an indicator 414 of a number of missed calls or voicemail messages;

o 읽지 않은 이메일들의 개수의 표시자(410)를 선택적으로 포함하는 "메일"이라고 라벨링된 이메일 클라이언트 모듈(140)에 대한 아이콘(418); o an icon 418 for the email client module 140 labeled "Mail" optionally including an indicator 410 of the number of unread emails;

o "브라우저"라고 라벨링된 브라우저 모듈(147)에 대한 아이콘(420);및 o icon 420 for browser module 147 labeled “Browser”; and

o "음악"이라고 라벨링된 비디오 및 음악 재생기 모듈(152)에 대한 아이콘(422);및 o icon 422 for video and music player module 152 labeled "Music"; and

Figure pat00023
다음과 같은, 다른 애플리케이션들에 대한 아이콘들:
Figure pat00023
Icons for different applications, such as:

o "메시지"라고 라벨링된 IM 모듈(141)에 대한 아이콘(424); o icon 424 for IM module 141 labeled "Message";

o "캘린더"라고 라벨링된 캘린더 모듈(148)에 대한 아이콘(426); o icon 426 for calendar module 148 labeled “Calendar”;

o "사진"이라고 라벨링된 이미지 관리 모듈(144)에 대한 아이콘(428); o icon 428 for image management module 144 labeled “Photos”;

o "카메라"라고 라벨링된 카메라 모듈(143)에 대한 아이콘(430); o icon 430 for camera module 143 labeled “Camera”;

o "온라인 비디오"라고 라벨링된 온라인 비디오 모듈(155)에 대한 아이콘(432); o icon 432 for online video module 155 labeled “Online Video”;

o "주식"이라고 라벨링된 주식 위젯(149-2)에 대한 아이콘(434); o icon 434 for stock widget 149-2 labeled "Stocks";

o "지도"라고 라벨링된 지도 모듈(154)에 대한 아이콘(436); o icon 436 for map module 154 labeled “Map”;

o "날씨"라고 라벨링된 날씨 위젯(149-1)에 대한 아이콘(438); o icon 438 for weather widget 149-1 labeled “weather”;

o "시계"라고 라벨링된 알람 시계 위젯(149-4)에 대한 아이콘(440); o icon 440 for alarm clock widget 149-4 labeled "Clock";

o "운동 지원"이라고 라벨링된 운동 지원 모듈(142)에 대한 아이콘(442); o icon 442 for workout support module 142 labeled “exercise support”;

o "메모"라고 라벨링된 메모 모듈(153)에 대한 아이콘(444);및 o icon 444 for notes module 153 labeled “Notes”; and

o 디바이스(100) 및 그의 다양한 애플리케이션들(136)에 대한 설정에의 액세스를 제공하는 설정 애플리케이션 또는 모듈에 대한 아이콘(446). o Icon 446 for a settings application or module that provides access to settings for device 100 and its various applications 136 .

도 4a에 예시된 아이콘 라벨들은 단지 예시일 뿐이라는 것에 주목해야 한다. 예를 들어, 다른 라벨들이 선택적으로 다양한 애플리케이션 아이콘들에 대해 사용된다. 일부 실시예들에서, 각각의 애플리케이션 아이콘에 대한 라벨은 각각의 애플리케이션 아이콘에 대응하는 애플리케이션의 이름을 포함한다. 일부 실시예들에서, 특정 애플리케이션 아이콘에 대한 라벨은 특정 애플리케이션 아이콘에 대응하는 애플리케이션의 이름과는 별개이다.It should be noted that the icon labels illustrated in FIG. 4A are merely examples. For example, different labels are optionally used for various application icons. In some embodiments, the label for each application icon includes the name of the application corresponding to each application icon. In some embodiments, the label for a particular application icon is separate from the name of the application corresponding to the particular application icon.

도 4b는 디스플레이(450)와는 별개인 터치 감응형 표면(451)(예컨대, 태블릿 또는 터치패드(355), 도 3)을 갖는 디바이스(예컨대, 디바이스(300), 도 3) 상의 예시적인 사용자 인터페이스를 예시한다. 후속하는 예들 중 많은 것들이 (터치 감응형 표면과 디스플레이가 조합된) 터치 스크린 디스플레이(112) 상의 입력들을 참조하여 제공될 것이지만, 일부 실시예들에서, 디바이스는 도 4b에 도시된 바와 같이 디스플레이와 별개인 터치 감응형 표면 상에서 입력들을 검출한다. 일부 실시예들에서, 터치 감응형 표면(예컨대, 도 4b의 451)은 디스플레이(예컨대, 450) 상의 주축(예컨대, 도 4b의 453)에 대응하는 주축(예컨대, 도 4b의 452)을 갖는다. 이들 실시예들에 따르면, 디바이스는 디스플레이 상의 각자의 위치들에 대응하는 위치들(예를 들어, 도 4b에서, 460은 468에 대응하고, 462는 470에 대응함)에서 터치 감응형 표면(451)과의 접촉들(예를 들어, 도 4b의 460, 462)을 검출한다. 이러한 방식으로, 터치 감응형 표면(예컨대, 도 4b의 451) 상에서 디바이스에 의해 검출된 사용자 입력들(예컨대, 접촉들(460, 462) 및 그 이동들)은 터치 감응형 표면이 디스플레이와는 별개일 때 디바이스에 의해 다기능 디바이스의 디스플레이(예컨대, 도 4b의 450) 상의 사용자 인터페이스를 조작하는 데 사용된다. 유사한 방법들이, 선택적으로, 본 명세서에 기술된 다른 사용자 인터페이스들에 이용된다는 것이 이해되어야 한다.4B illustrates an exemplary user interface on a device (eg, device 300 , FIG. 3 ) having a touch-sensitive surface 451 (eg, tablet or touchpad 355 , FIG. 3 ) separate from display 450 . to exemplify Although many of the examples that follow will be provided with reference to inputs on a touch screen display 112 (a touch-sensitive surface and display combined), in some embodiments, the device is separate from the display as shown in FIG. 4B . Detect inputs on a personal touch-sensitive surface. In some embodiments, the touch-sensitive surface (eg, 451 in FIG. 4B ) has a major axis (eg, 452 in FIG. 4B ) that corresponds to a major axis (eg, 453 in FIG. 4B ) on the display (eg, 450 ). According to these embodiments, the device is located on the touch-sensitive surface 451 at locations corresponding to respective locations on the display (eg, in FIG. 4B , 460 corresponds to 468 and 462 corresponds to 470). Detect contacts (eg, 460 and 462 in FIG. 4B ). In this way, user inputs (eg, contacts 460 , 462 and their movements) detected by the device on the touch-sensitive surface (eg, 451 in FIG. 4B ) can be detected when the touch-sensitive surface is separate from the display. used to manipulate a user interface on the display (eg, 450 in FIG. 4B ) of the multifunction device by the device when . It should be understood that similar methods are, optionally, used with other user interfaces described herein.

추가적으로, 하기의 예들이 손가락 입력들(예컨대, 손가락 접촉들, 손가락 탭 제스처들, 손가락 스와이프 제스처들 등)을 주로 참조하여 주어지는 반면, 일부 실시예들에서, 손가락 입력들 중 하나 이상은 다른 입력 디바이스로부터의 입력(예컨대, 마우스 기반 입력 또는 스타일러스 입력)으로 대체된다는 것이 이해되어야 한다. 예컨대, 스와이프 제스처는, 선택적으로, 마우스 클릭(예컨대, 접촉 대신) 및 뒤이은 스와이프의 경로를 따른 커서의 이동(예컨대, 접촉의 이동 대신)으로 대체된다. 다른 예로서, (예컨대, 접촉의 검출에 이어 접촉을 검출하는 것을 중지하는 것 대신에) 커서가 탭 제스처의 위치 위에 위치되어 있는 동안에 탭 제스처가 선택적으로 마우스 클릭으로 대체된다. 유사하게, 다수의 사용자 입력이 동시에 검출되는 경우, 다수의 컴퓨터 마우스가 선택적으로 동시에 사용되거나, 또는 마우스와 손가락 접촉들이 선택적으로 동시에 사용되는 것으로 이해하여야 한다.Additionally, while the following examples are given primarily with reference to finger inputs (eg, finger contacts, finger tap gestures, finger swipe gestures, etc.), in some embodiments, one or more of the finger inputs are another input. It should be understood that input from the device is replaced (eg, mouse-based input or stylus input). For example, a swipe gesture is optionally replaced with a mouse click (eg, instead of a contact) and subsequent movement of the cursor along the path of the swipe (eg, instead of movement of the contact). As another example, the tap gesture is optionally replaced with a mouse click while the cursor is positioned over the location of the tap gesture (eg, instead of ceasing to detect the contact following detection of the contact). Similarly, when multiple user inputs are detected simultaneously, it should be understood that multiple computer mice are selectively used simultaneously, or mouse and finger contacts are selectively used concurrently.

본 명세서에 사용되는 바와 같이, "포커스 선택자(focus selector)"라는 용어는 사용자와 상호작용하고 있는 사용자 인터페이스의 현재 부분을 나타내는 입력 요소를 지칭한다. 커서 또는 다른 위치 마커(location marker)를 포함하는 일부 구현예들에서, 커서가 특정 사용자 인터페이스 요소(예컨대, 버튼, 창, 슬라이더 또는 다른 사용자 인터페이스 요소) 위에 있는 동안 터치 감응형 표면(예컨대, 도 3의 터치패드(355) 또는 도 4b의 터치 감응형 표면(451)) 상에서 입력(예컨대, 누르기 입력)이 검출될 때, 특정 사용자 인터페이스 요소가 검출된 입력에 따라 조정되도록, 커서는 "포커스 선택자"로서 기능한다. 터치 스크린 디스플레이 상의 사용자 인터페이스 요소들과의 직접적인 상호작용을 인에이블하는 터치 스크린 디스플레이(예컨대, 도 1a의 터치 감응형 디스플레이 시스템(112) 또는 도 4a의 터치 스크린)를 포함하는 일부 구현예들에서, 입력(예컨대, 접촉에 의한 누르기 입력)이 특정 사용자 인터페이스 요소(예컨대, 버튼, 창, 슬라이더 또는 다른 사용자 인터페이스 요소)의 위치에 있는 터치 스크린 디스플레이 상에서 검출될 때, 특정 사용자 인터페이스 요소가 검출된 입력에 따라 조정되도록, 터치 스크린 상에서 검출된 접촉이 "포커스 선택자"로서 기능한다. 일부 구현예들에서, (예를 들어 포커스를 하나의 버튼으로부터 다른 버튼으로 움직이도록 탭 키 또는 화살표 키를 사용함으로써) 터치 스크린 디스플레이 상의 대응하는 커서의 이동 또는 접촉의 이동 없이 포커스가 사용자 인터페이스의 하나의 영역으로부터 사용자 인터페이스의 다른 영역으로 이동되며; 이러한 구현예들에서, 포커스 선택자는 사용자 인터페이스의 상이한 영역들 사이에서의 포커스의 이동에 따라 움직인다. 포커스 선택자가 갖는 특정 형태와 무관하게, 포커스 선택자는 일반적으로 (예컨대, 사용자가 상호작용하고자 하는 사용자 인터페이스의 요소를 디바이스에 나타내는 것에 의해) 사용자 인터페이스와의 사용자의 의도된 상호작용을 전달하기 위해 사용자에 의해 제어되는 사용자 인터페이스 요소(또는 터치 스크린 디스플레이 상에서의 접촉)이다. 예를 들어, 터치 감응형 표면(예컨대, 터치패드 또는 터치 스크린) 상에서 누르기 입력이 검출되는 동안 각각의 버튼 위의 포커스 선택자(예컨대, 커서, 접촉 또는 선택 박스)의 위치는 (디바이스의 디스플레이 상에 보여지는 다른 사용자 인터페이스 요소들과 달리) 사용자가 각각의 버튼을 활성화시키려고 하고 있다는 것을 나타낼 것이다.As used herein, the term “focus selector” refers to an input element that represents the current portion of a user interface with which the user is interacting. In some implementations that include a cursor or other location marker, a touch-sensitive surface (eg, FIG. 3 ) while the cursor is over a particular user interface element (eg, a button, window, slider, or other user interface element) When an input (eg, a press input) is detected on the touchpad 355 of the or touch-sensitive surface 451 of FIG. 4B ), the cursor becomes a "focus selector" such that a particular user interface element is adjusted according to the detected input. function as In some implementations, including a touch screen display (eg, the touch-sensitive display system 112 of FIG. 1A or the touch screen of FIG. 4A ) that enables direct interaction with user interface elements on the touch screen display, When an input (eg, a touch input) is detected on a touch screen display at the location of a particular user interface element (eg, a button, window, slider, or other user interface element), the particular user interface element responds to the detected input. A contact detected on the touch screen serves as a “focus selector” to be adjusted accordingly. In some implementations, focus is moved to one of the user interfaces without movement of a corresponding cursor or contact or movement of a corresponding cursor on the touch screen display (eg, by using a tab key or an arrow key to move focus from one button to another). moved from one area of the user interface to another area of the user interface; In such implementations, the focus selector moves in response to movement of focus between different areas of the user interface. Irrespective of the particular form a focus selector has, a focus selector generally uses a user interface to convey the user's intended interaction with the user interface (eg, by indicating to the device an element of the user interface with which the user wants to interact). A user interface element (or contact on a touch screen display) controlled by For example, while a press input is detected on a touch-sensitive surface (eg, a touchpad or touch screen), the position of a focus selector (eg, cursor, contact, or selection box) over each button (eg, on the device's display) It will indicate that the user is about to activate the respective button (unlike other user interface elements shown).

명세서 및 청구범위에서 사용되는 바와 같이, 터치 감응형 표면 상에서의 접촉의 "세기"라는 용어는 터치 감응형 표면 상에서의 접촉(예컨대, 손가락 접촉 또는 스타일러스 접촉)의 힘 또는 압력(단위 면적 당 힘), 또는 터치 감응형 표면 상에서의 접촉의 힘 또는 압력에 대한 대체물(대용물)을 지칭한다. 접촉의 세기는, 적어도 4개의 구별되는 값들을 포함하고 더 전형적으로는 수백 개(예컨대, 적어도 256개)의 구별되는 값들을 포함하는 일정 범위의 값들을 갖는다. 접촉의 세기는 다양한 접근법들, 및 다양한 센서들 또는 센서들의 조합들을 이용하여 선택적으로 결정(또는 측정)된다. 예를 들어, 터치 감응형 표면 아래의 또는 그에 인접한 하나 이상의 힘 센서들은 터치 감응형 표면 상의 다양한 지점들에서 힘을 측정하는 데 선택적으로 사용된다. 일부 구현예들에서는, 다수의 힘 센서들로부터의 힘 측정치들이 접촉의 추정되는 힘을 결정하기 위해 조합(예컨대, 가중 평균 또는 합산)된다. 유사하게, 스타일러스의 압력 감응형 팁(tip)이 터치 감응형 표면 상의 스타일러스의 압력을 결정하는 데 선택적으로 사용된다. 대안으로, 터치 감응형 표면 상에서 검출된 접촉 면적의 크기 및/또는 그에 대한 변화들, 접촉 부근의 터치 감응형 표면의 정전용량 및/또는 그에 대한 변화들, 및/또는 접촉 부근의 터치 감응형 표면의 저항 및/또는 그에 대한 변화들은 터치 감응형 표면 상에서의 접촉의 힘 또는 압력에 대한 대체물로서 선택적으로 이용된다. 일부 구현예들에서, 접촉 힘 또는 압력에 대한 대체 측정치들은 세기 임계치가 초과되었는지의 여부를 결정하는 데 직접 이용된다(예컨대, 세기 임계치는 대체 측정치들에 대응하는 단위로 기술된다). 일부 구현예들에서, 접촉 힘 또는 압력에 대한 대체 측정치들은 추정된 힘 또는 압력으로 변환되고, 추정된 힘 또는 압력은 세기 임계치가 초과되었는지의 여부를 결정하기 위해 이용된다(예를 들어, 세기 임계치는 압력의 단위로 측정된 압력 임계치이다). 사용자 입력의 속성으로서 접촉의 세기를 사용하는 것은, 그렇지 않았으면 어포던스들을 (예를 들어, 터치 감응형 디스플레이 상에) 디스플레이하고/하거나 (예를 들어, 터치 감응형 디스플레이, 터치 감응형 표면, 또는 노브(knob) 또는 버튼과 같은 물리적/기계적 제어부를 통해) 사용자 입력을 수신하기 위하여 한정된 실면적을 갖는 감소된 크기의 디바이스 상에서 사용자에 의해 용이하게 액세스 가능하지 않을 수 있는 부가적인 디바이스 기능에의 사용자 액세스를 가능하게 한다.As used in the specification and claims, the term “strength” of a contact on a touch-sensitive surface refers to the force or pressure (force per unit area) of a contact (eg, finger contact or stylus contact) on the touch-sensitive surface. , or a substitute (surrogate) for the force or pressure of contact on a touch-sensitive surface. The intensity of the contact has a range of values including at least four distinct values and more typically including hundreds (eg, at least 256) distinct values. The intensity of the contact is optionally determined (or measured) using various approaches, and various sensors or combinations of sensors. For example, one or more force sensors below or adjacent to the touch-sensitive surface are optionally used to measure force at various points on the touch-sensitive surface. In some implementations, force measurements from multiple force sensors are combined (eg, weighted averaged or summed) to determine an estimated force of a contact. Similarly, a pressure-sensitive tip of the stylus is optionally used to determine the pressure of the stylus on the touch-sensitive surface. Alternatively, the size and/or changes thereto of the contact area detected on the touch-sensitive surface, the capacitance and/or changes thereto of the touch-sensitive surface in the vicinity of the contact, and/or the touch-sensitive surface in the vicinity of the contact The resistance and/or changes thereto are optionally used as a substitute for the force or pressure of contact on the touch-sensitive surface. In some implementations, the surrogate measurements for contact force or pressure are used directly to determine whether an intensity threshold has been exceeded (eg, the intensity threshold is described in units corresponding to the surrogate measurements). In some implementations, alternative measurements for contact force or pressure are converted to an estimated force or pressure, and the estimated force or pressure is used to determine whether an intensity threshold has been exceeded (eg, an intensity threshold). is the pressure threshold measured in units of pressure). Using the intensity of the contact as an attribute of the user input may not otherwise display affordances (eg, on a touch-sensitive display) and/or (eg, a touch-sensitive display, a touch-sensitive surface, or User access to additional device functionality that may not be readily accessible by the user on a reduced size device with a limited footprint to receive user input (via a physical/mechanical control such as a knob or button) makes it possible

일부 실시예들에서, 접촉/모션 모듈(130)은 동작이 사용자에 의해 수행되었는지 여부를 결정하는 데 (예컨대, 사용자가 아이콘에 대해 "클릭"했는지 여부를 결정하는 데) 하나 이상의 세기 임계치들의 세트를 이용한다. 일부 실시예들에서, 적어도 세기 임계치들의 서브세트가 소프트웨어 파라미터들에 따라 결정된다(예컨대, 세기 임계치들은 특정 물리적 액추에이터들의 활성화 임계치들에 의해 결정되지 않으며, 디바이스(100)의 물리적 하드웨어를 변경함이 없이 조정될 수 있다). 예를 들어, 트랙패드 또는 터치 스크린 디스플레이의 마우스 "클릭" 임계치는 트랙패드 또는 터치 스크린 디스플레이 하드웨어를 변경함이 없이 넓은 범위의 미리정의된 임계 값들 중 임의의 것으로 설정될 수 있다. 추가로, 일부 구현예들에서, 디바이스의 사용자는 (예컨대, 개별 세기 임계치들을 조정함으로써 그리고/또는 복수의 세기 임계치들을 시스템 레벨 클릭 "세기" 파라미터로 한꺼번에 조정함으로써) 일정 세트의 세기 임계치들 중 하나 이상을 조정하기 위한 소프트웨어 설정들을 제공받는다.In some embodiments, contact/motion module 130 is a set of one or more intensity thresholds to determine whether an action was performed by a user (eg, to determine whether a user "clicked" on an icon). use In some embodiments, at least a subset of the intensity thresholds are determined according to software parameters (eg, the intensity thresholds are not determined by activation thresholds of specific physical actuators, but changing the physical hardware of the device 100 ) can be adjusted without). For example, the mouse "click" threshold of a trackpad or touch screen display may be set to any of a wide range of predefined threshold values without changing the trackpad or touch screen display hardware. Additionally, in some implementations, a user of the device (eg, by adjusting individual intensity thresholds and/or by adjusting a plurality of intensity thresholds at once with a system level click "intensity" parameter) can select one of a set of intensity thresholds. Software settings are provided to adjust the anomaly.

명세서 및 청구범위에서 사용되는 바와 같이, 접촉의 "특성 세기"라는 용어는 접촉의 하나 이상의 세기들에 기초한 접촉의 특성을 지칭한다. 일부 실시예들에서, 특성 세기는 다수의 세기 샘플들에 기초한다. 특성 세기는, 선택적으로, 미리정의된 수의 세기 샘플들, 또는 (예컨대, 접촉을 검출한 이후에, 접촉의 리프트오프를 검출하기 이전에, 접촉의 이동의 시작을 검출하기 이전 또는 이후에, 접촉의 종료를 검출하기 이전에, 접촉의 세기의 증가를 검출하기 이전 또는 이후에, 그리고/또는 접촉의 세기의 감소를 검출하기 이전 또는 이후에) 미리정의된 이벤트에 대해 미리결정된 기간(예컨대, 0.05, 0.1, 0.2, 0.5, 1, 2, 5, 10초) 동안 수집된 세기 샘플들의 세트에 기초한다. 접촉의 특성 세기는, 선택적으로, 접촉의 세기들의 최대 값, 접촉의 세기들의 중간 값(mean value), 접촉의 세기들의 평균값(average value), 접촉의 세기들의 상위 10 백분위 값(top 10 percentile value), 접촉의 세기들의 최대 값의 절반의 값, 접촉의 세기들의 최대 값의 90 퍼센트의 값, 미리정의된 시간에 시작하여 또는 미리정의된 기간에 걸쳐 접촉의 세기를 저역 통과 필터링함으로써 생성된 값 등 중 하나 이상에 기초한다. 일부 실시예들에서, 접촉의 지속기간은 (예컨대, 특성 세기가 시간의 경과에 따른 접촉의 세기의 평균일 때) 특성 세기를 결정하는 데 사용된다. 일부 실시예들에서, 동작이 사용자에 의해 수행되었는지 여부를 결정하기 위해, 특성 세기가 하나 이상의 세기 임계치들의 세트와 비교된다. 예를 들어, 하나 이상의 세기 임계치의 세트는 제1 세기 임계치 및 제2 세기 임계치를 포함할 수 있다. 이 예에서, 제1 세기 임계치를 초과하지 않는 특성 세기를 갖는 접촉의 결과, 제1 동작이 행해지고, 제1 세기 임계치를 초과하지만 제2 세기 임계치를 초과하지 않는 특성 세기를 갖는 접촉의 결과, 제2 동작이 행해지며, 제2 세기 임계치 초과의 특성 세기를 갖는 접촉의 결과, 제3 동작이 행해진다. 일부 실시예들에서, 특성 세기와 하나 이상의 세기 임계치 간의 비교는, 제1 동작을 수행할지 제2 동작을 수행할지 결정하기 위해 사용되기보다는, 하나 이상의 동작을 수행할지 여부(예컨대, 각각의 옵션을 수행할지 또는 각각의 동작을 수행하는 것을 보류할지 여부)를 결정하기 위해 사용된다.As used in the specification and claims, the term “characteristic intensity” of a contact refers to a property of a contact based on one or more intensities of the contact. In some embodiments, the feature intensity is based on multiple intensity samples. The characteristic intensity is optionally determined by a predefined number of intensity samples, or (eg, after detecting the contact, before detecting liftoff of the contact, before or after detecting the start of movement of the contact; A predetermined period of time (eg, before or after detecting an end of the contact, before or after detecting an increase in the intensity of the contact, and/or before or after detecting a decrease in the intensity of the contact) for the predefined event. 0.05, 0.1, 0.2, 0.5, 1, 2, 5, 10 seconds). The characteristic intensity of the contact is, optionally, a maximum value of the intensities of the contact, a mean value of the intensities of the contact, an average value of the intensities of the contact, a top 10 percentile value of the intensities of the contact. ), a value of half the maximum value of the intensities of the contact, a value of 90 percent of the maximum value of the intensities of the contact, a value generated by low-pass filtering the intensity of the contact starting at a predefined time or over a predefined period of time based on one or more of, etc. In some embodiments, the duration of the contact is used to determine the feature intensity (eg, when the feature intensity is an average of the intensity of the contact over time). In some embodiments, the characteristic intensity is compared to a set of one or more intensity thresholds to determine whether an action was performed by the user. For example, the set of one or more intensity thresholds may include a first intensity threshold and a second intensity threshold. In this example, as a result of a contact having a characteristic intensity that does not exceed a first intensity threshold, a first action is performed, resulting in a contact having a characteristic intensity that exceeds the first intensity threshold but does not exceed a second intensity threshold, a second Two actions are performed, and as a result of the contact having a characteristic intensity above the second intensity threshold, a third action is performed. In some embodiments, a comparison between a characteristic intensity and one or more intensity thresholds is used to determine whether to perform one or more actions (e.g., each option It is used to decide whether to perform or whether to hold off performing each action).

일부 실시예들에서, 특성 세기를 결정하기 위해 제스처의 일부분이 식별된다. 예를 들어, 터치 감응형 표면은 시작 위치로부터 전이하여 종료 위치(이 지점에서 접촉의 세기가 증가함)에 도달하는 연속적인 스와이프 접촉(예컨대, 드래그 제스처)을 수신할 수 있다. 이 예에서, 종료 위치에서의 접촉의 특성 세기는 스와이프 접촉 전체가 아니라 연속적인 스와이프 접촉의 일부분에만(예컨대, 종료 위치에서의 스와이프 접촉의 부분에만) 기초할 수 있다. 일부 실시예들에서, 접촉의 특성 세기를 결정하기 전에 스와이프 접촉의 세기들에 평활화 알고리즘이 적용될 수 있다. 예를 들어, 평활화 알고리즘은, 선택적으로, 비가중 이동 평균(unweighted sliding-average) 평활화 알고리즘, 삼각(triangular) 평활화 알고리즘, 메디안 필터(median filter) 평활화 알고리즘, 및/또는 지수(exponential) 평활화 알고리즘 중 하나 이상을 포함한다. 일부 상황들에서, 이 평활화 알고리즘들은 특성 세기를 결정하기 위해 스와이프 접촉의 세기들에서의 좁은 급등(spike)들 또는 급감(dip)들을 제거한다.In some embodiments, a portion of a gesture is identified to determine a characteristic strength. For example, the touch-sensitive surface may receive successive swipe contacts (eg, drag gestures) transitioning from a starting position to reach an ending position, at which point the intensity of the contact increases. In this example, the characteristic intensity of the contact at the end location may be based on only a portion of the successive swipe contacts (eg, only the portion of the swipe contact at the end location) and not the entire swipe contact. In some embodiments, a smoothing algorithm may be applied to the intensities of the swipe contact prior to determining the characteristic intensity of the contact. For example, the smoothing algorithm may optionally include an unweighted sliding-average smoothing algorithm, a triangular smoothing algorithm, a median filter smoothing algorithm, and/or an exponential smoothing algorithm. contains more than one. In some situations, these smoothing algorithms remove narrow spikes or dips in the intensities of the swipe contact to determine the characteristic intensity.

본 명세서에 기술된 사용자 인터페이스 도면들은, 선택적으로, 하나 이상의 세기 임계치들(예컨대, 접촉 검출 세기 임계치(IT0), 가볍게 누르기 세기 임계치(ITL), 깊게 누르기 세기 임계치(ITD)(예컨대, 적어도 초기에 ITL보다 높음), 및/또는 하나 이상의 다른 세기 임계치들(예컨대, ITL보다 낮은 세기 임계치(ITH))에 대한 터치 감응형 표면 상에서의 접촉의 현재 세기를 보여주는 다양한 세기 다이어그램들을 포함한다. 이러한 세기 다이어그램은 전형적으로 디스플레이되는 사용자 인터페이스의 일부가 아니라, 도면들의 해석에 도움을 주기 위해 제공된다. 일부 실시예들에서, 가볍게 누르기 세기 임계치는, 디바이스가 물리적 마우스의 버튼 또는 트랙패드를 클릭하는 것과 전형적으로 연관된 동작들을 수행하게 될 세기에 대응한다. 일부 실시예들에서, 깊게 누르기 세기 임계치는, 디바이스가 물리적 마우스의 버튼 또는 트랙패드를 클릭하는 것과 전형적으로 연관된 동작들과는 상이한 동작들을 수행하게 될 세기에 대응한다. 일부 실시예들에서, 접촉이 가볍게 누르기 세기 임계치 미만의(예컨대, 그리고 공칭 접촉 검출 세기 임계치(IT0)(이 미만에서는 접촉이 더 이상 검출되지 않음) 초과의) 특성 세기로 검출될 때, 디바이스는 가볍게 누르기 세기 임계치 또는 깊게 누르기 세기 임계치와 연관된 동작을 수행함이 없이 터치 감응형 표면 상에서의 접촉의 이동에 따라 포커스 선택자를 이동시킬 것이다. 일반적으로, 달리 언급되지 않는 한, 이 세기 임계치들은 사용자 인터페이스 도면들의 상이한 세트들 사이에서 일관성이 있다.The user interface diagrams described herein may optionally include one or more intensity thresholds (eg, a touch detection intensity threshold (IT 0 ), a light press intensity threshold (IT L ), a deep press intensity threshold (IT D ) (eg, Various intensity diagrams showing the current intensity of contact on the touch-sensitive surface for at least initially above IT L ), and/or one or more other intensity thresholds (eg, an intensity threshold lower than IT L , IT H ). This intensity diagram is not typically part of the displayed user interface, but is provided to aid in the interpretation of the figures.In some embodiments, the light press intensity threshold is the device's physical mouse button or trackpad. corresponds to the intensity at which the device will perform actions typically associated with clicking on In some embodiments, the deep press intensity threshold may cause the device to perform different actions than actions typically associated with clicking a button or trackpad of a physical mouse. corresponds to the intensity to be performed.In some embodiments, the contact is less than a light press intensity threshold (eg, and above the nominal contact detection intensity threshold IT 0 , below which the contact is no longer detected). When detected with a characteristic intensity, the device will move the focus selector in response to movement of the contact on the touch-sensitive surface without performing an action associated with the light press intensity threshold or the deep press intensity threshold. As long as these intensity thresholds are consistent between different sets of user interface drawings.

일부 실시예들에서, 디바이스에 의해 검출된 입력들에 대한 디바이스의 응답은 입력 동안 접촉 세기에 기초한 기준들에 따라 달라진다. 예를 들어, 일부 "가볍게 누르기" 입력의 경우, 입력 동안 제1 세기 임계치를 초과하는 접촉의 세기는 제1 응답을 트리거한다. 일부 실시예들에서, 디바이스에 의해 검출된 입력들에 대한 디바이스의 응답은 입력 동안의 접촉 세기 및 시간 기반 기준들 둘 모두를 포함하는 기준들에 따라 달라진다. 예를 들어, 일부 "깊게 누르기" 입력의 경우, 가볍게 누르기에 대한 제1 세기 임계치보다 큰, 입력 동안 제2 세기 임계치를 초과하는 접촉의 세기는, 제1 세기 임계치를 충족하는 것과 제2 세기 임계치를 충족하는 것 사이에서 지연 시간이 경과한 경우에만, 제2 응답을 트리거한다. 이 지연 시간은 전형적으로 200 ms(밀리초) 미만의 지속기간(예컨대, 제2 세기 임계치의 크기에 따라 40, 100, 또는 120 ms이고, 이때 제2 세기 임계치가 증가함에 따라 지연 시간이 증가함)이다. 이 지연 시간은 깊게 누르기 입력의 우발적 인식의 방지를 돕는다. 다른 예로서, 일부 "깊게 누르기" 입력의 경우, 제1 세기 임계치가 충족되는 시간 이후에 발생하는 민감도 감소 기간이 있다. 민감도 감소 기간 동안, 제2 세기 임계치가 증가된다. 제2 세기 임계치의 이러한 일시적인 증가는 또한 우발적 깊게 누르기 입력의 방지를 돕는다. 다른 깊게 누르기 입력의 경우, 깊게 누르기 입력의 검출에 대한 응답은 시간 기반 기준들에 따라 달라지지 않는다.In some embodiments, the device's response to inputs detected by the device depends on criteria based on contact strength during input. For example, for some “tap” inputs, an intensity of the contact that exceeds a first intensity threshold during the input triggers a first response. In some embodiments, the device's response to inputs detected by the device depends on criteria including both contact strength during input and time-based criteria. For example, for some “deep press” inputs, an intensity of a contact that exceeds a second intensity threshold during input, which is greater than a first intensity threshold for a light press, is equal to meeting the first intensity threshold and a second intensity threshold. A second response is triggered only when a delay time has elapsed between satisfying . This delay time is typically less than 200 ms (milliseconds) duration (e.g., 40, 100, or 120 ms depending on the magnitude of the second intensity threshold, with increasing delay time as the second intensity threshold increases) )am. This delay time helps prevent accidental recognition of the deep press input. As another example, for some "deep press" inputs, there is a period of reduced sensitivity that occurs after the time the first intensity threshold is met. During the reduced sensitivity period, the second intensity threshold is increased. This temporary increase in the second intensity threshold also helps prevent accidental deep press input. For other deep press inputs, the response to detection of the deep press input does not depend on time-based criteria.

일부 실시예들에서, 입력 세기 임계치들 및/또는 대응하는 출력들 중 하나 이상은 하나 이상의 요인, 예컨대 사용자 설정, 접촉 모션, 입력 타이밍, 애플리케이션 실행, 세기가 적용되는 속도, 동시 입력의 수, 사용자 이력, 환경적 요인(예를 들어, 주변 노이즈), 포커스 선택자 포지션 등에 기초하여 달라진다. 예시적인 요인들이 미국 특허 출원 번호 제14/399,606호 및 제14/624,296호에 기술되어 있으며, 이들은 본 명세서에 전체적으로 참조로서 포함된다.In some embodiments, one or more of the input intensity thresholds and/or corresponding outputs may depend on one or more factors, such as user setting, contact motion, input timing, application execution, speed at which the intensity is applied, number of simultaneous inputs, user Varies based on history, environmental factors (eg, ambient noise), focus selector position, and the like. Exemplary factors are described in US Patent Application Serial Nos. 14/399,606 and 14/624,296, which are incorporated herein by reference in their entirety.

예를 들어, 도 4c는 시간 경과에 따른 터치 입력(476)의 세기에 부분적으로 기초하여 시간 경과에 따라 변경되는 동적 세기 임계치(480)를 예시한다. 동적 세기 임계치(480)는 2개의 컴포넌트들, 즉 터치 입력(476)이 초기에 검출된 때부터 미리정의된 지연 시간(p1) 이후에 시간 경과에 따라 감쇠하는 제1 컴포넌트(474), 및 시간 경과에 따라 터치 입력(476)의 세기를 따라가는 제2 컴포넌트(478)의 합산이다. 제1 컴포넌트(474)의 초기 높은 세기 임계치는 "깊게 누르기" 응답의 우발적 트리거링을 감소시키지만, 터치 입력(476)이 충분한 세기를 제공하는 경우 즉각적인 "깊게 누르기" 응답을 여전히 허용한다. 제2 컴포넌트(478)는 터치 입력의 점진적인 세기 변동에 의한 "깊게 누르기" 응답의 의도하지 않은 트리거링을 감소시킨다. 일부 실시예들에서, 터치 입력(476)이 (예를 들어, 도 4c의 지점(481)에서) 동적 세기 임계치(480)를 충족할 때, "깊게 누르기" 응답이 트리거된다.For example, FIG. 4C illustrates a dynamic intensity threshold 480 that changes over time based in part on the intensity of the touch input 476 over time. The dynamic intensity threshold 480 has two components: a first component 474 that decays over time after a predefined delay time p1 from when the touch input 476 is initially detected, and a time The sum of the second component 478 that follows the intensity of the touch input 476 over time. The initial high intensity threshold of the first component 474 reduces accidental triggering of a "deep press" response, but still allows for an immediate "deep press" response if the touch input 476 provides sufficient intensity. The second component 478 reduces unintentional triggering of a “deep press” response by a gradual change in intensity of the touch input. In some embodiments, when touch input 476 meets dynamic intensity threshold 480 (eg, at point 481 in FIG. 4C ), a “deep press” response is triggered.

도 4d는 다른 동적 세기 임계치(486)(예컨대, 세기 임계치(ID))를 예시한다. 도 4d는 또한 다른 2개의 세기 임계치들, 즉, 제1 세기 임계치(IH) 및 제2 세기 임계치(IL)를 예시한다. 도 4d에서, 터치 입력(484)은 시간(p2) 이전에 제1 세기 임계치(IH) 및 제2 세기 임계치(IL)를 충족하지만, 지연 시간(p2)이 시간(482)을 경과할 때까지 응답이 제공되지 않는다. 또한 도 4d에서, 동적 세기 임계치(486)는 시간 경과에 따라 감쇠하는데, 감쇠는 시간(482)(제2 세기 임계치(IL)와 연관된 응답이 트리거된 때)으로부터 미리정의된 지연 시간(p1)이 경과한 후에 시간(488)에서 시작한다. 이러한 유형의 동적 세기 임계치는 더 낮은 세기 임계치, 예를 들어 제1 세기 임계치(IH) 또는 제2 세기 임계치(IL)와 연관된 응답을 트리거한 직후, 또는 그와 동시에 동적 세기 임계치(ID)와 연관된 응답의 우발적 트리거링을 감소시킨다.4D illustrates another dynamic intensity threshold 486 (eg, intensity threshold I D ). 4D also illustrates two other intensity thresholds, a first intensity threshold (I H ) and a second intensity threshold (I L ). In FIG. 4D , touch input 484 meets first intensity threshold I H and second intensity threshold I L before time p2 , but delay time p2 elapses time 482 . No response is provided until Also in FIG. 4D , the dynamic intensity threshold 486 decays over time, the decay being a predefined delay time p1 from time 482 (when the response associated with the second intensity threshold I L is triggered). ) has elapsed, starting at time 488 . A dynamic intensity threshold of this type immediately after triggering a response associated with a lower intensity threshold, for example the first intensity threshold (I H ) or the second intensity threshold (I L ), or concurrently with the dynamic intensity threshold (I D ) ) to reduce the accidental triggering of a response associated with it.

도 4e는 또 다른 동적 세기 임계치(492)(예컨대, 세기 임계치(ID))를 예시한다. 도 4e에서, 세기 임계치(IL)와 연관된 응답은 터치 입력(490)이 초기에 검출된 때부터 지연 시간(p2)이 경과한 후에 트리거된다. 동시에, 동적 세기 임계치(492)는 터치 입력(490)이 초기에 검출된 때부터 미리정의된 지연 시간(p1)이 경과한 후에 감쇠한다. 따라서, 세기 임계치(IL)와 연관된 응답을 트리거한 후에 터치 입력(490)의 세기가 감소하고, 이어서 터치 입력(490)의 해제 없이 터치 입력(490)의 세기가 증가하면, 터치 입력(490)의 세기가 다른 세기 임계치, 예를 들어, 세기 임계치(IL) 미만인 때에도 (예컨대, 시간(494)에서) 세기 임계치(ID)와 연관된 응답을 트리거할 수 있다.4E illustrates another dynamic intensity threshold 492 (eg, intensity threshold I D ). In FIG. 4E , the response associated with the intensity threshold I L is triggered after a delay time p2 has elapsed from when the touch input 490 was initially detected. At the same time, the dynamic intensity threshold 492 decays after a predefined delay time p1 has elapsed from when the touch input 490 was initially detected. Thus, if the intensity of the touch input 490 decreases after triggering the response associated with the intensity threshold I L , and then the intensity of the touch input 490 increases without releasing the touch input 490 , the touch input 490 . ) may trigger a response associated with the intensity threshold I D (eg, at time 494 ) even when the intensity is below another intensity threshold, eg, the intensity threshold I L .

가볍게 누르기 세기 임계치(ITL) 미만의 세기로부터 가볍게 누르기 세기 임계치(ITL)와 깊게 누르기 세기 임계치(ITD) 사이의 세기로의 접촉의 특성 세기의 증가는, 때때로 "가볍게 누르기" 입력으로서 지칭된다. 깊게 누르기 세기 임계치(ITD) 미만의 세기로부터 깊게 누르기 세기 임계치(ITD) 초과의 세기로의 접촉의 특성 세기의 증가는 때때로 "깊게 누르기" 입력으로서 지칭된다. 접촉-검출 세기 임계치(IT0) 미만의 세기로부터 접촉-검출 세기 임계치(IT0)와 가볍게 누르기 세기 임계치(ITL) 사이의 세기로의 접촉의 특성 세기의 증가는, 때때로 터치 표면 상에서의 접촉을 검출하는 것으로서 지칭된다. 접촉 검출 세기 임계치(IT0) 초과의 세기로부터 접촉 검출 세기 임계치(IT0) 미만의 세기로의 접촉의 특성 세기의 감소는 때때로 터치 표면으로부터의 접촉의 리프트오프를 검출하는 것으로서 지칭된다. 일부 실시예들에서 IT0는 0(영)이다. 일부 실시예들에서 IT0는 0보다 크다. 일부 실시예들에서, 음영이 있는 원 또는 타원은 터치 감응형 표면 상에서의 접촉의 세기를 나타내기 위해 사용된다. 일부 실시예들에서, 음영이 없는 원 또는 타원은 개개의 접촉의 세기를 특정하지 않으면서 터치 감응형 표면 상의 개개의 접촉을 표현하기 위해 사용된다.An increase in the characteristic intensity of a contact from an intensity below the light press intensity threshold (IT L ) to an intensity between the light press intensity threshold (IT L ) and the deep press intensity threshold (IT D ), sometimes referred to as a "light press" input do. An increase in the characteristic intensity of a contact from an intensity below the deep press intensity threshold IT D to an intensity above the deep press intensity threshold IT D is sometimes referred to as a “deep press” input. An increase in the characteristic intensity of a contact from an intensity below the touch-detection intensity threshold (IT 0 ) to an intensity between the touch-detection intensity threshold (IT 0 ) and the light press intensity threshold (IT L ) is sometimes a contact on the touch surface. is referred to as detecting A decrease in the characteristic intensity of a contact from an intensity above the contact detection intensity threshold IT 0 to an intensity below the contact detection intensity threshold IT 0 is sometimes referred to as detecting liftoff of the contact from the touch surface. In some embodiments IT 0 is 0 (zero). In some embodiments IT 0 is greater than zero. In some embodiments, a shaded circle or ellipse is used to indicate the intensity of contact on the touch-sensitive surface. In some embodiments, an unshaded circle or ellipse is used to represent an individual contact on the touch-sensitive surface without specifying the intensity of the individual contact.

본 명세서에 기술된 일부 실시예들에서, 하나 이상의 동작들은, 각각의 누르기 입력을 포함하는 제스처를 검출하는 것에 응답하여 또는 각각의 접촉(또는 복수의 접촉들)으로 수행되는 각각의 누르기 입력을 검출하는 것에 응답하여 수행되며, 여기서 각각의 누르기 입력은 누르기 입력 세기 임계치 초과의 접촉(또는 복수의 접촉들)의 세기의 증가를 검출하는 것에 적어도 부분적으로 기초하여 검출된다. 일부 실시예들에서, 개개의 동작은, 누르기 입력 세기 임계치 초과의 개개의 접촉의 세기의 증가를 검출하는 것에 응답하여 수행된다(예컨대, 개개의 동작은 개개의 누르기 입력의 "다운 스트로크(down stroke)"에서 수행됨). 일부 실시예들에서, 누르기 입력은 누르기 입력 세기 임계치 초과의 각각의 접촉의 세기의 증가 및 누르기 입력 세기 임계치 미만의 접촉의 세기의 후속하는 감소를 포함하며, 각각의 동작은 누르기 입력 임계치 미만의 각각의 접촉의 세기의 후속하는 감소를 검출하는 것에 응답하여 수행된다(예컨대, 각각의 동작은 각각의 누르기 입력의 "업 스트로크(up stroke)"에서 수행된다).In some embodiments described herein, the one or more actions detect each press input performed with each contact (or plurality of contacts) or in response to detecting a gesture comprising the respective press input. and wherein each press input is detected based, at least in part, on detecting an increase in intensity of the contact (or plurality of contacts) above a press input intensity threshold. In some embodiments, the respective action is performed in response to detecting an increase in intensity of the respective contact above a press input intensity threshold (eg, the respective action is a “down stroke of the respective press input”). )"). In some embodiments, the press input comprises an increase in the intensity of each contact above the press input intensity threshold and a subsequent decrease in the intensity of the contact below the press input intensity threshold, wherein each action is each below the press input intensity threshold is performed in response to detecting a subsequent decrease in the intensity of the contact of (eg, each operation is performed on an “up stroke” of each press input).

일부 실시예들에서, 디바이스는 때때로 "지터(jitter)"로 지칭되는 우발적인 입력들을 회피하기 위해 세기 히스테리시스를 채용하며, 여기서 디바이스는 누르기 입력 세기 임계치에 대한 미리정의된 관계를 갖는 히스테리시스 세기 임계치(예컨대, 히스테리시스 세기 임계치는 누르기 입력 세기 임계치보다 더 낮은 X 세기 단위이거나, 히스테리시스 세기 임계치는 누르기 입력 세기 임계치의 75%, 90% 또는 어떤 적절한 비율임)를 정의하거나 선택한다. 이와 같이, 일부 실시예들에서, 누르기 입력은 누르기 입력 세기 임계치 초과의 각각의 접촉의 세기의 증가 및 누르기 입력 세기 임계치에 대응하는 히스테리시스 세기 임계치 미만의 접촉의 세기의 후속하는 감소를 포함하며, 각각의 동작은 히스테리시스 세기 임계치 미만의 각각의 접촉의 세기의 후속하는 감소를 검출하는 것에 응답하여 수행된다(각각의 동작은 각각의 누르기 입력의 "업 스트로크"에서 수행된다). 유사하게, 일부 실시예들에서, 누르기 입력은 디바이스가 히스테리시스 세기 임계치 이하에서의 세기로부터 누르기 입력 세기 임계치 이상에서의 세기로의 접촉의 세기의 증가, 및 선택적으로, 히스테리시스 세기 이하에서의 세기로의 접촉의 세기의 후속적인 감소를 검출하는 경우에만 검출되고, 각각의 동작은 누르기 입력(예컨대, 주변환경에 따른 접촉의 세기의 증가 또는 접촉의 세기의 감소)을 검출하는 것에 응답하여 수행된다.In some embodiments, the device employs intensity hysteresis to avoid accidental inputs, sometimes referred to as “jitter”, where the device has a hysteresis intensity threshold ( For example, the hysteresis intensity threshold is an X intensity unit lower than the press input intensity threshold, or the hysteresis intensity threshold is 75%, 90%, or some suitable percentage of the press input intensity threshold). As such, in some embodiments, the press input comprises an increase in the intensity of each contact above the press input intensity threshold and a subsequent decrease in the intensity of the contact below a hysteresis intensity threshold corresponding to the press input intensity threshold, each The operation of is performed in response to detecting a subsequent decrease in the intensity of each contact below the hysteresis intensity threshold (each operation is performed on the "up stroke" of each press input). Similarly, in some embodiments, the press input causes the device to increase the intensity of the contact from an intensity below the hysteresis intensity threshold to an intensity above the press input intensity threshold, and optionally, to an intensity below the hysteresis intensity threshold. It is detected only if a subsequent decrease in the intensity of the contact is detected, and each operation is performed in response to detecting a press input (eg, an increase in the intensity of the contact or a decrease in the intensity of the contact depending on the environment).

설명의 편의상, 누르기 입력 세기 임계치와 연관된 누르기 입력에 응답하여 또는 누르기 입력을 포함하는 제스처에 응답하여 수행되는 동작들의 설명은, 선택적으로, 누르기 입력 세기 임계치 초과의 접촉의 세기의 증가, 히스테리시스 세기 임계치 미만의 세기로부터 누르기 입력 세기 임계치 초과의 세기로의 접촉의 세기의 증가, 누르기 입력 세기 임계치 미만의 접촉의 세기의 감소, 또는 누르기 입력 세기 임계치에 대응하는 히스테리시스 세기 임계치 미만의 접촉의 세기의 감소를 검출하는 것에 응답하여 트리거된다. 또한, 동작이 누르기 입력 세기 임계치 미만의 접촉의 세기의 감소를 검출하는 것에 응답하여 수행되는 것으로서 기술되어 있는 예들에서, 동작은, 선택적으로, 누르기 입력 세기 임계치에 대응하고 그보다 더 낮은 히스테리시스 세기 임계치 미만의 접촉의 세기의 감소를 검출하는 것에 응답하여 수행된다. 전술된 바와 같이, 일부 실시예들에서, 이러한 응답들의 트리거링은 또한 시간 기반 기준들이 충족됨(예컨대, 제1 세기 임계치가 충족되는 것과 제2 세기 임계치가 충족되는 것 사이에 지연 시간이 경과됨)에 따라 달라진다.For convenience of description, descriptions of operations performed in response to a press input associated with a press input intensity threshold or in response to a gesture comprising a press input include, optionally, an increase in an intensity of a contact above a press input intensity threshold, a hysteresis intensity threshold an increase in the intensity of the contact from an intensity below the press input intensity threshold to an intensity above the press input intensity threshold, a decrease in the intensity of the contact below the press input intensity threshold, or a decrease in the intensity of the contact below the hysteresis intensity threshold corresponding to the press input intensity threshold triggered in response to detection. Further, in examples where the action is described as being performed in response to detecting a decrease in the intensity of the contact below the press input intensity threshold, the action is, optionally, less than a hysteresis intensity threshold corresponding to and lower than the press input intensity threshold. is performed in response to detecting a decrease in the intensity of the contact. As noted above, in some embodiments, the triggering of such responses is also that time-based criteria are met (eg, a delay time elapses between the first intensity threshold being met and the second intensity threshold being met) depends on

명세서 및 청구범위에 사용되는 바와 같이, "촉각적 출력"이라는 용어는 디바이스의 이전 위치에 대한 디바이스의 물리적 변위, 디바이스의 다른 컴포넌트(예컨대, 하우징)에 대한 디바이스의 컴포넌트(예컨대, 터치 감응형 표면)의 물리적 변위, 또는 사용자의 촉각을 이용하여 사용자에 의해 검출될 디바이스의 질량 중심에 대한 컴포넌트의 변위를 지칭한다. 예컨대, 디바이스 또는 디바이스의 컴포넌트가 터치에 민감한 사용자의 표면(예컨대, 사용자의 손의 손가락, 손바닥, 또는 다른 부위)과 접촉하는 상황에서, 물리적 변위에 의해 생성된 촉각적 출력은 사용자에 의해 디바이스 또는 디바이스의 컴포넌트의 물리적 특성들의 인지된 변화에 대응하는 촉감(tactile sensation)으로서 해석될 것이다. 예컨대, 터치 감응형 표면(예컨대, 터치 감응형 디스플레이 또는 트랙패드)의 이동은, 선택적으로, 사용자에 의해 물리적 액추에이터 버튼의 "다운 클릭" 또는 "업 클릭"으로서 해석된다. 일부 경우에, 사용자는 사용자의 이동에 의해 물리적으로 눌리는(예컨대, 변위되는) 터치 감응형 표면과 연관된 물리적 액추에이터 버튼의 이동이 없는 경우에도 "다운 클릭" 또는 "업 클릭"과 같은 촉감을 느낄 것이다. 다른 예로서, 터치 감응형 표면의 이동은, 터치 감응형 표면의 평탄성의 변화가 없는 경우에도, 선택적으로, 사용자에 의해 터치 감응형 표면의 "거칠기(roughness)"로서 해석 또는 감지된다. 사용자에 의한 터치의 이러한 해석들이 사용자의 개별화된 감각 인지(sensory perception)에 영향을 받기 쉬울 것이지만, 대다수의 사용자들에게 보편적인 많은 터치 감각 인지가 있다. 따라서, 촉각적 출력이 사용자의 특정 감각 인지(예컨대, "업 클릭", "다운 클릭", "거칠기")에 대응하는 것으로서 기술될 때, 달리 언급되지 않는다면, 생성된 촉각적 출력은 전형적인(또는 평균적인) 사용자에 대한 기술된 감각 인지를 생성할 디바이스 또는 그의 컴포넌트의 물리적 변위에 대응한다. 촉각적 출력들을 사용하여 사용자에게 햅틱 피드백을 제공하는 것은, (예컨대, 디바이스를 작동시키고/그와 상호작용할 때 사용자가 적절한 입력들을 제공하는 것을 돕고 사용자 실수들을 감소시킴으로써) 디바이스의 작동성을 향상시키고 사용자-디바이스 인터페이스를 더 효율적으로 만드는데, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.As used in the specification and claims, the term “tactile output” refers to a physical displacement of a device relative to its previous position, a component of the device (eg, a touch-sensitive surface) relative to another component of the device (eg, a housing). ), or the displacement of a component with respect to the center of mass of the device to be detected by the user using the user's tactile sense. For example, in situations where a device or component of a device is in contact with a touch-sensitive surface of a user (eg, a finger, palm, or other portion of a user's hand), the tactile output generated by the physical displacement may to be interpreted as a tactile sensation corresponding to a perceived change in the physical properties of a component of the device. For example, movement of a touch-sensitive surface (eg, a touch-sensitive display or trackpad) is optionally interpreted by the user as a "down click" or "up click" of a physical actuator button. In some cases, the user will feel a tactile sensation such as a "down click" or "up click" even in the absence of movement of a physical actuator button associated with a touch-sensitive surface that is physically depressed (eg, displaced) by movement of the user. . As another example, movement of the touch-sensitive surface is optionally interpreted or sensed by the user as "roughness" of the touch-sensitive surface, even when there is no change in flatness of the touch-sensitive surface. Although these interpretations of touch by the user will be susceptible to the user's individualized sensory perception, there are many touch sensory perceptions common to the majority of users. Thus, when tactile output is described as corresponding to a user's specific sensory perception (eg, "up click", "down click", "roughness"), unless otherwise stated, the tactile output generated is typical (or average) corresponds to the physical displacement of the device or component thereof that will produce the described sensory perception for the user. Providing haptic feedback to a user using tactile outputs improves the operability of the device (eg, by helping the user provide appropriate inputs and reducing user errors when actuating/interacting with the device) and It makes the user-device interface more efficient, which additionally reduces the power usage of the device and improves battery life by enabling the user to use the device more quickly and efficiently.

일부 실시예들에서, 촉각적 출력 패턴은 촉각적 출력의 특성들, 예컨대 촉각적 출력의 진폭, 촉각적 출력의 이동 파형의 형상, 촉각적 출력의 주파수, 및/또는 촉각적 출력의 지속기간을 특정한다.In some embodiments, the tactile output pattern determines characteristics of the tactile output, such as the amplitude of the tactile output, the shape of the moving waveform of the tactile output, the frequency of the tactile output, and/or the duration of the tactile output. specify

상이한 촉각적 출력 패턴들을 갖는 촉각적 출력들이 (예컨대, 이동가능 질량체를 이동시켜 촉각적 출력들을 생성하는 하나 이상의 촉각적 출력 생성기들을 통해) 디바이스에 의해 생성될 때, 촉각적 출력들은, 사용자가 디바이스를 들고 있거나 터치할 시에 상이한 햅틱 감각들을 불러일으킬 수 있다. 사용자의 감각은 촉각적 출력의 사용자 인지에 기초하지만, 대부분의 사용자들은 디바이스에 의해 생성된 촉각적 출력들의 파형, 주파수, 및 진폭의 변화들을 식별할 수 있을 것이다. 따라서, 파형, 주파수 및 진폭은 상이한 동작들이 수행되었음을 사용자에게 나타내기 위해 조정될 수 있다. 이와 같이, 주어진 환경(예컨대, 그래픽 특징부들 및 객체들을 포함하는 사용자 인터페이스, 가상 경계들 및 가상 객체들을 갖는 시뮬레이션된 물리적 환경, 물리적 경계들 및 물리적 객체들을 갖는 실제 물리적 환경, 및/또는 상기 중 임의의 것의 조합)에서 객체들의 특성들(예컨대, 크기, 재료, 중량, 강성도, 평활도 등); 거동들(예컨대, 발진, 변위, 가속도, 회전, 확장 등); 및/또는 상호작용들(예컨대, 충돌, 접착, 반발, 유인, 마찰 등)을 시뮬레이션하기 위해 설계되고/되거나, 선택되고/되거나 엔지니어링되는 촉각적 출력 패턴들을 갖는 촉각적 출력들은, 일부 상황들에서, 입력 에러들을 감소시키고 디바이스의 사용자 동작의 효율을 증가시키는 유용한 피드백을 사용자들에게 제공할 것이다. 추가로, 촉각적 출력들은, 선택적으로, 시뮬레이션된 물리적 특성, 예컨대 입력 임계치 또는 객체의 선택과 관련되지 않는 피드백에 대응하도록 생성된다. 그러한 촉각적 출력들은, 일부 상황들에서, 입력 에러들을 감소시키고 디바이스의 사용자 동작의 효율을 증가시키는 유용한 피드백을 사용자들에게 제공할 것이다.When tactile outputs having different tactile output patterns are generated by a device (eg, via one or more tactile output generators that move a movable mass to generate tactile outputs), the tactile outputs are It can evoke different haptic sensations when holding or touching. While the user's senses are based on user perception of tactile output, most users will be able to discern changes in the waveform, frequency, and amplitude of tactile outputs generated by the device. Accordingly, the waveform, frequency, and amplitude may be adjusted to indicate to the user that different operations have been performed. As such, a given environment (eg, a user interface including graphical features and objects, a simulated physical environment with virtual boundaries and virtual objects, a real physical environment with physical boundaries and physical objects, and/or any of the foregoing properties of objects (eg, size, material, weight, stiffness, smoothness, etc.) in a combination of those of behaviors (eg, oscillation, displacement, acceleration, rotation, extension, etc.); and/or tactile outputs having tactile output patterns designed, selected and/or engineered to simulate interactions (eg, collision, adhesion, repulsion, attraction, friction, etc.) , will provide users with useful feedback that reduces input errors and increases the efficiency of user operation of the device. Additionally, tactile outputs are optionally generated to correspond to a simulated physical property, such as an input threshold or feedback not related to selection of an object. Such tactile outputs will, in some circumstances, provide users with useful feedback that reduces input errors and increases the efficiency of user operation of the device.

일부 실시예들에서, 적합한 촉각적 출력 패턴을 갖는 촉각적 출력은 사용자 인터페이스에서 또는 디바이스 내의 장면 뒤에서 관심 이벤트의 발생에 대한 큐(cue)로서의 역할을 한다. 관심 이벤트들의 예들은, 디바이스 상에 또는 사용자 인터페이스에 제공된 어포던스(예컨대, 실제 또는 가상 버튼, 또는 토글(toggle) 스위치)의 활성화, 요청된 동작의 성공 또는 실패, 사용자 인터페이스에서의 경계에 도달하거나 그를 횡단하는 것, 새로운 상태로의 진입, 객체들 사이의 입력 포커스의 스위칭, 새로운 모드의 활성화, 입력 임계치에 도달하거나 그를 횡단하는 것, 입력 또는 제스처의 유형의 검출 또는 인식 등을 포함한다. 일부 실시예들에서, 촉각적 출력들은, 방향전환(redirection) 또는 중단(interruption) 입력이 적시에 검출되지 않으면 발생하게 될 임박한 이벤트 또는 결과에 대한 경고 또는 경보로서의 역할을 하기 위해 제공된다. 촉각적 출력들은 또한, 다른 맥락에서, 사용자 경험을 풍부하게 하고/하거나, 시각 장애 또는 운동 신경 장애가 있거나 다른 액세스가능성 필요들이 있는 사용자들에 대한 디바이스의 액세스가능성을 개선하고/하거나, 사용자 인터페이스 및/또는 디바이스의 효율 및 기능을 개선하는 데 사용된다. 촉각적 출력들은 선택적으로, 오디오 출력들 및/또는 가시적인 사용자 인터페이스 변화들을 수반하는데, 이는, 추가로, 사용자가 사용자 인터페이스 및/또는 디바이스와 상호작용할 때 사용자의 경험을 향상시키고, 사용자 인터페이스 및/또는 디바이스의 상태에 관한 정보의 더 양호한 전달을 용이하게 하고, 입력 에러들을 감소시키고 디바이스의 사용자 동작의 효율을 증가시킨다.In some embodiments, a tactile output with a suitable tactile output pattern serves as a cue for the occurrence of an event of interest in a user interface or behind a scene within a device. Examples of events of interest include activation of an affordance (eg, a real or virtual button, or toggle switch) provided on a device or in a user interface, success or failure of a requested action, reaching or breaking a boundary in a user interface. traversing, entering a new state, switching input focus between objects, activating a new mode, reaching or crossing an input threshold, detecting or recognizing a type of input or gesture, and the like. In some embodiments, tactile outputs are provided to serve as a warning or alert for an impending event or result that would occur if a redirection or interruption input was not detected in a timely manner. Tactile outputs may also, in other contexts, enrich the user experience, improve accessibility of the device for users with visual or motor neuron impairments or other accessibility needs, and/or enhance user interface and/or or to improve the efficiency and functionality of the device. The tactile outputs optionally involve audio outputs and/or visual user interface changes, which further enhance the user's experience when the user interacts with the user interface and/or device, the user interface and/or or to facilitate better transfer of information about the state of the device, reduce input errors and increase the efficiency of user operation of the device.

도 4f 내지 도 4h는, 본 명세서에 논의되는 사용자 인터페이스들 및 방법들과 관련하여 기술되는 것들 및 앞서 언급된 것들과 같이, 다양한 목적들을 위해 그리고 다양한 시나리오들로 적합한 햅틱 피드백을 생성하기 위해 하나 이상의 변환들(예컨대, 변조, 증폭, 절단 등)을 통해 또는 있는 그대로, 개별적으로 또는 조합하여 사용될 수 있는 샘플 촉각적 출력 패턴들의 세트를 제공한다. 촉각적 출력들의 팔레트의 이러한 예는, 3개의 파형들 및 8개의 주파수들의 세트가 촉각적 출력 패턴들의 어레이를 생성하기 위해 어떻게 사용될 수 있는지를 나타낸다. 이들 도면에 도시된 촉각적 출력 패턴들에 더하여, 이러한 촉각적 출력 패턴들 각각은 선택적으로, 예를 들어, 각각 1.0, 0.75, 0.5, 및 0.25의 이득을 갖는 변형예들로 나타나 있는, 도 4i 내지 도 4k에서의 풀탭(FullTap) 80 ㎐, 풀탭 200 ㎐, 미니탭(MiniTap) 80 ㎐, 미니탭 200 ㎐, 마이크로탭(MicroTap) 80 ㎐, 및 마이크로탭 200 ㎐에 대해 도시된 바와 같이, 촉각적 출력 패턴에 대한 이득 값을 변경함으로써 진폭이 조정된다. 도 4i 내지 도 4k에 도시된 바와 같이, 촉각적 출력 패턴의 이득을 변경하는 것은, 패턴의 주파수를 변경하거나 파형의 형상을 변경하지 않고서 패턴의 진폭을 변경한다. 일부 실시예들에서, 촉각적 출력 패턴의 주파수를 변경하는 것은 또한 더 낮은 진폭을 야기하는데, 이는 일부 촉각적 출력 생성기들이 얼마나 많은 힘이 이동가능 질량체에 적용될 수 있는지에 의해 제한되고, 이에 따라 파형을 생성하기 위해 필요한 가속도가 촉각적 출력 생성기의 동작 힘 범위 밖의 힘을 요구하지 않는 것을 보장하기 위해 질량체의 더 높은 주파수 이동들이 더 낮은 진폭들로 제약되기 때문이다(예컨대, 230 ㎐, 270 ㎐, 및 300 ㎐에서의 풀탭의 피크 진폭들은 80 ㎐, 100 ㎐, 125 ㎐, 및 200 ㎐에서의 풀탭의 진폭들보다 더 낮다).4F-4H illustrate one or more diagrams for generating haptic feedback suitable for various purposes and in various scenarios, such as those previously mentioned and described in connection with the user interfaces and methods discussed herein. Provides a set of sample tactile output patterns that can be used either as is or through transformations (eg, modulation, amplification, truncation, etc.), individually or in combination. This example of a palette of tactile outputs shows how a set of three waveforms and eight frequencies can be used to create an array of tactile output patterns. In addition to the tactile output patterns shown in these figures, each of these tactile output patterns is optionally shown in Fig. 4i, which is shown in variants having, for example, gains of 1.0, 0.75, 0.5, and 0.25, respectively, respectively. Tactile output, as shown for FullTap 80 Hz, FullTap 200 Hz, MiniTap 80 Hz, MiniTap 200 Hz, MicroTap 80 Hz, and MicroTap 200 Hz in FIGS. By changing the gain value for the pattern, the amplitude is adjusted. 4I-4K, changing the gain of the tactile output pattern changes the amplitude of the pattern without changing the frequency of the pattern or changing the shape of the waveform. In some embodiments, changing the frequency of the tactile output pattern also results in a lower amplitude, which some tactile output generators are limited by how much force can be applied to the movable mass, and thus the waveform This is because higher frequency movements of the mass are constrained to lower amplitudes (e.g., 230 Hz, 270 Hz, and the peak amplitudes of the pull-tap at 300 Hz are lower than the amplitudes of the pull-tap at 80 Hz, 100 Hz, 125 Hz, and 200 Hz).

도 4f 내지 도 4k는 특정 파형을 갖는 촉각적 출력 패턴들을 도시한다. 촉각적 출력 패턴의 파형은, 이동가능 질량체가 그 촉각적 출력 패턴을 갖는 촉각적 출력을 생성하기 위해 거치는 시간 대비 중립 위치(예컨대, xzero)에 대한 물리적 변위들의 패턴을 나타낸다. 예를 들어, 도 4f에 도시된 제1 세트의 촉각적 출력 패턴들(예컨대, "풀탭"의 촉각적 출력 패턴들)은 각각 2개의 완전한 사이클들을 갖는 발진(예컨대, 중립 위치에서 시작하고 끝나며 중립 위치를 3번 횡단하는 발진)을 포함하는 파형을 갖는다. 도 4g에 도시된 제2 세트의 촉각적 출력 패턴들(예컨대, "미니탭"의 촉각적 출력 패턴들)은 각각 하나의 완전한 사이클을 포함하는 발진(예컨대, 중립 위치에서 시작하고 끝나며 중립 위치를 1번 횡단하는 발진)을 포함하는 파형을 갖는다. 도 4h에 도시된 제3 세트의 촉각적 출력 패턴들(예컨대, "마이크로탭"의 촉각적 출력 패턴들)은 각각 완전한 사이클의 1/2을 포함하는 발진(예컨대, 중립 위치에서 시작하고 끝나며 중립 위치를 횡단하지 않는 발진)을 포함하는 파형을 갖는다. 촉각적 출력 패턴의 파형은 또한, 촉각적 출력의 시작 및 종료 시에 이동가능 질량체의 점진적인 가속 및 감속을 나타내는 시작 버퍼 및 종료 버퍼를 포함한다. 도 4f 내지 도 4k에 도시된 예시적인 파형들은, 이동가능 질량체의 이동의 최대 및 최소 한계를 나타내는 xmin 및 xmax 값들을 포함한다. 더 큰 이동가능 질량체들을 갖는 더 큰 전자 디바이스들의 경우, 질량체의 이동의 더 큰 또는 더 작은 최소 및 최대 한계들이 있을 수 있다. 도 4f 내지 도 4k에 도시된 예들은 1 차원에서의 질량체의 이동을 기술하지만, 유사한 원리들이 2 또는 3 차원들에서의 이동가능 질량체의 이동에도 또한 적용될 것이다.4F-4K show tactile output patterns with specific waveforms. The waveform of the tactile output pattern represents a pattern of physical displacements relative to a neutral position (eg, xzero) versus time that the movable mass traverses to produce a tactile output having the tactile output pattern. For example, the first set of tactile output patterns shown in FIG. 4F (eg, "pull tap" tactile output patterns) each have an oscillation (eg, starting and ending in a neutral position and ending in a neutral position) with two complete cycles. oscillation that traverses the position 3 times). The second set of tactile output patterns shown in FIG. 4G (eg, the tactile output patterns of a “minitab”) each contain an oscillation (eg, starting and ending in a neutral position and ending in a neutral position of 1) comprising one complete cycle. oscillation that crosses once). The third set of tactile output patterns shown in FIG. 4H (eg, "microtap" tactile output patterns) each includes an oscillation (eg, starting and ending in a neutral position and ending in a neutral position) comprising half a full cycle. oscillations that do not traverse position). The waveform of the tactile output pattern also includes a start buffer and an end buffer indicating the gradual acceleration and deceleration of the movable mass at the beginning and end of the tactile output. The example waveforms shown in FIGS. 4F-4K include xmin and xmax values representing the maximum and minimum limits of movement of the movable mass. For larger electronic devices with larger movable masses, there may be larger or smaller minimum and maximum limits of movement of the mass. Although the examples shown in FIGS. 4F-4K describe the movement of a mass in one dimension, similar principles would also apply to the movement of a movable mass in two or three dimensions.

도 4f 내지 도 4k에 도시된 바와 같이, 각각의 촉각적 출력 패턴은 또한 햅틱 감각의 "피치"에 영향을 미치는 대응하는 특성 주파수를 갖는데, 이 햅틱 감각은 그 특성 주파수를 갖는 촉각적 출력으로부터 사용자에 의해 느껴진다. 연속적인 촉각적 출력의 경우, 특성 주파수는 촉각적 출력 생성기의 이동가능 질량체에 의해 주어진 기간 내에 완료되는 사이클들의 수(예컨대, 초당 사이클들)를 나타낸다. 개별 촉각적 출력의 경우, 개별 출력 신호(예컨대, 0.5, 1, 또는 2회의 사이클들을 가짐)가 생성되고, 특성 주파수 값은, 이동가능 질량체가 그 특성 주파수를 갖는 촉각적 출력을 생성하기 위해 얼마나 빨리 이동할 필요가 있는지를 특정한다. 도 4f 내지 도 4h에 도시된 바와 같이, 각각의 유형의 촉각적 출력에 대해(예컨대, 풀탭, 미니탭, 또는 마이크로탭과 같은, 각각의 파형에 의해 정의되는 바와 같음), 더 높은 주파수 값은 이동가능 질량체에 의한 더 빠른 이동(들), 및 그에 따라, 일반적으로, 촉각적 출력을 완료하기 위한 더 짧은 시간(예컨대, 개별 촉각적 출력에 대한 필요한 수의 사이클(들)을 완료하기 위한 시간 + 시작 및 종료 버퍼 시간을 포함함)에 대응한다. 예를 들어, 80 ㎐의 특성 주파수를 갖는 풀탭은 100 ㎐의 특성 주파수를 갖는 풀탭보다 완료하는 데 더 오래 걸린다(예컨대, 도 4f에서 35.4ms 대비 28.3ms). 또한, 주어진 주파수들에 대해, 각각의 주파수에서 그의 파형의 더 많은 사이클들을 갖는 촉각적 출력은, 동일한 각각의 주파수에서 그의 파형의 더 적은 사이클들을 갖는 촉각적 출력보다 완료하는 데 더 오래 걸린다. 예를 들어, 150 ㎐에서의 풀탭은 150 ㎐에서의 미니탭보다 완료하는 데 더 오래 걸리고(예컨대, 19.4ms 대비 12.8ms), 150 ㎐에서의 미니탭은 150 ㎐에서의 마이크로탭보다 완료하는 데 더 오래 걸린다(예컨대, 12.8ms 대비 9.4ms). 그러나, 상이한 주파수들을 갖는 촉각적 출력 패턴들의 경우, 이러한 규칙이 적용되지 않을 수 있다(예컨대, 더 많은 사이클들을 갖지만 더 높은 주파수를 갖는 촉각적 출력들은 더 적은 사이클들을 갖지만 더 낮은 주파수를 갖는 촉각적 출력들보다 완료하는 데 더 짧은 시간이 걸릴 수 있고, 그 반대로도 가능하다). 예를 들어, 300 ㎐에서, 풀탭은 미니탭만큼 오래 걸린다(예컨대, 9.9 ms).As shown in Figures 4F-4K, each tactile output pattern also has a corresponding characteristic frequency that affects the "pitch" of the haptic sensation, which is generated by the user from the tactile output with that characteristic frequency. is felt by In the case of a continuous tactile output, the characteristic frequency represents the number of cycles (eg, cycles per second) completed within a given period by the movable mass of the tactile output generator. In the case of a discrete tactile output, a separate output signal (eg, having 0.5, 1, or 2 cycles) is generated, and the characteristic frequency value is determined by how much the movable mass produces a tactile output having that characteristic frequency. Determine if you need to move quickly. 4F-4H , for each type of tactile output (eg, as defined by the respective waveform, such as pull-tap, mini-tap, or micro-tap), the higher frequency value shifts faster movement(s) by the capable mass, and thus, generally, a shorter time to complete the tactile output (eg, time to complete the required number of cycle(s) for the individual tactile output + including start and end buffer times). For example, a pull-tap with a characteristic frequency of 80 Hz takes longer to complete than a pull-tap with a characteristic frequency of 100 Hz (eg, 28.3 ms versus 35.4 ms in FIG. 4F ). Also, for given frequencies, a tactile output that has more cycles of its waveform at each frequency takes longer to complete than a tactile output that has fewer cycles of its waveform at the same respective frequency. For example, a pull-tap at 150 Hz takes longer to complete than a mini-tap at 150 Hz (eg, 12.8 ms versus 19.4 ms), and a mini-tap at 150 Hz takes longer to complete than a micro-tap at 150 Hz. takes (eg, 9.4 ms versus 12.8 ms). However, for tactile output patterns with different frequencies, this rule may not apply (eg, tactile outputs with more cycles but higher frequency have fewer cycles but with lower frequency tactile outputs with lower frequency). may take less time to complete than outputs, and vice versa). For example, at 300 Hz, a full-tap takes as long as a mini-tap (eg, 9.9 ms).

도 4f 내지 도 4k에 도시된 바와 같이, 촉각적 출력 패턴은 또한, 촉각적 신호에 포함되는 에너지의 양 또는 햅틱 감각의 "강도"에 영향을 미치는 특성 진폭을 갖는데, 이 햅틱 감각은 그 특성 진폭을 갖는 촉각적 출력을 통해 사용자에 의해 느껴질 수 있다. 일부 실시예들에서, 촉각적 출력 패턴의 특성 진폭은, 촉각적 출력을 생성할 때 중립 위치로부터 이동가능 질량체의 최대 변위를 나타내는 절대 또는 정규화된 값을 지칭한다. 일부 실시예들에서, 촉각적 출력 패턴의 특성 진폭은, 다양한 조건들(예컨대, 사용자 인터페이스 상황들 및 거동들에 기초하여 맞춤화됨) 및/또는 미리구성된 메트릭들(예컨대, 입력 기반 메트릭들, 및/또는 사용자 인터페이스 기반 메트릭들)에 따라, 예컨대, 고정된 또는 동적으로 결정된 이득 인자(예컨대, 0 내지 1의 값)에 의해 조정가능하다. 일부 실시예들에서, 입력 기반 메트릭(예컨대, 세기 변화 메트릭 또는 입력-속력 메트릭)은 촉각적 출력의 생성을 트리거하는 입력 동안 입력의 특성(예컨대, 누르기 입력에서의 접촉의 특성 세기의 변화율 또는 터치 감응형 표면을 가로지른 접촉의 이동 속도)을 측정한다. 일부 실시예들에서, 사용자 인터페이스 기반 메트릭(예컨대, 경계를 가로지른 속력 메트릭)은 촉각적 출력의 생성을 트리거하는 사용자 인터페이스 변화 동안 사용자 인터페이스 요소의 특성(예컨대, 사용자 인터페이스에서 숨겨진 또는 가시적인 경계를 가로지른 요소의 이동 속력)을 측정한다. 일부 실시예들에서, 촉각적 출력 패턴의 특성 진폭은 "엔벨로프(envelope)"에 의해 변조될 수 있고, 인접한 사이클들의 피크들은 상이한 진폭들을 가질 수 있는데, 여기서 앞서 나타낸 파형들 중 하나는, 촉각적 출력이 생성되고 있을 때 시간 경과에 따라 촉각적 출력의 부분들의 진폭을 점진적으로 조정하기 위해 시간 경과에 따라 변화하는 엔벨로프 파라미터(예컨대, 0과 1 사이)에 의한 곱셈에 의해 추가로 수정된다.4F-4K , the tactile output pattern also has a characteristic amplitude that affects the amount of energy contained in the tactile signal or the “strength” of the haptic sensation, which haptic sensation has its characteristic amplitude. can be felt by the user through a tactile output with In some embodiments, the characteristic amplitude of the tactile output pattern refers to an absolute or normalized value representing the maximum displacement of the movable mass from a neutral position when generating the tactile output. In some embodiments, the characteristic amplitude of the tactile output pattern is based on various conditions (eg, customized based on user interface situations and behaviors) and/or preconfigured metrics (eg, input-based metrics, and / or user interface based metrics), eg by a fixed or dynamically determined gain factor (eg a value of 0 to 1). In some embodiments, the input-based metric (eg, intensity change metric or input-velocity metric) is a characteristic of the input during the input that triggers generation of a tactile output (eg, a rate of change in intensity of a characteristic of a contact at a press input or a touch The speed of movement of the contact across the sensitive surface) is measured. In some embodiments, a user interface based metric (eg, a speed metric across a boundary) is a characteristic of a user interface element (eg, a hidden or visible boundary in the user interface) during a user interface change that triggers generation of a tactile output. Measure the speed of the element's movement across it). In some embodiments, the characteristic amplitude of the tactile output pattern may be modulated by an “envelope” and the peaks of adjacent cycles may have different amplitudes, wherein one of the waveforms shown above is a tactile The output is further modified by multiplication by a time-varying envelope parameter (eg, between 0 and 1) to gradually adjust the amplitude of portions of the tactile output over time as the output is being generated.

특정 주파수들, 진폭들 및 파형들만이 예시 목적을 위해 도 4f 내지 도 4k에서의 샘플 촉각적 출력 패턴들로 표현되지만, 다른 주파수들, 진폭들 및 파형들을 갖는 촉각적 출력 패턴들이 유사한 목적을 위해 사용될 수 있다. 예를 들어, 0.5 내지 4회의 사이클들을 갖는 파형들이 사용될 수 있다. 60 ㎐ 내지 400 ㎐ 범위의 다른 주파수들이 또한 사용될 수 있다.Although only specific frequencies, amplitudes, and waveforms are represented in the sample tactile output patterns in FIGS. 4F-4K for illustrative purposes, tactile output patterns with other frequencies, amplitudes and waveforms may be used for similar purposes. can be used For example, waveforms with 0.5 to 4 cycles may be used. Other frequencies ranging from 60 Hz to 400 Hz may also be used.

사용자 인터페이스들 및 연관된 프로세스들User Interfaces and Associated Processes

이제, 디스플레이, 터치 감응형 표면, (선택적으로) 촉각적 출력들을 생성하기 위한 하나 이상의 촉각적 출력 생성기들, 및 (선택적으로) 터치 감응형 표면과의 접촉들의 세기들을 검출하는 하나 이상의 센서들을 갖는 휴대용 다기능 디바이스(100) 또는 디바이스(300)와 같은 전자 디바이스 상에서 구현될 수 있는 사용자 인터페이스들("UI") 및 연관된 프로세스들의 실시예들에 대하여 주목한다.Now having a display, a touch-sensitive surface, (optionally) one or more tactile output generators for generating tactile outputs, and (optionally) one or more sensors to detect intensities of contacts with the touch-sensitive surface Attention is drawn to embodiments of user interfaces (“UI”) and associated processes that may be implemented on an electronic device, such as portable multifunction device 100 or device 300 .

도 5a 내지 도 5at는 일부 실시예들에 따른, 제1 사용자 인터페이스 영역을 디스플레이하는 것으로부터 제2 사용자 인터페이스 영역을 디스플레이하는 것으로 스위칭하는 동안 가상 객체의 표현을 디스플레이하기 위한 예시적인 사용자 인터페이스들을 예시한다. 이들 도면의 사용자 인터페이스들은 도 8a 내지 도 8e, 도 9a 내지 도 9d, 도 10a 내지 도 10d, 도 16a 내지 도 16g, 도 17a 내지 도 17d, 도 18a 내지 도 18i, 도 19a 내지 도 19h, 및 도 20a 내지 도 20f의 프로세스들을 포함하여 하기에 기술되는 프로세스들을 예시하는 데 사용된다. 용이한 설명을 위해, 실시예들의 일부는 터치 감응형 디스플레이 시스템(112)을 갖는 디바이스 상에서 수행되는 동작들을 참조하여 논의될 것이다. 이러한 실시예들에서, 포커스 선택자는, 선택적으로: 개개의 손가락 또는 스타일러스 접촉이거나, 손가락 또는 스타일러스 접촉에 대응하는 대표 지점(예컨대, 개개의 접촉의 중심, 또는 개개의 접촉과 연관된 지점)이거나, 또는 터치 감응형 디스플레이 시스템(112) 상에서 검출된 둘 이상의 접촉들의 중심이다. 그러나, 선택적으로, 도면에 도시된 사용자 인터페이스들을 디스플레이(450) 상에 포커스 선택자와 함께 디스플레이하면서, 터치 감응형 표면(451) 상에서의 접촉들을 검출하는 것에 응답하여 유사한 동작들이 디스플레이(450) 및 별개의 터치 감응형 표면(451)을 갖는 디바이스 상에서 수행된다.5A-5A illustrate example user interfaces for displaying a representation of a virtual object while switching from displaying a first user interface area to displaying a second user interface area, in accordance with some embodiments; . The user interfaces of these figures are shown in FIGS. 8A-8E, 9A-9D, 10A-10D, 16A-16G, 17A-17D, 18A-18I, 19A-19H, and FIGS. 20A-20F are used to illustrate the processes described below. For ease of description, some of the embodiments will be discussed with reference to operations performed on a device having a touch-sensitive display system 112 . In such embodiments, the focus selector is optionally: an individual finger or stylus contact, a representative point corresponding to the finger or stylus contact (eg, a center of an individual contact, or a point associated with the individual contact), or It is the center of two or more contacts detected on the touch-sensitive display system 112 . Optionally, however, similar operations in response to detecting contacts on the touch-sensitive surface 451 are performed on the display 450 and the separate is performed on a device having a touch-sensitive surface 451 of

도 5a는 도 5b 내지 도 5at와 관련하여 기술된 사용자 인터페이스들이 사용되는 실세계 콘텍스트를 예시한다.5A illustrates a real-world context in which the user interfaces described in connection with FIGS. 5B-5A are used.

도 5a는 테이블(5004)이 위치되는 물리적 공간(5002)을 예시한다. 디바이스(100)는 사용자에 의해 사용자의 손(5006)에 보유되어 있다.5A illustrates a physical space 5002 in which table 5004 is located. The device 100 is held by the user in the user's hand 5006 .

도 5b는 디스플레이(112) 상에 디스플레이되는 메시징 사용자 인터페이스(5008)를 예시한다. 메시징 사용자 인터페이스(5008)는 수신된 텍스트 메시지(5012)를 포함하는 메시지 말풍선(5010), 전송된 텍스트 메시지(5016)를 포함하는 메시지 말풍선(5014), 및 메시지 내에 수신된 가상 객체(예컨대, 가상 의자(5020)) 및 가상 의자(5020)가 (예컨대, 디바이스(100)의 하나 이상의 카메라들의 시야의 표현 내의) 증강 현실 뷰에서 관찰가능한 객체인 것을 나타내는 가상 객체 표시자(5022)를 포함하는 메시지 말풍선(5018)을 포함한다. 메시징 사용자 인터페이스(5008)는 또한, 메시지 입력을 디스플레이하도록 구성된 메시지 입력 영역(5024)을 포함한다.5B illustrates a messaging user interface 5008 displayed on display 112 . Messaging user interface 5008 includes a message bubble 5010 containing a received text message 5012 , a message bubble 5014 containing a sent text message 5016 , and a virtual object (eg, virtual object) received within the message. A message including a virtual object indicator 5022 indicating that the chair 5020) and the virtual chair 5020 are observable objects in an augmented reality view (eg, within a representation of the field of view of one or more cameras of the device 100 ). and a speech bubble 5018 . Messaging user interface 5008 also includes a message input area 5024 configured to display message input.

도 5c 내지 도 5g는 메시징 사용자 인터페이스(5008)의 일부분이 디바이스(100)의 하나 이상의 카메라들의 시야로 대체되게 하는 입력을 예시한다. 도 5c에서, 디바이스(100)의 터치 스크린(112)과의 접촉(5026)이 검출된다. 접촉의 특성 세기는, 세기 레벨 측정기(5028)에 의해 예시되는 바와 같이, 접촉 검출 세기 임계치(IT0) 초과이고 힌트 누르기(hint press) 세기 임계치(ITH) 미만이다. 도 5d에서, 세기 레벨 측정기(5028)에 의해 예시되는 바와 같이 힌트 누르기 세기 임계치(ITH)를 초과하는 접촉(5026)의 특성 세기의 증가는 메시지 말풍선(5018)의 영역이 증가되게 하였고, 가상 의자(5020)의 크기가 증가되게 하였고, 메시징 사용자 인터페이스(5008)가 (예컨대, 접촉의 특성 세기를 증가시키는 효과의 시각적 피드백을 사용자에게 제공하기 위해) 메시지 말풍선(5018) 뒤에서 블러링되기 시작하게 하였다. 도 5e에서, 세기 레벨 측정기(5028)에 의해 예시되는 바와 같이 가볍게 누르기(light press) 세기 임계치(ITL)를 초과하는 접촉(5026)의 특성 세기의 증가는 메시지 말풍선(5018)이 플래터(platter)(5030)로 대체되게 하였고, 가상 의자(5020)의 크기가 추가로 증가되게 하였고, 플래터(5030) 뒤에서 메시징 사용자 인터페이스(5008)의 블러링을 증가시켰다. 도 5f에서, 세기 레벨 측정기(5028)에 의해 예시되는 바와 같이 깊게 누르기(deep press) 세기 임계치(ITD)를 초과하는 접촉(5026)의 특성 세기의 증가는 메시징 사용자 인터페이스(5008)의 일부분을 디바이스(100)의 하나 이상의 카메라들의 시야로 대체하기 위한 기준들이 충족되었다는 것을 나타내기 위해 (5032로 예시된 바와 같은) 촉각적 출력을 디바이스(100)의 촉각적 출력 생성기들(167)이 출력하게 한다.5C-5G illustrate input that causes a portion of the messaging user interface 5008 to be replaced with the field of view of one or more cameras of the device 100 . In FIG. 5C , contact 5026 of device 100 with touch screen 112 is detected. The characteristic intensity of the contact is above the contact detection intensity threshold IT 0 and below the hint press intensity threshold IT H , as illustrated by the intensity level meter 5028 . In FIG. 5D , an increase in the characteristic intensity of the contact 5026 that exceeds the hint press intensity threshold IT H , as illustrated by the intensity level meter 5028 , causes the area of the message bubble 5018 to increase, and the virtual caused the chair 5020 to be increased in size, and the messaging user interface 5008 to begin to blur behind the message bubble 5018 (eg, to provide the user with visual feedback of the effect of increasing the characteristic intensity of the contact). did In FIG. 5E , an increase in the characteristic intensity of the contact 5026 above the light press intensity threshold IT L as illustrated by the intensity level meter 5028 causes the message bubble 5018 to platter. ) 5030 , the virtual chair 5020 was further increased in size, and the blurring of the messaging user interface 5008 behind the platter 5030 was increased. In FIG. 5F , an increase in the characteristic intensity of the contact 5026 above the deep press intensity threshold IT D as illustrated by the intensity level meter 5028 causes a portion of the messaging user interface 5008 to cause the tactile output generators 167 of the device 100 to output a tactile output (as illustrated by 5032 ) to indicate that criteria for replacement with the field of view of one or more cameras of the device 100 have been met. do.

일부 실시예들에서, 도 5f에 도시된 바와 같이 접촉(5026)의 특성 세기가 깊게 누르기 세기 임계치(ITD)에 도달하기 전에, 도 5c 내지 도 5e에 도시된 진행은 가역적이다. 예를 들어, 도 5d 및/또는 도 5e에 예시된 증가들 후에 접촉(5026)의 특성 세기를 감소시키는 것은, 접촉(5026)의 감소된 세기 레벨에 대응하는 인터페이스 상태가 디스플레이되게 할 것이다(예컨대, 도 5e에 도시된 바와 같은 인터페이스는 접촉의 감소된 특성 세기가 가볍게 누르기 세기 임계치(ITL) 초과라는 결정에 따라 도시되고, 도 5d에 도시된 바와 같은 인터페이스는 접촉의 감소된 특성 세기가 힌트 누르기 세기 임계치(ITH) 초과라는 결정에 따라 도시되고, 도 5c에 도시된 바와 같은 인터페이스는 접촉의 감소된 특성 세기가 힌트 누르기 세기 임계치(ITH) 미만이라는 결정에 따라 도시된다). 일부 실시예들에서, 도 5d 및/또는 도 5e에 예시된 증가들 후에 접촉(5026)의 특성 세기를 감소시키는 것은 도 5c에 도시된 바와 같은 인터페이스가 재디스플레이되게 할 것이다.In some embodiments, the progression shown in FIGS. 5C-5E is reversible before the characteristic intensity of contact 5026 reaches the deep press intensity threshold IT D , as shown in FIG. 5F . For example, decreasing the characteristic intensity of contact 5026 after the increases illustrated in FIGS. 5D and/or 5E will cause an interface state corresponding to the decreased intensity level of contact 5026 to be displayed (eg, , the interface as shown in Fig. 5e is shown in accordance with a determination that the reduced characteristic intensity of the contact is above the light press intensity threshold (IT L ), and the interface as shown in Fig. 5d shows that the reduced characteristic intensity of the contact is a hint shown in accordance with a determination that the press intensity threshold IT H is exceeded, and the interface as shown in FIG. 5C is shown in accordance with a determination that the reduced characteristic intensity of the contact is less than the hint press intensity threshold IT H ). In some embodiments, decreasing the characteristic intensity of contact 5026 after the increases illustrated in FIGS. 5D and/or 5E will cause the interface as shown in FIG. 5C to be redisplayed.

도 5f 내지 도 5j는 애니메이션화된 전이를 예시하는데, 애니메이션화된 전이 동안 메시징 사용자 인터페이스의 일부분이 디바이스(100)의 하나 이상의 카메라들(이하, "카메라(들)")의 시야로 대체된다. 도 5f로부터 도 5g로, 접촉(5026)은 터치 스크린(112)으로부터 리프트오프되었고, 가상 의자(5020)는 도 5i의 그의 최종 위치를 향해 회전하였다. 도 5g에서, 카메라(들)의 시야(5034)는 (점선들로 표시된 바와 같이) 플래터(5030) 내에서 뷰로 페이드 인(fade into view)되기 시작하였다. 도 5h에서, (예컨대, 카메라(들)에 의해 캡처된 바와 같은 물리적 공간(5002)의 뷰를 도시하는) 카메라(들)의 시야(5034)는 플래터(5030) 내에서 뷰로 페이드 인되는 것을 완료하였다. 도 5h로부터 도 5i로, 가상 의자(5020)는 도 5i의 그의 최종 위치를 향한 그의 회전을 계속하였다. 도 5i에서, 촉각적 출력 생성기들(167)은 적어도 하나의 평면(예컨대, 바닥 표면(5038))이 카메라(들)의 시야(5034) 내에서 검출되었다는 것을 나타내기 위해 (5036으로 예시된 바와 같은) 촉각적 출력을 출력하였다. 가상 의자(5020)는 (예컨대, 가상 객체가 바닥 표면(5038)과 같은 검출된 수평 표면 상에서 직립 배향으로 배치되도록 구성된다는 디바이스(100)에 의한 결정에 따라) 검출된 평면 상에 배치된다. 가상 의자(5020)의 크기는 메시징 사용자 인터페이스의 일부분이 디스플레이(112) 상의 카메라(들)의 시야(5034)의 표현으로 변환됨에 따라 디스플레이(112) 상에서 연속적으로 조정된다. 예를 들어, 카메라(들)의 시야(5034)에 도시된 바와 같은 물리적 공간(5002)에 대한 가상 의자(5020)의 축척은 카메라(들)의 시야(5034) 내에서의 가상 의자(5020)의 미리정의된 "실세계" 크기 및/또는 (테이블(5004)과 같은) 객체들의 검출된 크기에 기초하여 결정된다. 도 5j에서, 가상 의자(5020)는 카메라(들)의 시야(5034) 내의 검출된 바닥 표면에 대한 미리정의된 배향을 갖는 그의 최종 위치에 디스플레이된다. 일부 실시예들에서, 가상 의자(5020)의 초기 랜딩 위치(landing position)는 검출된 평면의 비점유 영역의 중심과 같은, 카메라(들)의 시야 내의 검출된 평면에 대한 미리정의된 위치이다. 일부 실시예들에서, 가상 의자(5020)의 초기 랜딩 위치는 접촉(5026)의 리프트오프 위치에 따라 결정된다(예컨대, 접촉(5026)의 리프트오프 위치는 증강 현실 환경으로 전이되기 위한 기준들이 도 5f에서 충족된 후에 터치 스크린(112)을 가로지르는 접촉(5026)의 이동으로 인해 접촉(5026)의 초기 터치다운 위치와 상이할 수 있다).5F-5J illustrate an animated transition during which a portion of the messaging user interface is replaced with the field of view of one or more cameras (hereinafter “camera(s)”) of device 100 . 5F to 5G , contact 5026 has been lifted off from touch screen 112 and virtual chair 5020 has rotated toward its final position in FIG. 5I . 5G , the field of view 5034 of the camera(s) has begun to fade into view within the platter 5030 (as indicated by the dashed lines). In FIG. 5H , the field of view 5034 of the camera(s) (eg, showing a view of physical space 5002 as captured by the camera(s)) completes fading into view within the platter 5030 . did. From FIG. 5H to FIG. 5I , virtual chair 5020 continued its rotation towards its final position in FIG. 5I . In FIG. 5I , tactile output generators 167 are configured as illustrated at 5036 to indicate that at least one plane (eg, floor surface 5038 ) has been detected within the field of view 5034 of the camera(s). same) tactile output was output. The virtual chair 5020 is placed on the detected plane (eg, according to a determination by the device 100 that the virtual object is configured to be placed in an upright orientation on the detected horizontal surface, such as the floor surface 5038 ). The size of the virtual chair 5020 is continuously adjusted on the display 112 as a portion of the messaging user interface is transformed into a representation of the field of view 5034 of the camera(s) on the display 112 . For example, the scale of the virtual chair 5020 with respect to physical space 5002 as shown in the field of view 5034 of the camera(s) is the virtual chair 5020 within the field of view 5034 of the camera(s). is determined based on a predefined “real-world” size of <RTI ID=0.0> In FIG. 5J , the virtual chair 5020 is displayed in its final position with a predefined orientation relative to the detected floor surface within the field of view 5034 of the camera(s). In some embodiments, the initial landing position of virtual chair 5020 is a predefined position relative to the detected plane within the field of view of the camera(s), such as the center of the unoccupied area of the detected plane. In some embodiments, the initial landing position of the virtual chair 5020 is determined according to the liftoff position of the contact 5026 (eg, the liftoff position of the contact 5026 is a criterion for transitioning to the augmented reality environment). may be different from the initial touchdown position of contact 5026 due to movement of contact 5026 across touch screen 112 after being satisfied at 5f).

도 5k 및 도 5l은 카메라(들)의 시야(5034)를 조정하는 디바이스(100)의 (예컨대, 사용자의 손(5006)에 의한) 이동을 예시한다. 디바이스(100)가 물리적 공간(5002)에 대해 이동됨에 따라, 카메라(들)의 디스플레이된 시야(5034)는 변경되고, 가상 의자(5020)는 카메라(들)의 디스플레이된 시야(5034) 내의 바닥 표면(5038)에 대해 동일한 위치에 그리고 동일한 배향으로 부착된 채로 유지된다.5K-5L illustrate movement (eg, by a user's hand 5006 ) of device 100 adjusting field of view 5034 of the camera(s). As the device 100 is moved relative to the physical space 5002 , the displayed field of view 5034 of the camera(s) changes, and the virtual chair 5020 is placed on the floor within the displayed field of view 5034 of the camera(s). It remains attached to the surface 5038 in the same position and in the same orientation.

도 5m 내지 도 5q는 카메라(들)의 디스플레이된 시야(5034) 내의 바닥 표면(5038)을 가로지르는 가상 의자(5020)의 이동을 야기하는 입력을 예시한다. 도 5n에서, 디바이스(100)의 터치 스크린(112)과의 접촉(5040)이 가상 의자(5020)에 대응하는 위치에서 검출된다. 도 5n 및 도 5o에서, 접촉(5040)이 화살표(5042)로 표시된 경로를 따라서 이동함에 따라, 가상 의자(5020)는 접촉(5040)에 의해 드래그된다. 가상 의자(5020)가 접촉(5040)에 의해 이동됨에 따라, 가상 의자(5020)의 크기는 카메라(들)의 시야(5034)에 도시된 바와 같이 물리적 공간(5002)에 대한 가상 의자(5020)의 축척을 유지하도록 변경된다. 예를 들어, 도 5n 내지 도 5p에서, 가상 의자(5020)가 카메라(들)의 시야(5034)의 전경으로부터 디바이스(100)에서 더 멀리 있고 카메라(들)의 시야(5034) 내의 테이블(5004)에 더 가까운 위치로 이동함에 따라, 가상 의자(5020)의 크기는 (예컨대, 카메라(들)의 시야(5034) 내의 테이블(5004)에 대한 의자의 축척이 유지되도록) 감소된다. 더욱이, 가상 의자(5020)가 접촉(5040)에 의해 이동됨에 따라, 카메라(들)의 시야(5034) 내에서 식별된 평면들이 강조된다. 예를 들어, 바닥 평면(5038)이 도 5o에서 강조되어 있다. 도 5o 및 도 5p에서, 접촉(5040)이 화살표(5044)로 표시된 경로를 따라서 이동함에 따라, 가상 의자(5020)는 접촉(5040)에 의해 계속 드래그된다. 도 5q에서, 접촉(5040)은 터치 스크린(112)으로부터 리프트오프되었다. 일부 실시예들에서, 도 5n 내지 도 5q에 도시된 바와 같이, 가상 의자(5020)가 접촉(5040)에 의해 바닥 표면(5038)을 가로질러 드래그되는 것처럼, 가상 의자(5020)의 이동 경로는 카메라의 시야(5034) 내의 바닥 표면(5038)에 의해 제약된다. 일부 실시예들에서, 도 5n 내지 도 5p와 관련하여 기술된 바와 같은 접촉(5040)은 도 5c 내지 도 5f와 관련하여 기술된 바와 같은 접촉(5026)의 연속이다(예컨대, 접촉(5026)의 리프트오프가 없고, 메시징 사용자 인터페이스(5008)의 일부분이 카메라(들)의 시야(5034)로 대체되게 하는 동일한 접촉이 또한 카메라(들)의 시야(5034) 내에서 가상 의자(5020)를 드래그한다).5M-5Q illustrate an input that causes movement of the virtual chair 5020 across the floor surface 5038 within the displayed field of view 5034 of the camera(s). In FIG. 5N , contact 5040 of device 100 with touch screen 112 is detected at a location corresponding to virtual chair 5020 . 5N and 5O , as contact 5040 moves along the path indicated by arrow 5042 , virtual chair 5020 is dragged by contact 5040 . As the virtual chair 5020 is moved by the contact 5040 , the size of the virtual chair 5020 changes with the virtual chair 5020 relative to the physical space 5002 as shown in the field of view 5034 of the camera(s). is changed to keep the scale of For example, in FIGS. 5N-5P , virtual chair 5020 is further from device 100 from the foreground of field of view 5034 of camera(s) and table 5004 within field of view 5034 of camera(s). ), the size of the virtual chair 5020 is reduced (eg, such that the scale of the chair with respect to the table 5004 within the field of view 5034 of the camera(s) is maintained). Moreover, as the virtual chair 5020 is moved by the contact 5040 , the identified planes within the field of view 5034 of the camera(s) are highlighted. For example, the floor plane 5038 is highlighted in FIG. 5O . 5O-5P , as contact 5040 moves along the path indicated by arrow 5044 , virtual chair 5020 continues to be dragged by contact 5040 . In FIG. 5Q , contact 5040 has been lifted off from touch screen 112 . In some embodiments, as shown in FIGS. 5N-5Q , as virtual chair 5020 is dragged across floor surface 5038 by contact 5040 , the path of movement of virtual chair 5020 is It is constrained by the bottom surface 5038 within the field of view 5034 of the camera. In some embodiments, contact 5040 as described with respect to FIGS. 5N-5P is a continuation of contact 5026 as described with respect to FIGS. 5C-5F (eg, of contact 5026 ). There is no liftoff, and the same contact that causes a portion of the messaging user interface 5008 to be replaced with the field of view 5034 of the camera(s) also drags the virtual chair 5020 within the field of view 5034 of the camera(s). ).

도 5q 내지 도 5u는 바닥 표면(5038)으로부터 카메라(들)의 시야(5034) 내에서 검출되는 상이한 평면(예컨대, 테이블 표면(5046))으로의 가상 의자(5020)의 이동을 야기하는 입력을 예시한다. 도 5r에서, 디바이스(100)의 터치 스크린(112)과의 접촉(5050)이 가상 의자(5020)에 대응하는 위치에서 검출된다. 도 5r 및 도 5s에서, 접촉(5048)이 화살표(5050)로 표시된 경로를 따라서 이동함에 따라, 가상 의자(5020)는 접촉(5048)에 의해 드래그된다. 가상 의자(5020)가 접촉(5048)에 의해 이동됨에 따라, 가상 의자(5020)의 크기는 카메라(들)의 시야(5034)에 도시된 바와 같이 물리적 공간(5002)에 대한 가상 의자(5020)의 축척을 유지하도록 변경된다. 추가적으로, 가상 의자(5020)가 접촉(5040)에 의해 이동됨에 따라, 테이블 표면 평면(5046)은 (예컨대, 도 5s에 도시된 바와 같이) 강조된다. 도 5s 및 도 5t에서, 접촉(5048)이 화살표(5052)로 표시된 경로를 따라서 이동함에 따라, 가상 의자(5020)는 접촉(5040)에 의해 계속 드래그된다. 도 5u에서, 접촉(5048)이 터치 스크린(112)으로부터 리프트오프되었고, 가상 의자(5020)가 이전과 동일한 방향을 향하는 직립 배향으로 테이블 표면 평면(5046) 상에 배치된다.5Q-5U illustrate an input that causes movement of the virtual chair 5020 from the floor surface 5038 to a different plane (eg, table surface 5046 ) that is detected within the field of view 5034 of the camera(s). exemplify In FIG. 5R , contact 5050 of device 100 with touch screen 112 is detected at a location corresponding to virtual chair 5020 . 5R and 5S , virtual chair 5020 is dragged by contact 5048 as contact 5048 moves along the path indicated by arrow 5050 . As the virtual chair 5020 is moved by the contact 5048 , the size of the virtual chair 5020 changes with the virtual chair 5020 relative to the physical space 5002 as shown in the field of view 5034 of the camera(s). is changed to keep the scale of Additionally, as virtual chair 5020 is moved by contact 5040 , table surface plane 5046 is highlighted (eg, as shown in FIG. 5S ). 5S and 5T , as contact 5048 moves along the path indicated by arrow 5052 , virtual chair 5020 continues to be dragged by contact 5040 . 5U , contact 5048 has been lifted off touch screen 112 and virtual chair 5020 is placed on table surface plane 5046 in an upright orientation facing the same direction as before.

도 5u 내지 도 5ad는, 카메라(들)의 시야(5034)가 디스플레이되는 것이 중지되게 하는, 가상 의자(5020)를 터치 스크린 디스플레이(112)의 에지로 드래그하는 입력을 예시한다. 도 5v에서, 디바이스(100)의 터치 스크린(112)과의 접촉(5054)이 가상 의자(5020)에 대응하는 위치에서 검출된다. 도 5v 및 도 5w에서, 접촉(5054)이 화살표(5056)로 표시된 경로를 따라서 이동함에 따라, 가상 의자(5020)는 접촉(5054)에 의해 드래그된다. 도 5w 및 도 5x에서, 접촉(5054)이 화살표(5058)로 표시된 경로를 따라서 이동함에 따라, 가상 의자(5020)는 접촉(5054)에 의해 도 5x에 도시된 위치로 계속 드래그된다.5U-5Ad illustrate input of dragging virtual chair 5020 to the edge of touch screen display 112, causing the camera(s)' field of view 5034 to stop being displayed. In FIG. 5V , contact 5054 of device 100 with touch screen 112 is detected at a location corresponding to virtual chair 5020 . 5V and 5W , virtual chair 5020 is dragged by contact 5054 as contact 5054 moves along the path indicated by arrow 5056 . 5W and 5X , as contact 5054 moves along the path indicated by arrow 5058 , virtual chair 5020 continues to be dragged by contact 5054 to the position shown in FIG. 5X .

도 5u 내지 도 5x에 예시된 접촉(5054)에 의한 입력은, 도 5y 내지 도 5ad에 도시된 바와 같이, 플래터(5030) 내에 카메라(들)의 시야(5034)를 디스플레이하는 것으로부터 카메라(들)의 시야(5034)를 디스플레이하는 것을 중지하고 메시징 사용자 인터페이스(5008)를 완전히 디스플레이하는 것으로 복귀하는 것으로의 전이를 야기한다. 도 5y에서, 카메라(들)의 시야(5034)는 플래터(5030) 내에서 페이드 아웃(fade out)되기 시작한다. 도 5y 및 도 5z에서, 플래터(5030)는 메시지 말풍선(5018)으로 전이된다. 도 5z에서, 카메라(들)의 시야(5034)는 더 이상 디스플레이되지 않는다. 도 5aa에서, 메시징 사용자 인터페이스(5008)는 블러링되는 것이 중지되고 메시지 말풍선(5018)의 크기는 (예컨대, 도 5b에 도시된 바와 같은) 메시지 말풍선(5018)의 원래 크기로 복귀된다.The input by contact 5054 illustrated in FIGS. 5U-5X , as shown in FIGS. 5Y-5A , is from displaying the camera(s) field of view 5034 within the platter 5030 to the camera(s) ) and causes a transition to stop displaying the field of view 5034 and return to fully displaying the messaging user interface 5008 . 5Y , the field of view 5034 of the camera(s) begins to fade out within the platter 5030 . 5Y and 5Z , platter 5030 transitions to message bubble 5018 . 5Z , the field of view 5034 of the camera(s) is no longer displayed. 5AA , the messaging user interface 5008 stops being blurred and the size of the message bubble 5018 returns to the original size of the message bubble 5018 (eg, as shown in FIG. 5B ).

도 5aa 내지 도 5ad는 가상 의자(5020)가 도 5aa의 접촉(5054)에 대응하는 위치로부터 (예컨대, 도 5b에 도시된 바와 같은) 메시징 사용자 인터페이스(5008) 내의 가상 의자(5020)의 원래 위치로 이동함에 따라 발생하는 가상 의자(5020)의 애니메이션화된 전이를 예시한다. 도 5ab에서, 접촉(5054)은 터치 스크린(112)으로부터 리프트오프되었다. 도 5ab 및 도 5ac에서, 가상 의자(5020)는 크기가 점진적으로 증가하고 도 5ad의 그의 최종 위치를 향해 회전한다.5AA-5A show the original position of the virtual chair 5020 within the messaging user interface 5008 (eg, as shown in FIG. 5B ) from the position where the virtual chair 5020 corresponds to the contact 5054 of FIG. 5AA . An animated transition of the virtual chair 5020 that occurs as it moves is illustrated. In FIG. 5A , contact 5054 has been lifted off from touch screen 112 . 5A-B and 5AC, virtual chair 5020 progressively increases in size and rotates toward its final position in FIG. 5A-D.

도 5b 내지 도 5ad에서, 가상 의자(5020)는 메시징 사용자 인터페이스(5008) 내에서 그리고 카메라(들)의 디스플레이된 시야(5034) 내에서 실질적으로 동일한 3차원 외관을 갖고, 가상 의자(5020)는 메시징 사용자 인터페이스(5008)를 디스플레이하는 것으로부터 카메라(들)의 시야(5034)를 디스플레이하는 것으로의 전이 동안 그리고 역방향 전이 동안 동일한 3차원 외관을 유지한다. 일부 실시예들에서, 가상 의자(5020)의 표현은 증강 현실 환경(예컨대, 카메라(들)의 디스플레이된 시야)에서와 상이한, 애플리케이션 사용자 인터페이스(예컨대, 메시징 사용자 인터페이스)에서의 외관을 갖는다. 예를 들어, 가상 의자(5020)는 선택적으로, 애플리케이션 사용자 인터페이스에서 2차원이거나 더 양식화된 외양(stylized look)을 갖는 한편 증강 현실 환경에서 3차원이고 더 현실적이고 질감을 갖는 외양을 가지며; 애플리케이션 사용자 인터페이스를 디스플레이하는 것과 증강 현실 환경을 디스플레이하는 것 사이의 전이 동안 가상 의자(5020)의 중간 외관들은 가상 의자(5020)의 2차원 외양과 3차원 외양 사이의 일련의 보간된 외관들이다.5B-5A, the virtual chair 5020 has substantially the same three-dimensional appearance within the messaging user interface 5008 and within the displayed field of view 5034 of the camera(s), and the virtual chair 5020 includes: It maintains the same three-dimensional appearance during the transition from displaying the messaging user interface 5008 to displaying the field of view 5034 of the camera(s) and during the reverse transition. In some embodiments, the representation of virtual chair 5020 has a different appearance in the application user interface (eg, messaging user interface) than in the augmented reality environment (eg, the displayed field of view of the camera(s)). For example, virtual chair 5020 optionally has a two-dimensional or more stylized look in the application user interface while three-dimensional and more realistic and textured appearance in an augmented reality environment; The intermediate appearances of virtual chair 5020 during the transition between displaying the application user interface and displaying the augmented reality environment are a series of interpolated appearances between the two-dimensional and three-dimensional appearance of virtual chair 5020 .

도 5ae는 인터넷 브라우저 사용자 인터페이스(5060)를 예시한다. 인터넷 브라우저 사용자 인터페이스(5060)는 웹 브라우저에 대한 URL/검색 입력을 디스플레이하도록 구성된 URL/검색 입력 영역(5062) 및 브라우저 제어부들(5064)(예컨대, 뒤로 가기 버튼 및 앞으로 가기 버튼을 포함하는 내비게이션 제어부들, 공유 인터페이스를 디스플레이하기 위한 공유 제어부, 북마크 인터페이스를 디스플레이하기 위한 북마크 제어부, 및 탭 인터페이스를 디스플레이하기 위한 탭 제어부)을 포함한다. 인터넷 브라우저 사용자 인터페이스(5060)는 또한 웹 객체들(5066, 5068, 5070, 5072, 5074, 5076)을 포함한다. 일부 실시예들에서, 각각의 웹 객체는 링크를 포함하여, 각각의 웹 객체 상에서의 탭 입력에 응답하여 웹 객체에 대응하는 링크된 인터넷 위치가 인터넷 브라우저 사용자 인터페이스(5060)에 디스플레이되게 한다(예컨대, 각각의 웹 객체의 디스플레이를 대체함). 웹 객체들(5066, 5068, 5072)은 가상 객체 표시자들(5078, 5080, 5082)에 의해 각각 표시되는 바와 같이 3차원 가상 객체들의 2차원 표현들을 포함한다. 웹 객체들(5070, 5074, 5076)은 2차원 이미지들을 포함한다(그러나, 웹 객체들(5070, 5074, 5076)의 2차원 이미지들은, 가상 객체 표시자들이 없는 것으로 나타내는 바와 같이, 3차원 가상 객체들에 대응하지 않는다). 웹 객체(5068)에 대응하는 가상 객체는 램프(lamp) 객체(5084)이다.5ae illustrates an internet browser user interface 5060 . Internet browser user interface 5060 includes a URL/search input area 5062 configured to display a URL/search input for a web browser and a navigation control including browser controls 5064 (eg, a back button and a forward button). , a sharing control unit for displaying a sharing interface, a bookmark control unit for displaying a bookmark interface, and a tab control unit for displaying a tab interface). Internet browser user interface 5060 also includes web objects 5066 , 5068 , 5070 , 5072 , 5074 , 5076 . In some embodiments, each web object includes a link such that, in response to a tap input on the respective web object, a linked internet location corresponding to the web object is displayed in internet browser user interface 5060 (eg, , replacing the display of each web object). Web objects 5066, 5068, and 5072 include two-dimensional representations of three-dimensional virtual objects as indicated by virtual object indicators 5078, 5080, and 5082, respectively. Web objects 5070, 5074, 5076 include two-dimensional images (however, the two-dimensional images of web objects 5070, 5074, 5076 are three-dimensional virtual, as indicated by the absence of virtual object indicators). does not correspond to objects). The virtual object corresponding to the web object 5068 is a lamp object 5084 .

도 5af 내지 도 5ah는 인터넷 브라우저 사용자 인터페이스(5060)의 일부분이 카메라(들)의 시야(5034)로 대체되게 하는 입력을 예시한다. 도 5af에서, 디바이스(100)의 터치 스크린(112)과의 접촉(5086)이 검출된다. 접촉의 특성 세기는, 세기 레벨 측정기(5028)에 의해 예시되는 바와 같이, 접촉 검출 세기 임계치(IT0) 초과이고 힌트 누르기 세기 임계치(ITH) 미만이다. 도 5ag에서, 세기 레벨 측정기(5028)에 의해 예시되는 바와 같이 가볍게 누르기 세기 임계치(ITL)를 초과하는 접촉(5026)의 특성 세기의 증가는 카메라(들)의 시야(5034)가 (예컨대, 가상 램프(5084)에 의해 오버레이(overlay)된) 웹 객체(5068) 내에 디스플레이되게 하였다. 도 5ah에서, 세기 레벨 측정기(5028)에 의해 예시되는 바와 같이 깊게 누르기 세기 임계치(ITD)를 초과하는 접촉(5086)의 특성 세기의 증가는 카메라(들)의 시야(5034)가 인터넷 브라우저 사용자 인터페이스(5060)의 더 큰 부분을 대체하게 하고(예컨대, 단지 URL/검색 입력 영역(5062) 및 브라우저 제어부들(5064)만 남김), 디바이스(100)의 촉각적 출력 생성기들(167)은 인터넷 브라우저 사용자 인터페이스(5060)의 일부분을 카메라(들)의 시야(5034)로 대체하기 위한 기준들이 충족되었다는 것을 나타내기 위해 (5088로 예시된 바와 같은) 촉각적 출력을 출력한다. 일부 실시예들에서, 도 5af 내지 도 5ah와 관련하여 기술된 입력에 응답하여, 카메라(들)의 시야(5034)는 터치 스크린 디스플레이(112) 상의 인터넷 브라우저 사용자 인터페이스(506)를 완전히 대체한다.5A-5A illustrate input that causes a portion of the Internet browser user interface 5060 to be replaced with the field of view 5034 of the camera(s). In FIG. 5A , contact 5086 of device 100 with touch screen 112 is detected. The characteristic intensity of the contact is above the contact detection intensity threshold IT 0 and below the hint press intensity threshold IT H , as illustrated by the intensity level meter 5028 . In FIG. 5Ag , an increase in the characteristic intensity of the contact 5026 above the light press intensity threshold IT L as illustrated by the intensity level meter 5028 indicates that the field of view 5034 of the camera(s) is (e.g., displayed within a web object 5068 (overlaid by a virtual ramp 5084). 5Ah , an increase in the characteristic intensity of the contact 5086 above the deep press intensity threshold IT D as illustrated by the intensity level meter 5028 indicates that the field of view 5034 of the camera(s) is allowing replacement of a larger portion of interface 5060 (eg, leaving only URL/search input area 5062 and browser controls 5064 ), tactile output generators 167 of device 100 provide access to the Internet Output a tactile output (as illustrated by 5088 ) to indicate that the criteria for replacing a portion of the browser user interface 5060 with the field of view 5034 of the camera(s) have been met. In some embodiments, in response to the input described with respect to FIGS. 5A-5A , the field of view 5034 of the camera(s) completely replaces the Internet browser user interface 506 on the touch screen display 112 .

도 5ai 내지 도 5am은 가상 램프(5084)의 이동을 야기하는 입력을 예시한다. 도 5ai 및 도 5aj에서, 접촉(5086)이 화살표(5090)로 표시된 경로를 따라서 이동함에 따라, 가상 램프(5084)는 접촉(5086)에 의해 드래그된다. 가상 램프(5084)가 접촉(5086)에 의해 이동됨에 따라, 가상 램프(5084)의 크기는 변경되지 않고, 가상 램프(5084)의 경로는 선택적으로, 카메라(들)의 시야 내에서 캡처되는 물리적 공간의 구조에 의해 제약되지 않는다. 가상 램프(5084)가 접촉(5086)에 의해 이동됨에 따라, 카메라(들)의 시야(5034) 내에서 식별된 평면들이 강조된다. 예를 들어, 바닥 평면(5038)은 가상 램프(5084)가 바닥 평면(5038) 위에서 이동함에 따라 도 5aj에서 강조된다. 도 5aj 및 도 5ak에서, 접촉(5086)이 화살표(5092)로 표시된 경로를 따라서 이동함에 따라, 가상 램프(5084)는 접촉(5086)에 의해 계속 드래그된다. 도 5ak 및 도 5al에서, 접촉(5086)이 화살표(5094)로 표시된 경로를 따라서 이동함에 따라, 가상 램프(5084)는 접촉(5086)에 의해 계속 드래그되고, 바닥 평면(5038)은 강조되는 것이 중지되고, 테이블 표면(5046)은 가상 램프(5084)가 테이블(5004) 위에서 이동함에 따라 강조된다. 도 5am에서, 접촉(5086)은 터치 스크린(112)으로부터 리프트오프되었다. 접촉(5086)이 리프트오프되었을 때, 가상 램프(5086)의 크기는 카메라(들)의 시야(5034) 내의 테이블(5004)에 대해 정확한 축척을 갖도록 조정되고, 가상 램프(5086)는 카메라들의 시야(5034) 내의 테이블 표면(5046) 상에서 직립 배향으로 배치된다.5ai-5am illustrate the input causing movement of the virtual ramp 5084. 5AI and 5aj , virtual ramp 5084 is dragged by contact 5086 as contact 5086 moves along the path indicated by arrow 5090 . As the virtual ramp 5084 is moved by the contact 5086 , the size of the virtual ramp 5084 does not change, and the path of the virtual ramp 5084 is, optionally, a physical image captured within the field of view of the camera(s). It is not constrained by the structure of space. As the virtual ramp 5084 is moved by the contact 5086 , the identified planes within the field of view 5034 of the camera(s) are highlighted. For example, floor plane 5038 is highlighted in FIG. 5AJ as virtual ramp 5084 moves over floor plane 5038 . 5aj and 5ak , virtual ramp 5084 continues to be dragged by contact 5086 as contact 5086 moves along the path indicated by arrow 5092 . 5AK and 5A, as contact 5086 moves along the path indicated by arrow 5094, virtual ramp 5084 continues to be dragged by contact 5086, and floor plane 5038 is highlighted. Stopped, table surface 5046 is highlighted as virtual ramp 5084 moves over table 5004 . In FIG. 5am , contact 5086 has been lifted off from touch screen 112 . When the contact 5086 is lifted off, the size of the virtual ramp 5086 is adjusted to have the correct scale with respect to the table 5004 within the field of view 5034 of the camera(s), and the virtual ramp 5086 is the camera's field of view 5034 . placed in an upright orientation on table surface 5046 in 5034 .

도 5am 내지 도 5aq는, 카메라(들)의 시야(5034)가 디스플레이되는 것이 중지되게 하고 인터넷 브라우저 사용자 인터페이스(5060)가 복원되게 하는, 가상 램프(5084)를 터치 스크린 디스플레이(112)의 에지로 드래그하는 입력을 예시한다. 도 5an에서, 디바이스(100)의 터치 스크린(112)과의 접촉(5096)이 가상 램프(5084)에 대응하는 위치에서 검출된다. 도 5an 및 도 5ao에서, 접촉(5096)이 화살표(5098)로 표시된 경로를 따라서 이동함에 따라, 가상 램프(5084)는 접촉(5096)에 의해 드래그된다. 도 5ao 및 도 5ap에서, 접촉(5054)이 화살표(5100)로 표시된 경로를 따라서 이동함에 따라, 가상 램프(5084)는 접촉(5096)에 의해 도 5ap에 도시된 위치로 계속 드래그된다. 도 5aq에서, 접촉(5096)은 터치 스크린(112)으로부터 리프트오프되었다.5am-5aq show a virtual ramp 5084 to the edge of the touch screen display 112 that causes the camera(s)'s field of view 5034 to stop being displayed and the internet browser user interface 5060 to be restored. Example of dragging input. In FIG. 5A , contact 5096 with touch screen 112 of device 100 is detected at a location corresponding to virtual ramp 5084 . 5A and 5AO , virtual ramp 5084 is dragged by contact 5096 as contact 5096 moves along the path indicated by arrow 5098 . 5AO and 5AP , as contact 5054 moves along the path indicated by arrow 5100 , virtual ramp 5084 continues to be dragged by contact 5096 to the position shown in FIG. 5AP . In FIG. 5AQ , contact 5096 has been lifted off from touch screen 112 .

도 5am 내지 도 5ap에 예시된 접촉(5096)에 의한 입력은, 도 5aq 내지 도 5at에 도시된 바와 같이, 카메라(들)의 시야(5034)를 디스플레이하는 것으로부터 카메라(들)의 시야(5034)를 디스플레이하는 것을 중지하고 인터넷 브라우저 사용자 인터페이스(5060)를 완전히 디스플레이하는 것으로 복귀하는 것으로의 전이를 야기한다. 도 5ar에서, 카메라(들)의 시야(5034)는 (점선들로 표시된 바와 같이) 페이드 아웃되기 시작한다. 도 5ar 내지 도 5at에서, 가상 램프(5084)는 크기가 증가하고, 인터넷 브라우저 사용자 인터페이스(5060) 내에서 그의 원래 위치를 향해 이동한다. 도 5as에서, 카메라(들)의 시야(5034)는 더 이상 디스플레이되지 않고, 인터넷 브라우저 사용자 인터페이스(5060)는 (점선들로 표시된 바와 같이) 페이드 인(fade in)되기 시작한다. 도 5at에서, 인터넷 브라우저 사용자 인터페이스(5060)는 완전히 디스플레이되고, 가상 램프(5084)는 인터넷 브라우저 사용자 인터페이스(5060) 내에서 그의 원래 크기 및 위치로 복귀되었다.The input by contact 5096 illustrated in FIGS. 5am-5ap is, as shown in FIGS. 5aq-5at, from displaying field of view 5034 of the camera(s) to field of view 5034 of the camera(s). ) and causes a transition to returning to fully displaying the Internet browser user interface 5060 . 5A , the field of view 5034 of the camera(s) begins to fade out (as indicated by the dashed lines). 5A-5A , virtual ramp 5084 increases in size and moves toward its original position within Internet browser user interface 5060 . 5A , the field of view 5034 of the camera(s) is no longer displayed and the internet browser user interface 5060 begins to fade in (as indicated by the dashed lines). In FIG. 5A , the Internet browser user interface 5060 is fully displayed and the virtual ramp 5084 has returned to its original size and position within the Internet browser user interface 5060 .

도 6a 내지 도 6aj는 일부 실시예들에 따른, 제1 사용자 인터페이스 영역 내에 가상 객체의 제1 표현을, 제2 사용자 인터페이스 영역 내에 가상 객체의 제2 표현을, 그리고 하나 이상의 카메라들의 시야의 표현과 함께 가상 객체의 제3 표현을 디스플레이하기 위한 예시적인 사용자 인터페이스들을 예시한다. 이들 도면의 사용자 인터페이스들은 도 8a 내지 도 8e, 도 9a 내지 도 9d, 도 10a 내지 도 10d, 도 16a 내지 도 16g, 도 17a 내지 도 17d, 도 18a 내지 도 18i, 도 19a 내지 도 19h, 및 도 20a 내지 도 20f의 프로세스들을 포함하여 하기에 기술되는 프로세스들을 예시하는 데 사용된다. 용이한 설명을 위해, 실시예들의 일부는 터치 감응형 디스플레이 시스템(112)을 갖는 디바이스 상에서 수행되는 동작들을 참조하여 논의될 것이다. 이러한 실시예들에서, 포커스 선택자는, 선택적으로: 개개의 손가락 또는 스타일러스 접촉이거나, 손가락 또는 스타일러스 접촉에 대응하는 대표 지점(예컨대, 개개의 접촉의 중심, 또는 개개의 접촉과 연관된 지점)이거나, 또는 터치 감응형 디스플레이 시스템(112) 상에서 검출된 둘 이상의 접촉들의 중심이다. 그러나, 유사한 동작들이, 선택적으로, 도면에 도시된 사용자 인터페이스들을 디스플레이(450) 상에 포커스 선택자와 함께 디스플레이하면서, 터치 감응형 표면(451) 상에서의 접촉들을 검출하는 것에 응답하여 디스플레이(450) 및 별개의 터치 감응형 표면(451)을 갖는 디바이스 상에서 수행된다.6A-6J illustrate a first representation of a virtual object within a first user interface area, a second representation of a virtual object within a second user interface area, and a representation of a field of view of one or more cameras, in accordance with some embodiments; Together illustrate example user interfaces for displaying a third representation of a virtual object. The user interfaces of these figures are shown in FIGS. 8A-8E, 9A-9D, 10A-10D, 16A-16G, 17A-17D, 18A-18I, 19A-19H, and FIGS. 20A-20F are used to illustrate the processes described below. For ease of description, some of the embodiments will be discussed with reference to operations performed on a device having a touch-sensitive display system 112 . In such embodiments, the focus selector is optionally: an individual finger or stylus contact, a representative point corresponding to the finger or stylus contact (eg, a center of an individual contact, or a point associated with the individual contact), or It is the center of two or more contacts detected on the touch-sensitive display system 112 . However, similar operations are performed with the display 450 and the display 450 in response to detecting contacts on the touch-sensitive surface 451, optionally displaying the user interfaces shown in the figure with a focus selector on the display 450. It is performed on a device having a separate touch-sensitive surface 451 .

도 6a는 수신된 텍스트 메시지(5012)를 포함하는 메시지 말풍선(5010), 전송된 텍스트 메시지(5016)를 포함하는 메시지 말풍선(5014), 및 메시지 내에 수신된 가상 객체(예컨대, 가상 의자(5020)) 및 가상 의자(5020)가 (예컨대, 디바이스(100)의 하나 이상의 카메라들의 디스플레이된 시야 내의) 증강 현실 뷰에서 관찰가능한 객체인 것을 나타내는 가상 객체 표시자(5022)를 포함하는 메시지 말풍선(5018)을 포함하는 메시징 사용자 인터페이스(5008)를 예시한다. 메시징 사용자 인터페이스(5008)는 도 5b와 관련하여 더 상세히 기술된다.6A shows a message bubble 5010 containing a received text message 5012, a message bubble 5014 containing a sent text message 5016, and a virtual object (eg, virtual chair 5020) received within the message. ) and a message balloon 5018 including a virtual object indicator 5022 indicating that the virtual chair 5020 is an observable object in the augmented reality view (eg, within the displayed field of view of one or more cameras of the device 100 ). It illustrates a messaging user interface 5008 that includes Messaging user interface 5008 is described in greater detail with respect to FIG. 5B .

도 6b 및 도 6c는 가상 의자(5020)의 회전을 야기하는 입력을 예시한다. 도 6b에서, 디바이스(100)의 터치 스크린(112)과의 접촉(6002)이 검출된다. 접촉(6002)은 화살표(6004)로 표시된 경로를 따라서 터치 스크린(112)을 가로질러 이동한다. 도 6c에서, 접촉의 이동에 응답하여, 메시징 사용자 인터페이스(5008)는 상향으로 스크롤되고(메시지 말풍선(5010)이 디스플레이로부터 스크롤 오프되게 하고, 메시지 말풍선(5014, 5018)이 상향으로 스크롤되게 하고, 추가 메시지 말풍선(6005)을 드러냄), 가상 의자(5020)는 회전된다(예컨대, 상향으로 기울어진다). 가상 의자(5020)의 회전의 크기 및 방향은 화살표(6004)로 표시된 경로를 따른 접촉(6002)의 이동에 대응한다. 도 6d에서, 접촉(6002)은 터치 스크린(112)으로부터 리프트오프되었다. 일부 실시예들에서, 메시지 말풍선(5018) 내에서의 가상 의자(5020)의 이러한 회전 거동은 가상 의자(5020)가 디바이스(100)의 카메라(들)의 시야를 포함하는 증강 현실 환경에서 관찰가능한 가상 객체라는 표시로서 사용된다.6B and 6C illustrate an input that causes the virtual chair 5020 to rotate. In FIG. 6B , contact 6002 of device 100 with touch screen 112 is detected. Contact 6002 travels across touch screen 112 along a path indicated by arrow 6004 . 6C, in response to movement of the contact, messaging user interface 5008 is scrolled upward (message balloon 5010 is scrolled off the display, message bubble 5014, 5018 is scrolled upward; revealing additional message bubble 6005), virtual chair 5020 is rotated (eg, tilted upward). The magnitude and direction of rotation of virtual chair 5020 corresponds to movement of contact 6002 along the path indicated by arrow 6004 . In FIG. 6D , contact 6002 has been lifted off from touch screen 112 . In some embodiments, this rotational behavior of virtual chair 5020 within message bubble 5018 is observable in an augmented reality environment where virtual chair 5020 includes the field of view of camera(s) of device 100 . Used as a representation of a virtual object.

도 6e 내지 도 6l은, 메시징 사용자 인터페이스(5008)가 스테이징 사용자 인터페이스(6010)로 대체되게 하고 후속하여 가상 의자(5020)의 배향을 변경하는 입력을 예시한다. 도 6e에서, 디바이스(100)의 터치 스크린(112)과의 접촉(6006)이 검출된다. 접촉의 특성 세기는, 세기 레벨 측정기(5028)에 의해 예시되는 바와 같이, 접촉 검출 세기 임계치(IT0) 초과이고 힌트 누르기 세기 임계치(ITH) 미만이다. 도 6f에서, 세기 레벨 측정기(5028)에 의해 예시되는 바와 같이 힌트 누르기 세기 임계치(ITH)를 초과하는 접촉(6006)의 특성 세기의 증가는 메시지 말풍선(5018)의 영역이 증가되게 하였고, 가상 의자(5020)의 크기가 증가되게 하였고, 메시징 사용자 인터페이스(5008)가 (예컨대, 접촉의 특성 세기를 증가시키는 효과의 시각적 피드백을 사용자에게 제공하기 위해) 메시지 말풍선(5018) 뒤에서 블러링되기 시작하게 하였다. 도 6g에서, 세기 레벨 측정기(5028)에 의해 예시되는 바와 같이 가볍게 누르기 세기 임계치(ITL)를 초과하는 접촉(6006)의 특성 세기의 증가는 메시지 말풍선(5018)이 플래터(6008)로 대체되게 하였고, 가상 의자(5020)의 크기가 추가로 증가되게 하였고, 플래터(6008) 뒤에서 메시징 사용자 인터페이스(5008)의 블러링을 증가시켰다. 도 6h에서, 세기 레벨 측정기(5028)에 의해 예시되는 바와 같이 깊게 누르기 세기 임계치(ITD)를 초과하는 접촉(6006)의 특성 세기의 증가는 메시징 사용자 인터페이스(5008)가 디스플레이되는 것이 중지되게 하고 스테이징 사용자 인터페이스(6010)의 (점선들로 표시된) 페이드 인을 개시한다. 추가적으로, 도 6h에 도시된 바와 같이, 깊게 누르기 세기 임계치(ITD)를 초과하는 접촉(6006)의 특성 세기의 증가는 메시징 사용자 인터페이스(5008)를 스테이징 사용자 인터페이스(6010)로 대체하기 위한 기준들이 충족되었다는 것을 나타내기 위해 (6012로 예시된 바와 같은) 촉각적 출력을 디바이스(100)의 촉각적 출력 생성기들(167)이 출력하게 한다.6E-6L illustrate input that causes messaging user interface 5008 to be replaced with staging user interface 6010 and subsequently changes the orientation of virtual chair 5020 . In FIG. 6E , contact 6006 of device 100 with touch screen 112 is detected. The characteristic intensity of the contact is above the contact detection intensity threshold IT 0 and below the hint press intensity threshold IT H , as illustrated by the intensity level meter 5028 . In FIG. 6F , an increase in the characteristic intensity of the contact 6006 that exceeds the hint press intensity threshold IT H as illustrated by the intensity level meter 5028 causes the area of the message bubble 5018 to increase, and the virtual caused the chair 5020 to be increased in size, and the messaging user interface 5008 to begin to blur behind the message bubble 5018 (eg, to provide the user with visual feedback of the effect of increasing the characteristic intensity of the contact). did In FIG. 6G , an increase in the characteristic intensity of contact 6006 above a light press intensity threshold IT L as illustrated by intensity level meter 5028 causes message bubble 5018 to be replaced by platter 6008 . This allowed the virtual chair 5020 to be further increased in size and increased the blurring of the messaging user interface 5008 behind the platter 6008 . In FIG. 6H , an increase in the characteristic intensity of the contact 6006 above the deep press intensity threshold IT D as illustrated by the intensity level meter 5028 causes the messaging user interface 5008 to stop being displayed and Initiates a fade in (indicated by dashed lines) of the staging user interface 6010 . Additionally, as shown in FIG. 6H , an increase in the characteristic intensity of the contact 6006 above the deep press intensity threshold IT D is a criterion for replacing the messaging user interface 5008 with the staging user interface 6010 . Cause the tactile output generators 167 of device 100 to output a tactile output (as illustrated by 6012 ) to indicate that it has been satisfied.

일부 실시예들에서, 도 6h에 도시된 바와 같이 접촉(6006)의 특성 세기가 깊게 누르기 세기 임계치(ITD)에 도달하기 전에, 도 6e 내지 도 6g에 도시된 진행은 가역적이다. 예를 들어, 도 6f 및/또는 도 6g에 예시된 증가들 후에 접촉(6006)의 특성 세기를 감소시키는 것은, 접촉(6006)의 감소된 세기 레벨에 대응하는 인터페이스 상태가 디스플레이되게 할 것이다(예컨대, 도 6g에 도시된 바와 같은 인터페이스는 접촉의 감소된 특성 세기가 가볍게 누르기 세기 임계치(ITL) 초과라는 결정에 따라 도시되고, 도 6f에 도시된 바와 같은 인터페이스는 접촉의 감소된 특성 세기가 힌트 누르기 세기 임계치(ITH) 초과라는 결정에 따라 도시되고, 도 6e에 도시된 바와 같은 인터페이스는 접촉의 감소된 특성 세기가 힌트 누르기 세기 임계치(ITH) 미만이라는 결정에 따라 도시된다). 일부 실시예들에서, 도 6f 및/또는 도 6g에 예시된 증가들 후에 접촉(6006)의 특성 세기를 감소시키는 것은 도 6e에 도시된 바와 같은 인터페이스가 재디스플레이되게 할 것이다.In some embodiments, the progression shown in FIGS. 6E-6G is reversible before the characteristic intensity of contact 6006 reaches the deep press intensity threshold IT D , as shown in FIG. 6H . For example, decreasing the characteristic intensity of contact 6006 after the increases illustrated in FIGS. 6F and/or 6G will cause an interface state corresponding to the decreased intensity level of contact 6006 to be displayed (eg, , the interface as shown in FIG. 6G is shown in accordance with a determination that the reduced characteristic intensity of the contact is above the light press intensity threshold IT L , and the interface as shown in FIG. shown in accordance with a determination that the press intensity threshold IT H is exceeded, and the interface as shown in FIG. 6E is shown in accordance with a determination that the reduced characteristic intensity of the contact is less than the hint press intensity threshold IT H ). In some embodiments, decreasing the characteristic intensity of contact 6006 after the increases illustrated in FIGS. 6F and/or 6G will cause the interface as shown in FIG. 6E to be redisplayed.

도 6i에서는, 스테이징 사용자 인터페이스(6010)가 디스플레이된다. 스테이징 사용자 인터페이스(6010)는 가상 의자(5020)가 디스플레이되는 스테이지(6014)를 포함한다. 도 6h로부터 도 6i로, 가상 의자(5020)는 도 6h의 가상 의자(5020)의 위치로부터 도 6i의 가상 의자(5020)의 위치로의 전이를 나타내도록 애니메이션화된다. 예를 들어, 가상 의자(5020)는 (예컨대, 가상 의자가 스테이지(6014)에 의해 지지되는 것으로 보이도록) 스테이지(6014)에 대해 미리정의된 위치, 배향 및/또는 거리로 회전된다. 스테이징 사용자 인터페이스(6010)는 또한 뒤로 가기 제어부(6016)를 포함하는데, 뒤로 가기 제어부는, (예컨대, 뒤로 가기 제어부(6016)에 대응하는 위치에서의 탭 입력에 의해) 활성화될 때, 이전에 디스플레이된 사용자 인터페이스(예컨대, 메시징 사용자 인터페이스(5008))가 재디스플레이되게 한다. 스테이징 사용자 인터페이스(6010)는 또한, 현재 디스플레이 모드(예컨대, 현재 디스플레이 모드는, 강조된 "3D" 표시자에 의해 표시된 바와 같이, 스테이징 사용자 인터페이스 모드임)를 나타내고, 활성화될 때, 선택된 디스플레이 모드로의 전이를 야기하는 토글 제어부(6018)를 포함한다. 예를 들어, 스테이징 사용자 인터페이스(6010)가 디스플레이되는 동안, 토글 제어부(6018)에 대응하는 위치(예컨대, 텍스트 "World"를 포함하는 토글 제어부(6018)의 일부분에 대응하는 위치)에서의 접촉에 의한 탭 입력은 스테이징 사용자 인터페이스(6010)가 카메라(들)의 시야로 대체되게 한다. 스테이징 사용자 인터페이스(6010)는 또한 (예컨대, 공유 인터페이스를 디스플레이하기 위한) 공유 제어부(6020)를 포함한다.In FIG. 6I , a staging user interface 6010 is displayed. The staging user interface 6010 includes a stage 6014 on which a virtual chair 5020 is displayed. 6H to 6I , virtual chair 5020 is animated to show a transition from the position of virtual chair 5020 in FIG. 6H to the position of virtual chair 5020 in FIG. 6I . For example, virtual chair 5020 is rotated to a predefined position, orientation, and/or distance relative to stage 6014 (eg, such that the virtual chair appears supported by stage 6014 ). Staging user interface 6010 also includes a rewind control 6016, which, when activated (eg, by a tap input at a location corresponding to rewind control 6016 ), previously displayed causes a user interface (eg, messaging user interface 5008) to be redisplayed. Staging user interface 6010 also indicates a current display mode (eg, the current display mode is a staging user interface mode, as indicated by the highlighted “3D” indicator) and, when activated, switches to the selected display mode. and a toggle control 6018 that causes a transition. For example, while staging user interface 6010 is displayed, contact at a location corresponding to toggle control 6018 (eg, a location corresponding to a portion of toggle control 6018 that includes the text "World") A tap input by the staging user interface 6010 causes the field of view of the camera(s) to be replaced. The staging user interface 6010 also includes a sharing control 6020 (eg, for displaying the sharing interface).

도 6j 내지 도 6l은 접촉(6006)의 이동에 의해 야기되는 스테이지(6014)에 대한 가상 의자(5020)의 회전을 예시한다. 도 6j 및 도 6k에서, 접촉(6006)이 화살표(6022)로 표시된 경로를 따라서 이동함에 따라, 가상 의자(5020)는 (예컨대, 접촉(6066)의 이동에 수직인 제1 축을 중심으로) 회전된다. 도 6k 및 도 6l에서, 접촉(6006)이 화살표(6024)로 표시된 경로를 따라서 그리고 후속하여 화살표(6025)로 표시된 경로를 따라서 이동함에 따라, 가상 의자(5020)는 (예컨대, 접촉(6066)의 이동에 수직인 제2 축을 중심으로) 회전된다. 도 6m에서, 접촉(6006)은 터치 스크린(112)으로부터 리프트오프되었다. 일부 실시예들에서, 도 6j 내지 도 6l에 도시된 바와 같이, 가상 의자(5020)의 회전은 스테이지(6014)의 표면에 의해 제약된다. 예를 들어, 가상 의자(5020)의 적어도 하나의 다리는 가상 의자의 회전(들) 동안 스테이지(6014)의 표면과 접촉 상태로 유지된다. 일부 실시예들에서, 스테이지(6014)의 표면은 가상 의자(5020)의 이동에 대한 특정 제약조건들을 부과하지 않으면서 가상 의자(5020)의 자유 회전 및 수직 병진에 대한 기준 프레임으로서의 역할을 한다.6J-6L illustrate rotation of virtual chair 5020 relative to stage 6014 caused by movement of contact 6006 . 6J and 6K , as contact 6006 moves along the path indicated by arrow 6022 , virtual chair 5020 rotates (eg, about a first axis perpendicular to movement of contact 6066 ). do. 6K and 6L , as contact 6006 moves along the path indicated by arrow 6024 and subsequently along the path indicated by arrow 6025 , virtual chair 5020 (e.g., contact 6066) is rotated about a second axis perpendicular to the movement of In FIG. 6M , contact 6006 has been lifted off from touch screen 112 . In some embodiments, as shown in FIGS. 6J-6L , rotation of virtual chair 5020 is constrained by the surface of stage 6014 . For example, at least one leg of the virtual chair 5020 remains in contact with the surface of the stage 6014 during rotation(s) of the virtual chair. In some embodiments, the surface of stage 6014 serves as a frame of reference for free rotation and vertical translation of virtual chair 5020 without imposing specific constraints on movement of virtual chair 5020 .

도 6n 및 도 6o는 가상 의자(5020)의 디스플레이된 크기를 조정하는 입력을 예시한다. 도 6n에서, 터치 스크린(112)과의 제1 접촉(6026) 및 제2 접촉(6030)이 검출된다. 제1 접촉(6026)은 화살표(6028)로 표시된 경로를 따라서 이동하고, 제1 접촉(6026)의 이동과 동시에, 제2 접촉(6030)은 화살표(6032)로 표시된 경로를 따라서 이동한다. 도 6n 및 도 6o에서, 제1 접촉(6026) 및 제2 접촉(6030)이 화살표(6028, 6032)로 표시된 경로들을 따라 각각 (예컨대, 디핀치 제스처로) 이동함에 따라, 가상 의자(5020)의 디스플레이된 크기가 증가한다. 도 6p에서, 제1 접촉(6030) 및 제2 접촉(6026)은 터치 스크린(112)으로부터 리프트오프되었고, 가상 의자(5020)는 접촉들(6026, 6030)의 리프트오프 후에 증가된 크기를 유지한다.6N and 6O illustrate input for adjusting the displayed size of virtual chair 5020. In FIG. 6N , a first contact 6026 and a second contact 6030 with the touch screen 112 are detected. The first contact 6026 travels along the path indicated by the arrow 6028 , and concurrently with the movement of the first contact 6026 , the second contact 6030 travels along the path indicated by the arrow 6032 . 6N and 6O , virtual chair 5020 as first contact 6026 and second contact 6030 move (eg, in a de-pinch gesture) along paths indicated by arrows 6028 and 6032 respectively (eg, in a de-pinch gesture). The displayed size of is increased. In FIG. 6P , first contact 6030 and second contact 6026 have been lifted off from touch screen 112 , and virtual chair 5020 maintains an increased size after liftoff of contacts 6026 , 6030 . do.

도 6q 내지 도 6u는 스테이징 사용자 인터페이스(6010)가 디바이스(100)의 하나 이상의 카메라들의 시야(6036)로 대체되게 하는 입력을 예시한다. 도 6q에서, 디바이스(100)의 터치 스크린(112)과의 접촉(6034)이 검출된다. 접촉의 특성 세기는, 세기 레벨 측정기(5028)에 의해 예시되는 바와 같이, 접촉 검출 세기 임계치(IT0) 초과이고 힌트 누르기 세기 임계치(ITH) 미만이다. 도 6r에서, 세기 레벨 측정기(5028)에 의해 예시되는 바와 같이 힌트 누르기 세기 임계치(ITH)를 초과하는 접촉(5026)의 특성 세기의 증가는 스테이징 사용자 인터페이스(6010)가 (점선들로 표시된 바와 같이) 가상 의자(5020) 뒤에서 블러링되기 시작하게 하였다. 도 6s에서, 세기 레벨 측정기(5028)에 의해 예시되는 바와 같이 가볍게 누르기 세기 임계치(ITL)를 초과하는 접촉(6034)의 특성 세기의 증가는 스테이징 사용자 인터페이스(6010)가 디스플레이되는 것이 중지되게 하였고 카메라(들)의 시야(6036)의 (점선들로 표시된) 페이드 인을 개시한다. 도 6t에서, 세기 레벨 측정기(5028)에 의해 예시되는 바와 같이 깊게 누르기 세기 임계치(ITD)를 초과하는 접촉(6034)의 특성 세기의 증가는 카메라(들)의 시야(6036)가 디스플레이되게 한다. 추가적으로, 도 6t에 도시된 바와 같이, 깊게 누르기 세기 임계치(ITD)를 초과하는 접촉(6034)의 특성 세기의 증가는 스테이징 사용자 인터페이스(6010)의 디스플레이를 카메라(들)의 시야(6036)의 디스플레이로 대체하기 위한 기준들이 충족되었다는 것을 나타내기 위해 (6038로 예시된 바와 같은) 촉각적 출력을 디바이스(100)의 촉각적 출력 생성기들(167)이 출력하게 한다. 도 6u에서, 접촉(6034)은 터치 스크린(112)으로부터 리프트오프되었다. 일부 실시예들에서, 도 6t에 도시된 바와 같이 접촉(6034)의 특성 세기가 깊게 누르기 세기 임계치(ITD)에 도달하기 전에, 도 6q 내지 도 6t에 도시된 진행은 가역적이다. 예를 들어, 접촉(6034)의 특성 세기를 도 6r 및/또는 도 6s에 예시된 증가들 후에 감소시키는 것은 접촉(6034)의 감소된 세기 레벨에 대응하는 인터페이스 상태가 디스플레이되게 할 것이다.6Q-6U illustrate input that causes the staging user interface 6010 to be replaced with a field of view 6036 of one or more cameras of the device 100 . In FIG. 6Q , contact 6034 of device 100 with touch screen 112 is detected. The characteristic intensity of the contact is above the contact detection intensity threshold IT 0 and below the hint press intensity threshold IT H , as illustrated by the intensity level meter 5028 . In FIG. 6R , an increase in the characteristic intensity of the contact 5026 above the hint press intensity threshold IT H as illustrated by the intensity level meter 5028 indicates that the staging user interface 6010 (as indicated by the dashed lines) same) the virtual chair 5020 was started to blur behind. In FIG. 6S , an increase in the characteristic intensity of the contact 6034 above the light press intensity threshold IT L , as illustrated by the intensity level meter 5028 , caused the staging user interface 6010 to stop being displayed. Initiate a fade in (indicated by dashed lines) of the field of view 6036 of the camera(s). In FIG. 6T , an increase in the characteristic intensity of the contact 6034 above the deep press intensity threshold IT D as illustrated by the intensity level meter 5028 causes the field of view 6036 of the camera(s) to be displayed. . Additionally, as shown in FIG. 6T , an increase in the characteristic intensity of the contact 6034 above the deep press intensity threshold IT D , causes the display of the staging user interface 6010 to change in the field of view 6036 of the camera(s). Cause the tactile output generators 167 of the device 100 to output a tactile output (as illustrated at 6038 ) to indicate that the criteria for replacement with a display have been met. In FIG. 6U , contact 6034 has been lifted off from touch screen 112 . In some embodiments, the progression shown in FIGS. 6Q-6T is reversible before the characteristic intensity of contact 6034 reaches the deep press intensity threshold IT D as shown in FIG. 6T , in some embodiments. For example, decreasing the characteristic intensity of contact 6034 after the increases illustrated in FIGS. 6R and/or 6S will cause an interface state corresponding to the decreased intensity level of contact 6034 to be displayed.

도 6q로부터 도 6u로, 가상 의자(5020)는 (예컨대, 가상 의자(5020)가 바닥 표면(5038)과 같은 검출된 수평 표면 상에서 직립 배향으로 배치되도록 구성된다는 디바이스(100)에 의한 결정에 따라) 검출된 평면 상에 배치되고, 가상 의자(5020)의 크기는 조정된다(예컨대, 카메라(들)의 시야(6036)에 도시된 바와 같은 물리적 공간(5002)에 대한 가상 의자(5020)의 축척은 카메라(들)의 시야(6036) 내에서의 가상 의자(5020)의 정의된 "실세계" 크기 및/또는 (테이블(5004)과 같은) 객체들의 검출된 크기에 기초하여 결정된다). (예컨대, 도 6j 및 도 6k와 관련하여 기술된 바와 같이) 스테이징 인터페이스(6010)가 디스플레이되는 동안 가상 의자(5020)의 회전에 의해 야기되는 가상 의자(5020)의 배향은 가상 의자(5020)가 스테이징 사용자 인터페이스(6010)로부터 카메라(들)의 시야(6036)로 전이됨에 따라 유지된다. 예를 들어, 바닥 표면(5038)에 대한 가상 의자(5020)의 배향은 스테이지(5014)의 표면에 대한 가상 의자(5020)의 최종 배향과 동일하다. 일부 실시예들에서, 스테이징 사용자 인터페이스에서의 가상 객체(5020)의 크기에 대한 조정은 가상 의자(5020)의 크기가 시야(6036) 내에서 물리적 공간(5002)의 크기에 대해 조정될 때 고려된다.6Q to 6U , virtual chair 5020 is (eg, according to a determination by device 100 that virtual chair 5020 is configured to be disposed in an upright orientation on a detected horizontal surface, such as floor surface 5038 ). ) is placed on the detected plane, and the size of the virtual chair 5020 is scaled (eg, a scale of the virtual chair 5020 with respect to the physical space 5002 as shown in the field of view 6036 of the camera(s)). is determined based on the defined "real-world" size of the virtual chair 5020 and/or the detected size of objects (such as table 5004) within the field of view 6036 of the camera(s). The orientation of the virtual chair 5020 caused by the rotation of the virtual chair 5020 while the staging interface 6010 is displayed (eg, as described with respect to FIGS. 6J and 6K ) is determined by the virtual chair 5020 maintained as it transitions from the staging user interface 6010 to the field of view 6036 of the camera(s). For example, the orientation of the virtual chair 5020 with respect to the floor surface 5038 is the same as the final orientation of the virtual chair 5020 with respect to the surface of the stage 5014 . In some embodiments, an adjustment to the size of the virtual object 5020 in the staging user interface is considered when the size of the virtual chair 5020 is adjusted to the size of the physical space 5002 within the field of view 6036 .

도 6v 내지 도 6y는 카메라(들)의 시야(6036)가 스테이징 사용자 인터페이스(6010)로 대체되게 하는 입력을 예시한다. 도 6v에서, 접촉(6040)에 의한 입력(예컨대, 탭 입력)이 토글 제어부(6018)에 대응하는 위치(예컨대, 텍스트 "3D"를 포함하는 토글 제어부(6018)의 일부분에 대응하는 위치)에서 검출된다. 도 6w 내지 도 6y에서, 접촉(6040)에 의한 입력에 응답하여, 카메라(들)의 시야(6036)는 (도 6w에서 점선들로 표시된 바와 같이) 페이드 아웃되고, 스테이징 사용자 인터페이스(6010)는 (도 6x에서 점선들로 표시된 바와 같이) 페이드 인되고, 스테이징 사용자 인터페이스(6010)는 (도 6y에 도시된 바와 같이) 완전히 디스플레이된다. 도 6v로부터 도 6y로, (예컨대, 가상 의자(5020)를 스테이징 사용자 인터페이스에 대한 미리정의된 위치 및 크기로 복귀시키도록) 가상 의자(5020)의 크기가 조정되고 가상 의자(5020)의 위치가 변경된다.6V-6Y illustrate input that causes a field of view 6036 of the camera(s) to be replaced with a staging user interface 6010 . In FIG. 6V , input by contact 6040 (eg, a tap input) corresponds to toggle control 6018 (eg, at a position corresponding to a portion of toggle control 6018 that includes the text “3D”). is detected 6W-6Y, in response to input by contact 6040, field of view 6036 of the camera(s) fades out (as indicated by dashed lines in FIG. 6W) and staging user interface 6010 It fades in (as indicated by the dashed lines in FIG. 6X ), and the staging user interface 6010 is fully displayed (as shown in FIG. 6Y ). 6V to 6Y , the virtual chair 5020 is resized (eg, to return the virtual chair 5020 to a predefined position and size for the staging user interface) and the position of the virtual chair 5020 is is changed

도 6z 내지 도 6ac는 스테이징 사용자 인터페이스(6010)가 메시징 사용자 인터페이스(5008)로 대체되게 하는 입력을 예시한다. 도 6z에서, 접촉(6042)에 의한 입력(예컨대, 탭 입력)이 뒤로 가기 제어부(6016)에 대응하는 위치에서 검출된다. 도 6aa 내지 도 6ac에서, 접촉(6042)에 의한 입력에 응답하여, 스테이징 사용자 인터페이스(6010)는 (도 6aa에서 점선들로 표시된 바와 같이) 페이드 아웃되고, 메시징 사용자 인터페이스(5008)는 (도 6ab에서 점선들로 표시된 바와 같이) 페이드 인되고, 메시징 사용자 인터페이스(5008)는 (도 6ac에 도시된 바와 같이) 완전히 디스플레이된다. 도 6z로부터 도 6ab로, 가상 의자(5020)의 크기, 배향, 및 위치는 (예컨대, 가상 의자(5020)를 메시징 사용자 인터페이스(5008)에 대한 미리정의된 위치, 크기 및 배향으로 복귀시키도록) 디스플레이 상에서 연속적으로 조정된다.6Z-6AC illustrate inputs that cause staging user interface 6010 to be replaced with messaging user interface 5008 . In FIG. 6Z , an input by contact 6042 (eg, a tap input) is detected at a location corresponding to a rewind control 6016 . 6AA-6AC, in response to input by contact 6042, staging user interface 6010 fades out (as indicated by dashed lines in FIG. 6AA) and messaging user interface 5008 (FIG. 6Ab) fade in (as indicated by the dashed lines in ), and the messaging user interface 5008 is fully displayed (as shown in FIG. 6Ac ). 6Z to 6A , the size, orientation, and position of the virtual chair 5020 (eg, to return the virtual chair 5020 to a predefined position, size, and orientation for the messaging user interface 5008) It is continuously adjusted on the display.

도 6ad 내지 도 6aj는 메시징 사용자 인터페이스(5008)가 카메라(들)의 시야(6036)로 대체되게 하는 입력(예컨대, 스테이징 사용자 인터페이스(6010)의 디스플레이를 바이패스함)을 예시한다. 도 6ad에서, 접촉(6044)이 가상 의자(5020)에 대응하는 위치에서 검출된다. 접촉(6044)에 의한 입력은, 긴 터치 제스처(긴 터치 제스처 동안 접촉(6044)은 가상 객체(5020)의 표현에 대응하는 터치 감응형 표면 상의 위치에서 적어도 미리정의된 임계 시간 동안 임계량 미만의 이동으로 유지됨)에 이은 (가상 의자(5020)를 상향으로 드래그하는) 상향 스와이프 제스처를 포함한다. 도 6ad 및 도 6ae에 도시된 바와 같이, 가상 의자(5020)는 접촉(6044)이 화살표(6046)로 표시되는 경로를 따라서 이동함에 따라 상향으로 드래그된다. 도 6ae에서, 메시징 사용자 인터페이스(5008)는 가상 의자(5020) 뒤에서 페이드 아웃된다. 도 6ae 및 도 6af에 도시된 바와 같이, 가상 의자(5020)는 접촉(6044)이 화살표(6048)로 표시되는 경로를 따라서 이동함에 따라 상향으로 계속 드래그된다. 도 6af에서, 카메라(들)의 시야(5036)는 가상 의자(5020) 뒤에서 페이드 인된다. 도 6ag에서, 긴 터치 제스처에 이은 상향 스와이프 제스처를 포함하는 접촉(6044)에 의한 입력에 응답하여, 카메라(들)의 시야(5036)는 완전히 디스플레이된다. 도 6ah에서, 접촉(6044)은 터치 스크린(112)으로부터 리프트오프되어 있다. 도 6ah 내지 도 6aj에서, 접촉(6044)의 리프트오프에 응답하여, 가상 의자(5020)는 (예컨대, 가상 의자(5020)가 더 이상 접촉에 의해 구속 또는 드래그되지 않기 때문에) 해제되고 평면(예컨대, 수평 (바닥) 표면이 가상 의자(5020)에 대응한다는 결정에 따라, 바닥 표면(5038))으로 낙하한다. 추가적으로, 도 6aj에 예시된 바와 같이, 디바이스(100)의 촉각적 출력 생성기들(167)은 가상 의자(5020)가 바닥 표면(5038) 상에 랜딩되었다는 것을 나타내기 위해 (6050으로 예시된 바와 같은) 촉각적 출력을 출력한다.6A-6J illustrate input that causes messaging user interface 5008 to be replaced with field of view 6036 of the camera(s) (eg, bypassing display of staging user interface 6010 ). In FIG. 6Ad , contact 6044 is detected at a location corresponding to virtual chair 5020 . An input by contact 6044 is a long touch gesture (during long touch gesture contact 6044 moves less than a threshold amount for at least a predefined threshold time at a location on the touch-sensitive surface corresponding to a representation of virtual object 5020 ). ) followed by an upward swipe gesture (drag virtual chair 5020 upward). 6A and 6A , virtual chair 5020 is dragged upward as contact 6044 moves along the path indicated by arrow 6046 . In FIG. 6ae , messaging user interface 5008 fades out behind virtual chair 5020 . 6A and 6A , the virtual chair 5020 continues to be dragged upward as the contact 6044 moves along the path indicated by the arrow 6048 . In FIG. 6A , the field of view 5036 of the camera(s) fades in behind the virtual chair 5020 . 6Ag , in response to input by contact 6044 comprising a long touch gesture followed by an upward swipe gesture, field of view 5036 of the camera(s) is fully displayed. In FIG. 6Ah , contact 6044 has been lifted off from touch screen 112 . 6A-6J , in response to liftoff of contact 6044 , virtual chair 5020 is released (eg, as virtual chair 5020 is no longer constrained or dragged by the contact) and flat (eg, , falls onto the floor surface 5038 ) upon determining that the horizontal (floor) surface corresponds to the virtual chair 5020 . Additionally, as illustrated in FIG. 6aj , tactile output generators 167 of device 100 are configured to indicate that virtual chair 5020 has landed on floor surface 5038 (as illustrated by 6050 ). ) to output a tactile output.

도 7a 내지 도 7p는 일부 실시예들에 따른, 아이템이 가상 3차원 객체에 대응한다는 것을 나타내는 시각적 표시를 갖는 아이템을 디스플레이하기 위한 예시적인 사용자 인터페이스들을 예시한다. 이들 도면의 사용자 인터페이스들은 도 8a 내지 도 8e, 도 9a 내지 도 9d, 도 10a 내지 도 10d, 도 16a 내지 도 16g, 도 17a 내지 도 17d, 도 18a 내지 도 18i, 도 19a 내지 도 19h, 및 도 20a 내지 도 20f의 프로세스들을 포함하여 하기에 기술되는 프로세스들을 예시하는 데 사용된다. 용이한 설명을 위해, 실시예들의 일부는 터치 감응형 디스플레이 시스템(112)을 갖는 디바이스 상에서 수행되는 동작들을 참조하여 논의될 것이다. 이러한 실시예들에서, 포커스 선택자는, 선택적으로: 개개의 손가락 또는 스타일러스 접촉이거나, 손가락 또는 스타일러스 접촉에 대응하는 대표 지점(예컨대, 개개의 접촉의 중심, 또는 개개의 접촉과 연관된 지점)이거나, 또는 터치 감응형 디스플레이 시스템(112) 상에서 검출된 둘 이상의 접촉들의 중심이다. 그러나, 유사한 동작들이, 선택적으로, 도면에 도시된 사용자 인터페이스들을 디스플레이(450) 상에 포커스 선택자와 함께 디스플레이하면서, 터치 감응형 표면(451) 상에서의 접촉들을 검출하는 것에 응답하여 디스플레이(450) 및 별개의 터치 감응형 표면(451)을 갖는 디바이스 상에서 수행된다.7A-7P illustrate example user interfaces for displaying an item with a visual indication that the item corresponds to a virtual three-dimensional object, in accordance with some embodiments. The user interfaces of these figures are shown in FIGS. 8A-8E, 9A-9D, 10A-10D, 16A-16G, 17A-17D, 18A-18I, 19A-19H, and FIGS. 20A-20F are used to illustrate the processes described below. For ease of description, some of the embodiments will be discussed with reference to operations performed on a device having a touch-sensitive display system 112 . In such embodiments, the focus selector is optionally: an individual finger or stylus contact, a representative point corresponding to the finger or stylus contact (eg, a center of an individual contact, or a point associated with the individual contact), or It is the center of two or more contacts detected on the touch-sensitive display system 112 . However, similar operations are performed with the display 450 and the display 450 in response to detecting contacts on the touch-sensitive surface 451, optionally displaying the user interfaces shown in the figure with a focus selector on the display 450. It is performed on a device having a separate touch-sensitive surface 451 .

도 7a는 애플리케이션들의 메뉴에 대한 사용자 인터페이스(400)가 디스플레이되는 동안 검출된 입력을 예시한다. 입력은 제1 사용자 인터페이스(예컨대, 인터넷 브라우저 사용자 인터페이스(5060))를 디스플레이하라는 요청에 대응한다. 도 7a에서, 접촉(7000)에 의한 입력(예컨대, 탭 입력)이 브라우저 모듈(147)에 대한 아이콘(420)에 대응하는 위치에서 검출된다. 입력에 응답하여, 인터넷 브라우저 사용자 인터페이스(5060)가 도 7b에 도시된 바와 같이 디스플레이된다.7A illustrates input detected while the user interface 400 for a menu of applications is displayed. The input corresponds to a request to display a first user interface (eg, Internet browser user interface 5060). 7A , input by contact 7000 (eg, a tap input) is detected at a location corresponding to icon 420 for browser module 147 . In response to the input, an internet browser user interface 5060 is displayed as shown in FIG. 7B .

도 7b는 (예컨대, 도 5ae와 관련하여 상세히 기술된 바와 같은) 인터넷 브라우저 사용자 인터페이스(5060)를 예시한다. 인터넷 브라우저 사용자 인터페이스(5060)는 웹 객체들(5066, 5068, 5070, 5072, 5074, 5076)을 포함한다. 웹 객체들(5066, 5068, 5072)은 가상 객체 표시자들(5078, 5080, 5082)에 의해 각각 표시되는 바와 같이 3차원 가상 객체들의 2차원 표현들을 포함한다. 웹 객체들(5070, 5074, 5076)은 2차원 이미지들을 포함한다(그러나, 웹 객체들(5070, 5074, 5076)의 2차원 이미지들은, 가상 객체 표시자들이 없는 것으로 나타내는 바와 같이, 3차원 가상 객체들에 대응하지 않는다).7B illustrates an Internet browser user interface 5060 (eg, as described in detail in connection with FIG. 5A). Internet browser user interface 5060 includes web objects 5066 , 5068 , 5070 , 5072 , 5074 , 5076 . Web objects 5066, 5068, and 5072 include two-dimensional representations of three-dimensional virtual objects as indicated by virtual object indicators 5078, 5080, and 5082, respectively. Web objects 5070, 5074, 5076 include two-dimensional images (however, the two-dimensional images of web objects 5070, 5074, 5076 are three-dimensional virtual, as indicated by the absence of virtual object indicators). does not correspond to objects).

도 7c 및 도 7d는 인터넷 브라우저 사용자 인터페이스(5060)의 병진(예컨대, 스크롤)을 야기하는 입력을 예시한다. 도 7b에서, 터치 스크린(112)과의 접촉(7002)이 검출된다. 도 7c 및 도 7d에서, 접촉(7002)이 화살표(7004)로 표시된 경로를 따라서 이동함에 따라, 웹 객체들(5066, 5068, 5070, 5072, 5074, 5076)은 상향으로 스크롤되어, 추가 웹 객체들(7003, 7005)을 드러낸다. 추가적으로, 접촉(7002)이 화살표(7004)로 표시된 경로를 따라서 이동함에 따라, 가상 객체 표시자들(5078, 5080, 5082)을 각각 포함하는 웹 객체들(5066, 5068, 5072) 내의 가상 객체들은 입력의 (상향 수직) 방향에 따라 회전한다(예컨대, 상향으로 기울어진다). 예를 들어, 가상 램프(5084)는 도 7c의 제1 배향으로부터 도 7d의 제2 배향으로 상향으로 기울어진다. 웹 객체들(5070, 5074, 5076)의 2차원 이미지들은 접촉이 인터넷 브라우저 사용자 인터페이스(5060)를 스크롤함에 따라 회전하지 않는다. 도 7e에서, 접촉(7002)은 터치 스크린(112)으로부터 리프트오프되었다. 일부 실시예들에서, 웹 객체들(5066, 5068, 5072)에 도시된 객체들의 회전 거동은 이들 웹 객체들이 증강 현실 환경에서 관찰가능한 대응하는 3차원 가상 객체들을 갖는다는 시각적 표시로서 사용되는 한편, 웹 객체들(5070, 5074, 5076)에 도시된 객체들의 그러한 회전 거동이 없는 것은 이들 웹 객체들이 증강 현실 환경에서 관찰가능한 대응하는 3차원 가상 객체들을 갖지 않는다는 시각적 표시로서 사용된다.7C-7D illustrate input that causes translation (eg, scrolling) of Internet browser user interface 5060 . In FIG. 7B , contact 7002 with touch screen 112 is detected. 7C and 7D , as contact 7002 moves along the path indicated by arrow 7004 , web objects 5066 , 5068 , 5070 , 5072 , 5074 , 5076 are scrolled upward, resulting in additional web objects Fields 7003 and 7005 are exposed. Additionally, as contact 7002 moves along the path indicated by arrow 7004 , virtual objects within web objects 5066 , 5068 , 5072 including virtual object indicators 5078 , 5080 , 5082 , respectively, become Rotates (eg tilts upwards) according to the (vertical upward) direction of the input. For example, virtual ramp 5084 is tilted upward from the first orientation of FIG. 7C to the second orientation of FIG. 7D . The two-dimensional images of web objects 5070 , 5074 , 5076 do not rotate as the contact scrolls through the internet browser user interface 5060 . In FIG. 7E , contact 7002 has been lifted off from touch screen 112 . In some embodiments, the rotational behavior of objects shown in web objects 5066, 5068, 5072 is used as a visual indication that these web objects have corresponding three-dimensional virtual objects observable in an augmented reality environment, while The absence of such rotational behavior of the objects shown in web objects 5070 , 5074 , 5076 is used as a visual indication that these web objects do not have corresponding three-dimensional virtual objects observable in the augmented reality environment.

도 7f 및 도 7g는 물리적 세계에 대한 디바이스(100)의 배향의 변경에 응답하여 가상 객체들이 디스플레이 상에서 회전하는 시차(parallax) 효과를 예시한다.7F and 7G illustrate a parallax effect in which virtual objects rotate on a display in response to a change in orientation of device 100 with respect to the physical world.

도 7f1은 디바이스(100)가 실질적으로 수직인 배향을 갖도록 사용자(7006)에 의해 사용자의 손(5006)에 보유되어 있는 디바이스(100)를 예시한다. 도 7f2는 디바이스(100)가 도 7f1에 예시된 배향으로 있을 때 디바이스(100)에 의해 디스플레이되는 바와 같은 인터넷 브라우저 사용자 인터페이스(5060)를 예시한다.7F1 illustrates device 100 being held by user 7006 in user's hand 5006 such that device 100 has a substantially vertical orientation. 7F2 illustrates an internet browser user interface 5060 as displayed by device 100 when device 100 is in the orientation illustrated in FIG. 7F1 .

도 7g1은 디바이스(100)가 실질적으로 수평인 배향을 갖도록 사용자(7006)에 의해 사용자의 손(5006)에 보유되어 있는 디바이스(100)를 예시한다. 도 7g2는 디바이스(100)가 도 7g1에 예시된 배향으로 있을 때 디바이스(100)에 의해 디스플레이되는 바와 같은 인터넷 브라우저 사용자 인터페이스(5060)를 예시한다. 도 7f2로부터 도 7g2로, 가상 객체 표시자들(5078, 5080, 5082)을 각각 포함하는 웹 객체들(5066, 5068, 5072) 내의 가상 객체들의 배향은 디바이스의 배향의 변경에 따라 회전한다(예컨대, 상향으로 기울어진다). 예를 들어, 가상 램프(5084)는, 물리적 공간 내에서의 디바이스 배향의 동시 변경에 따라, 도 7f2의 제1 배향으로부터 도 7g2의 제2 배향으로 상향으로 기울어진다. 웹 객체들(5070, 5074, 5076)의 2차원 이미지들은 디바이스의 배향이 변함에 따라 회전하지 않는다. 일부 실시예들에서, 웹 객체들(5066, 5068, 5072)에 도시된 객체들의 회전 거동은 이들 웹 객체들이 증강 현실 환경에서 관찰가능한 대응하는 3차원 가상 객체들을 갖는다는 시각적 표시로서 사용되는 한편, 웹 객체들(5070, 5074, 5076)에 도시된 객체들의 그러한 회전 거동이 없는 것은 이들 웹 객체들이 증강 현실 환경에서 관찰가능한 대응하는 3차원 가상 객체들을 갖지 않는다는 시각적 표시로서 사용된다.7G1 illustrates device 100 being held by user 7006 in user's hand 5006 such that device 100 has a substantially horizontal orientation. 7G2 illustrates an internet browser user interface 5060 as displayed by device 100 when device 100 is in the orientation illustrated in FIG. 7G1 . 7F2 to 7G2 , the orientation of virtual objects within web objects 5066 , 5068 , 5072 including virtual object indicators 5078 , 5080 , 5082 , respectively, rotates according to the change in orientation of the device (eg, , inclined upwards). For example, virtual ramp 5084 tilts upward from the first orientation of FIG. 7F2 to the second orientation of FIG. 7G2 , in response to a simultaneous change in device orientation within physical space. The two-dimensional images of web objects 5070, 5074, 5076 do not rotate as the orientation of the device changes. In some embodiments, the rotational behavior of objects shown in web objects 5066, 5068, 5072 is used as a visual indication that these web objects have corresponding three-dimensional virtual objects observable in an augmented reality environment, while The absence of such rotational behavior of the objects shown in web objects 5070 , 5074 , 5076 is used as a visual indication that these web objects do not have corresponding three-dimensional virtual objects observable in the augmented reality environment.

도 7h 내지 도 7l은 제2 사용자 인터페이스(예컨대, 메시징 사용자 인터페이스(5008))를 디스플레이하라는 요청에 대응하는 입력을 예시한다. 도 7h에서, 접촉(7008)이 디스플레이(112)의 하부 에지에 대응하는 위치에서 검출된다. 도 7h 및 도 7i에서, 접촉(7008)은 화살표(7010)로 표시된 경로를 따라서 상향으로 이동한다. 도 7i 및 도 7j에서, 접촉(7008)은 화살표(7012)로 표시된 경로를 따라서 상향으로 계속 이동한다. 도 7h 내지 도 7j에서, 접촉(7008)이 디스플레이(112)의 하부 에지로부터 상향으로 이동함에 따라, (예컨대, 접촉(7008)에 의한 상향 에지 스와이프 제스처에 응답하여), 도 7i에 도시된 바와 같이, 인터넷 브라우저 사용자 인터페이스(5060)의 크기는 감소하고, 도 7j에서, 멀티태스킹 사용자 인터페이스(7012)가 디스플레이된다. 멀티태스킹 사용자 인터페이스(7012)는 보유된 상태(retained state)들(예컨대, 보유된 상태는 각각의 애플리케이션이 디바이스 상에서 실행된 전경 애플리케이션이었을 때 각각의 애플리케이션의 마지막 상태임)을 갖는 다양한 애플리케이션들 및 다양한 제어 인터페이스들(예컨대, 도 7j에 예시된 바와 같은, 제어 센터 사용자 인터페이스(7014), 인터넷 브라우저 사용자 인터페이스(5060), 및 메시징 사용자 인터페이스(5008)) 중으로부터의 인터페이스의 선택을 허용하도록 구성된다. 도 7k에서, 접촉(7008)은 터치 스크린(112)으로부터 리프트오프되어 있다. 도 7l에서, 접촉(7016)에 의한 입력(예컨대, 탭 입력)이 메시징 사용자 인터페이스(5008)에 대응하는 위치에서 검출된다. 접촉(7016)에 의한 입력에 응답하여, 도 7m에 예시된 바와 같이, 메시징 사용자 인터페이스(5008)가 디스플레이된다.7H-7L illustrate input corresponding to a request to display a second user interface (eg, messaging user interface 5008). In FIG. 7H , contact 7008 is detected at a location corresponding to the lower edge of display 112 . 7H and 7I , contact 7008 travels upward along the path indicated by arrow 7010 . 7I and 7J , contact 7008 continues to travel upward along the path indicated by arrow 7012 . 7H-7J , as contact 7008 moves upward from the lower edge of display 112 (eg, in response to an upward edge swipe gesture by contact 7008 ), as shown in FIG. 7I , As such, the size of the Internet browser user interface 5060 is reduced, and in FIG. 7J , the multitasking user interface 7012 is displayed. The multitasking user interface 7012 can be used for various applications and various configured to allow selection of an interface from among the control interfaces (eg, control center user interface 7014 , internet browser user interface 5060 , and messaging user interface 5008 as illustrated in FIG. 7J ). In FIG. 7K , contact 7008 has been lifted off from touch screen 112 . In FIG. 7L , input by contact 7016 (eg, a tap input) is detected at a location corresponding to messaging user interface 5008 . In response to input by contact 7016 , messaging user interface 5008 is displayed, as illustrated in FIG. 7M .

도 7m은 메시지 내에 수신된 가상 객체(예컨대, 가상 의자(5020)) 및 가상 의자(5020)가 가상 3차원 객체(예컨대, 증강 현실 뷰에서 관찰가능한 객체 및/또는 상이한 각도들로부터 관찰가능한 객체)라는 것을 나타내는 가상 객체 표시자(5022)를 포함하는 메시지 말풍선(5018)을 포함하는 (예컨대, 도 5b와 관련하여 더 상세히 기술된 바와 같은) 메시징 사용자 인터페이스(5008)를 예시한다. 메시징 사용자 인터페이스(5008)는 또한, 전송된 텍스트 메시지를 포함하는 메시지 말풍선(6005) 및 이모지(emoji)(7020)를 포함하는 수신된 텍스트 메시지를 포함하는 메시지 말풍선(7018)을 포함한다. 이모지(7020)는 가상 3차원 객체에 대응하지 않는 2차원 이미지이다. 이러한 이유로, 이모지(7020)는 가상 객체 표시자 없이 디스플레이된다.7M shows that a virtual object (eg, virtual chair 5020) and virtual chair 5020 received in a message are virtual three-dimensional objects (eg, an object observable in an augmented reality view and/or an object observable from different angles). illustrates a messaging user interface 5008 (eg, as described in greater detail with respect to FIG. 5B ) including a message bubble 5018 including a virtual object indicator 5022 indicating that Messaging user interface 5008 also includes a message bubble 6005 containing a sent text message and a message bubble 7018 containing a received text message containing an emoji 7020. The emoji 7020 is a two-dimensional image that does not correspond to a virtual three-dimensional object. For this reason, the emoji 7020 is displayed without the virtual object indicator.

도 7n은 지도(7024), 제1 관심 지점에 대한 관심 지점 정보 영역(7026), 및 제2 관심 지점에 대한 관심 지점 정보 영역(7032)을 포함하는 지도 사용자 인터페이스(7022)를 예시한다. 예를 들어, 제1 관심 지점 및 제2 관심 지점은 검색 입력 영역(7025) 내의 검색 엔트리 "Apple"에 대응하는, 지도(7024)에 의해 도시된 영역 내의 또는 그에 근접한 검색 결과들이다. 제1 관심 지점 정보 영역(7026)에서, 제1 관심 지점 객체(7028)는 제1 관심 지점 객체(7028)가 가상 3차원 객체인 것을 나타내는 가상 객체 표시자(7030)와 함께 디스플레이된다. 제2 관심 지점 정보 영역(7032)에서, 제2 관심 지점 객체(7034)는 제2 관심 지점 객체(7034)가 증강 현실 뷰에서 관찰가능한 가상 3차원 객체에 대응하지 않기 때문에 가상 객체 표시자 없이 디스플레이된다.7N illustrates a map user interface 7022 that includes a map 7024 , a point of interest information area 7026 for a first point of interest, and a point of interest information area 7032 for a second point of interest. For example, the first point of interest and the second point of interest are search results within or proximate to the area shown by map 7024 that correspond to the search entry "Apple" within search input area 7025 . In the first point of interest information area 7026 , the first point of interest object 7028 is displayed along with a virtual object indicator 7030 indicating that the first point of interest object 7028 is a virtual three-dimensional object. In the second point of interest information area 7032 , the second point of interest object 7034 is displayed without a virtual object indicator because the second point of interest object 7034 does not correspond to an observable virtual three-dimensional object in the augmented reality view. do.

도 7o는 파일 관리 제어부(7038), 파일 관리 검색 입력 영역(7040), 제1 파일(예컨대, PDF(portable document format) 파일)에 대한 파일 정보 영역(7042), 제2 파일(예컨대, 사진 파일)에 대한 파일 정보 영역(7044), 제3 파일(예컨대, 가상 의자 객체)에 대한 파일 정보 영역(7046), 및 제4 파일(예컨대, PDF 파일)에 대한 파일 정보 영역(7048)을 포함하는 파일 관리 사용자 인터페이스(7036)를 예시한다. 제3 파일 정보 영역(7046)은 제3 파일이 가상 3차원 객체에 대응한다는 것을 나타내기 위해 파일 정보 영역(7046)의 파일 미리보기 객체(7045)에 인접하게 디스플레이된 가상 객체 표시자(7050)를 포함한다. 제1 파일 정보 영역(7042), 제2 파일 정보 영역(7044), 및 제4 파일 정보 영역(7048)은 이러한 파일 정보 영역들에 대응하는 파일들이 증강 현실 환경에서 관찰가능한 대응하는 가상 3차원 객체들을 갖지 않기 때문에 가상 객체 표시자들 없이 디스플레이된다.7O shows a file management control unit 7038, a file management search input area 7040, a file information area 7042 for a first file (eg, a portable document format (PDF) file), and a second file (eg, a photo file). ), including a file information area 7044 for a third file (eg, a virtual chair object), and a file information area 7048 for a fourth file (eg, a PDF file). A file management user interface 7036 is illustrated. The third file information area 7046 is a virtual object indicator 7050 displayed adjacent the file preview object 7045 of the file information area 7046 to indicate that the third file corresponds to a virtual three-dimensional object. includes The first file information area 7042 , the second file information area 7044 , and the fourth file information area 7048 are the corresponding virtual three-dimensional objects in which files corresponding to these file information areas are observable in the augmented reality environment. They are displayed without virtual object indicators because they do not have them.

도 7p는 이메일 내비게이션 제어부들(7054), 이메일 정보 영역(7056), 및 제1 첨부물(7060)의 표현 및 제2 첨부물(7062)의 표현을 포함하는 이메일 콘텐츠 영역(7058)을 포함하는 이메일 사용자 인터페이스(7052)를 도시한다. 제1 첨부물(7060)의 표현은 제1 첨부물이 증강 현실 환경에서 관찰가능한 가상 3차원 객체인 것을 나타내는 가상 객체 표시자(7064)를 포함한다. 제2 첨부물(7062)은 제2 첨부물이 증강 현실 환경에서 관찰가능한 가상 3차원 객체가 아니기 때문에 가상 객체 표시자 없이 디스플레이된다.7P shows an email user including email navigation controls 7054 , an email information area 7056 , and an email content area 7058 that includes a representation of a first attachment 7060 and a representation of a second attachment 7062 . Interface 7052 is shown. The representation of the first attachment 7060 includes a virtual object indicator 7064 indicating that the first attachment is a virtual three-dimensional object observable in the augmented reality environment. The second attachment 7062 is displayed without the virtual object indicator because the second attachment is not an observable virtual three-dimensional object in the augmented reality environment.

도 8a 내지 도 8e는 일부 실시예들에 따른, 제1 사용자 인터페이스 영역을 디스플레이하는 것으로부터 제2 사용자 인터페이스 영역을 디스플레이하는 것으로 스위칭하는 동안 가상 객체의 표현을 디스플레이하는 방법(800)을 예시하는 흐름도들이다. 방법(800)은 디스플레이, 터치 감응형 표면, 및 하나 이상의 카메라들(예컨대, 디스플레이 및 터치 감응형 표면과 반대편인 디바이스의 면 상의 하나 이상의 후방 카메라들)을 갖는 전자 디바이스(예컨대, 도 3의 디바이스(300), 또는 도 1a의 휴대용 다기능 디바이스(100))에서 수행된다. 일부 실시예들에서, 디스플레이는 터치 스크린 디스플레이이고, 터치 감응형 표면은 디스플레이 상에 있거나 그와 통합된다. 일부 실시예들에서, 디스플레이는 터치 감응형 표면과는 별개이다. 방법(800)에서의 일부 동작들이 선택적으로 조합되고/되거나, 일부 동작들의 순서가 선택적으로 변경된다.8A-8E are flow diagrams illustrating a method 800 of displaying a representation of a virtual object while switching from displaying a first user interface region to displaying a second user interface region, in accordance with some embodiments. admit. The method 800 includes an electronic device (eg, the device of FIG. 3 ) having a display, a touch-sensitive surface, and one or more cameras (eg, one or more rear cameras on the side of the device opposite the display and the touch-sensitive surface). 300 , or portable multifunction device 100 of FIG. 1A ). In some embodiments, the display is a touch screen display and the touch-sensitive surface is on or integrated with the display. In some embodiments, the display is separate from the touch-sensitive surface. Some operations in method 800 are selectively combined and/or the order of some operations is selectively changed.

방법(800)은 제1 사용자 인터페이스 영역 내에 가상 객체의 표현을 디스플레이하는 디바이스의 터치 감응형 표면에서 접촉에 의한 입력을 검출하는 것에 관한 것이다. 입력에 응답하여, 디바이스는, 제1 사용자 인터페이스 영역의 적어도 일부분의 디스플레이를 디바이스의 하나 이상의 카메라들의 시야로 대체하는 동안 가상 객체의 표현을 연속적으로 디스플레이할지 여부를 결정하기 위한 기준들을 사용한다. 제1 사용자 인터페이스 영역의 적어도 일부분의 디스플레이를 하나 이상의 카메라들의 시야로 대체하는 동안 가상 객체의 표현을 연속적으로 디스플레이할지 여부를 결정하기 위한 기준들을 사용함으로써 입력에 응답하여 다수의 상이한 유형들의 동작들의 수행을 가능하게 한다. (예컨대, 사용자 인터페이스의 적어도 일부분의 디스플레이를 하나 이상의 카메라들의 시야로 대체함으로써, 또는 제1 사용자 인터페이스 영역의 적어도 일부분의 디스플레이를 하나 이상의 카메라들의 시야의 표현으로 대체하지 않으면서 제1 사용자 인터페이스 영역의 디스플레이를 유지함으로써) 입력에 응답하여 다수의 상이한 유형들의 동작들의 수행을 가능하게 하는 것은, 사용자가 이들 동작들을 수행할 수 있는 효율을 증가시키며, 이에 의해 디바이스의 작동성을 향상시키고, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.Method 800 relates to detecting input by contact at a touch-sensitive surface of a device that displays a representation of a virtual object within a first user interface area. In response to the input, the device uses criteria to determine whether to continuously display the representation of the virtual object while replacing the display of at least a portion of the first user interface area with the field of view of one or more cameras of the device. performing a number of different types of actions in response to an input by using criteria for determining whether to continuously display a representation of the virtual object while replacing the display of at least a portion of the first user interface area with the field of view of one or more cameras makes it possible (e.g., by replacing the display of at least a portion of the user interface with the field of view of one or more cameras, or without replacing the display of at least a portion of the first user interface area with a representation of the field of view of the one or more cameras. Enabling the performance of a number of different types of operations in response to input (by holding a display) increases the efficiency with which a user can perform these operations, thereby improving the operability of the device, which additionally: It reduces the device's power usage and improves battery life by enabling users to use the device more quickly and efficiently.

디바이스는 디스플레이(112) 상의 제1 사용자 인터페이스 영역(예컨대, 2차원 그래픽 사용자 인터페이스 또는 그의 일부분(예컨대, 가구 이미지들의 열람가능 목록(browsable list), 하나 이상의 선택가능 객체들을 포함하는 이미지 등)) 내에 가상 객체의 표현(예컨대, 3차원 객체의 그래픽 표현, 예컨대, 가상 의자(5020), 가상 램프(5084), 신발, 가구, 수공구들, 장식물들, 사람, 이모지, 게임 캐릭터, 가상 가구, 등)을 디스플레이한다(802). 예를 들어, 제1 사용자 인터페이스 영역은 도 5b에 도시된 바와 같은 메시징 사용자 인터페이스(5008) 또는 도 5ae에 도시된 바와 같은 인터넷 브라우저 사용자 인터페이스(5060)이다. 일부 실시예들에서, 제1 사용자 인터페이스 영역은 디바이스 주위의 물리적 환경의 이미지 이외의 배경을 포함한다(예컨대, 제1 사용자 인터페이스 영역의 배경은 미리선택된 배경 색상/패턴, 또는 하나 이상의 카메라들에 의해 동시에 캡처된 출력 이미지와 구별되고 하나 이상의 카메라들의 시야 내의 라이브 콘텐츠와 구별되는 배경 이미지이다).The device is located within a first user interface area on the display 112 (eg, a two-dimensional graphical user interface or portion thereof (eg, a browsable list of furniture images, an image containing one or more selectable objects, etc.) Representation of a virtual object (eg, a graphical representation of a three-dimensional object, eg, virtual chair 5020, virtual lamp 5084, shoes, furniture, hand tools, decorations, person, emoji, game character, virtual furniture, etc. ) is displayed (802). For example, the first user interface area is a messaging user interface 5008 as shown in FIG. 5B or an Internet browser user interface 5060 as shown in FIG. 5ae. In some embodiments, the first user interface region includes a background other than an image of the physical environment surrounding the device (eg, the background of the first user interface region may be configured by a preselected background color/pattern, or by one or more cameras). A background image that is distinct from the output image captured at the same time and that is distinct from live content within the field of view of one or more cameras).

디스플레이 상의 제1 사용자 인터페이스 영역 내에 가상 객체의 제1 표현을 디스플레이하는 동안, 디바이스는 디스플레이 상의 가상 객체의 표현에 대응하는 터치 감응형 표면(112) 상의 위치에서 접촉에 의한 제1 입력을 검출한다(예컨대, 접촉은 터치 스크린 디스플레이 상의 가상 객체의 제1 표현 상에서 검출되거나, 접촉은 제1 사용자 인터페이스 영역 내에 가상 객체의 제1 표현과 동시에 디스플레이되는 그리고 접촉에 의해 호출될 때 가상 객체의 AR 뷰의 디스플레이를 트리거하도록 구성되는 어포던스 상에서 검출된다)(804). 예를 들어, 제1 입력은 도 5c 내지 도 5f와 관련하여 기술된 바와 같은 접촉(5020)에 의한 입력 또는 도 5af 내지 도 5al과 관련하여 기술된 바와 같은 접촉(5086)에 의한 입력이다.While displaying a first representation of the virtual object within a first user interface area on the display, the device detects a first input by contact at a location on the touch-sensitive surface 112 corresponding to the representation of the virtual object on the display ( For example, the contact is detected on a first representation of the virtual object on the touch screen display, or the contact is displayed concurrently with the first representation of the virtual object within the first user interface area and when invoked by the contact, the display of the AR view of the virtual object. is detected on the affordance configured to trigger (804). For example, the first input is an input by contact 5020 as described with respect to FIGS. 5C-5F or an input by contact 5086 as described with respect to FIGS. 5A-5A .

접촉에 의한 제1 입력을 검출하는 것에 응답하여, 접촉에 의한 제1 입력이 제1 (예컨대, AR 트리거) 기준들을 충족한다는 결정에 따라(예컨대, AR 트리거 기준들은 카메라(들)의 활성화를 트리거하는 것과 연관된 스와이프 입력, 계속 터치하기(touch-hold) 입력, 누르기 입력, 탭 입력, 미리정의된 세기 임계치를 초과하는 세기를 갖는 강한 누르기(hard press), 또는 다른 유형의 미리정의된 입력 제스처, 디바이스 주위의 물리적 환경의 증강 현실(AR) 뷰의 디스플레이, 물리적 환경의 증강 현실 뷰 내측의 가상 객체의 3차원 표현의 배치, 및/또는 상기 액션들 중 둘 이상의 조합을 식별하도록 구성된 기준들임), 디바이스는, 제1 사용자 인터페이스 영역의 적어도 일부분의 디스플레이를 하나 이상의 카메라들의 시야의 표현으로 대체하는 것을 포함하여, 디스플레이 상에 제2 사용자 인터페이스 영역을 디스플레이하고, 디바이스는 제1 사용자 인터페이스 영역을 디스플레이하는 것으로부터 제2 사용자 인터페이스 영역을 디스플레이하는 것으로 스위칭하는 동안 가상 객체의 표현을 연속적으로 디스플레이한다(806). 예를 들어, 디스플레이 상의 제2 사용자 인터페이스 영역은 도 5h와 관련하여 기술된 바와 같은 플래터(5030) 내의 카메라(들)의 시야(5034), 또는 도 5ah와 관련하여 기술된 바와 같은 카메라(들)의 시야(5034)이다. 도 5c 내지 도 5i에서, 접촉(5026)에 의한 입력이 깊게 누르기 세기 임계치(ITD)를 초과하여 증가하는 특성 세기를 갖는다는 결정에 따라, 가상 의자 객체(5020)는 제1 사용자 인터페이스 영역(메시징 사용자 인터페이스(5008))을 디스플레이하는 것으로부터 메시징 사용자 인터페이스(5008)의 일부분의 디스플레이를 플래터(5030) 내의 카메라(들)의 시야(5034)로 대체하는 제2 사용자 인터페이스 영역을 디스플레이하는 것으로 스위칭하는 동안 연속적으로 디스플레이된다. 도 5af 내지 도 5ah에서, 접촉(5086)에 의한 입력이 깊게 누르기 세기 임계치(ITD)를 초과하여 증가하는 특성 세기를 갖는다는 결정에 따라, 가상 램프 객체(5084)는 제1 사용자 인터페이스 영역(인터넷 브라우저 사용자 인터페이스(5060))을 디스플레이하는 것으로부터 인터넷 브라우저 사용자 인터페이스(5060)의 일부분의 디스플레이를 카메라(들)의 시야(5034)로 대체하는 제2 사용자 인터페이스 영역을 디스플레이하는 것으로 스위칭하는 동안 연속적으로 디스플레이된다.In response to detecting the first input by the contact, according to a determination that the first input by the contact meets first (eg, AR trigger) criteria (eg, the AR trigger criteria trigger activation of the camera(s)) A swipe input, touch-hold input, press input, tap input, hard press having an intensity that exceeds a predefined intensity threshold, or other type of predefined input gesture associated with doing , display of an augmented reality (AR) view of the physical environment around the device, placement of a three-dimensional representation of a virtual object inside the augmented reality view of the physical environment, and/or criteria configured to identify a combination of two or more of the above actions) , the device displaying a second user interface area on the display, the device comprising replacing the display of at least a portion of the first user interface area with a representation of the field of view of the one or more cameras, the device displaying the first user interface area Continuously displays ( 806 ) the representation of the virtual object while switching from displaying the second user interface area to displaying the second user interface area. For example, the second user interface area on the display may be the field of view 5034 of the camera(s) within the platter 5030 as described with respect to FIG. 5H , or the camera(s) as described with respect to FIG. 5A . is the field of view 5034 of 5C-5I , upon determining that the input by contact 5026 has a characteristic intensity that increases above the deep press intensity threshold IT D , the virtual chair object 5020 is displayed in a first user interface area ( Switching from displaying the messaging user interface 5008 to displaying a second user interface area that replaces the display of a portion of the messaging user interface 5008 with the field of view 5034 of the camera(s) within the platter 5030 displayed continuously while 5A-5A , in accordance with a determination that the input by contact 5086 has a characteristic intensity that increases above the deep press intensity threshold IT D , the virtual lamp object 5084 is displayed in a first user interface area ( continuous while switching from displaying the Internet browser user interface 5060) to displaying a second user interface area that replaces the display of a portion of the Internet browser user interface 5060 with the field of view 5034 of the camera(s) is displayed as

일부 실시예들에서, 가상 객체의 표현을 연속적으로 디스플레이하는 것은 가상 객체의 표현의 디스플레이를 유지하는 것, 또는 가상 객체의 제2 표현(예컨대, 상이한 크기의, 상이한 시야각으로부터의, 상이한 렌더링 스타일의, 또는 디스플레이 상의 상이한 위치에서의 가상 객체의 뷰)으로 변하는 가상 객체의 제1 표현의 애니메이션화된 전이를 디스플레이하는 것을 포함한다. 일부 실시예들에서, 하나 이상의 카메라들의 시야(5034)는, (예컨대, 도 5k 및 도 5l에 예시된 바와 같이) 디바이스의 위치 및 배향이 물리적 환경에 대해 변할 때 실시간으로 업데이트되는 디바이스 주위의 물리적 환경(5002)의 라이브 이미지를 디스플레이한다. 일부 실시예들에서, 제2 사용자 인터페이스 영역은 디스플레이 상에서 제1 사용자 인터페이스 영역을 완전히 대체한다.In some embodiments, continuously displaying the representation of the virtual object includes maintaining display of the representation of the virtual object, or a second representation of the virtual object (eg, of a different size, from a different viewing angle, of a different rendering style). , or a view of the virtual object at a different location on the display) and displaying the animated transition of the first representation of the virtual object. In some embodiments, the field of view 5034 of the one or more cameras is updated in real time as the location and orientation of the device changes with respect to the physical environment (eg, as illustrated in FIGS. 5K and 5L ) around the physical environment of the device. Displays a live image of the environment 5002 . In some embodiments, the second user interface area completely replaces the first user interface area on the display.

일부 실시예들에서, 제2 사용자 인터페이스 영역은 제1 사용자 인터페이스 영역의 일부분을 오버레이한다(예컨대, 제1 사용자 인터페이스 영역의 일부분이 디스플레이의 에지를 따라서 또는 그의 경계들 둘레에 도시된다). 일부 실시예들에서, 제2 사용자 인터페이스 영역은 제1 사용자 인터페이스 영역 다음에 팝업(pop up)된다. 일부 실시예들에서, 제1 사용자 인터페이스 영역 내의 배경은 카메라(들)의 시야(5034)의 콘텐츠로 대체된다. 일부 실시예들에서, 디바이스는 가상 객체가 제1 사용자 인터페이스 영역에 도시된 바와 같은 제1 배향으로부터 제2 배향(예컨대, 하나 이상의 카메라들의 시야 내에서 캡처되는 물리적 환경의 일부분의 현재 배향에 대해 미리정의된 배향)으로 (예컨대, 도 5e 내지 도 5i에 예시된 바와 같이) 이동 및 회전하는 것을 보여주는 애니메이션화된 전이를 디스플레이한다. 예를 들어, 애니메이션은 제1 사용자 인터페이스 영역을 디스플레이하는 동안 가상 객체의 2차원 표현을 디스플레이하는 것으로부터 제2 사용자 인터페이스 영역을 디스플레이하는 동안 가상 객체의 3차원 표현을 디스플레이하는 것으로의 전이를 포함한다. 일부 실시예들에서, 가상 객체의 3차원 표현은 2차원 그래픽 사용자 인터페이스(예컨대, 제1 사용자 인터페이스 영역)에 도시된 바와 같은 가상 객체의 형상 및 배향에 기초하여 미리정의된 앵커 평면(anchor plane)을 갖는다. 증강 현실 뷰(예컨대, 제2 사용자 인터페이스 영역)로 전이될 때, 가상 객체의 3차원 표현은 디스플레이 상의 가상 객체의 원래 위치로부터 디스플레이 상의 새로운 위치로 (예컨대, 증강 현실 뷰의 중심, 또는 증강 현실 뷰 내의 다른 미리정의된 위치로) 이동되고, 크기 재설정되고, 재배향되며, 이동 동안 또는 이동의 종료 시, 가상 객체의 3차원 표현은 가상 객체의 3차원 표현이 하나 이상의 카메라들의 시야 내에서 식별되는 미리정의된 평면(예컨대, 가상 객체의 3차원 표현을 위한 지지 평면으로서 역할을 할 수 있는 수직 벽 또는 수평 바닥 표면과 같은 물리적 표면)에 대해 미리정의된 위치 및/또는 배향에 있도록 재배향된다.In some embodiments, the second user interface region overlays a portion of the first user interface region (eg, a portion of the first user interface region is shown along an edge of the display or around its boundaries). In some embodiments, the second user interface area pops up after the first user interface area. In some embodiments, the background within the first user interface area is replaced with the content of the field of view 5034 of the camera(s). In some embodiments, the device advances the virtual object from a first orientation as shown in the first user interface area to a second orientation (eg, relative to a current orientation of a portion of the physical environment being captured within the field of view of one or more cameras). Displays an animated transition showing moving and rotating (eg, as illustrated in FIGS. 5E-5I ) in a defined orientation). For example, the animation includes a transition from displaying a two-dimensional representation of the virtual object while displaying a first user interface area to displaying a three-dimensional representation of the virtual object while displaying a second user interface area. . In some embodiments, the three-dimensional representation of the virtual object is a predefined anchor plane based on the shape and orientation of the virtual object as shown in the two-dimensional graphical user interface (eg, the first user interface area). has When transitioned to the augmented reality view (eg, the second user interface region), the three-dimensional representation of the virtual object moves from the original position of the virtual object on the display to a new position on the display (eg, the center of the augmented reality view, or the augmented reality view). is moved, resized, reoriented, during or at the end of the movement, to another predefined location in the orientated to be in a predefined position and/or orientation relative to a predefined plane (eg, a physical surface such as a vertical wall or horizontal floor surface that may serve as a support plane for a three-dimensional representation of a virtual object).

일부 실시예들에서, 제1 기준들은, 접촉이 가상 객체의 표현에 대응하는 터치 감응형 표면 상의 위치에서 적어도 미리정의된 시간(예컨대, 길게 누르기 시간 임계치) 동안 임계량 미만의 이동으로 유지될 때 (예컨대, 유지된다는 결정에 따라) 만족되는 기준들을 포함한다(808). 일부 실시예들에서, 접촉이 다른 유형의 제스처(예컨대, 탭)를 인식하기 위한 기준들을 만족한다는 결정에 따라, 디바이스는 가상 객체의 디스플레이를 유지하는 동안 AR 사용자 인터페이스를 트리거하는 것 이외의 다른 미리정의된 기능을 수행한다. 접촉이 가상 객체의 표현에 대응하는 터치 감응형 표면 상의 위치에서 적어도 미리정의된 시간 동안 임계량 미만의 이동으로 유지되는지 여부에 따라, 제1 사용자 인터페이스 영역의 적어도 일부분의 디스플레이를 카메라(들)의 시야로 대체하는 동안 가상 객체의 표현을 연속적으로 디스플레이할지 여부를 결정하는 것은, 입력에 응답하여 다수의 상이한 유형들의 동작들의 수행을 가능하게 한다. 입력에 응답하여 다수의 상이한 유형들의 동작들의 수행을 가능하게 하는 것은, 사용자가 이들 동작들을 수행할 수 있는 효율을 증가시키며, 이에 의해 디바이스의 작동성을 향상시키고, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, the first criteria are: when the contact remains with movement less than a threshold amount for at least a predefined time (eg, a long press time threshold) at a location on the touch-sensitive surface corresponding to the representation of the virtual object ( Criteria that are satisfied (eg, in accordance with a determination to be maintained) are included (808). In some embodiments, upon determining that the contact satisfies criteria for recognizing another type of gesture (eg, a tap), the device may pre-emptively other than triggering the AR user interface while maintaining display of the virtual object. It performs the defined function. display of at least a portion of the first user interface area according to whether the contact is maintained with movement less than a threshold amount for at least a predefined time at a location on the touch-sensitive surface corresponding to the representation of the virtual object; Determining whether to continuously display the representation of the virtual object while replacing with , enables performing a number of different types of operations in response to the input. Enabling the performance of a number of different types of operations in response to input increases the efficiency with which a user can perform these operations, thereby improving the operability of the device, which in addition allows the user to perform more By enabling quick and efficient use, it reduces the device's power usage and improves battery life.

일부 실시예들에서, 제1 기준들은, 접촉의 특성 세기가 제1 세기 임계치(예컨대, 가볍게 누르기 세기 임계치(ITL) 또는 깊게 누르기 세기 임계치(ITD))를 초과하여 증가할 때 (예컨대, 증가한다는 결정에 따라) 만족되는 기준들을 포함한다(810). 예를 들어, 도 5c 내지 도 5f와 관련하여 기술된 바와 같이, 기준들은 접촉(5026)의 특성 세기가, 세기 레벨 측정기(5028)에 의해 나타낸 바와 같이, 깊게 누르기 세기 임계치(ITD)를 초과하여 증가할 때 만족된다. 일부 실시예들에서, 접촉이 다른 유형의 제스처(예컨대, 탭)를 인식하기 위한 기준들을 만족한다는 결정에 따라, 디바이스는 가상 객체의 디스플레이를 유지하는 동안 AR 사용자 인터페이스를 트리거하는 것 이외의 다른 미리정의된 기능을 수행한다. 일부 실시예들에서, 제1 기준들은 제1 입력이 탭 입력이 아닐 것을 (예컨대, 입력이 탭 시간 임계치보다 긴 접촉의 터치다운과 접촉의 리프트오프 사이의 지속기간을 갖는 것을) 요구한다. 접촉의 특성 세기가 제1 세기 임계치를 초과하여 증가하는지 여부에 따라, 제1 사용자 인터페이스 영역의 적어도 일부분의 디스플레이를 카메라(들)의 시야로 대체하는 동안 가상 객체의 표현을 연속적으로 디스플레이할지 여부를 결정하는 것은, 입력에 응답하여 다수의 상이한 유형들의 동작들의 수행을 가능하게 한다. 입력에 응답하여 다수의 상이한 유형들의 동작들의 수행을 가능하게 하는 것은, 사용자가 이들 동작들을 수행할 수 있는 효율을 증가시키며, 이에 의해 디바이스의 작동성을 향상시키고, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, the first criteria are determined when the characteristic intensity of the contact increases (eg, when a characteristic intensity of the contact increases above a first intensity threshold (eg, a light press intensity threshold IT L or a deep press intensity threshold IT D )). Criteria to be satisfied ( 810 ) For example, as described in connection with FIGS. 5C-5F , criteria indicate that the characteristic intensity of contact 5026 exceeds a deep press intensity threshold IT D , as indicated by intensity level meter 5028 , is satisfied when it increases. In some embodiments, upon determining that the contact satisfies criteria for recognizing another type of gesture (eg, a tap), the device may trigger other advances than triggering the AR user interface while maintaining display of the virtual object. It performs the defined function. In some embodiments, the first criteria require that the first input is not a tap input (eg, the input has a duration between touchdown of the contact and liftoff of the contact that is longer than a tap time threshold). whether to continuously display the representation of the virtual object while replacing the display of at least a portion of the first user interface area with the field of view of the camera(s) according to whether the characteristic intensity of the contact increases above the first intensity threshold Determining enables performance of a number of different types of operations in response to the input. Enabling the performance of a number of different types of operations in response to input increases the efficiency with which a user can perform these operations, thereby improving the operability of the device, which in addition allows the user to perform more By enabling quick and efficient use, it reduces the device's power usage and improves battery life.

일부 실시예들에서, 제1 기준들은 접촉의 이동이 미리정의된 이동 기준들을 충족할 때 (예컨대, 접촉이 터치 감응형 표면을 가로질러 미리정의된 임계 위치(예컨대, 제1 사용자 인터페이스 영역의 경계에 대응하는 위치, 접촉의 원래 위치로부터 떨어진 임계 거리인 위치 등)를 지나서 이동할 때, 접촉이 미리정의된 임계 속도보다 빠른 속도로 이동할 때, 접촉의 이동이 누르기 입력으로 종료될 때, 등일 때) (예컨대, 그러하다는 결정에 따라) 만족되는 기준들을 포함한다(812). 일부 실시예들에서, 가상 객체의 표현은 접촉의 이동의 초기 부분 동안 접촉에 의해 드래그되고, 제1 기준들이 충족되려는 것을 나타내도록 접촉의 이동이 미리정의된 정의된 이동 기준들을 충족하려고 할 때 가상 객체는 접촉에 의해 이동하는 것을 중지하고; 접촉의 이동이 계속되고 미리정의된 이동 기준들이 접촉의 계속되는 이동에 의해 충족되는 경우, 제2 사용자 인터페이스 영역을 디스플레이하고 증강 현실 뷰 내의 가상 객체를 디스플레이하기 위한 전이가 시작된다. 일부 실시예들에서, 가상 객체가 제1 입력의 초기 부분 동안 드래그될 때, 객체 크기 및 관찰 시점은 변하지 않고, 일단 증강 현실 뷰가 디스플레이되고 가상 객체가 증강 현실 뷰에서 제위치로 낙하되면, 가상 객체는 증강 현실 뷰에서 가상 객체의 낙하(drop-off) 위치에 의해 표현되는 물리적 위치에 종속하는 크기 및 관찰 시점으로 디스플레이된다. 접촉의 이동이 미리정의된 이동 기준들을 충족하는지 여부에 따라, 제1 사용자 인터페이스 영역의 적어도 일부분의 디스플레이를 카메라(들)의 시야로 대체하는 동안 가상 객체의 표현을 연속적으로 디스플레이할지 여부를 결정하는 것은, 입력에 응답하여 다수의 상이한 유형들의 동작들의 수행을 가능하게 한다. 입력에 응답하여 다수의 상이한 유형들의 동작들의 수행을 가능하게 하는 것은, 사용자가 이들 동작들을 수행할 수 있는 효율을 증가시키며, 이에 의해 디바이스의 작동성을 향상시키고, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, the first criteria are determined when movement of the contact meets predefined movement criteria (eg, a predefined threshold location at which the contact crosses the touch-sensitive surface (eg, a boundary of the first user interface area). When moving past a position corresponding to , a position that is a critical distance away from the original position of the contact, etc.), when the contact moves at a speed greater than a predefined threshold velocity, when the movement of the contact is terminated with a press input, etc.) Includes ( 812 ) criteria that are satisfied (eg, in accordance with a determination that it is). In some embodiments, the representation of the virtual object is dragged by the contact during an initial part of the movement of the contact, and is virtual when the movement of the contact is about to meet predefined defined movement criteria to indicate that first criteria are to be met. The object stops moving by contact; When the movement of the contact continues and the predefined movement criteria are met by the continued movement of the contact, a transition to displaying the second user interface area and displaying the virtual object within the augmented reality view is initiated. In some embodiments, when the virtual object is dragged during the initial portion of the first input, the object size and viewing point do not change, and once the augmented reality view is displayed and the virtual object is dropped into place in the augmented reality view, the virtual The object is displayed in the augmented reality view with a size and viewpoint dependent on the physical position represented by the drop-off position of the virtual object. determining whether to continuously display the representation of the virtual object while replacing the display of at least a portion of the first user interface area with the field of view of the camera(s) according to whether the movement of the contact meets predefined movement criteria; It enables performance of a number of different types of operations in response to an input. Enabling the performance of a number of different types of operations in response to input increases the efficiency with which a user can perform these operations, thereby improving the operability of the device, which in addition allows the user to perform more By enabling quick and efficient use, it reduces the device's power usage and improves battery life.

일부 실시예들에서, 접촉에 의한 제1 입력을 검출하는 것에 응답하여, 접촉에 의한 제1 입력이 제1 기준들을 충족하였다는 결정에 따라, 디바이스는 제1 입력에 의한 제1 기준들의 만족을 나타내기 위해 촉각적 출력(예컨대, 도 5f와 관련하여 기술된 바와 같은 촉각적 출력(5032) 또는 도 5ah와 관련하여 기술된 바와 같은 촉각적 출력(5088))을, 하나 이상의 촉각적 출력 생성기들(167)에 의해, 출력한다(814). 일부 실시예들에서, 하나 이상의 카메라들의 시야가 디스플레이 상에서 보이기 전에 햅틱이 생성된다. 예를 들어, 햅틱은 하나 이상의 카메라(들)의 활성화 및 하나 이상의 카메라(들)의 시야의 후속 평면 검출을 트리거하는 제1 기준들의 만족을 나타낸다. 카메라들이 활성화되는 데 그리고 시야가 디스플레이를 위해 이용가능하게 되는 데 시간이 걸리기 때문에, 햅틱은 디바이스가 필요한 입력을 검출하였다는 그리고 디바이스가 준비되면 바로 증강 현실 사용자 인터페이스를 제시할 것이라는, 사용자에 대한 비시각적 신호로서 역할을 한다.In some embodiments, in response to detecting the first input by the contact, in response to determining that the first input by the contact met the first criteria, the device determines satisfaction of the first criteria by the first input tactile output (eg, tactile output 5032 as described with respect to FIG. 5F or tactile output 5088 as described with respect to FIG. 5Ah) to represent one or more tactile output generators (167), and output (814). In some embodiments, a haptic is generated before the field of view of one or more cameras is visible on the display. For example, the haptic represents activation of one or more camera(s) and satisfaction of first criteria that trigger subsequent plane detection of the field of view of the one or more camera(s). Because it takes time for the cameras to be activated and for the field of view to become available for display, the haptic tells the user that the device has detected the required input and will present the augmented reality user interface as soon as the device is ready. It serves as a visual cue.

(예컨대, 사용자 인터페이스의 적어도 일부분의 디스플레이를 카메라(들)의 시야로 대체하기 위한) 기준들의 만족을 나타내기 위해 촉각적 출력을 출력하는 것은 제공된 입력이 기준들을 만족한다는 것을 나타내는 피드백을 사용자에게 제공한다. 개선된 촉각적 피드백을 제공하는 것은, (예컨대, 디바이스를 작동시킬 때/그와 상호작용할 때 사용자가 적절한 입력들을 제공하는 것을 돕고 사용자 실수들을 감소시킴으로써) 디바이스의 작동성을 향상시키고, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.Outputting a tactile output to indicate satisfaction of criteria (eg, for replacing the display of at least a portion of the user interface with the field of view of the camera(s)) provides feedback to the user indicating that the provided input satisfies the criteria. do. Providing improved tactile feedback improves the operability of the device (e.g., by helping the user provide appropriate inputs and reducing user errors when actuating/interacting with the device), which additionally: It reduces the device's power usage and improves battery life by enabling users to use the device more quickly and efficiently.

일부 실시예들에서, 제1 입력의 적어도 초기 부분을 검출하는 것(예컨대, 접촉을 검출하는 것, 또는 제1 기준들을 충족하지 않으면서 각각의 미리정의된 기준들을 충족하는 접촉에 의한 입력을 검출하는 것, 또는 제1 기준들을 충족하는 입력을 검출하는 것을 포함함)에 응답하여, 디바이스는 하나 이상의 카메라들의 시야 내에서 하나 이상의 평면들(예컨대, 바닥 표면(5038), 테이블 표면(5046), 벽 등)을 검출하기 위해 하나 이상의 카메라들의 시야를 분석한다(816). 일부 실시예들에서, 하나 이상의 카메라들은 제1 입력의 적어도 초기 부분을 검출하는 것에 응답하여 활성화되고, 평면 검출은 카메라(들)가 활성화될 때 동시에 개시된다. 일부 실시예들에서, 하나 이상의 카메라들의 시야의 디스플레이는 하나 이상의 카메라들의 활성화 후에 (예컨대, 하나 이상의 카메라들이 활성화될 때부터 적어도 하나의 평면이 카메라(들)의 시야 내에서 검출될 때까지) 지연된다. 일부 실시예들에서, 하나 이상의 카메라들의 시야의 디스플레이는 하나 이상의 카메라들이 활성화될 때 개시되고, 평면 검출은 시야가 디스플레이 상에서 (예컨대, 제2 사용자 인터페이스 영역에서) 이미 가시적인 후에 완료된다. 일부 실시예들에서, 하나 이상의 카메라들의 시야 내에서 각각의 평면을 검출한 후, 디바이스는 하나 이상의 카메라들의 시야에 대한 각각의 평면의 상대 위치에 기초하여 가상 객체의 표현의 크기 및/또는 위치를 결정한다. 일부 실시예들에서, 전자 디바이스가 이동됨에 따라, 가상 객체의 표현의 크기 및/또는 위치는 (예컨대, 도 5k 및 도 5l과 관련하여 기술된 바와 같이) 하나 이상의 카메라들의 시야의 위치가 각각의 평면에 대해 변함에 따라 업데이트된다. (예컨대, 카메라(들)의 시야에 대해 가상 객체를 크기설정하고/하거나 위치시키기 위한 추가 사용자 입력을 요구하지 않으면서) 카메라(들)의 시야 내에서 검출되는 각각의 평면의 위치에 기초하여 가상 객체의 표현의 크기 및/또는 위치를 결정하는 것은 디바이스의 작동성을 향상시키고, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, detecting at least an initial portion of the first input (eg, detecting a contact, or detecting an input by a contact meeting respective predefined criteria without meeting the first criteria) , or detecting input that satisfies the first criteria), the device may display one or more planes within the field of view of the one or more cameras (eg, a floor surface 5038 , a table surface 5046 , The field of view of one or more cameras is analyzed (816) to detect walls, etc.). In some embodiments, one or more cameras are activated in response to detecting at least an initial portion of the first input, and plane detection is initiated concurrently when the camera(s) are activated. In some embodiments, the display of the field of view of the one or more cameras is delayed after activation of the one or more cameras (eg, from when the one or more cameras are activated until at least one plane is detected within the field of view of the camera(s)) do. In some embodiments, display of the field of view of the one or more cameras is initiated when the one or more cameras are activated, and plane detection is completed after the field of view is already visible on the display (eg, in the second user interface area). In some embodiments, after detecting each plane within the field of view of the one or more cameras, the device determines the size and/or position of the representation of the virtual object based on the relative position of each plane to the field of view of the one or more cameras. decide In some embodiments, as the electronic device is moved, the size and/or position of the representation of the virtual object (eg, as described with respect to FIGS. 5K and 5L ) may vary depending on the position of the field of view of each of the one or more cameras. It is updated as it changes with respect to the plane. virtual based on the position of each plane detected within the field of view of the camera(s) (eg, without requiring additional user input to size and/or position the virtual object with respect to the field of view of the camera(s)). Determining the size and/or position of the representation of an object improves the operability of the device, which further reduces power usage of the device and improves battery life by enabling a user to use the device more quickly and efficiently. make it

일부 실시예들에서, 하나 이상의 카메라들의 시야 내에서 하나 이상의 평면들을 검출하기 위해 하나 이상의 카메라들의 시야를 분석하는 것은 디스플레이 상의 가상 객체의 표현에 대응하는 터치 감응형 표면 상의 위치에서의 접촉의 검출에 응답하여 (예컨대, 가상 의자(5020)에 대응하는 터치 스크린(112) 상의 위치에서의 접촉(5026)의 검출에 응답하여) 개시된다(818). 예를 들어, 카메라들의 활성화 및 카메라(들)의 시야 내의 평면들의 검출은 제1 기준들이 제1 입력에 의해 충족되기 전에 (예컨대, 도 5f와 관련하여 기술된 바와 같이, 접촉(5026)의 특성 세기가 깊게 누르기 세기 임계치(ITD)를 초과하여 증가하기 전에) 그리고 제2 사용자 인터페이스 영역이 디스플레이되기 전에 시작된다. 가상 객체와의 임의의 상호작용의 검출 시 평면 검출을 시작함으로써, 평면 검출은 AR 트리거 기준들이 충족되기 전에 완료될 수 있고, 그에 따라서, AR 트리거 기준들이 제1 입력에 의해 충족될 때 증강 현실 뷰로의 가상 객체 전이를 볼 때 사용자에게 가시적 지연은 없을 것이다. (예컨대, 카메라(들)의 시야의 분석을 개시하기 위한 추가 사용자 입력을 요구하지 않으면서) 가상 객체의 표현의 위치에서의 접촉의 검출에 응답하여 카메라(들)의 시야 내에서 하나 이상의 평면들을 검출하기 위한 분석을 개시하는 것은 디바이스의 유효성을 향상시키고, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, analyzing the field of view of the one or more cameras to detect one or more planes within the field of view of the one or more cameras includes detecting a contact at a location on the touch-sensitive surface corresponding to the representation of the virtual object on the display. In response (eg, in response to detection of contact 5026 at a location on touch screen 112 corresponding to virtual chair 5020) 818 is initiated. For example, activation of the cameras and detection of planes within the field of view of the camera(s) before first criteria are met by the first input (eg, as described with respect to FIG. 5F , characteristic of contact 5026 ) before the intensity increases beyond the deep press intensity threshold IT D ) and before the second user interface area is displayed. By starting the plane detection upon detection of any interaction with the virtual object, the plane detection can be completed before the AR trigger criteria are met, and thus into the augmented reality view when the AR trigger criteria are met by the first input. There will be no visible delay to the user when viewing the virtual object transition of . One or more planes within the field of view of the camera(s) in response to detection of a contact at the location of the representation of the virtual object (eg, without requiring additional user input to initiate analysis of the camera(s) field of view) Initiating analysis to detect improves the effectiveness of the device, which additionally enables a user to use the device more quickly and efficiently, thereby reducing the device's power usage and improving battery life.

일부 실시예들에서, 하나 이상의 카메라들의 시야 내에서 하나 이상의 평면들을 검출하기 위해 하나 이상의 카메라들의 시야를 분석하는 것은 제1 기준들이 접촉에 의한 제1 입력에 의해 충족되는 것을 검출하는 것에 응답하여 (예컨대, 도 5f와 관련하여 기술된 바와 같이, 접촉(5026)의 특성 세기가 깊게 누르기 세기 임계치(ITD)를 초과하여 증가하는 것을 검출하는 것에 응답하여) 개시된다(820). 예를 들어, 카메라들의 활성화 및 카메라(들)의 시야 내의 평면들의 검출은 제1 기준들이 제1 입력에 의해 충족될 때 시작되고, 카메라의 시야는 평면 검출이 완료되기 전에 디스플레이된다. AR 트리거 기준들의 만족 시 카메라 활성화 및 평면 검출을 시작함으로써, 카메라들 및 평면 검출은 불필요하게 활성화되지 않고 계속 진행되지 않으며, 이는 배터리 전력을 보존하고 배터리 수명 및 카메라 수명을 연장시킨다.In some embodiments, analyzing the field of view of the one or more cameras to detect one or more planes within the field of view of the one or more cameras is responsive to detecting that first criteria are met by the first input by the contact ( For example, as described in connection with FIG. 5F , in response to detecting that a characteristic intensity of contact 5026 increases above a deep press intensity threshold IT D , is initiated ( 820 ). For example, activation of the cameras and detection of planes within a field of view of the camera(s) begins when first criteria are met by a first input, and the field of view of the camera is displayed before plane detection is complete. By initiating camera activation and plane detection upon satisfaction of AR trigger criteria, cameras and plane detection are not activated unnecessarily and do not proceed, conserving battery power and prolonging battery life and camera life.

일부 실시예들에서, 하나 이상의 카메라들의 시야 내에서 하나 이상의 평면들을 검출하기 위해 하나 이상의 카메라들의 시야를 분석하는 것은 제1 입력의 초기 부분이 제1 기준들을 충족하지 않으면서 평면-검출 트리거 기준들을 충족한다는 것을 검출하는 것에 응답하여 개시된다(822). 예를 들어, 카메라들의 활성화 및 카메라(들)의 시야 내의 평면들의 검출은 일부 기준들(예컨대, AR 트리거 기준들보다 덜 엄격한(stringent) 기준들)이 제1 입력의 초기 부분에 의해 충족될 때 시작되고, 카메라의 시야는 평면 검출이 완료되기 전에 선택적으로 디스플레이된다. 접촉의 검출 시보다는 오히려 소정 기준들의 만족 후에 카메라 활성화 및 평면 검출을 시작함으로써, 카메라들 및 평면 검출은 불필요하게 활성화되지 않고 계속 진행되지 않으며, 이는 배터리 전력을 보존하고 배터리 수명 및 카메라 수명을 연장시킨다. AR 트리거 기준들의 만족 전에 카메라 활성화 및 평면 검출을 시작함으로써, AR 트리거 기준들이 제1 입력에 의해 충족될 때 증강 현실 뷰로의 가상 객체 전이를 디스플레이하기 위한 (카메라 활성화 및 평면 검출로 인한) 지연이 감소된다.In some embodiments, analyzing the field of view of the one or more cameras to detect one or more planes within the field of view of the one or more cameras does not satisfy the plane-detection trigger criteria while an initial portion of the first input does not meet the first criteria. Initiated ( 822 ) in response to detecting that it is satisfied. For example, activation of the cameras and detection of planes within the field of view of the camera(s) may occur when some criteria (eg, criteria less stringent than AR trigger criteria) are met by an initial portion of the first input. started, and the camera's field of view is optionally displayed before plane detection is complete. By starting camera activation and plane detection after meeting certain criteria rather than upon detection of a contact, cameras and plane detection are not activated unnecessarily and do not proceed, conserving battery power and prolonging battery life and camera life . By starting camera activation and plane detection before the AR trigger criteria are satisfied, the delay (due to camera activation and plane detection) for displaying the virtual object transition to the augmented reality view is reduced when the AR trigger criteria are met by the first input do.

일부 실시예들에서, 디바이스는 가상 객체(예컨대, 가상 의자(5020))가 하나 이상의 카메라들의 시야(5034) 내에서 검출되는 각각의 평면에 대해 미리정의된 각도로 배향되도록 (예컨대, 바닥 표면(5038)으로부터 가상 의자(5020)의 4개의 다리의 하부면들을 분리시키는 거리가 없도록 (또는 최소 거리를 갖도록)) 하는 각각의 방식으로 제2 사용자 인터페이스 영역 내에 가상 객체의 표현을 디스플레이한다(824). 예를 들어, 각각의 평면에 대한 가상 객체의 배향 및/또는 위치는 2차원 그래픽 사용자 인터페이스에 도시된 바와 같은 가상 객체의 형상 및 배향에 기초하여 미리정의된다(예컨대, 각각의 평면은 증강 현실 뷰 내의 가상 객체의 3차원 표현에 대한 지지 표면으로서 역할을 할 수 있는 수평 물리적 표면(예컨대, 화병을 지지하기 위한 수평 테이블 표면)에 대응하거나, 각각의 평면은 증강 현실 뷰 내의 가상 객체의 3차원 표현에 대한 지지 표면으로서 역할을 할 수 있는 수직 물리적 표면(예컨대, 가상 그림 프레임을 매달기 위한 수직 벽)이다). 일부 실시예들에서, 가상 객체의 배향 및/또는 위치는 가상 객체의 각각의 표면 또는 경계(예컨대, 하부 표면, 하부 경계 지점들, 측부 표면, 및/또는 측부 경계 지점들)에 의해 한정된다. 일부 실시예들에서, 각각의 평면에 대응하는 앵커 평면은 가상 객체의 한 세트의 속성들 중 하나의 속성이고, 가상 객체가 표현하기로 되어 있는 물리적 객체의 특성에 따라 특정된다. 일부 실시예들에서, 가상 객체는 하나 이상의 카메라들의 시야 내에서 검출되는 다수의 평면들에 대한 미리정의된 배향 및/또는 위치에 배치된다(예컨대, 가상 객체의 다수의 각각의 면들은 카메라(들)의 시야 내에서 검출되는 각각의 평면들과 연관된다). 일부 실시예들에서, 가상 객체에 대해 미리정의된 배향 및/또는 위치가 가상 객체의 수평 하부 평면에 대해 한정되면, 가상 객체의 하부 평면은 카메라(들)의 시야 내에서 검출되는 바닥 평면 상에 디스플레이된다(예컨대, 가상 객체의 수평 하부 평면은 바닥 평면으로부터 0의 거리로 바닥 평면에 평행하다). 일부 실시예들에서, 가상 객체에 대해 미리정의된 배향 및/또는 위치가 가상 객체의 수직 후방 평면에 대해 한정되면, 가상 객체의 후방 표면은 하나 이상의 카메라들의 시야 내에서 검출되는 벽 평면에 대항하여 배치된다(예컨대, 가상 객체의 수직 후방 평면은 벽 평면으로부터 0의 거리로 벽 평면에 평행하다). 일부 실시예들에서, 가상 객체는 각각의 평면에 대해 고정된 거리에 그리고/또는 각각의 평면에 대해 0도 또는 90도 이외의 각도로 배치된다. (예컨대, 카메라(들)의 시야 내의 평면에 대해 가상 객체를 디스플레이하기 위한 추가 사용자 입력을 요구하지 않으면서) 카메라(들)의 시야 내에서 검출되는 평면에 대한 가상 객체의 표현을 디스플레이하는 것은 디바이스의 작동성을 향상시키고, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, the device is configured such that a virtual object (eg, virtual chair 5020) is oriented at a predefined angle with respect to each plane detected within the field of view 5034 of one or more cameras (eg, a floor surface Display ( 824 ) a representation of the virtual object within the second user interface area in a respective manner such that there is no distance (or has a minimum distance) separating the lower surfaces of the four legs of the virtual chair 5020 from 5038 ). . For example, the orientation and/or position of the virtual object with respect to each plane is predefined based on the shape and orientation of the virtual object as shown in the two-dimensional graphical user interface (eg, each plane has an augmented reality view). Each plane corresponds to a horizontal physical surface (eg, a horizontal table surface for supporting a vase) that can serve as a support surface for a three-dimensional representation of the virtual object in the augmented reality view, or each plane is a three-dimensional representation of the virtual object in the augmented reality view. A vertical physical surface (eg, a vertical wall for suspending virtual picture frames) that can serve as a support surface for In some embodiments, the orientation and/or position of the virtual object is defined by a respective surface or boundary (eg, lower surface, lower boundary points, side surface, and/or side boundary points) of the virtual object. In some embodiments, the anchor plane corresponding to each plane is one of a set of properties of the virtual object and is specified according to a characteristic of the physical object that the virtual object is intended to represent. In some embodiments, the virtual object is positioned at a predefined orientation and/or position relative to a number of planes detected within the field of view of the one or more cameras (eg, each of the plurality of faces of the virtual object is ) associated with each of the planes detected within the field of view). In some embodiments, if a predefined orientation and/or position with respect to the virtual object is defined with respect to a horizontal subplane of the virtual object, then the subplane of the virtual object is on the floor plane detected within the field of view of the camera(s). is displayed (eg, the horizontal lower plane of the virtual object is parallel to the floor plane at a distance of zero from the floor plane). In some embodiments, if a predefined orientation and/or position with respect to the virtual object is defined with respect to a vertical rear plane of the virtual object, then the rear surface of the virtual object is directed against a wall plane detected within the field of view of the one or more cameras. placed (eg, the vertical back plane of the virtual object is parallel to the wall plane at a distance of zero from the wall plane). In some embodiments, the virtual object is positioned at a fixed distance with respect to each plane and/or at an angle other than 0 degrees or 90 degrees with respect to each plane. Displaying a representation of the virtual object relative to a plane detected within the field of view of the camera(s) (eg, without requiring additional user input to display the virtual object relative to a plane within the field of view of the camera(s)) improves the operability of the device, which additionally enables the user to use the device more quickly and efficiently, thereby reducing the power usage of the device and improving the battery life.

일부 실시예들에서, 하나 이상의 카메라들의 시야 내에서 각각의 평면을 검출하는 것에 응답하여, 디바이스는 하나 이상의 카메라들의 시야 내의 각각의 평면의 검출을 나타내기 위해 촉각적 출력을, 하나 이상의 촉각적 출력 생성기들(167)에 의해, 출력한다(826). 일부 실시예들에서, 카메라(들)의 시야 내에서 검출되는 각각의 평면(예컨대, 바닥 표면(5038) 및/또는 테이블 표면(5046))에 대해 각각의 촉각적 출력이 생성된다. 일부 실시예들에서, 촉각적 출력은 평면 검출이 완료될 때 생성된다. 일부 실시예들에서, 촉각적 출력은 제2 사용자 인터페이스 부분에 도시된 시야 내의 시야 평면의 시각적 표시(예컨대, 검출된 시야 평면의 순간적인 강조)를 동반한다. 카메라(들)의 시야 내의 평면의 검출을 나타내기 위해 촉각적 출력을 출력하는 것은 평면이 검출되었다는 것을 나타내는 피드백을 사용자에게 제공한다. 개선된 촉각적 피드백을 제공하는 것은, (예컨대, 사용자가 적절한 입력들을 제공하는 것을 돕고, 가상 객체를 배치하기 위한 불필요한 추가 입력들을 감소시킴으로써) 디바이스의 작동성을 향상시키고, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, in response to detecting each plane within the field of view of the one or more cameras, the device outputs a tactile output to indicate detection of each plane within the field of view of the one or more cameras, the one or more tactile output By the generators 167, output 826. In some embodiments, a respective tactile output is generated for each plane (eg, floor surface 5038 and/or table surface 5046 ) detected within the field of view of the camera(s). In some embodiments, a tactile output is generated when plane detection is complete. In some embodiments, the tactile output is accompanied by a visual indication of the viewing plane within the field of view shown in the second user interface portion (eg, instantaneous highlighting of the detected viewing plane). Outputting a tactile output to indicate detection of a plane within the field of view of the camera(s) provides feedback to the user indicating that a plane has been detected. Providing improved tactile feedback improves the operability of the device (eg, by helping the user provide appropriate inputs and reducing unnecessary additional inputs to place the virtual object), which in addition allows the user to It reduces the device's power usage and improves battery life by enabling faster and more efficient use of the device.

일부 실시예들에서, 제1 사용자 인터페이스 영역을 디스플레이하는 것으로부터 제2 사용자 인터페이스 영역을 디스플레이하는 것으로 스위칭하는 동안, 디바이스는 가상 객체의 표현이 (예컨대, 도 5f 내지 도 5i에 예시된 바와 같이) 제2 사용자 인터페이스 영역 내로 각각의 평면에 대한 미리정의된 위치로 전이(예컨대, 이동, 회전, 크기 재설정, 및/또는 상이한 스타일로 재렌더링(re-rendering) 등)됨에 따라 애니메이션을 디스플레이하고, 각각의 평면에 대한 미리정의된 각도로 (예컨대, 각각의 평면에 대한 미리정의된 배향 및/또는 위치에서, 그리고 증강 현실 뷰에서 보여질 최종 상태에 도달하는 그의 크기, 회전 각, 및 외관으로) 가상 객체의 표현을 디스플레이하는 것과 함께, 디바이스는 제2 사용자 인터페이스 영역 내에 각각의 평면에 대한 미리정의된 각도로 가상 객체를 디스플레이하는 것을 나타내기 위해 촉각적 출력을, 하나 이상의 촉각적 출력 생성기들(167)에 의해, 출력한다(828). 예를 들어, 도 5i에 예시된 바와 같이, 디바이스는 바닥 표면(5038)에 대한 미리정의된 각도로 가상 의자(5020)를 디스플레이하는 것과 함께 촉각적 출력(5036)을 출력한다. 일부 실시예들에서, 생성되는 촉각적 출력은 무게(예컨대, 무거운 대 가벼운), 재료(예컨대, 금속, 면, 목재, 대리석, 액체, 고무, 유리), 크기(예컨대, 대형 대 소형), 형상(예컨대, 얇은 대 두꺼운, 긴 대 짧은, 둥근 대 뾰족한, 등), 탄성(예컨대, 탄력 대 경직), 본성(예컨대, 명랑 대 엄숙, 온화 대 강압, 등), 및 가상 객체의 또는 가상 객체에 의해 표현되는 물리적 객체의 다른 속성들을 반영하는 특성들(예컨대, 주파수, 사이클들의 수, 변조, 진폭, 수반하는 오디오 파들 등)을 갖도록 구성된다. 예를 들어, 촉각적 출력은 도 4f 내지 도 4k에 예시된 촉각적 출력 패턴들 중 하나 이상을 사용한다. 일부 실시예들에서, 시간 경과에 따른 하나 이상의 특성들에 대한 하나 이상의 변경들을 포함하는 미리설정된 프로파일이 가상 객체(예컨대, 이모지)에 대응한다. 예를 들어, "바운싱(bouncing)" 촉각적 출력 프로파일이 "웃는 얼굴" 이모지 가상 객체에 대해 제공된다. 각각의 평면에 대한 가상 객체의 표현의 배치를 나타내기 위해 촉각적 출력을 출력하는 것은 가상 객체의 표현이 각각의 평면에 대해 자동으로 배치되었다는 것을 나타내는 피드백을 사용자에게 제공한다. 개선된 촉각적 피드백을 제공하는 것은, (예컨대, 사용자가 적절한 입력들을 제공하는 것을 돕고, 가상 객체를 배치하기 위한 불필요한 추가 입력들을 감소시킴으로써) 디바이스의 작동성을 향상시키고, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, while switching from displaying the first user interface area to displaying the second user interface area, the device causes the representation of the virtual object (eg, as illustrated in FIGS. 5F-5I ) display an animation as it transitions (eg, moved, rotated, resized, and/or re-rendered in a different style, etc.) to a predefined position for each plane into the second user interface area, each virtual at a predefined angle with respect to the plane of In conjunction with displaying the representation of the object, the device sends a tactile output to one or more tactile output generators 167 to indicate displaying the virtual object at a predefined angle relative to each plane within the second user interface area. ) to output (828). For example, as illustrated in FIG. 5I , the device outputs a tactile output 5036 along with displaying the virtual chair 5020 at a predefined angle relative to the floor surface 5038 . In some embodiments, the tactile output generated is a weight (eg, heavy versus light), a material (eg, metal, cotton, wood, marble, liquid, rubber, glass), size (eg, large versus small), shape (e.g., thin vs. thick, long vs. short, round vs. pointed, etc.), elasticity (e.g., resilience vs. rigidity), nature (e.g., cheerful vs. solemn, gentle vs. coercive, etc.), and of or on virtual objects configured to have properties (eg, frequency, number of cycles, modulation, amplitude, accompanying audio waves, etc.) that reflect other properties of the physical object represented by For example, the tactile output uses one or more of the tactile output patterns illustrated in FIGS. 4F-4K . In some embodiments, a preset profile comprising one or more changes to one or more characteristics over time corresponds to a virtual object (eg, an emoji). For example, a “bouncing” tactile output profile is provided for the “smiley face” emoji virtual object. Outputting the tactile output to indicate the placement of the representation of the virtual object relative to each plane provides feedback to the user indicating that the representation of the virtual object has been automatically positioned relative to each plane. Providing improved tactile feedback improves the operability of the device (eg, by helping the user provide appropriate inputs and reducing unnecessary additional inputs to place the virtual object), which in addition allows the user to It reduces the device's power usage and improves battery life by enabling faster and more efficient use of the device.

일부 실시예들에서, 촉각적 출력은 가상 객체의 특성(예컨대, 크기, 밀도, 질량, 및/또는 재료와 같은 시뮬레이션된 물리적 속성)에 대응하는 촉각적 출력 프로파일을 갖는다(830). 일부 실시예들에서, 촉각적 출력 프로파일은 가상 객체의 하나 이상의 특성들(예컨대, 무게, 재료, 크기, 형상, 및/또는 탄성)에 기초하여 가변하는 특성들(예컨대, 주파수, 사이클들의 수, 변조, 진폭, 수반하는 오디오 파들 등)을 갖는다. 예를 들어, 촉각적 출력은 도 4f 내지 도 4k에 예시된 촉각적 출력 패턴들 중 하나 이상을 사용한다. 일부 실시예들에서, 촉각적 출력의 진폭 및/또는 지속기간은 가상 객체의 크기, 무게, 및/또는 질량이 증가함에 따라 증가된다. 일부 실시예들에서, 촉각적 출력 패턴은 가상 객체를 구성하는 가상 재료에 기초하여 선택된다. 가상 객체의 특성에 대응하는 프로파일을 갖는 촉각적 출력을 출력하는 것은 가상 객체의 특성에 관한 정보를 나타내는 피드백을 사용자에게 제공한다. 개선된 촉각적 피드백을 제공하는 것은, (예컨대, 사용자가 적절한 입력들을 제공하는 것을 돕고, 가상 객체를 배치하기 위한 불필요한 추가 입력들을 감소시키고, 특성에 관한 디스플레이된 정보로 사용자 인터페이스를 혼란스럽게 하지 않으면서 가상 객체의 특성을 사용자가 인지하게 하는 감각적 정보를 제공함으로써) 디바이스의 작동성을 향상시키고, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, the tactile output has ( 830 ) a tactile output profile that corresponds to a property of the virtual object (eg, simulated physical properties such as size, density, mass, and/or material). In some embodiments, the tactile output profile is a variable based on one or more characteristics (eg, weight, material, size, shape, and/or elasticity) of the virtual object (eg, frequency, number of cycles; modulation, amplitude, accompanying audio waves, etc.). For example, the tactile output uses one or more of the tactile output patterns illustrated in FIGS. 4F-4K . In some embodiments, the amplitude and/or duration of the tactile output increases as the size, weight, and/or mass of the virtual object increases. In some embodiments, the tactile output pattern is selected based on the virtual material constituting the virtual object. Outputting the tactile output having a profile corresponding to the characteristic of the virtual object provides feedback indicating information about the characteristic of the virtual object to the user. Providing improved tactile feedback (e.g., helping the user provide appropriate inputs, reducing unnecessary additional inputs for placing virtual objects, and not confusing the user interface with displayed information about properties) By providing sensory information that allows the user to recognize the characteristics of the virtual object in the present invention), the operability of the device is improved, which additionally reduces the power consumption of the device by enabling the user to use the device more quickly and efficiently. Improves battery life.

일부 실시예들에서, 제2 사용자 인터페이스 영역 내에 가상 객체의 표현을 디스플레이하는 동안, 디바이스는 (예컨대, 도 5k 및 도 5l에 예시된 바와 같이) 하나 이상의 카메라들의 시야(5034)를 조정하는 디바이스의 이동(예컨대, 디바이스의 측방향 이동 및/또는 회전)을 검출하고, 디바이스의 이동을 검출하는 것에 응답하여, 디바이스는 하나 이상의 카메라들의 시야가 조정됨에 따라 하나 이상의 카메라들의 시야 내의 각각의 평면(예컨대, 바닥 표면(5038))과 가상 객체 사이의 고정된 공간적 관계(예컨대, 배향 및/또는 위치)에 따라 제2 사용자 인터페이스 영역 내에서 가상 객체(예컨대, 가상 의자(5020))의 표현을 조정한다(예컨대, 가상 객체는 평면과 가상 객체의 표현 사이의 고정된 각도가 유지되도록 하는 배향 및 위치로 디스플레이 상에 디스플레이된다(예컨대, 가상 객체는 평면 상의 고정된 위치에 머무르거나 시야 평면을 따라서 구르는 것으로 보인다))(832). 예를 들어, 도 5k 및 도 5l에서, 카메라(들)의 시야(5034)를 포함하는 제2 사용자 인터페이스 영역 내의 가상 의자(5020)는 디바이스(100)가 이동됨에 따라 바닥 표면(5038)에 대해 고정된 배향 및 위치를 유지한다. 일부 실시예들에서, 가상 객체는 주위의 물리적 환경(5002)에 대해 정지되고 변경되지 않은 것으로 보이는데, 즉, 가상 객체의 표현은 디바이스 위치 및/또는 배향이 변경됨에 따라 디스플레이 상에서 크기, 위치, 및/또는 배향이 변하는데, 이는 디바이스가 주위의 물리적 환경에 대해 이동할 때 하나 이상의 카메라들의 시야가 변하기 때문이다. (예컨대, 각각의 평면에 대한 가상 객체의 위치를 유지하기 위한 추가 사용자 입력을 요구하지 않으면서) 가상 객체와 각각의 평면 사이의 고정된 관계에 따라 가상 객체의 표현을 조정하는 것은 디바이스의 작동성을 향상시키고, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, while displaying the representation of the virtual object within the second user interface area, the device adjusts the field of view 5034 of one or more cameras (eg, as illustrated in FIGS. 5K and 5L ). Detecting movement (eg, lateral movement and/or rotation of the device), and in response to detecting movement of the device, the device moves to each plane (eg, in the field of view of the one or more cameras) as the field of view of the one or more cameras is adjusted. , adjusts the representation of the virtual object (eg, virtual chair 5020) within the second user interface area according to a fixed spatial relationship (eg, orientation and/or position) between the floor surface 5038) and the virtual object. (e.g., the virtual object is displayed on the display in an orientation and position such that a fixed angle between the plane and the representation of the virtual object is maintained (e.g., the virtual object remains at a fixed position on the plane or rolls along the viewing plane) appear to)) (832). For example, in FIGS. 5K and 5L , the virtual chair 5020 within the second user interface area that includes the field of view 5034 of the camera(s) is moved relative to the floor surface 5038 as the device 100 is moved. Maintain a fixed orientation and position. In some embodiments, the virtual object appears stationary and unchanged relative to the surrounding physical environment 5002 , i.e., the representation of the virtual object changes in size, position, and The orientation changes because the field of view of one or more cameras changes as the device moves relative to the surrounding physical environment. Adjusting the representation of the virtual object according to a fixed relationship between the virtual object and each plane (eg, without requiring additional user input to maintain the position of the virtual object with respect to each plane) is the operability of the device. , which further reduces the power usage of the device and improves battery life by enabling the user to use the device more quickly and efficiently.

일부 실시예들에서, (예컨대, 제1 사용자 인터페이스 영역의 적어도 일부분의 디스플레이를 하나 이상의 카메라들의 시야의 표현으로 대체하는 것에 대응하는 시간에), 디바이스는 가상 객체(예컨대, 가상 의자(5020))의 표현이 (예컨대, 도 5f 내지 도 5i에 예시된 바와 같이) 제1 사용자 인터페이스 영역을 디스플레이하는 것으로부터 제2 사용자 인터페이스 영역을 디스플레이하는 것으로 스위칭하는 동안 연속적으로 디스플레이됨에 따라 애니메이션(예컨대, 이동, 하나 이상의 축들을 중심으로 하는 회전, 및/또는 축척조정(scaling))을 디스플레이한다(834). 예를 들어, 애니메이션은 제1 사용자 인터페이스 영역을 디스플레이하는 동안 가상 객체의 2차원 표현을 디스플레이하는 것으로부터 제2 사용자 인터페이스 영역을 디스플레이하는 동안 가상 객체의 3차원 표현을 디스플레이하는 것으로의 전이를 포함한다. 일부 실시예들에서, 가상 객체의 3차원 표현은 하나 이상의 카메라들의 시야 내에서 캡처되는 물리적 환경의 일부분의 현재 배향에 대해 미리정의된 배향을 갖는다. 일부 실시예들에서, 증강 현실 뷰로 전이될 때, 가상 객체의 표현은 디스플레이 상의 초기 위치로부터 디스플레이 상의 새로운 위치(예컨대, 증강 현실 뷰의 중심, 또는 증강 현실 뷰 내의 다른 미리정의된 위치)로 이동되고, 크기 재설정되고, 재배향되며, 이동 동안 또는 이동의 종료 시, 가상 객체가 카메라(들)의 시야 내에서 검출되는 평면(예컨대, 가상 객체의 표현을 지지할 수 있는 수직 벽 또는 수평 바닥 표면과 같은 물리적 표면)에 대해 고정된 각도에 있도록 재배향된다. 일부 실시예들에서, 가상 객체의 명암 및/또는 가상 객체에 의해 드리워진 그림자는 (예컨대, 하나 이상의 카메라들의 시야 내에서 검출되는 주변 조명과 매칭하도록) 애니메이션화된 전이가 발생함에 따라 조정된다. 제1 사용자 인터페이스 영역을 디스플레이하는 것으로부터 제2 사용자 인터페이스 영역으로 스위칭하는 동안 가상 객체의 표현으로서 애니메이션을 디스플레이하는 것은 제1 입력이 제1 기준들을 충족한다는 것을 나타내는 피드백을 사용자에게 제공한다. 개선된 피드백을 제공하는 것은, (예컨대, 디바이스를 작동시킬 때/그와 상호작용할 때 사용자가 적절한 입력들을 제공하는 것을 돕고 사용자 실수들을 감소시킴으로써) 디바이스의 작동성을 향상시키고, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, (eg, at a time corresponding to replacing the display of at least a portion of the first user interface area with a representation of the field of view of the one or more cameras), the device is a virtual object (eg, virtual chair 5020) An animation (eg, movement, Displays (834) rotation and/or scaling about one or more axes. For example, the animation includes a transition from displaying a two-dimensional representation of the virtual object while displaying a first user interface area to displaying a three-dimensional representation of the virtual object while displaying a second user interface area. . In some embodiments, the three-dimensional representation of the virtual object has a predefined orientation relative to the current orientation of the portion of the physical environment that is captured within the field of view of the one or more cameras. In some embodiments, upon transition to the augmented reality view, the representation of the virtual object is moved from an initial position on the display to a new position on the display (eg, the center of the augmented reality view, or another predefined position within the augmented reality view) and , resized, reoriented, and, during or at the end of movement, the plane in which the virtual object is detected within the field of view of the camera(s) (eg, a vertical wall or horizontal floor surface capable of supporting the representation of the virtual object and It is reoriented so that it is at a fixed angle to the same physical surface). In some embodiments, the virtual object's contrast and/or shadow cast by the virtual object is adjusted as the animated transition occurs (eg, to match ambient lighting detected within the field of view of one or more cameras). Displaying the animation as a representation of the virtual object during switching from displaying the first user interface region to the second user interface region provides feedback to the user indicating that the first input meets the first criteria. Providing improved feedback improves the operability of the device (eg, by helping the user provide appropriate inputs and reducing user errors when operating/interacting with the device), which additionally allows the user to By enabling the device to be used more quickly and efficiently, it reduces the device's power usage and improves battery life.

일부 실시예들에서, 디스플레이 상에 제2 사용자 인터페이스 영역을 디스플레이하는 동안, 디바이스는 제2 접촉(예컨대, 접촉(5040))에 의한 제2 입력을 검출하고 - 여기서 제2 입력은 (예컨대, 도 5n 내지 도 5p에 예시된 바와 같이) (선택적으로, 가상 객체의 표현을 선택하기 위한 제2 접촉에 의한 누르기 또는 터치 입력 및) 디스플레이를 가로지르는 제1 경로를 따르는 제2 접촉의 이동을 포함함 -, 제2 접촉에 의한 제2 입력을 검출하는 것에 응답하여, 디바이스는 제1 경로에 대응하는 (예컨대, 제1 경로와 동일하거나 그에 의해 제약되는) 제2 경로를 따라서 제2 사용자 인터페이스 영역 내에서 가상 객체(예컨대, 가상 의자(5020))의 표현을 이동시킨다(836). 일부 실시예들에서, 제2 접촉은 제1 접촉과 별개이고, 제1 접촉의 리프트오프 후에 검출된다(예컨대, 도 5c 내지 도 5f의 접촉(5026)의 리프트오프 후에 검출되는 도 5n 내지 도 5p의 접촉(5040)에 의해 예시되는 바와 같음). 일부 실시예들에서, 제2 접촉은 (예컨대, AR 트리거 기준들을 충족하고 이어서 터치 스크린(112)을 가로질러 이동하여 가상 램프(5084)를 이동시키는 접촉(5086)에 의한 입력에 의해 예시되는 바와 같이) 터치 감응형 표면 상에서 연속적으로 유지되는 제1 접촉과 동일하다. 일부 실시예들에서, 가상 객체 상의 스와이프 입력이 가상 객체를 회전시키는 한편, 가상 객체의 이동은 선택적으로 카메라(들)의 시야 내의 평면에 의해 제약된다(예컨대, 스와이프 입력은 카메라(들)의 시야 내의 바닥 평면 상에서 의자의 표현을 회전시킨다). 입력을 검출하는 것에 응답하여 가상 객체의 표현을 이동시키는 것은 가상 객체의 디스플레이된 위치가 사용자 입력에 응답하여 이동가능하다는 것을 나타내는 피드백을 사용자에게 제공한다. 개선된 피드백을 제공하는 것은, (예컨대, 디바이스를 작동시킬 때/그와 상호작용할 때 사용자가 적절한 입력들을 제공하는 것을 돕고 사용자 실수들을 감소시킴으로써) 디바이스의 작동성을 향상시키고, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, while displaying the second user interface region on the display, the device detects a second input by a second contact (eg, contact 5040), wherein the second input is (eg, FIG. including movement of the second contact along a first path across the display (and optionally a press or touch input by a second contact to select a representation of the virtual object) (as illustrated in FIGS. 5N-5P ) -, in response to detecting the second input by the second contact, the device is within a second user interface area along a second path corresponding to the first path (eg, equal to or constrained by the first path) moves ( 836 ) the representation of the virtual object (eg, virtual chair 5020 ). In some embodiments, the second contact is separate from the first contact and is detected after liftoff of the first contact (eg, FIGS. 5N-5P detected after liftoff of contact 5026 of FIGS. 5C-5F ). as exemplified by contact 5040 of In some embodiments, the second contact is as illustrated by input by contact 5086 (eg, meets AR trigger criteria and then moves across touch screen 112 to move virtual ramp 5084 ). same) as the first contact maintained continuously on the touch-sensitive surface. In some embodiments, a swipe input on the virtual object rotates the virtual object, while movement of the virtual object is optionally constrained by a plane within the camera(s)'s field of view (eg, the swipe input rotates the camera(s)) rotates the representation of the chair on the floor plane within the field of view of Moving the representation of the virtual object in response to detecting the input provides feedback to the user indicating that the displayed position of the virtual object is movable in response to the user input. Providing improved feedback improves the operability of the device (eg, by helping the user provide appropriate inputs and reducing user errors when operating/interacting with the device), which additionally allows the user to By enabling the device to be used more quickly and efficiently, it reduces the device's power usage and improves battery life.

일부 실시예들에서, 디바이스는 가상 객체의 표현이 접촉의 이동 및 가상 객체에 대응하는 각각의 평면에 기초하여 제2 경로를 따라서 이동함에 따라 (예컨대, 가상 객체의 표현으로부터 사용자까지의 가상 거리에 기초하여, 시야 내에서 가상 객체의 정확한 시점을 유지하도록) 가상 객체의 표현의 크기를 조정한다(838). 예를 들어, 도 5n 내지 도 5p에서, 가상 의자(5020)의 크기는 가상 의자가 디바이스(100)로부터 멀리 테이블(5004)을 향해 카메라(들)의 시야(5034) 내로 더 깊게 이동함에 따라 감소한다. (예컨대, 카메라(들)의 시야 내의 환경에 대한 실제 크기로 가상 객체의 표현을 유지하기 위해 가상 객체의 표현의 크기를 조정하기 위한 추가 사용자 입력을 요구하지 않으면서) 가상 객체의 표현이 접촉의 이동 및 가상 객체에 대응하는 평면에 기초하여 제2 경로를 따라서 이동함에 따라 가상 객체의 표현의 크기를 조정하는 것은 디바이스의 작동성을 향상시키고, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, the device moves along the second path (eg, at a virtual distance from the representation of the virtual object to the user) as the representation of the virtual object moves along the second path based on the respective plane corresponding to the movement of the contact and the virtual object. Based on the size of the representation of the virtual object ( 838 ) to maintain an accurate viewpoint of the virtual object within the field of view. For example, in FIGS. 5N-5P , the size of the virtual chair 5020 decreases as the virtual chair moves deeper into the field of view 5034 of the camera(s) away from the device 100 and towards the table 5004 . do. (e.g., without requiring additional user input to resize the representation of the virtual object to maintain the representation of the virtual object at its actual size with respect to the environment within the field of view of the camera(s)) Resizing the representation of the virtual object as it moves along a second path based on the movement and a plane corresponding to the virtual object improves the operability of the device, which additionally allows the user to use the device more quickly and efficiently. It reduces the device's power usage and improves battery life by enabling

일부 실시예들에서, 디바이스는 가상 객체의 표현이 (예컨대, 도 5ai 내지 도 5al에 예시된 바와 같이) 제2 경로를 따라서 이동함에 따라 가상 객체(예컨대, 가상 램프(5084))의 표현의 제1 크기를 유지하고, 디바이스는 (예컨대, 도 5al 및 도 5am에 예시된 바와 같이, 제2 접촉의 리프트오프를 검출하는 것을 포함하여) 제2 접촉에 의한 제2 입력의 종료를 검출하고, 제2 접촉에 의한 제2 입력의 종료를 검출하는 것에 응답하여, 디바이스는 제2 사용자 인터페이스 영역 내의 (예컨대, 테이블 표면(5046) 상의) 낙하 위치에 가상 객체의 표현을 배치하고, 제1 크기와 구별되는 제2 크기로 제2 사용자 인터페이스 영역 내의 낙하 위치에 가상 객체의 표현을 디스플레이한다(예컨대, 접촉(5086)에 의한 입력의 종료 후인 도 5am의 가상 램프(5084)의 크기는 접촉(5086)에 의한 입력의 종료 전인 도 5al의 가상 램프(5084)의 크기와 구별된다)(840). 예를 들어, 객체는 접촉에 의해 드래그되는 동안 그의 크기 및 관찰 시점이 변하지 않고, 객체가 증강 현실 뷰에서 그의 최종 위치에 낙하될 때, 객체는 카메라(들)의 시야에 보이는 가상 객체의 낙하 위치에 대응하는 물리적 환경 내의 물리적 위치에 기초하여 결정되는 크기 및 관찰 시점으로 디스플레이되어, 낙하 위치가 카메라(들)의 시야 내의 제1 위치라는 결정에 따라 객체가 제2 크기를 갖게 하고, 낙하 위치가 카메라(들)의 시야 내의 제2 위치라는 결정에 따라 객체가 제2 크기와 상이한 제3 크기를 갖게 하는데, 여기서 제2 및 제3 크기들은 하나 이상의 카메라들로부터의 낙하 위치의 거리에 기초하여 선택된다. (예컨대, 카메라(들)의 시야 내의 환경에 대한 실제 크기로 가상 객체를 유지하기 위해 가상 객체의 크기를 조정하기 위한 추가 사용자 입력을 요구하지 않으면서) 가상 객체를 이동시키는 제2 입력의 종료를 검출하는 것에 응답하여 변경된 크기로 가상 객체의 표현을 디스플레이하는 것은 디바이스의 작동성을 향상시키고, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, the device displays a second representation of the virtual object (eg, virtual ramp 5084 ) as the representation of the virtual object moves along the second path (eg, as illustrated in FIGS. 5AI-5A ). Maintaining one magnitude, the device detects termination of the second input by the second contact (including detecting liftoff of the second contact, eg, as illustrated in FIGS. 5A-5A ), and In response to detecting the end of the second input by the second contact, the device places the representation of the virtual object at a dropped location (eg, on the table surface 5046 ) within the second user interface area, and distinguishes it from the first size. Displays a representation of the virtual object at the drop location within the second user interface area at a second size that is equal to the size of the virtual ramp 5084 of FIG. (distinct from the size of the virtual ramp 5084 of FIG. 5A) (840) before the end of the input by For example, the object does not change its size and viewpoint while being dragged by contact, and when the object is dropped to its final position in the augmented reality view, the object is the falling position of the virtual object visible in the field of view of the camera(s) displayed with a view point and a size determined based on a physical location within the physical environment corresponding to the causing the object to have a third size different from the second size in accordance with a determination that it is a second location within the field of view of the camera(s), wherein the second and third sizes are selected based on a distance of the drop location from the one or more cameras do. terminating the second input to move the virtual object (eg, without requiring additional user input to resize the virtual object to maintain the virtual object at its actual size with respect to the environment within the field of view of the camera(s)). Displaying the representation of the virtual object at a changed size in response to detecting improves the operability of the device, which additionally enables a user to use the device more quickly and efficiently, thereby reducing the power usage of the device and reducing the battery improve lifespan

일부 실시예들에서, 디스플레이를 가로지르는 제1 경로를 따른 제2 접촉의 이동이 제2 기준들을 충족한다는 (예컨대, 제1 경로의 끝에서, 접촉이 디스플레이의 에지(예컨대, 하부 에지, 상부 에지, 및/또는 측부 에지) 또는 제2 사용자 인터페이스 영역의 에지의 임계 거리 내에 있거나 그 에지의 외측에 있다는) 결정에 따라, 디바이스는 하나 이상의 카메라들의 시야의 표현을 포함하는 제2 사용자 인터페이스 영역을 디스플레이하는 것을 중지하고, 가상 객체의 표현과 함께 (전체) 제1 사용자 인터페이스 영역을 재디스플레이한다(예컨대, 제1 사용자 인터페이스 영역의 일부분이 이전에 제2 사용자 인터페이스 영역과 동시에 디스플레이되는 경우, 디바이스는 제2 사용자 인터페이스 영역이 더 이상 디스플레이되지 않은 후에 전체 제1 사용자 인터페이스 영역을 디스플레이한다)(842). 예를 들어, 도 5v 내지 도 5x에 예시된 바와 같이, 가상 의자(5054)를 터치 스크린(112)의 에지로 드래그하는 접촉(5054)의 이동에 응답하여, 도 5y 내지 도 5ad에 예시된 바와 같이, 카메라(들)의 시야(5034)는 디스플레이되는 것이 중지되고 전체 메시징 사용자 인터페이스(5008)가 재디스플레이된다. 일부 실시예들에서, 접촉이 디스플레이의 에지 또는 제2 사용자 인터페이스 영역의 에지에 접근함에 따라, 제2 사용자 인터페이스 영역은 (예컨대, 도 5x 및 도 5y에 예시된 바와 같이) 페이드 아웃되고/되거나 제1 사용자 인터페이스 영역(의 디스플레이되지 않은 또는 차단된 부분)은 (예컨대, 도 5z 및 도 5aa에 예시된 바와 같이) 페이드 인된다. 일부 실시예들에서, 비-AR 뷰(예컨대, 제1 사용자 인터페이스 영역)로부터 AR 뷰(예컨대, 제2 사용자 인터페이스 영역)로 전이하기 위한 제스처 및 AR 뷰로부터 비-AR 뷰로 전이하기 위한 제스처는 동일하다. 예를 들어, 현재 디스플레이된 사용자 인터페이스에서 임계 위치를 넘는 (예컨대, 현재 디스플레이된 사용자 인터페이스 영역의 경계의 임계 거리 내에서의, 또는 현재 디스플레이된 사용자 인터페이스 영역의 경계를 넘는) 가상 객체 상에서의 드래그 제스처는 현재 디스플레이된 사용자 인터페이스 영역으로부터 상대(counterpart) 사용자 인터페이스 영역으로의 (예컨대, 제1 사용자 인터페이스 영역을 디스플레이하는 것으로부터 제2 사용자 인터페이스 영역을 디스플레이하는 것으로의, 또는 대안적으로, 제2 사용자 인터페이스 영역을 디스플레이하는 것으로부터 제1 사용자 인터페이스 영역을 디스플레이하는 것으로의) 전이를 야기한다. 일부 실시예들에서, (예컨대, 현재 디스플레이된 사용자 인터페이스 영역을 페이드 아웃하고 상대 사용자 인터페이스를 페이드 인하는) 시각적 표시는 제1/제2 기준들이 충족되기 전에 보여지고, 입력이 계속되고 제1/제2 기준들이 입력의 종료(예컨대, 접촉의 리프트오프)가 검출되기 전에 충족되지 않으면 가역적이다. 입력 기준들을 충족하는 입력을 검출하는 것에 응답하여 제1 사용자 인터페이스를 재디스플레이하는 것은 디스플레이된 추가 제어부들(예컨대, 제2 사용자 인터페이스로부터 제1 사용자 인터페이스를 디스플레이하기 위한 제어부들)로 제2 사용자 인터페이스를 혼란스럽게 하지 않으면서 추가 제어 옵션들을 제공한다. 디스플레이된 추가 제어부들로 제2 사용자 인터페이스를 혼란스럽게 하지 않으면서 추가 제어 옵션들을 제공하는 것은 디바이스의 작동성을 향상시키고, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, movement of the second contact along the first path across the display meets second criteria (eg, at the end of the first path, the contact is at an edge of the display (eg, bottom edge, top edge). , and/or a side edge) or is within a threshold distance of or outside the edge of the second user interface area), the device displays a second user interface area comprising a representation of the field of view of the one or more cameras. stops, and redisplays the (full) first user interface area with the representation of the virtual object (eg, if a portion of the first user interface area was previously displayed concurrently with the second user interface area, the device 2 display the entire first user interface area after the user interface area is no longer displayed (842). For example, in response to movement of contact 5054 dragging virtual chair 5054 to the edge of touch screen 112 , as illustrated in FIGS. 5V-5X , as illustrated in FIGS. 5Y-5A . Likewise, the field of view 5034 of the camera(s) ceases to be displayed and the entire messaging user interface 5008 is redisplayed. In some embodiments, as the contact approaches an edge of the display or an edge of the second user interface region, the second user interface region fades out (eg, as illustrated in FIGS. 5X and 5Y ) and/or the second user interface region 1 The undisplayed or blocked portion of the user interface area (eg, as illustrated in FIGS. 5Z and 5AA ) fades in. In some embodiments, the gesture to transition from the non-AR view (eg, first user interface region) to the AR view (eg, second user interface region) and the gesture to transition from AR view to non-AR view are the same Do. For example, a drag gesture on a virtual object that crosses a threshold position in the currently displayed user interface (eg, within a threshold distance of the boundary of the currently displayed user interface area, or beyond the boundary of the currently displayed user interface area). is from the currently displayed user interface region to a counterpart user interface region (eg, from displaying a first user interface region to displaying a second user interface region, or alternatively, a second user interface region). cause a transition from displaying the region to displaying the first user interface region). In some embodiments, the visual indication (eg, fading out the currently displayed user interface area and fading in the opposing user interface) is shown before the first/second criteria are met, the input continues and the first/second criteria are met. The second criteria are reversible if the second criteria are not met before the end of the input (eg, liftoff of the contact) is detected. Redisplaying the first user interface in response to detecting input that meets the input criteria may include displayed additional controls (eg, controls for displaying the first user interface from the second user interface) of the second user interface. provides additional control options without confusing the Providing additional control options without cluttering the second user interface with additional controls displayed improves the operability of the device, which in addition enables the user to use the device more quickly and efficiently, thereby reduce power consumption and improve battery life.

일부 실시예들에서, 제1 사용자 인터페이스 영역을 재디스플레이하는 것에 대응하는 시간에, 디바이스는 (예컨대, 도 5ab 내지 도 5ad에서 가상 의자(5020)의 애니메이션에 의해 예시된 바와 같은) 제2 사용자 인터페이스 영역 내에 가상 객체의 표현을 디스플레이하는 것으로부터 제1 사용자 인터페이스 영역 내에 가상 객체의 표현을 디스플레이하는 것으로의 애니메이션화된 전이(예컨대, 이동, 하나 이상의 축들을 중심으로 하는 회전, 및/또는 축척조정)를 디스플레이한다(844). (예컨대, 제1 사용자 인터페이스 내에 가상 객체를 재위치시키기 위한 추가 사용자 입력을 요구하지 않으면서) 제2 사용자 인터페이스 내에 가상 객체의 표현을 디스플레이하는 것으로부터 제1 사용자 인터페이스 내에 가상 객체의 표현을 디스플레이하는 것으로의 애니메이션화된 전이를 디스플레이하는 것은 디바이스의 작동성을 향상시키고, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, at a time corresponding to redisplaying the first user interface area, the device may display a second user interface (eg, as illustrated by the animation of virtual chair 5020 in FIGS. 5A-5A ). An animated transition (eg, movement, rotation about one or more axes, and/or scaling) from displaying a representation of the virtual object within the area to displaying a representation of the virtual object within the first user interface area. Display (844). displaying a representation of the virtual object in the first user interface from displaying a representation of the virtual object in the second user interface (eg, without requiring additional user input to reposition the virtual object within the first user interface). Displaying an animated transition to one improves the operability of the device, which additionally enables a user to use the device more quickly and efficiently, thereby reducing the device's power usage and improving battery life.

일부 실시예들에서, 제2 접촉이 제1 경로를 따라서 이동함에 따라, 디바이스는 접촉의 현재 위치에 대응하는 하나 이상의 카메라들의 시야 내에서 식별되는 하나 이상의 각각의 평면들의 시각적 외관을 변경한다(예컨대, 하나 이상의 평면들의 외관을 강조, 마킹, 윤곽형성, 및/또는 달리 시각적으로 변경함)(846). 예를 들어, 접촉(5042)이 도 5o 및 도 5p의 화살표들(5042, 5044)에 의해 예시된 바와 같은 경로를 따라서 가상 의자(5020)를 드래그함에 따라, 바닥 표면(5038)이 (예컨대, 접촉(5042)의 이동 전의 도 5m과 비교하여) 강조된다. 일부 실시예들에서, 접촉이 카메라(들)의 시야 내에서 검출되는 제1 평면에 대응하는 위치에 있다는 결정에 따라, 제1 평면이 강조된다. (예컨대, 도 5s 내지 도 5u에 도시된 바와 같이) 접촉이 카메라(들)의 시야 내에서 검출되는 제2 평면에 대응하는 위치로 이동하였다는 결정에 따라, 제1 평면(예컨대, 바닥 표면(5038))은 강조되는 것이 중지되고 제2 평면(예컨대, 테이블 표면(5046))이 강조된다. 일부 실시예들에서, 다수의 평면들이 동시에 강조된다. 일부 실시예들에서, 다수의 시각적으로 변경된 평면들 중 제1 평면은 접촉이 제1 평면에 대응하는 위치에 있다는 것을 나타내도록 다른 평면들이 시각적으로 변경되는 방식과는 별개인 방식으로 시각적으로 변경된다. 카메라(들)의 시야 내에서 식별되는 하나 이상의 각각의 평면들의 시각적 외관을 변경하는 것은 평면(예컨대, 상기 평면에 대해 가상 객체가 위치될 수 있음)이 식별되었다는 것을 나타내는 피드백을 사용자에게 제공한다. 개선된 시각적 피드백을 제공하는 것은, (예컨대, 디바이스를 작동시킬 때/그와 상호작용할 때 사용자가 적절한 입력들을 제공하는 것을 돕고 사용자 실수들을 감소시킴으로써) 디바이스의 작동성을 향상시키고, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, as the second contact moves along the first path, the device changes the visual appearance of one or more respective planes identified within the field of view of the one or more cameras corresponding to the current location of the contact (eg, , highlighting, marking, contouring, and/or otherwise visually altering the appearance of one or more planes (846). For example, as contact 5042 drags virtual chair 5020 along a path as illustrated by arrows 5042 , 5044 in FIGS. 5O and 5P , floor surface 5038 (eg, 5M before movement of contact 5042) is highlighted. In some embodiments, upon determining that the contact is at a location corresponding to the first plane being detected within the field of view of the camera(s), the first plane is highlighted. In accordance with a determination that the contact has moved to a location corresponding to the second plane being detected within the field of view of the camera(s) (eg, as shown in FIGS. 5S-5U ), the first plane (eg, the floor surface 5038)) ceases to be emphasized and the second plane (eg, table surface 5046) is highlighted. In some embodiments, multiple planes are highlighted simultaneously. In some embodiments, a first plane of the plurality of visually altered planes is visually altered in a manner separate from the way other planes are visually altered to indicate that the contact is at a position corresponding to the first plane. . Changing the visual appearance of each of the one or more planes identified within the field of view of the camera(s) provides feedback to the user indicating that a plane (eg, with respect to which a virtual object may be positioned) has been identified. Providing improved visual feedback improves the operability of the device (eg, by helping the user provide appropriate inputs and reducing user errors when operating/interacting with the device), which additionally It reduces the device's power usage and improves battery life by enabling faster and more efficient use of the device.

일부 실시예들에서, 접촉에 의한 제1 입력을 검출하는 것에 응답하여, 접촉에 의한 제1 입력이 제3 (예컨대, 스테이징 사용자 인터페이스 디스플레이) 기준들을 충족한다는 결정에 따라(예컨대, 스테이징 사용자 인터페이스 디스플레이 기준들은 스와이프 입력, 계속 터치하기 입력, 누르기 입력, 탭 입력, 또는 미리정의된 세기 임계치를 초과하는 세기를 갖는 강한 누르기를 식별하도록 구성된 기준들임), 디바이스는, (예컨대, 가상 객체의 2D 이미지를 대체한 가상 객체의 3D 모델을 포함하는) 제1 사용자 인터페이스 영역의 적어도 일부분의 디스플레이를 대체하는 것을 포함하여, 디스플레이 상에 제3 사용자 인터페이스 영역을 디스플레이한다(848). 일부 실시예들에서, 스테이징 사용자 인터페이스(예컨대, 도 6i와 관련하여 기술된 바와 같은 스테이징 사용자 인터페이스(6010))를 디스플레이하는 동안, 디바이스는 (예컨대, 방법(900)을 참조하여 아래에서 더 상세히 설명되는 바와 같이) 스테이징 사용자 인터페이스에 대응하는 검출된 입력들에 기초하여 가상 객체의 표현의 외관을 업데이트한다. 일부 실시예들에서, 가상 객체가 스테이징 사용자 인터페이스에 디스플레이되는 동안 다른 입력이 검출되고 입력이 제2 사용자 인터페이스 영역을 디스플레이하는 것으로 전이하기 위한 기준들을 충족하는 경우, 디바이스는 가상 객체를 연속적으로 디스플레이하면서 스테이징 사용자 인터페이스의 디스플레이를 제2 사용자 인터페이스 영역으로 대체한다. 더 많은 상세사항들이 방법(900)과 관련하여 기술된다. 제1 입력이 제3 기준들을 충족한다는 결정에 따라 제3 사용자 인터페이스를 디스플레이하는 것은, 디스플레이된 추가 제어부들(예컨대, 제1 사용자 인터페이스로부터 제3 사용자 인터페이스를 디스플레이하기 위한 제어부들)로 제1 사용자 인터페이스를 혼란스럽게 하지 않으면서 추가 제어 옵션들을 제공한다. 디스플레이된 추가 제어부들로 제2 사용자 인터페이스를 혼란스럽게 하지 않으면서 추가 제어 옵션들을 제공하는 것은 디바이스의 작동성을 향상시키고, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, in response to detecting the first input by the contact, in response to determining that the first input by the contact meets a third (eg, staging user interface display) criteria (eg, displaying a staging user interface) The criteria are criteria configured to identify a swipe input, a touch-and-hold input, a press input, a tap input, or a strong press having an intensity that exceeds a predefined intensity threshold), the device is configured to: (eg, a 2D image of the virtual object) Display ( 848 ) the third user interface region on the display, including replacing the display of at least a portion of the first user interface region (including the 3D model of the virtual object that has been replaced). In some embodiments, while displaying a staging user interface (eg, staging user interface 6010 as described with respect to FIG. 6I ), the device (eg, described in greater detail below with reference to method 900 ) update the appearance of the representation of the virtual object based on the detected inputs corresponding to the staging user interface. In some embodiments, if another input is detected while the virtual object is being displayed in the staging user interface and the input meets the criteria for transitioning to displaying the second user interface area, the device continuously displays the virtual object while Replace the display of the staging user interface with the second user interface area. Further details are described with respect to method 900 . Displaying the third user interface in accordance with a determination that the first input meets the third criteria includes the first user with displayed additional controls (eg, controls for displaying a third user interface from the first user interface). It provides additional control options without cluttering the interface. Providing additional control options without cluttering the second user interface with additional controls displayed improves the operability of the device, which in addition enables the user to use the device more quickly and efficiently, thereby reduce power consumption and improve battery life.

일부 실시예들에서, 접촉에 의한 제1 입력(예컨대, 제1 사용자 인터페이스 영역을 스크롤하는 것에 대응하는 스와이프 입력 또는 제1 사용자 인터페이스 영역 내의 콘텐츠에 대응하는 이메일 또는 웹 페이지를 디스플레이하라는 요청에 대응하는 탭 입력)이 제1 (예컨대, AR 트리거) 기준들을 충족하지 않는다는 결정에 따라, 디바이스는 (예컨대, 도 6b 및 도 6c와 관련하여 기술된 바와 같이) 제1 사용자 인터페이스 영역의 적어도 일부분의 디스플레이를 하나 이상의 카메라들의 시야의 표현으로 대체하지 않으면서 제1 사용자 인터페이스 영역의 디스플레이를 유지한다(850). 제1 사용자 인터페이스 영역의 적어도 일부분의 디스플레이를 하나 이상의 카메라들의 시야로 대체하는 동안 제1 사용자 인터페이스 영역의 디스플레이를 유지할지 또는 가상 객체의 표현을 연속적으로 디스플레이할지를 결정하기 위한 제1 기준들을 사용함으로써 입력에 응답하여 다수의 상이한 유형들의 동작들의 수행을 가능하게 한다. (예컨대, 사용자 인터페이스의 적어도 일부분의 디스플레이를 하나 이상의 카메라들의 시야로 대체함으로써, 또는 제1 사용자 인터페이스 영역의 적어도 일부분의 디스플레이를 하나 이상의 카메라들의 시야의 표현으로 대체하지 않으면서 제1 사용자 인터페이스 영역의 디스플레이를 유지함으로써) 입력에 응답하여 다수의 상이한 유형들의 동작들의 수행을 가능하게 하는 것은, 사용자가 이들 동작들을 수행할 수 있는 효율을 증가시키며, 이에 의해 디바이스의 작동성을 향상시키고, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, in response to a first input by contact (eg, a swipe input corresponding to scrolling the first user interface area or a request to display an email or web page corresponding to content within the first user interface area) Upon determining that the tap input) does not satisfy the first (eg, AR trigger) criteria, the device displays a display of at least a portion of the first user interface area (eg, as described with respect to FIGS. 6B and 6C ). Maintains the display of the first user interface area ( 850 ) without replacing . input by using the first criteria to determine whether to keep the display of the first user interface area or to continuously display the representation of the virtual object while replacing the display of at least a portion of the first user interface area with the field of view of the one or more cameras. responsive to performing a number of different types of operations. (e.g., by replacing the display of at least a portion of the user interface with the field of view of one or more cameras, or without replacing the display of at least a portion of the first user interface area with a representation of the field of view of the one or more cameras. Enabling the performance of a number of different types of operations in response to input (by holding a display) increases the efficiency with which a user can perform these operations, thereby improving the operability of the device, which additionally: It reduces the device's power usage and improves battery life by enabling users to use the device more quickly and efficiently.

도 8a 내지 도 8e에서의 동작들이 기술된 특정 순서는 단지 일례이며 기술된 순서가 동작들이 수행될 수 있는 유일한 순서임을 나타내는 것으로 의도되지는 않는다는 것이 이해되어야 한다. 당업자는 본 명세서에 기술된 동작들을 재순서화하는 다양한 방식들을 인식할 것이다. 또한, 본 명세서에 기술된 다른 방법들(예컨대, 방법들(900, 1000))과 관련하여 본 명세서에 기술된 다른 프로세스들의 상세사항들이 도 8a 내지 도 8e와 관련하여 전술된 방법(800)과 유사한 방식으로 또한 적용가능하다는 것에 주목해야 한다. 예를 들어, 방법(800)과 관련하여 전술된 접촉들, 입력들, 가상 객체들, 사용자 인터페이스 영역들, 세기 임계치들, 촉각적 출력들, 시야들, 이동들, 및/또는 애니메이션들은 선택적으로, 본 명세서에 기술된 다른 방법들(예컨대, 방법들(900, 1000, 16000, 17000, 18000, 19000, 20000))과 관련하여 본 명세서에 기술된 접촉들, 입력들, 가상 객체들, 사용자 인터페이스 영역들, 세기 임계치들, 촉각적 출력들, 시야들, 이동들, 및/또는 애니메이션들의 특성들 중 하나 이상을 갖는다. 간결함을 위해, 이러한 상세사항들은 여기서 반복되지 않는다.It should be understood that the specific order in which the operations in FIGS. 8A-8E are described is merely an example and is not intended to indicate that the described order is the only order in which the operations may be performed. Those skilled in the art will recognize various ways of reordering the operations described herein. Further, details of other processes described herein with respect to other methods described herein (eg, methods 900 , 1000 ) are similar to method 800 described above with respect to FIGS. 8A-8E . It should be noted that a similar manner is also applicable. For example, contacts, inputs, virtual objects, user interface regions, intensity thresholds, tactile outputs, fields of view, movements, and/or animations described above with respect to method 800 may optionally be , contacts, inputs, virtual objects, user interface described herein in connection with other methods described herein (eg, methods 900, 1000, 16000, 17000, 18000, 19000, 20000). have one or more of the properties of regions, intensity thresholds, tactile outputs, fields of view, movements, and/or animations. For the sake of brevity, these details are not repeated here.

도 9a 내지 도 9d는 일부 실시예들에 따른, 제1 사용자 인터페이스 영역 내에 가상 객체의 제1 표현을, 제2 사용자 인터페이스 영역 내에 가상 객체의 제2 표현을, 그리고 하나 이상의 카메라들의 시야의 표현과 함께 가상 객체의 제3 표현을 디스플레이하는 방법(900)을 예시하는 흐름도들이다. 방법(900)은 디스플레이, 터치 감응형 표면, 및 하나 이상의 카메라들(예컨대, 디스플레이 및 터치 감응형 표면과 반대편인 디바이스의 면 상의 하나 이상의 후방 카메라들)을 갖는 전자 디바이스(예컨대, 도 3의 디바이스(300), 또는 도 1a의 휴대용 다기능 디바이스(100))에서 수행된다. 일부 실시예들에서, 디스플레이는 터치 스크린 디스플레이이고, 터치 감응형 표면은 디스플레이 상에 있거나 그와 통합된다. 일부 실시예들에서, 디스플레이는 터치 감응형 표면과는 별개이다. 방법(900)에서의 일부 동작들이 선택적으로 조합되고/되거나, 일부 동작들의 순서가 선택적으로 변경된다.9A-9D illustrate a first representation of a virtual object within a first user interface area, a second representation of a virtual object within a second user interface area, and a representation of a field of view of one or more cameras, in accordance with some embodiments; Together are flow diagrams illustrating a method 900 of displaying a third representation of a virtual object. The method 900 includes an electronic device (eg, the device of FIG. 3 ) having a display, a touch-sensitive surface, and one or more cameras (eg, one or more rear cameras on the side of the device opposite the display and the touch-sensitive surface). 300 , or portable multifunction device 100 of FIG. 1A ). In some embodiments, the display is a touch screen display and the touch-sensitive surface is on or integrated with the display. In some embodiments, the display is separate from the touch-sensitive surface. Some operations in method 900 are selectively combined and/or the order of some operations is selectively changed.

아래에 기술되는 바와 같이, 방법(900)은 제1 사용자 인터페이스(예컨대, 2차원 그래픽 사용자 인터페이스) 내에 가상 객체의 표현을 디스플레이하는 디바이스의 터치 감응형 표면에서 접촉에 의한 입력을 검출하는 것에 관한 것이다. 제1 입력에 응답하여, 디바이스는 제2 사용자 인터페이스(예컨대, 가상 객체의 3차원 표현이 이동, 크기 재설정, 및/또는 재배향될 수 있는 스테이징 사용자 인터페이스) 내에 가상 객체의 제2 표현을 디스플레이할지 여부를 결정하기 위한 기준들을 사용한다. 제2 사용자 인터페이스 내에 가상 객체의 제2 표현을 디스플레이하는 동안, 제2 입력에 응답하여, 디바이스는 제2 입력에 기초하여 가상 객체의 제2 표현의 디스플레이 속성을 변경하거나 또는 디바이스의 하나 이상의 카메라들의 시야를 포함하는 제3 사용자 인터페이스 내에 가상 객체의 제3 표현을 디스플레이한다. (예컨대, 가상 객체의 디스플레이 속성을 변경하거나 제3 사용자 인터페이스 내에 가상 객체를 디스플레이함으로써) 입력에 응답하여 다수의 상이한 유형들의 동작들의 수행을 가능하게 하는 것은, 사용자가 이들 동작들을 수행할 수 있는 효율을 증가시키며, 이에 의해 디바이스의 작동성을 향상시키고, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.As described below, method 900 relates to detecting input by contact at a touch-sensitive surface of a device that displays a representation of a virtual object within a first user interface (eg, a two-dimensional graphical user interface). . In response to the first input, the device determines whether to display a second representation of the virtual object within a second user interface (eg, a staging user interface in which the three-dimensional representation of the virtual object may be moved, resized, and/or reoriented). Criteria for determining whether or not While displaying a second representation of the virtual object within the second user interface, in response to the second input, the device changes a display property of the second representation of the virtual object based on the second input or changes the display properties of the one or more cameras of the device. Display a third representation of the virtual object within a third user interface comprising a field of view. Enabling performance of a number of different types of actions in response to an input (eg, by changing a display property of the virtual object or displaying the virtual object within a third user interface) is the efficiency with which a user can perform these actions. , thereby improving the operability of the device, which additionally enables the user to use the device more quickly and efficiently, thereby reducing the power usage of the device and improving the battery life.

디바이스는 디스플레이(112) 상의 제1 사용자 인터페이스 영역(예컨대, 2차원 그래픽 사용자 인터페이스 또는 그의 일부분(예컨대, 가구 이미지들의 열람가능 목록, 하나 이상의 선택가능 객체들을 포함하는 이미지 등)) 내에 가상 객체의 제1 표현(예컨대, 3차원 객체의 그래픽 표현, 예컨대, 가상 의자(5020), 가상 램프(5084), 신발, 가구, 수공구들, 장식물들, 사람, 이모지, 게임 캐릭터, 가상 가구, 등)을 디스플레이한다(902). 예를 들어, 제1 사용자 인터페이스 영역은 도 6a에 도시된 바와 같은 메시징 사용자 인터페이스(5008)이다. 일부 실시예들에서, 제1 사용자 인터페이스 영역은 디바이스 주위의 물리적 환경의 이미지 이외의 배경을 포함한다(예컨대, 제1 사용자 인터페이스 영역의 배경은 미리선택된 배경 색상/패턴, 또는 하나 이상의 카메라들에 의해 동시에 캡처된 출력 이미지와 구별되고 하나 이상의 카메라들의 시야 내의 라이브 콘텐츠와 구별되는 배경 이미지이다).The device creates a second virtual object within a first user interface area (eg, a two-dimensional graphical user interface or portion thereof (eg, a viewable list of furniture images, an image containing one or more selectable objects, etc.) on the display 112 ). 1 representation (eg, a graphic representation of a three-dimensional object, eg, virtual chair 5020, virtual lamp 5084, shoes, furniture, hand tools, decorations, person, emoji, game character, virtual furniture, etc.) Display (902). For example, the first user interface area is a messaging user interface 5008 as shown in FIG. 6A . In some embodiments, the first user interface region includes a background other than an image of the physical environment surrounding the device (eg, the background of the first user interface region may be configured by a preselected background color/pattern, or by one or more cameras). A background image that is distinct from the output image captured at the same time and that is distinct from live content within the field of view of one or more cameras).

디스플레이 상의 제1 사용자 인터페이스 영역 내에 가상 객체의 제1 표현을 디스플레이하는 동안, 디바이스는 디스플레이 상의 가상 객체의 제1 표현에 대응하는 터치 감응형 표면 상의 위치에서 제1 접촉에 의한 제1 입력을 검출한다(예컨대, 제1 접촉은 터치 스크린 디스플레이 상의 가상 객체의 제1 표현 상에서 검출되거나, 제1 접촉은 가상 객체의 제1 표현과 함께 제1 사용자 인터페이스 영역 내에 동시에 디스플레이되는 그리고 제1 접촉에 의해 호출될 때 AR 뷰(예컨대, 카메라(들)의 시야(6036)) 및/또는 가상 객체(예컨대, 가상 의자(5020))의 표현을 포함하는 스테이징 사용자 인터페이스(6010)의 디스플레이를 트리거하도록 구성되는 어포던스(예컨대, 토글 제어부(6018)) 상에서 검출된다)(904). 예를 들어, 제1 입력은 도 6e 내지 도 6i와 관련하여 기술된 바와 같은 접촉(6006)에 의한 입력이다.While displaying a first representation of the virtual object within a first user interface area on the display, the device detects a first input by the first contact at a location on the touch-sensitive surface corresponding to the first representation of the virtual object on the display (eg, the first contact is detected on a first representation of the virtual object on the touch screen display, or the first contact is simultaneously displayed in the first user interface area with the first representation of the virtual object and is invoked by the first contact. an affordance configured to trigger display of the staging user interface 6010 comprising a representation of an AR view (eg, field of view 6036 of the camera(s)) and/or a virtual object (eg, virtual chair 5020) when detected on the toggle control 6018) (904). For example, the first input is an input by contact 6006 as described with respect to FIGS. 6E-6I .

제1 접촉에 의한 제1 입력을 검출하는 것에 응답하여 그리고 제1 접촉에 의한 제1 입력이 제1 (예컨대, 스테이징 트리거) 기준들을 충족한다는 결정에 따라(예컨대, 스테이징 트리거 기준들은 스와이프 입력, 계속 터치하기 입력, 누르기 입력, 탭 입력, 접촉의 터치다운, 접촉의 초기 이동, 또는 카메라(들)의 활성화 및/또는 카메라(들)의 시야 내의 시야 평면들의 검출을 트리거하는 것과 연관된 다른 유형의 미리정의된 입력 제스처를 식별하도록 구성된 기준들임), 디바이스는 제1 사용자 인터페이스 영역과 상이한 제2 사용자 인터페이스 영역 내에 가상 객체의 제2 표현을 디스플레이한다(예컨대, 제2 사용자 인터페이스 영역은 카메라(들)의 시야를 포함하지 않는 그리고 가상 객체의 3차원 표현이 사용자 입력에 응답하여 조작(예컨대, 회전 및 이동)될 수 있는 시뮬레이션된 3차원 공간을 포함하는 스테이징 사용자 인터페이스(6010)이다)(906). 예를 들어, 도 6e 내지 도 6h에서, 접촉(6006)에 의한 입력이 깊게 누르기 세기 임계치(ITD)를 초과하여 증가하는 특성 세기를 갖는다는 결정에 따라, 가상 의자 객체(5020)는 (예컨대, 도 6e에 도시된 바와 같은) 메시징 사용자 인터페이스(5008)와 구별되는 (예컨대, 도 6i에 도시된 바와 같은) 스테이징 사용자 인터페이스(6010)에 디스플레이된다.In response to detecting the first input by the first contact and in response to determining that the first input by the first contact meets first (eg, staging trigger) criteria (eg, the staging trigger criteria include: a swipe input; Continue to touch input, press input, tap input, touchdown of contact, initial movement of contact, or other type associated with triggering activation of the camera(s) and/or detection of viewing planes within the field of view of the camera(s) criteria configured to identify a predefined input gesture), the device displays a second representation of the virtual object in a second user interface area different from the first user interface area (eg, the second user interface area is the camera(s)) is a staging user interface 6010 ( 906 ) that does not include a field of view of and includes a simulated three-dimensional space in which a three-dimensional representation of a virtual object can be manipulated (eg, rotated and moved) in response to user input. For example, in FIGS. 6E-6H , upon determining that the input by contact 6006 has a characteristic intensity that increases above the deep press intensity threshold IT D , the virtual chair object 5020 (eg, , displayed in a staging user interface 6010 (eg, as shown in FIG. 6I ) that is distinct from the messaging user interface 5008 (as shown in FIG. 6E ).

일부 실시예들에서, 제1 입력을 검출하는 것에 응답하여 그리고 제1 입력이 스테이징 트리거 기준들을 충족한다는 결정에 따라, 디바이스는 가상 객체의 3차원 표현이 제1 사용자 인터페이스 영역에 도시된 바와 같은 제1 배향(예컨대, 도 6e의 메시징 사용자 인터페이스(5008)에 도시된 바와 같은 가상 의자(5020)의 제1 배향)으로부터 디바이스 주위의 물리적 환경에 대한 디바이스의 현재 배향과는 독립적으로 배향되는 디스플레이 상의 가상 평면에 기초하여 결정되는 제2 배향(예컨대, 도 6i에 도시된 바와 같은, 스테이지 평면(6014)에 기초하여 결정되는 가상 의자(5020)의 제2 배향)으로 이동되고 재배향되는 것을 보여주는 제1 애니메이션화된 전이를 디스플레이한다. 예를 들어, 가상 객체의 3차원 표현은 (예컨대, 2차원 그래픽 사용자 인터페이스에 도시된 바와 같은 가상 객체의 형상 및 배향에 기초한) 미리정의된 배향 및/또는 평면으로부터의 거리를 갖고, 스테이징 뷰(예컨대, 스테이징 사용자 인터페이스(6010))로 전이될 때, 3차원 표현은 디스플레이 상의 가상 객체의 원래 위치로부터 디스플레이 상의 새로운 위치(예컨대, 가상 스테이지(6014)의 중심)로 이동, 크기 재설정, 및 재배향되고, 이동 동안 또는 이동의 종료 시, 3차원 표현은 가상 객체가 디바이스 주위의 물리적 환경과 독립적으로 한정되는 미리정의된 스테이징 가상 평면(6014)에 대해 고정된 각도에 있도록 재배향된다.In some embodiments, in response to detecting the first input and upon determining that the first input satisfies the staging trigger criteria, the device displays a first three-dimensional representation of the virtual object as shown in the first user interface region. A virtual on the display oriented independently of the device's current orientation with respect to the physical environment surrounding the device from one orientation (eg, a first orientation of virtual chair 5020 as shown in messaging user interface 5008 of FIG. 6E ). a first showing being moved and redirected to a second orientation determined based on the plane (eg, a second orientation of the virtual chair 5020 determined based on the stage plane 6014 , as shown in FIG. 6I ) Displays animated transitions. For example, a three-dimensional representation of a virtual object may have a predefined orientation (e.g., based on the shape and orientation of the virtual object as shown in a two-dimensional graphical user interface) and/or distance from a plane, and a staging view ( When transitioned to, for example, the staging user interface 6010 ), the three-dimensional representation is moved, resized, and reoriented from the original location of the virtual object on the display to a new location on the display (eg, the center of the virtual stage 6014 ). and, during or at the end of the movement, the three-dimensional representation is reoriented such that the virtual object is at a fixed angle with respect to a predefined staging virtual plane 6014 that is defined independently of the physical environment around the device.

제2 사용자 인터페이스 영역 내에 가상 객체의 제2 표현을 디스플레이하는 동안, 디바이스는 제2 입력(예컨대, 도 6q 내지 도 6t에 예시된 바와 같은 접촉(6034)에 의한 입력)을 검출한다(908). 일부 실시예들에서, 제2 입력을 검출하는 것은 가상 객체의 제2 표현에 대응하는 터치 스크린 상의 위치에서 하나 이상의 제2 접촉들을 검출하는 것, 제2 접촉에 의해 호출될 때 디바이스 주위의 물리적 환경의 증강 현실 뷰의 디스플레이를 트리거하도록 구성되는 어포던스 상에서의 제2 접촉을 검출하는 것, 제2 접촉(들)의 이동을 검출하는 것, 및/또는 제2 접촉(들)의 리프트오프를 검출하는 것을 포함한다. 일부 실시예들에서, 제2 입력은 동일한 접촉에 의한 제1 입력의 연속(예컨대, 제2 입력은 도 6e 내지 도 6i에 예시된 바와 같은 접촉(6006)에 의한 제1 입력에 이은 도 6q 내지 도 6t에 예시된 바와 같은 접촉(6034)에 의한 입력임(접촉의 리프트오프가 없음)), 또는 완전히 상이한 접촉에 의한 별개의 입력(예컨대, 제2 입력은 도 6e 내지 도 6i에 예시된 바와 같은 접촉(6006)에 의한 제1 입력에 이은 도 6q 내지 도 6t에 예시된 바와 같은 접촉(6034)에 의한 입력임(접촉의 리프트오프가 있음)), 또는 추가 접촉에 의한 입력의 연속(예컨대, 제2 입력은 도 6e 내지 도 6i에 예시된 바와 같은 접촉(6006)에 의한 제1 입력 후의 도 6j 내지 도 6l에 예시된 바와 같은 접촉(6006)에 의한 입력임)이다. 예를 들어, 제2 입력은 스와이프 입력의 연속, 제2 탭 입력, 제2 누르기 입력, 제1 입력에 뒤따른 누르기 입력, 제2 계속 터치하기 입력, 제1 입력으로부터 계속되는 지속된 터치 등일 수 있다.While displaying a second representation of the virtual object within the second user interface area, the device detects ( 908 ) a second input (eg, input by contact 6034 as illustrated in FIGS. 6Q-6T ). In some embodiments, detecting the second input includes detecting one or more second contacts at a location on the touch screen corresponding to the second representation of the virtual object, the physical environment surrounding the device when invoked by the second contact. detecting a second contact on an affordance configured to trigger display of an augmented reality view of , detecting movement of the second contact(s), and/or detecting liftoff of the second contact(s) include that In some embodiments, the second input is a continuation of the first input by the same contact (eg, the second input is the first input by contact 6006 as illustrated in FIGS. The input is by contact 6034 as illustrated in FIG. 6T (no liftoff of the contact), or a separate input by an entirely different contact (eg, the second input is as illustrated in FIGS. 6E-6I ). A first input by the same contact 6006 followed by an input by a contact 6034 as illustrated in FIGS. 6Q-6T (with a liftoff of the contact), or a continuation of input by additional contacts (such as , the second input is the input by contact 6006 as illustrated in FIGS. 6J-6L after the first input by contact 6006 as illustrated in FIGS. 6E-6I ). For example, the second input may be a continuation of a swipe input, a second tap input, a second press input, a press input followed by the first input, a second continuous touch input, a sustained touch continuous from the first input, etc. .

제2 입력을 검출하는 것에 응답하여, 제2 입력이 (예컨대, 증강 현실 뷰로 전이하지 않으면서) 제2 사용자 인터페이스 영역 내의 가상 객체를 조작하라는 요청에 대응한다는 결정에 따라, 디바이스는 제2 입력에 기초하여 제2 사용자 인터페이스 영역 내의 가상 객체의 제2 표현의 디스플레이 속성을 변경하고, 제2 입력이 증강 현실 환경에 가상 객체를 디스플레이하라는 요청에 대응한다는 결정에 따라, 디바이스는 하나 이상의 카메라들의 시야의 표현과 함께 가상 객체의 제3 표현을 디스플레이한다(예컨대, 디바이스는 하나 이상의 카메라들의 시야(6036)를 포함하는 제3 사용자 인터페이스를 디스플레이하고, 디바이스 주위의 물리적 환경(5002) 내의 물리적 평면(예컨대, 바닥)에 대응하는 카메라(들)의 시야 내에서 검출되는 가상 평면(예컨대, 바닥 표면(5038)) 상에 가상 객체(예컨대, 가상 의자(5020))의 3차원 표현을 배치한다)(910).In response to detecting the second input, in accordance with a determination that the second input corresponds to a request to manipulate a virtual object within the second user interface area (eg, without transitioning to an augmented reality view), the device responds to the second input. change a display property of the second representation of the virtual object within the second user interface area based on the determination that the second input corresponds to a request to display the virtual object in the augmented reality environment, the device configures the view of the one or more cameras Display a third representation of the virtual object along with the representation (eg, the device displays a third user interface that includes a field of view 6036 of one or more cameras, and displays a physical plane (eg, in a physical environment 5002 ) around the device. Place a three-dimensional representation of a virtual object (eg, virtual chair 5020) on a virtual plane (eg, floor surface 5038) that is detected within the field of view of the camera(s) corresponding to the floor) (910) .

일부 실시예들에서, 제2 사용자 인터페이스 영역 내의 가상 객체를 조작하라는 요청에 대응하는 제2 입력은 제2 사용자 인터페이스 영역 내의 가상 객체의 제2 표현에 대응하는 터치 감응형 표면 상의 위치에서 제2 접촉(들)에 의한 핀치 또는 스와이프이다. 예를 들어, 제2 입력은 도 6j 내지 도 6l에 예시된 바와 같은 접촉(6006)에 의한 입력 또는 도 6n 및 도 6o에 예시된 바와 같은 접촉들(6026, 6030)에 의한 입력이다.In some embodiments, the second input corresponding to the request to manipulate the virtual object in the second user interface area is the second contact at a location on the touch-sensitive surface corresponding to the second representation of the virtual object in the second user interface area. A pinch or swipe by (s). For example, the second input is an input by contact 6006 as illustrated in FIGS. 6J-6L or an input by contacts 6026 , 6030 as illustrated in FIGS. 6N and 6O .

일부 실시예들에서, 증강 현실 환경에 가상 객체를 디스플레이하라는 요청에 대응하는 제2 입력은, 제2 사용자 인터페이스 영역 내의 가상 객체의 표현에 대응하는 터치 감응형 표면 상의 위치에서의 또는 그로부터의, 탭 입력, 누르기 입력, 또는 계속 터치하기 또는 누르기 입력에 이은 드래그 입력이다. 예를 들어, 제2 입력은 도 6q 내지 도 6t에 예시된 바와 같은 접촉(6034)에 의한 깊게 누르기 입력이다.In some embodiments, the second input corresponding to the request to display the virtual object in the augmented reality environment is a tap at or from a location on the touch-sensitive surface corresponding to the representation of the virtual object within the second user interface area. An input, a press input, or a drag input followed by a continuous touch or press input. For example, the second input is a deep press input by contact 6034 as illustrated in FIGS. 6Q-6T .

일부 실시예들에서, 제2 입력에 기초하여 제2 사용자 인터페이스 영역 내의 가상 객체의 제2 표현의 디스플레이 속성을 변경하는 것은 (예컨대, 수직 및/또는 수평 스와이프를 통해) 하나 이상의 축들을 중심으로 회전시키는 것, 크기 재설정하는 것(예컨대, 크기 재설정하기 위한 핀치), (예컨대, 디바이스를 기울임으로써) 하나 이상의 축들을 중심으로 기울이는 것, (예컨대, 디바이스를 수평으로 이동시킴으로써 - 이는 일부 실시예들에서 하나 이상의 시야 평면들을 검출하기 위해 하나 이상의 카메라들의 시야의 분석을 위해 사용됨) 시점을 변경하는 것, 및/또는 가상 객체의 표현의 색상을 변경하는 것을 포함한다. 예를 들어, 가상 객체의 제2 표현의 디스플레이 속성을 변경하는 것은 도 6j 및 도 6k에 예시된 바와 같이 접촉(6006)에 의한 수평 스와이프 제스처에 응답하여 가상 의자(5020)를 회전시키는 것, 도 6k 및 도 6l에 예시된 바와 같이 접촉(6006)에 의한 대각선 스와이프 제스처에 응답하여 가상 의자(5020)를 회전시키는 것, 또는 도 6n 및 도 6o에 예시된 바와 같이 접촉들(6026, 6030)에 의한 디핀치 제스처에 응답하여 가상 의자(5020)의 크기를 증가시키는 것을 포함한다. 일부 실시예들에서, 가상 객체의 제2 표현의 디스플레이 속성이 변경되는 양은 제2 입력의 속성이 변하는 양(예컨대, 접촉(들)에 의한 이동의 거리 또는 속력, 접촉의 세기, 접촉의 지속시간 등)과 상관된다.In some embodiments, changing the display property of the second representation of the virtual object within the second user interface region based on the second input comprises (eg, via a vertical and/or horizontal swipe) about one or more axes. rotating, resizing (eg, pinch to resize), tilting (eg, by tilting the device) about one or more axes, (eg, by moving the device horizontally - this is some embodiments used for analysis of the field of view of one or more cameras to detect one or more viewing planes in the . For example, changing the display properties of the second representation of the virtual object may include rotating virtual chair 5020 in response to a horizontal swipe gesture by contact 6006 as illustrated in FIGS. 6J and 6K ; Rotating virtual chair 5020 in response to a diagonal swipe gesture by contact 6006 as illustrated in FIGS. 6K and 6L , or contacts 6026 , 6030 as illustrated in FIGS. 6N and 6O . ) to increase the size of the virtual chair 5020 in response to the de-pinch gesture. In some embodiments, the amount by which the display property of the second representation of the virtual object is changed is the amount by which the property of the second input is changed (eg, distance or speed of movement by the contact(s), the intensity of the contact, the duration of the contact) etc.) is related to

일부 실시예들에서, 제2 입력이 증강 현실 환경에 (예컨대, 도 6t와 관련하여 기술된 바와 같이, 하나 이상의 카메라들의 시야(6036) 내에) 가상 객체를 디스플레이하라는 요청에 대응한다는 결정에 따라, 디바이스는 가상 객체의 3차원 표현이 디스플레이 상의 가상 평면에 대한 각각의 배향(예컨대, 도 6r에 도시된 가상 의자(5020)의 배향)으로부터 하나 이상의 카메라들의 시야 내에서 캡처되는 물리적 환경의 일부분의 현재 배향에 기초하여 결정되는 제3 배향(예컨대, 도 6t에 도시된 가상 의자(5020)의 배향)으로 재배향되는 것을 보여주는 제2 애니메이션화된 전이를 디스플레이한다. 예를 들어, 가상 객체의 3차원 표현은 가상 객체의 3차원 표현이 카메라(들)의 시야 내에서 캡처되는 물리적 환경(5002)의 라이브 이미지에서 식별되는 미리정의된 평면(예컨대, 바닥 표면(5038))(예컨대, 가상 객체의 3차원 표현을 지지할 수 있는 수직 벽 또는 수평 바닥 표면과 같은 물리적 표면)에 대해 고정된 각도에 있도록 재배향된다. 일부 실시예들에서, 증강 현실 뷰 내의 가상 객체의 배향은, 적어도 하나의 태양에서, 스테이징 사용자 인터페이스 내의 가상 객체의 배향에 의해 제약된다. 예를 들어, 3차원 좌표계의 적어도 하나의 축을 중심으로 하는 가상 객체의 회전 각은 가상 객체를 스테이징 사용자 인터페이스로부터 증강 현실 뷰로 전이시킬 때 유지된다(예컨대, 도 6q 내지 도 6u와 관련하여 기술된 바와 같이, 도 6j 및 도 6k와 관련하여 기술된 바와 같은 가상 의자(5020)의 회전이 유지된다). 일부 실시예들에서, 제2 사용자 인터페이스 영역 내의 가상 객체의 표현 상에 드리워진 광의 공급원은 가상 광원이다. 일부 실시예들에서, 제3 사용자 인터페이스 영역 내의 가상 객체의 제3 표현은 (예컨대, 하나 이상의 카메라들의 시야 내에서 검출되고/되거나 그로부터 결정되는 바와 같은) 실세계 광원에 의해 조명된다.In some embodiments, upon determining that the second input corresponds to a request to display the virtual object in the augmented reality environment (eg, within the field of view 6036 of one or more cameras, as described with respect to FIG. 6T ), The device is configured to present a portion of the physical environment in which a three-dimensional representation of the virtual object is captured within the field of view of one or more cameras from a respective orientation with respect to a virtual plane on the display (eg, the orientation of virtual chair 5020 shown in FIG. 6R ). Display a second animated transition showing the reorientation to a third orientation determined based on the orientation (eg, the orientation of virtual chair 5020 shown in FIG. 6T ). For example, a three-dimensional representation of a virtual object may be a predefined plane (eg, a floor surface 5038 )) (eg, a physical surface such as a vertical wall or horizontal floor surface that can support a three-dimensional representation of a virtual object). In some embodiments, the orientation of the virtual object within the augmented reality view is constrained, in at least one aspect, by the orientation of the virtual object within the staging user interface. For example, the rotation angle of the virtual object about at least one axis of the three-dimensional coordinate system is maintained when transitioning the virtual object from the staging user interface to the augmented reality view (eg, as described with respect to FIGS. 6Q-6U ). Likewise, rotation of virtual chair 5020 as described with respect to FIGS. 6J and 6K is maintained). In some embodiments, the source of light cast on the representation of the virtual object in the second user interface area is a virtual light source. In some embodiments, a third representation of the virtual object within the third user interface area is illuminated by a real-world light source (eg, as detected within and/or determined from the field of view of one or more cameras).

일부 실시예들에서, 제1 기준들은, 제1 입력이 가상 객체 표시자(5022)(예컨대, 디스플레이 상의 가상 객체의 표현을 오버레이하고/하거나 그에 인접하게 디스플레이되는 표시자, 예컨대, 아이콘)에 대응하는 터치 감응형 표면 상의 위치에서 제1 접촉에 의한 탭 입력을 포함할 때 (예컨대, 포함한다는 결정에 따라) 만족되는 기준들을 포함한다(912). 예를 들어, 가상 객체 표시자(5022)는 그가 대응하는 가상 객체가 (예컨대, 방법(1000)을 참조하여 아래에서 더 상세히 설명되는 바와 같이) 스테이징 뷰(예컨대, 스테이징 사용자 인터페이스(6010)) 및 증강 현실 뷰(예컨대, 카메라(들)의 시야(6036))에서 관찰가능하다는 표시를 제공한다. 제1 입력이 탭 입력을 포함하는지 여부에 따라, 제2 사용자 인터페이스 영역 내에 가상 객체의 제2 표현을 디스플레이할지 여부를 결정하는 것은, 제1 입력에 응답하여 다수의 상이한 유형들의 동작들의 수행을 가능하게 한다. 입력에 응답하여 다수의 상이한 유형들의 동작들의 수행을 가능하게 하는 것은, 사용자가 이들 동작들을 수행할 수 있는 효율을 증가시키며, 이에 의해 디바이스의 작동성을 향상시키고, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, the first criteria are such that the first input corresponds to a virtual object indicator 5022 (eg, an indicator, such as an icon, displayed adjacent to and/or overlaying a representation of the virtual object on a display). includes ( 912 ) criteria that are satisfied when including (eg, in accordance with a determination to include) a tap input by the first contact at a location on the touch-sensitive surface to include ( 912 ). For example, virtual object indicator 5022 indicates that the virtual object to which it corresponds (eg, as described in greater detail below with reference to method 1000 ) is a staging view (eg, staging user interface 6010 ) and Provides an indication of being observable in the augmented reality view (eg, field of view 6036 of the camera(s)). Determining whether to display a second representation of the virtual object within the second user interface area according to whether the first input includes a tap input enables performing a number of different types of operations in response to the first input make it Enabling the performance of a number of different types of operations in response to input increases the efficiency with which a user can perform these operations, thereby improving the operability of the device, which in addition allows the user to perform more By enabling quick and efficient use, it reduces the device's power usage and improves battery life.

일부 실시예들에서, 제1 기준들은, 제1 접촉이 가상 객체의 제1 표현에 대응하는 터치 감응형 표면 상의 위치에서 적어도 미리정의된 임계 시간(예컨대, 길게 누르기 시간 임계치) 동안 임계량 미만의 이동으로 유지될 때 (예컨대, 유지된다는 결정에 따라) 만족되는 기준들을 포함한다(914). 예를 들어, 제1 기준들은 계속 터치하기 입력에 의해 충족된다. 일부 실시예들에서, 제1 기준들은, 기준이 충족되기 위하여, 제1 접촉이 가상 객체의 표현에 대응하는 터치 감응형 표면 상의 위치에서 적어도 미리정의된 임계 시간 동안 임계량 미만의 이동으로 유지된 후 제1 접촉의 이동을 요구하는 기준을 포함한다. 예를 들어, 제1 기준들은 계속 터치하기 입력에 이은 드래그 입력에 의해 충족된다. 접촉이 가상 객체의 표현에 대응하는 터치 감응형 표면 상의 위치에서 적어도 미리정의된 시간 동안 임계량 미만의 이동으로 유지되는지 여부에 따라, 제2 사용자 인터페이스 영역 내에 가상 객체의 제2 표현을 디스플레이할지 여부를 결정하는 것은, 제1 입력에 응답하여 다수의 상이한 유형들의 동작들의 수행을 가능하게 한다. 입력에 응답하여 다수의 상이한 유형들의 동작들의 수행을 가능하게 하는 것은, 사용자가 이들 동작들을 수행할 수 있는 효율을 증가시키며, 이에 의해 디바이스의 작동성을 향상시키고, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, the first criteria include: movement of less than a threshold amount for at least a predefined threshold time (eg, a long press time threshold) at a location on the touch-sensitive surface where the first contact corresponds to the first representation of the virtual object. Criteria that are satisfied (eg, in accordance with a determination that it is maintained) are included ( 914 ). For example, the first criteria are satisfied by the keep touching input. In some embodiments, the first criteria are after the first contact is maintained with a movement of less than a threshold amount for at least a predefined threshold time at a location on the touch-sensitive surface corresponding to the representation of the virtual object, for the criterion to be met Includes criteria requiring movement of the first contact. For example, the first criteria are satisfied by a continue to touch input followed by a drag input. whether to display a second representation of the virtual object within the second user interface area according to whether the contact is maintained with movement less than a threshold amount for at least a predefined time at a location on the touch-sensitive surface corresponding to the representation of the virtual object; Determining enables performance of a number of different types of operations in response to the first input. Enabling the performance of a number of different types of operations in response to input increases the efficiency with which a user can perform these operations, thereby improving the operability of the device, which in addition allows the user to perform more By enabling quick and efficient use, it reduces the device's power usage and improves battery life.

일부 실시예들에서, 제1 기준들은, 제1 접촉의 특성 세기가 제1 세기 임계치(예컨대, 깊게 누르기 세기 임계치(ITD))를 초과하여 증가할 때 (예컨대, 증가한다는 결정에 따라) 만족되는 기준들을 포함한다(916). 예를 들어, 도 6q 내지 도 6t와 관련하여 기술된 바와 같이, 기준들은 접촉(6034)의 특성 세기가, 세기 레벨 측정기(5028)에 의해 나타낸 바와 같이, 깊게 누르기 세기 임계치(ITD)를 초과하여 증가할 때 만족된다. 일부 실시예들에서, 접촉이 다른 유형의 제스처(예컨대, 탭)를 인식하기 위한 기준들을 만족한다는 결정에 따라, 디바이스는 가상 객체의 디스플레이를 유지하는 동안 제2 (예컨대, 스테이징) 사용자 인터페이스를 트리거하는 것 이외의 다른 미리정의된 기능을 수행한다. 일부 실시예들에서, 제1 기준들은 제1 입력이 탭 입력(예컨대, 접촉의 리프트오프가 접촉의 초기 터치다운의 탭 시간 임계치 내에 검출되기 전에 임계 세기를 초과하여 도달하는 세기를 갖는 강한 탭 입력)이 아닐 것을 요구한다. 일부 실시예들에서, 제1 기준들은, 기준이 충족되기 위하여, 제1 접촉의 세기가 제1 세기 임계치를 초과한 후 제1 접촉의 이동을 요구하는 기준을 포함한다. 예를 들어, 제1 기준들은 누르기 입력에 이은 드래그 입력에 의해 충족된다. 접촉의 특성 세기가 제1 세기 임계치를 초과하여 증가하는지 여부에 따라, 제2 사용자 인터페이스 영역 내에 가상 객체를 디스플레이할지 여부를 결정하는 것은, 제1 입력에 응답하여 다수의 상이한 유형들의 동작들의 수행을 가능하게 한다. 입력에 응답하여 다수의 상이한 유형들의 동작들의 수행을 가능하게 하는 것은, 사용자가 이들 동작들을 수행할 수 있는 효율을 증가시키며, 이에 의해 디바이스의 작동성을 향상시키고, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, the first criteria are satisfied when (eg, according to a determination that increases) the characteristic intensity of the first contact increases above a first intensity threshold (eg, deep press intensity threshold IT D ). It contains the criteria to be (916). For example, as described in connection with FIGS. 6Q-6T , criteria indicate that the characteristic intensity of contact 6034 exceeds a deep press intensity threshold IT D , as indicated by intensity level meter 5028 . is satisfied when it increases. In some embodiments, upon determining that the contact meets criteria for recognizing another type of gesture (eg, tap), the device triggers a second (eg, staging) user interface while maintaining display of the virtual object Performs other predefined functions other than In some embodiments, the first criteria include a strong tap input having an intensity at which the first input reaches a tap input (eg, exceeding a threshold intensity before liftoff of the contact is detected within a tap time threshold of an initial touchdown of the contact) ) is not required. In some embodiments, the first criteria include a criterion that requires movement of the first contact after an intensity of the first contact exceeds a first intensity threshold for the criterion to be met. For example, the first criteria are satisfied by a press input followed by a drag input. Depending on whether the characteristic intensity of the contact increases above the first intensity threshold, determining whether to display the virtual object within the second user interface area comprises performing a number of different types of operations in response to the first input. make it possible Enabling the performance of a number of different types of operations in response to input increases the efficiency with which a user can perform these operations, thereby improving the operability of the device, which in addition allows the user to perform more By enabling quick and efficient use, it reduces the device's power usage and improves battery life.

일부 실시예들에서, 제1 접촉에 의한 제1 입력을 검출하는 것에 응답하여 그리고 제1 접촉에 의한 제1 입력이 제2 기준들(예컨대, 인터페이스 스크롤 기준들)을 충족한다는 결정에 따라 - 제2 기준들은 제1 입력이 터치 감응형 표면을 가로지르는 방향으로 임계 거리 초과 동안 제1 접촉의 이동을 포함할 것을 요구함(예컨대, 제2 기준들은 수직 스와이프 또는 수평 제스처와 같은 스와이프 제스처에 의해 충족됨) -, 디바이스는 제1 접촉의 이동의 방향에 대응하는 방향으로 제1 사용자 인터페이스 영역(및 가상 객체의 표현)을 스크롤한다(예컨대, 제1 기준들은 충족되지 않고 제2 사용자 인터페이스 영역 내에 가상 객체의 표현을 디스플레이하는 것은 보류된다)(918). 예를 들어, 도 6b 및 도 6c와 관련하여 기술된 바와 같이, 접촉(6002)에 의한 상향 수직 스와이프 제스처는 메시징 사용자 인터페이스(5008) 및 가상 의자(5020)가 상향으로 스크롤되게 한다. 일부 실시예들에서, 제1 기준들은 또한, 제1 기준들이 충족되기 위하여 제1 입력이 임계 거리 초과 동안 제1 접촉의 이동을 포함할 것을 요구하고, 디바이스는 제1 입력의 초기 부분이 객체 선택 기준들(예컨대, 가상 객체의 표현 상에서의 계속 터치하기 또는 누르기)을 충족하는지 여부에 기초하여 제1 입력이 제1 기준들(예컨대, 스테이징 트리거 기준들)을 충족하는지 또는 제2 기준들(예컨대, 인터페이스 스크롤 기준들)을 충족하는지를 결정한다. 일부 실시예들에서, 제2 기준들은 가상 객체의 AR 아이콘 및 가상 객체의 위치의 외측의 터치 위치에서 개시되는 스와이프 입력에 의해 충족된다. 제1 입력이 제2 기준들을 충족하는지 여부에 따라, 제1 입력에 응답하여 제1 사용자 인터페이스 영역을 스크롤할지 여부를 결정하는 것은, 제1 입력에 응답하여 다수의 상이한 유형들의 동작들의 수행을 가능하게 한다. 입력에 응답하여 다수의 상이한 유형들의 동작들의 수행을 가능하게 하는 것은, 사용자가 이들 동작들을 수행할 수 있는 효율을 증가시키며, 이에 의해 디바이스의 작동성을 향상시키고, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, in response to detecting the first input by the first contact and in accordance with a determination that the first input by the first contact meets second criteria (eg, interface scroll criteria) - a second The two criteria require that the first input include movement of the first contact over a threshold distance in a direction traversing the touch-sensitive surface (eg, the second criteria are by a swipe gesture such as a vertical swipe or a horizontal gesture) satisfied) - the device scrolls the first user interface area (and the representation of the virtual object) in a direction corresponding to the direction of movement of the first contact (eg, the first criteria are not met and within the second user interface area Displaying the representation of the virtual object is withheld) (918). For example, as described with respect to FIGS. 6B and 6C , an upward vertical swipe gesture with contact 6002 causes messaging user interface 5008 and virtual chair 5020 to scroll upward. In some embodiments, the first criteria also require that the first input include movement of the first contact while exceeding a threshold distance for the first criteria to be met, and wherein the device determines that the initial portion of the first input selects the object based on whether the first input meets first criteria (eg, staging trigger criteria) or second criteria (eg, continuous touching or pressing on the representation of the virtual object) based on whether the criteria (eg, continuing to touch or press on the representation of the virtual object) are met. , to determine whether the interface scroll criteria) are satisfied. In some embodiments, the second criteria are satisfied by an AR icon of the virtual object and a swipe input initiated at a touch location outside of the location of the virtual object. Determining whether to scroll the first user interface area in response to the first input according to whether the first input meets the second criteria enables performing a number of different types of operations in response to the first input make it Enabling the performance of a number of different types of operations in response to input increases the efficiency with which a user can perform these operations, thereby improving the operability of the device, which in addition allows the user to perform more By enabling quick and efficient use, it reduces the device's power usage and improves battery life.

일부 실시예들에서, 제1 접촉에 의한 제1 입력을 검출하는 것에 응답하여 그리고 제1 접촉에 의한 제1 입력이 제3 (예컨대, AR 트리거) 기준들을 충족한다는 결정에 따라, 디바이스는 하나 이상의 카메라들의 시야의 표현과 함께 가상 객체의 제3 표현을 디스플레이한다(920). 예를 들어, 도 6ad 내지 도 6ag와 관련하여 기술된 바와 같이, 접촉(6044)에 의한 긴 터치 입력에 이은 가상 의자(5020)를 드래그하는 접촉(6044)에 의한 상향 드래그 입력은 가상 의자(5020)가 카메라(들)의 시야(6036)와 함께 디스플레이되게 한다.In some embodiments, in response to detecting the first input by the first contact and upon determining that the first input by the first contact meets third (eg, AR trigger) criteria, the device activates the one or more Display ( 920 ) a third representation of the virtual object along with a representation of the camera's field of view. For example, as described with respect to FIGS. 6A-6A , a long touch input by contact 6044 followed by an upward drag input by contact 6044 to drag virtual chair 5020 is virtual chair 5020 ) to be displayed along with the field of view 6036 of the camera(s).

일부 실시예들에서, 제3 기준들은, 예컨대, 하나 이상의 카메라들이 활성 상태에 있고/있거나, 디바이스 배향이 (예컨대, 한정된 원점 배향, 하나 이상의 축들을 중심으로 하는 한정된 회전 각으로부터) 한정된 범위 내에 속하고/하거나, 접촉에 의한 입력이 선택 입력(예컨대, 긴 터치)에 이은 드래그 입력(가상 객체를 디스플레이 상에서 (예컨대, 디스플레이의 에지로부터 미리결정된 거리 내까지) 이동시키는 접촉의 이동)을 포함하고/하거나, 접촉의 특성 세기가 AR 트리거 세기 임계치(예컨대, 가볍게 누르기 임계치(ITL) 또는 깊게 누르기 임계치(ITD))를 초과하여 증가하고/하거나, 접촉의 지속기간이 AR 트리거 지속기간 임계치(예컨대, 길게 누르기 임계치)를 초과하여 증가하고/하거나, 접촉이 이동한 거리가 AR 트리거 거리 임계치(예컨대, 긴 스와이프 임계치)를 초과하여 증가한다는 결정에 따라 만족되는 기준들을 포함한다. 일부 실시예들에서, 제2 사용자 인터페이스 영역(예컨대, 스테이징 사용자 인터페이스(6010)) 내에 가상 객체의 표현을 디스플레이하기 위한 제어부(예컨대, 토글 제어부(6018))가 가상 객체의 표현 및 하나 이상의 카메라들의 시야(6036)를 포함하는 사용자 인터페이스(예컨대, 제2 사용자 인터페이스 영역의 적어도 일부분을 대체하는 제3 사용자 인터페이스 영역)에 디스플레이된다.In some embodiments, the third criteria are, for example, that one or more cameras are in an active state and/or that the device orientation is within a defined range (eg, from a defined origin orientation, a defined angle of rotation about one or more axes). and/or the input by contact comprises a selection input (eg, a long touch) followed by a drag input (movement of a contact that moves the virtual object on the display (eg, to within a predetermined distance from an edge of the display)) or, the characteristic intensity of the contact increases above an AR trigger intensity threshold (eg, a light press threshold (IT L ) or a deep press threshold (IT D )), and/or the duration of the contact increases beyond an AR trigger duration threshold (eg, . In some embodiments, a control (eg, toggle control 6018 ) for displaying a representation of the virtual object within a second user interface area (eg, staging user interface 6010 ) is configured to display the representation of the virtual object and one or more cameras. is displayed in a user interface that includes a field of view 6036 (eg, a third user interface area that replaces at least a portion of the second user interface area).

일부 실시예들에서, 제1 사용자 인터페이스 영역(예컨대, 비-AR, 비-스테이징, 터치 스크린 UI 뷰)으로부터 제3 사용자 인터페이스 영역(예컨대, 증강 현실 뷰)으로 직접 전이될 때, 디바이스는 가상 객체의 3차원 표현이 디스플레이 상의 터치 스크린 UI(예컨대, 비-AR, 비-스테이징 뷰) 내에 표현된 각각의 배향으로부터 하나 이상의 카메라들의 시야 내에서 캡처되는 물리적 환경의 일부분의 현재 배향에 대해 미리정의된 배향으로 재배향되는 것을 보여주는 애니메이션화된 전이를 디스플레이한다. 예를 들어, 도 6ad 내지 도 6aj에 도시된 바와 같이, 제1 사용자 인터페이스 영역(예컨대, 도 6ad에 도시된 바와 같은 메시징 사용자 인터페이스(5008))으로부터 제3 사용자 인터페이스 영역(예컨대, 도 6aj에 도시된 바와 같은 카메라(들)의 시야(6036)를 포함하는 증강 현실 사용자 인터페이스)으로 직접 전이될 때, 가상 의자(5020)는 도 6ad 내지 도 6ah에 도시된 바와 같은 제1 배향으로부터 (예컨대, 도 6aj에 도시된 바와 같은) 카메라(들)의 시야(6036) 내에서 캡처되는 바와 같은 물리적 환경(5002) 내의 바닥 표면(5038)에 대한 미리정의된 배향으로 변경된다. 예를 들어, 가상 객체의 3차원 표현은 가상 객체의 3차원 표현이 물리적 환경(5002)의 라이브 이미지에서 식별되는 미리정의된 평면(예컨대, 가상 객체의 3차원 표현을 지지할 수 있는 수직 벽 또는 수평 바닥 표면(예컨대, 바닥 표면(5038))과 같은 물리적 표면)에 대해 고정된 각도에 있도록 재배향된다. 제1 입력이 제3 기준들을 충족하는지 여부에 따라, 제1 입력에 응답하여 카메라(들)의 시야와 함께 가상 객체의 제3 표현을 디스플레이할지 여부를 결정하는 것은, 제1 입력에 응답하여 다수의 상이한 유형들의 동작들의 수행을 가능하게 한다. 입력에 응답하여 다수의 상이한 유형들의 동작들의 수행을 가능하게 하는 것은, 사용자가 이들 동작들을 수행할 수 있는 효율을 증가시키며, 이에 의해 디바이스의 작동성을 향상시키고, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, when transitioning directly from a first user interface area (eg, non-AR, non-staging, touch screen UI view) to a third user interface area (eg, augmented reality view), the device is a virtual object predefined for the current orientation of a portion of the physical environment captured within the field of view of one or more cameras from each orientation presented in the touch screen UI (eg, non-AR, non-staging view) on the display. Displays animated transitions showing reorientation to orientation. For example, as shown in FIGS. 6A-6J , from a first user interface area (eg, messaging user interface 5008 as shown in FIG. 6A-J ) to a third user interface area (eg, as shown in FIG. 6AJ ). When transitioned directly to an augmented reality user interface that includes a field of view 6036 of the camera(s) as shown), the virtual chair 5020 moves from a first orientation as shown in FIGS. 6A-6A (eg, FIG. a predefined orientation relative to the floor surface 5038 in the physical environment 5002 as captured within the field of view 6036 of the camera(s) (as shown in 6aj). For example, a three-dimensional representation of a virtual object may be a predefined plane (eg, a vertical wall capable of supporting a three-dimensional representation of the virtual object or It is reoriented to be at a fixed angle with respect to a horizontal floor surface (eg, a physical surface such as floor surface 5038 ). Determining whether to display a third representation of the virtual object along with a field of view of the camera(s) in response to the first input according to whether the first input satisfies the third criteria includes: in response to the first input: to perform different types of operations. Enabling the performance of a number of different types of operations in response to input increases the efficiency with which a user can perform these operations, thereby improving the operability of the device, which in addition allows the user to perform more By enabling quick and efficient use, it reduces the device's power usage and improves battery life.

일부 실시예들에서, 제1 접촉에 의한 제1 입력을 검출하는 것에 응답하여, 디바이스는, 하나 이상의 디바이스 배향 센서들에 의해, 디바이스의 현재 디바이스 배향(예컨대, 디바이스 주위의 물리적 환경에 대한 배향)을 결정하고, 제3 기준들(예컨대, AR 트리거 기준들)은 제3 기준들이 충족되기 위하여 현재 디바이스 배향이 제1 범위의 배향들 내에 있을 것을 요구한다(예컨대, 제2 기준들은 디바이스와 지면 사이의 각도가 임계 각도 미만일 때 충족되는데, 이는 디바이스가 (중간 상태(interstitial state)를 바이패스하도록) 지면에 충분히 평행한 것을 나타낸다)(922). 일부 실시예들에서, 제1 기준들(예컨대, 스테이징 트리거 기준들)은 제1 기준들이 충족되기 위하여 현재 디바이스 배향이 제2 범위의 배향들 내에 있을 것을 요구한다(예컨대, 제1 기준들은 디바이스와 지면 사이의 각도가 임계 값 내지 90도 내에 있을 때 충족되는데, 이는 디바이스가 지면에 대해 충분히 직립하여 먼저 중간 상태로 되는 것을 나타낸다). 디바이스 배향이 일정 범위의 배향들 내에 있는지 여부에 따라, 제1 입력에 응답하여 카메라(들)의 시야와 함께 가상 객체의 제3 표현을 디스플레이할지 여부를 결정하는 것은, 제1 입력에 응답하여 다수의 상이한 유형들의 동작들의 수행을 가능하게 한다. 입력에 응답하여 다수의 상이한 유형들의 동작들의 수행을 가능하게 하는 것은, 사용자가 이들 동작들을 수행할 수 있는 효율을 증가시키며, 이에 의해 디바이스의 작동성을 향상시키고, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, in response to detecting the first input by the first contact, the device, by one or more device orientation sensors, provides a current device orientation of the device (eg, orientation with respect to the physical environment surrounding the device) , and the third criteria (eg, AR trigger criteria) require that the current device orientation be within a first range of orientations in order for the third criteria to be met (eg, the second criteria are between the device and the ground) is satisfied when the angle of is less than the critical angle, indicating that the device is sufficiently parallel to the ground (to bypass the interstitial state) (922). In some embodiments, first criteria (eg, staging trigger criteria) require that the current device orientation be within a second range of orientations in order for the first criteria to be met (eg, the first criteria are It is satisfied when the angle between the ground planes is within a threshold of 90 degrees, indicating that the device is sufficiently upright relative to the ground to first enter the intermediate state). Depending on whether the device orientation is within a range of orientations, determining whether to display a third representation of the virtual object along with a field of view of the camera(s) in response to the first input includes: to perform different types of operations. Enabling the performance of a number of different types of operations in response to input increases the efficiency with which a user can perform these operations, thereby improving the operability of the device, which in addition allows the user to perform more By enabling quick and efficient use, it reduces the device's power usage and improves battery life.

일부 실시예들에서, 가상 객체의 제2 표현의 적어도 하나의 디스플레이 속성(예컨대, 크기, 형상, 요(yaw) 축, 피치 축 및 롤 축을 중심으로 하는 각각의 각도들 등)이 가상 객체의 제3 표현에 적용된다(924). 예를 들어, 도 6q 내지 도 6u와 관련하여 기술된 바와 같이, 도 6j 및 도 6k와 관련하여 기술된 바와 같은 스테이징 사용자 인터페이스(6010)에 적용되는 가상 의자(5020)의 제2 표현의 회전은, 가상 의자(5020)의 제3 표현이 (예컨대, 도 6u에 도시된 바와 같이) 카메라(들)의 시야(6036)를 포함하는 증강 현실 뷰에 디스플레이될 때 유지된다. 일부 실시예들에서, 증강 현실 뷰 내의 가상 객체의 배향은, 적어도 하나의 태양에서, 스테이징 사용자 인터페이스 내의 가상 객체의 배향에 의해 제약된다. 예를 들어, 미리정의된 3차원 좌표계의 적어도 하나의 축(예컨대, 요 축, 피치 축, 또는 롤 축)을 중심으로 하는 가상 객체의 회전 각은 가상 객체를 스테이징 뷰로부터 증강 현실 뷰로 전이시킬 때 유지된다. 일부 실시예들에서, 가상 객체의 제2 표현의 적어도 하나의 디스플레이 속성은 가상 객체의 제2 표현이 사용자 입력에 의해 (예컨대, 크기, 형상, 텍스처, 배향 등이 변경되는) 어떤 방식으로든 조작되었다면 가상 객체의 제3 표현에만 적용된다. 다시 말하면, 스테이징 뷰에서 이루어지는 변경들은 객체가 증강 현실 뷰에서 보여질 때 유지되거나 증강 현실 뷰에서 객체의 외관을 하나 이상의 방식들로 제약하는 데 사용된다. (예컨대, 가상 객체의 제2 표현 및 가상 객체의 제3 표현에 동일한 디스플레이 속성을 적용하기 위한 추가 사용자 입력을 요구하지 않으면서) 가상 객체의 제2 표현의 적어도 하나의 디스플레이 속성을 가상 객체의 제3 표현에 적용하는 것은 (예컨대, 가상 객체의 큰 형태가 제2 사용자 인터페이스에 디스플레이되는 동안 사용자가 제2 가상 객체에 회전을 적용하게 하고, 하나 이상의 카메라들의 시야의 표현과 함께 디스플레이되는 가상 객체의 제3 표현에 회전을 적용함으로써) 디바이스의 작동성을 향상시키고, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, at least one display attribute of the second representation of the virtual object (eg, size, shape, respective angles about the yaw axis, pitch axis, and roll axis, etc.) 3 is applied to the expression (924). For example, as described with respect to FIGS. 6Q-6U , rotation of the second representation of virtual chair 5020 applied to staging user interface 6010 as described with respect to FIGS. 6J and 6K is , a third representation of the virtual chair 5020 is maintained when displayed in the augmented reality view that includes the field of view 6036 of the camera(s) (eg, as shown in FIG. 6U ). In some embodiments, the orientation of the virtual object within the augmented reality view is constrained, in at least one aspect, by the orientation of the virtual object within the staging user interface. For example, an angle of rotation of the virtual object about at least one axis (eg, yaw axis, pitch axis, or roll axis) of a predefined three-dimensional coordinate system is determined when transitioning the virtual object from the staging view to the augmented reality view. maintain. In some embodiments, at least one display property of the second representation of the virtual object is determined if the second representation of the virtual object has been manipulated in some way (eg, changed in size, shape, texture, orientation, etc.) by user input. Applies only to the third representation of the virtual object. In other words, changes made in the staging view are maintained when the object is viewed in the augmented reality view or are used to constrain the appearance of the object in the augmented reality view in one or more ways. Set at least one display property of the second representation of the virtual object (eg, without requiring additional user input to apply the same display property to the second representation of the virtual object and the third representation of the virtual object) to the second representation of the virtual object. 3 Applying to a representation (eg, causing a user to apply a rotation to a second virtual object while a large form of the virtual object is displayed in the second user interface, improve the operability of the device (by applying rotation to the tertiary representation), which additionally reduces the power usage of the device and improves battery life by enabling the user to use the device more quickly and efficiently.

일부 실시예들에서, 제1 접촉에 의한 제1 입력의 적어도 초기 부분을 검출하는 것(예컨대, 제1 접촉을 검출하는 것, 또는 제1 기준들을 충족하지 않으면서 각각의 미리정의된 기준들을 충족하는 제1 접촉에 의한 입력을 검출하는 것, 또는 제1 기준들을 충족하는 입력을 검출하는 것을 포함함)에 응답하여, 디바이스는 하나 이상의 카메라들을 활성화시키고(예컨대, 디스플레이 상의 카메라(들)의 시야를 즉시 디스플레이하지 않으면서 카메라(들)를 활성화시킴), 디바이스는 하나 이상의 카메라들의 시야 내에서 하나 이상의 평면들을 검출하기 위해 하나 이상의 카메라들의 시야를 분석한다(926). 일부 실시예들에서, 하나 이상의 카메라들의 시야(6036)를 디스플레이하는 것은 하나 이상의 카메라들을 활성화시킨 후에 (예컨대, 증강 현실 환경에서 가상 객체를 디스플레이하라는 요청에 대응하는 제2 입력이 검출될 때까지, 적어도 하나의 시야 평면이 검출될 때까지, 또는 가상 객체에 대해 한정된 앵커 평면에 대응하는 시야 평면이 검출될 때까지) 지연된다. 일부 실시예들에서, 하나 이상의 카메라들의 시야(6036)는 하나 이상의 카메라들의 활성화에 대응하는 시간에 (예컨대, 활성화와 동시에) 디스플레이된다. 일부 실시예들에서, 하나 이상의 카메라들의 시야(6036)는 하나 이상의 카메라들의 시야 내에서 평면이 검출되기 전에 디스플레이된다(예컨대, 하나 이상의 카메라들의 시야는 접촉에 의한 제1 입력을 검출하는 것에 응답하여 그리고 결정에 따라 디스플레이된다). (예컨대, 하나 이상의 카메라들의 시야의 표현과 함께 가상 객체의 제3 표현을 디스플레이하기 전에) 제1 입력의 초기 부분을 검출하는 것에 응답하여 카메라(들)를 활성화시키고 하나 이상의 시야 평면들을 검출하기 위해 카메라(들)의 시야를 분석하는 것은 (예컨대, 카메라(들)의 시야 내의 각각의 평면에 대한 가상 객체의 제3 표현의 위치 및/또는 배향을 결정하는 데 필요한 시간을 감소시킴으로써) 디바이스의 효율을 향상시키고, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, detecting at least an initial portion of the first input by the first contact (eg, detecting the first contact, or meeting respective predefined criteria without meeting the first criteria) In response to detecting an input by a first contact with (activating the camera(s) without immediately displaying In some embodiments, displaying the field of view 6036 of the one or more cameras may occur after activating the one or more cameras (eg, until a second input corresponding to a request to display the virtual object in the augmented reality environment is detected; is delayed until at least one viewing plane is detected, or until a viewing plane corresponding to the anchor plane defined for the virtual object is detected. In some embodiments, the field of view 6036 of one or more cameras is displayed at a time corresponding to (eg, concurrently with) activation of the one or more cameras. In some embodiments, the field of view 6036 of the one or more cameras is displayed before a plane is detected within the field of view of the one or more cameras (eg, the field of view of the one or more cameras is responsive to detecting the first input by the contact). and displayed according to the decision). To activate the camera(s) in response to detecting an initial portion of the first input (eg, before displaying a third representation of the virtual object along with a representation of the field of view of the one or more cameras) and to detect one or more planes of view Analyzing the field of view of the camera(s) is effective (eg, by reducing the time required to determine the position and/or orientation of the third representation of the virtual object relative to each plane within the field of view of the camera(s)) of the device. , which further reduces the power usage of the device and improves battery life by enabling the user to use the device more quickly and efficiently.

일부 실시예들에서, 하나 이상의 카메라들의 시야 내에서 각각의 평면(예컨대, 바닥 표면(5038))을 검출하는 것에 응답하여, 디바이스는 하나 이상의 카메라들의 시야 내의 각각의 평면의 검출을 나타내기 위해 촉각적 출력을, 하나 이상의 촉각적 출력 생성기들(167)에 의해, 출력한다(928). 일부 실시예들에서, 시야(6036)는 시야 평면이 식별되기 전에 보여질 수 있다. 일부 실시예들에서, 적어도 하나의 시야 평면이 검출된 후에 또는 시야 평면들 모두가 식별된 후, 추가 사용자 인터페이스 제어부들 및/또는 아이콘들이 시야 내의 실세계 이미지 상에 오버레이된다. 카메라(들)의 시야 내의 평면의 검출을 나타내기 위해 촉각적 출력을 출력하는 것은 평면이 검출되었다는 것을 나타내는 피드백을 사용자에게 제공한다. 개선된 촉각적 피드백을 제공하는 것은, (예컨대, 사용자가 적절한 입력들을 제공하는 것을 돕고, 가상 객체를 배치하기 위한 불필요한 추가 입력들을 감소시킴으로써) 디바이스의 작동성을 향상시키고, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, in response to detecting each plane (eg, floor surface 5038 ) within the field of view of the one or more cameras, the device is tactile to indicate detection of each plane within the field of view of the one or more cameras. Output (928) the product output, by one or more tactile output generators (167). In some embodiments, field of view 6036 may be viewed before a viewing plane is identified. In some embodiments, after at least one viewing plane has been detected or after all of the viewing planes have been identified, additional user interface controls and/or icons are overlaid on the real-world image within the field of view. Outputting a tactile output to indicate detection of a plane within the field of view of the camera(s) provides feedback to the user indicating that a plane has been detected. Providing improved tactile feedback improves the operability of the device (eg, by helping the user provide appropriate inputs and reducing unnecessary additional inputs to place the virtual object), which in addition allows the user to It reduces the device's power usage and improves battery life by enabling faster and more efficient use of the device.

일부 실시예들에서, 디스플레이 상의 가상 객체의 제3 표현의 크기는 가상 객체(예컨대, 가상 의자(5020))의 제3 표현과 고정된 공간적 관계를 갖는 하나 이상의 카메라들의 시야(6036) 내의 위치(예컨대, 가상 객체가 부착되는 바닥 표면(5038)과 같은 평면)와 하나 이상의 카메라들 사이의 거리 및 가상 객체의 시뮬레이션된 실세계 크기에 기초하여 결정된다(930). 일부 실시예들에서, 가상 객체의 제3 표현의 크기는 하나 이상의 카메라들의 시야에 대한 가상 객체의 제3 표현의 크기의 축척이 유지되도록 제약된다. 일부 실시예들에서, 하나 이상의 물리적 치수 파라미터들(예컨대, 길이, 폭, 깊이, 및/또는 반경)이 가상 객체에 대해 한정된다. 일부 실시예들에서, 제2 사용자 인터페이스(예컨대, 스테이징 사용자 인터페이스)에서, 가상 객체는 그의 한정된 물리적 치수 파라미터들에 의해 제약되지 않는다(예컨대, 가상 객체의 크기는 사용자 입력에 응답하여 변경가능하다). 일부 실시예들에서, 가상 객체의 제3 표현은 그의 한정된 치수 파라미터들에 의해 제약된다. 시야 내에 표현된 물리적 환경에 대한 증강 현실 뷰에서 가상 객체의 위치를 변경하기 위한 사용자 입력이 검출될 때, 또는 시야의 줌(zoom) 레벨을 변경하기 위한 사용자 입력이 검출될 때, 또는 디바이스 주위의 물리적 환경에 대해 이동하는 사용자 입력이 검출될 때, 가상 객체의 외관(예컨대, 크기, 관찰 시점)은 (예컨대, 가상 객체의 앵커 평면과 증강 현실 환경 사이의 고정된 공간적 관계에 의해 표현되는 바와 같이) 가상 객체와 물리적 환경 사이의 고정된 공간적 관계, 및 가상 객체의 미리정의된 치수 파라미터들 및 물리적 환경의 실제 치수들에 기초한 고정된 축척에 의해 제한되는 방식으로 변경될 것이다. (예컨대, 가상 객체의 실세계 크기를 시뮬레이션하기 위해 가상 객체의 제3 표현을 크기 재설정하기 위한 추가 사용자 입력을 요구하지 않으면서) 하나 이상의 카메라들과 카메라(들)의 시야 내의 위치 사이의 거리 및 가상 객체의 시뮬레이션된 실세계 크기에 기초하여 가상 객체의 제3 표현의 크기를 결정하는 것은 디바이스의 작동성을 향상시키고, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, the size of the third representation of the virtual object on the display is a position within the field of view 6036 of one or more cameras that has a fixed spatial relationship with the third representation of the virtual object (eg, virtual chair 5020) ( The virtual object is determined ( 930 ) based on the distance between the one or more cameras and the distance between the one or more cameras (eg, a plane such as the floor surface 5038 to which the virtual object is attached) and the simulated real-world size of the virtual object ( 930 ). In some embodiments, the size of the third representation of the virtual object is constrained such that a scale of the size of the third representation of the virtual object with respect to the field of view of the one or more cameras is maintained. In some embodiments, one or more physical dimension parameters (eg, length, width, depth, and/or radius) are defined for the virtual object. In some embodiments, in the second user interface (eg, staging user interface), the virtual object is not constrained by its defined physical dimension parameters (eg, the size of the virtual object is changeable in response to user input). . In some embodiments, the third representation of the virtual object is constrained by its defined dimension parameters. When user input is detected to change the position of the virtual object in the augmented reality view of the physical environment represented within the field of view, or when user input is detected to change the zoom level of the field of view, or when a user input is detected around the device. When a moving user input is detected relative to the physical environment, the appearance (eg, size, viewpoint) of the virtual object (eg, as represented by a fixed spatial relationship between the anchor plane of the virtual object and the augmented reality environment) ) will change in a manner limited by a fixed spatial relationship between the virtual object and the physical environment, and a fixed scale based on predefined dimension parameters of the virtual object and the actual dimensions of the physical environment. the distance between the one or more cameras and a location within the field of view of the camera(s) and virtual Determining the size of the third representation of the virtual object based on the simulated real-world size of the object improves the operability of the device, which additionally enables the user to use the device more quickly and efficiently, thereby reducing the power of the device. Reduce usage and improve battery life.

일부 실시예들에서, 증강 현실 환경에 가상 객체를 디스플레이하라는 요청에 대응하는 제2 입력은, 가상 객체의 제2 표현을 (선택하고) (예컨대, 거리 임계치를 초과하여, 한정된 경계를 지나서, 그리고/또는 디스플레이 또는 제2 사용자 인터페이스 영역의 에지(예컨대, 하부 에지, 상부 에지, 및/또는 측부 에지)의 임계 거리 내에 있는 위치까지 증가하는 거리만큼) 드래그하는 입력을 포함한다(932). 증강 현실 환경에 가상 객체를 디스플레이하라는 요청에 대응하는 제2 입력을 검출하는 것에 응답하여 카메라(들)의 시야의 표현과 함께 가상 객체의 제3 표현을 디스플레이하는 것은 디스플레이된 추가 제어부들(예컨대, 제2 사용자 인터페이스로부터 증강 현실 환경을 디스플레이하기 위한 제어부들)로 제2 사용자 인터페이스를 혼란스럽게 하지 않으면서 추가 제어 옵션들을 제공한다. 디스플레이된 추가 제어부들로 제2 사용자 인터페이스를 혼란스럽게 하지 않으면서 추가 제어 옵션들을 제공하는 것은 디바이스의 작동성을 향상시키고, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, the second input corresponding to the request to display the virtual object in the augmented reality environment includes (selects) a second representation of the virtual object (eg, exceeds a distance threshold, crosses a defined boundary, and and/or an input of dragging ( 932 ) to a location that is within a threshold distance of an edge (eg, bottom edge, top edge, and/or side edge) of the display or second user interface area by an increasing distance. Displaying a third representation of the virtual object along with a representation of the field of view of the camera(s) in response to detecting a second input corresponding to a request to display the virtual object in the augmented reality environment may include displayed additional controls (eg, Controls for displaying the augmented reality environment from the second user interface) provide additional control options without confusing the second user interface. Providing additional control options without cluttering the second user interface with additional controls displayed improves the operability of the device, which in addition enables the user to use the device more quickly and efficiently, thereby reduce power consumption and improve battery life.

일부 실시예들에서, 제2 사용자 인터페이스 영역(예컨대, 도 6z에 도시된 바와 같은 스테이징 사용자 인터페이스(6010)) 내에 가상 객체의 제2 표현을 디스플레이하는 동안, 디바이스는 제1 사용자 인터페이스 영역을 재디스플레이하기 위한 각각의 기준들을 충족하는 제4 입력(예컨대, 가상 객체의 제2 표현에 대응하는 터치 감응형 표면 상의 위치 또는 터치 감응형 표면 상의 다른 위치(예컨대, 제2 사용자 인터페이스 영역의 하부 또는 에지)에서의 탭, 강한 누르기, 또는 계속 터치하기 및 드래그 입력, 및/또는 제1 사용자 인터페이스 영역으로 복귀하기 위한 제어부에 대응하는 터치 감응형 표면 상의 위치에서의 입력)을 검출하고, 제4 입력을 검출하는 것에 응답하여, 디바이스는 제2 사용자 인터페이스 영역 내에 가상 객체의 제2 표현을 디스플레이하는 것을 중지하고, 디바이스는 제1 사용자 인터페이스 영역 내에 가상 객체의 제1 표현을 재디스플레이한다(934). 예를 들어, 도 6z 내지 도 6ac에 도시된 바와 같이, 스테이징 사용자 인터페이스(6010)에 디스플레이된 뒤로 가기 제어부(6016)에 대응하는 위치에서의 접촉(6042)에 의한 입력에 응답하여, 디바이스는 제2 사용자 인터페이스 영역(예컨대, 스테이징 사용자 인터페이스(6010)) 내에 가상 의자(5020)의 제2 표현을 디스플레이하는 것을 중지하고, 디바이스는 제1 사용자 인터페이스 영역(예컨대, 메시징 사용자 인터페이스(5008)) 내에 가상 의자(5020)의 제1 표현을 재디스플레이한다. 일부 실시예들에서, 가상 객체의 제1 표현은 스테이징 뷰 및/또는 증강 현실 뷰로의 전이 전에 보여진 것들과 동일한 외관, 위치, 및/또는 배향으로 제1 사용자 인터페이스 영역 내에 디스플레이된다. 예를 들어, 도 6ac에서, 가상 의자(5020)는 도 6a의 메시징 사용자 인터페이스(5008)에 디스플레이된 가상 의자(5020)와 동일한 배향으로 메시징 사용자 인터페이스(5008)에 디스플레이된다. 일부 실시예들에서, 디바이스는 제1 사용자 인터페이스 영역 내에 가상 객체를 디스플레이하는 것으로 다시 전이될 때 스크린 상에 가상 객체를 연속적으로 디스플레이한다. 예를 들어, 도 6y 내지 도 6c에서, 가상 의자(5020)는 스테이징 사용자 인터페이스(6010)를 디스플레이하는 것으로부터 메시징 사용자 인터페이스(5008)를 디스플레이하는 것으로의 전이 동안 연속적으로 디스플레이된다. 제2 사용자 인터페이스 내에 가상 객체의 제2 표현을 디스플레이하는 동안 검출된 제4 입력이 제1 사용자 인터페이스를 재디스플레이하기 위한 기준들을 충족하는지 여부에 따라, 제1 사용자 인터페이스 내에 가상 객체의 제1 표현을 재디스플레이할지 여부를 결정하는 것은, 제4 입력에 응답하여 다수의 상이한 유형들의 동작들의 수행을 가능하게 한다. 입력에 응답하여 다수의 상이한 유형들의 동작들의 수행을 가능하게 하는 것은, 사용자가 이들 동작들을 수행할 수 있는 효율을 증가시키며, 이에 의해 디바이스의 작동성을 향상시키고, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, while displaying a second representation of the virtual object within a second user interface area (eg, staging user interface 6010 as shown in FIG. 6Z ), the device redisplays the first user interface area a fourth input (eg, a location on the touch-sensitive surface corresponding to the second representation of the virtual object or another location on the touch-sensitive surface (eg, a bottom or edge of the second user interface area) that meets respective criteria for a tap, a strong press, or a continuous touch and drag input, and/or an input at a location on the touch-sensitive surface corresponding to a control to return to the first user interface area), and detect a fourth input. In response to doing so, the device stops displaying the second representation of the virtual object within the second user interface area, and the device redisplays ( 934 ) the first representation of the virtual object within the first user interface area. For example, as shown in FIGS. 6Z-6A , in response to input by contact 6042 at a location corresponding to back control 6016 displayed on staging user interface 6010, the device may cease displaying the second representation of the virtual chair 5020 within the second user interface area (eg, the staging user interface 6010 ), and the device moves into a virtual Redisplay the first representation of chair 5020 . In some embodiments, the first representation of the virtual object is displayed within the first user interface area in the same appearance, location, and/or orientation as those viewed prior to transition to the staging view and/or augmented reality view. For example, in FIG. 6A , virtual chair 5020 is displayed in messaging user interface 5008 in the same orientation as virtual chair 5020 displayed in messaging user interface 5008 in FIG. 6A . In some embodiments, the device continuously displays the virtual object on the screen when transitioning back to displaying the virtual object within the first user interface area. For example, in FIGS. 6Y-6C , virtual chair 5020 is displayed continuously during the transition from displaying staging user interface 6010 to displaying messaging user interface 5008 . display the first representation of the virtual object in the first user interface according to whether the fourth input detected while displaying the second representation of the virtual object in the second user interface meets criteria for redisplaying the first user interface; Determining whether to redisplay enables performance of a number of different types of operations in response to the fourth input. Enabling the performance of a number of different types of operations in response to input increases the efficiency with which a user can perform these operations, thereby improving the operability of the device, which in addition allows the user to perform more By enabling quick and efficient use, it reduces the device's power usage and improves battery life.

일부 실시예들에서, (예컨대, 도 6u에 도시된 바와 같이) 하나 이상의 카메라들의 시야(5036)의 표현과 함께 가상 객체의 제3 표현을 디스플레이하는 동안, 디바이스는 제2 사용자 인터페이스 영역을 재디스플레이하기 위한 각각의 기준들을 충족하는 제5 입력(예컨대, 가상 객체의 제3 표현에 대응하는 터치 감응형 표면 상의 위치 또는 터치 감응형 표면 상의 다른 위치에서의 탭, 강한 누르기, 또는 터치 및 드래그 입력, 및/또는 제2 사용자 인터페이스 영역을 디스플레이하는 것으로 복귀하기 위한 제어부에 대응하는 터치 감응형 표면 상의 위치에서의 입력)을 검출하고, 제5 입력을 검출하는 것에 응답하여, 디바이스는 가상 객체의 제3 표현 및 하나 이상의 카메라들의 시야의 표현을 디스플레이하는 것을 중지하고, 제2 사용자 인터페이스 영역 내에 가상 객체의 제2 표현을 재디스플레이한다(936). 예를 들어, 도 6v 내지 도 6y에 도시된 바와 같이, 카메라(들)의 시야(6036)를 포함하는 제3 사용자 인터페이스에 디스플레이된 토글 제어부(6018)에 대응하는 위치에서의 접촉(6040)에 의한 입력에 응답하여, 디바이스는 카메라(들)의 시야(6036)를 디스플레이하는 것을 중지하고, 스테이징 사용자 인터페이스(6010)를 재디스플레이한다. 일부 실시예들에서, 가상 객체의 제2 표현은 증강 현실 뷰에 보여진 것과 동일한 배향으로 제2 사용자 인터페이스 영역 내에 디스플레이된다. 일부 실시예들에서, 디바이스는 제2 사용자 인터페이스 영역 내에 가상 객체를 디스플레이하는 것으로 다시 전이될 때 스크린 상에 가상 객체를 연속적으로 디스플레이한다. 예를 들어, 도 6v 내지 도 6y에서, 가상 의자(5020)는 카메라(들)의 시야(6036)를 디스플레이하는 것으로부터 스테이징 사용자 인터페이스(6010)를 디스플레이하는 것으로의 전이 동안 연속적으로 디스플레이된다. 카메라(들)의 시야와 함께 가상 객체의 제3 표현을 디스플레이하는 동안 검출된 제5 입력이 제2 사용자 인터페이스를 재디스플레이하기 위한 기준들을 충족하는지 여부에 따라, 제2 사용자 인터페이스 내에 가상 객체의 제2 표현을 재디스플레이할지 여부를 결정하는 것은, 제5 입력에 응답하여 다수의 상이한 유형들의 동작들의 수행을 가능하게 한다. 입력에 응답하여 다수의 상이한 유형들의 동작들의 수행을 가능하게 하는 것은, 사용자가 이들 동작들을 수행할 수 있는 효율을 증가시키며, 이에 의해 디바이스의 작동성을 향상시키고, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, while displaying a third representation of the virtual object along with a representation of the field of view 5036 of the one or more cameras (eg, as shown in FIG. 6U ), the device redisplays the second user interface area a fifth input (e.g., a tap, strong press, or touch and drag input at a location on the touch-sensitive surface or other location on the touch-sensitive surface corresponding to the third representation of the virtual object; and/or an input at a location on the touch-sensitive surface corresponding to the control for returning to displaying the second user interface area), and in response to detecting the fifth input, the device Stop displaying the representation and the representation of the field of view of the one or more cameras, and redisplay ( 936 ) a second representation of the virtual object within the second user interface area. For example, as shown in FIGS. 6V-6Y , on contact 6040 at a location corresponding to toggle control 6018 displayed in a third user interface comprising field of view 6036 of the camera(s). In response to the input by the user, the device stops displaying the field of view 6036 of the camera(s) and redisplays the staging user interface 6010 . In some embodiments, the second representation of the virtual object is displayed within the second user interface area in the same orientation as seen in the augmented reality view. In some embodiments, the device continuously displays the virtual object on the screen when transitioning back to displaying the virtual object within the second user interface area. For example, in FIGS. 6V-6Y , virtual chair 5020 is displayed continuously during the transition from displaying field of view 6036 of the camera(s) to displaying staging user interface 6010 . according to whether a fifth input detected while displaying the third representation of the virtual object with the field of view of the camera(s) meets criteria for redisplaying the second user interface, the second user interface of the virtual object 2 Determining whether to redisplay the representation enables performance of a number of different types of operations in response to the fifth input. Enabling the performance of a number of different types of operations in response to input increases the efficiency with which a user can perform these operations, thereby improving the operability of the device, which in addition allows the user to perform more By enabling quick and efficient use, it reduces the device's power usage and improves battery life.

일부 실시예들에서, 하나 이상의 카메라들의 시야의 표현(6036)과 함께 가상 객체의 제3 표현을 디스플레이하는 동안, 디바이스는 제1 사용자 인터페이스 영역(예컨대, 메시징 사용자 인터페이스(5008))을 재디스플레이하기 위한 각각의 기준들을 충족하는 제6 입력을 검출하고, 제6 입력을 검출하는 것에 응답하여, 디바이스는 (예컨대, 도 6u에 도시된 바와 같이) 가상 객체(예컨대, 가상 의자(5020))의 제3 표현 및 하나 이상의 카메라들의 시야(6036)의 표현을 디스플레이하는 것을 중지하고, 디바이스는 (예컨대, 도 6ac에 도시된 바와 같이) 제1 사용자 인터페이스 영역 내에 가상 객체의 제1 표현을 재디스플레이한다(938). 일부 실시예들에서, 제6 입력은, 예컨대, 가상 객체의 제3 표현에 대응하는 터치 감응형 표면 상의 위치 또는 터치 감응형 표면 상의 다른 위치에서의 탭, 강한 누르기, 또는 터치 및 드래그 입력, 및/또는 제1 사용자 인터페이스 영역을 디스플레이하는 것으로 복귀하기 위한 제어부에 대응하는 터치 감응형 표면 상의 위치에서의 입력이다. 일부 실시예들에서, 가상 객체의 제1 표현은 스테이징 뷰 및/또는 증강 현실 뷰로의 전이 전에 보여진 것들과 동일한 외관 및 위치로 제1 사용자 인터페이스 영역 내에 디스플레이된다. 일부 실시예들에서, 디바이스는 제1 사용자 인터페이스 영역 내에 가상 객체를 디스플레이하는 것으로 다시 전이될 때 스크린 상에 가상 객체를 연속적으로 디스플레이한다. 카메라(들)의 시야와 함께 가상 객체의 제3 표현을 디스플레이하는 동안 검출된 제6 입력이 제1 사용자 인터페이스를 재디스플레이하기 위한 기준들을 충족하는지 여부에 따라, 제1 사용자 인터페이스 내에 가상 객체의 제1 표현을 재디스플레이할지 여부를 결정하는 것은, 제6 입력에 응답하여 다수의 상이한 유형들의 동작들의 수행을 가능하게 한다. 입력에 응답하여 다수의 상이한 유형들의 동작들의 수행을 가능하게 하는 것은, 사용자가 이들 동작들을 수행할 수 있는 효율을 증가시키며, 이에 의해 디바이스의 작동성을 향상시키고, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, while displaying the third representation of the virtual object along with the representation 6036 of the field of view of the one or more cameras, the device redisplays the first user interface area (eg, the messaging user interface 5008 ). detect a sixth input that meets respective criteria for 3 Stop displaying the representation and representation of the field of view 6036 of the one or more cameras, and the device redisplays the first representation of the virtual object within the first user interface area (eg, as shown in FIG. 6A ) (eg, as shown in FIG. 6A ). 938). In some embodiments, the sixth input is, for example, a tap, strong press, or touch and drag input at a location on the touch-sensitive surface or another location on the touch-sensitive surface corresponding to the third representation of the virtual object, and /or input at a location on the touch-sensitive surface corresponding to the control to return to displaying the first user interface area. In some embodiments, the first representation of the virtual object is displayed within the first user interface area with the same appearance and location as those viewed before transitioning to the staging view and/or augmented reality view. In some embodiments, the device continuously displays the virtual object on the screen when transitioning back to displaying the virtual object within the first user interface area. according to whether the sixth input detected while displaying the third representation of the virtual object with the field of view of the camera(s) meets criteria for redisplaying the first user interface, the second representation of the virtual object within the first user interface. Determining whether to redisplay the 1 representation enables performance of a number of different types of operations in response to the sixth input. Enabling the performance of a number of different types of operations in response to input increases the efficiency with which a user can perform these operations, thereby improving the operability of the device, which in addition allows the user to perform more By enabling quick and efficient use, it reduces the device's power usage and improves battery life.

일부 실시예들에서, 제1 접촉에 의한 제1 입력을 검출하는 것에 응답하여 그리고 제1 접촉에 의한 입력이 제1 기준들을 충족한다는 결정에 따라, 디바이스는, 제1 사용자 인터페이스 영역 내의 가상 객체의 제1 표현이 제2 사용자 인터페이스 영역 내의 가상 객체의 제2 표현으로 변환되는 애니메이션(예컨대, 이동, 하나 이상의 축들을 중심으로 하는 회전, 및/또는 축척조정)을 디스플레이하는 것을 포함하여, 제1 사용자 인터페이스 영역(예컨대, 메시징 사용자 인터페이스(5008))을 디스플레이하는 것으로부터 제2 사용자 인터페이스 영역(예컨대, 스테이징 사용자 인터페이스(6010))을 디스플레이하는 것으로 전이될 때 가상 객체를 연속적으로 디스플레이한다(940). 예를 들어, 도 6e 내지 도 6i에서, 가상 의자(5020)는 메시징 사용자 인터페이스(5008)를 디스플레이하는 것으로부터 스테이징 사용자 인터페이스(6010)를 디스플레이하는 것으로의 전이 동안 연속적으로 디스플레이되고 애니메이션화된다(예컨대, 가상 의자(5020)의 배향이 변한다). 일부 실시예들에서, 가상 객체는 (예컨대, 제1 사용자 인터페이스 영역에서 보여지는 바와 같은 가상 객체의 제1 표현의 형상 및 배향에 기초하여 한정되는) 카메라(들)의 시야 내의 평면에 대한 한정된 배향, 위치 및/또는 거리를 가지며, 제2 사용자 인터페이스 영역으로 전이될 때, 가상 객체의 제1 표현은 디스플레이 상의 새로운 위치(예컨대, 제2 사용자 인터페이스 영역 내의 가상 스테이징 평면의 중심)에서 가상 객체의 제2 표현으로 이동, 크기 재설정, 및/또는 재배향되고, 이동 동안 또는 이동의 종료 시, 가상 객체는 가상 객체가 디바이스 주위의 물리적 환경과 독립적으로 한정되는 미리정의된 가상 스테이징 평면에 대해 미리결정된 각도에 있도록 재배향된다. 제1 사용자 인터페이스 내의 가상 객체의 제1 표현이 제2 사용자 인터페이스 내의 가상 객체의 제2 표현으로 변환됨에 따라 애니메이션을 디스플레이하는 것은 제1 입력이 제1 기준들을 충족한다는 것을 나타내는 피드백을 사용자에게 제공한다. 개선된 피드백을 제공하는 것은, (예컨대, 디바이스를 작동시킬 때/그와 상호작용할 때 사용자가 적절한 입력들을 제공하는 것을 돕고 사용자 실수들을 감소시킴으로써) 디바이스의 작동성을 향상시키고, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, in response to detecting the first input by the first contact and upon determining that the input by the first contact meets first criteria, the device is configured to: the first user comprising displaying an animation (eg, movement, rotation about one or more axes, and/or scaling) in which the first representation is transformed into a second representation of the virtual object within the second user interface area; Continuously displays ( 940 ) the virtual object when transitioning from displaying an interface area (eg, messaging user interface 5008 ) to displaying a second user interface area (eg, staging user interface 6010 ). For example, in FIGS. 6E-6I , virtual chair 5020 is continuously displayed and animated (eg, during the transition from displaying messaging user interface 5008 to displaying staging user interface 6010 ). the orientation of the virtual chair 5020 changes). In some embodiments, the virtual object has a defined orientation relative to a plane within the field of view of the camera(s) (eg, defined based on the shape and orientation of the first representation of the virtual object as viewed in the first user interface area). . 2 It is moved, resized, and/or reoriented into a representation, and during movement or at the end of the movement, the virtual object is at a predetermined angle relative to a predefined virtual staging plane to which the virtual object is defined independently of the physical environment surrounding the device. is redirected to Displaying the animation as the first representation of the virtual object in the first user interface transforms into the second representation of the virtual object in the second user interface provides feedback to the user indicating that the first input meets the first criteria . Providing improved feedback improves the operability of the device (eg, by helping the user provide appropriate inputs and reducing user errors when operating/interacting with the device), which additionally allows the user to By enabling the device to be used more quickly and efficiently, it reduces the device's power usage and improves battery life.

일부 실시예들에서, 제2 접촉에 의한 제2 입력을 검출하는 것에 응답하여 그리고 제2 접촉에 의한 제2 입력이 증강 현실 환경에 가상 객체를 디스플레이하라는 요청에 대응한다는 결정에 따라, 디바이스는, 제2 사용자 인터페이스 영역 내의 가상 객체의 제2 표현이 하나 이상의 카메라들의 시야를 포함하는 제3 사용자 인터페이스 영역 내의 가상 객체의 제3 표현으로 변환되는 애니메이션(예컨대, 이동, 하나 이상의 축들을 중심으로 하는 회전, 및/또는 축척조정)을 디스플레이하는 것을 포함하여, 제2 사용자 인터페이스 영역(예컨대, 스테이징 사용자 인터페이스(6010))을 디스플레이하는 것으로부터 하나 이상의 카메라들의 시야(6036)를 포함하는 제3 사용자 인터페이스 영역을 디스플레이하는 것으로 전이될 때 가상 객체를 연속적으로 디스플레이한다(942). 예를 들어, 도 6q 내지 도 6u에서, 가상 의자(5020)는 스테이징 사용자 인터페이스(6010)를 디스플레이하는 것으로부터 카메라(들)의 시야(6036)를 디스플레이하는 것으로의 전이 동안 연속적으로 디스플레이되고 애니메이션화된다(예컨대, 가상 의자(5020)의 위치 및 크기가 변한다). 일부 실시예들에서, 가상 객체는 가상 객체가 하나 이상의 카메라들의 시야 내에서 검출되는 시야 평면(예컨대, 사용자 인터페이스 객체의 3차원 표현을 지지할 수 있는 수직 벽 또는 수평 바닥 표면과 같은 물리적 표면)에 대한 미리정의된 배향, 위치, 및/또는 거리에 있도록 재배향된다. 제2 사용자 인터페이스 내의 가상 객체의 제2 표현이 제3 사용자 인터페이스 내의 가상 객체의 제3 표현으로 변환됨에 따라 애니메이션을 디스플레이하는 것은 제2 입력이 증강 현실 환경에서 가상 객체를 디스플레이하라는 요청에 대응한다는 것을 나타내는 피드백을 사용자에게 제공한다. 개선된 시각적 피드백을 사용자에게 제공하는 것은, (예컨대, 디바이스를 작동시킬 때/그와 상호작용할 때 사용자가 적절한 입력들을 제공하는 것을 돕고 사용자 실수들을 감소시킴으로써) 디바이스의 작동성을 향상시키고, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, in response to detecting the second input by the second contact and upon determining that the second input by the second contact corresponds to a request to display the virtual object in the augmented reality environment, the device: An animation (eg, movement, rotation about one or more axes) in which a second representation of the virtual object in the second user interface region is transformed into a third representation of the virtual object in a third user interface region that includes the field of view of one or more cameras. , and/or scaling), a third user interface area comprising a field of view 6036 of one or more cameras from displaying a second user interface area (eg, staging user interface 6010 ). The virtual object is continuously displayed (942) when transitioning to displaying the . For example, in FIGS. 6Q-6U , virtual chair 5020 is continuously displayed and animated during the transition from displaying staging user interface 6010 to displaying field of view 6036 of the camera(s). (For example, the position and size of the virtual chair 5020 change). In some embodiments, the virtual object is in a viewing plane (eg, a physical surface such as a vertical wall or horizontal floor surface that can support a three-dimensional representation of a user interface object) at which the virtual object is detected within the field of view of one or more cameras. is reoriented to be at a predefined orientation, location, and/or distance from displaying the animation as the second representation of the virtual object in the second user interface is converted to the third representation of the virtual object in the third user interface indicates that the second input corresponds to a request to display the virtual object in the augmented reality environment Indicative feedback is provided to the user. Providing the user with improved visual feedback improves the operability of the device (eg, by helping the user provide appropriate inputs and reducing user errors when operating/interacting with the device), which additionally , reducing the power usage of the device and improving battery life by enabling users to use the device more quickly and efficiently.

도 9a 내지 도 9d에서의 동작들이 기술된 특정 순서는 단지 일례이며 기술된 순서가 동작들이 수행될 수 있는 유일한 순서임을 나타내는 것으로 의도되지는 않는다는 것이 이해되어야 한다. 당업자는 본 명세서에 기술된 동작들을 재순서화하는 다양한 방식들을 인식할 것이다. 추가적으로, 본 명세서에 기술된 다른 방법들(예를 들어, 방법들(800, 900, 16000, 17000, 18000, 19000, 20000))과 관련하여 본 명세서에 기술된 다른 프로세스들의 상세사항들이 도 9a 내지 도 9d와 관련하여 전술된 방법(900)과 유사한 방식으로 또한 적용가능하다는 것이 주목되어야 한다. 예를 들어, 방법(900)과 관련하여 전술된 접촉들, 입력들, 가상 객체들, 사용자 인터페이스 영역들, 세기 임계치들, 시야들, 촉각적 출력들, 이동들, 및/또는 애니메이션들은 선택적으로, 본 명세서에 기술된 다른 방법들(예컨대, 방법들(800, 900, 16000, 17000, 18000, 19000, 20000))과 관련하여 본 명세서에 기술된 접촉들, 입력들, 가상 객체들, 사용자 인터페이스 영역들, 세기 임계치들, 시야들, 촉각적 출력들, 이동들, 및/또는 애니메이션들의 특성들 중 하나 이상을 갖는다. 간결함을 위해, 이러한 상세사항들은 여기서 반복되지 않는다.It should be understood that the specific order in which the operations in FIGS. 9A-9D are described is merely an example and is not intended to indicate that the described order is the only order in which the operations may be performed. Those skilled in the art will recognize various ways of reordering the operations described herein. Additionally, details of other processes described herein in connection with other methods described herein (eg, methods 800 , 900 , 16000 , 17000 , 18000 , 19000 , 20000 ) are set forth in FIGS. It should be noted that in a manner similar to method 900 described above with respect to FIG. 9D is also applicable. For example, contacts, inputs, virtual objects, user interface regions, intensity thresholds, fields of view, tactile outputs, movements, and/or animations described above with respect to method 900 may optionally be , contacts, inputs, virtual objects, user interface described herein in connection with other methods described herein (eg, methods 800, 900, 16000, 17000, 18000, 19000, 20000). have one or more of the properties of regions, intensity thresholds, fields of view, tactile outputs, movements, and/or animations. For the sake of brevity, these details are not repeated here.

도 10a 내지 도 10d는 일부 실시예들에 따른, 아이템이 가상 3차원 객체에 대응한다는 것을 나타내는 시각적 표시를 갖는 아이템을 디스플레이하는 방법(1000)을 예시하는 흐름도들이다. 방법(1000)은 디스플레이 및 터치 감응형 표면(예컨대, 디스플레이 및 터치 감응형 표면 둘 모두로서의 역할을 하는 터치 스크린 디스플레이)을 갖는 전자 디바이스(예컨대, 도 3의 디바이스(300), 또는 도 1a의 휴대용 다기능 디바이스(100))에서 수행된다. 일부 실시예들에서, 디스플레이는 터치 스크린 디스플레이이고, 터치 감응형 표면은 디스플레이 상에 있거나 그와 통합된다. 일부 실시예들에서, 디스플레이는 터치 감응형 표면과는 별개이다. 방법(1000)에서의 일부 동작들이 선택적으로 조합되고/되거나, 일부 동작들의 순서가 선택적으로 변경된다.10A-10D are flow diagrams illustrating a method 1000 of displaying an item with a visual indication that the item corresponds to a virtual three-dimensional object, in accordance with some embodiments. The method 1000 includes an electronic device (eg, device 300 of FIG. 3 , or portable of FIG. 1A ) having a display and a touch-sensitive surface (eg, a touch screen display that serves as both a display and a touch-sensitive surface). multifunction device 100). In some embodiments, the display is a touch screen display and the touch-sensitive surface is on or integrated with the display. In some embodiments, the display is separate from the touch-sensitive surface. Some operations in method 1000 are selectively combined and/or the order of some operations is selectively changed.

후술되는 바와 같이, 방법(1000)은 제1 및 제2 사용자 인터페이스들 내에 아이템들을 디스플레이하는 것에 관한 것이다. 각각의 아이템은, 아이템이 각각의 가상 3차원 객체에 대응하는지 여부에 따라, 아이템이 가상 3차원 객체에 대응한다는 것을 나타내는 시각적 표시와 함께 또는 시각적 표시 없이 디스플레이된다. 아이템이 가상 3차원 객체인지 여부에 대한 표시를 사용자에게 제공하는 것은 (예컨대, 아이템이 가상 3차원 객체인지 또는 아닌지에 따라 사용자가 적절한 입력들을 제공하도록 도움으로써) 사용자가 제1 아이템에 대한 동작들을 수행할 수 있는 효율을 증가시키고, 그에 의해, 디바이스의 작동성을 향상시키며, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.As described below, the method 1000 relates to displaying items in first and second user interfaces. Each item is displayed with or without a visual indication indicating that the item corresponds to a virtual three-dimensional object, depending on whether the item corresponds to a respective virtual three-dimensional object. Providing the user with an indication of whether the item is a virtual three-dimensional object (eg, by helping the user provide appropriate inputs depending on whether the item is a virtual three-dimensional object or not) allows the user to perform actions on the first item. It increases the efficiency it can perform, thereby improving the operability of the device, which additionally reduces the power usage of the device and improves battery life by enabling the user to use the device more quickly and efficiently. .

디바이스는 제1 아이템(예컨대, 아이콘, 섬네일(thumbnail) 이미지, 이미지, 이모지, 첨부물, 스티커, 앱 아이콘, 아바타, 등)을 포함하는 제1 사용자 인터페이스를 디스플레이하라는 요청을 수신한다(1002). 예를 들어, 일부 실시예들에서, 요청은 제1 아이템과 연관된 미리정의된 환경에서 제1 아이템의 표현을 디스플레이하기 위한 사용자 인터페이스(예컨대, 도 7b에 도시된 바와 같은 인터넷 브라우저 사용자 인터페이스(5060))를 열기 위한 (예컨대, 도 7a와 관련하여 기술된 바와 같은) 입력이다. 미리정의된 환경은 선택적으로, 애플리케이션(예컨대, 이메일 애플리케이션, 메시징 애플리케이션, 브라우저 애플리케이션, 워드 프로세싱 애플리케이션, 전자책 애플리케이션 등)의 사용자 인터페이스 또는 시스템 사용자 인터페이스(예컨대, 잠금 화면, 통지 인터페이스, 제안 인터페이스, 제어판 사용자 인터페이스, 홈 화면 사용자 인터페이스 등)이다.The device receives ( 1002 ) a request to display a first user interface that includes a first item (eg, an icon, thumbnail image, image, emoji, attachment, sticker, app icon, avatar, etc.). For example, in some embodiments, the request may be a user interface (eg, internet browser user interface 5060 as shown in FIG. 7B ) to display a representation of the first item in a predefined environment associated with the first item. ) (eg, as described with respect to FIG. 7A ) to open it. The predefined environment is optionally a user interface of an application (eg, an email application, a messaging application, a browser application, a word processing application, an e-book application, etc.) or a system user interface (eg, a lock screen, a notification interface, a suggestion interface, a control panel). user interface, home screen user interface, etc.).

제1 사용자 인터페이스를 디스플레이하라는 요청에 응답하여, 디바이스는 제1 아이템의 표현과 함께 제1 사용자 인터페이스(예컨대, 도 7b에 도시된 바와 같은 인터넷 브라우저 사용자 인터페이스(5060))를 디스플레이한다(1004). 제1 아이템이 각각의 가상 3차원 객체에 대응한다는 결정에 따라, 디바이스는 제1 아이템이 제1 각각의 가상 3차원 객체(예컨대, 제1 아이템의 표현에 대응하는 위치에 디스플레이되는, 아이콘 및/또는 배경 패널과 같은 이미지; 윤곽; 및/또는 텍스트)에 대응한다는 것을 나타내는 시각적 표시와 함께 제1 아이템의 표현을 디스플레이한다. 제1 아이템이 각각의 가상 3차원 객체에 대응하지 않는다는 결정에 따라, 디바이스는 시각적 표시 없이 제1 아이템의 표현을 디스플레이한다. 예를 들어, 도 7b에 예시된 바와 같이, 인터넷 브라우저 사용자 인터페이스(5060)에서, (가상 3차원 램프 객체(5084)의 표현을 포함하는) 웹 객체(5068)는 가상 램프(8084)가 가상 3차원 객체인 것을 나타내는 시각적 표시(가상 객체 표시자(5080))와 함께 디스플레이되고 웹 객체(5074)는 웹 객체(5074)가 가상 3차원 객체에 대응하는 아이템을 포함하지 않기 때문에 시각적 객체 표시자 없이 디스플레이된다.In response to the request to display the first user interface, the device displays ( 1004 ) a first user interface (eg, internet browser user interface 5060 as shown in FIG. 7B ) along with a representation of the first item. Upon determining that the first item corresponds to the respective virtual three-dimensional object, the device configures the first item to be displayed on the first respective virtual three-dimensional object (eg, at a location corresponding to the representation of the first item, the icon and/or the or display a representation of the first item with a visual indication indicating that it corresponds to an image, such as a background panel; outline; and/or text). Upon determining that the first item does not correspond to the respective virtual three-dimensional object, the device displays a representation of the first item without a visual indication. For example, as illustrated in FIG. 7B , in the Internet browser user interface 5060 , the web object 5068 (including the representation of the virtual three-dimensional lamp object 5084 ) is the virtual lamp 8084 is virtual 3 . Displayed with a visual indication indicating that it is a dimensional object (virtual object indicator 5080 ) and web object 5074 without a visual indicator because web object 5074 does not contain an item corresponding to the virtual three-dimensional object is displayed.

제1 아이템의 표현을 디스플레이한 후, 디바이스는 제2 아이템(예컨대, 아이콘, 섬네일 이미지, 이미지, 이모지, 첨부물, 스티커, 앱 아이콘, 아바타 등)을 포함하는 제2 사용자 인터페이스(예컨대, 도 7m에 예시된 바와 같은 메시징 사용자 인터페이스(5008))를 디스플레이하라는 요청(예컨대, 도 7h 내지 도 7l과 관련하여 기술된 바와 같은 입력)을 수신한다(1006). 제2 아이템은 제1 아이템과 구별되고, 제2 사용자 인터페이스는 제1 사용자 인터페이스와 구별된다. 예를 들어, 일부 실시예들에서, 요청은 제2 아이템과 연관된 미리정의된 환경에서 제2 아이템의 표현을 디스플레이하기 위한 사용자 인터페이스를 열기 위한 다른 입력이다. 미리정의된 환경은 선택적으로, 제1 아이템을 보여주는 데 사용되는 애플리케이션(예컨대, 이메일 애플리케이션, 메시징 애플리케이션, 브라우저 애플리케이션, 워드 프로세싱 애플리케이션, 전자책 애플리케이션 등) 이외의 애플리케이션의 사용자 인터페이스, 또는 제1 아이템을 보여주는 데 사용되는 시스템 사용자 인터페이스(예컨대, 잠금 화면, 통지 인터페이스, 제안 인터페이스, 제어판 사용자 인터페이스, 홈 화면 사용자 인터페이스 등) 이외의 시스템 사용자 인터페이스이다.After displaying the representation of the first item, the device may display a second user interface (eg, FIG. 7M ) that includes a second item (eg, an icon, thumbnail image, image, emoji, attachment, sticker, app icon, avatar, etc.) A request (eg, input as described in connection with FIGS. 7H-7L ) is received ( 1006 ) to display a messaging user interface 5008 as illustrated in FIG. The second item is distinct from the first item, and the second user interface is distinct from the first user interface. For example, in some embodiments, the request is another input to open a user interface for displaying a representation of the second item in a predefined environment associated with the second item. The predefined environment optionally provides a user interface of an application other than an application used to present the first item (eg, an email application, a messaging application, a browser application, a word processing application, an e-book application, etc.), or the first item. A system user interface other than the system user interface used to display (eg, lock screen, notification interface, suggestion interface, control panel user interface, home screen user interface, etc.).

제2 사용자 인터페이스를 디스플레이하라는 요청에 응답하여, 디바이스는 제2 아이템의 표현과 함께 제2 사용자 인터페이스(예컨대, 도 7m에 도시된 바와 같은 메시징 사용자 인터페이스(5008))를 디스플레이한다(1008). 제2 아이템이 각각의 가상 3차원 객체에 대응한다는 결정에 따라, 디바이스는 제2 아이템이 제2 각각의 가상 3차원 객체에 대응한다는 것을 나타내는 시각적 표시(예컨대, 제1 아이템이 가상 3차원 객체에 대응한다는 것을 나타내는 동일한 시각적 표시)와 함께 제2 아이템의 표현을 디스플레이한다. 제2 아이템이 각각의 가상 3차원 객체에 대응하지 않는다는 결정에 따라, 디바이스는 시각적 표시 없이 제2 아이템의 표현을 디스플레이한다. 예를 들어, 도 7m에 예시된 바와 같이, 메시징 사용자 인터페이스(5008)에서, 가상 3차원 의자 객체(5020)는 가상 의자(5020)가 가상 3차원 객체인 것을 나타내는 시각적 표시(가상 객체 표시자(5022))와 함께 디스플레이되고, 이모지(7020)는 이모지(7020)가 가상 3차원 객체에 대응하는 아이템을 포함하지 않기 때문에 시각적 객체 표시자 없이 디스플레이된다.In response to the request to display the second user interface, the device displays 1008 a second user interface (eg, messaging user interface 5008 as shown in FIG. 7M ) with a representation of the second item. Upon determining that the second item corresponds to the respective virtual three-dimensional object, the device provides a visual indication indicating that the second item corresponds to the second respective virtual three-dimensional object (eg, the first item corresponds to the virtual three-dimensional object). display a representation of the second item with the same visual indication that it corresponds). Upon determining that the second item does not correspond to the respective virtual three-dimensional object, the device displays a representation of the second item without a visual indication. For example, as illustrated in FIG. 7M , in messaging user interface 5008 , virtual three-dimensional chair object 5020 is a visual indication (virtual object indicator) indicating that virtual chair 5020 is a virtual three-dimensional object. 5022)), and the emoji 7020 is displayed without a visual object indicator because the emoji 7020 does not contain an item corresponding to the virtual three-dimensional object.

일부 실시예들에서, 제1 아이템이 제1 각각의 가상 3차원 객체에 대응한다는 것을 나타내는 시각적 표시(예컨대, 가상 객체 표시자(5080))와 함께 제1 아이템(예컨대, 가상 램프(5084))의 표현을 디스플레이하는 것은, (예컨대, 배향 센서(예컨대, 디바이스(100)의 하나 이상의 가속도계(168))에 의해 검출되는 바와 같이) 제1 디바이스 배향으로부터 제2 디바이스 배향으로의 변경을 야기하는 디바이스의 이동을 검출하는 것에 응답하여, 제1 디바이스 배향으로부터 제2 디바이스 배향으로의 변경에 대응하는 제1 아이템의 이동(예컨대, 제1 아이템의 기울어짐 및/또는 제1 사용자 인터페이스에 대한 제1 아이템의 이동)을 디스플레이하는 것을 포함한다(1010). 예를 들어, 제1 디바이스 배향은 도 7f1에 예시된 바와 같은 디바이스(100)의 배향이고, 제2 디바이스 배향은 도 7g1에 예시된 바와 같은 디바이스(100)의 배향이다. 도 7f1에서 도 7g1로 예시된 이동에 응답하여, 제1 아이템(예컨대, 가상 램프(5084))이 (예컨대, 도 7f2에서 도 7g2로 예시된 바와 같이) 기울어진다. 일부 실시예들에서, 제2 객체가 가상 3차원 객체에 대응하는 경우, 제2 객체는 또한 (예컨대, 제2 객체가 또한 가상 3차원 객체에 대응한다는 것을 나타내기 위해) 전술된 방식으로 디바이스의 이동을 검출하는 것에 응답한다.In some embodiments, a first item (eg, virtual lamp 5084 ) with a visual indication (eg, virtual object indicator 5080 ) indicating that the first item corresponds to a first respective virtual three-dimensional object Displaying a representation of a device that causes a change from a first device orientation to a second device orientation (eg, as detected by an orientation sensor (eg, one or more accelerometers 168 of device 100 )) In response to detecting the movement of movement of) (1010). For example, a first device orientation is an orientation of device 100 as illustrated in FIG. 7F1 , and a second device orientation is an orientation of device 100 as illustrated in FIG. 7G1 . In response to the movement illustrated in FIGS. 7F1 to 7G1 , a first item (eg, virtual ramp 5084 ) is tilted (eg, as illustrated by FIGS. 7F2 to 7G2 ). In some embodiments, if the second object corresponds to a virtual three-dimensional object, the second object also (eg, to indicate that the second object also corresponds to a virtual three-dimensional object) of the device in the manner described above. It responds to detecting movement.

제1 디바이스 배향으로부터 제2 디바이스들 배향으로의 변경에 대응하는 제1 아이템의 이동을 디스플레이하는 것은 가상 3차원 객체의 거동을 나타내는 시각적 피드백을 사용자에게 제공한다. 개선된 시각적 피드백을 사용자에게 제공하는 것은 (예컨대, 사용자가 추가 입력을 제공할 필요 없이 가상 3차원 객체를 일정 배향들로부터 관찰하게 함으로써) 디바이스의 작동성을 향상시키고, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.Displaying movement of the first item corresponding to a change from the first device orientation to the second devices orientation provides the user with visual feedback indicative of the behavior of the virtual three-dimensional object. Providing the user with improved visual feedback improves the operability of the device (eg, by allowing the user to view a virtual three-dimensional object from certain orientations without the need to provide additional input), which additionally allows the user to use the device It reduces the device's power usage and improves battery life by enabling faster and more efficient use.

일부 실시예들에서, 제1 아이템이 제1 각각의 가상 3차원 객체에 대응한다는 것을 나타내는 시각적 표시와 함께 제1 아이템의 표현을 디스플레이하는 것은, 제1 아이템의 표현이 제1 사용자 인터페이스에 디스플레이되는 동안 제1 사용자 인터페이스를 스크롤하는 제1 접촉에 의한 제1 입력(예컨대, 제1 사용자 인터페이스 상에서 제1 방향으로의 스와이프 입력, 또는 스크롤 바의 단부 상의 스크롤 버튼에 대한 계속 터치하기 입력)을 검출하는 것에 응답하여, 디바이스가 제1 사용자 인터페이스의 스크롤에 따라 디스플레이 상에서 제1 아이템의 표현을 병진시키는 것(예컨대, 제1 사용자 인터페이스에 대해 이루어진 스크롤 양에 기초한 거리만큼 그리고 스크롤의 반대 방향으로 제1 아이템의 앵커 위치를 이동시키는 것(예컨대, 제1 사용자 인터페이스가 터치 감응형 표면을 가로질러 이동하는 접촉에 의해 상향으로 드래그될 때, 제1 아이템의 표현은 제1 사용자 인터페이스와 함께 디스플레이 상에서 상향으로 이동함)) 및 제1 사용자 인터페이스가 스크롤되는 방향에 따라 디바이스가 제1 사용자 인터페이스(또는 디스플레이)에 의해 한정되는 평면에 대해 제1 아이템의 표현을 회전시키는 것을 포함한다(1012). 예를 들어, 도 7c 및 도 7d에 예시된 바와 같이, 가상 램프(5084)의 표현이 인터넷 브라우저 사용자 인터페이스(5060)에 디스플레이되는 동안 인터넷 브라우저 사용자 인터페이스(5060)를 스크롤하는 접촉(7002)에 의한 입력을 검출하는 것에 응답하여, 가상 램프(5084)는 인터넷 브라우저 사용자 인터페이스(5060)의 스크롤에 따라 병진되고, 가상 램프(5084)는 접촉(7002)의 이동 경로의 방향에 따라 디스플레이(112)에 대해 회전된다. 일부 실시예들에서, 제1 사용자 인터페이스가 상향으로 드래그된다는 결정에 따라, 제1 아이템의 표현은 제1 사용자 인터페이스와 함께 상향으로 이동하고, 제1 사용자 인터페이스 상에서 보여진 바와 같은 제1 아이템의 관찰 시점은 사용자가 상이한 시야각(예컨대, 더 낮은 각도)으로부터 제1 아이템을 보고 있는 것처럼 변한다. 일부 실시예들에서, 제2 사용자 인터페이스가 상향으로 드래그된다는 결정에 따라, 제2 아이템의 표현은 제2 사용자 인터페이스와 함께 상향으로 이동하고, 제2 사용자 인터페이스 상에서 보여진 바와 같은 제2 아이템의 관찰 시점은 사용자가 상이한 시야각(예컨대, 더 낮은 각도)으로부터 제2 아이템을 보고 있는 것처럼 변한다.In some embodiments, displaying the representation of the first item with a visual indication indicating that the first item corresponds to the first respective virtual three-dimensional object comprises: wherein the representation of the first item is displayed in the first user interface. detect a first input (eg, a swipe input in a first direction on the first user interface, or an input to keep touching for a scroll button on an end of the scroll bar) by a first contact that scrolls the first user interface while In response, the device translates the representation of the first item on the display according to the scrolling of the first user interface (eg, by a distance based on the amount of scrolling made relative to the first user interface and a first in the opposite direction of the scrolling) moving the anchor position of the item (eg, when the first user interface is dragged upward by a contact moving across the touch-sensitive surface, the representation of the first item is upwardly on the display with the first user interface) moving)) and rotating ( 1012 ) the representation of the first item relative to a plane defined by the device by the first user interface (or display) according to a direction in which the first user interface is scrolled. For example, as illustrated in FIGS. 7C and 7D , by contact 7002 scrolling Internet browser user interface 5060 while representation of virtual ramp 5084 is displayed in Internet browser user interface 5060 . In response to detecting the input, virtual ramp 5084 is translated according to the scrolling of Internet browser user interface 5060 , and virtual ramp 5084 is displayed on display 112 according to the direction of travel path of contact 7002 . rotated about In some embodiments, upon determining that the first user interface is dragged upward, the representation of the first item moves upward along with the first user interface, and the viewpoint of the first item as viewed on the first user interface. changes as if the user is viewing the first item from a different viewing angle (eg, a lower angle). In some embodiments, upon determining that the second user interface is dragged upward, the representation of the second item moves upward along with the second user interface, and the viewpoint of the second item as viewed on the second user interface. changes as if the user is viewing the second item from a different viewing angle (eg, a lower angle).

이동이 제1 디바이스 배향으로부터 제2 디바이스 배향으로의 변경에 대응하는 아이템의 이동을 디스플레이하는 것은 디바이스 배향의 변경을 나타내는 시각적 피드백을 사용자에게 제공한다. 개선된 시각적 피드백을 사용자에게 제공하는 것은 (예컨대, 사용자가 추가 입력을 제공할 필요 없이 가상 3차원 객체를 일정 배향들로부터 관찰하게 함으로써) 디바이스의 작동성을 향상시키고, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.Displaying movement of the item in which the movement corresponds to a change from the first device orientation to the second device orientation provides visual feedback to the user indicative of the change in device orientation. Providing the user with improved visual feedback improves the operability of the device (eg, by allowing the user to view a virtual three-dimensional object from certain orientations without the need to provide additional input), which additionally allows the user to use the device It reduces the device's power usage and improves battery life by enabling faster and more efficient use.

일부 실시예들에서, 제1 사용자 인터페이스(예컨대, 도 7b에 예시된 바와 같은 인터넷 브라우저 사용자 인터페이스(5060)) 내에 시각적 표시(예컨대, 시각적 객체 표시자(5080))와 함께 제1 아이템(예컨대, 램프 객체(5084))의 표현을 디스플레이하는 동안, 디바이스는 제3 아이템의 표현을 디스플레이하는데, 제3 아이템의 표현은 제3 아이템이 가상 3차원 객체에 대응하지 않는다는 것을 나타내기 위해 시각적 표시 없이 디스플레이된다(예컨대, 제3 아이템은 증강 현실 환경에서 렌더링될 수 있는 어떠한 3차원 객체에도 대응하지 않는다)(1014). 예를 들어, 도 7b에 예시된 바와 같이, 인터넷 브라우저 사용자 인터페이스(5060)에서, 웹 객체들(5074, 5070, 5076)은 웹 객체들(5074, 5070, 5076)이 가상 3차원 객체들에 대응하지 않기 때문에 시각적 객체 표시자들 없이 디스플레이된다.In some embodiments, a first item (eg, a first item (eg, a visual indicator 5080 )) in a first user interface (eg, an internet browser user interface 5060 as illustrated in FIG. 7B ) is in some embodiments. While displaying the representation of the lamp object 5084), the device displays a representation of a third item, the representation of the third item being displayed without a visual indication to indicate that the third item does not correspond to the virtual three-dimensional object. (eg, the third item does not correspond to any three-dimensional object that may be rendered in the augmented reality environment) 1014 . For example, as illustrated in FIG. 7B , in the Internet browser user interface 5060 , web objects 5074 , 5070 , 5076 indicate that web objects 5074 , 5070 , 5076 correspond to virtual three-dimensional objects. Since it does not, it is displayed without visual object indicators.

제1 사용자 인터페이스에, 제1 아이템이 가상 3차원 객체인 것을 나타내는 시각적 표시와 함께 제1 아이템을 그리고 시각적 표시 없이 디스플레이되는 제3 아이템을 디스플레이하는 것은, (예컨대, 사용자가 상호작용하고 있는 아이템이 가상 3차원 객체인지 아닌지에 따라 사용자가 적절한 입력들을 제공하도록 도움으로써) 사용자가 제1 사용자 인터페이스를 사용하여 동작들을 수행할 수 있는 효율을 증가시키고, 그에 의해, 디바이스의 작동성을 향상시키며, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.Displaying, in the first user interface, the first item with a visual indication indicating that the first item is a virtual three-dimensional object and the third item displayed without the visual indication (eg, the item with which the user is interacting is increasing the efficiency with which a user can perform operations using the first user interface (by helping the user provide appropriate inputs depending on whether it is a virtual three-dimensional object or not), thereby improving the operability of the device, which Additionally, it reduces the power usage of the device and improves battery life by enabling the user to use the device more quickly and efficiently.

일부 실시예들에서, 제2 사용자 인터페이스(예컨대, 도 7m에 예시된 바와 같은 메시징 사용자 인터페이스(5008)) 내에 시각적 표시(예컨대, 가상 객체 표시자(5022))와 함께 제2 아이템(예컨대, 가상 의자(5020))의 표현을 디스플레이하는 동안, 디바이스는 제4 아이템(예컨대, 이모지(7020))의 표현을 디스플레이하는데, 제4 아이템의 표현은 제4 아이템이 각각의 가상 3차원 객체에 대응하지 않는다는 것을 나타내기 위해 시각적 표시 없이 디스플레이된다(1016).In some embodiments, a second item (eg, virtual While displaying the representation of the chair 5020), the device displays a representation of a fourth item (eg, emoji 7020), wherein the representation of the fourth item corresponds to the respective virtual three-dimensional object. It is displayed 1016 without a visual indication to indicate that it does not.

제2 사용자 인터페이스에, 제2 아이템이 가상 3차원 객체인 것을 나타내는 시각적 표시와 함께 제2 아이템을 그리고 시각적 표시 없이 디스플레이되는 제4 아이템을 디스플레이하는 것은, (예컨대, 사용자가 상호작용하고 있는 아이템이 가상 3차원 객체인지 아닌지에 따라 사용자가 적절한 입력들을 제공하도록 도움으로써) 사용자가 제2 사용자 인터페이스를 사용하여 동작들을 수행할 수 있는 효율을 증가시키고, 그에 의해, 디바이스의 작동성을 향상시키며, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.Displaying, in the second user interface, the second item with a visual indication indicating that the second item is a virtual three-dimensional object and the fourth item displayed without the visual indication (eg, the item with which the user is interacting is increasing the efficiency with which a user can perform operations using the second user interface (by helping the user to provide appropriate inputs depending on whether or not it is a virtual three-dimensional object or not), thereby improving the operability of the device, which Additionally, it reduces the power usage of the device and improves battery life by enabling the user to use the device more quickly and efficiently.

일부 실시예들에서, 제1 사용자 인터페이스(예컨대, 도 7b에 예시된 바와 같은 인터넷 브라우저 사용자 인터페이스(5060))는 제1 애플리케이션(예컨대, 인터넷 브라우저 애플리케이션)에 대응하고, 제2 사용자 인터페이스(예컨대, 도 7m에 예시된 바와 같은 메시징 사용자 인터페이스(5008))는 제1 애플리케이션과 구별되는 제2 애플리케이션(예컨대, 메시징 애플리케이션)에 대응하고, 시각적 표시(예컨대, 가상 객체 표시자(5080))와 함께 디스플레이되는 제1 아이템(예컨대, 램프 객체(5084))의 표현 및 시각적 표시(예컨대, 가상 객체 표시자(5022))와 함께 디스플레이되는 제2 아이템(예컨대, 가상 의자(5020))의 표현은 미리정의된 세트의 시각적 특성들 및/또는 거동 특성들을 공유한다(예컨대, 동일한 표시자 아이콘을 사용하거나, 미리정의된 유형의 입력들에 의해 호출될 때 동일한 텍스처 또는 렌더링 스타일, 및/또는 거동을 갖는다)(1018). 예를 들어, 가상 객체 표시자(5080) 및 가상 객체 표시자(5022)에 대한 아이콘들은 동일한 심볼을 포함한다.In some embodiments, a first user interface (eg, internet browser user interface 5060 as illustrated in FIG. 7B ) corresponds to a first application (eg, internet browser application) and a second user interface (eg, internet browser application) Messaging user interface 5008 as illustrated in FIG. 7M ) corresponds to a second application (eg, a messaging application) that is distinct from the first application, and is displayed with a visual indication (eg, virtual object indicator 5080 ). A representation of a first item (eg, lamp object 5084 ) to be displayed and a representation of a second item (eg, virtual chair 5020 ) displayed with a visual indication (eg, virtual object indicator 5022 ) are predefined. share a set of visual and/or behavioral characteristics (eg, use the same indicator icon, or have the same texture or rendering style, and/or behavior when invoked by predefined types of inputs) (1018). For example, icons for virtual object indicator 5080 and virtual object indicator 5022 include the same symbol.

제1 애플리케이션의 제1 사용자 인터페이스 내에 시각적 표시와 함께 제1 아이템을 디스플레이하고 제2 애플리케이션의 제2 사용자 인터페이스 내에 시각적 표시와 함께 제2 아이템을 디스플레이하여 제1 아이템 및 제2 아이템의 시각적 표시들이 미리정의된 세트의 시각적 특성들 및/또는 거동 특성들을 공유하게 하는 것은 (예컨대, 사용자가 상호작용하고 있는 아이템이 가상 3차원 객체인지 아닌지에 따라 사용자가 적절한 입력들을 제공하도록 도움으로써) 사용자가 제2 사용자 인터페이스를 사용하여 동작들을 수행할 수 있는 효율을 증가시키고, 그에 의해, 디바이스의 작동성을 향상시키며, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.Displaying the first item with the visual indication in the first user interface of the first application and displaying the second item with the visual indication in the second user interface of the second application so that the visual indications of the first item and the second item are previewed Allowing the user to share a defined set of visual properties and/or behavioral properties (eg, by helping the user provide appropriate inputs depending on whether the item the user is interacting with is a virtual three-dimensional object or not) may Increases the efficiency with which you can perform operations using the user interface, thereby improving the operability of the device, which additionally reduces the power usage of the device by enabling the user to use the device more quickly and efficiently. Reduce and improve battery life.

일부 실시예들에서, 제1 사용자 인터페이스는 인터넷 브라우저 애플리케이션 사용자 인터페이스(예컨대, 도 7b에 예시된 바와 같은 인터넷 브라우저 사용자 인터페이스(5060))이고, 제1 아이템은 웹 페이지의 요소이다(예컨대, 제1 아이템은 임베디드 이미지, 하이퍼링크, 애플릿, 이모지, 임베디드 미디어 객체 등으로서 웹페이지 내에 표현된다)(1020). 예를 들어, 제1 아이템은 웹 객체(5068)의 가상 램프 객체(5084)이다.In some embodiments, the first user interface is an internet browser application user interface (eg, internet browser user interface 5060 as illustrated in FIG. 7B ), and the first item is an element of a web page (eg, a first Items are represented within the webpage as embedded images, hyperlinks, applets, emojis, embedded media objects, etc. (1020). For example, the first item is the virtual lamp object 5084 of the web object 5068 .

웹 페이지 요소가 가상 3차원 객체인 것을 나타내는 시각적 표시를 갖는 웹 페이지 요소를 디스플레이하는 것은 (예컨대, 사용자가 상호작용하고 있는 웹 페이지 요소가 가상 3차원 객체인지 아닌지에 따라 사용자가 적절한 입력들을 제공하도록 도움으로써) 사용자가 인터넷 브라우저 애플리케이션을 사용하여 동작들을 수행할 수 있는 효율을 증가시키고, 그에 의해, 디바이스의 작동성을 향상시키며, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.Displaying a web page element having a visual indication that the web page element is a virtual three-dimensional object (eg, allowing the user to provide appropriate inputs depending on whether the web page element the user is interacting with is a virtual three-dimensional object or not) by helping) increase the efficiency with which a user can perform operations using an internet browser application, thereby improving the operability of the device, which additionally enables the user to use the device more quickly and efficiently This reduces the device's power usage and improves battery life.

일부 실시예들에서, 제1 사용자 인터페이스는 이메일 애플리케이션 사용자 인터페이스(예컨대, 도 7p에 예시된 바와 같은 이메일 사용자 인터페이스(7052))이고, 제1 아이템은 이메일의 첨부물(예컨대, 첨부물(7060))이다(1022).In some embodiments, the first user interface is an email application user interface (eg, email user interface 7052 as illustrated in FIG. 7P ) and the first item is an attachment to an email (eg, attachment 7060 ) (1022).

이메일 첨부물이 가상 3차원 객체인 것을 나타내는 시각적 표시를 갖는 이메일 첨부물을 디스플레이하는 것은 (예컨대, 사용자가 상호작용하고 있는 이메일 첨부물이 가상 3차원 객체인지 아닌지에 따라 사용자가 적절한 입력들을 제공하도록 도움으로써) 사용자가 이메일 애플리케이션 사용자 인터페이스를 사용하여 동작들을 수행할 수 있는 효율을 증가시키고, 그에 의해, 디바이스의 작동성을 향상시키며, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.Displaying an email attachment with a visual indication that the email attachment is a virtual three-dimensional object (eg, by helping the user provide appropriate inputs depending on whether the email attachment the user is interacting with is a virtual three-dimensional object or not) Increases the efficiency with which a user can perform operations using the email application user interface, thereby improving the operability of the device, which additionally enables the user to use the device more quickly and efficiently by reduce power consumption and improve battery life.

일부 실시예들에서, 제1 사용자 인터페이스는 메시징 애플리케이션 사용자 인터페이스(예컨대, 도 7m에 예시된 바와 같은 메시징 사용자 인터페이스(5008))이고, 제1 아이템은 메시지 내의 첨부물 또는 요소(예컨대, 가상 의자(5020))이다(예컨대, 제1 아이템은 이미지, 하이퍼링크, 미니 프로그램, 이모지, 미디어 객체 등이다)(1024).In some embodiments, the first user interface is a messaging application user interface (eg, messaging user interface 5008 as illustrated in FIG. 7M ), and the first item is an attachment or element within the message (eg, virtual chair 5020 ) )) (eg, the first item is an image, a hyperlink, a mini program, an emoji, a media object, etc.) 1024 .

메시지 첨부물 또는 요소가 가상 3차원 객체인 것을 나타내는 시각적 표시를 갖는 메시지 첨부물 또는 요소를 디스플레이하는 것은 (예컨대, 사용자가 상호작용하고 있는 메시지 첨부물 또는 요소가 가상 3차원 객체인지 아닌지에 따라 사용자가 적절한 입력들을 제공하도록 도움으로써) 사용자가 메시징 사용자 인터페이스를 사용하여 동작들을 수행할 수 있는 효율을 증가시키고, 그에 의해, 디바이스의 작동성을 향상시키며, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.Displaying a message attachment or element with a visual indication that the message attachment or element is a virtual three-dimensional object (eg, a user input appropriate depending on whether the message attachment or element with which the user is interacting is a virtual three-dimensional object or not) increase the efficiency with which a user can perform operations using the messaging user interface (by helping to provide By enabling this, it reduces the device's power usage and improves battery life.

일부 실시예들에서, 제1 사용자 인터페이스는 파일 관리 애플리케이션 사용자 인터페이스(예컨대, 도 7o에 예시된 바와 같은 파일 관리 사용자 인터페이스(7036))이고, 제1 아이템은 파일 미리보기 객체(예컨대, 파일 정보 영역(7046) 내의 파일 미리보기 객체(7045))이다(1026).In some embodiments, the first user interface is a file management application user interface (eg, file management user interface 7036 as illustrated in FIG. 7O ), and the first item is a file preview object (eg, file information area) file preview object (7045) in 7046) (1026).

파일 미리보기 객체가 가상 3차원 객체인 것을 나타내는 시각적 표시를 갖는 파일 미리보기 객체를 디스플레이하는 것은 (예컨대, 사용자가 상호작용하고 있는 파일 미리보기 객체가 가상 3차원 객체인지 아닌지에 따라 사용자가 적절한 입력들을 제공하도록 도움으로써) 사용자가 파일 관리 애플리케이션 사용자 인터페이스를 사용하여 동작들을 수행할 수 있는 효율을 증가시키고, 그에 의해, 디바이스의 작동성을 향상시키며, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.Displaying the file preview object with a visual indication that the file preview object is a virtual three-dimensional object (eg, a user input appropriate increase the efficiency with which a user can perform operations using the file management application user interface (by helping to provide By enabling them to use, it reduces the device's power usage and improves battery life.

일부 실시예들에서, 제1 사용자 인터페이스는 지도 애플리케이션 사용자 인터페이스(예컨대, 지도 애플리케이션 사용자 인터페이스(7024))이고, 제1 아이템은 지도 내의 관심 지점(예컨대, 관심 지점 객체(7028))의 표현(예컨대, 지도 상의 일정 위치에 대응하는 특징부의 3차원 표현(예컨대, 지도 상의 일정 위치에 대응하는 지형 및/또는 구조물의 3차원 표현을 포함함) 또는 작동되는 경우에 지도의 3차원 표현의 디스플레이를 야기하는 제어부의 3차원 표현)이다(1028).In some embodiments, the first user interface is a map application user interface (eg, maps application user interface 7024 ), and the first item is a representation (eg, a point of interest object 7028 ) within the map. , causing display of a three-dimensional representation of a feature corresponding to a location on the map (eg, including a three-dimensional representation of terrain and/or structures corresponding to a location on the map) or, when actuated, a three-dimensional representation of the map. a three-dimensional representation of the control unit) (1028).

지도 내의 관심 지점의 표현이 가상 3차원 객체인 것을 나타내는 시각적 표시를 갖는 관심 지점의 표현을 디스플레이하는 것은 (예컨대, 사용자가 상호작용하고 있는 관심 지점의 표현이 가상 3차원 객체인지 아닌지에 따라 사용자가 적절한 입력들을 제공하도록 도움으로써) 사용자가 지도 애플리케이션 사용자 인터페이스를 사용하여 동작들을 수행할 수 있는 효율을 증가시키고, 그에 의해, 디바이스의 작동성을 향상시키며, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.Displaying the representation of the point of interest with a visual indication indicating that the representation of the point of interest in the map is a virtual three-dimensional object (eg, depending on whether the representation of the point of interest with which the user is interacting is a virtual three-dimensional object or not increases the efficiency with which a user can perform operations using the map application user interface (by helping to provide appropriate inputs), thereby improving the operability of the device, which in addition allows the user to use the device more quickly and efficiently It reduces the device's power usage and improves battery life by enabling it to be used as

일부 실시예들에서, 제1 아이템이 각각의 가상 3차원 객체에 대응한다는 시각적 표시는 각각의 3차원 객체의 표현에 대한 입력을 요구하지 않으면서 발생하는 제1 아이템의 애니메이션(예컨대, 시간 경과에 따라 제1 아이템에 적용되는 연속적인 이동 또는 변하는 시각적 효과(예컨대, 반짝임(sparkling), 아른거림(shimmering) 등))을 포함한다(1030).In some embodiments, the visual indication that the first item corresponds to each virtual three-dimensional object is an animation of the first item (eg, over time) that occurs without requiring input for a representation of each three-dimensional object. Continuously moving or changing visual effects (eg, sparkling, shimmering, etc.) applied to the first item according to 1030 .

각각의 3차원 객체의 표현에 대한 입력 없이 발생하는 제1 아이템의 애니메이션을 디스플레이하는 것은 (예컨대, 사용자가 제1 아이템의 3차원 양태들을 보는 데 필요한 입력들의 수를 감소시킴으로써) 디바이스의 작동성을 향상시키고, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.Displaying an animation of a first item that occurs without input for a representation of each three-dimensional object may improve the operability of the device (eg, by reducing the number of inputs required for a user to view three-dimensional aspects of the first item). This further reduces the power usage of the device and improves battery life by enabling the user to use the device more quickly and efficiently.

일부 실시예들에서, 제2 아이템이 각각의 가상 3차원 객체에 대응한다는 것을 나타내는 시각적 표시(예컨대, 가상 객체 표시자(5022))와 함께 제2 아이템(예컨대, 가상 의자(5020))의 표현을 디스플레이하는 동안, 디바이스는 제2 아이템의 표현에 대응하는 터치 감응형 표면 상의 위치에서 제2 접촉에 의한 제2 입력(예컨대, 도 5c 내지 도 5f와 관련하여 기술된 바와 같은 입력)을 검출하고, 제2 접촉에 의한 제2 입력을 검출하는 것에 응답하여 그리고 제2 접촉에 의한 제2 입력이 제1 (예컨대, AR 트리거) 기준들을 충족한다는 결정에 따라, 디바이스는, 제2 사용자 인터페이스(예컨대, 메시징 사용자 인터페이스(5008))의 적어도 일부분의 디스플레이를 하나 이상의 카메라들의 시야(5036)의 표현으로 대체하는 것(예컨대, 도 5f 내지 도 5i와 관련하여 기술됨) 및 제2 사용자 인터페이스를 디스플레이하는 것으로부터 제3 사용자 인터페이스 영역을 디스플레이하는 것으로 스위칭하는 동안 제2 가상 3차원 객체를 연속적으로 디스플레이하는 것을 포함하여, 제3 사용자 인터페이스 영역을 디스플레이 상에 디스플레이한다(1032). (예컨대, 방법(800)을 참조하여 본 명세서에서 더 상세히 설명되는 바와 같음). 일부 실시예들에서, 디바이스는 (예컨대, 동작(834)을 참조하여 본 명세서에서 더 상세히 설명되는 바와 같이) 하나 이상의 카메라들의 시야의 표현과 함께 제2 사용자 인터페이스의 일부분을 디스플레이하는 것으로부터 스위칭하는 동안 가상 객체의 표현이 연속적으로 디스플레이됨에 따라 애니메이션을 디스플레이한다.In some embodiments, a representation of a second item (eg, virtual chair 5020) with a visual indication (eg, virtual object indicator 5022) indicating that the second item corresponds to a respective virtual three-dimensional object. While displaying , the device detects a second input by the second contact (eg, an input as described in connection with FIGS. 5C-5F ) at a location on the touch-sensitive surface corresponding to the representation of the second item, and , in response to detecting the second input by the second contact and in response to determining that the second input by the second contact meets the first (eg, AR trigger) criteria, the device configures a second user interface (eg, , replacing the display of at least a portion of the messaging user interface 5008 with a representation of the field of view 5036 of the one or more cameras (eg, as described in connection with FIGS. 5F-5I ) and displaying a second user interface; Display ( 1032 ) the third user interface region on the display, including continuously displaying the second virtual three-dimensional object while switching from displaying the third user interface region to displaying the third user interface region. (eg, as described in greater detail herein with reference to method 800 ). In some embodiments, the device switches from displaying a portion of the second user interface with a representation of the field of view of one or more cameras (eg, as described in greater detail herein with reference to operation 834 ). while displaying the animation as the representation of the virtual object is continuously displayed.

제3 사용자 인터페이스 영역을 디스플레이할지 여부를 결정하기 위해 제1 기준들을 사용하면, 제2 입력에 응답하여 다수의 상이한 유형들의 동작들의 수행을 가능하게 한다. 입력에 응답하여 다수의 상이한 유형들의 동작들의 수행을 가능하게 하는 것은, 사용자가 이들 동작들을 수행할 수 있는 효율을 증가시키며, 이에 의해 디바이스의 작동성을 향상시키고, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.Using the first criteria to determine whether to display the third user interface region enables performance of a number of different types of actions in response to the second input. Enabling the performance of a number of different types of operations in response to input increases the efficiency with which a user can perform these operations, thereby improving the operability of the device, which in addition allows the user to perform more By enabling quick and efficient use, it reduces the device's power usage and improves battery life.

일부 실시예들에서, (예컨대, 방법(900)을 참조하여 본 명세서에서 더 상세히 기술되는 바와 같이) 제2 아이템이 각각의 가상 3차원 객체에 대응한다는 것을 나타내는 시각적 표시(예컨대, 가상 객체 표시자(5022))와 함께 제2 아이템(예컨대, 가상 의자(5020))을 디스플레이하는 동안, 디바이스는 제2 아이템의 표현에 대응하는 터치 감응형 표면 상의 위치에서 제3 접촉에 의한 제3 입력(예컨대, 도 6e 내지 도 6i와 관련하여 기술된 바와 같은 입력)을 검출하고, 제3 접촉에 의한 제3 입력을 검출하는 것에 응답하여 그리고 제3 접촉에 의한 제3 입력이 제1 (예컨대, 스테이징 트리거) 기준들을 충족한다는 결정에 따라, 디바이스는 제2 사용자 인터페이스와 상이한 제4 사용자 인터페이스(예컨대, 방법(900)을 참조하여 더 상세히 기술되는 바와 같은 스테이징 사용자 인터페이스(6010)) 내에 제2 가상 3차원 객체를 디스플레이한다(1034). 일부 실시예들에서, 제4 사용자 인터페이스(예컨대, 도 6i에 예시된 바와 같은 스테이징 사용자 인터페이스(6010)) 내에 제2 가상 3차원 객체를 디스플레이하는 동안, 디바이스는 제4 입력을 검출하고, 제4 입력을 검출하는 것에 응답하여, 제4 입력이 제4 사용자 인터페이스에서 제2 가상 3차원 객체를 조작하라는 요청에 대응한다는 결정에 따라, 디바이스는 (예컨대, 도 6j 내지 도 6m과 관련하여 기술된 바와 같이, 그리고/또는 도 6n 내지 도 6p와 관련하여 기술된 바와 같이) 제4 입력에 기초하여 제4 사용자 인터페이스 내의 제2 가상 3차원 객체의 디스플레이 속성을 변경하고, 제4 입력이 증강 현실 환경에 제2 가상 객체를 디스플레이하라는 요청(예컨대, 제2 사용자 인터페이스 영역 내의 가상 객체의 표현에 대응하는 터치 감응형 표면 상의 위치에서의 또는 그로부터의 탭 입력, 누르기 입력, 또는 계속 터치하기 또는 누르기 입력에 이은 드래그 입력)에 대응한다는 결정에 따라, 디바이스는 (예컨대, 도 6q 내지 도 6u와 관련하여 기술된 바와 같이) 하나 이상의 카메라들의 시야의 표현과 함께 제2 가상 3차원 객체를 디스플레이한다.In some embodiments, a visual indication (eg, a virtual object indicator) indicating that the second item corresponds to a respective virtual three-dimensional object (eg, as described in greater detail herein with reference to method 900 ) While displaying the second item (eg, virtual chair 5020 ) with 5022 ), the device causes a third input (eg, by third contact) on the touch-sensitive surface corresponding to the representation of the second item (eg, virtual chair 5020 ). , an input as described in connection with FIGS. 6E-6I ), and in response to detecting a third input by the third contact, and in response to detecting a third input by the third contact, the third input by the third contact causes a first (eg, a staging trigger) ) in accordance with the determination that the criteria are met, the device is placed in a second virtual three-dimensional The object is displayed (1034). In some embodiments, while displaying the second virtual three-dimensional object within a fourth user interface (eg, staging user interface 6010 as illustrated in FIG. 6I ), the device detects a fourth input, In response to detecting the input, upon determining that the fourth input corresponds to a request to manipulate the second virtual three-dimensional object in the fourth user interface, the device (eg, as described with respect to FIGS. 6J-6M ) (and/or as described in connection with FIGS. 6N-6P) based on the fourth input, change a display property of the second virtual three-dimensional object in the fourth user interface, wherein the fourth input is applied to the augmented reality environment. A request to display a second virtual object (eg, following a tap input, press input, or continuous touch or press input at or from a location on the touch-sensitive surface corresponding to a representation of the virtual object in the second user interface area) drag input), the device displays a second virtual three-dimensional object along with a representation of the field of view of the one or more cameras (eg, as described with respect to FIGS. 6Q-6U ).

제4 사용자 인터페이스(예컨대, 스테이징 사용자 인터페이스(6010)) 내에 제2 3차원 객체를 디스플레이하는 동안, 제4 입력에 응답하여, 디바이스는 제4 입력에 기초하여 제2 3차원 객체의 디스플레이 속성을 변경하거나 또는 디바이스의 하나 이상의 카메라들의 시야의 표현과 함께 제2 3차원 객체를 디스플레이한다. (예컨대, 제2 3차원 객체의 디스플레이 특성을 변경하거나 디바이스의 하나 이상의 카메라들의 시야의 표현과 함께 제2 3차원 객체를 디스플레이함으로써) 입력에 응답하여 다수의 상이한 유형들의 동작들의 수행을 가능하게 하는 것은, 사용자가 이들 동작들을 수행할 수 있는 효율을 증가시키며, 이에 의해 디바이스의 작동성을 향상시키고, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.While displaying the second three-dimensional object within a fourth user interface (eg, staging user interface 6010), in response to the fourth input, the device changes a display property of the second three-dimensional object based on the fourth input or display a second three-dimensional object along with a representation of the field of view of one or more cameras of the device. enabling performance of a number of different types of operations in response to an input (eg, by changing a display characteristic of the second three-dimensional object or displaying the second three-dimensional object along with a representation of the field of view of one or more cameras of the device) This increases the efficiency with which a user can perform these operations, thereby improving the operability of the device, which additionally reduces the power usage of the device by enabling the user to use the device more quickly and efficiently. and improve battery life.

도 10a 내지 도 10d에서의 동작들이 기술된 특정 순서는 단지 일례이며 기술된 순서가 동작들이 수행될 수 있는 유일한 순서임을 나타내는 것으로 의도되지는 않는다는 것이 이해되어야 한다. 당업자는 본 명세서에 기술된 동작들을 재순서화하는 다양한 방식들을 인식할 것이다. 추가적으로, 본 명세서에 기술된 다른 방법들(예를 들어, 방법들(800, 900, 16000, 17000, 18000, 19000, 20000))과 관련하여 본 명세서에 기술된 다른 프로세스들의 상세사항들이 도 10a 내지 도 10d와 관련하여 전술된 방법(1000)과 유사한 방식으로 또한 적용가능하다는 것이 주목되어야 한다. 예를 들어, 방법(1000)과 관련하여 전술된 접촉들, 입력들, 가상 객체들, 사용자 인터페이스들, 사용자 인터페이스 영역들, 시야들, 이동들, 및/또는 애니메이션들은 선택적으로, 본 명세서에 기술된 다른 방법들(예컨대, 방법들(800, 900, 16000, 17000, 18000, 19000, 20000))과 관련하여 본 명세서에 기술된 접촉들, 입력들, 가상 객체들, 사용자 인터페이스들, 사용자 인터페이스 영역들, 시야들, 이동들, 및/또는 애니메이션들의 특성들 중 하나 이상을 갖는다. 간결함을 위해, 이러한 상세사항들은 여기서 반복되지 않는다.It should be understood that the specific order in which the operations in FIGS. 10A-10D are described is merely an example and is not intended to indicate that the described order is the only order in which the operations may be performed. Those skilled in the art will recognize various ways of reordering the operations described herein. Additionally, details of other processes described herein in connection with other methods described herein (eg, methods 800 , 900 , 16000 , 17000 , 18000 , 19000 , 20000 ) are shown in FIGS. It should be noted that in a manner similar to method 1000 described above with respect to FIG. 10D is also applicable. For example, contacts, inputs, virtual objects, user interfaces, user interface regions, fields of view, movements, and/or animations described above with respect to method 1000 are optionally described herein. contacts, inputs, virtual objects, user interfaces, user interface area described herein in connection with other methods (eg, methods 800, 900, 16000, 17000, 18000, 19000, 20000)) have one or more of the characteristics of fields, fields of view, movements, and/or animations. For the sake of brevity, these details are not repeated here.

도 11a 내지 도 11v는 객체 배치 기준들이 충족되는지 여부에 따라 상이한 시각적 속성들을 갖는 가상 객체를 디스플레이하기 위한 예시적인 사용자 인터페이스들을 예시한다. 이들 도면의 사용자 인터페이스들은 도 8a 내지 도 8e, 도 9a 내지 도 9d, 도 10a 내지 도 10d, 도 16a 내지 도 16g, 도 17a 내지 도 17d, 도 18a 내지 도 18i, 도 19a 내지 도 19h, 및 도 20a 내지 도 20f의 프로세스들을 포함하여 하기에 기술되는 프로세스들을 예시하는 데 사용된다. 용이한 설명을 위해, 실시예들의 일부는 터치 감응형 디스플레이 시스템(112)을 갖는 디바이스 상에서 수행되는 동작들을 참조하여 논의될 것이다. 이러한 실시예들에서, 포커스 선택자는, 선택적으로: 개개의 손가락 또는 스타일러스 접촉이거나, 손가락 또는 스타일러스 접촉에 대응하는 대표 지점(예컨대, 개개의 접촉의 중심, 또는 개개의 접촉과 연관된 지점)이거나, 또는 터치 감응형 디스플레이 시스템(112) 상에서 검출된 둘 이상의 접촉들의 중심이다. 그러나, 유사한 동작들이, 선택적으로, 도면에 도시된 사용자 인터페이스들을 디스플레이(450) 상에 포커스 선택자와 함께 디스플레이하면서, 터치 감응형 표면(451) 상에서의 접촉들을 검출하는 것에 응답하여 디스플레이(450) 및 별개의 터치 감응형 표면(451)을 갖는 디바이스 상에서 수행된다.11A-11V illustrate example user interfaces for displaying a virtual object having different visual properties depending on whether object placement criteria are met. The user interfaces of these figures are shown in FIGS. 8A-8E, 9A-9D, 10A-10D, 16A-16G, 17A-17D, 18A-18I, 19A-19H, and FIGS. 20A-20F are used to illustrate the processes described below. For ease of description, some of the embodiments will be discussed with reference to operations performed on a device having a touch-sensitive display system 112 . In such embodiments, the focus selector is optionally: an individual finger or stylus contact, a representative point corresponding to the finger or stylus contact (eg, a center of an individual contact, or a point associated with the individual contact), or It is the center of two or more contacts detected on the touch-sensitive display system 112 . However, similar operations are performed with the display 450 and the display 450 in response to detecting contacts on the touch-sensitive surface 451, optionally displaying the user interfaces shown in the figure with a focus selector on the display 450. It is performed on a device having a separate touch-sensitive surface 451 .

도 11a 내지 도 11e는 가상 객체를 스테이징 뷰에 디스플레이하기 위한 입력을 예시한다. 예를 들어, 입력은 3차원 객체의 2차원 표현(예컨대, 섬네일)이 사용자 인터페이스(예컨대, 이메일 사용자 인터페이스(7052), 파일 관리 사용자 인터페이스(7036), 지도 사용자 인터페이스(7022), 메시징 사용자 인터페이스(5008), 인터넷 브라우저 사용자 인터페이스(5060), 또는 제3자 애플리케이션 사용자 인터페이스) 내에 디스플레이되는 동안 검출된다.11A-11E illustrate input for displaying a virtual object in a staging view. For example, an input may be a two-dimensional representation (e.g., a thumbnail) of a three-dimensional object in a user interface (e.g., email user interface 7052, file management user interface 7036, map user interface 7022, messaging user interface (e.g., email user interface 7052). 5008), an internet browser user interface 5060, or a third party application user interface).

도 11a에서, 인터넷 브라우저 사용자 인터페이스(5060)는 3차원 가상 객체(11002)(의자)의 2차원 표현을 포함한다. 접촉(11004)에 의한 입력(예컨대, 탭 입력)이 가상 객체(11002)에 대응하는 위치에서 검출된다. 탭 입력에 응답하여, 인터넷 브라우저 사용자 인터페이스(5060)의 디스플레이는 스테이징 사용자 인터페이스(6010)의 디스플레이로 대체된다.In FIG. 11A , Internet browser user interface 5060 includes a two-dimensional representation of a three-dimensional virtual object 11002 (a chair). An input by the contact 11004 (eg, a tap input) is detected at a location corresponding to the virtual object 11002 . In response to the tap input, the display of the Internet browser user interface 5060 is replaced with the display of the staging user interface 6010 .

도 11b 내지 도 11e는 인터넷 브라우저 사용자 인터페이스(5060)가 스테이징 사용자 인터페이스(6010)의 디스플레이로 대체됨에 따라 발생하는 전이를 예시한다. 일부 실시예들에서, 전이 동안, 가상 객체(10002)는 뷰로 점진적으로 페이드 인되고/되거나 스테이징 사용자 인터페이스(6010)의 제어부들(예컨대, 뒤로 가기 제어부(6016), 토글 제어부(6018), 및/또는 공유 제어부(6020))은 뷰로 점진적으로 페이드 인된다. 예를 들어, (예컨대, 가상 객체(11002)의 3차원 표현이 디스플레이 상에 렌더링되는 데 필요한 기간 동안 제어부들의 디스플레이를 지연시키기 위해) 가상 객체(11002)가 뷰로 페이드 인된 후에 스테이징 사용자 인터페이스(6010)의 제어부들이 뷰로 페이드 인된다. 일부 실시예들에서, 가상 객체(11002)의 "페이드 인"은 가상 객체(11002)의 저해상도, 2차원, 및/또는 홀로그래픽 형태를 디스플레이하는 것에 이어서 가상 객체(11002)의 최종 3차원 표현을 디스플레이하는 것을 포함한다. 도 11b 내지 도 11d는 가상 객체(11002)의 점진적인 페이드 인을 예시한다. 도 11d에는, 가상 객체(11002)의 그림자(11006)가 디스플레이되어 있다. 도 11d 및 도 11e는 제어부들(6016, 6018, 6020)의 점진적인 페이드 인을 예시한다.11B-11E illustrate the transition that occurs as the Internet browser user interface 5060 is replaced with the display of the staging user interface 6010 . In some embodiments, during transition, virtual object 10002 gradually fades into view and/or controls controls of staging user interface 6010 (eg, back control 6016 , toggle control 6018 , and/or Alternatively, the sharing control unit 6020) gradually fades in to the view. For example, the staging user interface 6010 after the virtual object 11002 fades into view (eg, to delay the display of the controls for a period necessary for the three-dimensional representation of the virtual object 11002 to be rendered on the display). ) is faded in to the view. In some embodiments, “fade in” of virtual object 11002 displays a low-resolution, two-dimensional, and/or holographic form of virtual object 11002 followed by a final three-dimensional representation of virtual object 11002. including display. 11B-11D illustrate the gradual fade-in of the virtual object 11002. In FIG. 11D , a shadow 11006 of the virtual object 11002 is displayed. 11D and 11E illustrate the gradual fade in of the controls 6016 , 6018 , 6020 .

도 11f 및 도 11g는 가상 객체(11002)의 3차원 표현이 디바이스(100)의 하나 이상의 카메라들의 시야(6036)를 포함하는 사용자 인터페이스에 디스플레이되게 하는 입력을 예시한다. 도 11f에서, 접촉(11008)에 의한 입력이 토글 제어부(6018)에 대응하는 위치에서 검출된다. 입력에 응답하여, 스테이징 사용자 인터페이스(6010)의 디스플레이는, 도 11g에 도시된 바와 같이, 카메라(들)의 시야(6036)를 포함하는 사용자 인터페이스의 디스플레이로 대체된다.11F and 11G illustrate input that causes a three-dimensional representation of virtual object 11002 to be displayed in a user interface including field of view 6036 of one or more cameras of device 100 . In FIG. 11F , input by contact 11008 is detected at a position corresponding to toggle control 6018 . In response to the input, the display of the staging user interface 6010 is replaced with a display of the user interface including the field of view 6036 of the camera(s), as shown in FIG. 11G .

도 11g 및 도 11h에 예시된 바와 같이, 카메라(들)의 시야(6036)가 초기에 디스플레이되는 경우, 가상 객체의 반투명 표현이 (예컨대, 가상 객체에 대응하는 평면이 카메라(들)의 시야(6036) 내에서 검출되지 않았을 때) 디스플레이될 수 있다.11G and 11H , when the field of view 6036 of the camera(s) is initially displayed, a translucent representation of the virtual object (eg, the plane corresponding to the virtual object is the field of view of the camera(s) ( 6036) can be displayed.

도 11g 및 도 11h는 카메라(들)의 시야(6036)를 포함하는 사용자 인터페이스에 디스플레이되는 가상 객체(11002)의 반투명 표현을 예시한다. 가상 객체(11002)의 반투명 표현은 디스플레이(112)에 대해 고정된 위치에 디스플레이된다. 예를 들어, 도 11g로부터 도 11h로, 디바이스(100)가 (예컨대, 카메라(들)의 시야(6036) 내의 테이블(5004)의 변경된 위치에 의해 나타낸 바와 같이) 물리적 환경(5002)에 대해 이동됨에 따라, 가상 객체(11002)는 디스플레이(112)에 대해 고정된 위치에 유지된다.11G and 11H illustrate a translucent representation of a virtual object 11002 displayed in a user interface that includes a field of view 6036 of the camera(s). The translucent representation of the virtual object 11002 is displayed in a fixed position relative to the display 112 . For example, from FIG. 11G to 11H , device 100 moves relative to physical environment 5002 (eg, as indicated by the altered position of table 5004 within field of view 6036 of the camera(s)). As such, the virtual object 11002 remains in a fixed position relative to the display 112 .

일부 실시예들에서, 가상 객체에 대응하는 평면이 카메라(들)의 시야(6036) 내에서 검출되었다는 결정에 따라, 가상 객체는 검출된 평면 상에 배치된다.In some embodiments, upon determining that a plane corresponding to the virtual object has been detected within the field of view 6036 of the camera(s), the virtual object is placed on the detected plane.

도 11i에서, 가상 객체(11002)에 대응하는 평면이 카메라(들)의 시야(6036) 내에서 검출되었고, 가상 객체(11002)는 검출된 평면 상에 배치된다. 디바이스는 (예컨대, 적어도 하나의 평면(예컨대, 바닥 표면(5038))이 카메라(들)의 시야(6036) 내에서 검출되었다는 것을 나타내기 위해) 11010으로 예시된 바와 같은 촉각적 출력을 생성하였다. 가상 객체(11002)가 카메라(들)의 시야(6036) 내에서 검출되는 평면에 대해 일정 위치에 배치되는 경우, 가상 객체(11002)는 하나 이상의 카메라들에 의해 캡처되는 물리적 환경(5002)에 대해 고정된 위치에 유지된다. 도 11i로부터 도 11j로, 디바이스(100)가 (예컨대, 카메라(들)의 디스플레이된 시야(6036) 내의 테이블(5004)의 변경된 위치에 의해 나타낸 바와 같이) 물리적 환경(5002)에 대해 이동됨에 따라, 가상 객체(11002)는 물리적 환경(5002)에 대해 고정된 위치에 유지된다.In FIG. 11I , a plane corresponding to the virtual object 11002 has been detected within the field of view 6036 of the camera(s), and the virtual object 11002 is disposed on the detected plane. The device generated a tactile output as illustrated by 11010 (eg, to indicate that at least one plane (eg, the floor surface 5038 ) was detected within the field of view 6036 of the camera(s)). When the virtual object 11002 is positioned relative to a plane detected within the field of view 6036 of the camera(s), the virtual object 11002 is positioned relative to the physical environment 5002 captured by the one or more cameras. maintained in a fixed position. 11I to 11J , as the device 100 is moved relative to the physical environment 5002 (eg, as indicated by the altered position of the table 5004 within the displayed field of view 6036 of the camera(s)) , the virtual object 11002 is maintained in a fixed position relative to the physical environment 5002 .

일부 실시예들에서, 카메라(들)의 시야(6036)가 디스플레이되는 동안, 제어부들(예컨대, 뒤로 가기 제어부(6016), 토글 제어부(6018), 및/또는 공유 제어부(6020))은 (예컨대, 입력이 수신되지 않은 일정 기간이 경과하였다는 결정에 따라) 디스플레이되는 것이 중지된다. 도 11j 내지 도 11l에서, 제어부들(6016, 6018, 6020)은 (예컨대, 도 11k에 도시된 바와 같이) 점진적으로 페이드 아웃되어, (예컨대, 도 11l에 도시된 바와 같이) 카메라(들)의 시야(6036)가 디스플레이되는 디스플레이(112)의 부분을 증가시킨다.In some embodiments, while field of view 6036 of the camera(s) is displayed, controls (eg, back control 6016 , toggle control 6018 , and/or sharing control 6020 ) , upon a determination that a period of time in which no input has been received) ceases to be displayed. 11J-11L , the controls 6016 , 6018 , 6020 gradually fade out (eg, as shown in FIG. 11K ), such that (eg, as shown in FIG. 11L ) of the camera(s) The field of view 6036 increases the portion of the display 112 that is displayed.

도 11m 내지 도 11s는 카메라(들)의 시야(6036)를 포함하는 사용자 인터페이스에 가상 객체(11002)가 디스플레이될 때 그를 조작하기 위한 입력을 예시한다.11M-11S illustrate inputs for manipulating virtual object 11002 as it is displayed in a user interface comprising field of view 6036 of the camera(s).

도 11m 및 도 11n에서, 가상 객체(11002)의 시뮬레이션된 물리적 크기를 변경하기 위한 접촉들(11012, 11014)에 의한 입력(예컨대, 디핀치 제스처)이 검출된다. 입력의 검출에 응답하여, 제어부들(6016, 6018, 6020)이 재디스플레이된다. 접촉(11012)이 화살표(11016)로 표시된 경로를 따라서 이동하고 접촉(11014)이 화살표(11018)로 표시된 경로를 따라서 이동함에 따라, 가상 객체(11002)의 크기는 증가한다.11M and 11N , input (eg, a de-pinch gesture) by contacts 11012 , 11014 to change the simulated physical size of virtual object 11002 is detected. In response to detection of the input, controls 6016 , 6018 , 6020 are redisplayed. As contact 11012 moves along the path indicated by arrow 11016 and contact 11014 moves along path indicated by arrow 11018 , the size of virtual object 11002 increases.

도 11n 내지 도 11p에서, 가상 객체(11002)의 시뮬레이션된 물리적 크기를 변경하기 위한 접촉들(11012, 1104)에 의한 입력(예컨대, 핀치 제스처)이 검출된다. 접촉(11012)이 화살표(11020)로 표시된 경로를 따라서 이동하고 접촉(11014)이 화살표(11022)로 표시된 경로를 따라서 이동함에 따라, 가상 객체(11002)의 크기는 (도 11n과 도 11o, 및 도 11o와 도 11p에 도시된 바와 같이) 감소한다. 도 11o에 예시된 바와 같이, 가상 객체(11002)의 크기가 물리적 환경(5002)에 대한 그의 원래 크기(예컨대, 도 11i에 도시된 바와 같이, 물리적 환경(5002) 내의 검출된 평면 상에 초기에 배치된 경우의 가상 객체(11002)의 크기)로 조정될 때, (11024로 예시된 바와 같은) 촉각적 출력이 (예컨대, 가상 객체(11002)가 그의 원래 크기로 복귀되었다는 것을 나타내는 피드백을 제공하기 위해) 발생한다. 도 11q에서, 접촉들(11012, 11014)은 터치 스크린 디스플레이(112)로부터 리프트되었다.11N-11P , input (eg, a pinch gesture) by contacts 11012 , 1104 to change the simulated physical size of virtual object 11002 is detected. As contact 11012 moves along the path indicated by arrow 11020 and contact 11014 moves along path indicated by arrow 11022 , the size of virtual object 11002 is ( FIGS. 11N and 11O , and 11o and 11p) decrease. As illustrated in FIG. 11O , the size of virtual object 11002 is initially on its original size relative to physical environment 5002 (eg, on a detected plane within physical environment 5002 , as shown in FIG. 11I ). When scaled to the virtual object 11002's size when placed), a tactile output (as illustrated by 11024) is generated (eg, to provide feedback indicating that the virtual object 11002 has returned to its original size). ) Occurs. In FIG. 11Q , contacts 11012 , 11014 have been lifted from touch screen display 112 .

도 11r에서, 가상 객체(11002)를 물리적 환경(5002)에 대한 그의 원래 크기로 복귀시키기 위한 입력(예컨대, 더블 탭 입력)이 검출된다. 입력은, 접촉(11026)에 의해 나타낸 바와 같이, 가상 객체(11002)에 대응하는 위치에서 검출된다. 입력에 응답하여, 가상 객체(11002)는 도 11r에 예시된 감소된 크기로부터 도 11s에 나타난 바와 같은 가상 객체(11002)의 원래 크기로 조정된다. 도 11s에 예시된 바와 같이, 가상 객체(11002)의 크기가 물리적 환경(5002)에 대한 그의 원래 크기로 조정될 때, (11028로 예시된 바와 같은) 촉각적 출력이 (예컨대, 가상 객체(11002)가 그의 원래 크기로 복귀되었다는 것을 나타내는 피드백을 제공하기 위해) 발생한다.In FIG. 11R , an input (eg, a double tap input) is detected to return the virtual object 11002 to its original size with respect to the physical environment 5002 . Input is detected at a location corresponding to virtual object 11002 , as represented by contact 11026 . In response to the input, the virtual object 11002 is scaled from the reduced size illustrated in FIG. 11R to the original size of the virtual object 11002 as illustrated in FIG. 11S . As illustrated in FIG. 11S , when a virtual object 11002 is resized to its original size with respect to the physical environment 5002 , a tactile output (as illustrated by 11028 ) is generated (eg, virtual object 11002 ). to provide feedback indicating that α has returned to its original size).

도 11t에서, 접촉(11030)에 의한 입력이 토글 제어부(6018)에 대응하는 위치에서 검출된다. 입력에 응답하여, 카메라(들)의 시야(6036)를 포함하는 사용자 인터페이스의 디스플레이는, 도 11u에 도시된 바와 같이, 스테이징 사용자 인터페이스(6010)로 대체된다.In FIG. 11T , input by contact 11030 is detected at a location corresponding to toggle control 6018 . In response to the input, the display of the user interface including the field of view 6036 of the camera(s) is replaced with a staging user interface 6010 , as shown in FIG. 11U .

도 11u에서, 접촉(11032)에 의한 입력이 뒤로 가기 제어부(6016)에 대응하는 위치에서 검출된다. 입력에 응답하여, 스테이징 사용자 인터페이스(6010)의 디스플레이는, 도 11v에 도시된 바와 같이, 인터넷 브라우저 사용자 인터페이스(5060)로 대체된다.In FIG. 11U , an input by contact 11032 is detected at a location corresponding to a go back control 6016 . In response to the input, the display of the staging user interface 6010 is replaced with an internet browser user interface 5060 , as shown in FIG. 11V .

도 12a 내지 도 12l은 디바이스의 하나 이상의 카메라들의 이동에 따라 동적으로 애니메이션화되는 캘리브레이션 사용자 인터페이스 객체를 디스플레이하기 위한 예시적인 사용자 인터페이스들을 예시한다. 이들 도면의 사용자 인터페이스들은 도 8a 내지 도 8e, 도 9a 내지 도 9d, 도 10a 내지 도 10d, 도 16a 내지 도 16g, 도 17a 내지 도 17d, 도 18a 내지 도 18i, 도 19a 내지 도 19h, 및 도 20a 내지 도 20f의 프로세스들을 포함하여 하기에 기술되는 프로세스들을 예시하는 데 사용된다. 용이한 설명을 위해, 실시예들의 일부는 터치 감응형 디스플레이 시스템(112)을 갖는 디바이스 상에서 수행되는 동작들을 참조하여 논의될 것이다. 이러한 실시예들에서, 포커스 선택자는, 선택적으로: 개개의 손가락 또는 스타일러스 접촉이거나, 손가락 또는 스타일러스 접촉에 대응하는 대표 지점(예컨대, 개개의 접촉의 중심, 또는 개개의 접촉과 연관된 지점)이거나, 또는 터치 감응형 디스플레이 시스템(112) 상에서 검출된 둘 이상의 접촉들의 중심이다. 그러나, 유사한 동작들이, 선택적으로, 도면에 도시된 사용자 인터페이스들을 디스플레이(450) 상에 포커스 선택자와 함께 디스플레이하면서, 터치 감응형 표면(451) 상에서의 접촉들을 검출하는 것에 응답하여 디스플레이(450) 및 별개의 터치 감응형 표면(451)을 갖는 디바이스 상에서 수행된다.12A-12L illustrate example user interfaces for displaying a calibration user interface object that is dynamically animated in response to movement of one or more cameras of a device. The user interfaces of these figures are shown in FIGS. 8A-8E, 9A-9D, 10A-10D, 16A-16G, 17A-17D, 18A-18I, 19A-19H, and FIGS. 20A-20F are used to illustrate the processes described below. For ease of description, some of the embodiments will be discussed with reference to operations performed on a device having a touch-sensitive display system 112 . In such embodiments, the focus selector is optionally: an individual finger or stylus contact, a representative point corresponding to the finger or stylus contact (eg, a center of an individual contact, or a point associated with the individual contact), or It is the center of two or more contacts detected on the touch-sensitive display system 112 . However, similar operations are performed with the display 450 and the display 450 in response to detecting contacts on the touch-sensitive surface 451, optionally displaying the user interfaces shown in the figure with a focus selector on the display 450. It is performed on a device having a separate touch-sensitive surface 451 .

일부 실시예들에 따르면, 하나 이상의 카메라들의 시야를 포함하는 사용자 인터페이스에 가상 객체를 디스플레이하라는 요청이 수신되지만 추가 데이터가 디바이스의 캘리브레이션에 필요한 경우, 캘리브레이션 사용자 인터페이스 객체가 디스플레이된다.In accordance with some embodiments, when a request is received to display a virtual object in a user interface comprising the field of view of one or more cameras, but additional data is needed to calibrate the device, the calibration user interface object is displayed.

도 12a는 하나 이상의 카메라들의 시야(6036)를 포함하는 사용자 인터페이스 내에 가상 객체(11002)를 디스플레이할 것을 요청하는 입력을 예시한다. 접촉(12002)에 의한 입력이 토글 제어부(6018)에 대응하는 위치에서 검출된다. 입력에 응답하여, 스테이징 사용자 인터페이스(6010)의 디스플레이는, 도 12b에 도시된 바와 같이, 카메라(들)의 시야(6036)를 포함하는 사용자 인터페이스의 디스플레이로 대체된다. 가상 객체(11002)의 반투명 표현이 카메라(들)의 시야(6036)를 포함하는 사용자 인터페이스에 디스플레이된다. (예컨대, 가상 객체(11002)에 대응하는 평면이 카메라(들)의 시야(6036) 내에서 검출되지 않았기 때문에) 캘리브레이션이 필요한 동안, 카메라(들)의 시야(6036)는 (예컨대, 후술되는 바와 같이, 프롬프트(prompt)들 및/또는 캘리브레이션 객체의 거동을 강조하기 위해) 블러링된다.12A illustrates an input requesting to display a virtual object 11002 within a user interface that includes a field of view 6036 of one or more cameras. An input by contact 12002 is detected at a position corresponding to toggle control 6018 . In response to the input, the display of the staging user interface 6010 is replaced with a display of the user interface including the field of view 6036 of the camera(s), as shown in FIG. 12B . A translucent representation of the virtual object 11002 is displayed in a user interface comprising a field of view 6036 of the camera(s). While calibration is needed (eg, because the plane corresponding to the virtual object 11002 has not been detected within the camera(s) field of view 6036 ), the field of view 6036 of the camera(s) is (eg, as described below) Likewise, prompts and/or to emphasize the behavior of the calibration object) are blurred.

도 12b 내지 도 12d는 디바이스를 이동시킬 것을 사용자에게 촉구하는 (예컨대, 캘리브레이션이 필요하다는 결정에 따라 디스플레이되는) 애니메이션화된 이미지 및 텍스트를 예시한다. 애니메이션화된 이미지는 (예컨대, 가상 객체(11002)에 대응하는 평면을 검출하기 위해 디바이스(100)가 평면에 대해 이동해야 하는 것을 나타내기 위해) 디바이스(100)의 표현(12004), 디바이스(100)의 좌우 이동이 필요한 것을 나타내는 화살표들(12006, 12008), 평면의 표현(12010)을 포함한다. 텍스트 프롬프트(12012)는 캘리브레이션에 필요한 디바이스(100)의 이동에 관한 정보를 제공한다. 도 12b와 도 12c, 및 도 12c와 도 12d에서, 디바이스(100)의 표현(12004) 및 화살표(12006)는 캘리브레이션에 필요한 디바이스(100)의 이동의 표시를 제공하기 위해 평면의 표현(12010)에 대해 조정된다. 도 12c로부터 도 12d로, 디바이스(100)는 (예컨대, 카메라(들)의 시야(6036) 내의 테이블(5004)의 변경된 위치에 의해 나타낸 바와 같이) 물리적 환경(5002)에 대해 이동된다. 디바이스(100)의 이동의 검출의 결과로서, 캘리브레이션 사용자 인터페이스 객체(12014)(입방체의 윤곽)가, 도 12e-1에 나타낸 바와 같이, 디스플레이된다.12B-12D illustrate animated images and text prompting a user to move the device (eg, displayed in response to a determination that calibration is required). The animated image is a representation 12004 of device 100 , device 100 (eg, to indicate that device 100 should move relative to a plane to detect a plane corresponding to virtual object 11002 ). Arrows 12006 and 12008 indicating that the left and right movement is required, and a representation of a plane 12010 are included. The text prompt 12012 provides information about the movement of the device 100 required for calibration. 12B and 12C, and 12C and 12D, a representation 12004 of the device 100 and an arrow 12006 are a representation of a plane 12010 to provide an indication of the movement of the device 100 necessary for calibration. is adjusted for 12C to 12D , the device 100 is moved relative to the physical environment 5002 (eg, as indicated by the altered position of the table 5004 within the field of view 6036 of the camera(s)). As a result of the detection of movement of the device 100 , a calibration user interface object 12014 (outline of the cube) is displayed, as shown in FIG. 12E-1 .

도 12e-1 내지 도 12i-1은, 도 12e-2 내지 도 12i-2에 각각 예시된 바와 같은, 물리적 환경(5002)에 대한 디바이스(100)의 이동에 대응하는 캘리브레이션 사용자 인터페이스 객체(12014)의 거동을 예시한다. (예컨대, 캘리브레이션에 도움이 되는 이동에 관한 피드백을 사용자에게 제공하기 위해) 디바이스(100)의 이동(예컨대, 측방향 이동)에 응답하여 캘리브레이션 사용자 인터페이스 객체(12014)는 애니메이션화된다(예컨대, 입방체의 윤곽은 회전한다). 도 12e-1에서, 캘리브레이션 사용자 인터페이스 객체(12014)는 디바이스(100)의 카메라(들)의 시야(6036)를 포함하는 사용자 인터페이스에서 제1 회전 각을 갖는 것으로 도시되어 있다. 도 12e-2에서, 디바이스(100)는 물리적 환경(5002)에 대한 제1 위치에서, 사용자의 손(5006)에 의해 보유되는 것으로 도시되어 있다. 도 12e-2로부터 도 12f-2로, 디바이스(100)는 물리적 환경(5002)에 대해 측방향으로 (우측으로) 이동하였다. 이동의 결과로서, 도 12f-1에 도시된 바와 같이, 디바이스(100)에 의해 디스플레이되는 바와 같은 카메라(들)의 시야(6036)는 업데이트되고 캘리브레이션 사용자 인터페이스 객체(12014)는 (도 12e-1에서의 그의 위치에 대해) 회전하였다. 도 12f-2로부터 도 12g-2로, 디바이스(100)는 물리적 환경(5002)에 대해 그의 우향 이동을 계속하였다. 이동의 결과로서, 도 12g-1에 도시된 바와 같이, 디바이스(100)에 의해 디스플레이되는 바와 같은 카메라(들)의 시야(6036)는 다시 업데이트되고 캘리브레이션 사용자 인터페이스 객체(12014)는 추가로 회전된다. 도 12g-2로부터 도 12h-2로, 디바이스(100)는 물리적 환경(5002)에 대해 상향으로 이동하였다. 이동의 결과로서, 디바이스(100)에 의해 디스플레이되는 바와 같은 카메라(들)의 시야(6036)는 업데이트된다. 도 12g-1에서 도 12h-1로 예시된 바와 같이, 캘리브레이션 사용자 인터페이스 객체(12014)는 (예컨대, 디바이스의 수직 이동이 캘리브레이션에 기여하지 않고 있다는 표시를 사용자에게 제공하기 위해) 도 12g-2에서 도 12h-2로 예시된 디바이스의 상향 이동에 응답하여 회전하지 않는다. 도 12h-2로부터 도 12i-2로, 디바이스(100)는 물리적 환경(5002)에 대해 추가로 우향으로 이동하였다. 이동의 결과로서, 도 12i-1에 도시된 바와 같이, 디바이스(100)에 의해 디스플레이되는 바와 같은 카메라(들)의 시야(6036)는 다시 업데이트되고 캘리브레이션 사용자 인터페이스 객체(12014)는 회전된다.12E-1 to 12I-1 are calibration user interface objects 12014 corresponding to movement of device 100 relative to physical environment 5002, as illustrated in FIGS. 12E-2 to 12I-2, respectively. to illustrate the behavior of In response to movement (eg, lateral movement) of device 100 (eg, to provide feedback to the user regarding movement to aid in calibration), calibration user interface object 12014 is animated (eg, of a cube) The contour rotates). In FIG. 12E-1 , a calibration user interface object 12014 is shown having a first angle of rotation in a user interface that includes a field of view 6036 of the camera(s) of device 100 . In FIG. 12E-2 , device 100 is shown held by a user's hand 5006 in a first position relative to physical environment 5002 . 12E-2 to 12F-2, the device 100 has moved laterally (to the right) with respect to the physical environment 5002 . As a result of the movement, as shown in FIG. 12F-1 , the field of view 6036 of the camera(s) as displayed by device 100 is updated and calibration user interface object 12014 is updated (FIG. 12E-1 ). relative to its position in ). From FIG. 12F-2 to FIG. 12G-2 , device 100 continued its rightward movement relative to physical environment 5002 . As a result of the movement, the field of view 6036 of the camera(s) as displayed by the device 100 is updated again and the calibration user interface object 12014 is further rotated, as shown in FIG. 12G-1 . . From FIG. 12G-2 to FIG. 12H-2 , device 100 has moved upward with respect to physical environment 5002 . As a result of the movement, the field of view 6036 of the camera(s) as displayed by the device 100 is updated. 12G-1 to 12H-1 , calibration user interface object 12014 (eg, to provide an indication to the user that vertical movement of the device is not contributing to calibration) in FIG. 12G-2 It does not rotate in response to upward movement of the device illustrated by FIG. 12H-2. From FIG. 12H-2 to FIG. 12I-2 , device 100 has moved further to the right with respect to physical environment 5002 . As a result of the movement, the field of view 6036 of the camera(s) as displayed by the device 100 is updated again and the calibration user interface object 12014 is rotated, as shown in FIG. 12I-1 .

도 12j에서, (예컨대, 도 12e 내지 도 12i에 예시된 바와 같은) 디바이스(100)의 이동은 요구되는 캘리브레이션을 만족하였다(예컨대, 그리고 가상 객체(11002)에 대응하는 평면이 카메라(들)의 시야(6036) 내에서 검출되었다). 가상 객체(11002)는 검출된 평면 상에 배치되고, 카메라(들)의 시야(6036)는 블러링되는 것이 중지된다. 촉각적 출력 생성기들은 평면(예컨대, 바닥 표면(5038))이 카메라(들)의 시야(6036) 내에서 검출되었다는 것을 나타내기 위해 (12016으로 예시된 바와 같은) 촉각적 출력을 출력한다. 바닥 표면(5038)은 검출되었던 평면의 표시를 제공하도록 강조된다.In FIG. 12J , movement of device 100 (eg, as illustrated in FIGS. 12E-12I ) satisfied the required calibration (eg, and that the plane corresponding to virtual object 11002 is of the camera(s)) detected within field of view 6036). The virtual object 11002 is placed on the detected plane, and the field of view 6036 of the camera(s) stops blurring. The tactile output generators output a tactile output (as illustrated by 12016 ) to indicate that a plane (eg, floor surface 5038 ) has been detected within the field of view 6036 of the camera(s). The bottom surface 5038 is highlighted to provide an indication of the plane that was detected.

가상 객체(11002)가 카메라(들)의 시야(6036) 내에서 검출되는 평면에 대해 일정 위치에 배치된 경우, 가상 객체(11002)는 하나 이상의 카메라들에 의해 캡처되는 물리적 환경(5002)에 대해 고정된 위치에 유지된다. 디바이스(100)가 (도 12k-2에서 도 12l-2로 도시된 바와 같이) 물리적 환경(5002)에 대해 이동됨에 따라, 가상 객체(11002)는 (도 12k-1에서 도 12l-1로 도시된 바와 같이) 물리적 환경(5002)에 대해 고정된 위치에 유지된다.When the virtual object 11002 is positioned relative to the plane detected within the field of view 6036 of the camera(s), the virtual object 11002 is positioned relative to the physical environment 5002 captured by the one or more cameras. maintained in a fixed position. As the device 100 is moved relative to the physical environment 5002 (as shown in FIGS. 12K-2 to 12L-2), the virtual object 11002 (shown in FIGS. 12K-1 to 12L-1 ) is moved. maintained in a fixed position relative to the physical environment 5002).

도 13a 내지 도 13m은 축을 중심으로 하는 가상 객체의 회전을 제약하기 위한 예시적인 사용자 인터페이스들을 예시한다. 이들 도면의 사용자 인터페이스들은 도 8a 내지 도 8e, 도 9a 내지 도 9d, 도 10a 내지 도 10d, 도 16a 내지 도 16g, 도 17a 내지 도 17d, 도 18a 내지 도 18i, 도 19a 내지 도 19h, 및 도 20a 내지 도 20f의 프로세스들을 포함하여 하기에 기술되는 프로세스들을 예시하는 데 사용된다. 용이한 설명을 위해, 실시예들의 일부는 터치 감응형 디스플레이 시스템(112)을 갖는 디바이스 상에서 수행되는 동작들을 참조하여 논의될 것이다. 이러한 실시예들에서, 포커스 선택자는, 선택적으로: 개개의 손가락 또는 스타일러스 접촉이거나, 손가락 또는 스타일러스 접촉에 대응하는 대표 지점(예컨대, 개개의 접촉의 중심, 또는 개개의 접촉과 연관된 지점)이거나, 또는 터치 감응형 디스플레이 시스템(112) 상에서 검출된 둘 이상의 접촉들의 중심이다. 그러나, 유사한 동작들이, 선택적으로, 도면에 도시된 사용자 인터페이스들을 디스플레이(450) 상에 포커스 선택자와 함께 디스플레이하면서, 터치 감응형 표면(451) 상에서의 접촉들을 검출하는 것에 응답하여 디스플레이(450) 및 별개의 터치 감응형 표면(451)을 갖는 디바이스 상에서 수행된다.13A-13M illustrate example user interfaces for constraining rotation of a virtual object about an axis. The user interfaces of these figures are shown in FIGS. 8A-8E, 9A-9D, 10A-10D, 16A-16G, 17A-17D, 18A-18I, 19A-19H, and FIGS. 20A-20F are used to illustrate the processes described below. For ease of description, some of the embodiments will be discussed with reference to operations performed on a device having a touch-sensitive display system 112 . In such embodiments, the focus selector is optionally: an individual finger or stylus contact, a representative point corresponding to the finger or stylus contact (eg, a center of an individual contact, or a point associated with the individual contact), or It is the center of two or more contacts detected on the touch-sensitive display system 112 . However, similar operations are performed with the display 450 and the display 450 in response to detecting contacts on the touch-sensitive surface 451, optionally displaying the user interfaces shown in the figure with a focus selector on the display 450. It is performed on a device having a separate touch-sensitive surface 451 .

도 13a에서, 가상 객체(11002)가 스테이징 사용자 인터페이스(6010) 내에 도시된다. x-축, y-축, 및 z-축이 가상 객체(11002)에 대해 도시되어 있다.In FIG. 13A , virtual object 11002 is shown within staging user interface 6010 . The x-axis, y-axis, and z-axis are shown for virtual object 11002 .

도 13b 및 도 13c는 도 13a에 나타낸 y-축을 중심으로 가상 객체(11002)를 회전시키기 위한 입력을 예시한다. 도 13b에서, 접촉(13002)에 의한 입력이 가상 객체(11002)에 대응하는 위치에서 검출된다. 입력은 화살표(13004)로 표시된 경로를 따라서 거리(d1)만큼 이동한다. 입력이 경로를 따라서 이동함에 따라, 가상 객체(11002)는 도 13b에 나타낸 위치로 y-축을 중심으로 (예컨대, 35도만큼) 회전한다. 스테이징 사용자 인터페이스(6010)에서, 가상 객체(11002)에 대응하는 그림자(13006)가 디스플레이된다. 도 13b로부터 도 13c로, 그림자(13006)는 가상 객체(11002)의 변경된 위치에 따라 변한다.13B and 13C illustrate an input for rotating the virtual object 11002 about the y-axis shown in FIG. 13A . In FIG. 13B , an input by contact 13002 is detected at a location corresponding to virtual object 11002 . The input travels along the path indicated by arrow 13004 by distance d 1 . As the input moves along the path, the virtual object 11002 rotates about the y-axis (eg, by 35 degrees) to the position shown in FIG. 13B . In the staging user interface 6010 , a shadow 13006 corresponding to the virtual object 11002 is displayed. 13B to 13C , the shadow 13006 changes according to the changed position of the virtual object 11002 .

접촉(13002)이 터치 스크린(112)으로부터 리프트오프된 후, 가상 객체(11002)는 (예컨대, 가상 객체(11002)가 물리적 객체와 유사하게 거동하는 인상을 제공하기 위해, 접촉(13002)의 이동에 의해 부여되는 "운동량"에 따라) 도 13c 및 도 13d에 도시된 바와 같이, 계속 회전한다.After the contact 13002 is lifted off the touch screen 112 , the virtual object 11002 moves (eg, to provide the impression that the virtual object 11002 behaves similarly to a physical object) of the contact 13002 . (according to the “momentum” imparted by

도 13e 및 도 13f는 도 13a에 나타낸 x-축을 중심으로 가상 객체(11002)를 회전시키기 위한 입력을 예시한다. 도 13e에서, 접촉(13008)에 의한 입력이 가상 객체(11002)에 대응하는 위치에서 검출된다. 입력은 화살표(13010)로 표시된 경로를 따라서 거리(d1)만큼 이동한다. 입력이 경로를 따라서 이동함에 따라, 가상 객체(11002)는 도 13f에 나타낸 위치로 x-축을 중심으로 (예컨대, 5도만큼) 회전한다. 접촉(13002)이 도 13b 및 도 13c로부터 이동한 동일한 거리(d1)만큼 접촉(13008)이 도 13e 및 도 13f에서 x-축을 따라서 이동하더라도, 도 13e 및 도 13f에서 x-축을 중심으로 하는 가상 객체(11002)의 회전 각은 도 13b 및 도 13c에서 y-축을 중심으로 하는 가상 객체(11002)의 회전 각보다 작다.13E and 13F illustrate an input for rotating the virtual object 11002 about the x-axis shown in FIG. 13A . In FIG. 13E , an input by contact 13008 is detected at a location corresponding to virtual object 11002 . The input moves along a path indicated by arrow 13010 by a distance d 1 . As the input moves along the path, the virtual object 11002 rotates about the x-axis (eg, by 5 degrees) to the position shown in FIG. 13F . Although contact 13008 moves along the x-axis in FIGS. 13E and 13F by the same distance d 1 traveled by contact 13002 from FIGS. 13B and 13C , centered on the x-axis in FIGS. 13E and 13F . The rotation angle of the virtual object 11002 is smaller than the rotation angle of the virtual object 11002 about the y-axis in FIGS. 13B and 13C .

도 13f 및 도 13g는 도 13a에 나타낸 x-축을 중심으로 가상 객체(11002)를 회전시키기 위한 추가 입력을 예시한다. 도 13f에서, 접촉(13008)은 그의 이동을 계속하여, 화살표(13012)로 표시된 경로를 따라서 (거리(d1)보다 큰) 거리(d2)만큼 이동한다. 입력이 경로를 따라서 이동함에 따라, 가상 객체(11002)는 도 13g에 나타낸 위치로 x-축을 중심으로 (25도만큼) 회전한다. 도 13e 내지 도 13g에 예시된 바와 같이, 접촉(13008)의 거리(d1+ d2)만큼의 이동은 가상 객체(11002)가 x-축을 중심으로 30도로 회전하게 하는 반면, 도 13b 및 도 13c에서, 접촉(13004)의 거리(d1)만큼의 이동은 가상 객체(11002)가 y-축을 중심으로 35도로 회전하게 한다.13F and 13G illustrate additional inputs for rotating the virtual object 11002 about the x-axis shown in FIG. 13A . In FIG. 13F , contact 13008 continues its movement, moving a distance d 2 (greater than distance d 1 ) along the path indicated by arrow 13012 . As the input moves along the path, the virtual object 11002 rotates about the x-axis (by 25 degrees) to the position shown in FIG. 13G . 13E-13G , movement of contact 13008 by a distance d 1 + d 2 causes virtual object 11002 to rotate 30 degrees about the x-axis, whereas FIGS. 13B and 13B and FIG. At 13c , movement of contact 13004 by distance d 1 causes virtual object 11002 to rotate 35 degrees about the y-axis.

접촉(13008)이 터치 스크린(112)으로부터 리프트오프된 후, 가상 객체(11002)는, 도 13g 및 도 13h에 도시된 바와 같이, (예컨대, 접촉(13008)의 이동이 회전 한계를 넘어서 도달한 가상 객체(11002)의 회전량을 야기한 것을 나타내기 위해) 접촉(13008)의 이동에 의해 야기되는 회전 방향과 반대인 방향으로 회전한다.After the contact 13008 is lifted off the touch screen 112 , the virtual object 11002 , as shown in FIGS. 13G and 13H , (eg, when the movement of the contact 13008 reaches beyond the rotation limit) Rotate in a direction opposite to the direction of rotation caused by the movement of contact 13008 (to indicate what caused the amount of rotation of virtual object 11002 ).

도 13g 내지 도 13i에서, (예컨대, 객체를 아래에서 볼 때 가상 객체(11002)가 그림자를 드리우지 않기 때문에) 그림자(13006)는 도시되지 않는다.13G-13I , shadow 13006 is not shown (eg, since virtual object 11002 does not cast a shadow when the object is viewed from below).

도 13i에서, 가상 객체(11002)를 (예컨대, 도 13a에 나타낸 바와 같이) 그가 원래 디스플레이되었던 시점으로 복귀시키기 위한 입력(예컨대, 더블 탭 입력)이 검출된다. 입력은, 접촉(13014)에 의해 나타낸 바와 같이, 가상 객체(11002)에 대응하는 위치에서 발생한다. 입력에 응답하여, 가상 객체(11002)는 (도 13e로부터 도 13h로 발생한 회전을 역전시키기 위해) y-축을 중심으로 그리고 (도 13b로부터 도 13d로 발생한 회전을 역전시키기 위해) x-축을 중심으로 회전된다. 도 13j에서, 접촉(13016)에 의한 입력은 가상 객체(11002)가 원래 디스플레이된 시점으로 복귀하게 하였다.In FIG. 13I , an input (eg, a double tap input) is detected to return the virtual object 11002 (eg, as shown in FIG. 13A ) to the point in time at which it was originally displayed. The input occurs at a location corresponding to virtual object 11002 , as represented by contact 13014 . In response to the input, virtual object 11002 is rotated about the y-axis (to reverse the rotation that occurred from FIG. 13E to FIG. 13H) and about the x-axis (to reverse the rotation that occurred from FIG. 13B to FIG. 13D). rotated In FIG. 13J , input by contact 13016 caused virtual object 11002 to return to the originally displayed view.

일부 실시예들에서, 스테이징 사용자 인터페이스(6010)가 디스플레이되는 동안 가상 객체(11002)의 크기를 조정하기 위한 입력이 수신된다. 예를 들어, 가상 객체(11002)의 크기를 조정하기 위한 입력은 가상 객체(11002)의 크기를 증가시키기 위한 (예컨대, 도 6n 및 도 6o와 관련하여 기술된 바와 같은) 디핀치 제스처 또는 가상 객체(11002)의 크기를 감소시키기 위한 핀치 제스처이다.In some embodiments, an input is received to resize the virtual object 11002 while the staging user interface 6010 is displayed. For example, the input to resize the virtual object 11002 may be a de-pinch gesture (eg, as described with respect to FIGS. 6N and 6O ) or a virtual object to increase the size of the virtual object 11002 . It is a pinch gesture to decrease the size of 11002.

도 13j에서, 스테이징 사용자 인터페이스(6010)의 디스플레이를 카메라(들)의 시야(6036)를 포함하는 사용자 인터페이스의 디스플레이로 대체하기 위한 입력이 수신된다. 접촉(13016)에 의한 입력이 토글 제어부(6018)에 대응하는 위치에서 검출된다. 입력에 응답하여, 스테이징 사용자 인터페이스(6010)의 디스플레이는, 도 13k에 도시된 바와 같이, 카메라(들)의 시야(6036)를 포함하는 사용자 인터페이스로 대체된다.In FIG. 13J , input is received to replace the display of the staging user interface 6010 with a display of the user interface that includes the field of view 6036 of the camera(s). An input by contact 13016 is detected at a location corresponding to toggle control 6018 . In response to the input, the display of the staging user interface 6010 is replaced with a user interface comprising a field of view 6036 of the camera(s), as shown in FIG. 13K .

도 13k에서, 가상 객체(11002)는 카메라(들)의 시야(6036)를 포함하는 사용자 인터페이스에 디스플레이된다. 가상 객체(11002)에 대응하는 평면이 카메라(들)의 시야(6036) 내에서 검출되었다는 것을 나타내기 위해 (13018로 예시된 바와 같은) 촉각적 출력이 발생한다. 카메라(들)의 시야(6036)를 포함하는 사용자 인터페이스 내의 가상 객체(11002)의 회전 각은 스테이징 사용자 인터페이스(6010) 내의 가상 객체(11002)의 회전 각에 대응한다.In FIG. 13K , virtual object 11002 is displayed in a user interface comprising field of view 6036 of the camera(s). A tactile output (as illustrated by 13018 ) is generated to indicate that a plane corresponding to the virtual object 11002 has been detected within the field of view 6036 of the camera(s). The angle of rotation of the virtual object 11002 in the user interface including the field of view 6036 of the camera(s) corresponds to the angle of rotation of the virtual object 11002 in the staging user interface 6010 .

카메라(들)의 시야(6036)를 포함하는 사용자 인터페이스가 디스플레이될 때, 측방향 이동을 포함하는 입력은, 도 13l 및 도 13m에 예시된 바와 같이, 카메라(들)의 시야(6036)를 포함하는 사용자 인터페이스 내의 가상 객체(11002)의 측방향 이동을 야기한다. 도 13l에서, 가상 객체(11002)에 대응하는 위치에서 접촉(13020)이 검출되고, 접촉은 화살표(13022)로 표시된 경로를 따라서 이동한다. 접촉이 이동함에 따라, 가상 객체(11002)는 (도 13l에 도시된 바와 같은) 제1 위치로부터 (도 13m에 도시된 바와 같은) 제2 위치로의 접촉(13020)의 이동에 대응하는 경로를 따라서 이동한다.When a user interface is displayed that includes a field of view 6036 of the camera(s), the input comprising lateral movement includes a field of view 6036 of the camera(s), as illustrated in FIGS. 13L and 13M . causes lateral movement of the virtual object 11002 within the user interface. In FIG. 13L , a contact 13020 is detected at a location corresponding to the virtual object 11002 , and the contact moves along a path indicated by an arrow 13022 . As the contact moves, the virtual object 11002 traces a path corresponding to the movement of the contact 13020 from a first location (as shown in FIG. 13L) to a second location (as shown in FIG. 13M). So move.

일부 실시예들에서, 카메라(들)의 시야(6036)를 포함하는 사용자 인터페이스가 디스플레이될 때 제공되는 입력은, 도 5aj 내지 도 5am과 관련하여 기술된 바와 같이, 제1 평면(예컨대, 바닥 평면(5038))으로부터 제2 평면(예컨대, 테이블 표면 평면(5046))으로의 가상 객체(11002)의 이동을 야기할 수 있다.In some embodiments, the input provided when a user interface comprising a field of view 6036 of the camera(s) is displayed is, as described in connection with FIGS. 5aj-5am, a first plane (eg, a floor plane). movement of the virtual object 11002 from 5038 ) to a second plane (eg, table surface plane 5046 ).

도 14a 내지 도 14z는 이동의 제1 임계치 크기가 제1 객체 조작 거동에 대해 충족된다는 결정에 따라, 제2 객체 조작 거동에 필요한 이동의 제2 임계치 크기를 증가시키기 위한 예시적인 사용자 인터페이스들을 예시한다. 이들 도면의 사용자 인터페이스들은 도 8a 내지 도 8e, 도 9a 내지 도 9d, 도 10a 내지 도 10d, 도 14aa 내지 도 14ad, 도 16a 내지 도 16g, 도 17a 내지 도 17d, 도 18a 내지 도 18i, 도 19a 내지 도 19h, 및 도 20a 내지 도 20f의 프로세스들을 포함하여 하기에 기술되는 프로세스들을 예시하는 데 사용된다. 용이한 설명을 위해, 실시예들의 일부는 터치 감응형 디스플레이 시스템(112)을 갖는 디바이스 상에서 수행되는 동작들을 참조하여 논의될 것이다. 이러한 실시예들에서, 포커스 선택자는, 선택적으로: 개개의 손가락 또는 스타일러스 접촉이거나, 손가락 또는 스타일러스 접촉에 대응하는 대표 지점(예컨대, 개개의 접촉의 중심, 또는 개개의 접촉과 연관된 지점)이거나, 또는 터치 감응형 디스플레이 시스템(112) 상에서 검출된 둘 이상의 접촉들의 중심이다. 그러나, 유사한 동작들이, 선택적으로, 도면에 도시된 사용자 인터페이스들을 디스플레이(450) 상에 포커스 선택자와 함께 디스플레이하면서, 터치 감응형 표면(451) 상에서의 접촉들을 검출하는 것에 응답하여 디스플레이(450) 및 별개의 터치 감응형 표면(451)을 갖는 디바이스 상에서 수행된다.14A-14Z illustrate example user interfaces for increasing a second threshold magnitude of movement required for a second object manipulation behavior in accordance with a determination that the first threshold magnitude of movement is satisfied for the first object manipulation behavior; . The user interfaces of these figures are shown in FIGS. 8A-8E, 9A-9D, 10A-10D, 14AA-14AD, 16A-16G, 17A-17D, 18A-18I, 19A. 19H and 20A-20F are used to illustrate the processes described below. For ease of description, some of the embodiments will be discussed with reference to operations performed on a device having a touch-sensitive display system 112 . In such embodiments, the focus selector is optionally: an individual finger or stylus contact, a representative point corresponding to the finger or stylus contact (eg, a center of an individual contact, or a point associated with the individual contact), or It is the center of two or more contacts detected on the touch-sensitive display system 112 . However, similar operations are performed with the display 450 and the display 450 in response to detecting contacts on the touch-sensitive surface 451, optionally displaying the user interfaces shown in the figure with a focus selector on the display 450. It is performed on a device having a separate touch-sensitive surface 451 .

도 14a에서, 가상 객체(11002)는 카메라(들)의 시야(6036)를 포함하는 사용자 인터페이스에 디스플레이된다. 도 14b 내지 도 14z에 관하여 추가로 기술되는 바와 같이, 병진 이동 측정기(14002), 축척조정 이동 측정기(14004), 및 회전 이동 측정기(14006)는 객체 조작 거동들(예컨대, 병진 동작, 축척조정 동작, 및/또는 회전 동작)에 대응하는 이동의 각각의 크기들을 나타내는 데 사용된다. 병진 이동 측정기(14002)는 터치 스크린 디스플레이(112) 상의 한 세트의 접촉들의 측방향(예컨대, 좌향 또는 우향) 이동의 크기를 나타낸다. 축척조정 이동 측정기(14004)는 터치 스크린 디스플레이(112) 상의 한 세트의 접촉들 중 각각의 접촉들 사이의 증가 또는 감소하는 거리의 크기(예컨대, 핀치 또는 디핀치 제스처의 크기)를 나타낸다. 회전 이동 측정기(14006)는 터치 스크린 디스플레이(112) 상의 한 세트의 접촉들의 회전 이동의 크기를 나타낸다.In FIG. 14A , virtual object 11002 is displayed in a user interface comprising field of view 6036 of the camera(s). As will be further described with respect to FIGS. 14B-14Z , the translational motion measurer 14002 , the scaling motion measurer 14004 , and the rotational motion measurer 14006 can perform object manipulation behaviors (eg, translational motion, scaling motion). , and/or rotational motion) respectively). Translation meter 14002 indicates the magnitude of lateral (eg, left or right) movement of a set of contacts on touch screen display 112 . The scale movement meter 14004 indicates the magnitude of the increasing or decreasing distance between each of the sets of contacts on the touch screen display 112 (eg, the magnitude of a pinch or de-pinch gesture). Rotational movement meter 14006 indicates the magnitude of rotational movement of a set of contacts on touch screen display 112 .

도 14b 내지 도 14e는 하나 이상의 카메라들의 시야(6036)를 포함하는 사용자 인터페이스에서 가상 객체(11002)를 회전시키기 위한 입력을 예시한다. 가상 객체(11002)를 회전시키기 위한 입력은, 제1 접촉(14008)이 화살표(14010)로 표시된 경로를 따라서 시계 방향으로 회전 이동하고 제2 접촉(14012)이 화살표(14014)로 표시된 경로를 따라서 시계 방향으로 회전 이동하는 제스처를 포함한다. 도 14b에서, 터치 스크린(112)과의 접촉들(14008, 14012)이 검출된다. 도 14c에서, 접촉(14008)은 화살표(14010)로 표시된 경로를 따라서 이동하였고, 접촉(14012)은 화살표(14012)로 표시된 경로를 따라서 이동하였다. 도 14c에서 접촉(14008) 및 접촉(14012)의 회전 이동의 크기가 임계치(RT)에 도달하지 않았기 때문에, 가상 객체(11002)는 입력에 응답하여 아직 회전하지 않았다. 도 14d에서, 접촉(14008) 및 접촉(14012)의 회전 이동의 크기가 임계치(RT)를 초과하여 증가하였고, 가상 객체(11002)는 입력에 응답하여 (도 14b에 도시된 가상 객체(11002)의 위치에 대해) 회전하였다. 회전 이동의 크기가 임계치(RT)를 초과하여 증가할 때, 가상 객체(11002)를 축척조정하기 위한 이동의 요구되는 크기는 증가되고(예컨대, 축척조정 이동 측정기(14004)에 나타낸 바와 같이, 축척조정 임계치(ST)는 ST로부터 ST'으로 증가하였음), 가상 객체(11002)를 병진시키기 위한 이동의 요구되는 크기는 증가된다(예컨대, 병진 이동 측정기(14002)에 나타낸 바와 같이, 병진 임계치(TT)는 TT로부터 TT'으로 증가하였음). 도 14e에서, 접촉(14008) 및 접촉(14012)은 각각 화살표들(14010, 14014)로 표시된 회전 경로들을 따라 계속 이동하였고, 가상 객체(11002)는 입력에 응답하여 계속 회전하였다. 도 14f에서, 접촉들(14008, 14012)은 터치 스크린(112)으로부터 리프트오프되었다.14B-14E illustrate input for rotating a virtual object 11002 in a user interface that includes a field of view 6036 of one or more cameras. An input for rotating the virtual object 11002 is that the first contact 14008 rotates in a clockwise direction along the path indicated by arrow 14010 and the second contact 14012 moves along the path indicated by arrow 14014 . Includes a clockwise rotation movement. In FIG. 14B , contacts 14008 , 14012 with touch screen 112 are detected. In FIG. 14C , contact 14008 moved along the path indicated by arrow 14010 , and contact 14012 moved along the path indicated by arrow 14012 . Because the magnitude of the rotational movement of contact 14008 and contact 14012 in FIG. 14C has not reached threshold RT, virtual object 11002 has not yet rotated in response to the input. In FIG. 14D , the magnitude of the rotational movement of contact 14008 and contact 14012 has increased beyond a threshold RT, and virtual object 11002 is responsive to input (virtual object 11002 shown in FIG. 14B ). relative to the position of ) was rotated. When the magnitude of the rotational movement increases beyond the threshold RT, the required amount of movement to scale the virtual object 11002 is increased (eg, as indicated by the scaling movement meter 14004 , the scale The adjustment threshold ST has increased from ST to ST'), and the required amount of movement to translate the virtual object 11002 is increased (eg, as indicated by the translational movement meter 14002, the translational threshold TT ) increased from TT to TT'). In FIG. 14E , contact 14008 and contact 14012 continued to move along rotation paths indicated by arrows 14010 and 14014 , respectively, and virtual object 11002 continued to rotate in response to input. In FIG. 14F , contacts 14008 , 14012 have been lifted off from touch screen 112 .

도 14g 내지 도 14i는 하나 이상의 카메라들의 시야(6036)를 포함하는 사용자 인터페이스 내에서 가상 객체(11002)를 축척조정하기(예컨대, 그의 크기를 증가시키기) 위한 입력을 예시한다. 가상 객체(11002)의 크기를 증가시키기 위한 입력은, (예컨대, 접촉(14016)과 접촉(14020) 사이의 거리가 증가하도록) 제1 접촉(14016)이 화살표(14018)로 표시된 경로를 따라서 이동하고 제2 접촉(14020)이 화살표(14022)로 표시된 경로를 따라서 이동하는 제스처를 포함한다. 도 14g에서, 터치 스크린(112)과의 접촉들(14016, 14020)이 검출된다. 도 14h에서, 접촉(14016)은 화살표(14018)로 표시된 경로를 따라서 이동하였고, 접촉(14020)은 화살표(14022)로 표시된 경로를 따라서 이동하였다. 도 14h에서 접촉(14020)으로부터 멀어지는 접촉(14016)의 이동의 크기가 임계치(ST)에 도달하지 않았기 때문에, 가상 객체(11002)의 크기는 입력에 응답하여 아직 조정되지 않았다. 도 14i에서, 접촉(14016) 및 접촉(14020)의 축척조정 이동의 크기가 임계치(ST)를 초과하여 증가하였고, 가상 객체(11002)의 크기는 입력에 응답하여 (도 14h에 도시된 가상 객체(11002)의 크기에 비해) 증가되었다. 축척조정 이동의 크기가 임계치(ST)를 초과하여 증가할 때, 가상 객체(11002)를 회전시키기 위한 이동의 요구되는 크기는 증가되고(예컨대, 회전 이동 측정기(14006)에 나타낸 바와 같이, 회전 임계치(RT)는 RT로부터 RT'으로 증가하였음), 가상 객체(11002)를 병진시키기 위한 이동의 요구되는 크기는 증가된다(예컨대, 병진 이동 측정기(14002)에 나타낸 바와 같이, 병진 임계치(TT)는 TT로부터 TT'으로 증가하였음). 도 14j에서, 접촉들(14016, 14020)은 터치 스크린(112)으로부터 리프트오프되었다.14G-14I illustrate input for scaling (eg, increasing the size of) virtual object 11002 within a user interface that includes a field of view 6036 of one or more cameras. An input to increase the size of virtual object 11002 is that first contact 14016 moves along the path indicated by arrow 14018 (eg, such that the distance between contact 14016 and contact 14020 increases). and moving the second contact 14020 along the path indicated by the arrow 14022 . In FIG. 14G , contacts 14016 , 14020 with touch screen 112 are detected. In FIG. 14H , contact 14016 traveled along the path indicated by arrow 14018 , and contact 14020 traveled along the path indicated by arrow 14022 . Because the magnitude of movement of contact 14016 away from contact 14020 in FIG. 14H has not reached threshold ST, the size of virtual object 11002 has not yet been adjusted in response to the input. In FIG. 14I , the magnitude of the scaling movement of contact 14016 and contact 14020 has increased beyond the threshold ST, and the size of virtual object 11002 is increased in response to the input (virtual object shown in FIG. 14H ). (11002)) was increased. When the magnitude of the scaling movement increases beyond the threshold ST, the required magnitude of movement to rotate the virtual object 11002 is increased (eg, as indicated by the rotational movement meter 14006 , the rotation threshold (RT) increased from RT to RT'), the required amount of movement to translate the virtual object 11002 is increased (e.g., as indicated by the translational movement meter 14002, the translational threshold TT is increased from TT to TT'). In FIG. 14J , contacts 14016 , 14020 have been lifted off from touch screen 112 .

도 14k 내지 도 14m은 하나 이상의 카메라들의 시야(6036)를 포함하는 사용자 인터페이스에서 가상 객체(11002)를 병진시키기 위한 (예컨대, 가상 객체(11002)를 좌측으로 이동시키기 위한) 입력을 예시한다. 가상 객체(11002)를 이동시키기 위한 입력은, (예컨대, 접촉(14024) 및 접촉(14028) 둘 모두가 좌향으로 이동하도록) 제1 접촉(14024)이 화살표(14026)로 표시된 경로를 따라서 이동하고 제2 접촉(14028)이 화살표(1430)로 표시된 경로를 따라서 이동하는 제스처를 포함한다. 도 14k에서, 터치 스크린(112)과의 접촉들(14024, 14028)이 검출된다. 도 14l에서, 접촉(14024)은 화살표(14026)로 표시된 경로를 따라서 이동하였고, 접촉(14028)은 화살표(14030)로 표시된 경로를 따라서 이동하였다. 도 14l에서 접촉들(14024, 14028)의 좌향하는 이동의 크기가 임계치(TT)에 도달하지 않았기 때문에, 가상 객체(11002)는 입력에 응답하여 아직 이동되지 않았다. 도 14m에서, 접촉(14024) 및 접촉(14028)의 좌향하는 이동의 크기는 임계치(TT)를 초과하여 증가하였고, 가상 객체(11002)는 접촉들(14024, 14028)의 이동 방향으로 이동되었다. 병진 이동의 크기가 임계치(TT)를 초과하여 증가할 때, 가상 객체(11002)를 축척조정하기 위한 이동의 요구되는 크기는 증가되고(예컨대, 축척조정 이동 측정기(14004)에 나타낸 바와 같이, 축척조정 임계치(ST)는 ST로부터 ST'으로 증가하였음), 가상 객체(11002)를 회전시키기 위한 이동의 요구되는 크기는 증가된다(예컨대, 회전 이동 측정기(14006)에 나타낸 바와 같이, 회전 임계치(RT)는 RT로부터 RT'으로 증가하였음). 도 14n에서, 접촉들(14024, 14028)은 터치 스크린(112)으로부터 리프트오프되었다.14K-14M illustrate input to translate virtual object 11002 (eg, to move virtual object 11002 to the left) in a user interface that includes a field of view 6036 of one or more cameras. An input for moving the virtual object 11002 is that the first contact 14024 moves along the path indicated by the arrow 14026 (eg, such that both the contact 14024 and the contact 14028 move to the left) and The second contact 14028 includes a gesture of moving along the path indicated by arrow 1430 . In FIG. 14K , contacts 14024 , 14028 with touch screen 112 are detected. In FIG. 14L , contact 14024 traveled along the path indicated by arrow 14026 , and contact 14028 traveled along the path indicated by arrow 14030 . Since the magnitude of the leftward movement of the contacts 14024 , 14028 in FIG. 14L has not reached the threshold TT, the virtual object 11002 has not yet moved in response to the input. In FIG. 14M , the magnitude of the leftward movement of the contact 14024 and the contact 14028 has increased beyond the threshold TT, and the virtual object 11002 has been moved in the direction of movement of the contacts 14024 and 14028 . When the magnitude of the translational movement increases beyond the threshold TT, the required amount of movement to scale the virtual object 11002 is increased (eg, as indicated by the scaling movement meter 14004 , the scale The adjustment threshold ST has increased from ST to ST′), and the required amount of movement to rotate the virtual object 11002 is increased (eg, as indicated by the rotational movement meter 14006 , the rotation threshold RT ) increased from RT to RT'). In FIG. 14N , contacts 14024 , 14028 have been lifted off from touch screen 112 .

도 14o 내지 도 14z는 가상 객체(11002)를 병진시키기(예컨대, 가상 객체(11002)를 우측으로 이동시키기), 가상 객체(11002)를 축척조정하기(예컨대, 가상 객체(11002)의 크기를 증가시키기), 그리고 가상 객체(11002)를 회전시키기 위한 제스처들을 포함하는 입력을 예시한다. 도 14o에서, 터치 스크린(112)과의 접촉들(14032, 14036)이 검출된다. 도 14o 및 도 14p에서, 접촉(14032)은 화살표(14034)로 표시된 경로를 따라서 이동하고, 접촉(14036)은 화살표(14038)로 표시된 경로를 따라서 이동한다. 접촉들(14032, 14036)의 우향하는 이동의 크기는 임계치(TT)를 초과하여 증가하였고, 가상 객체(11002)는 접촉들(14032, 14036)의 이동 방향으로 이동되었다. 접촉들(14032, 14036)의 이동에 의한 임계치(TT)의 만족의 결과로서, 가상 객체(11002)를 축척조정하기 위한 이동의 요구되는 크기는 ST'으로 증가되고, 가상 객체(11002)를 회전시키기 위한 이동의 요구되는 크기는 RT'으로 증가된다. (도 14q의 병진 이동 측정기(14002)에 도시된 높은 워터 마크(water mark)(14043)로 표시된 바와 같이) 임계치(TT)가 만족된 후, 접촉(14032, 14036)의 임의의 측방향 이동은 가상 객체(11002)의 측방향 이동을 야기할 것이다.14O-14Z illustrate translating the virtual object 11002 (eg, moving the virtual object 11002 to the right), scaling the virtual object 11002 (eg, increasing the size of the virtual object 11002). ), and an input including gestures for rotating the virtual object 11002 is exemplified. In FIG. 14O , contacts 14032 , 14036 with touch screen 112 are detected. 14O and 14P , contact 14032 travels along the path indicated by arrow 14034 , and contact 14036 travels along the path indicated by arrow 14038 . The magnitude of the rightward movement of the contacts 14032 and 14036 increased beyond the threshold TT, and the virtual object 11002 was moved in the movement direction of the contacts 14032 and 14036 . As a result of the satisfaction of the threshold TT by the movement of the contacts 14032 , 14036 , the required amount of movement to scale the virtual object 11002 is increased to ST′, and the rotation of the virtual object 11002 is increased. The required amount of movement to make it is increased to RT'. After the threshold TT is satisfied (as indicated by the high water mark 14043 shown in the translation measurer 14002 in Figure 14q), any lateral movement of the contacts 14032, 14036 is will cause lateral movement of the virtual object 11002 .

도 14q 및 도 14r에서, 접촉(14032)은 화살표(14040)로 표시된 경로를 따라서 이동하고, 접촉(14036)은 화살표(14042)로 표시된 경로를 따라서 이동한다. 도 14r에서, 접촉(14036)으로부터 멀어지는 접촉(14032)의 이동의 크기는 원래 축척조정 임계치(ST)를 초과하였지만, 증가된 축척조정 임계치(ST')에 도달하지 않았다. 증가된 축척조정 이동 임계치(ST')가 적용되는 경우, 접촉(14036)으로부터 멀어지는 접촉(14032)의 이동의 크기가 증가된 축척조정 이동 임계치(ST')를 초과하여 증가할 때까지 축척조정이 발생하지 않아서, 가상 객체(11002)의 크기는 도 14q로부터 도 14r로 변화되지 않았다. 도 14r 및 도 14s에서, 접촉(14032)과 접촉(14046) 사이의 거리는, 접촉(14032)이 화살표(14044)로 표시된 경로를 따라서 이동하고 접촉(14036)이 화살표(14046)로 표시된 경로를 따라서 이동함에 따라 계속 증가한다. 도 14s에서, 접촉(14036)으로부터 멀어지는 접촉(14032)의 이동의 크기는 증가된 축척조정 임계치(ST')를 초과하였고, 가상 객체(11002)의 크기는 증가하였다. (도 14t의 축척조정 이동 측정기(14004)에 도시된 높은 워터 마크(14047)로 표시된 바와 같이) 임계치(ST')가 만족된 후, 접촉(14032, 14036)의 임의의 축척조정 이동은 가상 객체(11002)의 축척조정을 야기할 것이다.14Q and 14R , contact 14032 travels along the path indicated by arrow 14040 , and contact 14036 travels along the path indicated by arrow 14042 . In FIG. 14R , the magnitude of the movement of contact 14032 away from contact 14036 has exceeded the original scaling threshold ST, but has not reached the increased scaling threshold ST′. When an increased scaling movement threshold ST' is applied, scaling continues until the magnitude of movement of contact 14032 away from contact 14036 increases beyond the increased scaling movement threshold ST'. Since it did not occur, the size of the virtual object 11002 did not change from FIG. 14Q to FIG. 14R. 14R and 14S , the distance between contact 14032 and contact 14046 is such that contact 14032 travels along the path indicated by arrow 14044 and contact 14036 follows the path indicated by arrow 14046 . It continues to increase as you move. In FIG. 14S , the magnitude of movement of contact 14032 away from contact 14036 has exceeded the increased scaling threshold ST′, and the size of virtual object 11002 has increased. After the threshold ST' is satisfied (as indicated by the high water mark 14047 shown in the scaling movement meter 14004 in FIG. 14T ), any scaling movement of the contacts 14032 , 14036 is a virtual object. (11002) will cause scaling.

도 14t 및 도 14u에서, 접촉(14032)은 화살표(14048)로 표시된 경로를 따라서 이동하고, 접촉(14036)은 화살표(14050)로 표시된 경로를 따라서 이동한다. (병진 이동 측정기(14002)에 도시된 높은 워터 마크(14043)로 표시된 바와 같이) 임계치(TT)가 만족되었기 때문에, 가상 객체(11002)는 접촉들(14032, 14036)의 측방향 이동의 방향으로 자유롭게 이동한다.14T and 14U , contact 14032 travels along the path indicated by arrow 14048 , and contact 14036 travels along the path indicated by arrow 14050 . Since the threshold TT has been satisfied (as indicated by the high water mark 14043 shown in the translation measurer 14002 ), the virtual object 11002 moves in the direction of the lateral movement of the contacts 14032 , 14036 . move freely

도 14v 및 도 14w에서, 접촉(14032)은 화살표(14052)로 표시된 경로를 따라서 이동하고, 접촉(14036)은 화살표(14054)로 표시된 경로를 따라서 이동한다. 접촉들(14032, 14036)의 이동은 병진 이동(접촉들(14032, 14036)의 좌향하는 이동) 및 축척조정 이동(접촉(14032)과 접촉(14036) 사이의 거리를 감소시키는 이동(예컨대, 핀치 제스처))을 포함한다. (병진 이동 측정기(14002)에 도시된 높은 워터 마크(14043)로 표시된 바와 같이) 병진 임계치(TT)가 만족되었기 때문에, 가상 객체(11002)는 접촉들(14032, 14036)의 측방향 이동의 방향으로 자유롭게 이동하고, (축척조정 이동 측정기(14004)에 도시된 높은 워터 마크(14047)로 표시된 바와 같이) 증가된 축척조정 임계치(ST')가 만족되었기 때문에, 가상 객체(11002)는 접촉(14036)을 향한 접촉(14032)의 이동에 응답하여 자유롭게 축척조정된다. 도 14v로부터 도 14w로, 가상 객체(11002)의 크기는 감소되었고, 가상 객체(11002)는 화살표(14052)로 표시된 경로를 따른 접촉(14032)의 이동 및 화살표(14054)로 표시된 경로를 따른 접촉(14036)의 이동에 응답하여 좌향으로 이동하였다.14V and 14W , contact 14032 travels along the path indicated by arrow 14052 , and contact 14036 travels along the path indicated by arrow 14054 . Movement of the contacts 14032 , 14036 includes a translational movement (a leftward movement of the contacts 14032 , 14036 ) and a scaling movement (a movement that reduces the distance between the contact 14032 and the contact 14036 , such as a pinch). gestures)). Since the translation threshold TT has been satisfied (as indicated by the high water mark 14043 shown in the translation measurer 14002 ), the virtual object 11002 moves in the direction of lateral movement of the contacts 14032 , 14036 . Since the virtual object 11002 is free to move to , and the increased scaling threshold ST' has been satisfied (as indicated by the high water mark 14047 shown in the scaling motion meter 14004), the virtual object 11002 is contacted 14036. ) is freely scaled in response to movement of contact 14032 towards 14V to 14W , the size of the virtual object 11002 has been reduced, and the virtual object 11002 is the movement of the contact 14032 along the path indicated by the arrow 14052 and the contact along the path indicated by the arrow 14054 . It moved to the left in response to the movement of (14036).

도 14x 내지 도 14z에서, 접촉(14032)은 화살표(14056)로 표시된 경로를 따라 반시계 방향으로 회전 이동하고, 접촉(14036)은 화살표(14058)로 표시된 경로를 따라 반시계 방향으로 회전 이동한다. 도 14y에서, 접촉(14032) 및 접촉(14036)의 회전 이동의 크기는 원래 축척조정 임계치(RT)를 초과하였지만, 증가된 축척조정 임계치(RT')에 도달하지 않았다. 증가된 축척조정 이동 임계치(RT')가 적용되는 경우, 접촉들(14032, 14036)의 회전 이동의 크기가 증가된 회전 이동 임계치(RT')를 초과하여 증가할 때까지 가상 객체(11002)의 회전이 발생하지 않아서, 가상 객체(11002)는 도 14x로부터 도 14y로 회전하지 않았다. 도 14y 및 도 14z에서, 접촉(14032, 14046)은 접촉(14032)이 화살표(14060)로 표시된 경로를 따라서 이동하고 접촉(14036)이 화살표(14062)로 표시된 경로를 따라서 이동함에 따라 반시계 방향으로 계속 회전 이동한다. 도 14z에서, 접촉(14032) 및 접촉(14036)의 회전 이동의 크기는 증가된 축척조정 임계치(RT')를 초과하였고, 가상 객체(11002)는 입력에 응답하여 회전하였다.14X-14Z , contact 14032 rotates counterclockwise along the path indicated by arrow 14056 , and contact 14036 rotates counterclockwise along the path indicated by arrow 14058 . . In FIG. 14Y , the magnitude of the rotational movement of contact 14032 and contact 14036 exceeded the original scaling threshold RT, but did not reach the increased scaling threshold RT′. When an increased scaling movement threshold RT' is applied, the amount of rotational movement of the contacts 14032, 14036 increases beyond the increased rotational movement threshold RT' of the virtual object 11002. No rotation occurred, so the virtual object 11002 did not rotate from FIG. 14X to FIG. 14Y. 14Y and 14Z , contacts 14032 and 14046 are counterclockwise as contact 14032 travels along the path indicated by arrow 14060 and contact 14036 travels along the path indicated by arrow 14062 . continue to rotate. In FIG. 14Z , the magnitude of the rotational movement of contact 14032 and contact 14036 exceeded the increased scaling threshold RT′, and virtual object 11002 rotated in response to the input.

도 14aa 내지 도 14ad는 이동의 제1 임계치 크기가 제1 객체 조작 거동에 대해 충족된다는 결정에 따라, 제2 객체 조작 거동에 필요한 이동의 제2 임계치 크기를 증가시키기 위한 동작들을 예시하는 흐름도들이다. 도 14aa 내지 도 14ad와 관련하여 기술된 동작들은 디스플레이 생성 컴포넌트(예컨대, 디스플레이, 프로젝터, 헤드 업 디스플레이 등) 및 터치 감응형 표면(예컨대, 터치 감응형 표면, 또는 디스플레이 생성 컴포넌트 및 터치 감응형 표면 둘 모두로서의 역할을 하는 터치 스크린 디스플레이)을 갖는 전자 디바이스(예컨대, 도 3의 디바이스(300), 또는 도 1a의 휴대용 다기능 디바이스(100))에서 수행된다. 도 14aa 내지 도 14ad와 관련하여 기술된 일부 동작들이 선택적으로 조합되고/되거나, 일부 동작들의 순서가 선택적으로 변경된다.14AA-14A are flow diagrams illustrating operations for increasing a second threshold magnitude of movement required for a second object manipulation behavior upon determining that the first threshold magnitude of movement is satisfied for the first object manipulation behavior. The operations described in connection with FIGS. 14A-A-D may include a display generating component (eg, a display, a projector, a heads up display, etc.) and a touch-sensitive surface (eg, a touch-sensitive surface, or both a display generating component and a touch-sensitive surface). It is performed in an electronic device (eg, device 300 of FIG. 3 , or portable multifunction device 100 of FIG. 1A ) with a touch screen display that acts as both. Some of the operations described in connection with FIGS. 14AA to 14A are selectively combined and/or the order of some operations is selectively changed.

동작(14066)에서, 하나 이상의 접촉들의 이동을 포함하는 사용자 입력의 제1 부분이 검출된다. 동작(14068)에서, (예컨대, 가상 객체(11002)에 대응하는 위치에서의) 하나 이상의 접촉들의 이동이 객체 회전 임계치(예컨대, 회전 이동 측정기(14006)에 의해 표시되는 회전 임계치(RT))를 초과하여 증가하는지 여부가 결정된다. 하나 이상의 접촉들의 이동이 (예컨대, 도 14b 내지 도 14d와 관련하여 기술된 바와 같이) 객체 회전 임계치를 초과하여 증가한다는 결정에 따라, 흐름은 동작(14070)으로 진행한다. 하나 이상의 접촉들의 이동이 객체 회전 임계치를 초과하여 증가하지 않는다는 결정에 따라, 흐름은 동작(14074)으로 진행한다.At operation 14066 , a first portion of the user input comprising movement of one or more contacts is detected. In operation 14068 , movement of the one or more contacts (eg, at a location corresponding to virtual object 11002 ) exceeds an object rotation threshold (eg, rotation threshold RT indicated by rotational movement measurer 14006 ). It is determined whether or not to increase in excess. Upon determining that the movement of the one or more contacts increases above the object rotation threshold (eg, as described with respect to FIGS. 14B-14D ), flow proceeds to operation 14070 . Upon determining that the movement of the one or more contacts does not increase beyond the object rotation threshold, flow proceeds to operation 14074 .

동작(14070)에서, 객체(예컨대, 가상 객체(11002))는 (예컨대, 도 14b 내지 도 14d와 관련하여 기술된 바와 같이) 사용자 입력의 제1 부분에 기초하여 회전된다. 동작(14072)에서, 객체 병진 임계치는 (예컨대, 도 14d와 관련하여 기술된 바와 같이, TT로부터 TT'으로) 증가되고, 객체 축척조정 임계치는 (예컨대, 도 14d와 관련하여 기술된 바와 같이, ST로부터 ST'으로) 증가된다. 흐름은, A에서 표시된 바와 같이, 동작(14072)으로부터 도 14ab의 동작(14086)으로 진행한다.At operation 14070 , the object (eg, virtual object 11002 ) is rotated based on the first portion of the user input (eg, as described with respect to FIGS. 14B-14D ). At operation 14072 , the object translation threshold is increased (eg, from TT to TT′, as described with respect to FIG. 14D ), and the object scaling threshold is increased (eg, as described with respect to FIG. 14D ); ST to ST') is incremented. Flow proceeds from operation 14072 to operation 14086 of FIG. 14A , as indicated in A.

동작(14074)에서, (예컨대, 가상 객체(11002)에 대응하는 위치에서의) 하나 이상의 접촉들의 이동이 객체 병진 임계치(예컨대, 병진 이동 측정기(14002)에 의해 표시되는 병진 임계치(TT))를 초과하여 증가하는지 여부가 결정된다. 하나 이상의 접촉들의 이동이 (예컨대, 도 14k 내지 도 14m과 관련하여 기술된 바와 같이) 객체 병진 임계치를 초과하여 증가한다는 결정에 따라, 흐름은 동작(14076)으로 진행한다. 하나 이상의 접촉들의 이동이 객체 병진 임계치를 초과하여 증가하지 않는다는 결정에 따라, 흐름은 동작(14080)으로 진행한다.In operation 14074 , movement of the one or more contacts (eg, at a location corresponding to virtual object 11002 ) passes an object translation threshold (eg, a translation threshold TT indicated by translational movement measurer 14002 ). It is determined whether or not to increase in excess. Upon determining that the movement of one or more contacts increases above the object translation threshold (eg, as described with respect to FIGS. 14K-14M ), flow proceeds to operation 14076 . Upon determining that the movement of the one or more contacts does not increase beyond the object translation threshold, flow proceeds to operation 14080 .

동작(14076)에서, 객체(예컨대, 가상 객체(11002))는 (예컨대, 도 14k 내지 도 14m과 관련하여 기술된 바와 같이) 사용자 입력의 제1 부분에 기초하여 병진된다. 동작(14078)에서, 객체 회전 임계치는 (예컨대, 도 14m과 관련하여 기술된 바와 같이, RT로부터 RT'으로) 증가되고, 객체 축척조정 임계치는 (예컨대, 도 14m과 관련하여 기술된 바와 같이, ST로부터 ST'으로) 증가된다. 흐름은, B에서 표시된 바와 같이, 동작(14078)으로부터 도 14ac의 동작(14100)으로 진행한다.At operation 14076 , the object (eg, virtual object 11002 ) is translated based on the first portion of the user input (eg, as described in connection with FIGS. 14K-14M ). In operation 14078 , the object rotation threshold is increased (eg, from RT to RT′, as described with respect to FIG. 14M ), and the object scaling threshold is increased (eg, as described with respect to FIG. 14M ); ST to ST') is incremented. Flow proceeds from operation 14078 to operation 14100 of FIG. 14A , as indicated at B.

동작(14080)에서, (예컨대, 가상 객체(11002)에 대응하는 위치에서의) 하나 이상의 접촉들의 이동이 객체 축척조정 임계치(예컨대, 축척조정 이동 측정기(14004)에 의해 표시되는 축척조정 임계치(ST))를 초과하여 증가하는지 여부가 결정된다. 하나 이상의 접촉들의 이동이 (예컨대, 도 14g 내지 도 14i와 관련하여 기술된 바와 같이) 객체 축척조정 임계치를 초과하여 증가한다는 결정에 따라, 흐름은 동작(14082)으로 진행한다. 하나 이상의 접촉들의 이동이 객체 축척조정 임계치를 초과하여 증가하지 않는다는 결정에 따라, 흐름은 동작(14085)으로 진행한다.In an operation 14080 , movement of one or more contacts (eg, at a location corresponding to virtual object 11002 ) is indicated by an object scaling threshold (eg, a scaling movement measurer 14004 ), a scaling threshold ST ))), it is determined whether or not it increases. Upon determining that the movement of one or more contacts increases above the object scaling threshold (eg, as described with respect to FIGS. 14G-14I ), flow proceeds to operation 14082 . Upon determining that the movement of the one or more contacts does not increase beyond the object scaling threshold, flow proceeds to operation 14085 .

동작(14082)에서, 객체(예컨대, 가상 객체(11002))는 (예컨대, 도 14g 내지 도 14i와 관련하여 기술된 바와 같이) 사용자 입력의 제1 부분에 기초하여 축척조정된다. 동작(14084)에서, 객체 회전 임계치는 (예컨대, 도 14i와 관련하여 기술된 바와 같이, RT로부터 RT'으로) 증가되고, 객체 병진 임계치는 (예컨대, 도 14i와 관련하여 기술된 바와 같이, TT로부터 TT'으로) 증가된다. 흐름은, C에서 표시된 바와 같이, 동작(14084)으로부터 도 14ad의 동작(14114)으로 진행한다.At operation 14082 , the object (eg, virtual object 11002 ) is scaled based on the first portion of the user input (eg, as described with respect to FIGS. 14G-14I ). At operation 14084 , the object rotation threshold is increased (eg, from RT to RT′, as described with respect to FIG. 14I ) and the object translation threshold is increased (eg, as described with respect to FIG. 14I , TT to TT') is increased. Flow proceeds from operation 14084 to operation 14114 of Figure 14Ad, as indicated at C.

동작(14085)에서, 하나 이상의 접촉들의 이동을 포함하는 사용자 입력의 추가 부분이 검출된다. 흐름은 동작(14086)으로부터 동작(14066)으로 진행한다.At operation 14085 , an additional portion of the user input comprising movement of one or more contacts is detected. Flow proceeds from operation 14086 to operation 14066 .

도 14ab에서, 동작(14086)에서, 하나 이상의 접촉들의 이동을 포함하는 사용자 입력의 추가 부분이 검출된다. 흐름은 동작(14086)으로부터 동작(14088)으로 진행한다.In FIG. 14A , in operation 14086, an additional portion of the user input including movement of one or more contacts is detected. Flow proceeds from operation 14086 to operation 14088 .

동작(14088)에서, 하나 이상의 접촉들의 이동이 회전 이동인지 여부가 결정된다. 하나 이상의 접촉들의 이동이 회전 이동이라는 결정에 따라, 흐름은 동작(14090)으로 진행한다. 하나 이상의 접촉들의 이동이 회전 이동이 아니라는 결정에 따라, 흐름은 동작(14092)으로 진행한다.At operation 14088 , it is determined whether the movement of the one or more contacts is a rotational movement. Upon determining that the movement of the one or more contacts is a rotational movement, flow proceeds to operation 14090 . Upon determining that the movement of the one or more contacts is not a rotational movement, flow proceeds to operation 14092 .

동작(14090)에서, 객체(예컨대, 가상 객체(11002))는 (예컨대, 도 14d 및 도 14e와 관련하여 기술된 바와 같이) 사용자 입력의 추가 부분에 기초하여 회전된다. 회전 임계치가 이전에 충족되었기 때문에, 객체는 추가 회전 입력에 따라 자유롭게 회전한다.At operation 14090 , the object (eg, virtual object 11002 ) is rotated based on the additional portion of the user input (eg, as described with respect to FIGS. 14D and 14E ). Because the rotation threshold was previously met, the object rotates freely in response to additional rotation input.

동작(14092)에서, 하나 이상의 접촉들의 이동이 증가된 객체 병진 임계치(예컨대, 도 14d의 병진 이동 측정기(14002)에 의해 표시된 병진 임계치(TT'))를 초과하여 증가하는지 여부가 결정된다. 하나 이상의 접촉들의 이동이 증가된 객체 병진 임계치를 초과하여 증가한다는 결정에 따라, 흐름은 동작(14094)으로 진행한다. 하나 이상의 접촉들의 이동이 증가된 객체 병진 임계치를 초과하여 증가하지 않는다는 결정에 따라, 흐름은 동작(14096)으로 진행한다.At operation 14092 , it is determined whether the movement of one or more contacts increases beyond an increased object translation threshold (eg, a translation threshold TT′ indicated by translational movement measurer 14002 of FIG. 14D ). In accordance with a determination that movement of one or more contacts increases above the increased object translation threshold, flow proceeds to operation 14094 . Upon determining that the movement of the one or more contacts does not increase beyond the increased object translation threshold, flow proceeds to operation 14096 .

동작(14094)에서, 객체(예컨대, 가상 객체(11002))는 사용자 입력의 추가 부분에 기초하여 병진된다.At operation 14094 , the object (eg, virtual object 11002 ) is translated based on the additional portion of the user input.

동작(14096)에서, 하나 이상의 접촉들의 이동이 증가된 객체 축척조정 임계치(예컨대, 도 14d의 축척조정 이동 측정기(14004)에 의해 표시된 축척조정 임계치(ST'))를 초과하여 증가하는지 여부가 결정된다. 하나 이상의 접촉들의 이동이 증가된 객체 축척조정 임계치를 초과하여 증가한다는 결정에 따라, 흐름은 동작(14098)으로 진행한다. 하나 이상의 접촉들의 이동이 증가된 객체 축척조정 임계치를 초과하여 증가하지 않는다는 결정에 따라, 흐름은 동작(14086)으로 복귀한다.At operation 14096 , it is determined whether movement of the one or more contacts increases beyond an increased object scaling threshold (eg, the scaling threshold ST′ indicated by the scaling motion measurer 14004 in FIG. 14D ). do. In accordance with a determination that the movement of one or more contacts increases beyond the increased object scaling threshold, flow proceeds to operation 14098 . Upon determining that the movement of the one or more contacts does not increase beyond the increased object scaling threshold, flow returns to operation 14086 .

동작(14098)에서, 객체(예컨대, 가상 객체(11002))는 사용자 입력의 추가 부분에 기초하여 축척조정된다.At operation 14098 , the object (eg, virtual object 11002 ) is scaled based on the additional portion of the user input.

도 14ac에서, 동작(14100)에서, 하나 이상의 접촉들의 이동을 포함하는 사용자 입력의 추가 부분이 검출된다. 흐름은 동작(14100)으로부터 동작(14102)으로 진행한다.In FIG. 14A , in operation 14100 , an additional portion of the user input including movement of one or more contacts is detected. Flow proceeds from operation 14100 to operation 14102 .

동작(14102)에서, 하나 이상의 접촉들의 이동이 병진 이동인지 여부가 결정된다. 하나 이상의 접촉들의 이동이 병진 이동이라는 결정에 따라, 흐름은 동작(140104)으로 진행한다. 하나 이상의 접촉들의 이동이 병진 이동이 아니라는 결정에 따라, 흐름은 동작(14106)으로 진행한다.At operation 14102 , it is determined whether the movement of the one or more contacts is a translational movement. Upon determining that the movement of the one or more contacts is a translational movement, flow proceeds to operation 140104 . Upon determining that the movement of the one or more contacts is not a translational movement, flow proceeds to operation 14106 .

동작(14104)에서, 객체(예컨대, 가상 객체(11002))는 사용자 입력의 추가 부분에 기초하여 병진된다. 병진 임계치가 이전에 충족되었기 때문에, 객체는 추가 병진 입력에 따라 자유롭게 병진한다.At operation 14104 , the object (eg, virtual object 11002 ) is translated based on the additional portion of the user input. Since the translation threshold has been previously met, the object is free to translate according to additional translation input.

동작(14106)에서, 하나 이상의 접촉들의 이동이 증가된 객체 회전 임계치(예컨대, 도 14m의 회전 이동 측정기(14006)에 의해 표시된 회전 임계치(RT'))를 초과하여 증가하는지 여부가 결정된다. 하나 이상의 접촉들의 이동이 증가된 객체 회전 임계치를 초과하여 증가한다는 결정에 따라, 흐름은 동작(14108)으로 진행한다. 하나 이상의 접촉들의 이동이 증가된 객체 회전 임계치를 초과하여 증가하지 않는다는 결정에 따라, 흐름은 동작(14110)으로 진행한다.At operation 14106 , it is determined whether movement of the one or more contacts increases above an increased object rotation threshold (eg, rotation threshold RT′ indicated by rotational movement measurer 14006 of FIG. 14M ). Upon determining that the movement of the one or more contacts increases above the increased object rotation threshold, flow proceeds to operation 14108 . Upon determining that the movement of the one or more contacts does not increase beyond the increased object rotation threshold, flow proceeds to operation 14110 .

동작(14108)에서, 객체(예컨대, 가상 객체(11002))는 사용자 입력의 추가 부분에 기초하여 회전된다.At operation 14108 , the object (eg, virtual object 11002 ) is rotated based on the additional portion of the user input.

동작(14110)에서, 하나 이상의 접촉들의 이동이 증가된 객체 축척조정 임계치(예컨대, 도 14m의 축척조정 이동 측정기(14004)에 의해 표시된 축척조정 임계치(ST'))를 초과하여 증가하는지 여부가 결정된다. 하나 이상의 접촉들의 이동이 증가된 객체 축척조정 임계치를 초과하여 증가한다는 결정에 따라, 흐름은 동작(14112)으로 진행한다. 하나 이상의 접촉들의 이동이 증가된 객체 축척조정 임계치를 초과하여 증가하지 않는다는 결정에 따라, 흐름은 동작(14100)으로 복귀한다.At operation 14110 , it is determined whether movement of the one or more contacts increases beyond an increased object scaling threshold (eg, the scaling threshold ST′ indicated by the scaling motion measurer 14004 in FIG. 14M ). do. Upon determining that the movement of one or more contacts increases beyond the increased object scaling threshold, flow proceeds to operation 14112 . Upon determining that the movement of the one or more contacts does not increase beyond the increased object scaling threshold, flow returns to operation 14100 .

동작(14112)에서, 객체(예컨대, 가상 객체(11002))는 사용자 입력의 추가 부분에 기초하여 축척조정된다.At operation 14112 , the object (eg, virtual object 11002 ) is scaled based on the additional portion of the user input.

도 14ad에서, 동작(14114)에서, 하나 이상의 접촉들의 이동을 포함하는 사용자 입력의 추가 부분이 검출된다. 흐름은 동작(14114)으로부터 동작(14116)으로 진행한다.In FIG. 14A , in operation 14114 , an additional portion of the user input including movement of one or more contacts is detected. Flow proceeds from operation 14114 to operation 14116 .

동작(14116)에서, 하나 이상의 접촉들의 이동이 축척조정 이동인지 여부가 결정된다. 하나 이상의 접촉들의 이동이 축척조정 이동이라는 결정에 따라, 흐름은 동작(140118)으로 진행한다. 하나 이상의 접촉들의 이동이 축척조정 이동이 아니라는 결정에 따라, 흐름은 동작(14120)으로 진행한다.At operation 14116 , it is determined whether the movement of the one or more contacts is a scaling movement. Upon determining that the movement of the one or more contacts is a scaling movement, flow proceeds to operation 140118 . Upon determining that the movement of one or more contacts is not a scaling movement, flow proceeds to operation 14120 .

동작(14118)에서, 객체(예컨대, 가상 객체(11002))는 사용자 입력의 추가 부분에 기초하여 축척조정된다. 축척조정 임계치가 이전에 충족되었기 때문에, 객체는 추가 축척조정 입력에 따라 자유롭게 축척조정한다.At operation 14118 , the object (eg, virtual object 11002 ) is scaled based on the additional portion of the user input. Because the scaling threshold was previously met, the object is free to scale according to additional scaling inputs.

동작(14120)에서, 하나 이상의 접촉들의 이동이 증가된 객체 회전 임계치(예컨대, 도 14i의 회전 이동 측정기(14006)에 의해 표시된 회전 임계치(RT'))를 초과하여 증가하는지 여부가 결정된다. 하나 이상의 접촉들의 이동이 증가된 객체 회전 임계치를 초과하여 증가한다는 결정에 따라, 흐름은 동작(14122)으로 진행한다. 하나 이상의 접촉들의 이동이 증가된 객체 회전 임계치를 초과하여 증가하지 않는다는 결정에 따라, 흐름은 동작(14124)으로 진행한다.At operation 14120 , it is determined whether movement of the one or more contacts increases beyond an increased object rotation threshold (eg, rotation threshold RT′ indicated by rotational movement measurer 14006 of FIG. 14I ). Upon determining that movement of the one or more contacts increases beyond the increased object rotation threshold, flow proceeds to operation 14122 . Upon determining that the movement of the one or more contacts does not increase beyond the increased object rotation threshold, flow proceeds to operation 14124 .

동작(14122)에서, 객체(예컨대, 가상 객체(11002))는 사용자 입력의 추가 부분에 기초하여 회전된다.At operation 14122 , the object (eg, virtual object 11002 ) is rotated based on the additional portion of the user input.

동작(14124)에서, 하나 이상의 접촉들의 이동이 증가된 객체 병진 임계치(예컨대, 도 14i의 병진 이동 측정기(14002)에 의해 표시된 병진 임계치(TT'))를 초과하여 증가하는지 여부가 결정된다. 하나 이상의 접촉들의 이동이 증가된 객체 병진 임계치를 초과하여 증가한다는 결정에 따라, 흐름은 동작(14126)으로 진행한다. 하나 이상의 접촉들의 이동이 증가된 객체 병진 임계치를 초과하여 증가하지 않는다는 결정에 따라, 흐름은 동작(14114)으로 진행한다.At operation 14124 , it is determined whether the movement of the one or more contacts increases beyond an increased object translation threshold (eg, a translation threshold TT′ indicated by translational movement measurer 14002 in FIG. 14I ). Upon determining that movement of the one or more contacts increases above the increased object translation threshold, flow proceeds to operation 14126 . Upon determining that the movement of the one or more contacts does not increase beyond the increased object translation threshold, flow proceeds to operation 14114 .

도 15a 내지 도 15ai는 디바이스의 이동이 가상 객체로 하여금 하나 이상의 디바이스 카메라들의 디스플레이된 시야의 외측으로 이동하게 한다는 결정에 따라 오디오 경보를 생성하기 위한 예시적인 사용자 인터페이스들을 예시한다. 이들 도면의 사용자 인터페이스들은 도 8a 내지 도 8e, 도 9a 내지 도 9d, 도 10a 내지 도 10d, 도 16a 내지 도 16g, 도 17a 내지 도 17d, 도 18a 내지 도 18i, 도 19a 내지 도 19h, 및 도 20a 내지 도 20f의 프로세스들을 포함하여 하기에 기술되는 프로세스들을 예시하는 데 사용된다. 용이한 설명을 위해, 실시예들의 일부는 터치 감응형 디스플레이 시스템(112)을 갖는 디바이스 상에서 수행되는 동작들을 참조하여 논의될 것이다. 이러한 실시예들에서, 포커스 선택자는, 선택적으로: 개개의 손가락 또는 스타일러스 접촉이거나, 손가락 또는 스타일러스 접촉에 대응하는 대표 지점(예컨대, 개개의 접촉의 중심, 또는 개개의 접촉과 연관된 지점)이거나, 또는 터치 감응형 디스플레이 시스템(112) 상에서 검출된 둘 이상의 접촉들의 중심이다. 그러나, 유사한 동작들이, 선택적으로, 도면에 도시된 사용자 인터페이스들을 디스플레이(450) 상에 포커스 선택자와 함께 디스플레이하면서, 터치 감응형 표면(451) 상에서의 접촉들을 검출하는 것에 응답하여 디스플레이(450) 및 별개의 터치 감응형 표면(451)을 갖는 디바이스 상에서 수행된다.15A-15A illustrate example user interfaces for generating an audio alert upon a determination that movement of the device causes the virtual object to move outside the displayed field of view of one or more device cameras. The user interfaces of these figures are shown in FIGS. 8A-8E, 9A-9D, 10A-10D, 16A-16G, 17A-17D, 18A-18I, 19A-19H, and FIGS. 20A-20F are used to illustrate the processes described below. For ease of description, some of the embodiments will be discussed with reference to operations performed on a device having a touch-sensitive display system 112 . In such embodiments, the focus selector is optionally: an individual finger or stylus contact, a representative point corresponding to the finger or stylus contact (eg, a center of an individual contact, or a point associated with the individual contact), or It is the center of two or more contacts detected on the touch-sensitive display system 112 . However, similar operations are performed with the display 450 and the display 450 in response to detecting contacts on the touch-sensitive surface 451, optionally displaying the user interfaces shown in the figure with a focus selector on the display 450. It is performed on a device having a separate touch-sensitive surface 451 .

도 15a 내지 도 15ai는 액세스가능성 특징부가 활성일 때 발생하는 사용자 인터페이스들 및 디바이스 동작들을 예시한다. 일부 실시예들에서, 액세스가능성 특징부는 (예컨대, 전술된 입력 제스처들을 제공하는 제한된 능력을 갖는 사용자들에 대한 디바이스 특징부들에 액세스하는 것의 용이성을 증가시키기 위해) 감소된 수의 입력들 또는 대안적인 입력들이 디바이스 특징부들에 액세스하는 데 사용가능하게 하는 모드를 포함한다. 예를 들어, 액세스가능성 모드는, 제1 입력 제스처(예컨대, 스와이프 입력)가 이용가능한 디바이스 동작들을 통해 전진 또는 역진하는 데 사용되고 선택 입력(예컨대, 더블 탭 입력)이 현재 표시된 동작을 수행하는 데 사용되는 스위치 제어 모드이다. 사용자가 디바이스와 상호작용함에 따라, (예컨대, 동작이 수행되었다는 것을 나타내는 피드백을 사용자에게 제공하기, 디바이스의 하나 이상의 카메라들의 시야 또는 스테이징 사용자 인터페이스에 대한 가상 객체(11002)의 현재 디스플레이 상태를 나타내기 등을 위해) 오디오 경보들이 생성된다.15A-15AI illustrate user interfaces and device actions that occur when an accessibility feature is active. In some embodiments, the accessibility feature includes a reduced number of inputs or alternatives (eg, to increase ease of accessing device features for users with limited ability to provide the input gestures described above) includes a mode in which inputs are made available to access device features. For example, the accessibility mode may be such that a first input gesture (eg, a swipe input) is used to advance or backward through available device actions and a select input (eg, a double tap input) is used to perform a currently displayed operation. This is the switch control mode used. As the user interacts with the device (eg, providing the user with feedback indicating that an action has been performed, indicating the current display state of the virtual object 11002 to the field of view of one or more cameras of the device or a staging user interface) etc.) audio alerts are generated.

도 15a에서, 메시징 사용자 인터페이스(5008)는 3차원 가상 객체(11002)의 2차원 표현을 포함한다. 선택 커서(15001)가 (예컨대, 현재 선택된 동작이 가상 객체(11002)에 대해 수행될 동작이라는 것을 나타내기 위해) 3차원 가상 객체(11002)를 둘러싸서 도시되어 있다. 접촉(15002)에 의한 입력(예컨대, 더블 탭 입력)이 (예컨대, 스테이징 사용자 인터페이스(6010) 내에 가상 객체(11002)의 3차원 표현을 디스플레이하는) 현재 표시된 동작을 수행하기 위해 검출된다. 입력에 응답하여, 메시징 사용자 인터페이스(5060)의 디스플레이는, 도 15b에 도시된 바와 같이, 스테이징 사용자 인터페이스(6010)의 디스플레이로 대체된다.In FIG. 15A , messaging user interface 5008 includes a two-dimensional representation of three-dimensional virtual object 11002 . A selection cursor 15001 is shown surrounding the three-dimensional virtual object 11002 (eg, to indicate that the currently selected operation is an operation to be performed on the virtual object 11002 ). An input by contact 15002 (eg, a double tap input) is detected to perform a currently displayed action (eg, displaying a three-dimensional representation of virtual object 11002 within staging user interface 6010 ). In response to the input, the display of the messaging user interface 5060 is replaced with the display of the staging user interface 6010 , as shown in FIG. 15B .

도 15b에서, 가상 객체(11002)가 스테이징 사용자 인터페이스(6010) 내에 디스플레이된다. 디바이스의 상태를 나타내기 위해, 15008로 표시된 바와 같이, 오디오 경보가 (예컨대, 디바이스 스피커(111)에 의해) 생성된다. 예를 들어, 오디오 경보(15008)는 15010으로 나타낸 바와 같은 알림, "chair is now shown in the staging view(의자가 이제 스테이징 뷰 내에 보입니다)"를 포함한다.In FIG. 15B , virtual object 11002 is displayed within staging user interface 6010 . To indicate the status of the device, an audio alert is generated (eg, by the device speaker 111 ), as indicated at 15008 . For example, audio alert 15008 includes a notification as indicated by 15010, “chair is now shown in the staging view.”

도 15b에서, 선택 커서(15001)가 (예컨대, 현재 선택된 동작이 공유 동작이라는 것을 나타내기 위해) 공유 제어부(6020)를 둘러싸서 도시되어 있다. 접촉(15004)에 의한 입력(예컨대, 화살표(15006)로 표시된 경로를 따른 우향하는 스와이프)이 검출된다. 입력에 응답하여, 선택된 동작은 다음 동작으로 전진된다.In FIG. 15B , a selection cursor 15001 is shown surrounding the sharing control 6020 (eg, to indicate that the currently selected operation is a sharing operation). An input by contact 15004 (eg, a rightward swipe along the path indicated by arrow 15006) is detected. In response to the input, the selected action advances to the next action.

도 15c에서, 틸트 업(tilt up) 제어부(15012)가 (예컨대, 현재 선택된 동작이 디스플레이된 가상 객체(11002)를 상향으로 기울이기 위한 동작인 것을 나타내기 위해) 디스플레이된다. 오디오 경보가 디바이스의 상태를 나타내기 위해, 15014로 표시된 바와 같이, 생성된다. 예를 들어, 오디오 경보는 15016으로 나타낸 바와 같은 알림, "selected: tilt up button(선택된 것: 틸트 업 버튼)"을 포함한다. 접촉(15018)에 의한 입력(예컨대, 화살표(15020)로 표시된 경로를 따른 우향하는 스와이프)이 검출된다. 입력에 응답하여, 선택된 동작은 다음 동작으로 전진된다.In FIG. 15C , the tilt up control unit 15012 is displayed (eg, to indicate that the currently selected operation is an operation for tilting the displayed virtual object 11002 upward). An audio alert is generated, as indicated at 15014 , to indicate the status of the device. For example, an audio alert includes a notification, as indicated at 15016, "selected: tilt up button." An input by contact 15018 (eg, a rightward swipe along the path indicated by arrow 15020) is detected. In response to the input, the selected action advances to the next action.

도 15d에서, 틸트 다운(tilt down) 제어부(15022)가 (예컨대, 현재 선택된 동작이 디스플레이된 가상 객체(11002)를 하향으로 기울이기 위한 동작인 것을 나타내기 위해) 디스플레이된다. 오디오 경보가 디바이스의 상태를 나타내기 위해, 15024로 표시된 바와 같이, 생성된다. 예를 들어, 오디오 경보는 15026으로 나타낸 바와 같은 알림, "selected: tilt down button(선택된 것: 틸트 다운 버튼)"을 포함한다. 접촉(15028)에 의한 입력(예컨대, 더블 탭 입력)이 검출된다. 입력에 응답하여, 선택된 동작이 수행된다(예컨대, 가상 객체(11002)는 스테이징 뷰 내에서 하향으로 기울어진다).In FIG. 15D , the tilt down control unit 15022 is displayed (eg, to indicate that the currently selected operation is an operation for tilting the displayed virtual object 11002 downward). An audio alert is generated, as indicated at 15024, to indicate the status of the device. For example, an audio alert includes a notification, as indicated by 15026, "selected: tilt down button." An input by contact 15028 (eg, a double tap input) is detected. In response to the input, the selected action is performed (eg, virtual object 11002 is tilted downward within the staging view).

도 15e에서, 가상 객체(11002)는 스테이징 뷰 내에서 하향으로 기울어져 있다. 오디오 경보가 디바이스의 상태를 나타내기 위해, 15030으로 표시된 바와 같이, 생성된다. 예를 들어, 오디오 경보는 15032로 나타낸 바와 같은 알림, "Chair tilted five degrees down. Chair is now tilted 10 degrees toward the screen(의자가 아래로 5도 기울었습니다. 의자가 이제 스크린을 향해 10도 기울어집니다)"를 포함한다.In FIG. 15E , virtual object 11002 is tilted downward within the staging view. An audio alert is generated, as indicated at 15030, to indicate the status of the device. For example, an audio alert can trigger a notification such as 15032, "Chair tilted five degrees down. Chair is now tilted 10 degrees toward the screen. Chair is now tilted 5 degrees down toward the screen. lose)".

도 15f에서, 접촉(15034)에 의한 입력(예컨대, 화살표(15036)로 표시된 경로를 따른 우향하는 스와이프)이 검출된다. 입력에 응답하여, 선택된 동작은 다음 동작으로 전진된다.In FIG. 15F , input by contact 15034 (eg, a right swipe along the path indicated by arrow 15036 ) is detected. In response to the input, the selected action advances to the next action.

도 15g에서, 시계방향 회전 제어부(15038)가 (예컨대, 현재 선택된 동작이 디스플레이된 가상 객체(11002)를 시계방향으로 회전시키기 위한 동작인 것을 나타내기 위해) 디스플레이된다. 오디오 경보(15040)는 15042로 나타낸 바와 같은 알림, "selected: rotate clockwise button(선택된 것: 시계방향 회전 버튼)"을 포함한다. 접촉(15044)에 의한 입력(예컨대, 화살표(15046)로 표시된 경로를 따른 우향하는 스와이프)이 검출된다. 입력에 응답하여, 선택된 동작은 다음 동작으로 전진된다.In FIG. 15G , the clockwise rotation control unit 15038 is displayed (eg, to indicate that the currently selected operation is an operation for rotating the displayed virtual object 11002 clockwise). Audio alert 15040 includes a notification, as indicated at 15042 , “selected: rotate clockwise button”. An input by contact 15044 (eg, a rightward swipe along the path indicated by arrow 15046) is detected. In response to the input, the selected action advances to the next action.

도 15h에서, 반시계방향 회전 제어부(15048)가 (예컨대, 현재 선택된 동작이 디스플레이된 가상 객체(11002)를 반시계방향으로 회전시키기 위한 동작인 것을 나타내기 위해) 디스플레이된다. 오디오 경보(15050)는 15052로 나타낸 바와 같은 알림, "selected: rotate counterclockwise button(선택된 것: 반시계방향 회전 버튼)"을 포함한다. 접촉(15054)에 의한 입력(예컨대, 더블 탭 입력)이 검출된다. 입력에 응답하여, 선택된 동작이 수행된다(예컨대, 가상 객체(11002)는, 도 15i에 나타낸 바와 같이, 스테이징 뷰 내에서 반시계방향으로 회전된다).In FIG. 15H , the counterclockwise rotation control unit 15048 is displayed (eg, to indicate that the currently selected operation is an operation for rotating the displayed virtual object 11002 counterclockwise). Audio alert 15050 includes a notification, as indicated at 15052 , “selected: rotate counterclockwise button”. An input by contact 15054 (eg, a double tap input) is detected. In response to the input, the selected action is performed (eg, virtual object 11002 is rotated counterclockwise within the staging view, as shown in FIG. 15I ).

도 15i에서, 오디오 경보(15056)는 15058로 나타낸 바와 같은 알림, "Chair rotated by five degrees counterclockwise. Chair is now rotated five degrees away the screen(의자가 반시계방향으로 5도 회전하였습니다. 의자가 이제 스크린에서 멀어지게 5도 회전됩니다)"를 포함한다.In FIG. 15I , audio alert 15056 is a notification, as indicated by 15058, "Chair rotated by five degrees counterclockwise. Chair is now rotated five degrees away the screen. The chair is now rotated 5 degrees away from the screen. rotated 5 degrees away from)".

도 15j에서, 접촉(15060)에 의한 입력(예컨대, 화살표(15062)로 표시된 경로를 따른 우향하는 스와이프)이 검출된다. 입력에 응답하여, 선택된 동작은 다음 동작으로 전진된다.In FIG. 15J , input by contact 15060 (eg, a rightward swipe along the path indicated by arrow 15062) is detected. In response to the input, the selected action advances to the next action.

도 15k에서, 줌 제어부(15064)가 (예컨대, 현재 선택된 동작이 디스플레이된 가상 객체(11002)를 줌하기 위한 동작인 것을 나타내기 위해) 디스플레이된다. 오디오 경보(15066)는 15068로 나타낸 바와 같은 알림, "scale: adjustable(축척: 조정가능)"을 포함한다. 알림 내의 제어부 이름과 함께 키워드 "adjustable(조정가능)"은 스와이프 입력(예컨대, 수직 스와이프 입력)이 제어부를 동작시키는 데 사용가능하다는 것을 나타낸다. 예를 들어, 상향 스와이프 입력은 접촉(5070)에 의해 그가 화살표(5072)로 표시된 경로를 따라서 상향으로 이동함에 따라 제공된다. 입력에 응답하여, 줌 동작이 수행된다(예컨대, 도 15k 및 도 15l에 나타낸 바와 같이, 가상 객체(11002)의 크기가 증가된다).In FIG. 15K , the zoom control 15064 is displayed (eg, to indicate that the currently selected operation is an operation for zooming the displayed virtual object 11002 ). Audio alert 15066 includes an alert as indicated at 15068, “scale: adjustable.” The keyword "adjustable" along with the control name in the notification indicates that a swipe input (eg, a vertical swipe input) can be used to operate the control. For example, an upward swipe input is provided by contact 5070 as it moves upward along the path indicated by arrow 5072 . In response to the input, a zoom operation is performed (eg, the size of the virtual object 11002 is increased, as shown in FIGS. 15K and 15L ).

도 15l에서, 오디오 경보(15074)는 15076으로 나타낸 바와 같은 알림, "Chair is now adjusted to 150 percent of original size(의자가 이제 원래 크기의 150 퍼센트로 조정됩니다)"를 포함한다. 가상 객체(11002)의 크기를 감소시키기 위한 입력(예컨대, 하향 스와이프 입력)은 화살표(5078)로 표시된 경로를 따라서 하향으로 이동하는 접촉(5078)에 의해 제공된다. 입력에 응답하여, 줌 동작이 수행된다(예컨대, 도 15l 및 도 15m에 나타낸 바와 같이, 가상 객체(11002)의 크기가 감소된다).In FIG. 15L , audio alert 15074 includes a notification, as indicated by 15076, "Chair is now adjusted to 150 percent of original size." Input to decrease the size of virtual object 11002 (eg, a downward swipe input) is provided by contact 5078 moving downward along the path indicated by arrow 5078 . In response to the input, a zoom operation is performed (eg, the size of the virtual object 11002 is reduced, as shown in FIGS. 15L and 15M ).

도 15m에서, 오디오 경보(15082)는 15084로 나타낸 바와 같은 알림, "Chair is now adjusted to 100 percent of original size(의자가 이제 원래 크기의 100 퍼센트로 조정됩니다)"를 포함한다. 가상 객체(11002)의 크기가 스테이징 뷰(6010) 내에서 그의 원래 디스플레이된 크기로 조정되기 때문에, (15086으로 예시된 바와 같은) 촉각적 출력이 (예컨대, 가상 객체(11002)가 그의 원래 크기로 복귀되었다는 것을 나타내는 피드백을 제공하기 위해) 발생한다.In FIG. 15M , audio alert 15082 includes a notification, as indicated by 15084, "Chair is now adjusted to 100 percent of original size." Because the virtual object 11002 is resized to its original displayed size within the staging view 6010 , a tactile output (as illustrated by 15086 ) may occur (eg, the virtual object 11002 is resized to its original size). to provide feedback indicating that it has returned).

도 15n에서, 접촉(15088)에 의한 입력(예컨대, 화살표(15090)로 표시된 경로를 따른 우향하는 스와이프)이 검출된다. 입력에 응답하여, 선택된 동작은 다음 동작으로 전진된다.In FIG. 15N , input by contact 15088 (eg, a rightward swipe along the path indicated by arrow 15090) is detected. In response to the input, the selected action advances to the next action.

도 15o에서, 선택 커서(15001)가 (예컨대, 현재 선택된 동작이 이전 사용자 인터페이스로 복귀하기 위한 동작이라는 것을 나타내기 위해) 뒤로 가기 제어부(6016)를 둘러싸서 도시되어 있다. 오디오 경보(15092)는 15094로 나타낸 바와 같은 알림, "selected: return button(선택된 것: 복귀 버튼)"을 포함한다. 접촉(15096)에 의한 입력(예컨대, 화살표(15098)로 표시된 경로를 따른 우향하는 스와이프)이 검출된다. 입력에 응답하여, 선택된 동작은 다음 동작으로 전진된다.In FIG. 15O , a selection cursor 15001 is shown surrounding the back control 6016 (eg, to indicate that the currently selected action is an action to return to the previous user interface). Audio alert 15092 includes a notification as indicated at 15094, “selected: return button”. An input by contact 15096 (eg, a rightward swipe along the path indicated by arrow 15098) is detected. In response to the input, the selected action advances to the next action.

도 15p에서, 선택 커서(15001)가 (예컨대, 현재 선택된 동작이 스테이징 사용자 인터페이스(6010)의 디스플레이와 카메라(들)의 시야(6036)를 포함하는 사용자 인터페이스의 디스플레이 사이에서 토글링하기 위한 동작이라는 것을 나타내기 위해) 토글 제어부(6018)를 둘러싸서 도시되어 있다. 오디오 경보(15098)는 50100으로 나타낸 바와 같은 알림, "selected: world view/staging view toggle(선택된 것: 실세계 뷰/스테이징 뷰 토글)"을 포함한다. 접촉(15102)에 의한 입력(예컨대, 더블 탭 입력)이 검출된다. 입력에 응답하여, 스테이징 사용자 인터페이스(6010)의 디스플레이는 (도 15q에 나타낸 바와 같이) 카메라(들)의 시야(6036)를 포함하는 사용자 인터페이스의 디스플레이로 대체된다.In FIG. 15P , the selection cursor 15001 indicates that (eg, the currently selected operation is to toggle between the display of the staging user interface 6010 and the display of the user interface including the field of view 6036 of the camera(s)) To illustrate this), the toggle control 6018 is shown surrounding it. Audio alert 15098 includes a notification as indicated at 50100, “selected: world view/staging view toggle.” An input by contact 15102 (eg, a double tap input) is detected. In response to the input, the display of the staging user interface 6010 is replaced with the display of the user interface including the field of view 6036 of the camera(s) (as shown in FIG. 15Q ).

도 15q 내지 도 15t는 (예컨대, 가상 객체(11002)에 대응하는 평면이 카메라(들)의 시야(6036) 내에서 아직 검출되지 않았기 때문에) 카메라(들)의 시야(6036)가 디스플레이된 경우에 발생하는 캘리브레이션 시퀀스를 예시한다. 캘리브레이션 시퀀스 동안, 가상 객체(11002)의 반투명 표현이 디스플레이되고, 카메라(들)의 시야(6036)가 블러링되고, (디바이스(100)의 표현(12004) 및 평면의 표현(12010)을 포함하는) 애니메이션화된 이미지를 포함하는 프롬프트가 디스플레이되어 사용자에게 디바이스를 이동시킬 것을 촉구한다. 도 15q에서, 오디오 경보(15102)는 50104로 나타낸 바와 같은 알림, "move the device to detect a plane(평면을 검출하기 위해 디바이스를 이동시키세요)"를 포함한다. 도 15q로부터 도 15r로, 디바이스(100)는 (예컨대, 카메라(들)의 시야(6036) 내의 테이블(5004)의 변경된 위치에 의해 나타낸 바와 같이) 물리적 환경(5002)에 대해 이동된다. 디바이스(100)의 이동의 검출의 결과로서, 캘리브레이션 사용자 인터페이스 객체(12014)가, 도 15s에 나타낸 바와 같이, 디스플레이된다.15Q-15T show when the field of view 6036 of the camera(s) is displayed (eg, because the plane corresponding to the virtual object 11002 has not yet been detected within the field of view 6036 of the camera(s)). The calibration sequence that occurs is illustrated. During the calibration sequence, a translucent representation of the virtual object 11002 is displayed, the field of view 6036 of the camera(s) is blurred, (including a representation 12004 of the device 100 and a representation 12010 of a plane) ) a prompt containing an animated image is displayed prompting the user to move the device. In FIG. 15Q , audio alert 15102 includes a notification, as indicated by 50104 , “move the device to detect a plane.” 15Q to 15R , the device 100 is moved relative to the physical environment 5002 (eg, as indicated by the altered position of the table 5004 within the field of view 6036 of the camera(s)). As a result of detection of movement of device 100 , calibration user interface object 12014 is displayed, as shown in FIG. 15S .

도 15s에서, 오디오 경보(15106)는 50108로 나타낸 바와 같은 알림, "move the device to detect a plane"를 포함한다. 도 15s 및 도 15t에서, 캘리브레이션 사용자 인터페이스 객체(12014)는 디바이스(100)가 (예컨대, 카메라(들)의 시야(6036) 내의 테이블(5004)의 변경된 위치에 의해 나타낸 바와 같이) 물리적 환경(5002)에 대해 이동됨에 따라 회전한다. 도 15t에서, 카메라(들)의 시야(6036) 내에서 검출될 가상 객체(11002)에 대응하는 평면에 대해 충분한 모션이 발생했고, 오디오 경보(15110)는 50112로 나타낸 바와 같은 알림, "plane detected(평면이 검출)"을 포함한다. 도 15u 및 도 15v에서, 가상 객체(11002)의 반투명도가 감소되고, 가상 객체(11002)가 검출된 평면 상에 배치된다.In FIG. 15S , audio alert 15106 includes a notification, as indicated by 50108, “move the device to detect a plane.” 15S and 15T , the calibration user interface object 12014 indicates that the device 100 is in the physical environment 5002 (eg, as indicated by the altered position of the table 5004 within the field of view 6036 of the camera(s)). ) as it moves with respect to In FIG. 15T , sufficient motion has occurred for the plane corresponding to the virtual object 11002 to be detected within the field of view 6036 of the camera(s), and an audio alert 15110 is alerted, as indicated by 50112, a notification, "plane detected." (plane detected)". 15U and 15V , the translucency of the virtual object 11002 is reduced, and the virtual object 11002 is placed on the detected plane.

도 15v에서, 오디오 경보(15114)는 50116으로 나타낸 바와 같은 알림, "chair is now projected in the world, 100 percent visible, occupying 10 percent of the screen(의자가 이제 실세계에 투영되는데, 100 퍼센트 가시적이고, 스크린의 10 퍼센트를 차지합니다)"를 포함한다. 촉각적 출력 생성기들은 가상 객체(11002)가 평면 상에 배치되었다는 것을 나타내기 위해 (15118로 예시된 바와 같은) 촉각적 출력을 출력한다. 가상 객체(11002)는 물리적 환경(5002)에 대해 고정된 위치에 디스플레이된다.In Figure 15v, audio alert 15114 is a notification, as indicated by 50116, "chair is now projected in the world, 100 percent visible, occupying 10 percent of the screen, occupies 10 percent of the screen)". The tactile output generators output a tactile output (as illustrated by 15118 ) to indicate that the virtual object 11002 has been placed on a plane. The virtual object 11002 is displayed in a fixed position relative to the physical environment 5002 .

도 15v 및 도 15w에서, 디바이스(100)는 가상 객체(11002)가 카메라(들)의 시야(6036) 내에서 더 이상 가시적이지 않도록 (예컨대, 카메라(들)의 시야(6036) 내의 테이블(5004)의 변경된 위치에 의해 나타낸 바와 같이) 물리적 환경(5002)에 대해 이동된다. 카메라(들)의 시야(6036) 밖으로의 가상 객체(11002)의 이동의 결과로서, 오디오 경보(15122)는 50124로 나타낸 바와 같은 알림, "chair is not on the screen(의자가 스크린 상에 있지 않습니다)"를 포함한다.15V and 15W , the device 100 displays a table 5004 within the field of view 6036 of the camera(s) such that the virtual object 11002 is no longer visible within the field of view 6036 of the camera(s). ) is moved relative to the physical environment 5002 ). As a result of the movement of the virtual object 11002 out of the field of view 6036 of the camera(s), the audio alert 15122 is alerted as indicated by 50124, "chair is not on the screen. )" is included.

도 15w 및 도 15x에서, 디바이스(100)는 가상 객체(11002)가 도 15x의 카메라(들)의 시야(6036) 내에서 다시 가시적이도록 물리적 환경(5002)에 대해 이동하였다. 카메라(들)의 시야(6036) 내로의 가상 객체(11002)의 이동의 결과로서, 50120으로 나타낸 바와 같은 알림, "chair is now projected in the world, 100 percent visible, occupying 10 percent of the screen"을 포함하는 오디오 경보(15118)가 생성된다.15W and 15X , the device 100 has moved relative to the physical environment 5002 such that the virtual object 11002 is again visible within the field of view 6036 of the camera(s) of FIG. 15X . As a result of the movement of the virtual object 11002 into the field of view 6036 of the camera(s), a notification, as indicated by 50120, "chair is now projected in the world, 100 percent visible, occupying 10 percent of the screen" An audio alert 15118 containing

도 15x 및 도 15y에서, 디바이스(100)는 (예컨대, 디바이스(100)가 카메라(들)의 시야(6036)에 투영되는 바와 같이 가상 객체(11002)에 "더 가깝"도록, 그리고 가상 객체(11002)가 도 15y의 카메라(들)의 시야(6036) 내에서 부분적으로 가시적이도록) 물리적 환경(5002)에 대해 이동하였다. 부분적으로 카메라(들)의 시야(6036) 밖으로의 가상 객체(11002)의 이동의 결과로서, 오디오 경보(15126)는 50128로 나타낸 바와 같은 알림, "chair is 90 percent visible, occupying 20 percent of the screen(의자가 90 퍼센트 가시적이고, 스크린의 20 퍼센트를 차지합니다)"를 포함한다.15X and 15Y , device 100 (eg, device 100 is “closer” to virtual object 11002 as projected in field of view 6036 of the camera(s), and virtual object ( 11002) has moved relative to the physical environment 5002 (so that it is partially visible within the field of view 6036 of the camera(s) of FIG. 15Y ). As a result of, in part, movement of virtual object 11002 out of field of view 6036 of the camera(s), audio alert 15126 may generate a notification, as indicated by 50128, "chair is 90 percent visible, occupying 20 percent of the screen." (The chair is 90 percent visible and takes up 20 percent of the screen).

일부 실시예들에서, 가상 객체(11002)에 대응하는 위치에 제공된 입력은 가상 객체(11002)에 관한 구두 정보를 포함하는 오디오 메시지가 제공되게 한다. 대조적으로, 입력이 가상 객체(11002) 및 제어부들로부터 멀리 있는 위치에 제공될 때, 가상 객체(11002)에 관한 구두 정보를 포함하는 오디오 메시지는 제공되지 않는다. 도 15z에서, 사용자 인터페이스 내의 제어부 또는 가상 객체(11002)의 위치에 대응하지 않는 위치에서 접촉(15132)이 검출되는 것을 나타내기 위해 오디오 출력(15130)(예컨대, "클릭" 또는 "버즈")이 발생한다. 도 15aa에서, 접촉(15134)에 의한 입력이 가상 객체(11002)의 위치에 대응하는 위치에서 검출된다. 입력에 응답하여, 50138로 나타낸 바와 같은 알림, "chair is 90 percent visible, occupying 20 percent of the screen"을 포함하는 (예컨대, 가상 객체(11002)의 상태를 나타내는) 가상 객체(11002)에 대응하는 오디오 경보(15136)가 생성된다.In some embodiments, input provided at a location corresponding to virtual object 11002 causes an audio message comprising verbal information regarding virtual object 11002 to be provided. In contrast, when input is provided at a location remote from the virtual object 11002 and the controls, an audio message containing verbal information about the virtual object 11002 is not provided. In FIG. 15Z , audio output 15130 (eg, “click” or “buzz”) is output to indicate that contact 15132 is detected at a location that does not correspond to a location of a control or virtual object 11002 within the user interface. Occurs. 15AA , an input by contact 15134 is detected at a location corresponding to the location of virtual object 11002 . In response to the input, corresponding to the virtual object 11002 (eg, indicating the state of the virtual object 11002 ) including a notification, "chair is 90 percent visible, occupying 20 percent of the screen," as indicated by 50138. An audio alert 15136 is generated.

도 15ab 내지 도 15ai는 카메라(들)의 시야(6036)를 포함하는 사용자 인터페이스가 디스플레이되는 동안 스위치 제어 모드에서 동작들의 선택 및 수행을 위한 입력을 예시한다.15A-15A illustrate input for selection and performance of operations in a switch control mode while a user interface including a field of view 6036 of the camera(s) is displayed.

도 15ab에서, 접촉(15140)에 의한 입력(예컨대, 화살표(15142)로 표시된 경로를 따른 우향하는 스와이프)이 검출된다. 입력에 응답하여, 도 15ac에 나타낸 바와 같이, 동작이 선택된다.In FIG. 15A , an input by contact 15140 (eg, a rightward swipe along the path indicated by arrow 15142) is detected. In response to the input, an action is selected, as shown in FIG. 15A .

도 15ac에서, 우향하는 측방향 이동 제어부(15144)가 (예컨대, 현재 선택된 동작이 가상 객체(11002)를 우측으로 이동시키기 위한 동작인 것을 나타내기 위해) 디스플레이된다. 오디오 경보(15146)는 15148로 나타낸 바와 같은 알림, "selected: move right button(선택된 것: 우측 이동 버튼)"을 포함한다. 접촉(15150)에 의한 입력(예컨대, 더블 탭 입력)이 검출된다. 입력에 응답하여, 선택된 동작이 수행된다(예컨대, 가상 객체(11002)는, 도 15ad에 나타낸 바와 같이, 카메라(들)의 시야(6036) 내에서 우측으로 이동된다).In FIG. 15A , the rightward lateral movement control unit 15144 is displayed (eg, to indicate that the currently selected operation is an operation for moving the virtual object 11002 to the right). Audio alert 15146 includes a notification, as indicated at 15148 , “selected: move right button.” An input by contact 15150 (eg, a double tap input) is detected. In response to the input, the selected action is performed (eg, the virtual object 11002 is moved right within the field of view 6036 of the camera(s), as shown in FIG. 15A ).

도 15ad에서, 가상 객체(11002)의 이동은 15154로 나타낸 바와 같은 알림, "chair is 100 percent visible, occupying 30 percent of the screen(의자가 100 퍼센트 가시적이고, 스크린의 30 퍼센트를 차지합니다)"를 포함하는 오디오 경보(15152)에 의해 보고된다.In FIG. 15Ad , movement of virtual object 11002 causes a notification, "chair is 100 percent visible, occupying 30 percent of the screen," as indicated by 15154 , "chair is 100 percent visible, occupying 30 percent of the screen." It is reported by the containing audio alert 15152 .

도 15ae에서, 접촉(15156)에 의한 입력(예컨대, 화살표(15158)로 표시된 경로를 따른 우향하는 스와이프)이 검출된다. 입력에 응답하여, 선택된 동작은 다음 동작으로 전진된다.In FIG. 15A , an input by contact 15156 (eg, a rightward swipe along the path indicated by arrow 15158 ) is detected. In response to the input, the selected action advances to the next action.

도 15af에서, 좌향하는 측방향 이동 제어부(15160)가 (예컨대, 현재 선택된 동작이 가상 객체(11002)를 좌측으로 이동시키기 위한 동작인 것을 나타내기 위해) 디스플레이된다. 오디오 경보(15162)는 15164로 나타낸 바와 같은 알림, "selected: move left(선택된 것: 좌측 이동)"을 포함한다. 접촉(15166)에 의한 입력(예컨대, 화살표(15168)로 표시된 경로를 따른 우향하는 스와이프)이 검출된다. 입력에 응답하여, 선택된 동작은 다음 동작으로 전진된다.In FIG. 15A , the leftward lateral movement control unit 15160 is displayed (eg, to indicate that the currently selected operation is an operation for moving the virtual object 11002 to the left). Audio alert 15162 includes a notification, as indicated at 15164 , “selected: move left.” An input by contact 15166 (eg, a rightward swipe along the path indicated by arrow 15168) is detected. In response to the input, the selected action advances to the next action.

도 15ag에서, 시계방향 회전 제어부(15170)가 (예컨대, 현재 선택된 동작이 가상 객체(11002)를 시계방향으로 회전시키기 위한 동작인 것을 나타내기 위해) 디스플레이된다. 오디오 경보(15172)는 15174로 나타낸 바와 같은 알림, "selected: rotate clockwise(선택된 것: 시계방향 회전)"을 포함한다. 접촉(15176)에 의한 입력(예컨대, 화살표(15178)로 표시된 경로를 따른 우향하는 스와이프)이 검출된다. 입력에 응답하여, 선택된 동작은 다음 동작으로 전진된다.In FIG. 15Ag , the clockwise rotation control unit 15170 is displayed (eg, to indicate that the currently selected operation is an operation for rotating the virtual object 11002 clockwise). Audio alert 15172 includes a notification, as indicated at 15174 , “selected: rotate clockwise.” An input by contact 15176 (eg, a rightward swipe along the path indicated by arrow 15178 ) is detected. In response to the input, the selected action advances to the next action.

도 15ah에서, 반시계방향 회전 제어부(15180)가 (예컨대, 현재 선택된 동작이 가상 객체(11002)를 시계방향으로 회전시키기 위한 동작인 것을 나타내기 위해) 디스플레이된다. 오디오 경보(15182)는 15184로 나타낸 바와 같은 알림, "selected: rotate counterclockwise(선택된 것: 반시계방향 회전)"을 포함한다. 접촉(15186)에 의한 입력(예컨대, 더블 탭 입력)이 검출된다. 입력에 응답하여, 선택된 동작이 수행된다(예컨대, 가상 객체(11002)는, 도 15ai에 나타낸 바와 같이, 반시계방향으로 회전된다).In FIG. 15A , the counterclockwise rotation control unit 15180 is displayed (eg, to indicate that the currently selected operation is an operation for rotating the virtual object 11002 clockwise). Audio alert 15182 includes a notification, as indicated at 15184 , “selected: rotate counterclockwise.” An input by contact 15186 (eg, a double tap input) is detected. In response to the input, the selected action is performed (eg, virtual object 11002 is rotated counterclockwise, as shown in FIG. 15AI ).

도 15ai에서, 오디오 경보(15190)는 15164로 나타낸 바와 같은 알림, "Chair rotated by five degrees counterclockwise. Chair is now rotated by zero degrees relative to the screen(의자가 반시계방향으로 5도 회전하였습니다. 의자가 이제 스크린에 대해 0도 회전됩니다)"를 포함한다.In Figure 15ai, audio alert 15190 is a notification, as indicated by 15164, "Chair rotated by five degrees counterclockwise. Chair is now rotated by zero degrees relative to the screen. now rotated 0 degrees relative to the screen)".

일부 실시예들에서, 반사상(reflection)이 객체(예컨대, 가상 객체(11002))의 적어도 하나의 표면(예컨대, 하부 표면) 상에 생성된다. 반사상은 디바이스(100)의 하나 이상의 카메라들에 의해 캡처되는 이미지 데이터를 사용하여 생성된다. 예를 들어, 반사상은 하나 이상의 카메라들의 시야(6036) 내에서 검출되는 수평 평면(예컨대, 바닥 평면(5038))에 대응하는 캡처된 이미지 데이터(예컨대, 이미지, 한 세트의 이미지들, 및/또는 비디오)의 적어도 일부분에 기초한다. 일부 실시예들에서, 반사상을 생성하는 것은 (예컨대, 캡처된 이미지 데이터를 가상 구체의 모델 상으로 맵핑함으로써) 캡처된 이미지 데이터를 포함하는 구형 모델을 생성하는 것을 포함한다.In some embodiments, a reflection is generated on at least one surface (eg, a lower surface) of an object (eg, virtual object 11002 ). The reflected image is generated using image data captured by one or more cameras of device 100 . For example, the reflected image may be captured image data (eg, an image, a set of images, and/or video) at least in part. In some embodiments, generating the reflective image includes generating a spherical model comprising the captured image data (eg, by mapping the captured image data onto a model of a virtual sphere).

일부 실시예들에서, 객체의 표면 상에 생성된 반사상은 (예컨대, 평면에 더 가까운 표면의 일부분이 평면으로부터 더 멀리 있는 표면의 일부분보다 더 높은 크기의 반사율을 갖도록) 반사 구배를 포함한다. 일부 실시예들에서, 객체의 표면 상에 생성된 반사상의 반사율의 크기는 표면에 대응하는 텍스처의 반사율 값에 기초한다. 예를 들어, 표면의 비반사 부분에서는 반사상이 생성되지 않는다.In some embodiments, the reflected image generated on the surface of the object includes a reflection gradient (eg, such that a portion of the surface closer to the plane has a higher magnitude of reflectance than a portion of the surface further from the plane). In some embodiments, the magnitude of the reflectance of a reflection generated on the surface of the object is based on the reflectance value of the texture corresponding to the surface. For example, no reflective image is produced in the non-reflective portion of the surface.

일부 실시예들에서, 반사상은 시간 경과에 따라 조정된다. 예를 들어, 반사상은 객체를 이동시키고/시키거나 축척조정하기 위한 입력이 수신됨에 따라 조정된다(예컨대, 객체가 이동함에 따라, 객체의 반사상은 객체에 대응하는 위치에 있는 평면의 일부분을 반영하도록 조정된다). 일부 실시예들에서, 반사상은 객체가 (예컨대, z-축을 중심으로) 회전될 때 조정되지 않는다.In some embodiments, the reflective image is adjusted over time. For example, a reflective image is adjusted as input is received to move and/or scale the object (eg, as the object moves, the reflective image of the object is such that it reflects a portion of a plane at a location corresponding to the object). adjusted). In some embodiments, the reflected image is not adjusted when the object is rotated (eg, about the z-axis).

일부 실시예들에서, (예컨대, 객체에 대응하는 카메라(들)의 시야(6036) 내에서 검출되는 평면 상의) 결정된 위치에 객체를 디스플레이하기 전에, 객체의 표면 상에는 반사상이 생성되지 않는다. 예를 들어, 객체의 반투명 표현이 (예컨대, 도 11g 및 도 11h와 관련하여 기술된 바와 같이) 디스플레이될 때 그리고/또는 캘리브레이션이 (예컨대, 도 12b 내지 도 12i와 관련하여 기술된 바와 같이) 수행되고 있을 때 객체의 표면 상에는 반사상이 생성되지 않는다.In some embodiments, prior to displaying the object at the determined location (eg, on a plane detected within the field of view 6036 of the camera(s) corresponding to the object), no reflection is created on the surface of the object. For example, when a translucent representation of an object is displayed (eg, as described with respect to FIGS. 11G and 11H ) and/or calibration is performed (eg, as described with respect to FIGS. 12B-12I ) No reflection is created on the surface of the object when it is being made.

일부 실시예들에서, 객체의 반사상은 카메라(들)의 시야(6036) 내에서 검출되는 하나 이상의 평면들 상에 생성된다. 일부 실시예들에서, 객체의 반사상은 카메라(들)의 시야(6036) 내에서 생성되지 않는다.In some embodiments, a reflection of the object is created on one or more planes detected within the field of view 6036 of the camera(s). In some embodiments, the reflection of the object is not created within the field of view 6036 of the camera(s).

도 16a 내지 도 16g는 객체 배치 기준들이 충족되는지 여부에 따라 상이한 시각적 속성들을 사용하여 하나 이상의 카메라들의 시야를 포함하는 사용자 인터페이스 내에 가상 객체를 디스플레이하는 방법(16000)을 예시하는 흐름도들이다. 방법(16000)은 디스플레이 생성 컴포넌트(예컨대, 디스플레이, 프로젝터, 헤드 업 디스플레이 등), 하나 이상의 입력 디바이스들(예컨대, 터치 감응형 표면, 또는 디스플레이 생성 컴포넌트 및 터치 감응형 표면 둘 모두로서의 역할을 하는 터치 스크린 디스플레이), 및 하나 이상의 카메라들(예컨대, 디스플레이 및 터치 감응형 표면과 반대편인 디바이스의 면 상의 하나 이상의 후방 카메라들)을 갖는 전자 디바이스(예컨대, 도 3의 디바이스(300), 또는 도 1a의 휴대용 다기능 디바이스(100))에서 수행된다. 일부 실시예들에서, 디스플레이는 터치 스크린 디스플레이이고, 터치 감응형 표면은 디스플레이 상에 있거나 그와 통합된다. 일부 실시예들에서, 디스플레이는 터치 감응형 표면과는 별개이다. 방법(16000)에서의 일부 동작들이 선택적으로 조합되고/되거나, 일부 동작들의 순서가 선택적으로 변경된다.16A-16G are flow diagrams illustrating a method 16000 of displaying a virtual object in a user interface including a field of view of one or more cameras using different visual properties depending on whether object placement criteria are met. The method 16000 includes a display generating component (eg, a display, a projector, a heads up display, etc.), one or more input devices (eg, a touch-sensitive surface, or a touch serving as both a display generating component and a touch-sensitive surface). a screen display), and an electronic device (eg, device 300 of FIG. 3 , or of FIG. 1A ), and one or more cameras (eg, one or more rear cameras on the side of the device opposite the display and touch-sensitive surface). portable multifunction device 100). In some embodiments, the display is a touch screen display and the touch-sensitive surface is on or integrated with the display. In some embodiments, the display is separate from the touch-sensitive surface. Some operations in method 16000 are selectively combined and/or the order of some operations is selectively changed.

디바이스는 (예컨대, 가상 객체의 이동가능 표현을 포함하는 스테이징 사용자 인터페이스가 디스플레이되는 동안, 그리고 카메라들의 시야가 디스플레이되기 전에) 하나 이상의 카메라들의 시야의 적어도 일부분을 포함하는 제1 사용자 인터페이스 영역(예컨대, 증강 현실 관찰자 인터페이스) 내에 가상 객체(예컨대, 3차원 모델의 표현)를 디스플레이하라는 요청을 수신한다(16002)(예컨대, 요청은 터치 스크린 디스플레이 상의 가상 객체의 표현 상에서 검출되는 접촉에 의한 입력이거나, 접촉은 가상 객체의 표현과 동시에 디스플레이되는 그리고 제1 접촉에 의해 호출될 때 AR 뷰의 디스플레이를 트리거하도록 구성되는 어포던스 상에서 검출된다(예컨대, "AR view" 또는 "world view" 버튼 상에서의 탭)). 예를 들어, 요청은, 도 11f와 관련하여 기술된 바와 같이, 하나 이상의 카메라들의 시야(6036) 내에 가상 객체(11002)를 디스플레이하기 위한 입력이다.The device may include a first user interface area (eg, while a staging user interface including a movable representation of the virtual object is displayed and before a field of view of the cameras is displayed) that includes at least a portion of the field of view of the one or more cameras (eg, A request is received (16002) to display a virtual object (eg, a representation of a three-dimensional model) within the augmented reality observer interface (eg, the request is an input by a contact detected on a representation of the virtual object on the touch screen display, or a touch is detected on an affordance that is displayed concurrently with the representation of the virtual object and is configured to trigger the display of the AR view when invoked by the first contact (eg, a tap on the “AR view” or “world view” button). For example, the request is an input to display the virtual object 11002 within the field of view 6036 of one or more cameras, as described with respect to FIG. 11F .

제1 사용자 인터페이스 영역 내에 가상 객체를 디스플레이하라는 요청(예컨대, 디바이스 주위의 물리적 환경의 뷰에 가상 객체를 디스플레이하라는 요청)에 응답하여, 디바이스는, 디스플레이 생성 컴포넌트를 통해, 제1 사용자 인터페이스 영역에 포함되는 하나 이상의 카메라들의 시야의 적어도 일부분 위에 가상 객체의 표현을 디스플레이하는데(예컨대, 하나 이상의 카메라들의 시야는 제1 사용자 인터페이스 영역 내에 가상 객체를 디스플레이하라는 요청에 응답하여 디스플레이됨), 하나 이상의 카메라들의 시야는 하나 이상의 카메라들이 위치되는 물리적 환경의 뷰이다(16004). 예를 들어, 도 11g와 관련하여 기술된 바와 같이, 가상 객체(11002)는 하나 이상의 카메라들이 위치되는 물리적 환경(5002)의 뷰인 하나 이상의 카메라들의 시야(6036) 내에 디스플레이된다. 가상 객체의 표현을 디스플레이하는 것은, 객체 배치 기준들이 충족되지 않는다는 결정에 따라 - 객체 배치 기준들은 객체 배치 기준들이 충족되기 위해 가상 객체에 대한 배치 위치(예컨대, 평면)가 하나 이상의 카메라들의 시야 내에서 식별될 것을 요구함(예컨대, 객체 배치 기준들은, 디바이스가 제1 사용자 인터페이스 영역 내의 하나 이상의 카메라들의 시야에 대해 가상 객체를 배치하기 위한 위치 또는 평면을 식별하지 않았을 때 충족되지 않음(예컨대, 평면 식별은 여전히 진행 중이거나, 또는 평면을 식별하기에 충분한 이미지 데이터가 없음)) -, 제1 세트의 시각적 속성들로(예컨대, 제1 반투명 레벨, 또는 제1 밝기 레벨, 또는 제1 채도 레벨, 등으로) 그리고 물리적 환경의 어느 부분이 하나 이상의 카메라들의 시야 내에 디스플레이되는지와 독립적인 제1 배향으로 가상 객체의 표현을 디스플레이하는 것을 포함한다(예컨대, 가상 객체는 물리적 환경에 독립적인 미리정의된 평면에 대한 배향(예컨대, 스테이징 뷰 내에 설정된 배향)으로 그리고 카메라의 시야에서 발생하는 변경(예컨대, 물리적 환경에 대한 디바이스의 이동으로 인한 변경)과 독립적인 배향으로 카메라들의 시야 위에서 부유한다). 예를 들어, 도 11g 및 도 11h에서, 가상 객체(11002)에 대한 배치 위치가 카메라들의 시야(6036) 내에서 식별되지 않았기 때문에, 가상 객체(11002)의 반투명 형태가 디스플레이된다. 디바이스가 (도 11g로부터 도 11h로 도시된 바와 같이) 이동함에 따라, 가상 객체(11002)의 배향은 변경되지 않는다. 일부 실시예들에서, 객체 배치 기준들은 시야가 안정적이고 물리적 환경의 정지 뷰를 제공한다는 요건을 포함한다(예컨대, 카메라는 적어도 임계 시간 동안 임계량 미만으로 이동하고/하거나, 요청이 수신된 이후로 적어도 미리결정된 시간이 경과하였고/하였거나, 카메라는 디바이스의 충분한 이전 이동으로 평면 검출을 위해 캘리브레이션되었다). 객체 배치 기준들이 충족된다는 결정에 따라(예컨대, 객체 배치 기준들은, 디바이스가 제1 사용자 인터페이스 영역 내의 하나 이상의 카메라들의 시야에 대해 가상 객체를 배치하기 위한 위치 또는 평면을 식별하지 않았을 때 충족됨), 디바이스는 제1 세트의 시각적 속성들과 구별되는 제2 세트의 시각적 속성들로(예컨대, 제2 반투명 레벨, 또는 제2 밝기 레벨, 또는 제2 채도 레벨 등으로) 그리고 하나 이상의 카메라들의 시야 내에서 검출되는 물리적 환경 내의 평면에 대응하는 제2 배향으로 가상 객체의 표현을 디스플레이한다. 예를 들어, 도 11i에서, 가상 객체(11002)에 대한 배치 위치(예컨대, 물리적 환경(5002) 내의 바닥 표면(5038)에 대응하는 평면)가 카메라들의 시야(6036) 내에서 식별되었기 때문에, 가상 객체(11002)의 반투명이 아닌 형태가 디스플레이된다. 가상 객체(11002)의 배향(예컨대, 터치 스크린 디스플레이(112) 상의 위치)은 도 11h에 도시된 제1 배향으로부터 도 11i에 도시된 제2 배향으로 변경되었다. 디바이스가 (도 11i로부터 도 11j로 도시된 바와 같이) 이동함에 따라, 가상 객체(11002)의 배향은 (가상 객체(11002)가 이제 물리적 환경(5002)에 대해 고정된 배향으로 디스플레이되기 때문에) 변경된다. 객체 배치 기준들이 충족되는지 여부에 따라, 제1 세트의 시각적 속성들 또는 제2 세트의 시각적 속성들로 가상 객체를 디스플레이하는 것은 (예컨대, 가상 객체를 디스플레이하라는 요청이 수신되었지만, 가상 객체를 하나 이상의 카메라들의 시야 내에 배치하기 위해 추가 시간 및/또는 캘리브레이션 정보가 필요하다는 것을 나타내는) 시각적 피드백을 사용자에게 제공한다. 개선된 시각적 피드백을 사용자에게 제공하는 것은, (예컨대, 평면에 대응하는 제2 배향으로의 객체의 배치 전에 사용자가 적절한 입력들을 제공하도록 그리고 가상 객체를 조작하기 위한 입력을 제공하려는 시도를 피하도록 도움으로써) 디바이스의 작동성을 향상시키고 사용자-디바이스 인터페이스를 더 효율적으로 만드는데, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In response to a request to display the virtual object in the first user interface area (eg, a request to display the virtual object in a view of the physical environment surrounding the device), the device includes, via the display creation component, in the first user interface area. display a representation of the virtual object over at least a portion of the field of view of the one or more cameras being displayed (eg, the field of view of the one or more cameras displayed in response to a request to display the virtual object within the first user interface area), is a view of the physical environment in which one or more cameras are located (16004). For example, as described with respect to FIG. 11G , the virtual object 11002 is displayed within the field of view 6036 of one or more cameras, which is a view of the physical environment 5002 in which the one or more cameras are located. Displaying the representation of the virtual object is, in accordance with a determination that the object placement criteria are not met - the object placement criteria such that a placement location (eg, plane) relative to the virtual object is within the field of view of the one or more cameras for the object placement criteria to be met. Requires to be identified (eg, object placement criteria are not met when the device has not identified a location or plane to position the virtual object with respect to the field of view of one or more cameras within the first user interface area (eg, plane identification is still in progress, or there is not enough image data to identify a plane)), with a first set of visual properties (eg, a first translucency level, or a first brightness level, or a first saturation level, etc.) ) and displaying the representation of the virtual object in a first orientation independent of which portion of the physical environment is displayed within the field of view of the one or more cameras (eg, the virtual object is relative to a predefined plane independent of the physical environment). floats above the cameras' field of view with orientation (eg, an orientation established within the staging view) and with an orientation independent of changes occurring in the camera's field of view (eg, changes due to movement of the device relative to the physical environment). For example, in FIGS. 11G and 11H , the translucent form of the virtual object 11002 is displayed because the placement location for the virtual object 11002 has not been identified within the field of view 6036 of the cameras. As the device moves (as shown from FIG. 11G to FIG. 11H ), the orientation of the virtual object 11002 does not change. In some embodiments, the object placement criteria include a requirement that the field of view is stable and provide a still view of the physical environment (eg, the camera has moved less than a threshold amount for at least a threshold amount of time, and/or since the request is received at least The predetermined time has elapsed and/or the camera has been calibrated for plane detection with sufficient previous movement of the device). Upon determining that the object placement criteria are met (eg, the object placement criteria are satisfied when the device has not identified a location or plane for placing the virtual object with respect to the field of view of one or more cameras within the first user interface area); The device is configured with a second set of visual properties distinct from the first set of visual properties (eg, with a second translucency level, or a second brightness level, or a second saturation level, etc.) and within the field of view of the one or more cameras. Display the representation of the virtual object in a second orientation corresponding to a plane within the detected physical environment. For example, in FIG. 11I , the placement location for the virtual object 11002 (eg, the plane corresponding to the floor surface 5038 in the physical environment 5002 ) was identified within the field of view 6036 of the cameras, so that the virtual The non-translucent shape of the object 11002 is displayed. The orientation of the virtual object 11002 (eg, the position on the touch screen display 112 ) has changed from the first orientation shown in FIG. 11H to the second orientation shown in FIG. 11I . As the device moves (as shown in FIG. 11I to 11J ), the orientation of the virtual object 11002 changes (since the virtual object 11002 is now displayed in a fixed orientation with respect to the physical environment 5002 ). do. Depending on whether the object placement criteria are met, displaying the virtual object with the first set of visual properties or the second set of visual properties may provide visual feedback to the user (indicating that additional time and/or calibration information is needed to place within the camera's field of view). Providing the user with improved visual feedback helps the user to provide appropriate inputs (eg, prior to placement of the object in a second orientation corresponding to the plane) and avoid attempts to provide input for manipulating the virtual object. ) improves the operability of the device and makes the user-device interface more efficient, which additionally reduces the power usage of the device and improves battery life by enabling the user to use the device more quickly and efficiently.

일부 실시예들에서, 디바이스는 가상 객체의 표현이 제1 세트의 시각적 속성들 및 제1 배향으로 디스플레이되는 동안 객체 배치 기준들이 충족되는 것을 검출한다(16006)(예컨대, 가상 객체를 배치하기 위한 평면은 가상 객체가 디바이스 주위의 물리적 환경의 뷰 위에 반투명 상태로 현수되는 동안 식별된다). 객체 배치 기준들의 검출을 개시하기 위한 추가 사용자 입력을 요구하지 않으면서, 가상 객체가 제1 세트의 시각적 속성들로 (예컨대, 반투명 상태로) 디스플레이되는 동안 객체 배치 기준들이 충족되는 것을 검출하는 것은 객체 배치에 필요한 입력들의 수를 감소시킨다. 동작을 수행하는 데 필요한 입력들의 수를 감소시키는 것은 디바이스의 작동성을 향상시키고 사용자-디바이스 인터페이스를 더 효율적으로 만드는데, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, the device detects that object placement criteria are met while the representation of the virtual object is displayed in a first orientation and with a first set of visual properties ( 1606 ) (eg, a plane for placing the virtual object). is identified while the virtual object is suspended in a translucent state over a view of the physical environment around the device). Detecting that the object placement criteria are satisfied while the virtual object is displayed with a first set of visual properties (eg, in a translucent state) without requiring additional user input to initiate detection of the object placement criteria is an object Reduces the number of inputs required for deployment. Reducing the number of inputs required to perform an action improves the operability of the device and makes the user-device interface more efficient, which in addition enables the user to use the device more quickly and efficiently, thereby Reduces power usage and improves battery life.

일부 실시예들에서, 객체 배치 기준들이 충족되는 것을 검출하는 것에 응답하여, 디바이스는, 디스플레이 생성 컴포넌트를 통해, 제1 배향으로부터 제2 배향으로 이동하고(예컨대, 회전하고/하거나, 축척조정하고/하거나, 병진하고/하거나, 상기의 조합으로 이동하고) 제1 세트의 시각적 속성들을 갖는 것으로부터 제2 세트의 시각적 속성들을 갖는 것으로 변하는 가상 객체의 표현을 보여주는 애니메이션화된 전이를 디스플레이한다(16008). 예를 들어, 일단 가상 객체를 배치하기 위한 평면이 카메라의 시야 내에서 식별되면, 가상 객체는 그의 배향, 크기, 및 반투명(등)의 가시적 조정으로 그 평면 상에 배치된다. (예컨대, 제1 사용자 인터페이스에서 가상 객체를 재배향하기 위한 추가 사용자 입력을 요구하지 않으면서) 제1 배향으로부터 제2 배향으로의 애니메이션화된 전이를 디스플레이하는 것은 객체 배치에 필요한 입력들의 수를 감소시킨다. 동작을 수행하는 데 필요한 입력들의 수를 감소시키는 것은 디바이스의 작동성을 향상시키고 사용자-디바이스 인터페이스를 더 효율적으로 만드는데, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, in response to detecting that the object placement criteria are met, the device, via the display creation component, moves (eg, rotates, scales, and/or rotates, and/or scales, from a first orientation to a second orientation) , translate and/or move in a combination of the above) display an animated transition showing the representation of the virtual object changing from having the first set of visual properties to having the second set of visual properties (16008). For example, once a plane for placing a virtual object is identified within the camera's field of view, the virtual object is placed on that plane with visible adjustments of its orientation, size, and translucency (etc.). Displaying the animated transition from the first orientation to the second orientation (eg, without requiring additional user input to reorient the virtual object in the first user interface) reduces the number of inputs required for object placement. Reducing the number of inputs required to perform an action improves the operability of the device and makes the user-device interface more efficient, which in addition enables the user to use the device more quickly and efficiently, thereby Reduces power usage and improves battery life.

일부 실시예들에서, 객체 배치 기준들이 충족되는 것을 검출하는 것은, 하나 이상의 카메라들의 시야 내에서 평면이 식별되었다는 것을 검출하는 것; 적어도 임계 시간 동안 디바이스와 물리적 환경 사이에서 임계량 미만의 이동을 검출하는 것(예컨대, 카메라의 시야 내에서의 물리적 환경의 실질적으로 정지된 뷰로 이어짐); 및 제1 사용자 인터페이스 영역 내에 가상 객체를 디스플레이하라는 요청을 수신한 이후로 적어도 미리결정된 시간이 경과하였다는 것을 검출하는 것 중 하나 이상을 포함한다(16010). (예컨대, 평면을 검출하기 위한 사용자 입력을 요구하지 않으면서 하나 이상의 카메라들의 시야 내에서 평면을 검출함으로써) 객체 배치 기준들이 충족되는 것을 검출하는 것은 객체 배치에 필요한 입력들의 수를 감소시킨다. 동작을 수행하는 데 필요한 입력들의 수를 감소시키는 것은 디바이스의 작동성을 향상시키고 사용자-디바이스 인터페이스를 더 효율적으로 만드는데, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, detecting that object placement criteria are met includes detecting that a plane has been identified within the field of view of one or more cameras; detecting less than a threshold amount of movement between the device and the physical environment for at least a threshold amount of time (eg, leading to a substantially stationary view of the physical environment within the field of view of the camera); and detecting that at least a predetermined amount of time has elapsed since receiving the request to display the virtual object within the first user interface area ( 16010 ). Detecting that object placement criteria are met (eg, by detecting a plane within the field of view of one or more cameras without requiring user input to detect the plane) reduces the number of inputs required for object placement. Reducing the number of inputs required to perform an action improves the operability of the device and makes the user-device interface more efficient, which in addition enables the user to use the device more quickly and efficiently, thereby Reduces power usage and improves battery life.

일부 실시예들에서, 디바이스는 하나 이상의 카메라들의 시야 내에서 캡처되는 물리적 환경의 제1 부분(예컨대, 물리적 환경의 제1 부분은 반투명 가상 객체를 통해 사용자에게 가시적임) 위에 가상 객체의 표현이 제1 세트의 시각적 속성들 및 제1 배향으로 디스플레이되는 동안(예컨대, 가상 객체가 디바이스 주위의 물리적 환경의 뷰 위에 반투명 상태로 현수되는 동안) 하나 이상의 카메라들의 제1 이동(예컨대, 디바이스 주위의 물리적 환경에 대한 디바이스의 회전 및/또는 병진)을 검출한다(16012). 예를 들어, 도 11g 및 도 11h에서, 하나 이상의 카메라들은, 가상 객체(11002)의 반투명 표현이 디스플레이되는 동안, (예컨대, 카메라들의 시야(6036) 내에서 테이블(5004)의 변경된 위치에 의해 표시된 바와 같이) 이동한다. 카메라들의 시야(6036) 내에서 캡처되고 사용자 인터페이스에 디스플레이되는 바와 같은 물리적 환경의 벽들 및 테이블은 반투명 가상 객체(11002)를 통해 가시적이다. 하나 이상의 카메라들의 제1 이동을 검출하는 것에 응답하여, 디바이스는 하나 이상의 카메라들의 시야 내에서 캡처되는 물리적 환경의 제2 부분 위에 제1 세트의 시각적 속성들 및 제1 배향으로 가상 객체의 표현을 디스플레이하는데, 물리적 환경의 제2 부분은 물리적 환경의 제1 부분과 구별된다(16014). 예를 들어, 가상 객체의 반투명 형태가 카메라의 시야에 보여지는 물리적 환경 위에서 호버링하는 것으로 디스플레이되는 동안, 카메라의 시야 내의 물리적 환경의 뷰는 디바이스가 물리적 환경에 대해 이동할 때 (예컨대, 반투명 가상 객체 뒤에서) 시프트 및 축척조정된다. 따라서, 디바이스의 이동 동안, 가상 객체의 반투명 형태는, 카메라의 시야 내에서의 물리적 환경의 뷰의 병진 및 축척조정의 결과로서, 시야 내에 표현된 물리적 환경의 상이한 부분들의 상부에 오버레이된다. 예를 들어, 도 11h에서, 카메라들의 시야(6036)는 도 11g에 디스플레이된 물리적 환경(5002)의 제1 부분과 구별되는 물리적 환경(5002)의 제2 부분을 디스플레이한다. 가상 객체(11002)의 반투명 표현의 배향은 하나 이상의 카메라들의 이동이 도 11g 및 도 11h에서 발생할 때 변경되지 않는다. 하나 이상의 카메라들의 이동을 검출하는 것에 응답하여 제1 배향으로 가상 객체를 디스플레이하는 것은 (예컨대, 가상 객체가 물리적 환경에 대해 고정된 위치에 아직 배치되지 않았고, 따라서 하나 이상의 카메라들의 시야 내에서 캡처되는 물리적 환경의 일부분이 하나 이상의 카메라들의 이동에 따라 변함에 따라 이동하지 않는다는 것을 나타내는) 시각적 피드백을 사용자에게 제공한다. 개선된 시각적 피드백을 사용자에게 제공하는 것은, (예컨대, 평면에 대응하는 제2 배향으로의 객체의 배치 전에 사용자가 가상 객체를 조작하기 위한 입력을 제공하려는 시도를 피하도록 도움으로써) 디바이스의 작동성을 향상시키고 사용자-디바이스 인터페이스를 더 효율적으로 만드는데, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, the device presents the representation of the virtual object over a first portion of the physical environment (eg, the first portion of the physical environment is visible to the user through the translucent virtual object) captured within the field of view of the one or more cameras. A set of visual attributes and a first movement of the one or more cameras while displayed in a first orientation (eg, while the virtual object is suspended in a translucent state over a view of the physical environment around the device) (eg, the physical environment around the device) Rotation and/or translation of the device with respect to ) is detected (16012). For example, in FIGS. 11G and 11H , one or more cameras are indicated by an altered position of table 5004 (eg, within the cameras' field of view 6036 ) while a translucent representation of virtual object 11002 is displayed. as) move. Walls and tables of the physical environment as captured within the camera's field of view 6036 and displayed in the user interface are visible through the translucent virtual object 11002 . In response to detecting the first movement of the one or more cameras, the device displays a representation of the virtual object in a first orientation and a first set of visual properties over a second portion of the physical environment captured within the field of view of the one or more cameras. The second portion of the physical environment is distinct from the first portion of the physical environment ( 16014 ). For example, while the translucent form of the virtual object is displayed as hovering over the physical environment as seen in the camera's field of view, the view of the physical environment within the camera's field of view changes as the device moves relative to the physical environment (eg, behind the translucent virtual object). ) is shifted and scaled. Thus, during movement of the device, the translucent form of the virtual object is overlaid on top of different portions of the physical environment represented within the field of view, as a result of the translation and scaling of the view of the physical environment within the field of view of the camera. For example, in FIG. 11H , the camera's field of view 6036 displays a second portion of the physical environment 5002 distinct from the first portion of the physical environment 5002 displayed in FIG. 11G . The orientation of the translucent representation of virtual object 11002 does not change when movement of one or more cameras occurs in FIGS. 11G and 11H . Displaying the virtual object in a first orientation in response to detecting movement of the one or more cameras (eg, the virtual object has not yet been positioned in a fixed position relative to the physical environment and thus is captured within the field of view of the one or more cameras) provide visual feedback to the user (indicating that a portion of the physical environment does not move as it changes with movement of one or more cameras). Providing the user with improved visual feedback may include operability of the device (eg, by helping the user avoid attempts to provide input for manipulating the virtual object prior to placement of the object in a second orientation corresponding to a plane). and make the user-device interface more efficient, which additionally reduces the power usage of the device and improves battery life by enabling the user to use the device more quickly and efficiently.

일부 실시예들에서, 디바이스는 하나 이상의 카메라들의 시야 내에서 캡처되는 물리적 환경의 제3 부분(예컨대, 물리적 환경의 제3 부분(예컨대, 가상 객체를 지지하는 검출된 평면의 일부분)의 직접적인 뷰는 가상 객체에 의해 차단됨) 위에 가상 객체의 표현이 제2 세트의 시각적 속성들 및 제2 배향으로 디스플레이되는 동안(예컨대, 객체 배치 기준들이 충족되었고 가상 객체가 카메라들의 시야 내의 물리적 환경에서 검출되는 평면 상에 배치된 후) 하나 이상의 카메라들의 제2 이동(예컨대, 디바이스 주위의 물리적 환경에 대한 디바이스의 회전 및/또는 병진)을 검출한다(16016). 예를 들어, 도 11i 및 도 11j에서, 하나 이상의 카메라들은, 가상 객체(11002)의 반투명이 아닌 표현이 디스플레이되는 동안, (예컨대, 카메라들의 시야(6036) 내에서 테이블(5004)의 변경된 위치에 의해 표시된 바와 같이) 이동한다. 디바이스의 제2 이동을 검출하는 것에 응답하여, 디바이스는, 하나 이상의 카메라들의 시야 내에서 캡처되는 바와 같은 물리적 환경이 디바이스의 제2 이동에 따라 이동(예컨대, 시프트 및 축척조정)하고, 제2 배향이 하나 이상의 카메라들의 시야 내에서 검출되는 물리적 환경 내의 평면에 계속 대응하는 동안, 하나 이상의 카메라들의 시야 내에서 캡처되는 물리적 환경의 제3 부분 위에 제2 세트의 시각적 속성들 및 제2 배향으로 가상 객체의 표현의 디스플레이를 유지한다(16018). 예를 들어, 가상 객체의 반투명이 아닌 형태가 카메라의 시야에 보여진 물리적 환경에서 검출되는 평면 상의 정지 위치에서 낙하된 후, 가상 객체의 위치 및 배향은 카메라의 시야 내의 물리적 환경에 대해 고정되고, 가상 객체는 디바이스가 물리적 환경에 대해 이동함에 따라 카메라들의 시야 내의 물리적 환경과 함께 시프트 및 축척조정될 것이다(예컨대, 가상 객체(11002)의 반투명이 아닌 표현은 하나 이상의 카메라들의 이동이 도 11i 및 도 11j에서 발생함에 따라 물리적 환경(5002) 내의 바닥 평면에 대해 일정 배향으로 고정된 채로 유지된다). 하나 이상의 카메라들의 이동을 검출하는 것에 응답하여 제2 배향으로 가상 객체를 디스플레이하는 것을 유지하는 것은 (예컨대, 가상 객체가 물리적 환경에 대해 고정된 위치에 배치되었고, 따라서 하나 이상의 카메라들의 시야 내에서 캡처되는 물리적 환경의 일부분이 하나 이상의 카메라들의 이동에 따라 변함에 따라 이동한다는 것을 나타내는) 시각적 피드백을 사용자에게 제공한다. 개선된 시각적 피드백을 사용자에게 제공하는 것은, (예컨대, 평면에 대응하는 제2 배향으로 배치된 가상 객체에 대해 사용자가 적절한 입력들을 제공하도록 도움으로써) 디바이스의 작동성을 향상시키고 사용자-디바이스 인터페이스를 더 효율적으로 만드는데, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, the device provides a direct view of a third portion of the physical environment (eg, a third portion of the physical environment (eg, a portion of the detected plane supporting the virtual object) that is captured within the field of view of the one or more cameras) obstructed by the virtual object) while the representation of the virtual object is displayed in a second orientation and with a second set of visual properties (eg, on a plane where object placement criteria have been met and the virtual object is detected in the physical environment within the field of view of the cameras) ) detect ( 16016 ) a second movement of the one or more cameras (eg, rotation and/or translation of the device relative to the physical environment around the device). For example, in FIGS. 11I and 11J , one or more cameras are positioned at an altered location of table 5004 (eg, within the cameras' field of view 6036 ) while a non-translucent representation of virtual object 11002 is displayed. as indicated by) to move. In response to detecting the second movement of the device, the device moves (eg, shifts and scales) the physical environment as captured within the field of view of the one or more cameras in accordance with the second movement of the device, the second orientation A virtual object with a second orientation and a second set of visual properties over a third portion of the physical environment captured within the field of view of the one or more cameras while still corresponding to a plane in the physical environment detected within the field of view of the one or more cameras. Maintain display of the representation of ( 16018 ). For example, after a non-translucent shape of a virtual object is dropped from a stationary position on a plane that is detected in the physical environment seen in the camera's field of view, the position and orientation of the virtual object is fixed with respect to the physical environment within the camera's field of view, and the virtual The object will shift and scale with the physical environment within the field of view of the cameras as the device moves relative to the physical environment (eg, a non-translucent representation of virtual object 11002 indicates that movement of one or more cameras is shown in FIGS. 11I and 11J ). remain fixed in an orientation relative to the floor plane within the physical environment 5002 as it occurs). Maintaining displaying the virtual object in a second orientation in response to detecting movement of the one or more cameras (eg, the virtual object was positioned at a fixed location relative to the physical environment and thus captured within the field of view of the one or more cameras) provide visual feedback to the user indicating that the portion of the physical environment being moved as it changes with the movement of one or more cameras). Providing the user with improved visual feedback improves the operability of the device and enhances the user-device interface (eg, by helping the user provide appropriate inputs for a virtual object disposed in a second orientation corresponding to a plane). making it more efficient, which additionally reduces the power usage of the device and improves battery life by enabling the user to use the device more quickly and efficiently.

일부 실시예들에서, 객체 배치 기준들이 충족된다는 (예컨대, 디바이스가 제1 사용자 인터페이스 영역 내에서 하나 이상의 카메라들의 시야에 대해 가상 객체를 배치하기 위한 위치 또는 평면을 식별하지 않았을 때 객체 배치 기준들이 충족된다는) 결정에 따라, 디바이스는 제2 세트의 시각적 속성들로 (예컨대, 감소된 반투명 레벨, 또는 더 높은 밝기 레벨, 또는 더 높은 채도 레벨 등으로) 그리고 하나 이상의 카메라들의 시야 내에서 검출되는 물리적 환경 내의 평면에 대응하는 제2 배향으로 가상 객체의 표현을 디스플레이하는 것과 함께 촉각적 출력을 (예컨대, 디바이스의 하나 이상의 촉각적 출력 생성기들로) 생성한다(예컨대, 촉각적 출력의 생성은 가상 객체의 반투명이 아닌 외관으로의 전이의 완료 및 물리적 환경에서 검출되는 평면 상의 낙하 위치에 정착하도록 하는 가상 객체의 회전 및 병진의 완료와 동기화된다)(16020). 예를 들어, 도 11i에 도시된 바와 같이, 가상 객체(11002)에 대응하는 평면(예컨대, 바닥 표면(5038))에 부착된 가상 객체(11002)의 반투명이 아닌 표현을 디스플레이하는 것과 함께 11010으로 표시된 바와 같은 촉각적 출력이 생성된다. 객체 배치 기준들이 충족된다는 결정에 따라 촉각적 출력을 생성하는 것은 (예컨대, 가상 객체를 배치하는 동작이 성공적으로 실행되었다는 것을 나타내는) 개선된 촉각적 피드백을 사용자에게 제공한다. 개선된 피드백을 사용자에게 제공하는 것은 (예컨대, 디스플레이된 정보로 사용자 인터페이스를 혼란스럽게 하지 않으면서 객체 배치 기준들이 충족되었다는 것을 사용자가 인지하게 하는 감각적 정보를 제공함으로써) 디바이스의 작동성을 향상시키고 사용자-디바이스 인터페이스를 더 효율적으로 만드는데, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, the object placement criteria are met when the object placement criteria are met (eg, the device has not identified a location or plane for placing the virtual object with respect to the field of view of one or more cameras within the first user interface area. according to the determination that the device becomes a physical environment detected within the field of view of the one or more cameras and with a second set of visual attributes (eg, with a reduced translucency level, or a higher brightness level, or a higher saturation level, etc.) generate a tactile output (eg, with one or more tactile output generators of the device) in conjunction with displaying the representation of the virtual object in a second orientation corresponding to a plane within Synchronized with the completion of the transition to a non-translucent appearance and the completion of the rotation and translation of the virtual object to settle at the location of the drop on the plane detected in the physical environment (16020). For example, as shown in FIG. 11I , to 11010 with displaying a non-translucent representation of virtual object 11002 attached to a plane (eg, floor surface 5038 ) corresponding to virtual object 11002 . A tactile output as indicated is produced. Generating a tactile output in accordance with a determination that the object placement criteria are met provides improved tactile feedback to the user (eg, indicating that the action of placing the virtual object has been successfully executed). Providing the user with improved feedback improves the operability of the device and improves the user's operability (eg, by providing sensory information that makes the user aware that object placement criteria have been met without confusing the user interface with the displayed information). -Make the device interface more efficient, which additionally enables users to use the device more quickly and efficiently, thereby reducing the device's power usage and improving battery life.

일부 실시예들에서, 제2 세트의 시각적 속성들로 그리고 하나 이상의 카메라들의 시야 내에서 검출되는 물리적 환경 내의 평면에 대응하는 제2 배향으로 가상 객체의 표현을 디스플레이하는 동안, 디바이스는 하나 이상의 카메라들의 시야 내에서 검출되는 물리적 환경 내의 평면의 적어도 위치 또는 배향에 관한 업데이트를 수신한다(예컨대, 업데이트된 평면 위치 및 배향은 초기 평면 검출 결과가 가상 객체를 배치하는 데 사용된 후 축적된 추가 데이터에 기초한 더 정확한 계산, 또는 더 많은 시간 소모적인 계산 방법들(예컨대, 더 적은 근사치들 등)의 결과이다)(16022). 하나 이상의 카메라들의 시야 내에서 검출되는 물리적 환경 내의 평면의 적어도 위치 또는 배향에 관한 업데이트를 수신하는 것에 응답하여, 디바이스는 업데이트에 따라 가상 객체의 표현의 적어도 위치 및/또는 배향을 조정한다(예컨대, 가상 객체를 업데이트된 평면에 더 가깝게 점진적으로 이동(예컨대, 병진 및 회전)시킨다)(16024). (예컨대, 평면에 대해 가상 객체를 배치하기 위한 사용자 입력을 요구하지 않으면서) 물리적 환경 내의 평면에 관한 업데이트를 수신하는 것에 응답하여 가상 객체의 위치 및/또는 배향을 조정하는 것은 가상 객체를 조정하는 데 필요한 입력들의 수를 감소시킨다. 동작을 수행하는 데 필요한 입력들의 수를 감소시키는 것은 디바이스의 작동성을 향상시키고 사용자-디바이스 인터페이스를 더 효율적으로 만드는데, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, while displaying the representation of the virtual object with the second set of visual properties and in a second orientation corresponding to a plane in the physical environment detected within the field of view of the one or more cameras, the device Receive updates regarding at least a position or orientation of a plane in the physical environment that is detected within the field of view (eg, the updated plane position and orientation is based on additional data accumulated after initial plane detection results are used to position the virtual object) A more accurate calculation, or the result of more time-consuming calculation methods (eg, fewer approximations, etc.) 16022 . In response to receiving an update regarding at least a position or orientation of a plane in the physical environment detected within the field of view of the one or more cameras, the device adjusts (eg, at least a position and/or orientation of the representation of the virtual object according to the update). Gradually move (eg, translate and rotate) the virtual object closer to the updated plane ( 16024 ). Adjusting the position and/or orientation of the virtual object in response to receiving an update about the plane within the physical environment (eg, without requiring user input to position the virtual object with respect to the plane) comprises adjusting the virtual object. reduce the number of inputs required to Reducing the number of inputs required to perform an action improves the operability of the device and makes the user-device interface more efficient, which in addition enables the user to use the device more quickly and efficiently, thereby Reduces power usage and improves battery life.

일부 실시예들에서, 제1 세트의 시각적 속성들은 제1 크기 및 제1 반투명 레벨을 포함하고(예컨대, AR 뷰로 낙하되기 전에, 객체는 디스플레이에 대한 고정된 크기 및 고정된 높은 반투명 레벨을 가짐)(16026), 제2 세트의 시각적 속성들은 제1 크기와 구별되는 제2 크기(예컨대, 일단 AR 뷰에서 낙하되면, 객체는 물리적 환경에서의 낙하 위치 및 크기와 관련하여 시뮬레이션된 물리적 크기로 디스플레이됨) 및 제1 반투명 레벨보다 낮은 (예컨대, 그보다 더 불투명한) 제2 반투명 레벨(예컨대, 객체는 AR 뷰에서 더 이상 반투명하지 않음)을 포함한다(16028). 예를 들어, 도 11h에서, 가상 객체(11002)의 반투명 표현이 제1 크기로 도시되어 있고, 도 11i에서, 가상 객체(11004)의 반투명이 아닌 표현이 제2 (더 작은) 크기로 도시되어 있다. 객체 배치 기준들이 충족되는지 여부에 따라, 제1 크기 및 제1 반투명 레벨로 또는 제2 크기 및 제2 반투명 레벨로 가상 객체를 디스플레이하는 것은 (예컨대, 가상 객체를 디스플레이하라는 요청이 수신되었지만, 가상 객체를 하나 이상의 카메라들의 시야 내에 배치하기 위해 추가 시간 및/또는 캘리브레이션 정보가 필요하다는 것을 나타내는) 시각적 피드백을 사용자에게 제공한다. 개선된 시각적 피드백을 사용자에게 제공하는 것은, (예컨대, 평면에 대응하는 제2 배향으로의 객체의 배치 전에 사용자가 적절한 입력들을 제공하도록 그리고 가상 객체를 조작하기 위한 입력을 제공하려는 시도를 피하도록 도움으로써) 디바이스의 작동성을 향상시키고 사용자-디바이스 인터페이스를 더 효율적으로 만드는데, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, the first set of visual attributes includes a first size and a first level of translucency (eg, before falling into the AR view, the object has a fixed size and a fixed high level of translucency for the display) ( 16026 ), the second set of visual attributes are displayed at a second size distinct from the first size (eg, once dropped from the AR view, the object is displayed at a simulated physical size with respect to the location and size of the drop in the physical environment) ) and a second translucency level that is lower than (eg, more opaque than) the first translucency level (eg, the object is no longer translucent in the AR view) ( 16028 ). For example, in FIG. 11H , a translucent representation of virtual object 11002 is shown at a first size, and in FIG. 11I , a non-translucent representation of virtual object 11004 is shown at a second (smaller) size. there is. Depending on whether the object placement criteria are met, displaying the virtual object at the first size and at the first translucent level or at the second size and at the second translucency level (eg, a request to display the virtual object has been received, but the virtual object provide visual feedback to the user (indicating that additional time and/or calibration information is needed to place the . Providing the user with improved visual feedback helps the user to provide appropriate inputs (eg, prior to placement of the object in a second orientation corresponding to the plane) and avoid attempts to provide input for manipulating the virtual object. ) improves the operability of the device and makes the user-device interface more efficient, which additionally reduces the power usage of the device and improves battery life by enabling the user to use the device more quickly and efficiently.

일부 실시예들에서, 가상 객체가 하나 이상의 카메라들의 시야의 적어도 일부분을 포함하지 않는 각각의 사용자 인터페이스(예컨대, 스테이징 사용자 인터페이스) 내에 디스플레이되는 동안(예컨대, 가상 객체는 디바이스의 물리적 환경과 독립적인 배향을 갖는 가상 스테이지에 대해 배향됨), 하나 이상의 카메라들의 시야의 적어도 일부분을 포함하는 제1 사용자 인터페이스 영역(예컨대, AR 뷰) 내에 가상 객체를 디스플레이하라는 요청이 수신된다(16030). 제1 배향은 요청이 수신되는 시간에 가상 객체가 각각의 사용자 인터페이스 내에 디스플레이되는 동안 가상 객체의 배향에 대응한다. 예를 들어, 도 11f와 관련하여 기술된 바와 같이, (카메라들의 시야를 포함하지 않는) 스테이징 사용자 인터페이스(6010)가 디스플레이되는 동안 카메라들의 시야(6036)를 포함하는 사용자 인터페이스 내에 가상 객체(11002)를 디스플레이하라는 요청이 수신된다. 가상 객체(11002)가 카메라들의 시야(6036)를 포함하는 사용자 인터페이스 내에 디스플레이되는 도 11g의 가상 객체(11002)의 배향은, 가상 객체(11002)가 스테이징 사용자 인터페이스(6010) 내에 디스플레이되는 도 11f의 가상 객체(11002)의 배향에 대응한다. (이전에 디스플레이된) 인터페이스(예컨대, 스테이징 사용자 인터페이스) 내에 디스플레이된 바와 같은 가상 객체의 배향에 대응하는 배향으로 제1 사용자 인터페이스(예컨대, 디스플레이된 증강 현실 뷰) 내에 가상 객체를 디스플레이하는 것은 (예컨대, 스테이징 사용자 인터페이스가 디스플레이되는 동안 제공되는 객체 조작 입력이 AR 뷰 내에 객체의 배향을 확립하는 데 사용될 수 있다는 것을 나타내는) 시각적 피드백을 사용자에게 제공한다. 개선된 시각적 피드백을 사용자에게 제공하는 것은, (예컨대, 평면에 대응하는 제2 배향으로의 객체의 배치 전에 사용자가 적절한 입력들을 제공하도록 그리고 가상 객체를 조작하기 위한 입력을 제공하려는 시도를 피하도록 도움으로써) 디바이스의 작동성을 향상시키고 사용자-디바이스 인터페이스를 더 효율적으로 만드는데, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, while the virtual object is displayed within a respective user interface (eg, a staging user interface) that does not include at least a portion of the field of view of the one or more cameras (eg, the virtual object is oriented independent of the physical environment of the device) oriented relative to the virtual stage), a request is received ( 16030 ) to display the virtual object in a first user interface area (eg, AR view) that includes at least a portion of the field of view of one or more cameras. The first orientation corresponds to the orientation of the virtual object while the virtual object is displayed within the respective user interface at the time the request is received. For example, as described with respect to FIG. 11F , a virtual object 11002 within a user interface that includes a field of view 6036 of cameras while a staging user interface 6010 (not including the field of view of the cameras) is displayed. A request to display is received. The orientation of the virtual object 11002 of FIG. 11G where the virtual object 11002 is displayed within a user interface that includes the field of view 6036 of the cameras is the same as that of FIG. 11F where the virtual object 11002 is displayed within the staging user interface 6010 . Corresponds to the orientation of the virtual object 11002 . Displaying the virtual object in the first user interface (eg, displayed augmented reality view) in an orientation that corresponds to the orientation of the virtual object as displayed in the (previously displayed) interface (eg, staging user interface) includes (eg, , indicating that object manipulation input provided while the staging user interface is displayed can be used to establish the orientation of the object within the AR view) to the user. Providing the user with improved visual feedback helps the user to provide appropriate inputs (eg, prior to placement of the object in a second orientation corresponding to the plane) and avoid attempts to provide input for manipulating the virtual object. ) improves the operability of the device and makes the user-device interface more efficient, which additionally reduces the power usage of the device and improves battery life by enabling the user to use the device more quickly and efficiently.

일부 실시예들에서, 제1 배향은 미리정의된 배향(예컨대, 가상 객체가 하나 이상의 카메라들의 시야의 적어도 일부분을 포함하지 않는 각각의 사용자 인터페이스 내에 처음으로 디스플레이될 때 가상 객체가 디스플레이되는 배향과 같은 디폴트 배향)에 대응한다(16032). 제1 세트의 시각적 속성들로 그리고 미리정의된 배향으로 가상 객체를 제1 사용자 인터페이스(예컨대, 디스플레이된 증강 현실 뷰) 내에 디스플레이하는 것은 (예컨대, 스테이징 사용자 인터페이스 내에서 확립된 배향에 따라 반투명 표현을 렌더링하기보다는 가상 객체의 미리생성된 반투명 표현이 디스플레이되는 것을 허용함으로써) 디바이스의 전력 사용을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, the first orientation is a predefined orientation (eg, such as the orientation in which the virtual object is displayed when it is displayed for the first time within each user interface that does not include at least a portion of the field of view of the one or more cameras). default orientation) (16032). Displaying the virtual object in a first user interface (eg, displayed augmented reality view) with a first set of visual properties and in a predefined orientation (eg, causes a translucent representation according to an orientation established within the staging user interface) By allowing a pre-generated translucent representation of a virtual object to be displayed rather than rendering), it reduces the device's power usage and improves battery life.

일부 실시예들에서, 제2 세트의 시각적 속성들로 그리고 하나 이상의 카메라들의 시야 내에서 검출되는 물리적 환경 내의 평면에 대응하는 제2 배향으로 가상 객체를 제1 사용자 인터페이스 영역(예컨대, AR 뷰) 내에 디스플레이하는 동안, 디바이스는 (예컨대, 축척조정 입력(예컨대, 가상 객체에 대한 핀치 또는 디핀치 제스처)의 결과로서) 가상 객체의 시뮬레이션된 물리적 크기를 하나 이상의 카메라들의 시야 내에서 캡처되는 물리적 환경에 대해 제1 시뮬레이션된 물리적 크기로부터 제2 시뮬레이션된 물리적 크기로 (예컨대, 디폴트 크기의 80%로부터 디폴트 크기의 120%로, 또는 그 반대로) 변경하라는 요청을 검출한다(16034). 예를 들어, 가상 객체(11002)의 시뮬레이션된 물리적 크기를 감소시키기 위한 입력은 도 11n 내지 도 11p와 관련하여 기술된 바와 같은 핀치 제스처이다. 가상 객체의 시뮬레이션된 물리적 크기를 변경하라는 요청을 검출하는 것에 응답하여, 디바이스는 가상 객체의 시뮬레이션된 물리적 크기의 제1 시뮬레이션된 물리적 크기로부터 제2 시뮬레이션된 물리적 크기로의 점진적인 변경에 따라 제1 사용자 인터페이스 영역 내의 가상 객체의 표현의 디스플레이된 크기를 점진적으로 변경하고(예컨대, 가상 객체의 디스플레이된 크기는 하나 이상의 카메라들의 시야 내에서 캡처되는 물리적 환경의 디스플레이된 크기가 변경되지 않은 채로 유지되는 동안 증가하거나 줄어듬), 제1 사용자 인터페이스 영역 내의 가상 객체의 표현의 디스플레이된 크기의 점진적인 변경 동안, 가상 객체의 시뮬레이션된 물리적 크기가 미리정의된 시뮬레이션된 물리적 크기(예컨대, 디폴트 크기의 100%)에 도달하였다는 결정에 따라, 디바이스는 가상 객체의 시뮬레이션된 물리적 크기가 미리정의된 시뮬레이션된 물리적 크기에 도달하였다는 것을 나타내기 위해 촉각적 출력을 생성한다(16036). 예를 들어, 도 11n 내지 도 11p와 관련하여 기술된 바와 같이, 가상 객체(11002)의 표현의 디스플레이된 크기는 핀치 제스처 입력에 응답하여 점진적으로 감소한다. 도 11o에서, 가상 객체(11002)의 표현의 디스플레이된 크기가 가상 객체(11002)의 크기의 100%(예컨대, 도 11i에 나타낸 바와 같이, 하나 이상의 카메라들의 시야(6036)를 포함하는 사용자 인터페이스 내에 원래 디스플레이된 바와 같은 가상 객체(11002)의 크기)에 도달할 때, 11024로 표시된 바와 같은 촉각적 출력이 생성된다. 가상 객체의 시뮬레이션된 물리적 크기가 미리정의된 시뮬레이션된 물리적 크기에 도달하였다는 결정에 따라 촉각적 출력을 생성하는 것은 (예컨대, 가상 객체의 시뮬레이션된 크기를 미리정의된 크기로 복귀시키기 위해 추가 입력이 필요하지 않다는 것을 나타내는) 피드백을 사용자에게 제공한다. 개선된 촉각적 피드백을 제공하는 것은 (예컨대, 디스플레이된 정보로 사용자 인터페이스를 혼란스럽게 하지 않으면서 가상 객체의 미리정의된 시뮬레이션된 물리적 크기에 도달하였다는 것을 사용자가 인지하게 하는 감각적 정보를 제공함으로써) 디바이스의 작동성을 향상시키고, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, the virtual object within the first user interface area (eg, AR view) with a second set of visual attributes and in a second orientation corresponding to a plane in the physical environment detected within the field of view of the one or more cameras. During display, the device (eg, as a result of a scaling input (eg, a pinch or de-pinch gesture relative to the virtual object)) the simulated physical size of the virtual object relative to the physical environment captured within the field of view of the one or more cameras. A request to change from the first simulated physical size to a second simulated physical size (eg, from 80% of the default size to 120% of the default size, or vice versa) is detected ( 16034 ). For example, an input for reducing the simulated physical size of virtual object 11002 is a pinch gesture as described with respect to FIGS. 11N-11P . In response to detecting the request to change the simulated physical size of the virtual object, the device is configured to: in accordance with the gradual change of the simulated physical size of the virtual object from the first simulated physical size to the second simulated physical size of the virtual object, the first user incrementally change the displayed size of the representation of the virtual object within the interface area (eg, the displayed size of the virtual object increases while the displayed size of the physical environment captured within the field of view of the one or more cameras remains unchanged) or shrink), during the gradual change of the displayed size of the representation of the virtual object within the first user interface area, the simulated physical size of the virtual object has reached a predefined simulated physical size (eg, 100% of the default size) In accordance with the determination, the device generates ( 16036 ) a tactile output to indicate that the simulated physical size of the virtual object has reached a predefined simulated physical size. For example, as described with respect to FIGS. 11N-11P , the displayed size of the representation of virtual object 11002 progressively decreases in response to a pinch gesture input. In FIG. 11O , the displayed size of the representation of virtual object 11002 is 100% of the size of virtual object 11002 (eg, within a user interface that includes a field of view 6036 of one or more cameras, as shown in FIG. 11I ). Upon reaching the size of the virtual object 11002 as originally displayed), a tactile output as indicated by 11024 is generated. Generating a tactile output in accordance with a determination that the simulated physical size of the virtual object has reached a predefined simulated physical size may provide feedback to the user indicating that it is not necessary). Providing improved tactile feedback (e.g., by providing sensory information that allows the user to perceive that a predefined simulated physical size of the virtual object has been reached without confusing the user interface with the displayed information) It improves the operability of the device, which in addition enables the user to use the device more quickly and efficiently, thereby reducing the power usage of the device and improving the battery life.

일부 실시예들에서, 미리정의된 시뮬레이션된 물리적 크기와 구별되는 가상 객체의 제2 시뮬레이션된 물리적 크기(예컨대, 축척조정 입력(예컨대, 가상 객체에 대한 핀치 또는 디핀치 제스처)의 결과로서, 디폴트 크기의 120%, 또는 디폴트 크기의 80%)로 가상 객체를 제1 사용자 인터페이스 영역(예컨대, AR 뷰) 내에 디스플레이하는 동안, 디바이스는 가상 객체를 미리정의된 시뮬레이션된 물리적 크기로 복귀시키라는 요청을 검출한다(예컨대, 터치 스크린 상에서 (예컨대, 가상 객체 상에서, 또는 대안적으로 가상 객체의 외측에서) 탭 또는 더블 탭 입력을 검출함)(16038).In some embodiments, a default size as a result of a second simulated physical size of the virtual object (eg, a scaling input (eg, a pinch or depinch gesture on the virtual object) that is distinct from the predefined simulated physical size). 120% of the default size, or 80% of the default size) while displaying the virtual object within the first user interface area (eg, AR view), the device detects a request to return the virtual object to a predefined simulated physical size. (eg, detect a tap or double tap input on the touch screen (eg, on the virtual object, or alternatively outside the virtual object)) 16038 .

예를 들어, 핀치 입력이 (도 11n 내지 도 11p와 관련하여 기술된 바와 같이) 가상 객체(11002)의 크기의 감소를 야기한 후, 더블 탭 입력이 (도 11r과 관련하여 기술된 바와 같이) 가상 객체(11002)에 대응하는 위치에서 검출된다. 가상 객체를 미리정의된 시뮬레이션된 물리적 크기로 복귀시키라는 요청을 검출하는 것에 응답하여, 디바이스는 가상 객체의 시뮬레이션된 물리적 크기의 미리정의된 시뮬레이션된 물리적 크기로의 변경에 따라 제1 사용자 인터페이스 영역 내의 가상 객체의 표현의 디스플레이된 크기를 변경한다(예컨대, 가상 객체의 디스플레이된 크기는 하나 이상의 카메라들의 시야 내에서 캡처되는 물리적 환경의 디스플레이된 크기가 변경되지 않은 채로 유지되는 동안 증가하거나 줄어든다)(16040). 예를 들어, 도 11r과 관련하여 기술된 더블 탭 입력에 응답하여, 가상 객체(11002)의 크기는 도 11i에 디스플레이된 바와 같은 가상 객체(11002)의 크기(하나 이상의 카메라들의 시야(6036)를 포함하는 사용자 인터페이스 내에 원래 디스플레이된 바와 같은 가상 객체(11002)의 크기)로 복귀한다. 일부 실시예들에서, 가상 객체의 시뮬레이션된 물리적 크기가 미리정의된 시뮬레이션된 물리적 크기(예컨대, 디폴트 크기의 100%)에 도달하였다는 결정에 따라, 디바이스는 가상 객체의 시뮬레이션된 물리적 크기가 미리정의된 시뮬레이션된 물리적 크기에 도달하였다는 것을 나타내기 위해 촉각적 출력을 생성한다. 가상 객체를 미리정의된 시뮬레이션된 물리적 크기로 복귀시키라는 요청을 검출하는 것에 응답하여 가상 객체의 디스플레이된 크기를 미리정의된 크기로 변경하는 것은 (예컨대, 디스플레이 크기를 조정하기 위해 제공되는 입력이 가상 객체를 미리정의된 시뮬레이션된 물리적 크기로 디스플레이하기에 충분할 때를 사용자가 추정하도록 요구하기보다는, 디스플레이된 크기를 미리정의된 시뮬레이션된 물리적 크기로 정밀하게 조정하는 옵션을 제공함으로써) 객체를 미리정의된 크기로 디스플레이하는 데 필요한 입력들의 수를 감소시킨다. 동작을 수행하는 데 필요한 입력들의 수를 감소시키는 것은 디바이스의 작동성을 향상시키고 사용자-디바이스 인터페이스를 더 효율적으로 만드는데, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.For example, after a pinch input causes a decrease in the size of virtual object 11002 (as described with respect to FIGS. 11N-11P ), a double tap input causes a virtual object 11002 (as described with respect to FIGS. 11R ). It is detected at a position corresponding to the object 11002 . In response to detecting the request to return the virtual object to the predefined simulated physical size, the device is configured within the first user interface area according to a change of the simulated physical size of the virtual object to the predefined simulated physical size. Change the displayed size of the representation of the virtual object (eg, the displayed size of the virtual object increases or decreases while the displayed size of the physical environment captured within the field of view of the one or more cameras remains unchanged) 16040 ). For example, in response to a double tap input described with respect to FIG. 11R , the size of the virtual object 11002 is the size of the virtual object 11002 (field of view 6036 of one or more cameras) as displayed in FIG. 11I . the size of the virtual object 11002 as originally displayed within the containing user interface). In some embodiments, upon determining that the simulated physical size of the virtual object has reached a predefined simulated physical size (eg, 100% of a default size), the device determines that the simulated physical size of the virtual object is a predefined Produces a tactile output to indicate that the simulated, simulated physical size has been reached. Changing the displayed size of the virtual object to the predefined size in response to detecting a request to return the virtual object to the predefined simulated physical size may include (eg, an input provided to adjust the display size Rather than requiring the user to estimate when an object is sufficient to display at a predefined simulated physical size, by providing the option to fine-tune the displayed size to a predefined simulated physical size) Reduces the number of inputs needed to display in size. Reducing the number of inputs required to perform an action improves the operability of the device and makes the user-device interface more efficient, which in addition enables the user to use the device more quickly and efficiently, thereby Reduces power usage and improves battery life.

일부 실시예들에서, 디바이스는 물리적 환경에 대한 하나 이상의 카메라들의 각각의 위치 및 배향에 따라 제2 세트의 시각적 속성들을 갖는 가상 객체의 표현의 제2 배향(예컨대, 객체 배치 기준들이 충족될 때의 현재 위치 및 배향)을 설정하기 위한 평면을 선택하는데, 여기서 평면을 선택하는 것은, 가상 객체의 표현이 (예컨대, 디바이스가 물리적 환경에서 제1 방향으로 지향한 결과로서) 하나 이상의 카메라들의 시야 내에서 캡처되는 물리적 환경의 제1 부분 위에 디스플레이되었을 때(예컨대, 반투명 객체의 베이스는 물리적 환경의 제1 부분 내의 평면과 중첩하고 있음) 객체 배치 기준들이 충족되었다는 결정에 따라, 제2 세트의 시각적 속성들을 갖는 가상 객체의 표현의 제2 배향을 설정하기 위한 평면으로서 하나 이상의 카메라들의 시야 내의 물리적 환경에서 검출되는 다수의 평면들 중 제1 평면을 (예컨대, 디스플레이 상의 제1 평면과 객체의 베이스 사이의 더 큰 근접성 및 물리적 세계 내의 물리적 환경의 제1 부분과 제1 평면 사이의 더 큰 근접성에 따라) 선택하는 것; 및 가상 객체의 표현이 (예컨대, 디바이스가 물리적 환경에서 제2 방향으로 지향한 결과로서) 하나 이상의 카메라들의 시야 내에서 캡처되는 물리적 환경의 제2 부분 위에 디스플레이되었을 때(예컨대, 반투명 객체의 베이스는 물리적 환경의 제2 부분 내의 평면과 중첩하고 있음) 객체 배치 기준들이 충족되었다는 결정에 따라, 제2 세트의 시각적 속성들을 갖는 가상 객체의 표현의 제2 배향을 설정하기 위한 평면으로서 하나 이상의 카메라들의 시야 내의 물리적 환경에서 검출되는 다수의 평면들 중 제2 평면을 (예컨대, 디스플레이 상의 제2 평면과 객체의 베이스 사이의 더 큰 근접성 및 물리적 세계 내의 물리적 환경의 제2 부분과 제2 평면 사이의 더 큰 근접성에 따라) 선택하는 것을 포함하고, 물리적 환경의 제1 부분은 물리적 환경의 제2 부분과 구별되고, 제1 평면은 제2 평면과 구별된다(16042). (예컨대, 많은 검출된 평면들 중 어느 평면이 가상 객체가 설정되는 평면일 것인지를 지정하기 위한 사용자 입력을 요구하지 않으면서) 가상 객체가 설정될 평면으로서 제1 평면 또는 제2 평면을 선택하는 것은 평면을 선택하는 데 필요한 입력들의 수를 감소시킨다. 동작을 수행하는 데 필요한 입력들의 수를 감소시키는 것은 디바이스의 작동성을 향상시키고 사용자-디바이스 인터페이스를 더 효율적으로 만드는데, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, the device configures a second orientation (eg, when object placement criteria current position and orientation), wherein selecting the plane indicates that the representation of the virtual object is within the field of view of the one or more cameras (eg, as a result of orienting the device in a first direction in the physical environment). When displayed over a first portion of the physical environment being captured (eg, the base of the translucent object overlaps a plane within the first portion of the physical environment), according to a determination that the object placement criteria have been met, the second set of visual attributes a first plane of a plurality of planes detected in the physical environment within the field of view of the one or more cameras as a plane for establishing a second orientation of the representation of the virtual object (eg, a further plane between the first plane on the display and the base of the object) selecting according to the greater proximity and greater proximity between the first plane and the first portion of the physical environment within the physical world; and when the representation of the virtual object was displayed over a second portion of the physical environment that was captured within the field of view of the one or more cameras (eg, as a result of the device being oriented in a second direction in the physical environment) (eg, the base of the translucent object is a field of view of the one or more cameras as a plane for establishing a second orientation of a representation of the virtual object having a second set of visual properties upon a determination that the object placement criteria have been met) a second plane of the plurality of planes detected in the physical environment within (eg, greater proximity between the second plane on the display and the base of the object and greater according to proximity), wherein the first portion of the physical environment is distinct from the second portion of the physical environment, and the first plane is distinct from the second plane ( 16042 ). Selecting the first plane or the second plane as the plane on which the virtual object is to be set (eg, without requiring user input to specify which of the many detected planes will be the plane on which the virtual object is set) Reduces the number of inputs needed to select a plane. Reducing the number of inputs required to perform an action improves the operability of the device and makes the user-device interface more efficient, which in addition enables the user to use the device more quickly and efficiently, thereby Reduces power usage and improves battery life.

일부 실시예들에서, 디바이스는 제2 세트의 시각적 속성들 및 제2 배향으로 가상 객체를 제1 사용자 인터페이스 영역(예컨대, AR 뷰) 내에 디스플레이하는 것과 동시에 스냅샷(snapshot) 어포던스(예컨대, 카메라 셔터 버튼)를 디스플레이한다(16044). 스냅샷 어포던스의 활성화에 응답하여, 디바이스는 하나 이상의 카메라들의 시야 내의 물리적 환경 내의 일정 배치 위치에 있는 가상 객체의 표현의 현재 뷰를 포함하는 스냅샷 이미지를, 제2 세트의 시각적 속성들 및 하나 이상의 카메라들의 시야 내에서 검출되는 물리적 환경 내의 평면에 대응하는 제2 배향으로, 캡처한다(16046). 객체의 현재 뷰의 스냅샷 이미지를 캡처하기 위한 스냅샷 어포던스를 디스플레이하는 것은 객체의 스냅샷 이미지를 캡처하는 데 필요한 입력들의 수를 감소시킨다. 동작을 수행하는 데 필요한 입력들의 수를 감소시키는 것은 디바이스의 작동성을 향상시키고 사용자-디바이스 인터페이스를 더 효율적으로 만드는데, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, the device displays the virtual object in the first user interface area (eg, AR view) with the second set of visual properties and the second orientation simultaneously with a snapshot affordance (eg, a camera shutter) button) is displayed (16044). In response to activation of the snapshot affordance, the device generates a snapshot image comprising a current view of the representation of the virtual object at a placement location within the physical environment within the field of view of the one or more cameras, a second set of visual attributes, and one or more Capture 16046, in a second orientation that corresponds to a plane in the physical environment detected within the camera's field of view. Displaying the snapshot affordance for capturing a snapshot image of the current view of the object reduces the number of inputs required to capture a snapshot image of the object. Reducing the number of inputs required to perform an action improves the operability of the device and makes the user-device interface more efficient, which in addition enables the user to use the device more quickly and efficiently, thereby Reduces power usage and improves battery life.

일부 실시예들에서, 디바이스는 제1 사용자 인터페이스 영역 내에 제2 세트의 시각적 속성들을 갖는 가상 객체의 표현과 함께 하나 이상의 제어부 어포던스들(예컨대, 스테이징 사용자 인터페이스로 다시 스위칭하기 위한 어포던스, AR 뷰어를 빠져나가기 위한 어포던스, 스냅샷을 캡처하기 위한 어포던스 등)을 디스플레이한다(16048). 예를 들어, 도 11j에는 뒤로 가기 제어부(6016), 토글 제어부(6018), 및 공유 제어부(6020)를 포함하는 한 세트의 제어부들이 디스플레이되어 있다. 제2 세트의 시각적 속성들을 갖는 가상 객체의 표현과 함께 하나 이상의 제어부 어포던스들을 디스플레이하는 동안, 디바이스는 제어부 페이딩(control-fading) 기준들이 충족되는 것을 (예컨대, (예컨대, 디바이스의 이동 및 카메라들의 시야에 대한 업데이트가 있거나 없거나) 임계 시간 동안 터치 감응형 표면 상에서 사용자 입력이 검출되지 않았음을) 검출한다(16050). 제어부 페이딩 기준들이 충족되는 것을 검출하는 것에 응답하여, 디바이스는 하나 이상의 카메라들의 시야를 포함하는 제1 사용자 인터페이스 영역 내에 제2 세트의 시각적 속성들을 갖는 가상 객체의 표현을 계속 디스플레이하는 동안 하나 이상의 제어부 어포던스들을 디스플레이하는 것을 중지한다(16052). 예를 들어, 도 11k 및 도 11l과 관련하여 기술된 바와 같이, 제어부들(6016, 6018, 6020)은 어떠한 사용자 입력도 임계 시간 동안 검출되지 않을 때 점진적으로 페이드 아웃되고 디스플레이되는 것이 중지된다. 일부 실시예들에서, 제어부 어포던스들이 페이드 아웃된 후, 터치 감응형 표면 상에서의 탭 입력 또는 가상 객체와의 상호작용은 디바이스가 제어부 어포던스들을 제1 사용자 인터페이스 영역 내의 가상 객체의 표현과 동시에 재디스플레이하게 한다. 제어부 페이딩 기준들이 충족된다고 결정하는 것에 응답하여 제어부들을 디스플레이하는 것을 자동으로 중지하는 것은 제어부들을 디스플레이하는 것을 중지하는 데 필요한 입력들의 수를 감소시킨다. 동작을 수행하는 데 필요한 입력들의 수를 감소시키는 것은 디바이스의 작동성을 향상시키고 사용자-디바이스 인터페이스를 더 효율적으로 만드는데, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, the device exits the AR viewer with one or more control affordances (eg, affordance to switch back to the staging user interface, AR viewer) with the representation of the virtual object having a second set of visual properties within the first user interface area. affordance to exit, affordance to capture a snapshot, etc.) is displayed (16048). For example, in FIG. 11J , a set of controls including a back control 6016 , a toggle control 6018 , and a sharing control 6020 are displayed. While displaying one or more control affordances along with the representation of the virtual object having a second set of visual properties, the device determines that control-fading criteria are met (eg, (eg, movement of the device and field of view of cameras)). Detect (16050) that no user input has been detected on the touch-sensitive surface for a threshold amount of time (with or without an update to ). In response to detecting that the control fading criteria are met, the device provides the one or more control affordances while continuing to display a representation of the virtual object having a second set of visual attributes within a first user interface area that includes a field of view of the one or more cameras. stop displaying them (16052). For example, as described with respect to FIGS. 11K and 11L , the controls 6016 , 6018 , 6020 gradually fade out and stop being displayed when no user input is detected for a threshold time. In some embodiments, after the control affordances fade out, a tap input on the touch-sensitive surface or interaction with the virtual object causes the device to redisplay the control affordances concurrently with the representation of the virtual object in the first user interface area. do. Automatically ceasing to display the controls in response to determining that the control fading criteria are met reduces the number of inputs required to stop displaying the controls. Reducing the number of inputs required to perform an action improves the operability of the device and makes the user-device interface more efficient, which in addition enables the user to use the device more quickly and efficiently, thereby Reduces power usage and improves battery life.

일부 실시예들에서, 제1 사용자 인터페이스 영역 내에 가상 객체를 디스플레이하라는 요청에 응답하여, 제1 사용자 인터페이스 영역에 포함되는 하나 이상의 카메라들의 시야의 적어도 일부분 위에 가상 객체의 표현을 디스플레이하기 전에, (예컨대, 하나 이상의 카메라들의 시야 내에서 캡처되는 물리적 환경에 대한 치수 및 공간적 관계 데이터를 생성하기에 상이한 시야각들로부터 충분한 양의 이미지들이 없기 때문에) 캘리브레이션 기준들이 충족되지 않는다는 결정에 따라, 디바이스는 사용자가 디바이스를 물리적 환경에 대해 이동시키기 위한 프롬프트를 디스플레이한다(예컨대, 방법(17000)을 참조하여 아래에서 더 상세히 설명되는 바와 같이, 디바이스를 이동시키기 위한 시각적 프롬프트를 디스플레이하고, 선택적으로, 제1 사용자 인터페이스 영역 내에 캘리브레이션 사용자 인터페이스 객체(예컨대, 디바이스의 이동에 따라 이동하는 탄력성 와이어프레임 볼(bouncy wireframe ball) 또는 입방체)를 디스플레이한다(예컨대, 캘리브레이션 사용자 인터페이스 객체는 하나 이상의 카메라들의 시야의 블러링된 이미지 상에 오버레이된다))(16054). 사용자가 디바이스를 물리적 환경에 대해 이동시키기 위한 프롬프트를 디스플레이하는 것은 (예컨대, 디바이스의 이동이 카메라(들)의 시야 내에 가상 객체를 배치하기 위한 정보를 획득하는 데 필요하다는 것을 나타내는) 시각적 피드백을 사용자에게 제공한다. 사용자에게 개선된 시각적 피드백을 제공하는 것은, (예컨대, 사용자가 캘리브레이션 입력을 제공하도록 도움으로써) 디바이스의 작동성을 향상시키고 사용자-디바이스 인터페이스를 더 효율적으로 만드는데, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, in response to a request to display the virtual object within the first user interface area, before displaying the representation of the virtual object over at least a portion of the field of view of one or more cameras included in the first user interface area (eg, , in accordance with a determination that the calibration criteria are not met (because there are not enough images from different viewing angles to generate dimensional and spatial relational data for the physical environment captured within the field of view of one or more cameras), the device display a prompt to move the device relative to the physical environment (eg, as described in greater detail below with reference to method 17000 , display a visual prompt to move the device, and optionally, a first user interface area Display a calibration user interface object (eg, a bouncy wireframe ball or cube that moves with movement of the device) within (eg, a calibration user interface object on a blurred image of the field of view of one or more cameras) overlaid)) (16054). Displaying a prompt for the user to move the device relative to the physical environment provides visual feedback to the user (eg, indicating that movement of the device is necessary to obtain information for placing a virtual object within the field of view of the camera(s)). provide to Providing the user with improved visual feedback improves the operability of the device (eg, by helping the user provide calibration input) and makes the user-device interface more efficient, which in addition allows the user to use the device more quickly It reduces the power consumption of devices and improves battery life by enabling them to be used efficiently.

도 16a 내지 도 16g에서의 동작들이 기술된 특정 순서는 단지 일례이며 기술된 순서가 동작들이 수행될 수 있는 유일한 순서임을 나타내는 것으로 의도되지는 않는다는 것이 이해되어야 한다. 당업자는 본 명세서에 기술된 동작들을 재순서화하는 다양한 방식들을 인식할 것이다. 추가적으로, 본 명세서에 기술된 다른 방법들(예를 들어, 방법들(800, 900, 1000, 17000, 18000, 19000, 20000))과 관련하여 본 명세서에 기술된 다른 프로세스들의 상세사항들이 도 16a 내지 도 16g와 관련하여 전술된 방법(16000)과 유사한 방식으로 또한 적용가능하다는 것이 주목되어야 한다. 예를 들어, 방법(16000)과 관련하여 전술된 접촉들, 입력들, 가상 객체들, 사용자 인터페이스 영역들, 시야들, 촉각적 출력들, 이동들, 및/또는 애니메이션들은 선택적으로, 본 명세서에 기술된 다른 방법들(예컨대, 방법들(800, 900, 1000, 17000, 18000, 19000, 20000))과 관련하여 본 명세서에 기술된 접촉들, 입력들, 가상 객체들, 사용자 인터페이스 영역들, 시야들, 촉각적 출력들, 이동들, 및/또는 애니메이션들의 특성들 중 하나 이상을 갖는다. 간결함을 위해, 이러한 상세사항들은 여기서 반복되지 않는다.It should be understood that the specific order in which the operations in FIGS. 16A-16G are described is merely an example and is not intended to indicate that the described order is the only order in which the operations may be performed. Those skilled in the art will recognize various ways of reordering the operations described herein. Additionally, details of other processes described herein in connection with other methods described herein (eg, methods 800 , 900 , 1000 , 17000 , 18000 , 19000 , 20000 ) are provided in FIGS. 16A through 16A . It should be noted that in a manner similar to method 16000 described above with respect to FIG. 16G is also applicable. For example, contacts, inputs, virtual objects, user interface regions, fields of view, tactile outputs, movements, and/or animations described above with respect to method 16000 are optionally described herein. Contacts, inputs, virtual objects, user interface areas, field of view described herein in connection with other methods described (eg, methods 800, 900, 1000, 17000, 18000, 19000, 20000) fields, tactile outputs, movements, and/or animations. For the sake of brevity, these details are not repeated here.

도 17a 내지 도 17d는 디바이스의 하나 이상의 카메라들의 이동에 따라 동적으로 애니메이션화되는 캘리브레이션 사용자 인터페이스 객체를 디스플레이하는 방법(17000)을 예시하는 흐름도들이다. 방법(17000)은 디스플레이 생성 컴포넌트(예컨대, 디스플레이, 프로젝터, 헤드 업 디스플레이 등), 하나 이상의 입력 디바이스들(예컨대, 터치 감응형 표면, 또는 디스플레이 생성 컴포넌트 및 터치 감응형 표면 둘 모두로서의 역할을 하는 터치 스크린 디스플레이), 하나 이상의 카메라들(예컨대, 디스플레이 및 터치 감응형 표면과 반대편인 디바이스의 면 상의 하나 이상의 후방 카메라들), 및 하나 이상의 카메라들을 포함하는 디바이스의 자세(예컨대, 주위의 물리적 환경에 대한 배향(예컨대, 회전 각, 요 각, 및/또는 기울기 각) 및 위치)의 변경들을 검출하기 위한 하나 이상의 자세 센서들(예컨대, 가속도계들, 자이로스코프들, 및/또는 자력계들)을 갖는 전자 디바이스(예컨대, 도 3의 디바이스(300), 또는 도 1a의 휴대용 다기능 디바이스(100))에서 수행된다. 방법(17000)에서의 일부 동작들이 선택적으로 조합되고/되거나, 일부 동작들의 순서가 선택적으로 변경된다.17A-17D are flow diagrams illustrating a method 17000 of displaying a calibration user interface object that is dynamically animated in response to movement of one or more cameras of a device. The method 17000 includes a display generating component (eg, a display, a projector, a heads up display, etc.), one or more input devices (eg, a touch-sensitive surface, or a touch that serves as both a display generating component and a touch-sensitive surface). a screen display), one or more cameras (eg, one or more rear-facing cameras on the side of the device opposite the display and touch-sensitive surface), and a pose of a device (eg, relative to the surrounding physical environment) including one or more cameras. Electronic device having one or more attitude sensors (eg, accelerometers, gyroscopes, and/or magnetometers) for detecting changes in orientation (eg, rotation angle, yaw angle, and/or tilt angle) and position) (eg, device 300 of FIG. 3 , or portable multifunction device 100 of FIG. 1A ). Some operations in method 17000 are selectively combined and/or the order of some operations is selectively changed.

디바이스는 하나 이상의 카메라들의 시야의 표현을 포함하는(예컨대, 시야는 물리적 환경의 적어도 일부분을 캡처함) 제1 사용자 인터페이스 영역 내에 물리적 환경(예컨대, 하나 이상의 카메라들을 포함하는 디바이스 주위의 물리적 환경)의 증강 현실 뷰를 디스플레이하라는 요청을 수신한다(17002). 일부 실시예들에서, 요청은 가상 객체의 스테이징 뷰로부터 가상 객체의 증강 현실 뷰로 스위칭하기 위한 버튼 상에서 검출되는 탭 입력이다. 일부 실시예들에서, 요청은 2차원 사용자 인터페이스 내의 가상 객체의 표현 다음에 디스플레이되는 증강 현실 어포던스의 선택이다. 일부 실시예들에서, 요청은 증강 현실 측정 애플리케이션(예컨대, 물리적 환경의 측정을 용이하게 하는 측정 앱)의 활성화이다. 예를 들어, 요청은, 도 12a와 관련하여 기술된 바와 같이, 하나 이상의 카메라들의 시야(6036) 내에 가상 객체(11002)를 디스플레이하기 위한 토글(6018)에서 검출되는 탭 입력이다.The device includes a view of a physical environment (eg, a physical environment around the device that includes the one or more cameras) within a first user interface area that includes a representation of the field of view of the one or more cameras (eg, the field of view captures at least a portion of the physical environment). A request to display an augmented reality view is received ( 17002 ). In some embodiments, the request is a tap input detected on the button to switch from the staging view of the virtual object to the augmented reality view of the virtual object. In some embodiments, the request is a selection of an augmented reality affordance that is displayed following the representation of the virtual object in the two-dimensional user interface. In some embodiments, the request is activation of an augmented reality measurement application (eg, a measurement app that facilitates measurement of the physical environment). For example, the request is a tap input detected at the toggle 6018 to display the virtual object 11002 within the field of view 6036 of one or more cameras, as described with respect to FIG. 12A .

물리적 환경의 증강 현실 뷰를 디스플레이하라는 요청을 수신하는 것에 응답하여, 디바이스는 하나 이상의 카메라들의 시야의 표현을 디스플레이한다(예컨대, 디바이스는 캘리브레이션 기준들이 충족되지 않을 때 하나 이상의 카메라들의 시야 내의 물리적 환경의 블러링된 형태를 디스플레이한다)(17004). 예를 들어, 디바이스는 도 12e-1에 도시된 바와 같이, 하나 이상의 카메라들의 시야(6036)의 블러링된 표현을 디스플레이한다. (예컨대, 하나 이상의 카메라들의 시야 내에서 캡처되는 물리적 환경에 대한 치수 및 공간적 관계 데이터를 생성하기에 (예컨대, 상이한 시야각들로부터의) 충분한 양의 이미지 데이터가 없기 때문에, 가상 객체에 대응하는 평면이 하나 이상의 카메라들의 시야 내에서 검출되지 않기 때문에, 그리고/또는 카메라들로부터의 이용가능한 이미지 데이터에 기초하여 평면 검출을 시작하거나 진행하기에 충분한 정보가 없기 때문에) 캘리브레이션 기준들이 물리적 환경의 증강 현실 뷰에 대해 충족되지 않는다는 결정에 따라, 디바이스는 (예컨대, 디스플레이 생성 컴포넌트를 통해, 그리고 하나 이상의 카메라들의 시야의 표현(예컨대, 시야의 블러링된 형태)을 포함하는 제1 사용자 인터페이스 영역에) 물리적 환경에서의 하나 이상의 카메라들의 이동에 따라 동적으로 애니메이션화되는 캘리브레이션 사용자 인터페이스 객체(예컨대, 탄력성 입방체 또는 와이어프레임 객체와 같은 스캔 프롬프트 객체)를 디스플레이한다. 예를 들어, 도 12e-1 내지 도 12i-1에서, 캘리브레이션 사용자 인터페이스 객체(12014)가 디스플레이된다. 하나 이상의 카메라들의 이동에 따른 캘리브레이션 사용자 인터페이스 객체의 애니메이션이, 예컨대, 도 12e-1 및 도 12f-1과 관련하여 기술된다. 일부 실시예들에서, 하나 이상의 카메라들의 시야 내에서 하나 이상의 평면들(예컨대, 바닥, 벽, 테이블, 등)을 검출하기 위해 하나 이상의 카메라들의 시야를 분석하는 것은 증강 현실 뷰의 표현을 디스플레이하라는 요청에 대응하는 입력의 초기 부분이 수신될 때 발생한다. 일부 실시예들에서, 분석은 (예컨대, 가상 객체가 스테이징 뷰 내에 디스플레이되는 동안) 요청을 수신하기 전에 발생한다. 캘리브레이션 사용자 인터페이스 객체를 디스플레이하는 것은, 캘리브레이션 사용자 인터페이스 객체를 디스플레이하는 동안, 하나 이상의 자세 센서들을 통해, 물리적 환경에서의 하나 이상의 카메라들의 자세(예컨대, 위치 및/또는 배향(예컨대, 회전 각, 기울기 각, 요 각))의 변경을 검출하는 것, 및 물리적 환경에서의 하나 이상의 카메라들의 자세의 변경을 검출하는 것에 응답하여, 물리적 환경에서의 하나 이상의 카메라들의 자세의 검출된 변경에 따라 캘리브레이션 사용자 인터페이스 객체(예컨대, 탄력성 입방체 또는 와이어프레임 객체와 같은 스캔 프롬프트 객체)의 적어도 하나의 디스플레이 파라미터(예컨대, 디스플레이 상에서의 배향, 크기, 회전, 또는 위치)를 조정하는 것을 포함한다. 예를 들어, 도 12e-2 및 도 12f-2에 각각 대응하는 도 12e-1 및 도 12f-1은 물리적 환경(5002)에 대한 디바이스(100)의 측방향 이동, 및 디바이스의 하나 이상의 카메라들의 디스플레이된 시야(6036)의 대응하는 변경을 예시한다. 도 12e-2 및 도 12f-2에서, 캘리브레이션 사용자 인터페이스 객체(12014)는 하나 이상의 카메라들의 이동에 응답하여 회전한다.In response to receiving the request to display an augmented reality view of the physical environment, the device displays a representation of the field of view of the one or more cameras (eg, the device displays a representation of the physical environment within the field of view of the one or more cameras when calibration criteria are not met). Display the blurred shape) (17004). For example, the device displays a blurred representation of the field of view 6036 of one or more cameras, as shown in FIG. 12E-1 . Since there is not enough image data (eg, from different viewing angles) to generate dimensional and spatial relational data for the physical environment (eg, captured within the field of view of one or more cameras), the plane corresponding to the virtual object is Because they are not detected within the field of view of one or more cameras, and/or because there is not enough information to initiate or proceed with plane detection based on image data available from the cameras), the calibration criteria are not included in the augmented reality view of the physical environment. In accordance with a determination that is not satisfied, the device in the physical environment (eg, via the display generating component, and in a first user interface area that includes a representation of the field of view of the one or more cameras (eg, a blurred form of the field of view)) Displays a calibration user interface object (eg, a scan prompt object such as a bouncy cube or wireframe object) that is dynamically animated according to the movement of one or more cameras of the . For example, in FIGS. 12E-1 to 12I-1 , a calibration user interface object 12014 is displayed. An animation of a calibration user interface object in response to movement of one or more cameras is described, for example, with respect to FIGS. 12E-1 and 12F-1 . In some embodiments, analyzing the field of view of one or more cameras to detect one or more planes (eg, floor, wall, table, etc.) within the field of view of the one or more cameras requires displaying a representation of the augmented reality view. Occurs when the initial part of the input corresponding to is received. In some embodiments, the analysis occurs prior to receiving the request (eg, while the virtual object is displayed in the staging view). Displaying the calibration user interface object may include, while displaying the calibration user interface object, via one or more pose sensors, the pose (eg, position and/or orientation (eg, rotation angle, tilt angle) of the one or more cameras in the physical environment. , yaw angle))), and in response to detecting a change in pose of the one or more cameras in the physical environment, a calibration user interface object according to the detected change in pose of the one or more cameras in the physical environment. adjusting at least one display parameter (eg, orientation, size, rotation, or position on the display) of (eg, a scan prompt object such as a flexible cube or wireframe object). For example, FIGS. 12E-1 and 12F-1 , corresponding to FIGS. 12E-2 and 12F-2, respectively, show lateral movement of device 100 relative to physical environment 5002, and one or more cameras of the device. It illustrates a corresponding change in the displayed field of view 6036 . 12E-2 and 12F-2, calibration user interface object 12014 rotates in response to movement of one or more cameras.

물리적 환경에서의 하나 이상의 카메라들의 자세의 검출된 변경에 따라 디스플레이 상에서 이동하는 캘리브레이션 사용자 인터페이스 객체(예컨대, 탄력성 입방체 또는 와이어프레임 객체와 같은 스캔 프롬프트 객체)를 디스플레이하는 동안, 디바이스는 캘리브레이션 기준들이 충족되는 것을 검출한다(17006). 예를 들어, 도 12e 내지 도 12j와 관련하여 기술된 바와 같이, 디바이스는 도 12e-1로부터 도 12i-1로 발생하는 디바이스의 이동에 응답하여 캘리브레이션 기준들이 충족된다고 결정한다.While displaying a calibration user interface object (eg, a scan prompt object such as a flexible cube or wireframe object) that moves on the display in response to a detected change in the pose of one or more cameras in the physical environment, the device determines that the calibration criteria are met. is detected (17006). For example, as described with respect to FIGS. 12E-12J , the device determines that calibration criteria are met in response to movement of the device occurring from FIGS. 12E-1 to 12I-1 .

캘리브레이션 기준들이 충족되는 것을 검출하는 것에 응답하여, 디바이스는 캘리브레이션 사용자 인터페이스 객체(예컨대, 탄력성 입방체 또는 와이어프레임 객체와 같은 스캔 프롬프트 객체)를 디스플레이하는 것을 중지한다(17008). 일부 실시예들에서, 디바이스가 캘리브레이션 사용자 인터페이스 객체를 디스플레이하는 것을 중지한 후, 디바이스는 블러링 없이 카메라들의 시야의 표현을 디스플레이한다. 일부 실시예들에서, 가상 객체의 표현은 카메라들의 시야의 블러링되지 않은 표현 위에 디스플레이된다. 예를 들어, 도 12j에서, 도 12e-1 내지 도 12i-1과 관련하여 기술된 디바이스의 이동에 응답하여, 캘리브레이션 사용자 인터페이스 객체(12014)는 더 이상 디스플레이되지 않고, 가상 객체(11002)는 카메라(들)의 시야의 블러링되지 않은 표현(6036) 위에 디스플레이된다. 하나 이상의 카메라들(예컨대, 디바이스의 물리적 환경을 캡처하는 디바이스 카메라들)의 이동에 따라 캘리브레이션 사용자 인터페이스 객체의 디스플레이 파라미터를 조정하는 것은 (예컨대, 디바이스의 이동이 캘리브레이션에 필요하다는 것을 나타내는) 시각적 피드백을 사용자에게 제공한다. 사용자에게 개선된 시각적 피드백을 제공하는 것은, (예컨대, 캘리브레이션 기준들을 충족시키는 데 필요한 정보를 제공하는 방식으로 사용자가 디바이스를 이동시키도록 도움으로써) 디바이스의 작동성을 향상시키고 사용자-디바이스 인터페이스를 더 효율적으로 만드는데, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In response to detecting that the calibration criteria are met, the device stops displaying the calibration user interface object (eg, a scan prompt object, such as a flexible cube or wireframe object) ( 17008 ). In some embodiments, after the device stops displaying the calibration user interface object, the device displays a representation of the cameras' field of view without blurring. In some embodiments, the representation of the virtual object is displayed over the unblurred representation of the cameras' field of view. For example, in FIG. 12J , in response to movement of the device described with respect to FIGS. 12E-1 through 12I-1 , the calibration user interface object 12014 is no longer displayed and the virtual object 11002 is the camera. displayed over the unblurred representation 6036 of the field of view of (s). Adjusting a display parameter of a calibration user interface object in response to movement of one or more cameras (e.g., device cameras that capture the physical environment of the device) provides visual feedback (e.g., indicating that movement of the device is necessary for calibration). provided to the user. Providing the user with improved visual feedback improves the operability of the device and further enhances the user-device interface (eg, by helping the user move the device in a manner that provides the information needed to meet calibration criteria). efficient, which additionally reduces the device's power usage and improves battery life by enabling the user to use the device more quickly and efficiently.

일부 실시예들에서, 하나 이상의 카메라들의 시야의 표현을 포함하는 제1 사용자 인터페이스 영역 내에 물리적 환경(예컨대, 하나 이상의 카메라들을 포함하는 디바이스 주위의 물리적 환경)의 증강 현실 뷰를 디스플레이하라는 요청은 물리적 환경의 증강 현실 뷰 내에 가상 3차원 객체(예컨대, 3차원 모델을 갖는 가상 객체)의 표현을 디스플레이하라는 요청을 포함한다(17010). 일부 실시예들에서, 요청은 가상 객체의 스테이징 뷰로부터 가상 객체의 증강 현실 뷰로 스위칭하기 위한 버튼 상에서 검출되는 탭 입력이다. 일부 실시예들에서, 요청은 2차원 사용자 인터페이스 내의 가상 객체의 표현 다음에 디스플레이되는 증강 현실 어포던스의 선택이다. 예를 들어, 도 12a에서, 토글 제어부(6018)에 대응하는 위치에서의 접촉(12002)에 의한 입력은, 도 12b에 도시된 바와 같이, 카메라들의 시야(6036)를 포함하는 사용자 인터페이스 내에 가상 객체(11002)를 디스플레이하라는 요청이다. 증강 현실 뷰 내에 가상 객체를 디스플레이하라는 요청에 응답하여 물리적 환경의 증강 현실 뷰를 디스플레이하는 것은 (예컨대, 물리적 환경의 뷰 및 가상 객체 둘 모두를 디스플레이하기 위한) 필요한 입력들의 수를 감소시킨다. 동작을 수행하는 데 필요한 입력들의 수를 감소시키는 것은 (예컨대, 사용자가 캘리브레이션 입력을 제공하도록 도움으로써) 디바이스의 작동성을 향상시키고 사용자-디바이스 인터페이스를 더 효율적으로 만드는데, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, the request to display an augmented reality view of the physical environment (eg, the physical environment surrounding the device including the one or more cameras) within a first user interface area that includes a representation of the field of view of the one or more cameras is the physical environment and a request to display a representation of the virtual three-dimensional object (eg, a virtual object having a three-dimensional model) within the augmented reality view of ( 17010 ). In some embodiments, the request is a tap input detected on the button to switch from the staging view of the virtual object to the augmented reality view of the virtual object. In some embodiments, the request is a selection of an augmented reality affordance that is displayed following the representation of the virtual object in the two-dimensional user interface. For example, in FIG. 12A , input by contact 12002 at a location corresponding to toggle control 6018 is a virtual object within a user interface that includes a field of view 6036 of the cameras, as shown in FIG. 12B . It is a request to display 11002. Displaying the augmented reality view of the physical environment in response to a request to display the virtual object within the augmented reality view reduces the number of inputs required (eg, to display both the view of the physical environment and the virtual object). Reducing the number of inputs required to perform an operation improves the operability of the device (eg, by helping the user provide a calibration input) and makes the user-device interface more efficient, which in addition allows the user to use the device It reduces the device's power usage and improves battery life by enabling faster and more efficient use.

일부 실시예들에서, 디바이스는 캘리브레이션 사용자 인터페이스 객체를 디스플레이하는 것을 중지한 후에 하나 이상의 카메라들의 시야의 표현을 포함하는 제1 사용자 인터페이스 영역 내에 가상 3차원 객체의 표현을 (예컨대, 캘리브레이션 기준들이 충족된 후) 디스플레이한다(17012). 일부 실시예들에서, 요청에 응답하여, 캘리브레이션이 완료되고 카메라의 시야가 완전히 선명하게 디스플레이된 후, 가상 객체는 하나 이상의 카메라들의 시야에서 식별된 미리정의된 평면(예컨대, 가상 객체의 3차원 표현에 대한 지지 평면으로서 역할을 할 수 있는 수직 벽 또는 수평 바닥 표면과 같은 물리적 표면)에 대한 미리정의된 위치 및/또는 배향으로 낙하한다. 예를 들어, 도 12j에서, 디바이스는 도 12e 내지 도 12i에 디스플레이되었던 캘리브레이션 사용자 인터페이스 객체(12014)를 디스플레이하는 것을 중지하였고, 가상 객체(11002)는 카메라들의 시야(6036)를 포함하는 사용자 인터페이스 내에 디스플레이된다. 캘리브레이션 사용자 인터페이스 객체를 디스플레이하는 것을 중지한 후 디스플레이된 증강 현실 뷰 내에 가상 객체를 디스플레이하는 것은 (예컨대, 캘리브레이션 기준들이 충족되었다는 것을 나타내기 위한) 시각적 피드백을 제공한다. 개선된 시각적 피드백을 사용자에게 제공하는 것은, (예컨대, 캘리브레이션 기준들이 충족되기 전에 사용자가 적절한 입력들을 제공하도록 그리고 가상 객체를 조작하기 위한 입력을 제공하려는 시도를 피하도록 도움으로써) 디바이스의 작동성을 향상시키고 사용자-디바이스 인터페이스를 더 효율적으로 만드는데, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, after the device stops displaying the calibration user interface object, the device displays a representation of the virtual three-dimensional object within the first user interface area that includes a representation of the field of view of the one or more cameras (eg, when calibration criteria have been met). After) display (17012). In some embodiments, in response to the request, after calibration is complete and the camera's field of view is displayed fully clear, the virtual object is placed in an identified predefined plane (eg, a three-dimensional representation of the virtual object) in the field of view of one or more cameras. falls at a predefined location and/or orientation relative to a physical surface such as a vertical wall or horizontal floor surface that may serve as a support plane for For example, in FIG. 12J , the device has ceased to display the calibration user interface object 12014 that was displayed in FIGS. 12E-12I , and the virtual object 11002 is within the user interface including the field of view 6036 of the cameras. is displayed. Displaying the virtual object within the displayed augmented reality view after stopping displaying the calibration user interface object provides visual feedback (eg, to indicate that calibration criteria have been met). Providing the user with improved visual feedback may improve the operability of the device (eg, by helping the user provide appropriate inputs before calibration criteria are met and avoiding attempts to provide input to manipulate the virtual object). and make the user-device interface more efficient, which additionally reduces the power usage of the device and improves battery life by enabling the user to use the device more quickly and efficiently.

일부 실시예들에서, 디바이스는 제1 사용자 인터페이스 영역 내에 가상 3차원 객체의 표현을 캘리브레이션 사용자 인터페이스 객체와 동시에 (예컨대, 캘리브레이션 사용자 인터페이스 객체 뒤에) (예컨대, 캘리브레이션 기준들이 충족되기 전에) 디스플레이하는데, 가상 3차원 객체의 표현은 물리적 환경에서 하나 이상의 카메라들의 이동 동안(예컨대, 캘리브레이션 사용자 인터페이스 객체가 하나 이상의 카메라들의 이동에 따라 제1 사용자 인터페이스 영역 내에서 이동되는 동안) 제1 사용자 인터페이스 영역 내의 고정된 위치에 유지된다(예컨대, 가상 3차원 객체는 물리적 환경 내의 위치에 배치되지 않는다)(17014). 예를 들어, 도 12e-1 내지 도 12i-1에서, 가상 객체(1102)의 표현은 캘리브레이션 사용자 인터페이스 객체(12014)와 동시에 디스플레이된다. 하나 이상의 카메라들을 포함하는 디바이스(100)가 (예컨대, 도 12e-1 및 도 12f-1 그리고 대응하는 도 12e-2 및 도 12f-2에 예시된 바와 같이) 이동함에 따라, 가상 객체(1102)는 하나 이상의 카메라들의 시야(6036)를 포함하는 사용자 인터페이스 내의 고정된 위치에 유지된다. 가상 객체를 캘리브레이션 사용자 인터페이스 객체와 동시에 디스플레이하는 것은 (예컨대, 캘리브레이션이 수행되고 있는 객체를 나타내기 위한) 시각적 피드백을 제공한다. 사용자에게 개선된 시각적 피드백을 제공하는 것은, (예컨대, 가상 객체가 배치될 평면에 대응하는 캘리브레이션 입력을 사용자가 제공하도록 도움으로써) 디바이스의 작동성을 향상시키고 사용자-디바이스 인터페이스를 더 효율적으로 만드는데, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, the device displays a representation of the virtual three-dimensional object within the first user interface area concurrently with the calibration user interface object (eg, after the calibration user interface object) (eg, before calibration criteria are met), wherein the virtual The representation of the three-dimensional object is at a fixed position within the first user interface area during movement of one or more cameras in the physical environment (eg, while the calibration user interface object is moved within the first user interface area in response to movement of the one or more cameras). (eg, the virtual three-dimensional object is not placed at a location within the physical environment) 17014 . For example, in FIGS. 12E-1 through 12I-1 , the representation of the virtual object 1102 is displayed concurrently with the calibration user interface object 12014 . As device 100 including one or more cameras moves (eg, as illustrated in FIGS. 12E-1 and 12F-1 and corresponding FIGS. 12E-2 and 12F-2), virtual object 1102 is maintained in a fixed position within the user interface including the field of view 6036 of one or more cameras. Displaying the virtual object concurrently with the calibration user interface object provides visual feedback (eg, to indicate the object on which calibration is being performed). Providing the user with improved visual feedback improves the operability of the device (e.g., by helping the user provide a calibration input corresponding to the plane on which the virtual object is to be placed) and makes the user-device interface more efficient; This additionally reduces the power usage of the device and improves battery life by enabling the user to use the device more quickly and efficiently.

일부 실시예들에서, 하나 이상의 카메라들의 시야의 표현을 포함하는 제1 사용자 인터페이스 영역 내에 물리적 환경(예컨대, 하나 이상의 카메라들을 포함하는 디바이스 주위의 물리적 환경)의 증강 현실 뷰를 디스플레이하라는 요청은 하나 이상의 카메라들의 시야 내에서 캡처되는 물리적 환경 내의 어떠한 가상 3차원 객체(예컨대, 3차원 모델을 갖는 가상 객체)의 표현의 디스플레이도 요청하지 않으면서 (예컨대, 하나 이상의 사용자 인터페이스 객체들 및/또는 제어부들(예컨대, 평면들, 객체들, 포인터들, 아이콘들, 마커들, 등의 윤곽들)과 함께) 하나 이상의 카메라들의 시야의 표현을 디스플레이하라는 요청을 포함한다(17016). 일부 실시예들에서, 요청은 2차원 사용자 인터페이스 내의 가상 객체의 표현 다음에 디스플레이되는 증강 현실 어포던스의 선택이다. 일부 실시예들에서, 요청은 증강 현실 측정 애플리케이션(예컨대, 물리적 환경의 측정을 용이하게 하는 측정 앱)의 활성화이다. 어떠한 가상 3차원 객체의 표현의 디스플레이도 요청하지 않으면서 하나 이상의 카메라들의 시야의 표현을 디스플레이하도록 요청하는 것은 (예컨대, 가상 객체가 디스플레이되는지 여부에 관계없이 캘리브레이션이 필요하다는 것을 나타내기 위해 동일한 캘리브레이션 사용자 인터페이스 객체를 사용함으로써) 피드백을 제공한다. 사용자에게 개선된 피드백을 제공하는 것은 디바이스의 작동성을 향상시키고 사용자-디바이스 인터페이스를 더 효율적으로 만드는데, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, the request to display an augmented reality view of the physical environment (eg, the physical environment surrounding the device including the one or more cameras) within a first user interface area that includes a representation of the field of view of the one or more cameras may include the one or more cameras. Without requesting display of a representation of any virtual three-dimensional object (eg, a virtual object having a three-dimensional model) in the physical environment that is captured within the field of view of the cameras (eg, one or more user interface objects and/or controls ( and a request to display ( 17016 ) a representation of the field of view of one or more cameras (eg, with outlines of planes, objects, pointers, icons, markers, etc.). In some embodiments, the request is a selection of an augmented reality affordance that is displayed following the representation of the virtual object in the two-dimensional user interface. In some embodiments, the request is activation of an augmented reality measurement application (eg, a measurement app that facilitates measurement of the physical environment). Requesting to display a representation of the field of view of one or more cameras without requesting display of a representation of any virtual three-dimensional object (e.g., to indicate that a virtual object needs calibration whether or not the virtual object is displayed is displayed by the same calibration user). by using interface objects) to provide feedback. Providing improved feedback to the user improves the operability of the device and makes the user-device interface more efficient, which additionally reduces the power usage of the device by enabling the user to use the device more quickly and efficiently. and improve battery life.

일부 실시예들에서, 물리적 환경의 증강 현실 뷰를 디스플레이하라는 요청을 수신하는 것에 응답하여, 디바이스는 하나 이상의 카메라들의 시야의 표현을 디스플레이하고(예컨대, 캘리브레이션 기준들이 충족되지 않을 때 하나 이상의 카메라들의 시야 내의 물리적 환경의 블러링된 형태를 디스플레이함); (예컨대, 하나 이상의 카메라들의 시야 내에서 캡처되는 물리적 환경에 대한 치수 및 공간적 관계 데이터를 생성하기에 (예컨대, 상이한 시야각들로부터의) 충분한 양의 이미지 데이터가 있기 때문에, 가상 객체에 대응하는 평면이 하나 이상의 카메라들의 시야 내에서 검출되었기 때문에, 그리고/또는 카메라들로부터의 이용가능한 이미지 데이터에 기초하여 평면 검출을 시작하거나 진행하기에 충분한 정보가 있기 때문에) 캘리브레이션 기준들이 물리적 환경의 증강 현실 뷰에 대해 충족된다는 결정에 따라, 디바이스는 캘리브레이션 사용자 인터페이스 객체(예컨대, 탄력성 입방체 또는 와이어프레임 객체와 같은 스캔 프롬프트 객체)의 디스플레이를 보류한다(17018). 일부 실시예들에서, 평면들에 대한 물리적 환경의 스캐닝은 가상 3차원 객체가 스테이징 사용자 인터페이스 내에 디스플레이되는 동안 시작되는데, 이는 디바이스가, (예컨대, 카메라들의 시야가 물리적 공간 내에서 하나 이상의 평면들을 검출하기에 충분한 데이터를 제공하기 위해 충분히 이동한) 일부 환경들에서, 증강 현실 뷰를 디스플레이하기 전에 물리적 공간 내에서 하나 이상의 평면들을 검출하는 것을 가능하게 하여, 캘리브레이션 사용자 인터페이스가 디스플레이될 필요가 없게 한다. 캘리브레이션 기준들이 물리적 환경의 증강 현실 뷰에 대해 충족된다는 결정에 따라 캘리브레이션 사용자 인터페이스 객체의 디스플레이를 보류하는 것은 (예컨대, 캘리브레이션 사용자 인터페이스 객체가 없는 것이 캘리브레이션 기준들이 충족되었다는 것 및 디바이스의 이동이 캘리브레이션에 필요하지 않다는 것을 나타내는) 시각적 피드백을 사용자에게 제공한다. 사용자에게 개선된 시각적 피드백을 제공하는 것은, (예컨대, 사용자가 캘리브레이션을 목적으로 디바이스를 불필요하게 이동하는 것을 피하도록 도움으로써) 디바이스의 작동성을 향상시키고 사용자-디바이스 인터페이스를 더 효율적으로 만드는데, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, in response to receiving a request to display an augmented reality view of the physical environment, the device displays a representation of the field of view of the one or more cameras (eg, the field of view of the one or more cameras when calibration criteria are not met) displaying a blurred shape of the physical environment within); Because there is sufficient amount of image data (eg, from different viewing angles) to generate dimensional and spatial relational data for the physical environment (eg, captured within the field of view of one or more cameras), the plane corresponding to the virtual object is Because they have been detected within the field of view of one or more cameras, and/or because there is sufficient information to initiate or proceed with plane detection based on image data available from the cameras) the calibration criteria are applied to the augmented reality view of the physical environment. Upon determining that it is satisfied, the device suspends display of the calibration user interface object (eg, a scan prompt object such as a flexible cube or wireframe object) ( 17018 ). In some embodiments, scanning of the physical environment for planes is initiated while a virtual three-dimensional object is displayed within the staging user interface, which causes the device (eg, the field of view of the cameras to detect one or more planes in physical space). In some circumstances (which has moved sufficiently to provide sufficient data to do so), it may be possible to detect one or more planes in physical space prior to displaying the augmented reality view, so that the calibration user interface does not need to be displayed. Withholding display of a calibration user interface object in accordance with a determination that the calibration criteria are met for the augmented reality view of the physical environment (eg, that the absence of a calibration user interface object indicates that the calibration criteria have been met and that movement of the device is required for calibration provide visual feedback to the user indicating that it is not Providing the user with improved visual feedback improves the operability of the device (e.g., by helping the user avoid moving the device unnecessarily for calibration purposes) and makes the user-device interface more efficient, which Additionally, it reduces the power usage of the device and improves battery life by enabling the user to use the device more quickly and efficiently.

일부 실시예들에서, 디바이스는, 증강 현실 뷰의 캘리브레이션을 개선하기 위해 사용자에 의해 취해질 수 있는 액션들에 관한 정보를 제공하는 캘리브레이션 사용자 인터페이스 객체와 동시에(예컨대, 캘리브레이션 사용자 인터페이스 객체 다음에), 제1 사용자 인터페이스 영역 내에 텍스트 객체(예컨대, 현재 검출되는 에러 상태를 설명하는 텍스트 설명 및/또는 (예컨대, 검출된 에러 상태를 정정하기 위한) 사용자 액션을 요청하는 텍스트 프롬프트)를 (예컨대, 캘리브레이션 기준들이 충족되기 전에) 디스플레이한다(17020). 일부 실시예들에서, 텍스트 객체는, "excessive movement(과도한 이동)", "low detail(낮은 디테일)", "move closer(더 가깝게 이동)" 등과 같은 디바이스의 이동에 대한 프롬프트를 (예컨대, 현재 검출된 에러 상태와 함께) 사용자에게 제공한다. 일부 실시예들에서, 디바이스는 캘리브레이션 프로세스 동안의 사용자의 액션들 및 사용자의 액션들에 기초하여 검출되는 새로운 에러 상태들에 따라 텍스트 객체를 업데이트한다. 캘리브레이션 사용자 인터페이스 객체와 동시에 텍스트를 디스플레이하는 것은 (예컨대, 캘리브레이션에 필요한 이동의 유형의 구두 표시를 제공하는) 시각적 피드백을 사용자에게 제공한다. 사용자에게 개선된 시각적 피드백을 제공하는 것은, (예컨대, 디바이스를 작동시키고/그와 상호작용할 때 사용자가 적절한 입력들을 제공하는 것을 돕고 사용자 실수들을 감소시킴으로써) 디바이스의 작동성을 향상시키고 사용자-디바이스 인터페이스를 더 효율적으로 만드는데, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, the device concurrently with a calibration user interface object (eg, following a calibration user interface object) that provides information regarding actions that may be taken by the user to improve calibration of the augmented reality view. 1 Insert a text object (eg, a text description that describes the currently detected error condition and/or a text prompt requesting a user action (eg, to correct the detected error condition)) within the user interface area (eg, the calibration criteria are before being satisfied) display (17020). In some embodiments, the text object provides a prompt for movement of the device, such as "excessive movement", "low detail", "move closer", etc. (eg, the current along with the detected error status) to the user. In some embodiments, the device updates the text object according to the user's actions during the calibration process and new error conditions detected based on the user's actions. Displaying text concurrently with the calibration user interface object provides visual feedback to the user (eg, providing a verbal indication of the type of movement required for calibration). Providing the user with improved visual feedback improves the operability of the device and reduces user errors (eg, by helping the user provide appropriate inputs when operating and/or interacting with the device) and user-device interface. more efficient, which additionally enables users to use the device more quickly and efficiently, thereby reducing the device's power usage and improving battery life.

일부 실시예들에서, 캘리브레이션 기준들이 충족됨을 (예컨대, 캘리브레이션 사용자 인터페이스 객체가 디스플레이되기도 전에 기준들이 충족됨을, 또는 캘리브레이션 사용자 인터페이스 객체가 일정 기간 동안 디스플레이 및 애니메이션화된 후에 기준들이 충족됨을) 검출하는 것에 응답하여, 디바이스는 (예컨대, 캘리브레이션 사용자 인터페이스 객체가 초기에 디스플레이된 경우 캘리브레이션 사용자 인터페이스 객체를 디스플레이하는 것을 중지한 후) 하나 이상의 카메라들의 시야 내에서 캡처되는 물리적 환경에서 검출되는 평면의 시각적 표시를 디스플레이한다(예컨대, 검출된 평면 둘레에 윤곽을 디스플레이하거나, 검출된 평면을 강조함)(17022). 예를 들어, 도 12j에서, 평면(바닥 표면(5038))은 평면이 하나 이상의 카메라들의 디스플레이된 시야(6036) 내에서 캡처된 바와 같이 물리적 환경(5002)에서 검출되었다는 것을 나타내기 위해 강조된다. 검출된 평면의 시각적 표시를 디스플레이하는 것은 (예컨대, 디바이스 카메라(들)에 의해 캡처되는 물리적 환경에서 평면이 검출되었다는 것을 나타내는) 시각적 피드백을 제공한다. 사용자에게 개선된 시각적 피드백을 제공하는 것은, (예컨대, 디바이스를 작동시키고/그와 상호작용할 때 사용자가 적절한 입력들을 제공하는 것을 돕고 사용자 실수들을 감소시킴으로써) 디바이스의 작동성을 향상시키고 사용자-디바이스 인터페이스를 더 효율적으로 만드는데, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, in response to detecting that calibration criteria are met (eg, that the criteria are met before the calibration user interface object is even displayed, or that the criteria are met after the calibration user interface object is displayed and animated for a period of time) Thus, the device displays a visual representation of a plane detected in the physical environment captured within the field of view of one or more cameras (eg, after stopping displaying the calibration user interface object if the calibration user interface object was initially displayed). (eg, display a contour around the detected plane, or highlight the detected plane) 17022 . For example, in FIG. 12J , a plane (floor surface 5038 ) is highlighted to indicate that the plane was detected in the physical environment 5002 as captured within the displayed field of view 6036 of one or more cameras. Displaying a visual indication of the detected plane provides visual feedback (eg, indicating that a plane was detected in the physical environment captured by the device camera(s)). Providing the user with improved visual feedback improves the operability of the device and reduces user errors (eg, by helping the user provide appropriate inputs when operating/interacting with the device) and user-device interface. more efficient, which additionally enables users to use the device more quickly and efficiently, thereby reducing the device's power usage and improving battery life.

일부 실시예들에서, 물리적 환경의 증강 현실 뷰를 디스플레이하라는 요청을 수신하는 것에 응답하여, 캘리브레이션 기준들이 충족되지 않는다는 결정에 따라 그리고 캘리브레이션 사용자 인터페이스 객체를 디스플레이하기 전에, 디바이스는 (예컨대, 디스플레이 생성 컴포넌트를 통해, 그리고 하나 이상의 카메라들의 시야의 표현(예컨대, 시야의 블러링된 형태)을 포함하는 제1 사용자 인터페이스 영역에) 평면의 표현에 대해 이동하는 디바이스의 표현을 포함하는 애니메이션화된 프롬프트 객체(예컨대, 탄력성 입방체 또는 와이어프레임 객체와 같은 스캔 프롬프트 객체)를 디스플레이한다(예컨대, 평면의 표현에 대한 디바이스의 표현의 이동은 사용자에 의해 이루어질 디바이스의 요구되는 이동을 나타낸다)(17024). 예를 들어, 애니메이션화된 프롬프트 객체는, 도 12b 내지 도 12d와 관련하여 기술된 바와 같이, 평면의 표현(12010)에 대해 이동하는 디바이스(100)의 표현(12004)을 포함한다. 일부 실시예들에서, 디바이스는 디바이스가 디바이스의 이동을 검출할 때 애니메이션화된 프롬프트 객체를 디스플레이하는 것을 중지한다(예컨대, 캘리브레이션이 진행되는 것을 가능하게 할 방식으로 사용자가 디바이스를 이동시키기 시작했다는 것을 나타냄). 일부 실시예들에서, 디바이스는, 디바이스의 캘리브레이션에 대해 추가로 사용자를 안내하기 위해 디바이스가 디바이스의 이동을 검출할 때 그리고 캘리브레이션이 완료되기 전에, 애니메이션화된 프롬프트 객체의 디스플레이를 캘리브레이션 사용자 인터페이스 객체로 대체한다. 예를 들어, 도 12c 내지 도 12e와 관련하여 기술된 바와 같이, 디바이스의 이동이 (도 12c 및 도 12d에 도시된 바와 같이) 검출된 경우, 디바이스(100)의 표현(12004)을 포함하는 애니메이션화된 프롬프트가 디스플레이되는 것이 중지되고, 캘리브레이션 사용자 인터페이스 객체(12014)가 도 12e에 디스플레이된다. 평면의 표현에 대해 이동하는 디바이스의 표현을 포함하는 애니메이션화된 프롬프트 객체를 디스플레이하는 것은 (예컨대, 캘리브레이션에 필요한 디바이스의 이동의 유형을 예시하는) 시각적 피드백을 사용자에게 제공한다. 사용자에게 개선된 시각적 피드백을 제공하는 것은, (예컨대, 캘리브레이션 기준들을 충족시키는 데 필요한 정보를 제공하는 방식으로 사용자가 디바이스를 이동시키도록 도움으로써) 디바이스의 작동성을 향상시키고 사용자-디바이스 인터페이스를 더 효율적으로 만드는데, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, in response to receiving a request to display an augmented reality view of the physical environment, in accordance with a determination that the calibration criteria are not met and prior to displaying the calibration user interface object, the device (eg, a display creation component An animated prompt object (eg, a representation of a device moving through and with respect to a representation of a plane) in a first user interface area that includes a representation of the field of view (eg, a blurred form of the field of view) of one or more cameras. , a scan prompt object, such as a bouncy cube or wireframe object) (eg, movement of the representation of the device relative to the representation of the plane indicates a desired movement of the device to be made by the user) 17024 . For example, the animated prompt object includes a representation 12004 of the device 100 moving relative to a representation 12010 of a plane, as described with respect to FIGS. 12B-12D . In some embodiments, the device stops displaying the animated prompt object when the device detects movement of the device (eg, indicating that the user has begun moving the device in a manner that will enable the calibration to proceed) ). In some embodiments, the device replaces the display of the animated prompt object with a calibration user interface object when the device detects movement of the device and before calibration is complete to further guide the user regarding calibration of the device. do. For example, as described in connection with FIGS. 12C-12E , when movement of the device is detected (as shown in FIGS. 12C and 12D ), an animation comprising a representation 12004 of device 100 . The displayed prompt stops being displayed, and the calibration user interface object 12014 is displayed in FIG. 12E . Displaying an animated prompt object that includes a representation of the device moving relative to the representation of the plane provides visual feedback to the user (eg, illustrating the type of motion of the device needed for calibration). Providing the user with improved visual feedback improves the operability of the device and further enhances the user-device interface (eg, by helping the user move the device in a manner that provides the information needed to meet calibration criteria). efficient, which additionally reduces the device's power usage and improves battery life by enabling the user to use the device more quickly and efficiently.

일부 실시예들에서, 물리적 환경에서의 하나 이상의 카메라들의 자세의 검출된 변경에 따라 캘리브레이션 사용자 인터페이스 객체의 적어도 하나의 디스플레이 파라미터를 조정하는 것은, 물리적 환경에서의 하나 이상의 카메라들의 이동의 제1 크기에 따라 캘리브레이션 사용자 인터페이스 객체를 제1 양만큼 이동시키는 것; 및 물리적 환경에서의 하나 이상의 카메라들의 이동의 제2 크기에 따라 캘리브레이션 사용자 인터페이스 객체를 제2 양만큼 이동시키는 것을 포함하고, 제1 양은 제2 양과는 구별되고(예컨대, 제2 양보다 크고), 이동의 제1 크기는 이동의 제2 크기와 구별된다(예컨대, 제2 크기보다 크다)(예컨대, 이동의 제1 및 제2 크기들은 물리적 환경에서의 동일한 방향으로의 이동에 기초하여 측정된다)(17026). 하나 이상의 (디바이스) 카메라들의 이동의 크기에 대응하는 양만큼 캘리브레이션 사용자 인터페이스 객체를 이동시키는 것은 (예컨대, 캘리브레이션 사용자 인터페이스 객체의 이동이 캘리브레이션에 필요한 디바이스의 이동에 대한 가이드인 것을 사용자에게 나타내는) 시각적 피드백을 제공한다. 사용자에게 개선된 시각적 피드백을 제공하는 것은, (예컨대, 디바이스를 작동시키고/그와 상호작용할 때 사용자가 적절한 입력들을 제공하는 것을 돕고 사용자 실수들을 감소시킴으로써) 디바이스의 작동성을 향상시키고 사용자-디바이스 인터페이스를 더 효율적으로 만드는데, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, adjusting the at least one display parameter of the calibration user interface object according to the detected change in pose of the one or more cameras in the physical environment is dependent on a first magnitude of movement of the one or more cameras in the physical environment. moving the calibration user interface object according to the first amount; and moving the calibration user interface object by a second amount according to a second magnitude of movement of the one or more cameras in the physical environment, wherein the first amount is distinct from (eg, greater than the second amount) the second amount; The first magnitude of movement is distinct from (eg, greater than the second magnitude of) a second magnitude of movement (eg, the first and second magnitudes of movement are measured based on movement in the same direction in the physical environment) (17026). Moving the calibration user interface object by an amount corresponding to the magnitude of the movement of the one or more (device) cameras may result in visual feedback (eg, indicating to the user that the movement of the calibration user interface object is a guide to movement of the device required for calibration). provides Providing the user with improved visual feedback improves the operability of the device and reduces user errors (eg, by helping the user provide appropriate inputs when operating and/or interacting with the device) and user-device interface. more efficient, which additionally enables users to use the device more quickly and efficiently, thereby reducing the device's power usage and improving battery life.

일부 실시예들에서, 물리적 환경에서의 하나 이상의 카메라들의 자세의 검출된 변경에 따라 캘리브레이션 사용자 인터페이스 객체의 적어도 하나의 디스플레이 파라미터를 조정하는 것은, 하나 이상의 카메라들의 자세의 검출된 변경이 제1 유형의 이동(예컨대, 좌향하는, 우향하는, 또는 전후 좌우 이동과 같은 좌우 이동)에 대응한다는 (그리고 제2 유형의 이동(예컨대, 상향, 하향, 또는 상하 이동과 같은 수직 이동)에 대응하지 않는다는) 결정에 따라, 제1 유형의 이동에 기초하여 캘리브레이션 사용자 인터페이스 객체를 이동시키는 것(예컨대, 캘리브레이션 사용자 인터페이스 객체를 제1 방식으로 이동시키는 것(예컨대, 캘리브레이션 사용자 인터페이스 객체를 통과하는 수직 축을 중심으로 캘리브레이션 사용자 인터페이스 객체를 회전시키는 것)); 및 하나 이상의 카메라들의 자세의 검출된 변경이 제2 유형의 이동에 대응한다는 (그리고 제1 유형의 이동에 대응하지 않는다는) 결정에 따라, 제2 유형의 이동에 기초하여 캘리브레이션 사용자 인터페이스 객체를 이동시키는 것을 보류하는 것(예컨대, 캘리브레이션 사용자 인터페이스 객체를 제1 방식으로 이동시키는 것을 보류하거나 캘리브레이션 사용자 인터페이스 객체를 정지 상태로 유지하는 것)을 포함한다(17028). 예를 들어, (예컨대, 도 12f-1과 도 12g-1, 및 도 12f-2와 도 12g-2와 관련하여 기술된 바와 같이) 하나 이상의 카메라들을 포함하는 디바이스(100)의 좌우 이동은 캘리브레이션 사용자 인터페이스 객체(12014)가 회전하게 하는 반면, (예컨대, 도 12g-1과 도 12h-1, 및 도 12g-2와 도 12h-2와 관련하여 기술된 바와 같은) 디바이스(100)의 수직 이동은 캘리브레이션 사용자 인터페이스 객체(12014)가 회전하게 하지 않는다. 디바이스 카메라(들)의 자세의 검출된 변경이 제2 유형의 이동에 대응한다는 결정에 따라 캘리브레이션 사용자 인터페이스 객체의 이동을 보류하는 것은 (예컨대, 하나 이상의 카메라들의 제2 유형의 이동이 캘리브레이션에 필요하지 않다는 것을 사용자에게 나타내는) 시각적 피드백을 제공한다. 사용자에게 개선된 시각적 피드백을 제공하는 것은, (예컨대, 사용자가 불필요한 입력을 제공하는 것을 피하도록 도움으로써) 디바이스의 작동성을 향상시키고 사용자-디바이스 인터페이스를 더 효율적으로 만드는데, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, adjusting the at least one display parameter of the calibration user interface object according to the detected change in the pose of the one or more cameras in the physical environment comprises: the detected change in the pose of the one or more cameras of the first type Determining that it corresponds to a movement (eg, a left-to-right movement, such as a leftward, rightward, or back-and-forth movement) (and does not correspond to a second type of movement (eg, a vertical movement such as an upward, downward, or up-and-down movement)) to move a calibration user interface object based on a first type of movement (e.g., moving a calibration user interface object in a first manner (e.g., a calibration user about a vertical axis passing through the calibration user interface object); to rotate the interface object)); and in accordance with a determination that the detected change in pose of the one or more cameras corresponds to (and does not correspond to) the second type of movement, moving the calibration user interface object based on the second type of movement. withholding (eg, withholding moving the calibration user interface object in the first manner or keeping the calibration user interface object stationary) ( 17028 ). For example, lateral movement of device 100 including one or more cameras (eg, as described with respect to FIGS. 12F-1 and 12G-1 and FIGS. 12F-2 and 12G-2) is calibrated. Vertical movement of device 100 (eg, as described with respect to FIGS. 12G-1 and 12H-1 , and FIGS. 12G-2 and 12H-2 ) while causing user interface object 12014 to rotate does not cause the calibration user interface object 12014 to rotate. Withholding movement of the calibration user interface object in accordance with a determination that the detected change in pose of the device camera(s) corresponds to a second type of movement (eg, a second type of movement of one or more cameras is not required for calibration) provide visual feedback that indicates to the user that it is not. Providing the user with improved visual feedback improves the operability of the device (eg, by helping the user avoid providing unnecessary input) and makes the user-device interface more efficient, which in addition allows the user to It reduces the device's power usage and improves battery life by enabling faster and more efficient use of the device.

일부 실시예들에서, 물리적 환경에서의 하나 이상의 카메라들의 자세의 검출된 변경에 따라 캘리브레이션 사용자 인터페이스 객체의 적어도 하나의 디스플레이 파라미터를 조정하는 것은, 제1 사용자 인터페이스 영역 위에서 캘리브레이션 사용자 인터페이스 객체의 특성 디스플레이 위치(예컨대, 디스플레이 상의 캘리브레이션 사용자 인터페이스 객체의 기하학적 중심 또는 축의 위치)를 변경하지 않고서 물리적 환경에서의 하나 이상의 카메라들의 자세의 검출된 변경에 따라 캘리브레이션 사용자 인터페이스 객체를 이동시키는 (예컨대, 회전시키는 그리고/또는 기울이는) 것을 포함한다(예컨대, 캘리브레이션 사용자 인터페이스 객체가 디스플레이 상의 고정된 위치에 고정되어 있는 한편, 물리적 환경은 캘리브레이션 사용자 인터페이스 객체 아래의 하나 이상의 카메라들의 시야 내에서 이동한다)(17030). 예를 들어, 도 12e-1 내지 도 12i-1에서, 캘리브레이션 사용자 인터페이스 객체(12014)는 디스플레이(112)에 대해 고정된 위치에 유지하면서 회전한다. 캘리브레이션 사용자 인터페이스 객체의 특성 디스플레이 위치를 변경하지 않고서 캘리브레이션 사용자 인터페이스 객체를 이동시키는 것은 (예컨대, 캘리브레이션 사용자 인터페이스 객체가 디스플레이된 증강 현실 환경에 대해 일정 위치에 배치되는 가상 객체와 구별되는 것을 나타내는) 시각적 피드백을 제공한다. 사용자에게 개선된 시각적 피드백을 제공하는 것은, (예컨대, 사용자가 적절한 입력들을 제공하도록 그리고 사용자 입력 실수들을 감소시키도록 도움으로써) 디바이스의 작동성을 향상시키고 사용자-디바이스 인터페이스를 더 효율적으로 만드는데, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, adjusting the at least one display parameter of the calibration user interface object according to the detected change in the pose of the one or more cameras in the physical environment comprises: a characteristic display position of the calibration user interface object over the first user interface area. moving (eg, rotating and/or rotating a calibration user interface object according to a detected change in the pose of one or more cameras in the physical environment without changing (eg, the position of the geometric center or axis of the calibration user interface object on the display) tilting (eg, the calibration user interface object is fixed in a fixed position on the display, while the physical environment moves within the field of view of one or more cameras below the calibration user interface object) 17030 . For example, in FIGS. 12E-1 through 12I-1 , the calibration user interface object 12014 rotates while remaining in a fixed position relative to the display 112 . Moving the calibration user interface object without changing the characteristic display position of the calibration user interface object (eg, indicating that the calibration user interface object is distinct from a virtual object positioned relative to the displayed augmented reality environment) is a visual feedback provides Providing the user with improved visual feedback improves the operability of the device and makes the user-device interface more efficient (eg, by helping the user provide appropriate inputs and reducing user input mistakes), which Additionally, it reduces the power usage of the device and improves battery life by enabling the user to use the device more quickly and efficiently.

일부 실시예들에서, 물리적 환경에서의 하나 이상의 카메라들의 자세의 검출된 변경에 따라 캘리브레이션 사용자 인터페이스 객체의 적어도 하나의 디스플레이 파라미터를 조정하는 것은, 물리적 환경에서의 하나 이상의 카메라들의 이동 방향에 수직인 축을 중심으로 캘리브레이션 사용자 인터페이스 객체를 회전시키는 것을 포함한다(예컨대, 캘리브레이션 사용자 인터페이스 객체는 (예컨대, 카메라들을 포함하는) 디바이스가 x-y 평면 상에서 전후로 이동할 때 z-축을 중심으로 회전하거나, 캘리브레이션 사용자 인터페이스 객체는 (예컨대, 카메라들을 포함하는) 디바이스가 x-축을 따라서 좌우로 이동할 때 y-축을 중심으로 회전한다(예컨대, x-축은, 예를 들어, 물리적 환경에 대해 수평 방향으로서 정의되고 터치 스크린 디스플레이의 평면 내에 놓인다))(17032). 예를 들어, 도 12e-1 내지 도 12g-1에서, 캘리브레이션 사용자 인터페이스 객체(12014)는 도 12e-2 내지 도 12g-2에 도시된 디바이스의 좌우 이동에 수직인 수직 축을 중심으로 회전한다. 디바이스 카메라(들)의 이동에 수직인 축을 중심으로 캘리브레이션 사용자 인터페이스 객체를 회전시키는 것은 (예컨대, 캘리브레이션 사용자 인터페이스 객체의 이동이 캘리브레이션에 필요한 디바이스의 이동에 대한 가이드인 것을 사용자에게 나타내는) 시각적 피드백을 제공한다. 사용자에게 개선된 시각적 피드백을 제공하는 것은, (예컨대, 디바이스를 작동시키고/그와 상호작용할 때 사용자가 적절한 입력들을 제공하는 것을 돕고 사용자 실수들을 감소시킴으로써) 디바이스의 작동성을 향상시키고 사용자-디바이스 인터페이스를 더 효율적으로 만드는데, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, adjusting the at least one display parameter of the calibration user interface object according to the detected change in the pose of the one or more cameras in the physical environment comprises an axis perpendicular to the direction of movement of the one or more cameras in the physical environment. Rotating the calibration user interface object about the center (e.g., the calibration user interface object rotates about the z-axis as the device (e.g., including cameras) moves back and forth on the x-y plane), or the calibration user interface object ( When a device (eg, including cameras) moves left and right along the x-axis, it rotates about the y-axis (eg, the x-axis is, for example, defined as a horizontal direction with respect to the physical environment and is within the plane of the touch screen display. placed)) (17032). For example, in FIGS. 12E-1 to 12G-1 , the calibration user interface object 12014 rotates about a vertical axis perpendicular to the left-right movement of the device shown in FIGS. 12E-2 to 12G-2 . Rotating the calibration user interface object about an axis perpendicular to the movement of the device camera(s) provides visual feedback (e.g., indicating to the user that the movement of the calibration user interface object is a guide to movement of the device required for calibration). do. Providing the user with improved visual feedback improves the operability of the device and reduces user errors (eg, by helping the user provide appropriate inputs when operating and/or interacting with the device) and user-device interface. more efficient, which additionally enables users to use the device more quickly and efficiently, thereby reducing the device's power usage and improving battery life.

일부 실시예들에서, 물리적 환경에서의 하나 이상의 카메라들의 자세의 검출된 변경에 따라 캘리브레이션 사용자 인터페이스 객체의 적어도 하나의 디스플레이 파라미터를 조정하는 것은, 하나 이상의 카메라들의 시야 내에서 검출되는 변경의 속도(예컨대, 물리적 환경의 이동 속도)에 따라 결정되는 속도로 캘리브레이션 사용자 인터페이스 객체를 이동시키는 것을 포함한다(17034). 디바이스 카메라(들)의 자세의 변경에 따라 결정되는 속도로 캘리브레이션 사용자 인터페이스 객체를 이동시키는 것은 (예컨대, 캘리브레이션 사용자 인터페이스 객체의 이동이 캘리브레이션에 필요한 디바이스의 이동에 대한 가이드인 것을 사용자에게 나타내는) 시각적 피드백을 제공한다. 사용자에게 개선된 시각적 피드백을 제공하는 것은, (예컨대, 디바이스를 작동시키고/그와 상호작용할 때 사용자가 적절한 입력들을 제공하는 것을 돕고 사용자 실수들을 감소시킴으로써) 디바이스의 작동성을 향상시키고 사용자-디바이스 인터페이스를 더 효율적으로 만드는데, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, adjusting the at least one display parameter of the calibration user interface object according to the detected change in the pose of the one or more cameras in the physical environment comprises: a rate of change detected within the field of view of the one or more cameras (eg, , moving the calibration user interface object at a speed determined according to the moving speed of the physical environment (17034). Moving the calibration user interface object at a rate determined according to a change in the pose of the device camera(s) provides visual feedback (eg, indicating to the user that the movement of the calibration user interface object is a guide to movement of the device required for calibration). provides Providing the user with improved visual feedback improves the operability of the device and reduces user errors (eg, by helping the user provide appropriate inputs when operating and/or interacting with the device) and user-device interface. more efficient, which additionally enables users to use the device more quickly and efficiently, thereby reducing the device's power usage and improving battery life.

일부 실시예들에서, 물리적 환경에서의 하나 이상의 카메라들의 자세의 검출된 변경에 따라 캘리브레이션 사용자 인터페이스 객체의 적어도 하나의 디스플레이 파라미터를 조정하는 것은, 하나 이상의 카메라들의 시야 내에서 검출되는 변경(예컨대, 물리적 환경의 이동 속도)의 방향에 따라 결정되는 방향으로 캘리브레이션 사용자 인터페이스 객체를 이동시키는 것을 포함한다(예컨대, 디바이스는 우측으로부터 좌측으로의 디바이스의 이동에 대해 캘리브레이션 사용자 인터페이스 객체를 시계방향으로 회전시키고 좌측으로부터 우측으로의 디바이스의 이동에 대해 캘리브레이션 사용자 인터페이스 객체를 반시계방향으로 회전시키거나, 또는 디바이스는 우측으로부터 좌측으로의 디바이스의 이동에 대해 캘리브레이션 사용자 인터페이스 객체를 반시계방향으로 회전시키고 좌측으로부터 우측으로의 디바이스의 이동에 대해 캘리브레이션 사용자 인터페이스 객체를 시계방향으로 회전시킨다)(17036). 디바이스 카메라(들)의 자세의 변경에 따라 결정되는 방향으로 캘리브레이션 사용자 인터페이스 객체를 이동시키는 것은 (예컨대, 캘리브레이션 사용자 인터페이스 객체의 이동이 캘리브레이션에 필요한 디바이스의 이동에 대한 가이드인 것을 사용자에게 나타내는) 시각적 피드백을 제공한다. 사용자에게 개선된 시각적 피드백을 제공하는 것은, (예컨대, 디바이스를 작동시키고/그와 상호작용할 때 사용자가 적절한 입력들을 제공하는 것을 돕고 사용자 실수들을 감소시킴으로써) 디바이스의 작동성을 향상시키고 사용자-디바이스 인터페이스를 더 효율적으로 만드는데, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, adjusting the at least one display parameter of the calibration user interface object according to the detected change in the pose of the one or more cameras in the physical environment comprises: a change detected within the field of view of the one or more cameras (eg, physical moving the calibration user interface object in a direction determined by the direction of the movement speed of the environment (eg, the device rotates the calibration user interface object clockwise for movement of the device from right to left and from the left Either rotate the calibration user interface object counterclockwise for movement of the device to the right, or the device rotates the calibration user interface object counterclockwise for movement of the device from right to left and rotates the calibration user interface object counterclockwise for movement of the device from right to left Rotate the calibration user interface object clockwise with respect to movement of the device (17036). Moving the calibration user interface object in a direction determined by a change in the pose of the device camera(s) may provide visual feedback (eg, indicating to the user that the movement of the calibration user interface object is a guide to movement of the device required for calibration). provides Providing the user with improved visual feedback improves the operability of the device and reduces user errors (eg, by helping the user provide appropriate inputs when operating and/or interacting with the device) and user-device interface. more efficient, which additionally enables users to use the device more quickly and efficiently, thereby reducing the device's power usage and improving battery life.

도 17a 내지 도 17d에서의 동작들이 기술된 특정 순서는 단지 일례이며 기술된 순서가 동작들이 수행될 수 있는 유일한 순서임을 나타내는 것으로 의도되지는 않는다는 것이 이해되어야 한다. 당업자는 본 명세서에 기술된 동작들을 재순서화하는 다양한 방식들을 인식할 것이다. 추가적으로, 본 명세서에 기술된 다른 방법들(예를 들어, 방법들(800, 900, 1000, 16000, 18000, 19000, 20000))과 관련하여 본 명세서에 기술된 다른 프로세스들의 상세사항들이 도 17a 내지 도 17d와 관련하여 전술된 방법(17000)과 유사한 방식으로 또한 적용가능하다는 것이 주목되어야 한다. 예를 들어, 방법(17000)과 관련하여 전술된 접촉들, 입력들, 가상 객체들, 사용자 인터페이스 영역들, 시야들, 촉각적 출력들, 이동들, 및/또는 애니메이션들은 선택적으로, 본 명세서에 기술된 다른 방법들(예컨대, 방법들(800, 900, 1000, 16000, 18000, 19000, 20000))과 관련하여 본 명세서에 기술된 접촉들, 입력들, 가상 객체들, 사용자 인터페이스 영역들, 시야들, 촉각적 출력들, 이동들, 및/또는 애니메이션들의 특성들 중 하나 이상을 갖는다. 간결함을 위해, 이러한 상세사항들은 여기서 반복되지 않는다.It should be understood that the specific order in which the operations in FIGS. 17A-17D are described is merely an example and is not intended to indicate that the described order is the only order in which the operations may be performed. Those skilled in the art will recognize various ways of reordering the operations described herein. Additionally, details of other processes described herein in connection with other methods described herein (eg, methods 800 , 900 , 1000 , 16000 , 18000 , 19000 , 20000 ) are shown in FIGS. It should be noted that in a manner similar to method 17000 described above with respect to FIG. 17D is also applicable. For example, contacts, inputs, virtual objects, user interface regions, fields of view, tactile outputs, movements, and/or animations described above with respect to method 17000 are optionally described herein. Contacts, inputs, virtual objects, user interface areas, field of view described herein in connection with other methods described (eg, methods 800, 900, 1000, 16000, 18000, 19000, 20000) fields, tactile outputs, movements, and/or animations. For the sake of brevity, these details are not repeated here.

도 18a 내지 도 18i는 축을 중심으로 하는 가상 객체의 회전을 제약하는 방법(18000)을 예시하는 흐름도들이다. 방법(18000)은 디스플레이 생성 컴포넌트(예컨대, 디스플레이, 프로젝터, 헤드 업 디스플레이 등), 하나 이상의 입력 디바이스들(예컨대, 터치 감응형 표면, 또는 디스플레이 생성 컴포넌트 및 터치 감응형 표면 둘 모두로서의 역할을 하는 터치 스크린 디스플레이), 하나 이상의 카메라들(예컨대, 디스플레이 및 터치 감응형 표면과 반대편인 디바이스의 면 상의 하나 이상의 후방 카메라들), 및 하나 이상의 카메라들을 포함하는 디바이스의 자세(예컨대, 주위의 물리적 환경에 대한 배향(예컨대, 회전 각, 요 각, 및/또는 기울기 각) 및 위치)의 변경들을 검출하기 위한 하나 이상의 자세 센서들(예컨대, 가속도계들, 자이로스코프들, 및/또는 자력계들)을 갖는 전자 디바이스(예컨대, 도 3의 디바이스(300), 또는 도 1a의 휴대용 다기능 디바이스(100))에서 수행된다. 방법(18000)에서의 일부 동작들이 선택적으로 조합되고/되거나, 일부 동작들의 순서가 선택적으로 변경된다.18A-18I are flow diagrams illustrating a method 18000 of constraining rotation of a virtual object about an axis. The method 18000 includes a display generating component (eg, a display, a projector, a heads up display, etc.), one or more input devices (eg, a touch-sensitive surface, or a touch that serves as both a display generating component and a touch-sensitive surface). a screen display), one or more cameras (eg, one or more rear-facing cameras on the side of the device opposite the display and touch-sensitive surface), and a pose of a device (eg, relative to the surrounding physical environment) including one or more cameras. Electronic device having one or more attitude sensors (eg, accelerometers, gyroscopes, and/or magnetometers) for detecting changes in orientation (eg, rotation angle, yaw angle, and/or tilt angle) and position) (eg, device 300 of FIG. 3 , or portable multifunction device 100 of FIG. 1A ). Some operations in method 18000 are selectively combined and/or the order of some operations is selectively changed.

디바이스는, 디스플레이 생성 컴포넌트에 의해, 제1 사용자 인터페이스 영역(예컨대, 스테이징 사용자 인터페이스 또는 증강 현실 사용자 인터페이스) 내에 가상 3차원 객체의 제1 시점의 표현을 디스플레이한다(18002). 예를 들어, 가상 객체(11002)는, 도 13b에 도시된 바와 같이, 스테이징 사용자 인터페이스(6010) 내에 보여진다.The device, by the display creation component, displays ( 18002 ) a representation of the first viewpoint of the virtual three-dimensional object within a first user interface area (eg, a staging user interface or an augmented reality user interface). For example, virtual object 11002 is shown in staging user interface 6010 , as shown in FIG. 13B .

디스플레이 상의 제1 사용자 인터페이스 영역 내에 가상 3차원 객체의 제1 시점의 표현을 디스플레이하는 동안, 디바이스는 가상 3차원 객체의 제1 시점으로부터 가시적이지 않은 가상 3차원 객체의 일부분을 디스플레이하기 위해 가상 3차원 객체를 디스플레이(예컨대, 터치 스크린 디스플레이의 평면과 같은 디스플레이 생성 컴포넌트에 대응하는 디스플레이 평면)에 대해 회전시키라는 요청에 대응하는 제1 입력(예컨대, 터치 감응형 표면 상에서의 (예컨대, 한 손가락 또는 두 손가락 접촉들에 의한) 스와이프 입력, 또는 피봇 입력(예컨대, 두 손가락 회전, 또는 한 손가락 접촉이 다른 손가락 접촉을 중심으로 피벗))을 검출한다(18004). 예를 들어, 요청은 도 13b 및 도 13c와 관련하여 기술된 바와 같은 입력 또는 도 13e 및 도 13f와 관련하여 기술된 바와 같은 입력이다.While displaying the representation of the first viewpoint of the virtual three-dimensional object within the first user interface area on the display, the device is configured to display a portion of the virtual three-dimensional object that is not visible from the first viewpoint of the virtual three-dimensional object. A first input (eg, on a touch-sensitive surface (eg, one finger or two A swipe input (by finger contacts), or a pivot input (eg, two-finger rotation, or one finger contact pivots about another finger contact) is detected ( 18004 ). For example, the request is an input as described with respect to FIGS. 13B and 13C or an input as described with respect to FIGS. 13E and 13F .

제1 입력을 검출하는 것에 응답하여, 제1 입력이 제1 축(예컨대, 디스플레이의 평면(예컨대, x-y 평면)에 수평 방향으로 평행한 제1 축, 예컨대, x-축)을 중심으로 3차원 객체를 회전시키라는 요청에 대응한다는 결정에 따라, 디바이스는 제1 입력의 크기(예컨대, 터치 감응형 표면(예컨대, 디스플레이의 x-y 평면에 대한 대응하는 x-y 평면)의 수직 축(예컨대, y-축)을 따르는 스와이프 입력의 속도 및/또는 거리)에 기초하여 결정되는 그리고 제1 축에 대한 임계량 초과의 회전에 의해 가상 3차원 객체의 회전을 제한하는 이동에 대한 한계에 의해 제약되는 양만큼 가상 3차원 객체를 제1 축에 대해 회전시킨다(예컨대, 제1 축을 중심으로 하는 회전은 제1 축을 중심으로 +/-30도 각도의 범위로 제한되고, 그 범위를 넘는 회전은 제1 입력의 크기에 상관없이 금지된다)(18006). 예를 들어, 도 13e 내지 도 13g와 관련하여 기술된 바와 같이, 가상 객체(11002)의 회전은 한계에 의해 제약된다. 제1 입력이 제1 축과 상이한 제2 축(예컨대, 디스플레이의 평면(예컨대, x-y 평면)에 수직 방향으로 평행한 제2 축, 예컨대, y-축)을 중심으로 3차원 객체를 회전시키라는 요청에 대응한다는 결정에 따라, 디바이스는 제1 입력의 크기(예컨대, 터치 감응형 표면(예컨대, 디스플레이의 x-y 평면에 대한 대응하는 x-y 평면)의 수평 축(예컨대, x-축)을 따르는 스와이프 입력의 속도 및/또는 거리)에 기초하여 결정되는 양만큼 가상 3차원 객체를 제2 축에 대해 회전시키는데, 각각의 임계치 초과의 크기를 갖는 입력의 경우, 디바이스는 임계량 초과의 회전만큼 제2 축에 대해 가상 3차원 객체를 회전시킨다. 일부 실시예들에서, 제2 축에 대한 회전의 경우, 디바이스는 제1 축에 대한 회전에 대한 제약조건보다 큰 회전에 대한 제약조건을 부과한다(예컨대, 3차원 객체는 30도 대신에 60도로 회전하도록 허용된다). 일부 실시예들에서, 제2 축에 대한 회전의 경우, 디바이스는 회전에 대한 제약조건을 부과하지 않아서, 3차원 객체가 제2 축을 중심으로 자유롭게 회전할 수 있게 한다(예컨대, 하나 이상의 접촉들의 이동을 포함하는 빠른 또는 긴 스와이프 입력과 같은 충분히 큰 크기를 갖는 입력의 경우, 3차원 객체는 제2 축에 대해 360도 초과로 회전할 수 있다). 예를 들어, 도 13e 내지 도 13g와 관련하여 기술된 입력에 응답하여 x-축을 중심으로 하는 가상 객체(11002)의 회전량보다 큰 가상 객체(11002)의 회전량이 도 13b 및 도 13c와 관련하여 기술된 입력에 응답하여 y-축을 중심으로 발생한다. 입력이 객체를 제1 축을 중심으로 회전시키라는 요청인지 또는 제2 축을 중심으로 회전시키라는 요청인지에 따라 객체를 임계량으로 제약되는 양만큼 회전시킬지 또는 객체를 임계량 초과만큼 회전시킬지를 결정하는 것은 상이한 유형들의 회전 동작들을 제어하는 능력을 개선시킨다. 디스플레이된 추가 제어부들로 사용자 인터페이스를 혼란스럽게 하지 않으면서 추가 제어 옵션들을 제공하는 것은 디바이스의 작동성을 향상시키고, 사용자-디바이스 인터페이스를 더 효율적으로 만든다.In response to detecting the first input, the first input is three-dimensional about a first axis (eg, a first axis that is horizontally parallel to a plane (eg, an x-y plane) of the display, eg, an x-axis). Upon determining that it corresponds to a request to rotate the object, the device determines the vertical axis (eg, the y-axis) of the magnitude of the first input (eg, the touch-sensitive surface (eg, the corresponding x-y plane to the x-y plane of the display)). ) by an amount determined based on the speed and/or distance of the swipe input along Rotate the three-dimensional object about a first axis (eg, rotation about the first axis is limited to a range of +/-30 degrees angle about the first axis, beyond which rotation is the magnitude of the first input is prohibited regardless) (18006). For example, as described with respect to FIGS. 13E-13G , the rotation of the virtual object 11002 is constrained by a limit. the first input instructs the three-dimensional object to rotate about a second axis different from the first axis (eg, a second axis, eg, y-axis, perpendicular to and parallel to the plane of the display (eg, the x-y plane)). Upon determining that it corresponds to the request, the device swipe along the horizontal axis (eg, the x-axis) of the magnitude of the first input (eg, the touch-sensitive surface (eg, the corresponding x-y plane to the x-y plane of the display)). rotates the virtual three-dimensional object about a second axis by an amount determined based on the speed and/or distance of the input; Rotate the virtual 3D object with respect to In some embodiments, for rotation about a second axis, the device imposes a constraint on rotation that is greater than the constraint on rotation about the first axis (eg, a three-dimensional object is 60 degrees instead of 30 degrees) allowed to rotate). In some embodiments, for rotation about a second axis, the device imposes no constraint on rotation, allowing the three-dimensional object to rotate freely about the second axis (eg, movement of one or more contacts). For inputs with sufficiently large dimensions, such as fast or long swipe inputs that include For example, in response to the input described with respect to FIGS. 13E-13G , the amount of rotation of the virtual object 11002 about the x-axis is greater than the amount of rotation of the virtual object 11002 with respect to FIGS. 13B and 13C . Occurs around the y-axis in response to a described input. Depending on whether the input is a request to rotate the object about a first axis or a request to rotate it about a second axis, determining whether to rotate an object by an amount constrained by a threshold amount or to rotate an object by more than a threshold amount is different. Improves the ability to control types of rotational motions. Providing additional control options without cluttering the user interface with additional controls displayed improves the operability of the device and makes the user-device interface more efficient.

일부 실시예들에서, 제1 입력을 검출하는 것에 응답하여, 제1 입력이 제1 방향(예컨대, y-방향, 터치 감응형 표면 상의 수직 방향)으로 터치 감응형 표면을 가로지르는 접촉의 제1 이동을 포함한다는 그리고 제1 방향으로의 접촉의 제1 이동이 제1 축에 대해 가상 객체의 표현을 회전시키기 위한 제1 기준들을 충족한다는 결정에 따라 - 제1 기준들은 제1 기준들이 충족되기 위해 제1 입력이 제1 방향으로의 제1 임계량 초과의 이동을 포함한다는 요건을 포함함(예컨대, 디바이스가 제1 방향으로의 제1 임계량 초과의 이동을 검출할 때까지 디바이스는 제1 축을 중심으로 하는 3차원 객체의 회전을 개시하지 않음) -, 디바이스는 제1 입력이 제1 축(예컨대, x-축, 디스플레이에 평행한 수평 축, 또는 가상 객체를 통과하는 수평 축)을 중심으로 3차원 객체를 회전시키라는 요청에 대응하는 것으로 결정하고; 제1 입력이 제2 방향(예컨대, x-방향, 터치 감응형 표면 상의 수평 방향)으로 터치 감응형 표면을 가로지르는 접촉의 제2 이동을 포함한다는 그리고 제2 방향으로의 접촉의 제2 이동이 제2 축에 대해 가상 객체의 표현을 회전시키기 위한 제2 기준들을 충족한다는 결정에 따라 - 제2 기준들은 제2 기준들이 충족되기 위해 제1 입력이 제2 방향으로의 제2 임계량 초과의 이동을 포함한다는 요건을 포함함(예컨대, 디바이스가 제2 방향으로의 제2 임계량 초과의 이동을 검출할 때까지 디바이스는 제2 축을 중심으로 하는 3차원 객체의 회전을 개시하지 않음) -, 디바이스는 제1 입력이 제2 축(예컨대, 디스플레이에 평행한 수직 축, 또는 가상 객체를 통과하는 수직 축)을 중심으로 3차원 객체를 회전시키라는 요청에 대응하는 것으로 결정하는데, 제1 임계치는 제2 임계치보다 크다(예컨대, 사용자는 수직 축을 중심으로 하는 회전을 트리거하기 위해(예컨대, 객체를 회전시키기 위해) 수평 방향으로 스와이프하는 것보다 수평 축을 중심으로 하는 회전을 트리거하기 위해(예컨대, 사용자에 대해 객체를 전방으로 또는 후방으로 기울이기 위해) 더 큰 양만큼 수직 방향으로 스와이프할 필요가 있다)(18008). 입력이 객체를 제1 축을 중심으로 회전시키라는 요청인지 또는 제2 축을 중심으로 회전시키라는 요청인지에 따라, 객체를 임계량으로 제약되는 양만큼 회전시킬지 또는 객체를 임계량 초과만큼 회전시킬지를 결정하는 것은 객체를 회전시키라는 요청에 대응하는 입력에 응답하여 상이한 유형들의 회전 동작들을 제어하는 능력을 개선시킨다. 디스플레이된 추가 제어부들로 사용자 인터페이스를 혼란스럽게 하지 않으면서 추가 제어 옵션들을 제공하는 것은 디바이스의 작동성을 향상시키고, 사용자-디바이스 인터페이스를 더 효율적으로 만든다.In some embodiments, in response to detecting the first input, the first input is a first of a contact across the touch-sensitive surface in a first direction (eg, a y-direction, a direction perpendicular to the touch-sensitive surface). In accordance with a determination that comprises movement and that the first movement of the contact in a first direction meets first criteria for rotating the representation of the virtual object about a first axis - the first criteria are for the first criteria to be satisfied including a requirement that the first input comprises movement in a first direction greater than a first threshold amount (eg, the device is moved about the first axis until the device detects movement in the first direction greater than the first threshold amount). does not initiate rotation of the three-dimensional object), the device determines that the first input is three-dimensional about a first axis (eg, the x-axis, a horizontal axis parallel to the display, or a horizontal axis passing through the virtual object). determine to respond to the request to rotate the object; that the first input comprises a second movement of the contact across the touch-sensitive surface in a second direction (eg, an x-direction, a horizontal direction on the touch-sensitive surface) and that the second movement of the contact in the second direction in accordance with a determination that second criteria are met for rotating the representation of the virtual object about a second axis, wherein the second criteria cause the first input to cause movement in the second direction by more than a second threshold amount for the second criteria to be satisfied. includes a requirement that includes (eg, the device does not initiate rotation of the three-dimensional object about the second axis until the device detects movement in the second direction greater than a second threshold amount), the device Determine that one input corresponds to a request to rotate the three-dimensional object about a second axis (eg, a vertical axis parallel to the display, or a vertical axis passing through the virtual object), the first threshold being the second threshold greater than (eg, the user swipes in a horizontal direction to trigger rotation about a vertical axis (eg, to rotate an object)) to trigger rotation about a horizontal axis (eg, relative to the user). It is necessary to swipe in the vertical direction by a larger amount (to tilt the object forward or backward) (18008). Depending on whether the input is a request to rotate the object about a first axis or a request to rotate about a second axis, determining whether to rotate an object by an amount constrained by a threshold amount or to rotate an object by more than a threshold amount Improves the ability to control different types of rotation operations in response to input corresponding to a request to rotate an object. Providing additional control options without cluttering the user interface with additional controls displayed improves the operability of the device and makes the user-device interface more efficient.

일부 실시예들에서, 제1 축에 대한 가상 3차원 객체의 회전은 제1 입력의 제1 입력 파라미터의 특성 값(예컨대, 스와이프 거리, 또는 스와이프 속도)과 제1 축을 중심으로 하는 가상 3차원 객체에 적용되는 회전량 사이의 제1 대응 정도(degree of correspondence)로 발생하고, 제2 축에 대한 가상 3차원 객체의 회전은 제2 입력 제스처의 제1 입력 파라미터의 특성 값(예컨대, 스와이프 거리, 또는 스와이프 속도)과 제2 축을 중심으로 하는 가상 3차원 객체에 적용되는 회전량 사이의 제2 대응 정도로 발생하고, 제1 대응 정도는 제2 대응 정도보다 제1 입력 파라미터에 대한 가상 3차원 객체의 더 작은 회전을 수반한다(예컨대, 제1 축을 중심으로 하는 회전은 제2 축을 중심으로 하는 회전보다 큰 마찰 또는 걸림을 갖는다)(18010). 예를 들어, 가상 객체(11002)의 제1 회전량은 (도 13b 및 도 13c와 관련하여 기술된 바와 같이) y-축을 중심으로 하는 회전을 위한, 스와이프 거리(d1)를 갖는 스와이프 입력에 응답하여 발생하고, 제1 회전량보다 작은 가상 객체(11002)의 제2 회전량은 (도 13e 내지 도 13g와 관련하여 기술된 바와 같이) x-축을 중심으로 하는 회전을 위한, 스와이프 거리(d1)를 갖는 스와이프 입력에 응답하여 발생한다. 입력이 객체를 제1 축을 중심으로 회전시키라는 요청인지 또는 제2 축을 중심으로 회전시키라는 요청인지에 따라, 입력에 응답하여 가상 객체를 회전의 더 큰 정도 또는 더 작은 정도로 회전시키는 것은 객체를 회전시키라는 요청에 대응하는 입력에 응답하여 상이한 유형들의 회전 동작들을 제어하는 능력을 개선시킨다. 디스플레이된 추가 제어부들로 사용자 인터페이스를 혼란스럽게 하지 않으면서 추가 제어 옵션들을 제공하는 것은 디바이스의 작동성을 향상시키고, 사용자-디바이스 인터페이스를 더 효율적으로 만든다.In some embodiments, the rotation of the virtual three-dimensional object about a first axis is a function value of a first input parameter of the first input (eg, a swipe distance, or a swipe speed) and a virtual 3 about the first axis. occurs with a first degree of correspondence between the amount of rotation applied to the dimensional object, and wherein the rotation of the virtual three-dimensional object about a second axis is a characteristic value of the first input parameter of the second input gesture (eg, the a second degree of correspondence between the swipe distance, or swipe speed) and the amount of rotation applied to the virtual three-dimensional object about the second axis occurs, the first degree of correspondence being more virtual for the first input parameter than the second degree of correspondence involves a smaller rotation of the three-dimensional object (eg, rotation about a first axis has greater friction or jamming than rotation about a second axis) ( 18010 ). For example, a first amount of rotation of virtual object 11002 is a swipe with swipe distance d 1 for rotation about the y-axis (as described with respect to FIGS. 13B and 13C ). A second amount of rotation of the virtual object 11002 that occurs in response to the input and is less than the first amount of rotation is swipe, for rotation about the x-axis (as described with respect to FIGS. 13E-13G ). Occurs in response to a swipe input with distance d 1 . Depending on whether the input is a request to rotate the object about a first axis or a request to rotate the object about a second axis, rotating the virtual object in response to the input to a greater or lesser degree rotates the object. Improves the ability to control different types of rotational motions in response to input corresponding to a request to do so. Providing additional control options without cluttering the user interface with additional controls displayed improves the operability of the device and makes the user-device interface more efficient.

일부 실시예들에서, 디바이스는 제1 입력의 종료를 검출한다(예컨대, 입력은 터치 감응형 표면 상에서의 하나 이상의 접촉들의 이동을 포함하고, 제1 입력의 종료를 검출하는 것은 터치 감응형 표면으로부터 하나 이상의 접촉들의 리프트오프를 검출하는 것을 포함한다)(18012). 제1 입력의 종료를 검출한 후(예컨대, 그에 응답하여), 디바이스는 입력의 종료를 검출하기 전의 제1 입력의 크기에 기초하여(예컨대, 접촉의 리프트오프 직전의 접촉의 이동의 속도에 기초하여) 3차원 객체를 계속 회전시키는데, 이는 3차원 객체가 제1 축에 대해 회전하고 있다는 결정에 따라, 제1 축에 대한 3차원 객체의 회전의 크기에 비례하는 제1 양만큼 제1 축에 대한 객체의 회전을 느리게 하는 것(예컨대, 제1 마찰 계수를 갖는 시뮬레이션된 마찰과 같은 제1 시뮬레이션된 물리적 파라미터에 기초하여 제1 축을 중심으로 하는 3차원 객체의 회전을 느리게 하는 것); 및 3차원 객체가 제2 축에 대해 회전하고 있다는 결정에 따라, 제2 축에 대한 3차원 객체의 회전의 크기에 비례하는 제2 양만큼 제2 축에 대한 객체의 회전을 느리게 하는 것(예컨대, 제1 마찰 계수보다 작은 제2 마찰 계수를 갖는 시뮬레이션된 마찰과 같은 제2 시뮬레이션된 물리적 파라미터에 기초하여 제2 축을 중심으로 하는 3차원 객체의 회전을 느리게 하는 것)을 포함하고, 제2 양은 제1 양과 상이하다(18014). 예를 들어, 도 13c 및 도 13d에서, 가상 객체(11002)는 도 13b 및 도 13c와 관련하여 기술된 바와 같은 가상 객체(11002)의 회전을 야기한 접촉(13002)의 리프트오프 후에 계속 회전한다. 일부 실시예들에서, 제2 양은 제1 양보다 크다. 일부 실시예들에서, 제2 양은 제1 양보다 작다. 입력이 객체를 제1 축을 중심으로 회전시키라는 요청인지 또는 제2 축을 중심으로 회전시키라는 요청인지에 따라, 입력의 종료를 검출한 후에 제1 양 또는 제2 양만큼 가상 객체의 회전을 느리게 하는 것은 제1 축 및 제2 축을 중심으로 하는 회전에 대해 회전 동작들이 가상 객체에 상이하게 적용된다는 것을 나타내는 시각적 피드백을 제공한다. 개선된 시각적 피드백을 사용자에게 제공하는 것은, (예컨대, 평면에 대응하는 제2 배향으로의 객체의 배치 전에 사용자가 적절한 입력들을 제공하도록 그리고 가상 객체를 조작하기 위한 입력을 제공하려는 시도를 피하도록 도움으로써) 디바이스의 작동성을 향상시키고 사용자-디바이스 인터페이스를 더 효율적으로 만드는데, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, the device detects an end of the first input (eg, the input comprises movement of one or more contacts on the touch-sensitive surface, and detecting the end of the first input is from the touch-sensitive surface) detecting liftoff of one or more contacts) (18012). After detecting (eg, in response to) the end of the first input, the device based on the magnitude of the first input before detecting the end of the input (eg, based on the speed of movement of the contact just prior to liftoff of the contact) ) continue to rotate the three-dimensional object, which, in accordance with a determination that the three-dimensional object is rotating about the first axis, is rotated about the first axis by a first amount proportional to the magnitude of the rotation of the three-dimensional object about the first axis. slowing the rotation of the object with respect to (eg, slowing the rotation of the three-dimensional object about the first axis based on a first simulated physical parameter, such as simulated friction having a first coefficient of friction); and in response to determining that the three-dimensional object is rotating about the second axis, slowing the rotation of the object about the second axis by a second amount proportional to the magnitude of the rotation of the three-dimensional object about the second axis (eg, , slowing the rotation of the three-dimensional object about a second axis based on a second simulated physical parameter, such as simulated friction having a second coefficient of friction less than the first coefficient of friction, wherein the second amount is different from the first amount (18014). For example, in FIGS. 13C and 13D , virtual object 11002 continues to rotate after liftoff of contact 13002 that caused rotation of virtual object 11002 as described with respect to FIGS. 13B and 13C . In some embodiments, the second amount is greater than the first amount. In some embodiments, the second amount is less than the first amount. Slowing the rotation of the virtual object by a first amount or a second amount after detecting the end of the input, depending on whether the input is a request to rotate the object about a first axis or a second axis provides visual feedback indicating that rotational motions are applied to the virtual object differently for rotation about a first axis and a second axis. Providing the user with improved visual feedback helps the user to provide appropriate inputs (eg, prior to placement of the object in a second orientation corresponding to the plane) and avoid attempts to provide input for manipulating the virtual object. ) improves the operability of the device and makes the user-device interface more efficient, which additionally reduces the power usage of the device and improves battery life by enabling the user to use the device more quickly and efficiently.

일부 실시예들에서, 디바이스는 제1 입력의 종료를 검출한다(예컨대, 입력은 터치 감응형 표면 상에서의 하나 이상의 접촉들의 이동을 포함하고, 제1 입력의 종료를 검출하는 것은 터치 감응형 표면으로부터 하나 이상의 접촉들의 리프트오프를 검출하는 것을 포함한다)(18016). 제1 입력의 종료를 검출한 후(예컨대, 그에 응답하여), 3차원 객체가 제1 축에 대해 각각의 회전 임계치를 넘어서 회전되었다는 결정에 따라, 디바이스는 제1 축에 대한 3차원 객체의 회전의 적어도 일부분을 역전시키고; 3차원 객체가 제1 축에 대해 각각의 회전 임계치를 넘어서 회전되지 않았다는 결정에 따라, 디바이스는 제1 축에 대한 3차원 객체의 회전을 역전시키는 것을 보류한다(18018). (예컨대, 제1 축에 대한 3차원 객체의 회전을 중지하는 것 및/또는 입력의 종료를 검출하기 전에 입력의 크기에 의해 결정된 크기만큼 입력의 모션의 방향으로 제1 축에 대한 3차원 객체의 회전을 계속하는 것). 예를 들어, 도 13e 내지 도 13g와 관련하여 기술된 바와 같이, 가상 객체(11002)가 회전 임계치를 넘어서 회전한 후, 도 13g 및 도 13h에 의해 예시된 바와 같이, 가상 객체(11002)의 회전은 역전된다. 일부 실시예들에서, 3차원 객체의 회전의 역전의 양은 3차원 객체가 각각의 회전 임계치를 넘어서 얼마나 더 회전하였는지에 기초하여 결정된다(예컨대, 3차원 객체의 회전이 각각의 회전 임계치를 넘어서 회전한 양이 더 작은 경우에 제1 축에 대한 회전을 역전시키는 더 작은 양과 비교하여 3차원 객체의 회전이 각각의 회전 임계치를 넘어서 회전한 양이 더 큰 경우에 제1 축에 대해 더 큰 양만큼 3차원 객체의 회전이 역전된다). 일부 실시예들에서, 회전의 역전은 더 큰 힘으로 당기는 탄성 효과와 같은 시뮬레이션된 물리적 파라미터에 의해 구동되고, 추가로 3차원 객체가 제1 축에 대해 각각의 회전 임계치를 넘어서 회전된다. 일부 실시예들에서, 회전의 역전은 각각의 회전 임계치를 넘어서 회전한 제1 축에 대한 회전의 방향에 기초하여 결정되는 회전의 방향으로 이루어진다(예컨대, 3차원 객체가 회전되어 객체의 상부가 디스플레이 내로 후방으로 이동하였으면, 회전의 역전은 객체의 상부를 디스플레이 외부로 전방으로 회전시키는 것이고/것이거나; 3차원 객체의 상부가 디스플레이 외부로 전방으로 회전되도록 객체가 회전되었으면, 회전의 역전은 객체의 상부를 디스플레이 내로 후방으로 회전시키는 것이고/것이거나; 3차원 객체가 회전되어 객체의 우측이 디스플레이 내로 후방으로 이동하였으면, 회전의 역전은 객체의 우측을 디스플레이 외부로 전방으로 회전시키는 것이고/것이거나; 3차원 객체의 좌측이 디스플레이 외부로 전방으로 회전되도록 객체가 회전되었으면, 회전의 역전은 객체의 좌측을 디스플레이 내로 후방으로 회전시키는 것이다). 일부 실시예들에서, 예를 들어, 제2 축에 대한 회전이 각도들의 각각의 범위로 제약되는 경우, 유사한 러버밴딩(rubberbanding)(예컨대, 회전의 조건부 역전)이 제2 축을 중심으로 하는 회전에 대해 수행된다. 일부 실시예들에서, 예를 들어, 3차원 객체가 디바이스에 의해 360도로 회전하게 하도록 제2 축에 대한 회전이 제약되지 않는 경우, (예컨대, 디바이스가 제2 축에 대한 회전에 대해 회전 임계치를 부과하지 않기 때문에) 제2 축을 중심으로 하는 회전에 대해 러버밴딩이 수행되지 않는다. 객체가 회전 임계치를 넘어서 회전되었는지 여부에 따라, 입력의 종료를 검출한 후에 제1 축에 대한 3차원 객체의 회전의 적어도 일부분을 역전시키거나, 제1 축에 대한 3차원 객체의 회전의 일부분을 역전시키는 것을 보류하는 것은, 가상 객체의 회전에 적용가능한 회전 임계치를 나타내는 시각적 피드백을 제공한다. 개선된 시각적 피드백을 사용자에게 제공하는 것은, (예컨대, 사용자가 가상 객체를 회전 임계치를 넘어서 회전시키기 위한 입력을 제공하려는 시도를 피하도록 도움으로써) 디바이스의 작동성을 향상시키고 사용자-디바이스 인터페이스를 더 효율적으로 만드는데, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, the device detects an end of the first input (eg, the input comprises movement of one or more contacts on the touch-sensitive surface, and detecting the end of the first input is from the touch-sensitive surface) detecting liftoff of one or more contacts) (18016). After detecting (eg, in response to) end of the first input, in accordance with a determination that the three-dimensional object has been rotated about the first axis beyond the respective rotation threshold, the device rotates the three-dimensional object about the first axis reversing at least a portion of; Upon determining that the three-dimensional object has not been rotated about the first axis beyond the respective rotation threshold, the device withholds reversing the rotation of the three-dimensional object about the first axis ( 18018 ). (e.g., stopping rotation of the three-dimensional object about the first axis and/or of the three-dimensional object about the first axis in the direction of motion of the input by a magnitude determined by the magnitude of the input prior to detecting the end of the input. to continue rotating). For example, as described with respect to FIGS. 13E-13G , after virtual object 11002 rotates beyond a rotation threshold, as illustrated by FIGS. 13G and 13H , rotation of virtual object 11002 . is reversed In some embodiments, the amount of reversal of rotation of the three-dimensional object is determined based on how far the three-dimensional object has rotated beyond the respective rotation threshold (eg, the rotation of the three-dimensional object rotates beyond the respective rotation threshold). 3 by a greater amount about the first axis if the amount by which the rotation of the three-dimensional object rotates beyond the respective rotation threshold is greater compared to the smaller amount that reverses the rotation about the first axis if the amount is smaller The rotation of the dimension object is reversed). In some embodiments, the reversal of rotation is driven by a simulated physical parameter, such as an elastic effect pulling with greater force, and further the three-dimensional object is rotated about a first axis beyond a respective rotation threshold. In some embodiments, the reversal of rotation is with a direction of rotation determined based on a direction of rotation about a first axis rotated beyond a respective rotation threshold (eg, a three-dimensional object is rotated so that the top of the object is displayed If moved backwards inward, reversal of rotation is to rotate the top of the object forward out of the display; and/or if the object has been rotated such that the top of the three-dimensional object is rotated forward out of display, reversal of rotation is rotate the top back into the display and/or if the three-dimensional object has been rotated so that the right side of the object has moved back into the display, reversing the rotation rotates the right side of the object forwardly out of the display; If the object has been rotated such that the left side of the three-dimensional object is rotated forward out of the display, then reversing the rotation is rotating the left side of the object back into the display). In some embodiments, similar rubberbanding (eg, conditional reversal of rotation) occurs in rotation about the second axis, for example when rotation about the second axis is constrained to a respective range of angles. is performed for In some embodiments, for example, when rotation about a second axis is not constrained to cause a three-dimensional object to rotate 360 degrees by the device (eg, the device sets a rotation threshold for rotation about the second axis) No rubber banding is performed for rotation about the second axis. Either reverse at least a portion of the rotation of the three-dimensional object about the first axis, or reverse the portion of the rotation of the three-dimensional object about the first axis after detecting the end of the input, depending on whether the object has been rotated beyond the rotation threshold. Pending reversing provides visual feedback indicating the rotation threshold applicable to the rotation of the virtual object. Providing the user with improved visual feedback improves the operability of the device and further enhances the user-device interface (eg, by helping the user avoid attempts to provide input to rotate the virtual object beyond a rotation threshold). efficient, which additionally reduces the device's power usage and improves battery life by enabling the user to use the device more quickly and efficiently.

일부 실시예들에서, 제1 입력이 제1 축 및 제2 축과 상이한 제3 축(예컨대, z-축과 같은, 디스플레이의 평면(예컨대, x-y 평면)에 수직인 제3 축)을 중심으로 3차원 객체를 회전시키라는 요청에 대응한다는 결정에 따라, 디바이스는 제3 축에 대해 가상 3차원 객체를 회전시키는 것을 보류한다(예컨대, z-축을 중심으로 하는 회전은 금지되고, z-축을 중심으로 객체를 회전시키라는 요청은 디바이스에 의해 무시된다)(18020). 일부 실시예들에서, 디바이스는 경보(예컨대, 입력의 실패를 나타내는 촉각적 출력)를 제공한다. 회전 입력이 제3 축을 중심으로 가상 객체를 회전시키라는 요청에 대응한다는 결정에 따라 가상 객체의 회전을 보류하는 것은 제3 축을 중심으로 하는 회전이 제한되는 것을 나타내는 시각적 피드백을 제공한다. 개선된 시각적 피드백을 사용자에게 제공하는 것은, (예컨대, 사용자가 가상 객체를 제3 축을 중심으로 회전시키기 위한 입력을 제공하려는 시도를 피하도록 도움으로써) 디바이스의 작동성을 향상시키고 사용자-디바이스 인터페이스를 더 효율적으로 만드는데, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, the first input is about a third axis different from the first axis and the second axis (eg, a third axis perpendicular to the plane of the display (eg, the x-y plane), such as the z-axis). Upon determining that it corresponds to a request to rotate the three-dimensional object, the device withholds rotating the virtual three-dimensional object about a third axis (eg, rotation about the z-axis is prohibited, and the device about the The request to rotate the object with , is ignored by the device) (18020). In some embodiments, the device provides an alert (eg, a tactile output indicating failure of the input). Suspending rotation of the virtual object in accordance with a determination that the rotation input corresponds to a request to rotate the virtual object about a third axis provides visual feedback indicating that rotation about the third axis is limited. Providing the user with improved visual feedback improves the operability of the device and enhances the user-device interface (eg, by helping the user avoid attempts to provide input to rotate the virtual object about a third axis). making it more efficient, which additionally reduces the power usage of the device and improves battery life by enabling the user to use the device more quickly and efficiently.

일부 실시예들에서, 디바이스는 제1 사용자 인터페이스 영역(예컨대, 스테이징 사용자 인터페이스) 내에 가상 3차원 객체의 제1 시점의 표현을 디스플레이하는 동안 가상 3차원 객체에 의해 드리워진 그림자의 표현을 디스플레이한다(18022). 디바이스는 제1 축 및/또는 제2 축에 대한 가상 3차원 객체의 회전에 따라 그림자의 표현의 형상을 가변시킨다. 예를 들어, 가상 객체(11002)의 그림자(13006)의 형상은 가상 객체(11002)가 회전함에 따라 도 13b로부터 도 13f로 가변한다. 일부 실시예들에서, 그림자는 가상 객체의 미리정의된 하부 면을 지지하는 스테이징 사용자 인터페이스에서 비가시적 기준 평면에 대한 가상 객체의 현재 배향을 나타내기 위해 형상이 시프트 및 변경된다. 일부 실시예들에서, 가상 3차원 객체의 표면은 스테이징 사용자 인터페이스에서 표현되는 가상 공간 내에서 미리정의된 방향으로 위치된 시뮬레이션된 광원으로부터의 광을 반사하는 것으로 보인다. 가상 객체의 회전에 따라 그림자의 형상을 가변시키는 것은 (예컨대, 가상 객체가 배향되는 가상 평면(예컨대, 스테이징 뷰의 스테이지)을 나타내는) 시각적 피드백을 제공한다. 개선된 시각적 피드백을 사용자에게 제공하는 것은, (예컨대, 사용자가 제1 축 또는 제2 축을 중심으로 하는 회전을 야기하기 위해 스와이프 입력에 대한 적절한 방향을 결정하도록 도움으로써) 디바이스의 작동성을 향상시키고 사용자-디바이스 인터페이스를 더 효율적으로 만드는데, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, the device displays a representation of a shadow cast by the virtual three-dimensional object while displaying a representation of the first viewpoint of the virtual three-dimensional object within a first user interface area (eg, a staging user interface). 18022). The device changes the shape of the representation of the shadow according to the rotation of the virtual three-dimensional object about the first axis and/or the second axis. For example, the shape of the shadow 13006 of the virtual object 11002 changes from FIG. 13B to FIG. 13F as the virtual object 11002 rotates. In some embodiments, the shadow is shifted and changed in shape to indicate the current orientation of the virtual object with respect to the invisible reference plane in the staging user interface supporting the predefined lower face of the virtual object. In some embodiments, the surface of the virtual three-dimensional object appears to reflect light from a simulated light source positioned in a predefined direction within the virtual space presented in the staging user interface. Varying the shape of the shadow according to the rotation of the virtual object provides visual feedback (eg, indicative of the virtual plane (eg, the stage of the staging view) in which the virtual object is oriented). Providing the user with improved visual feedback improves the operability of the device (eg, by helping the user determine an appropriate direction for a swipe input to cause rotation about a first axis or a second axis). and makes the user-device interface more efficient, which additionally reduces the power usage of the device and improves battery life by enabling the user to use the device more quickly and efficiently.

일부 실시예들에서, 제1 사용자 인터페이스 영역 내에서 가상 3차원 객체를 회전시키는 동안, 가상 3차원 객체가 가상 3차원 객체의 미리정의된 하부를 드러내는 제2 시점으로 디스플레이된다는 결정에 따라, 디바이스는 가상 3차원 객체의 제2 시점의 표현으로 그림자의 표현을 디스플레이하는 것을 보류한다(18024). 예를 들어, 디바이스는 (예컨대, 도 13g 내지 도 13i와 관련하여 기술된 바와 같이) 가상 객체가 아래에서 보이고 있을 때 가상 객체의 그림자를 디스플레이하지 않는다. 가상 객체의 하부가 디스플레이된다는 결정에 따라 가상 객체의 그림자의 디스플레이를 보류하는 것은 (예컨대, 객체가 가상 평면(예컨대, 스테이징 뷰의 스테이지)에 더 이상 대응하지 않는 위치로 회전하였다는 것을 나타내는) 시각적 피드백을 제공한다. 사용자에게 개선된 시각적 피드백을 제공하는 것은, 디바이스의 작동성을 향상시키고 사용자-디바이스 인터페이스를 더 효율적으로 만드는데, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, while rotating the virtual three-dimensional object within the first user interface area, upon determining that the virtual three-dimensional object is displayed with a second viewpoint revealing a predefined underside of the virtual three-dimensional object, the device: Withholds displaying the representation of the shadow as the representation of the second viewpoint of the virtual three-dimensional object (18024). For example, the device does not display a shadow of the virtual object when the virtual object is being viewed from below (eg, as described with respect to FIGS. 13G-13I ). Suspension of display of the virtual object's shadow in accordance with a determination that the underside of the virtual object is displayed (eg, indicating that the object has been rotated to a position that no longer corresponds to the virtual plane (eg, the stage of the staging view)) provide feedback. Providing the user with improved visual feedback improves the operability of the device and makes the user-device interface more efficient, which in addition enables the user to use the device more quickly and efficiently, thereby enabling the device's power usage. reduce and improve battery life.

일부 실시예들에서, 제1 사용자 인터페이스 영역(예컨대, 스테이징 뷰) 내에서 가상 3차원 객체를 회전시킨 후, 디바이스는 제1 사용자 인터페이스 영역 내에 가상 3차원 객체를 재설정하라는 요청에 대응하는 제2 입력(예컨대, 제2 입력은 제1 사용자 인터페이스 영역 상에서의 더블 탭임)을 검출한다(18026). 제2 입력을 검출하는 것에 응답하여, 디바이스는 제1 사용자 인터페이스 영역 내에서 가상 3차원 객체의 미리정의된 원래 시점(예컨대, 제1 시점, 또는 (예컨대, 제1 시점이 스테이징 사용자 인터페이스 내에서의 사용자 조작 후의 디스플레이된 시점인 경우에) 제1 시점과는 구별되는 디폴트 시작 시점)의 표현을 (예컨대, 가상 객체의 회전 및 크기 재설정을 통해) 디스플레이한다(예컨대, 더블 탭에 응답하여, 디바이스는 가상 객체의 배향을 (예컨대, 전방 면이 사용자를 향하고 하부 면이 미리정의된 기준 평면 상에 안착된, 직립하는) 미리정의된 원래 배향으로 재설정한다)(18028). 예를 들어, 도 13i 및 도 13j는 가상 객체(11002)의 시점이 (도 13b 내지 도 13g와 관련하여 기술된 회전 입력의 결과로서) 변경된 시점으로부터 (도 13a에 도시된 가상 객체(11002)의 시점과 동일한) 도 13j의 원래 시점으로 변경되게 하는 입력을 예시한다. 일부 실시예들에서, 가상 3차원 객체를 재설정하라는 지시에 대응하는 제2 입력을 검출하는 것에 응답하여, 디바이스는 또한, 가상 3차원 객체의 디폴트 디스플레이 크기를 반영하도록 가상 3차원 객체를 크기 재설정한다. 일부 실시예들에서, 더블 탭 입력이 스테이징 사용자 인터페이스에서 가상 객체의 배향 및 크기 둘 모두를 재설정하는 한편, 더블 탭 입력은 증강 현실 사용자 인터페이스에서 가상 객체의 배향이 아닌 크기만을 재설정한다. 일부 실시예들에서, 디바이스는 증강 현실 사용자 인터페이스에서 가상 객체의 크기를 재설정하기 위해 더블 탭이 가상 객체에 대한 것임을 요구하는 한편, 디바이스는 가상 객체 상에서 검출되는 더블 탭들 및 가상 객체 주위에서 검출되는 더블 탭들에 응답하여 가상 객체의 배향 및 크기를 재설정한다. 증강 현실 뷰에서, 단일 손가락 스와이프는 (예컨대, 스테이징 뷰에서와 달리) 가상 객체를 회전시키기보다는 가상 객체를 드래그한다. 가상 객체를 재설정하라는 요청을 검출하는 것에 응답하여 가상 객체의 미리정의된 원래의 시점을 디스플레이하는 것은 (예컨대, 객체의 속성들을 조정하기 위해 제공되는 입력이 객체를 미리정의된 원래의 시점으로 복귀시키는 때를 사용자가 추정할 것을 요구하기보다는 객체를 재설정하는 옵션을 제공함으로써) 디바이스의 작동성을 향상시키고 사용자-디바이스 인터페이스를 더 효율적으로 만든다. 동작을 수행하는 데 필요한 입력들의 수를 감소시키는 것은 디바이스의 작동성을 개선하는데, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, after rotating the virtual three-dimensional object within the first user interface area (eg, staging view), the device provides a second input corresponding to a request to reset the virtual three-dimensional object within the first user interface area. (eg, the second input is a double tap on the first user interface area) is detected (18026). In response to detecting the second input, the device configures a predefined original viewpoint (eg, a first viewpoint, or (eg, the first viewpoint within the staging user interface) of the virtual three-dimensional object within the first user interface area. displays (eg, via rotation and resizing of the virtual object) a representation (eg, via rotation and resizing of the virtual object) (eg, in response to a double tap, the device Reset the orientation of the virtual object to a predefined original orientation (eg, upright, with the front face facing the user and the lower face seated on a predefined reference plane) 18028 . For example, FIGS. 13I and 13J show a view of the virtual object 11002 shown in FIG. 13A from a viewpoint at which the viewpoint of the virtual object 11002 has changed (as a result of the rotation input described with respect to FIGS. 13B-13G ). Illustrated an input that causes a change to the original viewpoint of FIG. 13j (same as viewpoint). In some embodiments, in response to detecting the second input corresponding to the instruction to reset the virtual three-dimensional object, the device also resizes the virtual three-dimensional object to reflect a default display size of the virtual three-dimensional object. . In some embodiments, the double tap input resets both the orientation and size of the virtual object in the staging user interface, while the double tap input only resets the size and not the orientation of the virtual object in the augmented reality user interface. In some embodiments, the device requires a double tap on the virtual object to re-size the virtual object in the augmented reality user interface, while the device requires double taps detected on the virtual object and double taps detected around the virtual object Resets the orientation and size of the virtual object in response to taps. In the augmented reality view, a single finger swipe drags the virtual object rather than rotating it (eg, unlike in the staging view). Displaying a predefined original viewpoint of the virtual object in response to detecting the request to reset the virtual object (eg, input provided to adjust properties of the object causes the object to return to the original predefined viewpoint) It improves the operability of the device and makes the user-device interface more efficient (by providing an option to reset objects rather than requiring the user to estimate when). Reducing the number of inputs required to perform an operation improves the operability of a device, which additionally enables a user to use the device more quickly and efficiently, thereby reducing the device's power usage and improving battery life. make it

일부 실시예들에서, 제1 사용자 인터페이스 영역(예컨대, 스테이징 사용자 인터페이스) 내에 가상 3차원 객체를 디스플레이하는 동안, 디바이스는 가상 3차원 객체를 크기 재설정하라는 요청에 대응하는 제3 입력을 검출한다(예컨대, 제3 입력은 제1 사용자 인터페이스 영역 상에 표현되는 가상 객체에 대한 핀치 또는 디핀치 제스처이며, 제3 입력은 크기 재설정 동작을 개시하기 위한 기준들(예컨대, (방법(19000)을 참조하여 아래에서 더 상세히 설명되는 바와 같은) 원래 또는 증강된 기준들)을 충족하는 크기를 갖는다)(18030). 제3 입력을 검출하는 것에 응답하여, 디바이스는 입력의 크기에 따라 제1 사용자 인터페이스 영역 내의 가상 3차원 객체의 표현의 크기를 조정한다(18032). 예를 들어, (예컨대, 도 6n 및 도 6o와 관련하여 기술된 바와 같은) 디핀치 제스처를 포함하는 입력에 응답하여, 가상 객체(11002)의 크기는 감소된다. 일부 실시예들에서, 디바이스는 가상 3차원 객체의 표현의 크기가 조정될 때 가상 객체의 현재 줌 레벨을 나타내기 위한 표시자를 디스플레이한다. 일부 실시예들에서, 디바이스는 제3 입력의 종료 시 줌 레벨의 표시자를 디스플레이하는 것을 중지한다. 객체를 크기 재설정하기 위한 입력의 크기에 따라 가상 객체의 크기를 조정하는 것은 (예컨대, 객체를 원하는 양만큼 크기 재설정하는 옵션을 제공함으로써) 디바이스의 작동성을 향상시킨다. 동작을 수행하는 데 필요한 입력들의 수를 감소시키는 것은, 디바이스의 작동성을 개선하고 사용자-디바이스 인터페이스를 더 효율적으로 만드는데, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, while displaying the virtual three-dimensional object within the first user interface area (eg, the staging user interface), the device detects a third input corresponding to a request to resize the virtual three-dimensional object (eg, , the third input is a pinch or de-pinch gesture with respect to the virtual object presented on the first user interface area, and the third input is a criterion for initiating a resizing operation (eg, (see below with reference to method 19000 ) (18030). In response to detecting the third input, the device resizes ( 18032 ) the representation of the virtual three-dimensional object within the first user interface area according to the size of the input. For example, in response to an input comprising a de-pinch gesture (eg, as described with respect to FIGS. 6N and 6O ), the size of the virtual object 11002 is reduced. In some embodiments, the device displays an indicator to indicate the current zoom level of the virtual object when the representation of the virtual three-dimensional object is resized. In some embodiments, the device stops displaying the indicator of the zoom level at the end of the third input. Resizing a virtual object according to the size of an input for resizing the object improves the operability of the device (eg, by providing an option to resize the object by a desired amount). Reducing the number of inputs required to perform an operation improves the operability of the device and makes the user-device interface more efficient, which in addition enables a user to use the device more quickly and efficiently by reduce power consumption and improve battery life.

일부 실시예들에서, 제1 사용자 인터페이스 영역(예컨대, 스테이징 사용자 인터페이스) 내의 가상 3차원 객체의 표현의 크기를 조정하는 동안, 디바이스는 가상 3차원 객체의 크기가 가상 3차원 객체의 미리정의된 디폴트 디스플레이 크기에 도달했다는 것을 검출한다(18034). 가상 3차원 객체의 크기가 가상 3차원 객체의 미리정의된 디폴트 디스플레이 크기에 도달했다는 것을 검출하는 것에 응답하여, 디바이스는 가상 3차원 객체가 미리정의된 디폴트 디스플레이 크기로 디스플레이되는 것을 나타내기 위해 촉각적 출력(예컨대, 별개의 촉각적 출력)을 생성한다(18036). 도 11o는 (예컨대, 도 11m 내지 도 11o와 관련하여 기술된 바와 같이) 가상 객체(11002)의 크기가 가상 객체(11002)의 이전의 미리정의된 크기에 도달하였다는 것을 검출하는 것에 응답하여 제공되는 촉각적 출력(11024)의 예를 제공한다. 일부 실시예들에서, 디바이스는 가상 객체의 크기가 더블 탭 입력에 응답하여 디폴트 디스플레이 크기로 재설정될 때 동일한 촉각적 출력을 생성한다. 가상 객체의 크기가 미리정의된 디폴트 디스플레이 크기에 도달하였다는 결정에 따라 촉각적 출력을 생성하는 것은 (예컨대, 가상 객체의 시뮬레이션된 크기를 미리정의된 크기로 복귀시키기 위해 추가 입력이 필요하지 않다는 것을 나타내는) 피드백을 사용자에게 제공한다. 개선된 촉각적 피드백을 제공하는 것은 (예컨대, 디스플레이된 정보로 사용자 인터페이스를 혼란스럽게 하지 않으면서 가상 객체의 미리정의된 시뮬레이션된 물리적 크기에 도달하였다는 것을 사용자가 인지하게 하는 감각적 정보를 제공함으로써) 디바이스의 작동성을 향상시키고, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, while resizing the representation of the virtual three-dimensional object within the first user interface area (eg, the staging user interface), the device determines that the size of the virtual three-dimensional object is the predefined default value of the virtual three-dimensional object. It is detected that the display size has been reached (18034). In response to detecting that the size of the virtual three-dimensional object has reached a predefined default display size of the virtual three-dimensional object, the device causes a tactile sense to indicate that the virtual three-dimensional object is displayed at the predefined default display size. An output (eg, a separate tactile output) is generated ( 18036 ). 11O is provided in response to detecting that the size of virtual object 11002 has reached a previously predefined size of virtual object 11002 (eg, as described in connection with FIGS. 11M-11O ). An example of a tactile output 11024 is provided. In some embodiments, the device generates the same tactile output when the size of the virtual object is reset to the default display size in response to a double tap input. Generating a tactile output in accordance with a determination that the size of the virtual object has reached a predefined default display size (e.g., that no additional input is required to return the simulated size of the virtual object to the predefined size) to provide feedback to the user. Providing improved tactile feedback (e.g., by providing sensory information that makes the user aware that a predefined simulated physical size of the virtual object has been reached without confusing the user interface with the displayed information) It improves the operability of the device, which in addition enables the user to use the device more quickly and efficiently, thereby reducing the power usage of the device and improving the battery life.

일부 실시예들에서, 줌 레벨의 시각적 표시(예컨대, 현재 줌 레벨에 대응하는 값을 나타내는 슬라이더)가 제1 사용자 인터페이스 영역(예컨대, 스테이징 사용자 인터페이스) 내에 디스플레이된다. 가상 3차원 객체의 표현의 크기가 조정됨에 따라, 줌 레벨의 시각적 표시는 가상 3차원 객체의 표현의 조정된 크기에 따라 조정된다.In some embodiments, a visual indication of the zoom level (eg, a slider indicating a value corresponding to the current zoom level) is displayed within the first user interface area (eg, the staging user interface). As the representation of the virtual three-dimensional object is resized, the visual indication of the zoom level is adjusted according to the adjusted size of the representation of the virtual three-dimensional object.

일부 실시예들에서, 제1 사용자 인터페이스 영역(예컨대, 스테이징 사용자 인터페이스) 내의 가상 3차원 객체의 제3 시점의 표현을 디스플레이하는 동안, 디바이스는 하나 이상의 카메라들(예컨대, 디바이스 내에 내장된 카메라들)의 시야를 포함하는 제2 사용자 인터페이스 영역(예컨대, 증강 현실 사용자 인터페이스) 내에 가상 3차원 객체를 디스플레이하라는 요청에 대응하는 제4 입력을 검출한다(18042). 제4 입력을 검출하는 것에 응답하여, 디바이스는, 디스플레이 생성 컴포넌트를 통해, 제2 사용자 인터페이스 영역에 포함되는 하나 이상의 카메라들의 시야의 적어도 일부분 위에 가상 객체의 표현을 디스플레이하는데(예컨대, 하나 이상의 카메라들의 시야는 제2 사용자 인터페이스 영역 내에 가상 객체를 디스플레이하라는 요청에 응답하여 디스플레이됨), 하나 이상의 카메라들의 시야는 하나 이상의 카메라들이 위치되는 물리적 환경의 뷰이다(18044). 가상 객체의 표현을 디스플레이하는 것은, 가상 3차원 객체를 제1 축(예컨대, x-축과 같은, 디스플레이의 평면(예컨대, x-y 평면)에 수평 방향으로 평행한 축)을 중심으로 미리정의된 각도로 (예컨대, 0도와 같은 디폴트 요 각으로; 또는 하나 이상의 카메라들의 시야 내에서 캡처되는 물리적 환경에서 검출되는 평면과 정렬되는(예컨대, 그에 평행한) 각도로) 회전시키는 것을 포함한다. 일부 실시예들에서, 디바이스는 3차원 객체가 제1 축에 대해 미리정의된 각도로 점진적으로 회전하는 애니메이션을 디스플레이한다. 제2 축(예컨대, y-축과 같은, 디스플레이의 평면(예컨대, x-y 평면)에 수직 방향으로 평행한 축)에 대한 가상 3차원 객체의 현재 각도를 유지하는 것. (예컨대, 가상 객체를 평면에 대한 미리정의된 배향으로 재위치시키기 위한 추가 입력을 요구하지 않으면서) 하나 이상의 카메라들의 시야 내에 가상 객체를 디스플레이하라는 요청에 응답하여 제1 축을 중심으로 가상 객체를 미리정의된 각도로 회전시키는 것은 디바이스의 작동성을 향상시킨다. 동작을 수행하는 데 필요한 입력들의 수를 감소시키는 것은, 디바이스의 작동성을 개선하고 사용자-디바이스 인터페이스를 더 효율적으로 만드는데, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, while displaying a representation of a third viewpoint of a virtual three-dimensional object within a first user interface area (eg, a staging user interface), the device may use one or more cameras (eg, cameras embedded within the device). Detects ( 18042 ) a fourth input corresponding to a request to display a virtual three-dimensional object in a second user interface area (eg, augmented reality user interface) including a field of view of . In response to detecting the fourth input, the device, via the display creation component, displays a representation of the virtual object over at least a portion of the field of view of the one or more cameras included in the second user interface area (eg, of the one or more cameras). The field of view is displayed in response to a request to display the virtual object within the second user interface area), the field of view of the one or more cameras is a view of the physical environment in which the one or more cameras are located ( 18044 ). Displaying the representation of the virtual object includes moving the virtual three-dimensional object at a predefined angle about a first axis (eg, an axis horizontally parallel to the plane of the display (eg, the x-y plane), such as the x-axis). rotating (eg, at a default yaw angle such as 0 degrees; or at an angle that is aligned with (eg, parallel to) a plane detected in the physical environment being captured within the field of view of one or more cameras). In some embodiments, the device displays an animation in which the three-dimensional object gradually rotates at a predefined angle with respect to the first axis. Maintaining the current angle of the virtual three-dimensional object with respect to a second axis (eg, an axis perpendicular to the plane of the display (eg, the x-y plane), such as the y-axis). Pre-position the virtual object about a first axis in response to a request to display the virtual object within the field of view of one or more cameras (eg, without requiring additional input to reposition the virtual object to a predefined orientation relative to the plane). Rotating to a defined angle improves the operability of the device. Reducing the number of inputs required to perform an operation improves the operability of the device and makes the user-device interface more efficient, which in addition enables a user to use the device more quickly and efficiently by reduce power consumption and improve battery life.

일부 실시예들에서, 제1 사용자 인터페이스 영역(예컨대, 스테이징 사용자 인터페이스) 내에 가상 3차원 객체의 제4 시점의 표현을 디스플레이하는 동안, 디바이스는 가상 3차원 객체의 2차원 표현을 포함하는 2차원 사용자 인터페이스로 복귀하라는 요청에 대응하는 제5 입력을 검출한다(18046). 제5 입력을 검출하는 것에 응답하여, 디바이스는 가상 3차원 객체의 2차원 표현에 대응하는 가상 3차원 객체의 시점의 표현을 보여주도록 가상 3차원 객체를 (예컨대, 2차원 사용자 인터페이스 및 가상 3차원 객체의 2차원 표현을 디스플레이하기 전에) 회전시키고; 가상 3차원 객체가 가상 3차원 객체의 2차원 표현에 대응하는 각각의 시점의 표현을 보여주도록 회전된 후에 가상 3차원 객체의 2차원 표현을 디스플레이한다(18048). 일부 실시예들에서, 디바이스는 가상 3차원 객체의 2차원 표현에 대응하는 가상 3차원 객체의 시점의 표현을 보여주도록 3차원 객체가 점진적으로 회전하는 애니메이션을 디스플레이한다. 일부 실시예들에서, 디바이스는 또한, 2차원 사용자 인터페이스 내에 디스플레이되는 가상 3차원 객체의 2차원 표현의 크기와 매칭하도록 회전 동안 또는 회전 후에 가상 3차원 객체를 크기 재설정한다. 일부 실시예들에서, 2차원 사용자 인터페이스 내에서 2차원 표현(예컨대, 가상 객체의 섬네일 이미지)의 위치를 향해 이동하여 그 위치에 정착하는 회전된 가상 3차원 객체를 보여주기 위해 애니메이션화된 전이가 디스플레이된다. 가상 3차원 객체의 2차원 표현을 디스플레이하는 것으로 복귀하기 위한 입력에 응답하여 가상 3차원 객체의 2차원 표현에 대응하는 시점으로 가상 3차원 객체를 회전시키는 것은 (예컨대, 디스플레이된 객체가 2차원인 것을 나타내기 위해) 시각적 피드백을 제공한다. 개선된 시각적 피드백을 사용자에게 제공하는 것은, (예컨대, 사용자가 적절한 입력들을 제공하도록 그리고 2차원 객체의 회전이 이용불가능한 축을 따라서 2차원 객체를 회전시키기 위한 입력을 제공하려는 시도를 피하도록 도움으로써) 디바이스의 작동성을 향상시키고 사용자-디바이스 인터페이스를 더 효율적으로 만드는데, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, while displaying a representation of a fourth viewpoint of a virtual three-dimensional object within a first user interface area (eg, a staging user interface), the device is a two-dimensional user comprising a two-dimensional representation of the virtual three-dimensional object. A fifth input corresponding to the request to return to the interface is detected (18046). In response to detecting the fifth input, the device renders the virtual three-dimensional object (eg, a two-dimensional user interface and a virtual three-dimensional before displaying the two-dimensional representation of the object); After the virtual three-dimensional object is rotated to show a representation of each viewpoint corresponding to the two-dimensional representation of the virtual three-dimensional object, the two-dimensional representation of the virtual three-dimensional object is displayed (18048). In some embodiments, the device displays an animation in which the three-dimensional object gradually rotates to show a representation of the viewpoint of the virtual three-dimensional object corresponding to the two-dimensional representation of the virtual three-dimensional object. In some embodiments, the device also resizes the virtual three-dimensional object during or after rotation to match the size of the two-dimensional representation of the virtual three-dimensional object displayed within the two-dimensional user interface. In some embodiments, a transition is displayed that is animated to show a rotated virtual three-dimensional object that moves toward and settles at a location of a two-dimensional representation (eg, a thumbnail image of a virtual object) within a two-dimensional user interface. do. Rotating the virtual three-dimensional object to a viewpoint corresponding to the two-dimensional representation of the virtual three-dimensional object in response to input to return to displaying the two-dimensional representation of the virtual three-dimensional object (eg, when the displayed object is two-dimensional) to provide visual feedback). Providing the user with improved visual feedback (eg, by helping the user to provide appropriate inputs and avoid attempting to provide input for rotating the two-dimensional object along an axis for which rotation of the two-dimensional object is unavailable) It improves the operability of the device and makes the user-device interface more efficient, which further reduces the power usage of the device and improves battery life by enabling the user to use the device more quickly and efficiently.

일부 실시예들에서, 가상 3차원 객체의 제1 시점의 표현을 디스플레이하기 전에, 디바이스는 각각의 시점으로부터의 가상 3차원 객체의 뷰의 표현(예컨대, 가상 3차원 객체에 대응하는 2차원 이미지와 같은 정적 표현)을 포함하는 가상 3차원 객체의 표현(예컨대, 섬네일 또는 아이콘)을 포함하는 사용자 인터페이스를 디스플레이한다(18050). 가상 3차원 객체의 표현을 디스플레이하는 동안, 디바이스는 가상 3차원 객체를 디스플레이하라는 요청(예컨대, 가상 3차원 객체의 표현에 대한 탭 입력 또는 다른 선택 입력)을 검출한다(18052). 가상 3차원 객체를 디스플레이하라는 요청을 검출하는 것에 응답하여, 디바이스는 가상 3차원 객체의 표현의 디스플레이를 가상 3차원 객체의 표현의 각각의 시점과 매칭하도록 회전된 가상 3차원 객체로 대체한다(18054). 도 11a 내지 도 11e는 가상 객체(11002)의 표현을 디스플레이하는 사용자 인터페이스(5060)의 예를 제공한다. 가상 객체(11002)를 디스플레이하라는 요청에 응답하여, 도 11a와 관련하여 기술되는 바와 같이, 사용자 인터페이스(5060)의 디스플레이는 도 11e에 도시된 바와 같이, 스테이징 사용자 인터페이스(6010) 내의 가상 객체(11002)의 디스플레이로 대체된다. 도 11e의 가상 객체(11002)의 시점은 도 11a의 가상 객체(11002)의 표현의 시점과 동일하다. 일부 실시예들에서, 가상 3차원 객체의 표현은 그가 가상 3차원 객체로 대체되기 전에 (예컨대, 가상 3차원 객체의 크기와 매칭하는 크기로) 축척이 증가(scale up)된다. 일부 실시예들에서, 가상 3차원 객체는 초기에 가상 3차원 객체의 표현의 크기로 디스플레이되고, 이어서 축척이 증가된다. 일부 실시예들에서, 가상 3차원 객체의 표현으로부터 가상 3차원 객체로의 전이 동안, 디바이스는 가상 3차원 객체의 표현을 점진적으로 확대시키고, 가상 3차원 객체의 표현을 가상 3차원 객체로 크로스 페이드(cross fade)시키고, 이어서 가상 3차원 객체를 점진적으로 확대시켜서 가상 3차원 객체의 표현과 가상 3차원 객체 사이의 매끄러운 전이를 생성하게 한다. 일부 실시예들에서, 가상 3차원 객체의 초기 위치는 가상 3차원 객체의 표현의 위치에 대응하도록 선택된다. 일부 실시예들에서, 가상 3차원 객체의 표현은 가상 3차원 객체가 디스플레이될 위치에 대응하도록 선택된 위치로 시프트된다. 가상 3차원 객체의 (2차원) 표현의 디스플레이를 (2차원) 표현의 시점과 매칭하도록 회전된 가상 3차원 객체로 대체하는 것은 (예컨대, 3차원 객체가 가상 3차원 객체의 2차원 표현과 동일 객체라는 것을 나타내는) 시각적 피드백을 제공한다. 사용자에게 개선된 시각적 피드백을 제공하는 것은, 디바이스의 작동성을 향상시키고 사용자-디바이스 인터페이스를 더 효율적으로 만드는데, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, prior to displaying the representation of the first view of the virtual three-dimensional object, the device is configured to display a representation of the view of the virtual three-dimensional object from each viewpoint (eg, a two-dimensional image corresponding to the virtual three-dimensional object and A user interface including a representation (eg, a thumbnail or an icon) of a virtual 3D object including a static representation (such as a static representation) is displayed ( 18050 ). While displaying the representation of the virtual three-dimensional object, the device detects ( 18052 ) a request to display the virtual three-dimensional object (eg, a tap input or other selection input for the representation of the virtual three-dimensional object). In response to detecting the request to display the virtual three-dimensional object, the device replaces the display of the representation of the virtual three-dimensional object with the virtual three-dimensional object rotated to match respective viewpoints of the representation of the virtual three-dimensional object (18054). ). 11A-11E provide examples of a user interface 5060 that displays a representation of a virtual object 11002. In response to a request to display the virtual object 11002 , as described with respect to FIG. 11A , the display of the user interface 5060 displays the virtual object 11002 within the staging user interface 6010 , as shown in FIG. 11E . ) is replaced with the display of The viewpoint of the virtual object 11002 of FIG. 11E is the same as the viewpoint of the representation of the virtual object 11002 of FIG. 11A . In some embodiments, the representation of the virtual three-dimensional object is scaled up (eg, to a size that matches the size of the virtual three-dimensional object) before it is replaced with the virtual three-dimensional object. In some embodiments, the virtual three-dimensional object is initially displayed at the size of the representation of the virtual three-dimensional object, and then the scale is increased. In some embodiments, during transition from the representation of the virtual three-dimensional object to the virtual three-dimensional object, the device progressively enlarges the representation of the virtual three-dimensional object, and cross-fades the representation of the virtual three-dimensional object into the virtual three-dimensional object. (cross fade), and then progressively enlarge the virtual three-dimensional object to create a smooth transition between the representation of the virtual three-dimensional object and the virtual three-dimensional object. In some embodiments, the initial position of the virtual three-dimensional object is selected to correspond to a position of the representation of the virtual three-dimensional object. In some embodiments, the representation of the virtual three-dimensional object is shifted to the selected position to correspond to the position at which the virtual three-dimensional object is to be displayed. Replacing the display of a (two-dimensional) representation of a virtual three-dimensional object with a virtual three-dimensional object rotated to match the viewpoint of the (two-dimensional) representation (e.g., the three-dimensional object is equivalent to the two-dimensional representation of the virtual three-dimensional object) It provides visual feedback indicating that it is an object. Providing the user with improved visual feedback improves the operability of the device and makes the user-device interface more efficient, which in addition enables the user to use the device more quickly and efficiently, thereby enabling the device's power usage. reduce and improve battery life.

일부 실시예들에서, 제1 사용자 인터페이스를 디스플레이하기 전에, 디바이스는 가상 3차원 객체의 2차원 표현을 포함하는 2차원 사용자 인터페이스를 디스플레이한다(18056). 가상 3차원 객체의 2차원 표현을 포함하는 2차원 사용자 인터페이스를 디스플레이하는 동안, 디바이스는 가상 3차원 객체의 2차원 표현에 대응하는 터치 감응형 표면 상의 위치에서 미리보기 기준들(예컨대, 미리보기 기준들은 누르기 입력의 세기가 제1 세기 임계치(예컨대, 가볍게 누르기 세기 임계치)를 초과할 것을 요구하고/하거나 미리보기 기준들은 누르기 입력의 지속기간이 제1 지속기간 임계치를 초과할 것을 요구함)을 충족하는 터치 입력의 제1 부분(예컨대, 접촉의 세기의 증가)을 검출한다(18058). 미리보기 기준들을 충족하는 터치 입력의 제1 부분을 검출하는 것에 응답하여, 디바이스는 가상 3차원 객체의 2차원 표현보다 큰 가상 3차원 객체의 미리보기를 디스플레이한다(예컨대, 미리보기는 가상 3차원 객체의 상이한 시점들을 보여주도록 애니메이션화된다)(18060). 일부 실시예들에서, 디바이스는 (예컨대, 입력의 지속기간 또는 압력에 기초하여 또는 애니메이션의 미리결정된 속도에 기초하여) 3차원 객체가 점진적으로 확대되는 애니메이션을 디스플레이한다. (예컨대, 현재 디스플레이된 사용자 인터페이스의 디스플레이를 상이한 사용자 인터페이스로 대체하지 않으면서) 가상 3차원 객체의 미리보기를 디스플레이하는 것은 (예컨대, 사용자가 가상 3차원 객체를 디스플레이하는 것을 그리고 사용자 인터페이스들 사이에서 내비게이팅하기 위한 입력을 제공하지 않고서 가상 3차원 객체의 2차원 표현을 관찰하는 것으로 복귀하는 것을 가능하게 함으로써) 디바이스의 작동성을 향상시킨다. 동작을 수행하는 데 필요한 입력들의 수를 감소시키는 것은, 디바이스의 작동성을 개선하는데, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, prior to displaying the first user interface, the device displays ( 18056 ) a two-dimensional user interface comprising a two-dimensional representation of the virtual three-dimensional object. While displaying a two-dimensional user interface comprising a two-dimensional representation of a virtual three-dimensional object, the device determines preview criteria (eg, a preview criterion) at a location on the touch-sensitive surface corresponding to the two-dimensional representation of the virtual three-dimensional object. require that the intensity of the press input exceeds a first intensity threshold (eg, a light press intensity threshold) and/or the preview criteria require that the duration of the press input exceeds the first duration threshold) A first portion of the touch input (eg, an increase in the intensity of the contact) is detected ( 18058 ). In response to detecting the first portion of the touch input that meets the preview criteria, the device displays a preview of the virtual three-dimensional object that is larger than the two-dimensional representation of the virtual three-dimensional object (eg, the preview is virtual three-dimensional). Animated to show different viewpoints of the object (18060). In some embodiments, the device displays an animation in which the three-dimensional object is progressively enlarged (eg, based on a duration or pressure of the input or based on a predetermined speed of the animation). Displaying a preview of the virtual three-dimensional object (eg, without replacing the display of the currently displayed user interface with a different user interface) may affect (eg, the user displaying the virtual three-dimensional object and between user interfaces). improve the operability of the device) by making it possible to return to observing a two-dimensional representation of a virtual three-dimensional object without providing input for navigating. Reducing the number of inputs required to perform an operation improves the operability of the device, which additionally enables a user to use the device more quickly and efficiently, thereby reducing the device's power usage and conserving battery life. improve

일부 실시예들에서, 가상 3차원 객체의 미리보기를 디스플레이하는 동안, 디바이스는 (예컨대, 동일한 연속적으로 유지되는 접촉에 의해) 터치 입력의 제2 부분을 검출한다(18062). 터치 입력의 제2 부분을 검출하는 것에 응답하여, 터치 입력의 제2 부분이 메뉴 디스플레이 기준들(예컨대, 메뉴 디스플레이 기준들은 접촉이 미리정의된 방향(예컨대, 상향)으로 임계량 초과만큼 이동할 것을 요구함)을 충족한다는 결정에 따라, 디바이스는 가상 객체와 연관된 복수의 동작들에 대응하는 복수의 선택가능한 옵션들(예컨대, 공유 메뉴)(예컨대, 가상 객체를 다른 디바이스 또는 사용자와 공유하는 다양한 수단들과 같은 공유 옵션들)을 디스플레이하고; 터치 입력의 제2 부분이 스테이징 기준들(예컨대, 스테이징 기준들은 접촉의 세기가 제1 임계 세기보다 큰 제2 임계 세기(예컨대, 깊게 누르기 세기 임계치)를 초과할 것을 요구함)을 충족한다는 결정에 따라, 디바이스는 가상 3차원 객체의 2차원 표현을 포함하는 2차원 사용자 인터페이스의 디스플레이를 가상 3차원 객체를 포함하는 제1 사용자 인터페이스로 대체한다(18064). 스테이징 기준들이 충족되는지 여부에 따라, 가상 객체와 연관된 메뉴를 디스플레이하는 것 또는 가상 3차원 객체의 2차원 표현을 포함하는 2차원 사용자 인터페이스의 디스플레이를 가상 3차원 객체를 포함하는 제1 사용자 인터페이스로 대체하는 것은, 입력에 응답하여 다수의 상이한 유형들의 동작들의 수행을 가능하게 한다. 제1 유형의 입력을 이용하여 다수의 상이한 유형들의 동작들의 수행을 가능하게 하는 것은 사용자가 이들 동작들을 수행할 수 있는 효율을 증가시키며, 이에 의해 디바이스의 작동성을 향상시키고, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, while displaying a preview of the virtual three-dimensional object, the device detects ( 18062 ) a second portion of the touch input (eg, by the same continuously maintained contact). In response to detecting the second portion of the touch input, the second portion of the touch input displays menu display criteria (eg, menu display criteria requiring the contact to move in a predefined direction (eg, upwards) by more than a threshold amount). Upon determining that it satisfies the share options); upon determining that the second portion of the touch input meets staging criteria (eg, the staging criteria require that the intensity of the contact exceeds a second threshold intensity (eg, deep press intensity threshold) that is greater than the first threshold intensity) , the device replaces the display of the two-dimensional user interface including the two-dimensional representation of the virtual three-dimensional object with the first user interface including the virtual three-dimensional object (18064). Depending on whether staging criteria are met, displaying a menu associated with the virtual object or replacing the display of a two-dimensional user interface comprising a two-dimensional representation of the virtual three-dimensional object with a first user interface comprising the virtual three-dimensional object Doing enables performing a number of different types of operations in response to input. Enabling the performance of a number of different types of operations using a first type of input increases the efficiency with which a user can perform these operations, thereby improving the operability of the device, which additionally allows the user to perform these operations. By enabling the device to be used more quickly and efficiently, it reduces the device's power usage and improves battery life.

일부 실시예들에서, 제1 사용자 인터페이스는 복수의 제어부들(예컨대, 실세계 뷰로 스위칭하기를 위한, 뒤로 가기를 위한, 등을 위한 버튼들)을 포함한다(18066). 제1 사용자 인터페이스를 디스플레이하기 전에, 디바이스는 가상 3차원 객체의 2차원 표현을 포함하는 2차원 사용자 인터페이스를 디스플레이한다(18068). 제1 사용자 인터페이스 내에 가상 3차원 객체를 디스플레이하라는 요청을 검출하는 것에 응답하여, 디바이스는 가상 3차원 객체와 연관된 한 세트의 하나 이상의 제어부들을 디스플레이하지 않으면서 제1 사용자 인터페이스 내에 가상 3차원 객체를 디스플레이하고; 제1 사용자 인터페이스 내에 가상 3차원 객체를 디스플레이한 후, 디바이스는 한 세트의 하나 이상의 제어부들을 디스플레이한다(18070). 예를 들어, 도 11a 내지 도 11e와 관련하여 기술된 바와 같이, 가상 객체(11002)의 2차원 표현을 포함하는 사용자 인터페이스(5060)의 디스플레이는 스테이징 사용자 인터페이스(6010) 전에 디스플레이된다. (도 11a와 관련하여 기술된 바와 같이) 스테이징 사용자 인터페이스(6010) 내에 가상 객체(11002)를 디스플레이하라는 요청에 응답하여, 가상 객체(11002)는 스테이징 사용자 인터페이스(6010)의 제어부들(6016, 6018, 6020) 없이 (도 11b 및 도 11c에 도시된 바와 같이) 디스플레이된다. 도 11d 및 도 11e에서, 스테이징 사용자 인터페이스(6010)의 제어부들(6016, 6018, 6020)은 사용자 인터페이스 내에서 뷰로 페이드 인된다. 일부 실시예들에서, 한 세트의 하나 이상의 제어부들은, 가상 3차원 객체가 디바이스의 하나 이상의 카메라들의 시야 내에서 검출되는 평면에 대해 고정된 위치에 배치되는 증강 현실 환경에서 가상 3차원 객체를 디스플레이하기 위한 제어부를 포함한다. 일부 실시예들에서, 제1 사용자 인터페이스 내에 가상 3차원 객체를 디스플레이하라는 요청을 검출하는 것에 응답하여, 가상 3차원 객체가 제1 사용자 인터페이스 내에 디스플레이될 준비가 되어 있지 않다는(예컨대, 제1 사용자 인터페이스가 디스플레이될 준비가 된 시점에 가상 객체의 3차원 모델이 완전히 로딩되지 않는다는)(예컨대, 가상 객체의 로딩 시간이 임계 시간보다 길다는(예컨대, 사용자에게 인지가능하고 유의함)) 결정에 따라, 디바이스는 제1 사용자 인터페이스 상에 복수의 제어부들을 디스플레이하지 않으면서 제1 사용자 인터페이스의 일부분(예컨대, 제1 사용자 인터페이스의 배경 윈도우)을 디스플레이하고; (예컨대, 제1 사용자 인터페이스의 일부분이 제어부들 없이 디스플레이된 후) 가상 3차원 객체가 제1 사용자 인터페이스 내에 디스플레이될 준비가 되어 있다는 결정에 따라, 디바이스는 제1 사용자 인터페이스 내에 가상 3차원 객체를 (예컨대, 페이드 인으로) 디스플레이하고; 디바이스는 가상 3차원 객체가 제1 사용자 인터페이스 내에 디스플레이된 후 제어부들을 (예컨대, 페이드 인으로) 디스플레이한다. 제1 사용자 인터페이스 내에 가상 3차원 객체를 디스플레이하라는 요청을 검출하는 것에 응답하여, 그리고 가상 3차원 객체가 디스플레이될 준비가 되어 있다는(예컨대, 제1 사용자 인터페이스가 디스플레이될 준비가 된 경우에 가상 객체의 3차원 모델이 로딩되었다는)(예컨대, 가상 객체의 로딩 시간은 임계 시간보다 짧다는(예컨대, 사용자에게 인지가능하지 않고 무시할 수 있음)) 결정에 따라, 디바이스는 복수의 제어부들이 제1 사용자 인터페이스 상에 있는 상태로 제1 사용자 인터페이스를 디스플레이하고; 디바이스는 복수의 제어부들과 함께 제1 사용자 인터페이스 내에 가상 3차원 객체를 (예컨대, 페이드 인 없이) 디스플레이한다. 일부 실시예들에서, (예컨대, "뒤로 가라"는 요청에 응답하여) 2차원 사용자 인터페이스로 복귀하기 위해 스테이징 사용자 인터페이스가 존재하는 경우, 가상 3차원 객체가 가상 3차원 객체의 2차원 표현으로 변환되기 전에 제어부들이 먼저 페이드 아웃된다. 사용자 인터페이스 내에 가상 3차원 객체를 디스플레이한 후에 제어부들을 디스플레이하는 것은 (예컨대, 가상 객체를 조작하는 제어부들이 가상 객체를 로딩하는 데 필요한 시간 동안 이용불가능하다는 것을 나타내는) 시각적 피드백을 제공한다. 개선된 시각적 피드백을 사용자에게 제공하는 것은, (예컨대, 가상 객체에 대한 로딩 시간 중에 조작 동작들이 이용불가능한 동안 사용자가 객체를 조작하기 위한 입력을 제공하는 것을 피하도록 도움으로써) 디바이스의 작동성을 향상시키고 사용자-디바이스 인터페이스를 더 효율적으로 만드는데, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, the first user interface includes a plurality of controls (eg, buttons for switching to the real-world view, for going back, etc.) ( 18066 ). Prior to displaying the first user interface, the device displays ( 18068 ) a two-dimensional user interface comprising a two-dimensional representation of the virtual three-dimensional object. In response to detecting the request to display the virtual three-dimensional object within the first user interface, the device displays the virtual three-dimensional object within the first user interface without displaying a set of one or more controls associated with the virtual three-dimensional object. do; After displaying the virtual 3D object in the first user interface, the device displays a set of one or more control units ( 18070 ). For example, as described with respect to FIGS. 11A-11E , the display of the user interface 5060 including the two-dimensional representation of the virtual object 11002 is displayed before the staging user interface 6010 . In response to a request to display the virtual object 11002 in the staging user interface 6010 (as described with respect to FIG. 11A ), the virtual object 11002 is configured to display the controls 6016 , 6018 of the staging user interface 6010 . , 6020) (as shown in FIGS. 11B and 11C ). 11D and 11E , the controls 6016 , 6018 , 6020 of the staging user interface 6010 fade in to view within the user interface. In some embodiments, the set of one or more controls is configured to display the virtual three-dimensional object in an augmented reality environment in which the virtual three-dimensional object is disposed at a fixed position relative to a plane in which the virtual three-dimensional object is detected within the field of view of one or more cameras of the device. control unit for In some embodiments, in response to detecting a request to display the virtual three-dimensional object within the first user interface, it is determined that the virtual three-dimensional object is not ready to be displayed within the first user interface (eg, the first user interface Upon determination that the three-dimensional model of the virtual object is not fully loaded at the time when is ready to be displayed (e.g., the loading time of the virtual object is longer than the threshold time (e.g., perceptible and significant to the user)), the device displays a portion of the first user interface (eg, a background window of the first user interface) without displaying the plurality of controls on the first user interface; Upon determining that the virtual three-dimensional object is ready to be displayed in the first user interface (eg, after a portion of the first user interface is displayed without controls), the device creates the virtual three-dimensional object in the first user interface ( eg, fade in); The device displays the controls (eg, fade in) after the virtual three-dimensional object is displayed in the first user interface. responsive to detecting a request to display the virtual three-dimensional object within the first user interface, and indicating that the virtual three-dimensional object is ready to be displayed (eg, of the virtual object when the first user interface is ready to be displayed); Upon determining that the three-dimensional model has been loaded (eg, the loading time of the virtual object is shorter than a threshold time (eg, not perceptible to the user and negligible)), the device displays the plurality of controls on the first user interface. display the first user interface in a state in ; The device displays the virtual three-dimensional object (eg, without fading in) in the first user interface together with the plurality of controls. In some embodiments, if a staging user interface exists to return to the two-dimensional user interface (eg, in response to a request to "go back"), the virtual three-dimensional object is transformed into a two-dimensional representation of the virtual three-dimensional object. Controls are first faded out before the Displaying the controls after displaying the virtual three-dimensional object within the user interface provides visual feedback (eg, indicating that controls for manipulating the virtual object are unavailable for a time required to load the virtual object). Providing the user with improved visual feedback improves the operability of the device (eg, by helping the user avoid providing input to manipulate the object while manipulation actions are unavailable during load time for the virtual object). and makes the user-device interface more efficient, which additionally reduces the power usage of the device and improves battery life by enabling the user to use the device more quickly and efficiently.

도 18a 내지 도 18i에서의 동작들이 기술된 특정 순서는 단지 일례이며 기술된 순서가 동작들이 수행될 수 있는 유일한 순서임을 나타내는 것으로 의도되지는 않는다는 것이 이해되어야 한다. 당업자는 본 명세서에 기술된 동작들을 재순서화하는 다양한 방식들을 인식할 것이다. 추가적으로, 본 명세서에 기술된 다른 방법들(예를 들어, 방법들(800, 900, 1000, 16000, 17000, 19000, 20000))과 관련하여 본 명세서에 기술된 다른 프로세스들의 상세사항들이 도 18a 내지 도 18i와 관련하여 전술된 방법(18000)과 유사한 방식으로 또한 적용가능하다는 것이 주목되어야 한다. 예를 들어, 방법(18000)과 관련하여 전술된 접촉들, 입력들, 가상 객체들, 사용자 인터페이스 영역들, 시야들, 촉각적 출력들, 이동들, 및/또는 애니메이션들은 선택적으로, 본 명세서에 기술된 다른 방법들(예컨대, 방법들(800, 900, 1000, 17000, 18000, 19000, 20000))과 관련하여 본 명세서에 기술된 접촉들, 입력들, 가상 객체들, 사용자 인터페이스 영역들, 시야들, 촉각적 출력들, 이동들, 및/또는 애니메이션들의 특성들 중 하나 이상을 갖는다. 간결함을 위해, 이러한 상세사항들은 여기서 반복되지 않는다.It should be understood that the specific order in which the operations in FIGS. 18A-18I are described is merely an example and is not intended to indicate that the described order is the only order in which the operations may be performed. Those skilled in the art will recognize various ways of reordering the operations described herein. Additionally, details of other processes described herein in connection with other methods described herein (eg, methods 800 , 900 , 1000 , 16000 , 17000 , 19000 , 20000 ) are shown in FIGS. 18A- It should be noted that in a manner similar to method 18000 described above with respect to FIG. 18I is also applicable. For example, contacts, inputs, virtual objects, user interface regions, fields of view, tactile outputs, movements, and/or animations described above with respect to method 18000 are optionally described herein. Contacts, inputs, virtual objects, user interface areas, field of view described herein in connection with other methods described (eg, methods 800, 900, 1000, 17000, 18000, 19000, 20000) fields, tactile outputs, movements, and/or animations. For the sake of brevity, these details are not repeated here.

도 19a 내지 도 19h는 이동의 제1 임계치 크기가 제1 객체 조작 거동에 대해 충족된다는 결정에 따라, 제2 객체 조작 거동에 필요한 이동의 제2 임계치 크기를 증가시키는 방법(19000)을 예시하는 흐름도들이다. 방법(19000)은 디스플레이 생성 컴포넌트(예컨대, 디스플레이, 프로젝터, 헤드 업 디스플레이 등) 및 터치 감응형 표면(예컨대, 터치 감응형 표면, 또는 디스플레이 생성 컴포넌트 및 터치 감응형 표면 둘 모두로서의 역할을 하는 터치 스크린 디스플레이)을 갖는 전자 디바이스(예컨대, 도 3의 디바이스(300), 또는 도 1a의 휴대용 다기능 디바이스(100))에서 수행된다. 방법(19000)에서의 일부 동작들이 선택적으로 조합되고/되거나, 일부 동작들의 순서가 선택적으로 변경된다.19A-19H are flow diagrams illustrating a method 19000 of increasing a second threshold magnitude of movement required for a second object manipulation behavior in accordance with a determination that the first threshold magnitude of movement is satisfied for the first object manipulation behavior admit. Method 19000 includes a display generating component (eg, a display, a projector, a heads up display, etc.) and a touch-sensitive surface (eg, a touch-sensitive surface, or a touch screen serving as both a display generating component and a touch-sensitive surface). display) (eg, device 300 of FIG. 3 , or portable multifunction device 100 of FIG. 1A ). Some operations in method 19000 are selectively combined and/or the order of some operations is selectively changed.

디바이스는, 디스플레이 생성 컴포넌트를 통해, 제1 제스처 인식 기준들(예컨대, 회전 기준들)을 충족하는 입력들에 응답하여 수행되는 제1 객체 조작 거동(예컨대, 각각의 축을 중심으로 하는 사용자 인터페이스 객체의 회전) 및 제2 제스처 인식 기준들(예컨대, 병진 기준들 및 축척조정 기준들 중 하나)을 충족하는 입력들에 응답하여 수행되는 제2 객체 조작 거동(예컨대, 사용자 인터페이스 객체의 병진 또는 사용자 인터페이스 객체의 축척조정 중 하나)을 포함하는 복수의 객체 조작 거동들과 연관된 사용자 인터페이스 객체를 포함하는 제1 사용자 인터페이스 영역(예컨대, 가상 객체의 표현을 포함하는 사용자 인터페이스 영역)을 디스플레이한다(19002). 예를 들어, 디스플레이된 가상 객체(11002)는 (예컨대, 도 14b 내지 도 14e와 관련하여 기술된 바와 같은) 각각의 축을 중심으로 하는 회전, (예컨대, 도 14k 내지 도 14m과 관련하여 기술된 바와 같은) 병진, 및 (예컨대, 도 14g 내지 도 14i와 관련하여 기술된 바와 같은) 축척조정을 포함하는 조작 거동들과 연관된다.The device, via the display creation component, performs a first object manipulation behavior (eg, of a user interface object about a respective axis) performed in response to inputs that satisfy first gesture recognition criteria (eg, rotation criteria). rotation) and a second object manipulation behavior (eg, a translation of a user interface object or a user interface object) performed in response to inputs satisfying second gesture recognition criteria (eg, one of the translation criteria and scaling criteria). Display ( 19002 ) a first user interface region (eg, a user interface region including a representation of a virtual object) that includes a user interface object associated with a plurality of object manipulation behaviors including one of the scaling of For example, the displayed virtual object 11002 may rotate about a respective axis (eg, as described with respect to FIGS. 14B-14E ), or rotate about a respective axis (eg, as described with respect to FIGS. 14K-14M ). such) translation, and manipulation behaviors including scaling (eg, as described with respect to FIGS. 14G-14I ).

제1 사용자 인터페이스 영역을 디스플레이하는 동안, 디바이스는, 터치 감응형 표면을 가로지르는 하나 이상의 접촉들의 이동을 검출하는 것을 포함하여, 사용자 인터페이스 객체에 대한 입력의 제1 부분을 검출하고(예컨대, 디바이스는 사용자 인터페이스 객체의 디스플레이 위치에 대응하는 터치 감응형 표면 상의 위치들에서 하나 이상의 접촉들을 검출함), 하나 이상의 접촉들이 터치 감응형 표면 상에서 검출되는 동안, 디바이스는 제1 제스처 인식 기준들 및 제2 제스처 인식 기준들 양자 모두에 대한 하나 이상의 접촉들의 이동을 평가한다(19004).While displaying the first user interface region, the device detects a first portion of the input to the user interface object, including detecting movement of one or more contacts across the touch-sensitive surface (eg, the device detecting one or more contacts at locations on the touch-sensitive surface corresponding to the display location of the user interface object), while the one or more contacts are detected on the touch-sensitive surface, the device determines the first gesture recognition criteria and the second gesture Evaluate movement of one or more contacts relative to both recognition criteria ( 19004 ).

입력의 제1 부분을 검출하는 것에 응답하여, 디바이스는 입력의 제1 부분에 기초하여 사용자 인터페이스 객체의 외관을 업데이트하는데, 이는 입력의 제1 부분이 제2 제스처 인식 기준들을 충족하기 전에 제1 제스처 인식 기준들을 충족한다는 결정에 따라, 입력의 제1 부분에 기초하여(예컨대, 입력의 제1 부분의 방향 및/또는 크기에 기초하여) 제1 객체 조작 거동에 따라 사용자 인터페이스 객체의 외관을 변경하는 것(예컨대, 사용자 인터페이스 객체를 회전시키는 것); 및 (예컨대, 제2 객체 조작 거동에 따라 사용자 인터페이스 객체의 외관을 변경하지 않고서) 제2 제스처 인식 기준들에 대한 임계치를 증가시킴으로써(예컨대, 제2 제스처 인식 기준들에서 이동 파라미터(예컨대, 이동 거리, 속도 등)에 필요한 임계치를 증가시킴으로써) 제2 제스처 인식 기준들을 업데이트하는 것을 포함한다(19006). 예를 들어, 도 14e에서, (축척조정 기준들이 충족되기 전에) 회전 기준들이 충족되었다는 결정에 따라 가상 객체(1102)가 회전하였고, 축척조정 기준들에 대한 임계치 ST가 ST'으로 증가된다. 일부 실시예들에서, 객체를 회전시키기 위한 제스처를 인식하기 위한 기준들이 충족되기 전에, (병진 또는 축척조정에 대한 기준들이 이전에 충족되지 않았다고 가정하면) 병진 또는 축척조정을 위한 제스처를 인식하기 위한 기준들을 충족함으로써 객체에 대한 병진 또는 축척조정 동작을 개시하는 것은 비교적 용이하다. 일단 객체를 회전시키기 위한 제스처를 인식하기 위한 기준들이 충족되면, 객체에 대한 병진 또는 축척조정 동작을 개시하는 것은 더 어려워지고(예컨대, 병진 및 축척조정에 대한 기준들은 이동 파라미터에 대한 증가된 임계치들로 업데이트됨), 객체 조작은 이러한 객체를 조작하기 위해 이미 인식되고 사용되는 제스처에 대응하는 조작 거동을 향해 편의(bias)된다. 입력이 제1 제스처 인식 기준들을 충족하기 전에 제2 제스처 인식 기준들을 충족한다는 결정에 따라, 디바이스는 입력의 제1 부분에 기초하여(예컨대, 입력의 제1 부분의 방향 및/또는 크기에 기초하여) 제2 객체 조작 거동에 따라 사용자 인터페이스 객체의 외관을 변경하고(예컨대, 사용자 인터페이스 객체를 병진시키거나 사용자 인터페이스 객체를 크기 재설정함); (예컨대, 제1 객체 조작 거동에 따라 사용자 인터페이스 객체의 외관을 변경하지 않고서) 제1 제스처 인식 기준들에 대한 임계치를 증가시킴으로써(예컨대, 제1 제스처 인식 기준들에서 이동 파라미터(예컨대, 이동 거리, 속도 등)에 필요한 임계치를 증가시킴으로써) 제1 제스처 인식 기준들을 업데이트한다. 예를 들어, 도 14i에서, (회전 기준들이 충족되기 전에) 축척조정 기준들이 충족되었다는 결정에 따라 가상 객체(1102)의 크기가 증가하였고, 회전 기준들에 대한 임계치 RT가 RT'으로 증가된다. 일부 실시예들에서, 객체를 병진 또는 축척조정하기 위한 제스처를 인식하기 위한 기준들이 충족되기 전에, (객체를 회전시키기 위한 제스처를 인식하기 위한 기준들이 이전에 충족되지 않았다고 가정하면) 회전을 위한 제스처를 인식하기 위한 기준들을 충족함으로써 객체에 대한 회전 동작을 개시하는 것은 비교적 용이하다. 일단 객체를 병진 또는 축척조정하기 위한 제스처를 인식하기 위한 기준들이 충족되면, 객체에 대한 회전 동작을 개시하는 것은 더 어려워지고(예컨대, 객체를 회전시키기 위한 기준들은 이동 파라미터에 대한 증가된 임계치로 업데이트됨), 객체 조작 거동은 이러한 객체를 조작하기 위해 이미 인식되고 사용되는 제스처에 대응하는 조작 거동을 향해 편의된다. 일부 실시예들에서, 사용자 인터페이스 객체의 외관은 입력의 각각의 이동 파라미터의 값들에 따라 동적으로 그리고 연속적으로 변경된다(예컨대, 상이한 크기들, 위치들, 시점들, 반사상들, 그림자들 등을 보여줌). 일부 실시예들에서, 디바이스는 이동 파라미터(예컨대, 각각의 유형의 조작 거동에 대한 각각의 이동 파라미터)와 사용자 인터페이스 객체의 외관(예컨대, 각각의 유형의 조작 거동에 대한 외관의 각각의 양태)에 대해 이루어진 변경들 사이의 미리설정된 대응관계(예컨대, 각각의 유형의 조작 거동에 대한 각각의 대응관계)를 따른다. 입력 이동이 제2 객체 조작에 대한 제2 임계치를 초과하여 증가할 때 제1 객체 조작에 필요한 입력 이동에 대한 제1 임계치를 증가시키는 것은 (예컨대, 제1 객체 조작을 수행하기 위한 입력을 제공하려고 시도하는 동안 사용자가 제2 객체 조작을 우발적으로 수행하는 것을 피하도록 도움으로써) 디바이스의 작동성을 향상시킨다. 상이한 유형들의 객체 조작을 제어할 수 있는 사용자의 능력을 개선하는 것은 디바이스의 작동성을 향상시키고 사용자-디바이스 인터페이스를 더 효율적으로 만든다.In response to detecting the first portion of the input, the device updates the appearance of the user interface object based on the first portion of the input, wherein the first gesture before the first portion of the input meets second gesture recognition criteria. changing the appearance of the user interface object according to a first object manipulation behavior based on the first portion of the input (eg, based on a direction and/or size of the first portion of the input) in accordance with a determination that the recognition criteria are met (eg, rotating a user interface object); and by increasing a threshold for the second gesture recognition criteria (eg, without changing the appearance of the user interface object according to the second object manipulation behavior) (eg, a movement parameter (eg, distance of movement) in the second gesture recognition criteria). and updating the second gesture recognition criteria (19006) by increasing the threshold required for , speed, etc.). For example, in FIG. 14E , the virtual object 1102 has been rotated in accordance with a determination that the rotation criteria are satisfied (before the scaling criteria are satisfied), and the threshold ST for the scaling criteria is increased to ST′. In some embodiments, before the criteria for recognizing a gesture for rotating an object are met (assuming the criteria for translation or scaling have not been met previously), It is relatively easy to initiate a translation or scale operation on an object by meeting the criteria. Once the criteria for recognizing a gesture to rotate an object are met, it becomes more difficult to initiate a translation or scale operation on the object (e.g., the criteria for translation and scaling are subject to increased thresholds for the movement parameter). ), object manipulation is biased towards manipulation behaviors corresponding to gestures already recognized and used to manipulate these objects. Upon determining that the input meets the second gesture recognition criteria before meeting the first gesture recognition criteria, the device is configured based on the first portion of the input (eg, based on a direction and/or magnitude of the first portion of the input). ) change the appearance of the user interface object (eg, translate the user interface object or resize the user interface object) according to the second object manipulation behavior; By increasing the threshold for the first gesture recognition criteria (eg, without changing the appearance of the user interface object according to the first object manipulation behavior) (eg, a movement parameter (eg, movement distance, update the first gesture recognition criteria) by increasing the threshold required for speed, etc.). For example, in FIG. 14I , the size of the virtual object 1102 is increased in accordance with a determination that the scaling criteria have been met (before the rotation criteria are met), and the threshold RT for the rotation criteria is increased to RT'. In some embodiments, before the criteria for recognizing a gesture for translating or scaling an object are met, the gesture for rotation (assuming that the criteria for recognizing a gesture for rotating the object have not previously been met) It is relatively easy to initiate a rotation operation on an object by satisfying the criteria for recognizing . Once the criteria for recognizing a gesture for translating or scaling an object are met, it becomes more difficult to initiate a rotation operation on the object (eg, the criteria for rotating the object are updated with an increased threshold for the movement parameter). ), object manipulation behaviors are biased towards manipulation behaviors corresponding to gestures already recognized and used to manipulate these objects. In some embodiments, the appearance of the user interface object changes dynamically and continuously according to the values of each movement parameter of the input (eg, showing different sizes, positions, viewpoints, reflections, shadows, etc.) ). In some embodiments, the device controls the movement parameter (eg, each movement parameter for each type of manipulation behavior) and the appearance of the user interface object (eg, each aspect of the appearance for each type of manipulation behavior). Predetermined correspondences between changes made to the system (eg, respective correspondences for each type of manipulation behavior) are followed. Increasing the first threshold for the input movement required for the first object manipulation when the input movement increases above the second threshold for the second object manipulation (eg, to provide input for performing the first object manipulation) improve the operability of the device) by helping the user avoid accidentally performing a second object manipulation during an attempt. Improving a user's ability to control different types of object manipulation improves the operability of the device and makes the user-device interface more efficient.

일부 실시예들에서, 입력의 제1 부분에 기초하여 사용자 인터페이스 객체의 외관을 업데이트한 후, 디바이스는 (예컨대, 입력의 제1 부분 내의 동일한 연속적으로 유지되는 접촉들, 또는 입력의 제1 부분 내의 접촉들의 종료(예컨대, 리프트오프) 후에 검출되는 상이한 접촉들에 의해) 입력의 제2 부분을 검출한다(19008). 일부 실시예들에서, 입력의 제2 부분은 사용자 인터페이스 객체에 대한 것인 연속적으로 검출된 입력들에 기초하여 검출된다. 입력의 제2 부분을 검출하는 것에 응답하여, 디바이스는 입력의 제2 부분에 기초하여 사용자 인터페이스 객체의 외관을 업데이트하는데, 이는 입력의 제1 부분이 제1 제스처 인식 기준들을 충족하였고 입력의 제2 부분이 업데이트된 제2 제스처 인식 기준들을 충족하지 않는다는 결정에 따라, (예컨대, 입력의 제2 부분이 제1 제스처 인식 기준들 또는 원래의 제2 제스처 인식 기준들을 충족하는지 여부에 관계없이) (예컨대, 입력의 제2 부분이 업데이트되기 전의 원래의 제2 제스처 인식 기준들을 충족하는 경우에도) 제2 객체 조작 거동에 따라 사용자 인터페이스 객체의 외관을 변경하지 않고서 입력의 제2 부분에 기초하여(예컨대, 입력의 제2 부분의 방향 및/또는 크기에 기초하여) 제1 객체 조작 거동에 따라 사용자 인터페이스 객체의 외관을 변경하는 것; 및 입력의 제1 부분이 제2 제스처 인식 기준들을 충족하였고 입력의 제2 부분이 업데이트된 제1 제스처 인식 기준들을 충족하지 않는다는 결정에 따라, (예컨대, 입력의 제2 부분이 제2 제스처 인식 기준들 또는 원래의 제1 제스처 인식 기준들을 충족하는지 여부에 관계없이) (예컨대, 입력의 제2 부분이 업데이트되기 전의 원래의 제1 제스처 인식을 충족하는 경우에도) 제1 객체 조작 거동에 따라 사용자 인터페이스 객체의 외관을 변경하지 않고서 입력의 제2 부분에 기초하여(예컨대, 입력의 제2 부분의 방향 및/또는 크기에 기초하여) 제2 객체 조작 거동에 따라 사용자 인터페이스 객체의 외관을 변경하는 것을 포함한다(19010).In some embodiments, after updating the appearance of the user interface object based on the first portion of the input, the device (eg, the same continuously maintained contacts within the first portion of the input, or within the first portion of the input) A second portion of the input is detected ( 19008 ) with different contacts detected after termination of the contacts (eg, liftoff). In some embodiments, the second portion of the input is detected based on successively detected inputs that are for a user interface object. In response to detecting the second portion of the input, the device updates the appearance of the user interface object based on the second portion of the input, wherein the first portion of the input met first gesture recognition criteria and the second portion of the input In accordance with a determination that the portion does not meet the updated second gesture recognition criteria (eg, regardless of whether the second portion of the input meets the first gesture recognition criteria or the original second gesture recognition criteria) (eg, , based on the second portion of the input without changing the appearance of the user interface object according to the second object manipulation behavior (e.g. changing the appearance of the user interface object according to the first object manipulation behavior (based on the direction and/or magnitude of the second portion of the input); and in accordance with a determination that the first portion of the input meets the second gesture recognition criteria and the second portion of the input does not meet the updated first gesture recognition criteria (eg, the second portion of the input meets the second gesture recognition criteria the user interface according to the first object manipulation behavior (eg, even if the second portion of the input satisfies the original first gesture recognition before being updated) changing the appearance of the user interface object according to the second object manipulation behavior based on the second portion of the input (eg, based on the orientation and/or size of the second portion of the input) without changing the appearance of the object do (19010).

일부 실시예들에서, 입력의 제1 부분이 제1 제스처 인식 기준들을 충족한 후 입력의 제2 부분에 기초하여 제1 객체 조작 거동에 따라 사용자 인터페이스 객체의 외관이 변경되는 동안, 입력의 제2 부분은 (예컨대, 임계치(들)가 증가되기 전의 제2 제스처 인식 기준들 내의 입력의 이동 파라미터(들)에 대한 원래의 임계치(들)로) 제2 제스처 인식 기준들이 업데이트되기 전의 제2 제스처 인식 기준들을 충족하는 입력을 포함한다(예컨대, 입력의 제2 부분은 업데이트된 제2 제스처 인식 기준들을 충족하는 입력을 포함하지 않는다)(19012).In some embodiments, the second portion of the input changes according to the first object manipulation behavior based on the second portion of the input after the first portion of the input meets the first gesture recognition criteria, while the second portion of the input changes the appearance of the user interface object. The portion is the second gesture recognition before the second gesture recognition criteria are updated (eg, to the original threshold(s) for the movement parameter(s) of the input in the second gesture recognition criteria before the threshold(s) are incremented) includes input that meets the criteria (eg, the second portion of the input does not include the input that meets the updated second gesture recognition criteria) 19012 .

일부 실시예들에서, 입력의 제1 부분이 제2 제스처 인식 기준들을 충족한 후 입력의 제2 부분에 기초하여 제2 객체 조작 거동에 따라 사용자 인터페이스 객체의 외관이 변경되는 동안, 입력의 제2 부분은 (예컨대, 임계치(들)가 증가되기 전의 제1 제스처 인식 기준들 내의 입력의 이동 파라미터(들)에 대한 원래의 임계치(들)로) 제1 제스처 인식 기준들이 업데이트되기 전의 제1 제스처 인식 기준들을 충족하는 입력을 포함한다(예컨대, 입력의 제2 부분은 업데이트된 제1 제스처 인식 기준들을 충족하는 입력을 포함하지 않는다)(19014).In some embodiments, the second portion of the input changes according to a second object manipulation behavior based on the second portion of the input after the first portion of the input meets the second gesture recognition criteria, while the second portion of the input changes the appearance of the user interface object. The portion is the first gesture recognition before the first gesture recognition criteria are updated (eg, to the original threshold(s) for the movement parameter(s) of the input in the first gesture recognition criteria before the threshold(s) are incremented) includes input that meets the criteria (eg, the second portion of the input does not include the input that meets the updated first gesture recognition criteria) 19014 .

일부 실시예들에서, 입력의 제1 부분이 제1 제스처 인식 기준들을 충족한 후 입력의 제2 부분에 기초하여 제1 객체 조작 거동에 따라 사용자 인터페이스 객체의 외관이 변경되는 동안, 입력의 제2 부분은 (예컨대, 제1 제스처 인식 기준들 내의 입력의 이동 파라미터(들)에 대한 원래의 임계치(들)로) 제1 제스처 인식 기준들을 충족하는 입력을 포함하지 않는다(19016). 예를 들어, 제1 제스처 인식 기준들이 한 번 충족된 후, 입력은 제1 객체 조작 거동을 야기하기 위해 제1 제스처 인식 기준들을 더 이상 계속 충족할 필요가 없다.In some embodiments, the second portion of the input changes according to the first object manipulation behavior based on the second portion of the input after the first portion of the input meets the first gesture recognition criteria, while the second portion of the input changes the appearance of the user interface object. The portion does not include ( 19016 ) an input that meets the first gesture recognition criteria (eg, with an original threshold(s) for movement parameter(s) of the input within the first gesture recognition criteria). For example, after the first gesture recognition criteria are met once, the input no longer needs to continue to satisfy the first gesture recognition criteria to cause the first object manipulation behavior.

일부 실시예들에서, 입력의 제1 부분이 제2 제스처 인식 기준들을 충족한 후 입력의 제2 부분에 기초하여 제2 객체 조작 거동에 따라 사용자 인터페이스 객체의 외관이 변경되는 동안, 입력의 제2 부분은 (예컨대, 제2 제스처 인식 기준들 내의 입력의 이동 파라미터(들)에 대한 원래의 임계치(들)로) 제2 제스처 인식 기준들을 충족하는 입력을 포함하지 않는다(19018). 예를 들어, 제2 제스처 인식 기준들이 한 번 충족된 후, 입력은 제2 객체 조작 거동을 야기하기 위해 제2 제스처 인식 기준들을 더 이상 계속 충족할 필요가 없다. 입력의 제2 부분이 증가된 임계치를 초과하여 증가하는 이동을 포함할 때 제1 객체 조작 거동을 수행하는 것은 (예컨대, 사용자가 새로운 입력을 제공할 것을 요구하지 않으면서, 증가된 기준들을 충족함으로써 제1 객체 조작을 수행한 후에 제2 객체 조작을 의도적으로 수행할 수 있는 능력을 사용자에게 제공함으로써) 디바이스의 작동성을 향상시킨다. 동작을 수행하는 데 필요한 입력들의 수를 감소시키는 것은, 디바이스의 작동성을 개선하고 사용자-디바이스 인터페이스를 더 효율적으로 만드는데, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, the second portion of the input changes according to a second object manipulation behavior based on the second portion of the input after the first portion of the input meets the second gesture recognition criteria, while the second portion of the input changes the appearance of the user interface object. The portion does not include ( 19018 ) an input that meets the second gesture recognition criteria (eg, with an original threshold(s) for movement parameter(s) of the input within the second gesture recognition criteria). For example, after the second gesture recognition criteria are met once, the input no longer needs to continue to satisfy the second gesture recognition criteria to cause the second object manipulation behavior. Performing the first object manipulation behavior when the second portion of the input includes a movement that increases beyond an increased threshold (eg, by meeting increased criteria without requiring the user to provide a new input) By providing the user with the ability to intentionally perform the second object manipulation after performing the first object manipulation), the operability of the device is improved. Reducing the number of inputs required to perform an operation improves the operability of the device and makes the user-device interface more efficient, which in addition enables a user to use the device more quickly and efficiently by reduce power consumption and improve battery life.

일부 실시예들에서, 입력의 제2 부분에 기초하여 사용자 인터페이스 객체의 외관을 업데이트하는 것은, 입력의 제1 부분이 제2 제스처 인식 기준들을 충족하였고 입력의 제2 부분이 업데이트된 제1 제스처 인식 기준들을 충족한다는 결정에 따라, 입력의 제2 부분에 기초하여 제1 객체 조작 거동에 따라 사용자 인터페이스 객체의 외관을 변경하고, 입력의 제2 부분에 기초하여 제2 객체 조작 거동에 따라 사용자 인터페이스 객체의 외관을 변경하는 것; 및 입력의 제1 부분이 제1 제스처 인식 기준들을 충족하였고 입력의 제2 부분이 업데이트된 제2 제스처 인식 기준들을 충족한다는 결정에 따라, 입력의 제2 부분에 기초하여 제1 객체 조작 거동에 따라 사용자 인터페이스 객체의 외관을 변경하고, 입력의 제2 부분에 기초하여 제2 객체 조작 거동에 따라 사용자 인터페이스 객체의 외관을 변경하는 것을 포함한다(19020). 예를 들어, 제1 제스처 인식 기준들이 먼저 충족되고 이어서 입력이 업데이트된 제2 제스처 인식 기준들을 충족한 후, 입력은 이제 제1 및 제2 객체 조작 거동들 둘 모두를 야기할 수 있다. 예를 들어, 제2 제스처 인식 기준들이 먼저 충족되고 이어서 입력이 업데이트된 제1 제스처 인식 기준들을 충족한 후, 입력은 이제 제1 및 제2 객체 조작 거동들 둘 모두를 야기할 수 있다. 제2 제스처 인식 기준들 및 업데이트된 제1 제스처 인식 기준들이 충족된 후에 검출된 입력의 일부분에 응답하여 제1 객체 조작 거동 및 제2 객체 조작 거동에 따라 객체를 업데이트하는 것은 (예컨대, 사용자가 새로운 입력을 제공할 것을 요구하지 않으면서 증가된 임계치를 만족한 후에 제1 객체 조작 및 제2 객체 조작을 사용하여 객체를 자유롭게 조작할 수 있는 능력을 사용자에게 제공함으로써) 디바이스의 작동성을 향상시킨다. 동작을 수행하는 데 필요한 입력들의 수를 감소시키는 것은, 디바이스의 작동성을 개선하고 사용자-디바이스 인터페이스를 더 효율적으로 만드는데, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, updating the appearance of the user interface object based on the second portion of the input comprises: first gesture recognition in which the first portion of the input met second gesture recognition criteria and the second portion of the input was updated In accordance with a determination that the criteria are met, change the appearance of the user interface object according to the first object manipulation behavior based on the second portion of the input, and change the appearance of the user interface object according to the second object manipulation behavior based on the second portion of the input. to change the appearance of; and according to a determination that the first portion of the input meets the first gesture recognition criteria and that the second portion of the input meets the updated second gesture recognition criteria, according to the first object manipulation behavior based on the second portion of the input; changing the appearance of the user interface object, and changing the appearance of the user interface object according to a second object manipulation behavior based on the second portion of the input ( 19020 ). For example, after first gesture recognition criteria are first met and then the input meets updated second gesture recognition criteria, the input may now cause both first and second object manipulation behaviors. For example, after the second gesture recognition criteria are first met and then the input meets the updated first gesture recognition criteria, the input may now cause both the first and second object manipulation behaviors. Updating the object according to the first object manipulation behavior and the second object manipulation behavior in response to a portion of the detected input after the second gesture recognition criteria and the updated first gesture recognition criteria are met (eg, when the user improve the operability of the device) by providing the user with the ability to freely manipulate objects using first and second object manipulations after meeting an increased threshold without requiring providing input. Reducing the number of inputs required to perform an operation improves the operability of the device and makes the user-device interface more efficient, which in addition enables a user to use the device more quickly and efficiently by reduce power consumption and improve battery life.

일부 실시예들에서, 입력의 제2 부분에 기초하여 사용자 인터페이스 객체의 외관을 업데이트한 후(예컨대, 제1 제스처 인식 기준들 및 업데이트된 제2 제스처 인식 기준들 양자 모두가 충족된 후, 또는 제2 제스처 인식 기준들 및 업데이트된 제1 제스처 인식 기준들 양자 모두가 충족된 후), 디바이스는 (예컨대, 입력의 제1 및 제2 부분 내의 동일한 연속적으로 유지되는 접촉들, 또는 입력의 제1 부분 및 제2 부분 내의 접촉들의 종료(예컨대, 리프트오프) 후에 검출되는 상이한 접촉들에 의해) 입력의 제3 부분을 검출한다(19022). 입력의 제3 부분을 검출하는 것에 응답하여, 디바이스는 입력의 제3 부분에 기초하여 사용자 인터페이스 객체의 외관을 업데이트하는데, 이는 입력의 제3 부분에 기초하여 제1 객체 조작 거동에 따라 사용자 인터페이스 객체의 외관을 변경하는 것; 및 입력의 제3 부분에 기초하여 제2 객체 조작 거동에 따라 사용자 인터페이스 객체의 외관을 변경하는 것을 포함한다(19024). 예를 들어, 제1 제스처 인식 기준들 및 업데이트된 제2 제스처 인식 기준들 양자 모두가 충족된 후, 또는 제2 제스처 인식 기준들 및 업데이트된 제1 제스처 인식 기준들 양자 모두가 충족된 후, 입력은 원래의 또는 업데이트된 제1 및 제2 제스처 인식 기준들에서의 임계치들과 상관없이 제1 및 제2 객체 조작 거동들 둘 모두를 후속하여 야기할 수 있다. 제2 제스처 인식 기준들 및 업데이트된 제1 제스처 인식 기준들이 충족된 후에 검출된 입력의 일부분에 응답하여 제1 객체 조작 거동 및 제2 객체 조작 거동에 따라 객체를 업데이트하는 것은 (예컨대, 사용자가 새로운 입력을 제공할 것을 요구하지 않으면서, 증가된 임계치를 만족함으로써 제1 객체 조작 유형을 수행하고자 하는 의도를 입증한 후에 제1 객체 조작 및 제2 객체 조작을 사용하여 객체를 자유롭게 조작할 수 있는 능력을 사용자에게 제공함으로써) 디바이스의 작동성을 향상시킨다. 동작을 수행하는 데 필요한 입력들의 수를 감소시키는 것은, 디바이스의 작동성을 개선하고 사용자-디바이스 인터페이스를 더 효율적으로 만드는데, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, after updating the appearance of the user interface object based on the second portion of the input (eg, after both the first gesture recognition criteria and the updated second gesture recognition criteria are met, or after the second After both the two gesture recognition criteria and the updated first gesture recognition criteria are met), the device (eg, the same continuously maintained contacts in the first and second portions of the input, or the first portion of the input) and detect ( 19022 ) a third portion of the input ( with different contacts detected after termination (eg, liftoff) of the contacts in the second portion). In response to detecting the third portion of the input, the device updates an appearance of the user interface object based on the third portion of the input, wherein the user interface object is in accordance with the first object manipulation behavior based on the third portion of the input. to change the appearance of; and changing the appearance of the user interface object according to the second object manipulation behavior based on the third portion of the input (19024). For example, after both the first gesture recognition criteria and the updated second gesture recognition criteria are satisfied, or after both the second gesture recognition criteria and the updated first gesture recognition criteria are satisfied, the input may subsequently cause both the first and second object manipulation behaviors irrespective of thresholds in the original or updated first and second gesture recognition criteria. Updating the object according to the first object manipulation behavior and the second object manipulation behavior in response to a portion of the detected input after the second gesture recognition criteria and the updated first gesture recognition criteria are met (eg, when the user The ability to freely manipulate an object using a first object manipulation and a second object manipulation after demonstrating an intention to perform a first type of object manipulation by satisfying an increased threshold, without requiring input to be provided. to the user) to improve the operability of the device. Reducing the number of inputs required to perform an operation improves the operability of the device and makes the user-device interface more efficient, which in addition enables a user to use the device more quickly and efficiently by reduce power consumption and improve battery life.

일부 실시예들에서, 입력의 제3 부분은 제1 제스처 인식 기준들을 충족하는 입력 또는 제2 제스처 인식 기준들을 충족하는 입력을 포함하지 않는다(19026). 예를 들어, 제1 제스처 인식 기준들 및 업데이트된 제2 제스처 인식 기준들 양자 모두가 충족된 후, 또는 제2 제스처 인식 기준들 및 업데이트된 제1 제스처 인식 기준들 양자 모두가 충족된 후, 입력은 원래의 또는 업데이트된 제1 및 제2 제스처 인식 기준들에서의 임계치들과 상관없이 제1 및 제2 객체 조작 거동들 둘 모두를 후속하여 야기할 수 있다. 제2 제스처 인식 기준들 및 업데이트된 제1 제스처 인식 기준들이 충족된 후에 검출된 입력의 일부분에 응답하여 제1 객체 조작 거동 및 제2 객체 조작 거동에 따라 객체를 업데이트하는 것은 (예컨대, 사용자가 새로운 입력을 제공할 것을 요구하지 않으면서, 강화된 기준들을 만족한 후에 제1 객체 조작 및 제2 객체 조작을 사용하여 객체를 자유롭게 조작할 수 있는 능력을 사용자에게 제공함으로써) 디바이스의 작동성을 향상시킨다. 동작을 수행하는 데 필요한 입력들의 수를 감소시키는 것은, 디바이스의 작동성을 개선하고 사용자-디바이스 인터페이스를 더 효율적으로 만드는데, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, the third portion of the input does not include an input that meets the first gesture recognition criteria or an input that meets the second gesture recognition criteria ( 19026 ). For example, after both the first gesture recognition criteria and the updated second gesture recognition criteria are satisfied, or after both the second gesture recognition criteria and the updated first gesture recognition criteria are satisfied, the input may subsequently cause both the first and second object manipulation behaviors irrespective of thresholds in the original or updated first and second gesture recognition criteria. Updating the object according to the first object manipulation behavior and the second object manipulation behavior in response to a portion of the detected input after the second gesture recognition criteria and the updated first gesture recognition criteria are met (eg, when the user improve the operability of the device (by providing the user with the ability to freely manipulate objects using first and second object manipulations) after meeting enhanced criteria without requiring input to be provided; . Reducing the number of inputs required to perform an operation improves the operability of the device and makes the user-device interface more efficient, which in addition enables a user to use the device more quickly and efficiently by reduce power consumption and improve battery life.

일부 실시예들에서, 복수의 객체 조작 거동들은 제3 제스처 인식 기준들(예컨대, 축척조정 기준들)을 충족하는 입력들에 응답하여 수행되는 제3 객체 조작 거동(예컨대, 각각의 축을 중심으로 하는 사용자 인터페이스 객체의 회전)을 포함한다(19028). 입력의 제1 부분에 기초하여 사용자 인터페이스 객체의 외관을 업데이트하는 것은, 입력의 제1 부분이 제2 제스처 인식 기준들을 충족하기 또는 제3 제스처 인식 기준들을 충족하기 전에 제1 제스처 인식 기준들을 충족한다는 결정에 따라, 입력의 제1 부분에 기초하여(예컨대, 입력의 제1 부분의 방향 및/또는 크기에 기초하여) 제1 객체 조작 거동에 따라 사용자 인터페이스 객체의 외관을 변경하는 것(예컨대, 사용자 인터페이스 객체를 회전시키는 것); 및 (예컨대, 제2 객체 조작 거동에 따라 사용자 인터페이스 객체의 외관을 변경하지 않고서) 제2 제스처 인식 기준들에 대한 임계치를 증가시킴으로써(예컨대, 제2 제스처 인식 기준들에서 이동 파라미터(예컨대, 이동 거리, 속도 등)에 필요한 임계치를 증가시킴으로써) 제2 제스처 인식 기준들을 업데이트하는 것을 포함한다(19030). 예를 들어, 객체를 회전시키기 위한 제스처를 인식하기 위한 기준들이 충족되기 전에, (병진 또는 축척조정에 대한 기준들이 이전에 충족되지 않았다고 가정하면) 병진 또는 축척조정을 위한 제스처를 인식하기 위한 기준들을 충족함으로써 객체에 대한 병진 또는 축척조정 동작을 개시하는 것은 비교적 용이하다. 일단 객체를 회전시키기 위한 제스처를 인식하기 위한 기준들이 충족되면, 객체에 대한 병진 또는 축척조정 동작을 개시하는 것은 더 어려워지고(예컨대, 병진 및 축척조정에 대한 기준들은 이동 파라미터에 대한 증가된 임계치들로 업데이트됨), 객체 조작은 이러한 객체를 조작하기 위해 이미 인식되고 사용되는 제스처에 대응하는 조작 거동을 향해 편의된다. 디바이스는 제3 제스처 인식 기준들에 대한 임계치를 증가시킴으로써(예컨대, 제3 제스처 인식 기준들에서 이동 파라미터(예컨대, 이동 거리, 속도 등)에 필요한 임계치를 증가시킴으로써) 제3 제스처 인식 기준들을 업데이트한다. 예를 들어, 객체를 회전시키기 위한 제스처를 인식하기 위한 기준들이 충족되기 전에, (병진 또는 축척조정에 대한 기준들이 이전에 충족되지 않았다고 가정하면) 병진 또는 축척조정을 위한 제스처를 인식하기 위한 기준들을 충족함으로써 객체에 대한 병진 또는 축척조정 동작을 개시하는 것은 비교적 용이하다. 일단 객체를 회전시키기 위한 제스처를 인식하기 위한 기준들이 충족되면, 객체에 대한 병진 또는 축척조정 동작을 개시하는 것은 더 어려워지고(예컨대, 병진 및 축척조정에 대한 기준들은 이동 파라미터에 대한 증가된 임계치들로 업데이트됨), 객체 조작은 이러한 객체를 조작하기 위해 이미 인식되고 사용되는 제스처에 대응하는 조작 거동을 향해 편의된다. 입력이 제1 제스처 인식 기준들을 충족하기 또는 제3 제스처 인식 기준들을 충족하기 전에 제2 제스처 인식 기준들을 충족한다는 결정에 따라, 디바이스는 입력의 제1 부분에 기초하여(예컨대, 입력의 제1 부분의 방향 및/또는 크기에 기초하여) 제2 객체 조작 거동에 따라 사용자 인터페이스 객체의 외관을 변경하고(예컨대, 사용자 인터페이스 객체를 병진시키거나 사용자 인터페이스 객체를 크기 재설정함); (예컨대, 제1 객체 조작 거동에 따라 사용자 인터페이스 객체의 외관을 변경하지 않고서) 제1 제스처 인식 기준들에 대한 임계치를 증가시킴으로써(예컨대, 제1 제스처 인식 기준들에서 이동 파라미터(예컨대, 이동 거리, 속도 등)에 필요한 임계치를 증가시킴으로써) 제1 제스처 인식 기준들을 업데이트한다. 예를 들어, 객체를 병진 또는 축척조정하기 위한 제스처를 인식하기 위한 기준들이 충족되기 전에, (객체를 회전시키기 위한 제스처를 인식하기 위한 기준들이 이전에 충족되지 않았다고 가정하면) 회전을 위한 제스처를 인식하기 위한 기준들을 충족함으로써 객체에 대한 회전 동작을 개시하는 것은 비교적 용이하다. 일단 객체를 병진 또는 축척조정하기 위한 제스처를 인식하기 위한 기준들이 충족되면, 객체에 대한 회전 동작을 개시하는 것은 더 어려워지고(예컨대, 객체를 회전시키기 위한 기준들은 이동 파라미터에 대한 증가된 임계치로 업데이트됨), 객체 조작 거동은 이러한 객체를 조작하기 위해 이미 인식되고 사용되는 제스처에 대응하는 조작 거동을 향해 편의된다. 일부 실시예들에서, 사용자 인터페이스 객체의 외관은 입력의 각각의 이동 파라미터의 값들에 따라 동적으로 그리고 연속적으로 변경된다(예컨대, 상이한 크기들, 위치들, 시점들, 반사상들, 그림자들 등을 보여줌). 일부 실시예들에서, 디바이스는 이동 파라미터(예컨대, 각각의 유형의 조작 거동에 대한 각각의 이동 파라미터)와 사용자 인터페이스 객체의 외관(예컨대, 각각의 유형의 조작 거동에 대한 외관의 각각의 양태)에 대해 이루어진 변경들 사이의 미리설정된 대응관계(예컨대, 각각의 유형의 조작 거동에 대한 각각의 대응관계)를 따른다. 디바이스는 제3 제스처 인식 기준들에 대한 임계치를 증가시킴으로써(예컨대, 제3 제스처 인식 기준들에서 이동 파라미터(예컨대, 이동 거리, 속도 등)에 필요한 임계치를 증가시킴으로써) 제3 제스처 인식 기준들을 업데이트한다. 예를 들어, 객체를 회전시키기 위한 제스처를 인식하기 위한 기준들이 충족되기 전에, (병진 또는 축척조정에 대한 기준들이 이전에 충족되지 않았다고 가정하면) 병진 또는 축척조정을 위한 제스처를 인식하기 위한 기준들을 충족함으로써 객체에 대한 병진 또는 축척조정 동작을 개시하는 것은 비교적 용이하다. 일단 객체를 회전시키기 위한 제스처를 인식하기 위한 기준들이 충족되면, 객체에 대한 병진 또는 축척조정 동작을 개시하는 것은 더 어려워지고(예컨대, 병진 및 축척조정에 대한 기준들은 이동 파라미터에 대한 증가된 임계치들로 업데이트됨), 객체 조작은 이러한 객체를 조작하기 위해 이미 인식되고 사용되는 제스처에 대응하는 조작 거동을 향해 편의된다. 입력이 제1 제스처 인식 기준들을 충족하기 또는 제2 제스처 인식 기준들을 충족하기 전에 제3 제스처 인식 기준들을 충족한다는 결정에 따라, 디바이스는 입력의 제1 부분에 기초하여(예컨대, 입력의 제1 부분의 방향 및/또는 크기에 기초하여) 제3 객체 조작 거동에 따라 사용자 인터페이스 객체의 외관을 변경하고(예컨대, 사용자 인터페이스 객체를 크기 재설정함); (예컨대, 제1 객체 조작 거동 및 제2 객체 조작 거동에 따라 사용자 인터페이스 객체의 외관을 변경하지 않고서) 디바이스는 제1 제스처 인식 기준들에 대한 임계치를 증가시킴으로써(예컨대, 제1 제스처 인식 기준들에서 이동 파라미터(예컨대, 이동 거리, 속도 등)에 필요한 임계치를 증가시킴으로써) 제1 제스처 인식 기준들을 업데이트한다. 예를 들어, 객체를 병진 또는 축척조정하기 위한 제스처를 인식하기 위한 기준들이 충족되기 전에, (객체를 회전시키기 위한 제스처를 인식하기 위한 기준들이 이전에 충족되지 않았다고 가정하면) 회전을 위한 제스처를 인식하기 위한 기준들을 충족함으로써 객체에 대한 회전 동작을 개시하는 것은 비교적 용이하다. 일단 객체를 병진 또는 축척조정하기 위한 제스처를 인식하기 위한 기준들이 충족되면, 객체에 대한 회전 동작을 개시하는 것은 더 어려워지고(예컨대, 객체를 회전시키기 위한 기준들은 이동 파라미터에 대한 증가된 임계치로 업데이트됨), 객체 조작 거동은 이러한 객체를 조작하기 위해 이미 인식되고 사용되는 제스처에 대응하는 조작 거동을 향해 편의된다. 일부 실시예들에서, 사용자 인터페이스 객체의 외관은 입력의 각각의 이동 파라미터의 값들에 따라 동적으로 그리고 연속적으로 변경된다(예컨대, 상이한 크기들, 위치들, 시점들, 반사상들, 그림자들 등을 보여줌). 일부 실시예들에서, 디바이스는 이동 파라미터(예컨대, 각각의 유형의 조작 거동에 대한 각각의 이동 파라미터)와 사용자 인터페이스 객체의 외관(예컨대, 각각의 유형의 조작 거동에 대한 외관의 각각의 양태)에 대해 이루어진 변경들 사이의 미리설정된 대응관계(예컨대, 각각의 유형의 조작 거동에 대한 각각의 대응관계)를 따른다. 디바이스는 제2 제스처 인식 기준들에 대한 임계치를 증가시킴으로써(예컨대, 제2 제스처 인식 기준들에서 이동 파라미터(예컨대, 이동 거리, 속도 등)에 필요한 임계치를 증가시킴으로써) 제2 제스처 인식 기준들을 업데이트한다. 예를 들어, 객체를 회전시키기 위한 제스처를 인식하기 위한 기준들이 충족되기 전에, (병진 또는 축척조정에 대한 기준들이 이전에 충족되지 않았다고 가정하면) 병진 또는 축척조정을 위한 제스처를 인식하기 위한 기준들을 충족함으로써 객체에 대한 병진 또는 축척조정 동작을 개시하는 것은 비교적 용이하다. 일단 객체를 회전시키기 위한 제스처를 인식하기 위한 기준들이 충족되면, 객체에 대한 병진 또는 축척조정 동작을 개시하는 것은 더 어려워지고(예컨대, 병진 및 축척조정에 대한 기준들은 이동 파라미터에 대한 증가된 임계치들로 업데이트됨), 객체 조작은 이러한 객체를 조작하기 위해 이미 인식되고 사용되는 제스처에 대응하는 조작 거동을 향해 편의된다. 대응하는 제3 제스처 인식 기준들이 충족될 때에만 검출되는 입력의 일부분에 응답하여 제3 객체 조작 거동에 따라 객체를 업데이트하는 것은 (예컨대, 제1 객체 조작 또는 제2 객체 조작을 수행하기 위한 입력을 제공하려고 시도하는 동안 사용자가 제3 객체 조작을 우발적으로 수행하는 것을 피하도록 도움으로써) 디바이스의 작동성을 향상시킨다. 동작을 수행하는 데 필요한 입력들의 수를 감소시키는 것은, 디바이스의 작동성을 개선하고 사용자-디바이스 인터페이스를 더 효율적으로 만드는데, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, the plurality of object manipulation behaviors include a third object manipulation behavior (eg, about a respective axis) performed in response to inputs that satisfy third gesture recognition criteria (eg, scaling criteria). rotation of the user interface object) (19028). Updating the appearance of the user interface object based on the first portion of the input indicates that the first portion of the input meets the first gesture recognition criteria before meeting the second gesture recognition criteria or meets the third gesture recognition criteria. According to the determination, change the appearance of the user interface object (eg, the user rotating the interface object); and by increasing a threshold for the second gesture recognition criteria (eg, without changing the appearance of the user interface object according to the second object manipulation behavior) (eg, a movement parameter (eg, distance of movement) in the second gesture recognition criteria). , speed, etc.) and updating the second gesture recognition criteria ( 19030 ). For example, before the criteria for recognizing a gesture for rotating an object are met, the criteria for recognizing a gesture for translation or scaling (assuming that the criteria for translation or scaling have not been met previously) It is relatively easy to initiate a translation or scale operation on an object by satisfying it. Once the criteria for recognizing a gesture to rotate an object are met, it becomes more difficult to initiate a translation or scale operation on the object (e.g., the criteria for translation and scaling are subject to increased thresholds for the movement parameter). ), object manipulation is biased towards manipulation behaviors corresponding to gestures already recognized and used to manipulate these objects. The device updates the third gesture recognition criteria by increasing the threshold for the third gesture recognition criteria (eg, by increasing the threshold required for a movement parameter (eg, movement distance, speed, etc.) in the third gesture recognition criteria). . For example, before the criteria for recognizing a gesture for rotating an object are met, the criteria for recognizing a gesture for translation or scaling (assuming that the criteria for translation or scaling have not been met previously) It is relatively easy to initiate a translation or scale operation on an object by satisfying it. Once the criteria for recognizing a gesture to rotate an object are met, it becomes more difficult to initiate a translation or scale operation on the object (e.g., the criteria for translation and scaling are subject to increased thresholds for the movement parameter). ), object manipulation is biased towards manipulation behaviors corresponding to gestures already recognized and used to manipulate these objects. Upon determining that the input meets the first gesture recognition criteria or meets the second gesture recognition criteria before meeting the third gesture recognition criteria, the device is configured based on the first portion of the input (eg, the first portion of the input) change the appearance of the user interface object (eg, translate the user interface object or resize the user interface object) according to the second object manipulation behavior (based on the direction and/or size of the user interface object); By increasing the threshold for the first gesture recognition criteria (eg, without changing the appearance of the user interface object according to the first object manipulation behavior) (eg, a movement parameter (eg, movement distance, update the first gesture recognition criteria) by increasing the threshold required for speed, etc.). For example, before criteria for recognizing a gesture for translating or scaling an object are met, recognize a gesture for rotating (assuming the criteria for recognizing a gesture for rotating an object have not been met previously). It is relatively easy to initiate a rotation operation on an object by satisfying the criteria for Once the criteria for recognizing a gesture for translating or scaling an object are met, it becomes more difficult to initiate a rotation operation on the object (eg, the criteria for rotating the object are updated with an increased threshold for the movement parameter). ), object manipulation behaviors are biased towards manipulation behaviors corresponding to gestures already recognized and used to manipulate these objects. In some embodiments, the appearance of the user interface object changes dynamically and continuously according to the values of each movement parameter of the input (eg, showing different sizes, positions, viewpoints, reflections, shadows, etc.) ). In some embodiments, the device controls the movement parameter (eg, each movement parameter for each type of manipulation behavior) and the appearance of the user interface object (eg, each aspect of the appearance for each type of manipulation behavior). Predetermined correspondences between changes made to the data are followed (eg, each correspondence to each type of manipulation behavior). The device updates the third gesture recognition criteria by increasing the threshold for the third gesture recognition criteria (eg, by increasing the threshold required for a movement parameter (eg, movement distance, speed, etc.) in the third gesture recognition criteria). . For example, before the criteria for recognizing a gesture for rotating an object are met, the criteria for recognizing a gesture for translation or scaling (assuming that the criteria for translation or scaling have not been met previously) It is relatively easy to initiate a translation or scale operation on an object by satisfying it. Once the criteria for recognizing a gesture to rotate an object are met, it becomes more difficult to initiate a translation or scale operation on the object (e.g., the criteria for translation and scaling are subject to increased thresholds for the movement parameter). ), object manipulation is biased towards manipulation behaviors corresponding to gestures already recognized and used to manipulate these objects. Upon determining that the input meets the first gesture recognition criteria or meets the third gesture recognition criteria before meeting the second gesture recognition criteria, the device is configured to: based on the first portion of the input (eg, the first portion of the input) change the appearance of the user interface object (eg, resize the user interface object) according to the third object manipulation behavior (based on the direction and/or size of the ); The device increases the threshold for the first gesture recognition criteria (eg, in the first gesture recognition criteria without changing the appearance of the user interface object according to the first object manipulation behavior and the second object manipulation behavior) Update the first gesture recognition criteria by increasing a threshold required for a movement parameter (eg, movement distance, speed, etc.). For example, before criteria for recognizing a gesture for translating or scaling an object are met, recognize a gesture for rotating (assuming the criteria for recognizing a gesture for rotating an object have not been met previously). It is relatively easy to initiate a rotation operation on an object by satisfying the criteria for Once the criteria for recognizing a gesture for translating or scaling an object are met, it becomes more difficult to initiate a rotation operation on the object (eg, the criteria for rotating the object are updated with an increased threshold for the movement parameter). ), object manipulation behaviors are biased towards manipulation behaviors corresponding to gestures already recognized and used to manipulate these objects. In some embodiments, the appearance of the user interface object changes dynamically and continuously according to the values of each movement parameter of the input (eg, showing different sizes, positions, viewpoints, reflections, shadows, etc.) ). In some embodiments, the device controls the movement parameter (eg, each movement parameter for each type of manipulation behavior) and the appearance of the user interface object (eg, each aspect of the appearance for each type of manipulation behavior). Predetermined correspondences between changes made to the data are followed (eg, each correspondence to each type of manipulation behavior). The device updates the second gesture recognition criteria by increasing the threshold for the second gesture recognition criteria (eg, by increasing a threshold required for a movement parameter (eg, movement distance, speed, etc.) in the second gesture recognition criteria). . For example, before the criteria for recognizing a gesture for rotating an object are met, the criteria for recognizing a gesture for translation or scaling (assuming that the criteria for translation or scaling have not been met previously) It is relatively easy to initiate a translation or scale operation on an object by satisfying it. Once the criteria for recognizing a gesture to rotate an object are met, it becomes more difficult to initiate a translation or scale operation on the object (e.g., the criteria for translation and scaling are subject to increased thresholds for the movement parameter). ), object manipulation is biased towards manipulation behaviors corresponding to gestures already recognized and used to manipulate these objects. Updating the object according to the third object manipulation behavior in response to a portion of the input detected only when corresponding third gesture recognition criteria are met (eg, receiving input for performing a first object manipulation or a second object manipulation) improve the operability of the device) by helping the user avoid inadvertently performing a third object manipulation while attempting to present. Reducing the number of inputs required to perform an operation improves the operability of the device and makes the user-device interface more efficient, which in addition enables a user to use the device more quickly and efficiently by reduce power consumption and improve battery life.

일부 실시예들에서, 복수의 객체 조작 거동들은 제3 제스처 인식 기준들을 충족하는 입력들에 응답하여 수행되는 제3 객체 조작 거동을 포함하고, 입력의 제1 부분은 제1 제스처 인식 기준들 또는 제2 제스처 인식 기준들을 충족하기 전에 제3 제스처 인식 기준들을 충족하지 않았고, 디바이스는 입력의 제1 부분이 제1 제스처 인식 기준들 또는 제2 제스처 인식 기준들을 충족한 후에 제3 제스처 인식 기준들에 대한 임계치를 증가시킴으로써 제3 제스처 인식 기준들을 업데이트하였고, 입력의 제2 부분은 업데이트된 제1 제스처 인식 기준들 또는 업데이트된 제2 제스처 인식 기준들을 충족하기 전에 업데이트된 제3 제스처 인식 기준들을 충족하지 않았다(예컨대, 디바이스는 입력의 제1 부분이 제1 또는 제2 제스처 인식 기준들 중 하나를 충족한 후에 제3 제스처 인식 기준들에 대한 임계치를 증가시킴으로써 제3 제스처 인식 기준들을 업데이트하였다)(19032). 입력의 제3 부분을 검출하는 것에 응답하여, (예컨대, 입력의 제3 부분이 (예컨대, 업데이트된 또는 원래의) 제1 또는 제2 제스처 인식 기준들을 충족하는지 여부에 관계없이) 입력의 제3 부분이 업데이트된 제3 제스처 인식 기준들을 충족한다는 결정에 따라, 디바이스는 (예컨대, (예를 들어, 입력의 제3 부분이 원래의 제1 및 제2 제스처 인식 기준들을 충족하지 않더라도) 제1 및 제2 객체 조작 거동들에 따라 사용자 인터페이스 객체의 외관을 변경하는 동안) 입력의 제3 부분에 기초하여(예컨대, 입력의 제3 부분의 방향 및/또는 크기에 기초하여) 제3 객체 조작 거동에 따라 사용자 인터페이스 객체의 외관을 변경한다(19034). 입력의 제3 부분이 업데이트된 제3 제스처 인식 기준들을 충족하지 않는다는 결정에 따라, 디바이스는 (예컨대, (예를 들어, 입력의 제3 부분이 원래의 제1 및 제2 제스처 인식 기준들을 충족하지 않더라도) 제1 및 제2 객체 조작 거동들에 따라 사용자 인터페이스 객체의 외관을 변경하는 동안) 입력의 제3 부분에 기초하여 제3 객체 조작 거동에 따라 사용자 인터페이스 객체의 외관을 변경하는 것을 보류한다. 제2 제스처 인식 기준들, 업데이트된 제1 제스처 인식 기준들, 및 업데이트된 제3 제스처 인식 기준들이 충족된 후에 검출된 입력의 일부분에 응답하여 제1 객체 조작 거동, 제2 객체 조작 거동, 및 제3 객체 조작 거동에 따라 객체를 업데이트하는 것은 (예컨대, 사용자가 새로운 입력을 제공할 것을 요구하지 않으면서, 증가된 임계치들을 만족함으로써 모든 3개의 객체 조작 유형들을 수행하고자 하는 의도를 확립한 후에 제1, 제2, 제3 객체 조작 유형들을 사용하여 객체를 자유롭게 조작할 수 있는 능력을 사용자에게 제공함으로써) 디바이스의 작동성을 향상시킨다. 동작을 수행하는 데 필요한 입력들의 수를 감소시키는 것은, 디바이스의 작동성을 개선하고 사용자-디바이스 인터페이스를 더 효율적으로 만드는데, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, the plurality of object manipulation behaviors comprises a third object manipulation behavior performed in response to inputs meeting third gesture recognition criteria, wherein the first portion of the input comprises the first gesture recognition criteria or the first gesture recognition criteria the third gesture recognition criteria have not been met before meeting the second gesture recognition criteria, and the device is configured to: updated the third gesture recognition criteria by increasing the threshold, and the second portion of the input did not meet the updated third gesture recognition criteria before meeting the updated first gesture recognition criteria or the updated second gesture recognition criteria (eg, the device updated the third gesture recognition criteria by increasing a threshold for the third gesture recognition criteria after the first portion of the input met one of the first or second gesture recognition criteria) (19032) . In response to detecting the third portion of the input, a third portion of the input (eg, regardless of whether the third portion of the input meets first or second gesture recognition criteria (eg, updated or original)) Upon determining that the portion meets the updated third gesture recognition criteria, the device may (eg, (eg, even if the third portion of the input does not meet the original first and second gesture recognition criteria) the first and second gesture recognition criteria) to the third object manipulation behavior based on the third portion of the input (eg, based on the direction and/or magnitude of the third portion of the input) while changing the appearance of the user interface object according to the second object manipulation behaviors. Accordingly, the appearance of the user interface object is changed (19034). Upon determining that the third portion of the input does not meet the updated third gesture recognition criteria, the device (eg, (eg, the third portion of the input does not meet the original first and second gesture recognition criteria) withhold changing the appearance of the user interface object according to the third object manipulation behavior based on the third portion of the input) while changing the appearance of the user interface object according to the first and second object manipulation behaviors). In response to the portion of the input detected after the second gesture recognition criteria, the updated first gesture recognition criteria, and the updated third gesture recognition criteria are satisfied, the first object manipulation behavior, the second object manipulation behavior, and Updating an object according to a 3 object manipulation behavior (eg, after establishing an intention to perform all three object manipulation types by meeting increased thresholds without requiring the user to provide a new input is the first , by providing the user the ability to freely manipulate objects using second and third object manipulation types) to improve the operability of the device. Reducing the number of inputs required to perform an operation improves the operability of the device and makes the user-device interface more efficient, which in addition enables a user to use the device more quickly and efficiently, thereby reduce power consumption and improve battery life.

일부 실시예들에서, 입력의 제3 부분은 업데이트된 제3 제스처 인식 기준들을 충족하였다(19036). 입력의 제3 부분에 기초하여 사용자 인터페이스 객체의 외관을 업데이트한 후(예컨대, 제1 제스처 인식 기준들 및 업데이트된 제2 및 제3 제스처 인식 기준들 양자 모두가 충족된 후, 또는 제2 제스처 인식 기준들 및 업데이트된 제1 및 제3 제스처 인식 기준들 양자 모두가 충족된 후), 디바이스는 (예컨대, 입력의 제1, 제2 및 제3 부분 내의 동일한 연속적으로 유지되는 접촉들, 또는 입력의 제1 부분, 제2 부분, 및 제3 부분 내의 접촉들의 종료(예컨대, 리프트오프) 후에 검출되는 상이한 접촉들에 의해) 입력의 제4 부분을 검출한다(19038). 입력의 제4 부분을 검출하는 것에 응답하여, 디바이스는 입력의 제4 부분에 기초하여 사용자 인터페이스 객체의 외관을 업데이트하는데, 이는 입력의 제4 부분에 기초하여 제1 객체 조작 거동에 따라 사용자 인터페이스 객체의 외관을 변경하는 것; 입력의 제4 부분에 기초하여 제2 객체 조작 거동에 따라 사용자 인터페이스 객체의 외관을 변경하는 것; 및 입력의 제4 부분에 기초하여 제3 객체 조작 거동에 따라 사용자 인터페이스 객체의 외관을 변경하는 것을 포함한다(19040). 예를 들어, 제1 제스처 인식 기준들 및 업데이트된 제2 및 제3 제스처 인식 기준들이 충족된 후, 또는 제2 제스처 인식 기준들 및 업데이트된 제1 및 제3 제스처 인식 기준들이 충족된 후, 입력은 원래의 또는 업데이트된 제1, 제2, 및 제3 제스처 인식 기준들에서의 임계치들과 상관없이 모든 3개 유형의 조작 거동들을 후속하여 야기할 수 있다.In some embodiments, the third portion of the input met the updated third gesture recognition criteria (19036). After updating the appearance of the user interface object based on the third portion of the input (eg, after both the first gesture recognition criteria and the updated second and third gesture recognition criteria are satisfied, or after a second gesture recognition After both the criteria and the updated first and third gesture recognition criteria are met), the device (eg, the same continuously maintained contacts in the first, second and third portions of the input, or of the input) A fourth portion of the input is detected ( 19038 ) with different contacts detected after termination (eg, liftoff) of the contacts in the first portion, the second portion, and the third portion. In response to detecting the fourth portion of the input, the device updates an appearance of the user interface object based on the fourth portion of the input, wherein the user interface object is in accordance with the first object manipulation behavior based on the fourth portion of the input. to change the appearance of; changing the appearance of the user interface object according to the second object manipulation behavior based on the fourth portion of the input; and changing the appearance of the user interface object according to the third object manipulation behavior based on the fourth portion of the input (19040). For example, after first gesture recognition criteria and updated second and third gesture recognition criteria are satisfied, or after second gesture recognition criteria and updated first and third gesture recognition criteria are satisfied, the input may subsequently cause all three types of manipulation behaviors irrespective of thresholds in the original or updated first, second, and third gesture recognition criteria.

일부 실시예들에서, 입력의 제4 부분은 제1 제스처 인식 기준들을 충족하는 입력, 제2 제스처 인식 기준들을 충족하는 입력, 또는 제3 제스처 인식 기준들을 충족하는 입력을 포함하지 않는다(19042). 예를 들어, 제1 제스처 인식 기준들 및 업데이트된 제2 및 제3 제스처 인식 기준들이 충족된 후, 또는 제2 제스처 인식 기준들 및 업데이트된 제1 및 제3 제스처 인식 기준들이 충족된 후, 입력은 원래의 또는 업데이트된 제1, 제2, 및 제3 제스처 인식 기준들에서의 임계치들과 상관없이 모든 3개 유형의 조작 거동들을 후속하여 야기할 수 있다. 제스처에 대해 다수의 동시에 검출된 접촉들을 요구하는 것은 (예컨대, 필요한 수 미만의 동시에 검출된 접촉들을 갖는 입력을 제공하는 동안 사용자가 객체 조작을 우발적으로 수행하는 것을 피하도록 도움으로써) 디바이스의 작동성을 향상시킨다. 동작을 수행하는 데 필요한 입력들의 수를 감소시키는 것은, 디바이스의 작동성을 개선하고 사용자-디바이스 인터페이스를 더 효율적으로 만드는데, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, the fourth portion of the input does not include an input that meets the first gesture recognition criteria, an input that meets the second gesture recognition criteria, or an input that meets the third gesture recognition criteria ( 19042 ). For example, after first gesture recognition criteria and updated second and third gesture recognition criteria are satisfied, or after second gesture recognition criteria and updated first and third gesture recognition criteria are satisfied, the input may subsequently cause all three types of manipulation behaviors irrespective of thresholds in the original or updated first, second, and third gesture recognition criteria. Requiring multiple concurrently detected contacts for a gesture (eg, by helping a user avoid inadvertently performing an object manipulation while providing input with fewer than the required number of simultaneously detected contacts) is operability of the device. to improve Reducing the number of inputs required to perform an operation improves the operability of the device and makes the user-device interface more efficient, which in addition enables a user to use the device more quickly and efficiently by reduce power consumption and improve battery life.

일부 실시예들에서, 제1 제스처 인식 기준들 및 제2 제스처 인식 기준들(및 제3 제스처 인식 기준들) 양자 모두는 충족되기 위해 제1 개수의 동시에 검출되는 접촉들(예컨대, 2개의 접촉들)을 요구한다(19044). 일부 실시예들에서, 단일 손가락 제스처가 또한 병진을 위해 사용될 수 있고, 단일 손가락 병진 임계치는 두 손가락 병진 임계치보다 낮다. 일부 실시예들에서, 두 손가락 병진 제스처에 대해 설정된 원래의 이동 임계치 및 업데이트된 이동 임계치는 각각 40 포인트들 및 70 포인트들의 접촉들의 도심(centroid)에 의한 이동이다. 일부 실시예들에서, 두 손가락 회전 제스처에 대해 설정된 원래의 이동 임계치 및 업데이트된 이동 임계치는 각각 12도 및 18도의 접촉들에 의한 회전 이동이다. 일부 실시예들에서, 두 손가락 축척조정 제스처에 대해 설정된 원래의 이동 임계치 및 업데이트된 이동 임계치는 각각 50 포인트들(접촉들 사이의 거리) 및 90 포인트들이다. 일부 실시예들에서, 단일 손가락 드래그 제스처에 대해 설정된 임계치는 30 포인트들이다.In some embodiments, both the first gesture recognition criteria and the second gesture recognition criteria (and the third gesture recognition criteria) are met for a first number of simultaneously detected contacts (eg, two contacts). ) is required (19044). In some embodiments, a single finger gesture may also be used for translation, wherein the single finger translation threshold is lower than the two finger translation threshold. In some embodiments, the original movement threshold and updated movement threshold set for the two-finger translation gesture are movement by centroid of 40 points and 70 points of contacts, respectively. In some embodiments, the original movement threshold and updated movement threshold set for the two-finger rotation gesture are rotational movement by contacts of 12 and 18 degrees, respectively. In some embodiments, the original movement threshold and updated movement threshold set for the two-finger scaling gesture are 50 points (distance between contacts) and 90 points, respectively. In some embodiments, the threshold set for a single finger drag gesture is 30 points.

일부 실시예들에서, 제1 객체 조작 거동은 사용자 인터페이스 객체의 줌 레벨 또는 디스플레이된 크기를 변경하고(예를 들면, 예컨대 핀치 제스처(예컨대, 접촉들의 서로를 향하는 이동)가 (예컨대, 원래의 또는 업데이트된) 제1 제스처 인식 기준들에 기초하여 인식된 후, 핀치 제스처에 의해 객체를 크기 재설정함), 제2 객체 조작 거동은 사용자 인터페이스 객체의 회전 각을 변경한다(예를 들면, 예컨대 트위스트/피봇 제스처(예컨대, 접촉들의 공통 궤적을 중심으로 하는 이동)가 (예컨대, 원래의 또는 업데이트된) 제2 제스처 인식 기준들에 의해 인식된 후, 트위스트/피봇 제스처에 의해 외부 또는 내부 축을 중심으로 사용자 인터페이스 객체의 관찰 시점을 변경함)(19046). 예를 들어, 제1 객체 조작 거동은 도 14g 내지 도 14i와 관련하여 기술된 바와 같이 가상 객체(11002)의 디스플레이된 크기를 변경하고, 제2 객체 조작 거동은 도 14b 내지 도 14e와 관련하여 기술된 바와 같이 가상 객체(11002)의 회전 각을 변경한다. 일부 실시예들에서, 제2 객체 조작 거동은 사용자 인터페이스 객체의 줌 레벨 또는 디스플레이된 크기를 변경하고(예를 들면, 예컨대 핀치 제스처(예컨대, 접촉들의 서로를 향하는 이동)가 (예컨대, 원래의 또는 업데이트된) 제2 제스처 인식 기준들에 기초하여 인식된 후, 핀치 제스처에 의해 객체를 크기 재설정함), 제1 객체 조작 거동은 사용자 인터페이스 객체의 회전 각을 변경한다(예를 들면, 예컨대 트위스트/피봇 제스처(예컨대, 접촉들의 공통 궤적을 중심으로 하는 이동)가 (예컨대, 원래의 또는 업데이트된) 제1 제스처 인식 기준들에 의해 인식된 후, 트위스트/피봇 제스처에 의해 외부 또는 내부 축을 중심으로 사용자 인터페이스 객체의 관찰 시점을 변경함).In some embodiments, the first object manipulation behavior changes the zoom level or displayed size of the user interface object (eg, a pinch gesture (eg, movement of contacts towards each other) (eg, the original or After being recognized based on first gesture recognition criteria (updated), then resizing the object by a pinch gesture), the second object manipulation behavior changes the rotation angle of the user interface object (eg, twist/ After a pivot gesture (eg, movement about a common trajectory of contacts) is recognized by second gesture recognition criteria (eg, original or updated), the user uses a twist/pivot gesture about an external or internal axis change the viewpoint of the interface object) (19046). For example, the first object manipulation behavior changes the displayed size of the virtual object 11002 as described with respect to FIGS. 14G-14I , and the second object manipulation behavior is described with respect to FIGS. 14B-14E . As described above, the rotation angle of the virtual object 11002 is changed. In some embodiments, the second object manipulation behavior changes the zoom level or displayed size of the user interface object (eg, a pinch gesture (eg, movement of contacts towards each other) (eg, the original or After being recognized based on second gesture recognition criteria (updated), then resizing the object by the pinch gesture), the first object manipulation behavior changes the rotation angle of the user interface object (eg, twist/ After a pivot gesture (eg, movement about a common trajectory of contacts) is recognized by (eg, original or updated) first gesture recognition criteria, the user uses a twist/pivot gesture about an external or internal axis change the viewpoint of the interface object).

일부 실시예들에서, 제1 객체 조작 거동은 사용자 인터페이스 객체의 줌 레벨 또는 디스플레이된 크기를 변경하고(예를 들면, 예컨대 핀치 제스처(예컨대, 접촉들의 서로를 향하는 이동)가 (예컨대, 원래의 또는 업데이트된) 제1 제스처 인식 기준들에 기초하여 인식된 후, 핀치 제스처에 의해 객체를 크기 재설정함), 제2 객체 조작 거동은 제1 사용자 인터페이스 영역 내의 사용자 인터페이스 객체의 위치를 변경한다(예를 들면, 예컨대, 한 손가락 또는 두 손가락 드래그 제스처(예컨대, 접촉들의 각각의 방향으로의 이동)가 (예컨대, 원래의 또는 업데이트된) 제2 제스처 인식 기준들에 의해 인식된 후, 드래그 제스처에 의해 사용자 인터페이스 객체를 드래그함)(19048). 예를 들어, 제1 객체 조작 거동은 도 14g 내지 도 14i와 관련하여 기술된 바와 같이 가상 객체(11002)의 디스플레이된 크기를 변경하고, 제2 객체 조작 거동은 도 14b 내지 도 14e와 관련하여 기술된 바와 같이 사용자 인터페이스 내에서 가상 객체(11002)의 위치를 변경한다. 일부 실시예들에서, 제2 객체 조작 거동은 사용자 인터페이스 객체의 줌 레벨 또는 디스플레이된 크기를 변경하고(예를 들면, 예컨대 핀치 제스처(예컨대, 접촉들의 서로를 향하는 이동)가 (예컨대, 원래의 또는 업데이트된) 제2 제스처 인식 기준들에 기초하여 인식된 후, 핀치 제스처에 의해 객체를 크기 재설정함), 제1 객체 조작 거동은 제1 사용자 인터페이스 영역 내의 사용자 인터페이스 객체의 위치를 변경한다(예를 들면, 예컨대, 한 손가락 또는 두 손가락 드래그 제스처(예컨대, 접촉들의 각각의 방향으로의 이동)가 (예컨대, 원래의 또는 업데이트된) 제1 제스처 인식 기준들에 의해 인식된 후, 드래그 제스처에 의해 사용자 인터페이스 객체를 드래그함).In some embodiments, the first object manipulation behavior changes the zoom level or displayed size of the user interface object (eg, a pinch gesture (eg, movement of contacts towards each other) (eg, the original or After being recognized based on first gesture recognition criteria (updated), resizing the object by a pinch gesture), the second object manipulation behavior changes the position of the user interface object within the first user interface area (eg, For example, after a one-finger or two-finger drag gesture (eg, movement in each direction of contacts) is recognized by (eg, original or updated) second gesture recognition criteria, the user dragging an interface object) (19048). For example, the first object manipulation behavior changes the displayed size of the virtual object 11002 as described with respect to FIGS. 14G-14I , and the second object manipulation behavior is described with respect to FIGS. 14B-14E . As described above, the position of the virtual object 11002 in the user interface is changed. In some embodiments, the second object manipulation behavior changes the zoom level or displayed size of the user interface object (eg, a pinch gesture (eg, movement of contacts towards each other) (eg, the original or after being recognized based on the updated) second gesture recognition criteria, resizing the object by the pinch gesture), the first object manipulation behavior changes the position of the user interface object within the first user interface area (eg, For example, after a one-finger or two-finger drag gesture (eg, movement in each direction of contacts) is recognized by (eg, original or updated) first gesture recognition criteria, the user dragging the interface object).

일부 실시예들에서, 제1 객체 조작 거동은 제1 사용자 인터페이스 영역 내의 사용자 인터페이스 객체의 위치를 변경하고(예를 들면, 예컨대, 한 손가락 또는 두 손가락 드래그 제스처(예컨대, 접촉들의 각각의 방향으로의 이동)가 (예컨대, 원래의 또는 업데이트된) 제1 제스처 인식 기준들에 의해 인식된 후, 드래그 제스처에 의해 사용자 인터페이스 객체를 드래그함), 제2 객체 조작 거동은 사용자 인터페이스 객체의 회전 각을 변경한다(예를 들면, 예컨대 트위스트/피봇 제스처(예컨대, 접촉들의 공통 궤적을 중심으로 하는 이동)가 (예컨대, 원래의 또는 업데이트된) 제2 제스처 인식 기준들에 의해 인식된 후, 트위스트/피봇 제스처에 의해 외부 또는 내부 축을 중심으로 사용자 인터페이스 객체의 관찰 시점을 변경함)(19050). 예를 들어, 제1 객체 조작 거동은 도 14b 내지 도 14e와 관련하여 기술된 바와 같이 사용자 인터페이스 내에서 가상 객체(11002)의 위치를 변경하고, 제2 객체 조작 거동은 도 14b 내지 도 14e와 관련하여 기술된 바와 같이 가상 객체(11002)의 회전 각을 변경한다. 일부 실시예들에서, 제2 객체 조작 거동은 제1 사용자 인터페이스 영역 내의 사용자 인터페이스 객체의 위치를 변경하고(예를 들면, 예컨대, 한 손가락 또는 두 손가락 드래그 제스처(예컨대, 접촉들의 각각의 방향으로의 이동)가 (예컨대, 원래의 또는 업데이트된) 제2 제스처 인식 기준들에 의해 인식된 후, 드래그 제스처에 의해 사용자 인터페이스 객체를 드래그함), 제1 객체 조작 거동은 사용자 인터페이스 객체의 회전 각을 변경한다(예를 들면, 예컨대 트위스트/피봇 제스처(예컨대, 접촉들의 공통 궤적을 중심으로 하는 이동)가 (예컨대, 원래의 또는 업데이트된) 제1 제스처 인식 기준들에 의해 인식된 후, 트위스트/피봇 제스처에 의해 외부 또는 내부 축을 중심으로 사용자 인터페이스 객체의 관찰 시점을 변경함).In some embodiments, the first object manipulation behavior changes the position of the user interface object within the first user interface area (eg, a one-finger or two-finger drag gesture (eg, in each direction of the contacts) movement) is recognized by the first gesture recognition criteria (eg, original or updated), then dragging the user interface object by the drag gesture), the second object manipulation behavior changes the rotation angle of the user interface object (eg, after a twist/pivot gesture (eg, movement about a common trajectory of contacts) is recognized by (eg, original or updated) second gesture recognition criteria, the twist/pivot gesture (19050). For example, the first object manipulation behavior changes the position of the virtual object 11002 within the user interface as described with respect to FIGS. 14B-14E , and the second object manipulation behavior changes with respect to FIGS. 14B-14E . to change the rotation angle of the virtual object 11002 as described above. In some embodiments, the second object manipulation behavior changes the position of the user interface object within the first user interface area (eg, a one-finger or two-finger drag gesture (eg, in each direction of the contacts) movement) is recognized by the second gesture recognition criteria (eg, original or updated), then dragging the user interface object by the drag gesture), the first object manipulation behavior changes the rotation angle of the user interface object (eg, after a twist/pivot gesture (eg, movement about a common trajectory of contacts) is recognized by (eg, original or updated) first gesture recognition criteria, the twist/pivot gesture by changing the viewpoint of the user interface object around an external or internal axis).

일부 실시예들에서, 입력의 제1 부분 및 입력의 제2 부분은 복수의 연속적으로 유지되는 접촉들에 의해 제공된다(19052). 디바이스는 복수의 연속적으로 유지되는 접촉들의 리프트오프를 검출한 후에 추가의 제1 및 제2 객체 조작 거동들을 개시하기 위해 제1 제스처 인식 기준들 및 제2 제스처 인식 기준들을 (예컨대, 원래의 임계치들로) 재확립한다(19054). 예를 들어, 접촉들의 리프트오프 후, 디바이스는 새롭게 검출된 터치 입력에 대해 회전, 병진, 및 축척조정에 대한 제스처 인식 임계치들을 재확립한다. 입력이 접촉들의 리프트오프에 의해 종료된 후에 입력 이동에 대해 임계치를 재확립하는 것은 (예컨대, 새로운 입력이 제공될 때마다 증가된 이동 임계치들을 재설정함으로써 객체 조작을 수행하는 데 필요한 입력의 정도를 감소시킴으로써) 디바이스의 작동성을 향상시킨다. 동작을 수행하는 데 필요한 입력의 정도를 감소시키는 것은, 디바이스의 작동성을 개선하고 사용자-디바이스 인터페이스를 더 효율적으로 만드는데, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, the first portion of the input and the second portion of the input are provided ( 19052 ) by a plurality of continuously maintained contacts. The device sets the first gesture recognition criteria and the second gesture recognition criteria (eg, the original thresholds) to initiate additional first and second object manipulation behaviors after detecting liftoff of the plurality of continuously maintained contacts. to) re-established (19054). For example, after liftoff of contacts, the device re-establishes gesture recognition thresholds for rotation, translation, and scaling for the newly detected touch input. Re-establishing a threshold for input movement after the input is terminated by liftoff of contacts reduces the amount of input required to perform object manipulation (eg, by resetting increased movement thresholds each time a new input is provided). ) to improve the operability of the device. Reducing the amount of input required to perform an action improves the operability of the device and makes the user-device interface more efficient, which in addition enables the user to use the device more quickly and efficiently, thereby reduce power consumption and improve battery life.

일부 실시예들에서, 제1 제스처 인식 기준들은 제1 축을 중심으로 하는 회전에 대응하고, 제2 제스처 인식 기준들은 제1 축에 직교하는 제2 축을 중심으로 하는 회전에 대응한다(19056). 일부 실시예들에서, 상이한 유형들의 제스처들에 대한 임계치들을 업데이트하는 대신, 업데이트는 또한, 인식된 제스처 유형(예컨대, 트위스트/피봇 제스처)에 대응하는 유형의 조작 거동 내의 상이한 하위 유형들의 조작 거동(예컨대, 제1 축을 중심으로 하는 회전 대 상이한 축을 중심으로 하는 회전)에 대해 설정된 임계치들에 적용된다. 예를 들어, 일단 제1 축을 중심으로 하는 회전이 인식되고 수행되면, 상이한 축을 중심으로 하는 회전에 대해 설정된 임계치는 업데이트되고(예컨대, 증가되고) 상이한 축을 중심으로 회전을 트리거하기 위해 후속 입력에 의해 극복되어야 한다. 입력 이동이 제2 축을 중심으로 객체를 회전시키는 데 필요한 입력 이동에 대한 임계치를 초과하여 증가할 때 제1 축을 중심으로 객체를 회전시키는 데 필요한 입력 이동에 대한 임계치를 증가시키는 것은 (예컨대, 제1 축을 중심으로 객체를 회전시키려는 시도 동안 사용자가 제2 축을 중심으로 객체를 우발적으로 회전시키는 것을 피하도록 도움으로써) 디바이스의 작동성을 향상시킨다. 동작을 수행하는 데 필요한 입력들의 수를 감소시키는 것은, 디바이스의 작동성을 개선하고 사용자-디바이스 인터페이스를 더 효율적으로 만드는데, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, the first gesture recognition criteria correspond to rotation about a first axis and the second gesture recognition criteria correspond to rotation about a second axis orthogonal to the first axis (19056). In some embodiments, instead of updating thresholds for different types of gestures, the update also includes different subtypes of manipulation behavior within a type of manipulation behavior corresponding to the recognized gesture type (eg, twist/pivot gesture) eg rotation about a first axis versus rotation about a different axis). For example, once rotation about a first axis is recognized and performed, thresholds set for rotation about a different axis are updated (eg, incremented) and triggered by subsequent input to trigger rotation about a different axis. must be overcome Increasing the threshold for input movement required to rotate the object about the first axis when the input movement increases above the threshold for input movement required to rotate the object about the second axis (eg, a first improve the operability of the device) by helping the user avoid accidentally rotating the object about a second axis while attempting to rotate the object about an axis. Reducing the number of inputs required to perform an operation improves the operability of the device and makes the user-device interface more efficient, which in addition enables the user to use the device more quickly and efficiently, thereby reduce power consumption and improve battery life.

도 19a 내지 도 19h에서의 동작들이 기술된 특정 순서는 단지 일례이며 기술된 순서가 동작들이 수행될 수 있는 유일한 순서임을 나타내는 것으로 의도되지는 않는다는 것이 이해되어야 한다. 당업자는 본 명세서에 기술된 동작들을 재순서화하는 다양한 방식들을 인식할 것이다. 추가적으로, 본 명세서에 기술된 다른 방법들(예를 들어, 방법들(800, 900, 1000, 16000, 17000, 18000, 20000))과 관련하여 본 명세서에 기술된 다른 프로세스들의 상세사항들이 도 19a 내지 도 19h와 관련하여 전술된 방법(19000)과 유사한 방식으로 또한 적용가능하다는 것이 주목되어야 한다. 예를 들어, 방법(19000)과 관련하여 전술된 접촉들, 입력들, 가상 객체들, 사용자 인터페이스 영역들, 시야들, 촉각적 출력들, 이동들, 및/또는 애니메이션들은 선택적으로, 본 명세서에 기술된 다른 방법들(예컨대, 방법들(800, 900, 1000, 16000, 17000, 18000, 20000))과 관련하여 본 명세서에 기술된 접촉들, 입력들, 가상 객체들, 사용자 인터페이스 영역들, 시야들, 촉각적 출력들, 이동들, 및/또는 애니메이션들의 특성들 중 하나 이상을 갖는다. 간결함을 위해, 이러한 상세사항들은 여기서 반복되지 않는다.It should be understood that the specific order in which the operations in FIGS. 19A-19H are described is merely an example and is not intended to indicate that the described order is the only order in which the operations may be performed. Those skilled in the art will recognize various ways of reordering the operations described herein. Additionally, details of other processes described herein in connection with other methods described herein (eg, methods 800 , 900 , 1000 , 16000 , 17000 , 18000 , 20000 ) are shown in FIGS. 19A- It should be noted that in a manner similar to method 19000 described above with respect to FIG. 19H is also applicable. For example, contacts, inputs, virtual objects, user interface regions, fields of view, tactile outputs, movements, and/or animations described above with respect to method 19000 are optionally described herein. Contacts, inputs, virtual objects, user interface areas, field of view described herein in connection with other methods described (eg, methods 800, 900, 1000, 16000, 17000, 18000, 20000) fields, tactile outputs, movements, and/or animations. For the sake of brevity, these details are not repeated here.

도 20a 내지 도 20f는 디바이스의 이동이 가상 객체로 하여금 하나 이상의 디바이스 카메라들의 디스플레이된 시야의 외측으로 이동하게 한다는 결정에 따라 오디오 경보를 생성하는 방법(20000)을 예시하는 흐름도들이다. 방법(20000)은 디스플레이 생성 컴포넌트(예컨대, 디스플레이, 프로젝터, 헤드 업 디스플레이 등), 하나 이상의 입력 디바이스들(예컨대, 터치 감응형 표면, 또는 디스플레이 생성 컴포넌트 및 터치 감응형 표면 둘 모두로서의 역할을 하는 터치 스크린 디스플레이), 하나 이상의 오디오 출력 생성기들, 및 하나 이상의 카메라들을 갖는 전자 디바이스(예컨대, 도 3의 디바이스(300), 또는 도 1a의 휴대용 다기능 디바이스(100))에서 수행된다. 방법(20000)에서의 일부 동작들이 선택적으로 조합되고/되거나, 일부 동작들의 순서가 선택적으로 변경된다.20A-20F are flow diagrams illustrating a method 20000 of generating an audio alert upon determining that movement of the device causes the virtual object to move outside the displayed field of view of one or more device cameras. The method 20000 includes a display generating component (eg, a display, a projector, a heads up display, etc.), one or more input devices (eg, a touch-sensitive surface, or a touch serving as both a display generating component and a touch-sensitive surface). screen display), one or more audio output generators, and one or more cameras (eg, device 300 of FIG. 3 , or portable multifunction device 100 of FIG. 1A ). Some operations in method 20000 are selectively combined and/or the order of some operations is selectively changed.

디바이스는, (예컨대, 카메라를 포함하는 디바이스 주위의 물리적 환경의 증강 현실 뷰 내에 가상 객체를 배치하라는 요청에 응답하여(예컨대, 가상 객체의 스테이징 뷰와 함께 디스플레이된 "실세계" 버튼 상에서의 탭에 응답하여)), 디스플레이 생성 컴포넌트를 통해, 하나 이상의 카메라들의 시야의 표현을 포함하는 제1 사용자 인터페이스 영역(예컨대, 제1 사용자 인터페이스 영역은 카메라를 포함하는 디바이스 주위의 물리적 환경의 증강 현실 뷰를 디스플레이하는 사용자 인터페이스임) 내에 가상 객체의 표현을 디스플레이하는데, 디스플레이하는 것은 하나 이상의 카메라들의 시야 내에서 캡처되는 물리적 환경에서 검출되는 평면과 가상 객체의 표현 사이의 제1 공간적 관계를 유지하는 것을 포함한다(예컨대, 가상 객체는 가상 객체의 표현과 평면 사이의 고정된 각도가 유지되도록 하는 배향 및 위치로 디스플레이 상에 디스플레이된다(예컨대, 가상 객체는 평면 상의 고정된 위치에 머무르거나 시야 평면을 따라서 구르는 것으로 보인다))(20002). 예를 들어, 도 15v에 도시된 바와 같이, 가상 객체(11002)는 하나 이상의 카메라들의 시야(6036)를 포함하는 사용자 인터페이스 영역 내에 디스플레이된다.The device responds to a request to place the virtual object (eg, in an augmented reality view of the physical environment surrounding the device including the camera (eg, in response to a tap on a “real world” button displayed along with a staging view of the virtual object) )), via the display creation component, a first user interface area that includes a representation of the field of view of the one or more cameras (eg, the first user interface area displays an augmented reality view of the physical environment surrounding the device including the camera) displaying a representation of the virtual object within a user interface, wherein displaying includes maintaining a first spatial relationship between the representation of the virtual object and a plane detected in the physical environment captured within the field of view of one or more cameras. , the virtual object is displayed on the display in an orientation and position such that a fixed angle between the representation of the virtual object and the plane is maintained (e.g., the virtual object remains in a fixed position on the plane or appears to roll along the plane of view) )) (20002). For example, as shown in FIG. 15V , virtual object 11002 is displayed within a user interface area that includes field of view 6036 of one or more cameras.

디바이스는 하나 이상의 카메라들의 시야를 조정하는 디바이스의 이동(예컨대, 하나 이상의 카메라들을 포함하는 디바이스의 측방향 이동 및/또는 회전)을 검출한다(20004). 예를 들어, 도 15v 및 도 15w와 관련하여 기술된 바와 같이, 디바이스(100)의 이동은 하나 이상의 카메라들의 시야를 조정한다.The device detects ( 20004 ) movement of the device that adjusts the field of view of the one or more cameras (eg, lateral movement and/or rotation of the device including the one or more cameras). For example, as described with respect to FIGS. 15V and 15W , movement of device 100 adjusts the field of view of one or more cameras.

하나 이상의 카메라들의 시야를 조정하는 디바이스의 이동을 검출하는 것에 응답하여, 디바이스는 하나 이상의 카메라들의 시야가 조정됨에 따라 하나 이상의 카메라들의 시야 내에서 검출되는 평면과 가상 객체 사이의 제1 공간적 관계(예컨대, 배향 및/또는 위치)에 따라 제1 사용자 인터페이스 영역 내의 가상 객체의 표현의 디스플레이를 조정하고, (예컨대, 하나 이상의 카메라들의 시야 내에서 캡처되는 물리적 환경에서 검출되는 평면과 가상 객체의 표현 사이의 공간적 관계가 물리적 환경에 대한 디바이스의 이동 동안 고정된 채로 유지되기 때문에) 디바이스의 이동이 임계량(예컨대, 100%, 50%, 또는 20%) 초과의 가상 객체로 하여금 하나 이상의 카메라들의 시야의 디스플레이된 부분의 외측으로 이동하게 한다는 결정에 따라, 디바이스는, 하나 이상의 오디오 출력 생성기들을 통해, 제1 오디오 경보(예컨대, 임계량 초과의 가상 객체가 카메라 뷰 내에 더 이상 디스플레이되지 않는다는 것을 나타내는 음성 알림)를 생성한다(20006). 예를 들어, 도 15w와 관련하여 기술된 바와 같이, 가상 객체(11002)가 하나 이상의 카메라들의 시야(6036)의 디스플레이된 부분의 외측으로 이동하게 하는 디바이스(100)의 이동에 응답하여, 오디오 경보(15118)가 생성된다. 디바이스의 이동이 가상 객체로 하여금 디스플레이된 증강 현실 뷰의 외측으로 이동하게 한다는 결정에 따라 오디오 출력을 생성하는 것은 디바이스의 이동이 증강 현실 뷰에 대한 가상 객체의 디스플레이에 영향을 미친 정도를 나타내는 피드백을 사용자에게 제공한다. 개선된 피드백을 사용자에게 제공하는 것은 (예컨대, 추가의 디스플레이된 정보로 디스플레이를 혼란스럽게 하지 않으면서 그리고 사용자가 디스플레이를 볼 것을 요구하지 않으면서 가상 객체가 디스플레이로부터 벗어나게 이동하였는지 여부를 사용자가 인지하게 하는 정보를 제공함으로써) 디바이스의 작동성을 향상시키고, 사용자-디바이스 인터페이스를 더 효율적으로 만드는데, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In response to detecting movement of the device adjusting the field of view of the one or more cameras, the device is configured to include a first spatial relationship (eg, a first spatial relationship (eg, , orientation and/or position); adjust the display of the representation of the virtual object within the first user interface area (eg, between the representation of the virtual object and a plane detected in the physical environment captured within the field of view of one or more cameras); Because the spatial relationship remains fixed during movement of the device relative to the physical environment), movement of the device causes more than a threshold amount (eg, 100%, 50%, or 20%) of the virtual object to be displayed in the displayed field of view of the one or more cameras. Upon determining to move out of the portion, the device generates, via the one or more audio output generators, a first audio alert (eg, a voice alert indicating that the virtual object above a threshold amount is no longer displayed within the camera view). Do (20006). For example, as described in connection with FIG. 15W , in response to movement of device 100 causing virtual object 11002 to move outside of a displayed portion of field of view 6036 of one or more cameras, an audio alert (15118) is generated. Generating the audio output in accordance with a determination that movement of the device causes the virtual object to move outside of the displayed augmented reality view may provide feedback indicating the degree to which the movement of the device affected the display of the virtual object relative to the augmented reality view. provided to the user. Providing improved feedback to the user (eg, making the user aware whether the virtual object has moved away from the display without confusing the display with additional displayed information and without requiring the user to view the display) It improves the operability of the device (by providing information that improve lifespan

일부 실시예들에서, 제1 오디오 경보를 출력하는 것은 하나 이상의 카메라들의 시야의 디스플레이된 부분 상에서 가시적으로 유지되는 가상 객체의 양을 나타내는 오디오 출력을 생성하는 것을 포함한다(예컨대, 가시적으로 유지되는 가상 객체의 양은 현재 관찰 시점으로부터의 가상 객체의 전체 크기에 대해 측정된다(예컨대, 20%, 25%, 50% 등))(예컨대, 오디오 출력은 "object x is 20% visible(객체 x는 20% 가시적입니다)"라고 한다)(20008). 예를 들어, 도 15x 및 도 15y와 관련하여 기술된 바와 같이, 가상 객체(11002)가 하나 이상의 카메라들의 시야(6036)의 디스플레이된 부분의 외측으로 부분적으로 이동하게 하는 디바이스(100)의 이동에 응답하여, "chair is 90 percent visible, occupying 20 percent of the screen"을 나타내는 알림(15128)을 포함하는 오디오 경보(15126)가 생성된다. 디스플레이된 증강 현실 뷰 내에서 가시적인 가상 객체의 양을 나타내는 오디오 출력을 생성하는 것은 (예컨대, 디바이스의 이동이 가상 객체가 가시적인 정도를 변경한 정도를 나타내는) 피드백을 사용자에게 제공한다. (예컨대, 추가의 디스플레이된 정보로 디스플레이를 혼란스럽게 하지 않으면서 그리고 사용자가 디스플레이를 볼 것을 요구하지 않으면서 가상 객체가 디스플레이로부터 벗어나게 이동하였는지 여부를 사용자가 인지하게 하는 정보를 제공함으로써) 개선된 피드백을 사용자에게 제공하는 것은 디바이스의 작동성을 향상시키고 사용자-디바이스 인터페이스를 더 효율적으로 만드는데, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, outputting the first audio alert comprises generating an audio output indicating an amount of a virtual object that remains visible on the displayed portion of the field of view of the one or more cameras (eg, virtual remains visible). The amount of object is measured relative to the total size of the virtual object from the current observation point (eg 20%, 25%, 50%, etc.) (eg, the audio output is "object x is 20% visible" visible)" (20008). For example, as described with respect to FIGS. 15X and 15Y , movement of the device 100 causes the virtual object 11002 to move partially outside of the displayed portion of the field of view 6036 of one or more cameras. In response, an audio alert 15126 is generated that includes a notification 15128 indicating "chair is 90 percent visible, occupying 20 percent of the screen". Generating an audio output indicative of the amount of virtual object visible within the displayed augmented reality view provides feedback to the user (eg, indicative of the degree to which movement of the device changed the degree to which the virtual object was visible). Improved feedback (eg, by providing information that makes the user aware whether the virtual object has moved away from the display without confusing the display with additional displayed information and without requiring the user to view the display) Providing the user with the device improves the operability of the device and makes the user-device interface more efficient, which additionally enables the user to use the device more quickly and efficiently, thereby reducing the device's power usage and improving battery life. to improve

일부 실시예들에서, 제1 오디오 경보를 출력하는 것은 가상 객체에 의해 가려진 시야의 디스플레이된 부분의 양을 나타내는 오디오 출력을 생성하는 것을 포함한다(예컨대, 가상 객체에 의해 점유된 물리적 환경의 증강 현실 뷰의 양(예컨대, 20%, 25%, 50% 등))(예컨대, 오디오 출력은 "object x occupying 15% of the world view(객체 x는 실세계 뷰의 15%를 차지합니다)"라고 하는 알림을 포함한다)(20010). 일부 실시예들에서, 오디오 출력은 또한, 가상 객체의 디스플레이 상태의 변경들을 야기하는 사용자에 의해 수행되는 액션의 설명을 포함한다. 예를 들어, 오디오 출력은 "device moved to the left; object x is 20% visible, occupying 15% of the world view(디바이스가 좌측으로 이동되고; 객체 x는 20% 가시적이어서, 실세계 뷰의 15%를 차지합니다)"라고 하는 알림을 포함한다. 예를 들어, 도 15y에서, "chair is 90 percent visible, occupying 20 percent of the screen"을 나타내는 알림(15128)을 포함하는 오디오 경보(15126)가 생성된다. 가상 객체에 의해 가려진 증강 현실 뷰의 양을 나타내는 오디오 출력을 생성하는 것은 (예컨대, 디바이스의 이동이 증강 현실 뷰가 가려진 정도를 변경한 정도를 나타내는) 피드백을 사용자에게 제공한다. 개선된 피드백을 사용자에게 제공하는 것은 (예컨대, 추가의 디스플레이된 정보로 디스플레이를 혼란스럽게 하지 않으면서 그리고 사용자가 디스플레이를 볼 것을 요구하지 않으면서 디스플레이에 대한 가상 객체의 크기를 사용자가 인지하게 하는 정보를 제공함으로써) 디바이스의 작동성을 향상시키고, 사용자-디바이스 인터페이스를 더 효율적으로 만드는데, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, outputting the first audio alert comprises generating an audio output indicating an amount of the displayed portion of the field of view obscured by the virtual object (eg, augmented reality of the physical environment occupied by the virtual object). Amount of view (e.g. 20%, 25%, 50%, etc.)) (e.g. audio output says "object x occupying 15% of the world view") including) (20010). In some embodiments, the audio output also includes a description of the action performed by the user that causes changes in the display state of the virtual object. For example, the audio output is "device moved to the left; object x is 20% visible, occupying 15% of the world view" occupies)". For example, in FIG. 15Y , an audio alert 15126 including a notification 15128 indicating "chair is 90 percent visible, occupying 20 percent of the screen" is generated. Generating the audio output indicative of the amount of the augmented reality view occluded by the virtual object provides feedback to the user (eg, indicative of the extent to which movement of the device changed the extent to which the augmented reality view was obscured). Providing improved feedback to the user (eg, information that allows the user to perceive the size of the virtual object relative to the display without confusing the display with additional displayed information and without requiring the user to view the display. to improve the operability of the device (by providing improve

일부 실시예들에서, 디바이스는 하나 이상의 카메라들의 시야의 표현에 대응하는 터치 감응형 표면 상의 위치에서 접촉에 의한 입력을 검출한다(예컨대, 물리적 환경의 증강 현실 뷰를 디스플레이하는 터치 스크린의 일부분 상에서 탭 입력 또는 더블 탭 입력을 검출함)(20012). 입력을 검출하는 것에 응답하여, 그리고 가상 객체에 의해 점유되지 않은 하나 이상의 카메라들의 시야의 제1 부분에 대응하는 터치 감응형 표면 상의 제1 위치에서 입력이 검출된다는 결정에 따라, 디바이스는 제2 오디오 경보(예컨대, 탭핑된 영역 내에서 가상 객체의 위치를 찾지 못한 것을 나타내는 클릭 또는 버즈)를 생성한다(20014). 예를 들어, 도 15z와 관련하여 기술된 바와 같이, 가상 객체(11002)에 의해 점유되지 않은 하나 이상의 카메라들의 시야(6036)의 일부분에 대응하는 터치 스크린(112) 상의 위치에서 검출되는 입력에 응답하여, 디바이스는 오디오 경보(15130)를 생성한다. 일부 실시예들에서, 입력을 검출하는 것에 응답하여, 입력이 가상 객체에 의해 점유된 하나 이상의 카메라들의 시야의 제2 부분에 대응하는 제2 위치에서 검출된다는 결정에 따라, 제2 오디오 경보를 생성하는 것을 보류한다. 일부 실시예들에서, 사용자가 가상 객체의 위치를 찾지 못한 것을 나타내는 제2 오디오 경보를 생성하는 대신, 디바이스는 사용자가 가상 객체의 위치를 찾은 것을 나타내는 상이한 오디오 경보를 생성한다. 일부 실시예들에서, 제2 오디오 경보를 생성하는 대신, 디바이스는 가상 객체에 대해 수행되는 동작을 설명하는 오디오 알림(예컨대, "Object x selected(객체 x가 선택)", "Object x is resized to a default size(객체 x가 디폴트 크기로 크기 재설정됩니다)", "Object x is rotated to a default orientation(객체 x가 디폴트 배향으로 회전됩니다)" 등) 또는 가상 객체의 상태를 설명하는 오디오 알림(예컨대, "Object x, 20% visible, occupying 15% of the world view(객체 x, 20% 가시적이고, 실세계 뷰의 15%를 점유합니다)")을 출력한다. 가상 객체에 의해 점유되지 않은 디스플레이된 증강 현실 뷰의 일부에 대응하는 위치에서 검출되는 입력에 응답하여 오디오 출력을 생성하는 것은 (예컨대, 입력이 (예컨대, 가상 객체에 관한 정보를 획득하고/하거나 동작을 수행하기 위해) 상이한 위치에 제공되어야 한다는 것을 나타내는) 피드백을 사용자에게 제공한다. 개선된 피드백을 사용자에게 제공하는 것은 (예컨대, 추가의 디스플레이된 정보로 디스플레이를 혼란스럽게 하지 않으면서 그리고 사용자가 디스플레이를 볼 것을 요구하지 않으면서 입력이 가상 객체와 성공적으로 연결되었는지 여부를 사용자가 인지하게 하는 정보를 제공함으로써) 디바이스의 작동성을 향상시키고, 사용자-디바이스 인터페이스를 더 효율적으로 만드는데, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, the device detects input by contact at a location on the touch-sensitive surface that corresponds to a representation of the field of view of one or more cameras (eg, tap on a portion of the touch screen to display an augmented reality view of the physical environment) input or double-tap input) (20012). In response to detecting the input, and in response to determining that the input is detected at a first location on the touch-sensitive surface corresponding to a first portion of the field of view of the one or more cameras not occupied by the virtual object, the device is configured to: An alert (eg, a click or buzz indicating that the virtual object was not located within the tapped area) is generated (20014). For example, as described in connection with FIG. 15Z , in response to input detected at a location on the touch screen 112 that corresponds to a portion of the field of view 6036 of one or more cameras not occupied by the virtual object 11002 , Thus, the device generates an audio alert 15130 . In some embodiments, in response to detecting the input, generate a second audio alert in accordance with a determination that the input is detected at a second location corresponding to a second portion of the field of view of the one or more cameras occupied by the virtual object. withhold to do In some embodiments, instead of generating a second audio alert indicating that the user did not locate the virtual object, the device generates a different audio alert indicating that the user has located the virtual object. In some embodiments, instead of generating a second audio alert, the device provides an audio notification describing the action being performed on the virtual object (eg, “Object x selected”, “Object x is resized to a default size", "Object x is rotated to a default orientation", etc.) or an audio notification describing the state of the virtual object (such as , which prints "Object x, 20% visible, occupying 15% of the world view"). Generating an audio output in response to an input detected at a location corresponding to a portion of a displayed augmented reality view not occupied by the virtual object may include: provide feedback to the user indicating that it must be provided in a different location) to perform Providing improved feedback to the user (eg, allowing the user to recognize whether an input was successfully associated with the virtual object without confusing the display with additional displayed information and without requiring the user to view the display) It improves the operability of the device (by providing information that enables Improves battery life.

일부 실시예들에서, 제1 오디오 경보를 출력하는 것은 가상 객체에 대해 수행되는 동작(예컨대, 오디오 출력을 생성하기 전에, 디바이스는 현재 선택된 동작을 결정하고, 현재 선택된 동작을 실행하려는 사용자의 의도를 확인하는 입력(예컨대, 더블 탭)에 응답하여 동작을 수행함) 및 동작의 수행 후 가상 객체의 결과 상태를 나타내는 오디오 출력을 생성하는 것을 포함한다(20016). 예를 들어, 오디오 출력은 "device moved to the left; object x is 20% visible, occupying 15% of the world view", "object x is rotated clockwise by 30 degrees; object is 50 degrees rotated around the y-axis(객체 x는 30도만큼 시계방향으로 회전되고; 객체는 y-축을 중심으로 50도 회전됩니다)", 또는 "object x enlarged by 20% and occupies 50% of the world view(객체 x는 20%만큼 확대되고 실세계 뷰의 50%를 차지합니다)"라고 하는 알림을 포함한다. 예를 들어, 도 15ah 및 도 15ai와 관련하여 기술된 바와 같이, 가상 객체(11002)에 대한 회전 동작의 수행에 응답하여, "Chair is rotated by five degrees counterclockwise. Chair is now rotated by zero degrees relative to the screen(의자가 반시계방향으로 5도 회전됩니다. 의자는 이제 화면에 대해 0도 회전되어 있습니다)"을 나타내는 알림(15192)을 포함하는 오디오 경보(15190)가 생성된다. 가상 객체에 대해 수행되는 동작을 나타내는 오디오 출력을 생성하는 것은 제공된 입력이 가상 객체에 어떻게 영향을 미치는지를 나타내는 피드백을 사용자에게 제공한다. 개선된 피드백을 사용자에게 제공하는 것은 (예컨대, 추가의 디스플레이된 정보로 디스플레이를 혼란스럽게 하지 않으면서 그리고 사용자가 디스플레이를 볼 것을 요구하지 않으면서 동작이 가상 객체를 어떻게 변경하였는지를 사용자가 인지하게 하는 정보를 제공함으로써) 디바이스의 작동성을 향상시키고, 사용자-디바이스 인터페이스를 더 효율적으로 만드는데, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, outputting the first audio alert comprises an action performed on the virtual object (eg, prior to generating the audio output, the device determines the currently selected action and indicates the user's intention to execute the currently selected action) performing an action in response to a confirming input (eg, a double tap) and generating an audio output representing the resulting state of the virtual object after performing the action (20016). For example, the audio output is "device moved to the left; object x is 20% visible, occupying 15% of the world view", "object x is rotated clockwise by 30 degrees; object is 50 degrees rotated around the y-axis" (object x is rotated clockwise by 30 degrees; object is rotated 50 degrees around the y-axis)", or "object x enlarged by 20% and occupies 50% of the world view. zoomed in and take up 50% of the real-world view)". For example, in response to performing a rotation operation on virtual object 11002 , as described with respect to FIGS. 15A and 15AI , “Chair is rotated by five degrees counterclockwise. Chair is now rotated by zero degrees relative to An audio alert (15190) is generated with a notification (15192) indicating the screen (the chair is rotated 5 degrees counterclockwise. The chair is now rotated 0 degrees relative to the screen). Generating an audio output representative of an action performed on the virtual object provides feedback to the user indicating how the provided input affects the virtual object. Providing improved feedback to the user (eg, information that allows the user to perceive how the action changed the virtual object without confusing the display with additional displayed information and without requiring the user to view the display) to improve the operability of the device (by providing improve

일부 실시예들에서, 동작의 수행 후 가상 객체의 결과 상태는 하나 이상의 카메라들의 시야 내에서 캡처되는 물리적 환경에 대응하는 기준 프레임과 관련하여 제1 오디오 경보에서 오디오 출력으로 설명된다(예컨대, (예컨대, 터치 기반 제스처 또는 디바이스의 이동에 응답하여) 객체를 조작한 후, 디바이스는 (예컨대, 가상 객체가 초기에 물리적 환경의 증강 현실 뷰 내로 배치될 때의 가상 객체의 초기 위치/배향에 대해 30도로 회전된, 60도로 회전된, 또는 좌측으로 이동된) 객체의 새로운 상태를 설명하는 보이스 오버(voice over)를 생성한다)(20018). 예를 들어, 도 15ah 및 도 15ai와 관련하여 기술된 바와 같이, 가상 객체(11002)에 대한 회전 동작의 수행에 응답하여, "Chair is rotated by five degrees counterclockwise. Chair is now rotated by zero degrees relative to the screen"을 나타내는 알림(15192)을 포함하는 오디오 경보(15190)가 생성된다. 일부 실시예들에서, 동작은 물리적 환경에 대한 디바이스의 이동을 포함하고(예컨대, 하나 이상의 카메라들의 시야 내에서 캡처되는 물리적 환경의 일부분의 표현에 대한 가상 객체의 이동을 야기함), 보이스 오버는 물리적 환경에 대한 디바이스의 이동에 응답하여 가상 객체의 새로운 상태를 설명한다. 동작이 객체에 대해 수행된 후 가상 객체의 상태를 나타내는 오디오 출력을 생성하는 것은 동작이 가상 객체를 어떻게 변경하였는지를 사용자가 인지하게 하는 피드백을 사용자에게 제공한다. 개선된 피드백을 사용자에게 제공하는 것은 (예컨대, 추가의 디스플레이된 정보로 디스플레이를 혼란스럽게 하지 않으면서 그리고 사용자가 디스플레이를 볼 것을 요구하지 않으면서 동작이 가상 객체를 어떻게 변경하였는지를 사용자가 인지하게 하는 정보를 제공함으로써) 디바이스의 작동성을 향상시키고, 사용자-디바이스 인터페이스를 더 효율적으로 만드는데, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, the resulting state of the virtual object after performance of the action is described (eg, as an audio output in the first audio alert) in relation to a frame of reference corresponding to the physical environment being captured within the field of view of the one or more cameras. After manipulating the object (eg, in response to a touch-based gesture or movement of the device), the device rotates the virtual object at 30 degrees to the initial position/orientation of the virtual object (eg, when the virtual object is initially placed into an augmented reality view of the physical environment). Creates a voice over describing the new state of the object (rotated, rotated 60 degrees, or shifted to the left) (20018). For example, in response to performing a rotation operation on virtual object 11002 , as described with respect to FIGS. 15A and 15AI , “Chair is rotated by five degrees counterclockwise. Chair is now rotated by zero degrees relative to An audio alert 15190 is generated that includes a notification 15192 indicating "the screen". In some embodiments, the action comprises movement of the device relative to the physical environment (eg, causing movement of the virtual object relative to a representation of a portion of the physical environment captured within the field of view of one or more cameras), and the voice over is Describes the new state of a virtual object in response to movement of the device relative to the physical environment. Generating an audio output that indicates the state of the virtual object after an action has been performed on the object provides feedback to the user that makes the user aware of how the action has changed the virtual object. Providing improved feedback to the user (eg, information that allows the user to perceive how the action changed the virtual object without confusing the display with additional displayed information and without requiring the user to view the display) to improve the operability of the device (by providing improve

일부 실시예들에서, 디바이스는 제1 오디오 경보의 생성 후에 하나 이상의 카메라들의 시야를 추가로 조정하는 디바이스의 추가 이동(예컨대, 하나 이상의 카메라들을 포함하는 디바이스의 측방향 이동 및/또는 회전)을 검출한다(20020). 예를 들어, 도 15w 및 도 15x와 관련하여 기술된 바와 같이, 디바이스(100)의 이동은 (도 15v 및 도 15w로부터의 디바이스(100)의 이동에 응답하여 발생하는 하나 이상의 카메라들의 시야의 조정 이후에) 하나 이상의 카메라들의 시야를 추가로 조정한다. 하나 이상의 카메라들의 시야를 추가로 조정하는 디바이스의 추가 이동을 검출하는 것에 응답하여, 디바이스는 하나 이상의 카메라들의 시야가 추가로 조정됨에 따라 하나 이상의 카메라들의 시야 내에서 검출되는 평면과 가상 객체 사이의 제1 공간적 관계(예컨대, 배향 및/또는 위치)에 따라 제1 사용자 인터페이스 영역 내의 가상 객체의 표현의 디스플레이를 조정하고, (예컨대, 하나 이상의 카메라들의 시야 내에서 캡처되는 물리적 환경에서 검출되는 평면과 가상 객체의 표현 사이의 공간적 관계가 물리적 환경에 대한 디바이스의 이동 동안 고정된 채로 유지되기 때문에) 디바이스의 추가 이동이 제2 임계량(예컨대, 50%, 80%, 또는 100%) 초과의 가상 객체로 하여금 하나 이상의 카메라들의 시야의 디스플레이된 부분 내로 이동하게 한다는 결정에 따라, 디바이스는, 하나 이상의 오디오 출력 생성기들을 통해, 제3 오디오 경보(예컨대, 임계량 초과의 가상 객체가 다시 카메라 뷰 내로 이동되는 것을 나타내는 알림을 포함하는 오디오 출력)를 생성한다(20022). 예를 들어, 도 15x와 관련하여 기술된 바와 같이, 가상 객체(11002)가 하나 이상의 카메라들의 시야(6036)의 디스플레이된 부분 내로 이동하게 하는 디바이스(100)의 이동에 응답하여, (예컨대, 알림, "Chair is now projected in the world, 100 percent visible, occupying 10 percent of the screen(의자는 이제 실세계에 투영되고, 100 퍼센트 가시적이고, 스크린의 10 퍼센트를 차지합니다)"을 포함하는) 오디오 경보(15122)가 생성된다. 디바이스의 이동이 가상 객체로 하여금 디스플레이된 증강 현실 뷰 내로 이동하게 한다는 결정에 따라 오디오 출력을 생성하는 것은 디바이스의 이동이 증강 현실 뷰에 대한 가상 객체의 디스플레이에 영향을 미친 정도를 나타내는 피드백을 사용자에게 제공한다. 개선된 피드백을 사용자에게 제공하는 것은 (예컨대, 추가의 디스플레이된 정보로 디스플레이를 혼란스럽게 하지 않으면서 그리고 사용자가 디스플레이를 볼 것을 요구하지 않으면서 가상 객체가 디스플레이 내로 이동하였는지 여부를 사용자가 인지하게 하는 정보를 제공함으로써) 디바이스의 작동성을 향상시키고, 사용자-디바이스 인터페이스를 더 효율적으로 만드는데, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, the device detects a further movement of the device (eg, lateral movement and/or rotation of the device including the one or more cameras) that further adjusts the field of view of the one or more cameras after generating the first audio alert. Do (20020). For example, as described with respect to FIGS. 15W and 15X , movement of device 100 is an adjustment of the field of view of one or more cameras that occurs in response to movement of device 100 from FIGS. 15V and 15W . later) further adjust the field of view of one or more cameras. In response to detecting further movement of the device that further adjusts the field of view of the one or more cameras, the device is configured to further adjust the field of view of the one or more cameras between the detected plane and the virtual object as the field of view of the one or more cameras is further adjusted. 1 adjust the display of the representation of the virtual object within the first user interface area according to a spatial relationship (eg, orientation and/or position); Further movement of the device causes the virtual object to exceed a second threshold amount (eg, 50%, 80%, or 100%) because the spatial relationship between representations of the object remains fixed during movement of the device relative to the physical environment. Upon determining to cause movement of the one or more cameras into the displayed portion of the field of view, the device, via the one or more audio output generators, sends a third audio alert (eg, an alert indicating that a virtual object exceeding a threshold amount is moved back into the camera view) Audio output including ) is generated (20022). For example, in response to movement of device 100 causing virtual object 11002 to move into a displayed portion of field of view 6036 of one or more cameras, (eg, an alert, as described with respect to FIG. 15X ), as described with respect to FIG. 15X , , an audio alert (including "Chair is now projected in the world, 100 percent visible, occupying 10 percent of the screen") 15122) is created. Generating the audio output in accordance with a determination that movement of the device causes the virtual object to move into the displayed augmented reality view may provide feedback to the user indicating the degree to which the movement of the device affected the display of the virtual object relative to the augmented reality view. to provide. Providing improved feedback to the user (eg, making the user aware that a virtual object has moved into the display without confusing the display with additional displayed information and without requiring the user to view the display) information) improves the operability of the device, and makes the user-device interface more efficient, which in addition reduces the device's power usage and battery life by enabling users to use the device more quickly and efficiently. to improve

일부 실시예들에서, 제1 사용자 인터페이스 영역 내에 가상 객체의 표현을 디스플레이하고 가상 객체에 적용가능한 복수의 객체 조작 유형들 중 제1 객체 조작 유형이 가상 객체에 대해 현재 선택되어 있는 동안, 디바이스는 가상 객체에 적용가능한 다른 객체 조작 유형으로 스위칭하라는 요청을 검출한다(예컨대, 하나 이상의 카메라들의 시야의 표현을 디스플레이하는 제1 사용자 인터페이스 영역의 일부분에 대응하는 터치 감응형 표면 상의 위치에서 (예컨대, 수평 방향으로의 접촉의 이동을 포함하는) 접촉에 의한 스와이프 입력을 검출함)(20024). 예를 들어, 도 15ag와 관련하여 기술된 바와 같이, 시계방향 회전 제어부(15170)가 현재 선택되어 있는 동안, (가상 객체(15160)를 반시계방향으로 회전시키기 위해) 반시계방향 회전 제어부(15180)로 스위칭하기 위한 스와이프 입력이 검출된다. 가상 객체에 적용가능한 다른 객체 조작 유형으로 스위칭하라는 요청을 검출하는 것에 응답하여, 디바이스는 가상 객체에 적용가능한 복수의 객체 조작 유형들 중 제2 객체 조작 유형을 명명하는 오디오 출력(예컨대, 오디오 출력은 "rotate object around x-axis(x 축을 중심으로 객체를 회전시키세요)", "resize object(객체 크기를 재설정하세요)", 또는 "move object on the plane(평면 상에서 객체를 이동시키세요)" 등이라고 하는 알림을 포함함)을 생성하는데, 제2 객체 조작 유형은 제1 객체 조작 유형과 구별된다(20026). 예를 들어, 도 15ah에서, 도 15ag와 관련하여 기술된 요청의 검출에 응답하여, 알림(15184)("selected: rotate counterclockwise")을 포함하는 오디오 경보(15182)가 생성된다. 일부 실시예들에서, 디바이스는 동일한 방향으로의 연속적인 스와이프 입력들에 응답하여 적용가능한 객체 조작 유형들의 미리정의된 목록을 반복한다. 일부 실시예들에서, 바로 앞서 선행하는 스와이프 입력으로부터 반대 방향으로의 스와이프 입력을 검출하는 것에 응답하여, 디바이스는 가상 객체에 적용가능한 이전에 알려진 객체 조작 유형(예컨대, 마지막 바로 전에 알려진 객체 조작 유형)을 명명하는 알림을 포함하는 오디오 출력을 생성한다. 일부 실시예들에서, 디바이스는 가상 객체에 적용가능한 각각의 객체 조작 유형들에 대한 대응하는 제어부를 디스플레이하지 않는다(예컨대, 제스처들에 의해 개시되는 동작들(예컨대, 회전, 크기 재설정, 병진 등)에 대해 디스플레이되는 버튼이나 제어부가 없다). 객체 조작 유형을 스위칭하라는 요청에 응답하여 오디오 출력을 생성하는 것은 스위치 동작이 수행되었다는 것을 나타내는 피드백을 사용자에게 제공한다. 개선된 피드백을 사용자에게 제공하는 것은 (예컨대, 추가의 디스플레이된 정보로 디스플레이를 혼란스럽게 하지 않으면서 그리고 사용자가 디스플레이를 볼 것을 요구하지 않으면서 스위칭 입력이 성공적으로 수행되었다는 것을 확인하는 정보를 제공함으로써) 디바이스의 작동성을 향상시키고, 사용자-디바이스 인터페이스를 더 효율적으로 만드는데, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, the device displays a representation of the virtual object within the first user interface area and, while a first object manipulation type of a plurality of object manipulation types applicable to the virtual object is currently selected for the virtual object, the device detect a request to switch to another object manipulation type applicable to the object (eg, at a location on the touch-sensitive surface corresponding to a portion of the first user interface area that displays a representation of the field of view of one or more cameras (eg, in a horizontal direction) detecting a swipe input by a contact (including movement of the contact to) (20024). For example, as described with respect to FIG. 15Ag , while the clockwise rotation control 15170 is currently selected, the counterclockwise rotation control 15180 (to rotate the virtual object 15160 counterclockwise). ) is detected. In response to detecting the request to switch to another object manipulation type applicable to the virtual object, the device generates an audio output naming a second object manipulation type of the plurality of object manipulation types applicable to the virtual object (eg, the audio output is "rotate object around x-axis", "resize object", or "move object on the plane", etc. ), wherein the second type of object manipulation is distinct from the first type of object manipulation (20026). For example, in FIG. 15Ah , in response to detecting the request described with respect to FIG. 15Ag , an audio alert 15182 including a notification 15184 (“selected: rotate counterclockwise”) is generated. In some embodiments, the device iterates through a predefined list of applicable object manipulation types in response to successive swipe inputs in the same direction. In some embodiments, in response to detecting a swipe input in the opposite direction from an immediately preceding swipe input, the device causes a previously known object manipulation type applicable to the virtual object (eg, an object manipulation known just before the last). Produces an audio output containing a notification naming the type). In some embodiments, the device does not display a corresponding control for each type of object manipulation applicable to the virtual object (eg, actions initiated by gestures (eg, rotate, resize, translate, etc.) There are no buttons or controls displayed for Generating an audio output in response to a request to switch the object manipulation type provides feedback to the user indicating that a switch operation has been performed. Providing improved feedback to the user (e.g., by providing information confirming that the switching input was performed successfully without confusing the display with additional displayed information and without requiring the user to view the display) ) improves the operability of the device, and makes the user-device interface more efficient, which additionally reduces the power usage of the device and improves battery life by enabling the user to use the device more quickly and efficiently.

가상 객체에 적용가능한 복수의 객체 조작 유형들 중 제2 객체 조작 유형을 명명하는 오디오 출력(예컨대, 오디오 출력은 "rotate object around x-axis", "resize object", 또는 "move object on the plane" 등이라고 하는 알림을 포함함)을 생성한 후, 디바이스는 현재 선택된 객체 조작 유형에 대응하는 객체 조작 거동을 실행하라는 요청을 검출한다(예컨대, 하나 이상의 카메라들의 시야의 표현을 디스플레이하는 제1 사용자 인터페이스 영역의 일부분에 대응하는 터치 감응형 표면 상의 위치에서 접촉에 의한 더블 탭 입력을 검출함)(20028). 예를 들어, 도 15ah와 관련하여 기술된 바와 같이, 가상 객체(11002)를 반시계방향으로 회전시키기 위한 더블 탭 입력이 검출된다. 현재 선택된 객체 조작 유형에 대응하는 객체 조작 거동을 수행하라는 요청을 검출하는 것에 응답하여, 디바이스는 제2 객체 조작 유형에 대응하는 객체 조작 거동을 실행한다(예컨대, 가상 객체를 y-축을 중심으로 5도만큼 회전시키거나, 객체의 크기를 5%만큼 증가시키거나, 객체를 평면 상에서 20픽셀만큼 이동시킴)(예컨대, 제2 객체 조작 유형에 따라 제1 사용자 인터페이스 영역 내의 가상 객체의 표현의 디스플레이를 조정함)(20030). 예를 들어, 도 15ai에서, 도 15ah와 관련하여 기술된 요청의 검출에 응답하여, 가상 객체(11002)는 반시계방향으로 회전된다. 일부 실시예들에서, 디바이스는, 제2 객체 조작 유형에 대응하는 객체 조작 거동을 실행하는 것에 더하여, 가상 객체에 대해 실행되는 객체 조작 거동 및 객체 조작 거동의 실행 후 가상 객체의 결과 상태를 나타내는 알림을 포함하는 오디오 출력을 출력한다. 예를 들어, 도 15ai에서, 알림(15192)("Chair rotated by five degrees counterclockwise. Chair is now rotated by zero degrees relative to the screen")을 포함하는 오디오 출력(15190)이 생성된다. 동작이 선택되는 동안 검출된 입력에 응답하여 객체 조작 동작을 수행하는 것은 동작을 수행하기 위한 추가 제어 옵션을 제공한다(예컨대, 2-접촉 입력을 요구하기보다는 탭 입력을 제공함으로써 사용자가 동작을 수행하게 함). 추가의 디스플레이된 제어부들로 사용자 인터페이스를 혼란스럽게 하지 않으면서 입력을 제공하기 위한 추가 제어 옵션을 제공하는 것은 (예컨대, 다중 접촉 제스처들을 제공할 수 있는 제한된 능력을 갖는 사용자들에게 객체를 조작하기 위한 옵션을 제공함으로써) 디바이스의 작동성을 향상시키고, 사용자-디바이스 인터페이스를 더 효율적으로 만드는데, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.An audio output naming a second object manipulation type of a plurality of object manipulation types applicable to the virtual object (eg, the audio output is "rotate object around x-axis", "resize object", or "move object on the plane") After generating a notification such as, etc.), the device detects a request to perform an object manipulation behavior corresponding to the currently selected object manipulation type (eg, a first user interface that displays a representation of the field of view of one or more cameras) detecting double-tap input by contact at a location on the touch-sensitive surface corresponding to a portion of the region (20028). For example, a double tap input to rotate the virtual object 11002 counterclockwise is detected, as described with respect to FIG. 15Ah. In response to detecting the request to perform the object manipulation behavior corresponding to the currently selected object manipulation type, the device executes the object manipulation behavior corresponding to the second object manipulation type (eg, rotates the virtual object 5 about the y-axis rotate the object by a degree, increase the size of the object by 5%, or move the object by 20 pixels on the plane (eg, display the representation of the virtual object in the first user interface area according to the second type of object manipulation) adjusted) (20030). For example, in FIG. 15AI , in response to detecting the request described with respect to FIG. 15Ah , the virtual object 11002 is rotated counterclockwise. In some embodiments, the device, in addition to executing the object manipulation behavior corresponding to the second object manipulation type, provides an object manipulation behavior executed on the virtual object and a notification indicating a result state of the virtual object after execution of the object manipulation behavior Outputs an audio output containing For example, in FIG. 15AI , audio output 15190 is generated that includes notification 15192 (“Chair rotated by five degrees counterclockwise. Chair is now rotated by zero degrees relative to the screen”). Performing an object manipulation action in response to a detected input while the action is being selected provides additional control options for performing the action (eg, by providing a tap input rather than requiring a two-touch input to allow the user to perform the action) to do). Providing additional control options for providing input without cluttering the user interface with additional displayed controls (eg, for manipulating objects to users with limited ability to provide multiple touch gestures) options) improve the operability of the device and make the user-device interface more efficient, which additionally enables users to use the device more quickly and efficiently, thereby reducing the device's power usage and battery life. to improve

일부 실시예들에서, 가상 객체에 적용가능한 다른 객체 조작 유형으로 스위칭하라는 요청을 검출하는 것에 응답하여, 제2 객체 조작 유형이 연속적으로 조정가능한 조작 유형이라는 결정에 따라, 디바이스는, 제2 객체 조작 유형이 연속적으로 조정가능한 조작 유형인 것을 나타내기 위해, 제2 객체 조작 유형을 명명하는 오디오 출력과 함께 오디오 경보를 생성하고(예컨대, 제2 객체 조작 유형을 명명하는 오디오 알림(예컨대, "rotate object clockwise around the y axis(객체를 y-축을 중심으로 시계방향으로 회전시키세요)") 후에 "adjustable(조정가능)"이라고 하는 오디오 출력을 출력함); 디바이스는, (예컨대, 하나 이상의 카메라들의 시야의 표현을 디스플레이하는 제1 사용자 인터페이스 영역의 일부분에 대응하는 터치 감응형 표면 상의 위치에서 접촉에 의한 더블 탭 입력을 검출한 후) 하나 이상의 카메라들의 시야의 표현을 디스플레이하는 제1 사용자 인터페이스 영역의 일부분에 대응하는 터치 감응형 표면 상의 위치에서 스와이프 입력을 검출하는 것을 포함하여, 제2 객체 조작 유형에 대응하는 객체 조작 거동을 실행하라는 요청을 검출하고; 제2 객체 조작 유형에 대응하는 객체 조작 거동을 실행하라는 요청을 검출하는 것에 응답하여, 디바이스는 스와이프 입력의 크기에 대응하는 양만큼 제2 객체 조작 유형에 대응하는 객체 조작 거동을 실행한다(예컨대, 스와이프 입력의 크기가 제1 양인지 또는 제1 양보다 큰 제2 양인지 여부에 따라, 가상 객체를 y 축을 중심으로 5도 또는 10도만큼 회전시키거나, 객체의 크기를 5% 또는 10%만큼 증가시키거나, 객체를 평면 상에서 20픽셀 또는 40픽셀만큼 이동시킴)(20032). 예를 들어, 도 15j 및 도 15k와 관련하여 기술된 바와 같이, 시계방향 회전 제어부(15038)가 현재 선택되어 있는 동안, 줌 제어부(15064)로의 스위칭을 위한 스와이프 입력이 검출된다. 알림(15068)("scale: adjustable")을 포함하는 오디오 경보(15066)가 생성된다. 도 15k 및 도 15l과 관련하여 기술된 바와 같이, 가상 객체(11002)에 대해 줌 인하기 위한 스와이프 입력이 검출되고, 입력에 응답하여, 줌 동작이 가상 객체(11002)에 대해 수행된다(도 15k 및 도 15l의 예시적인 예에서, 스테이징 뷰 인터페이스(6010)가 디스플레이되는 동안 연속적으로 조정가능한 조작을 위한 입력이 검출되지만, 하나 이상의 카메라들의 시야의 표현을 디스플레이하는 제1 사용자 인터페이스 영역의 일부분에 대응하는 터치 감응형 표면 상의 위치에서 유사한 입력이 검출될 수 있다는 것이 인식될 것이다). 일부 실시예들에서, 디바이스는, 제2 객체 조작 거동을 실행하는 것에 더하여, 가상 객체에 대해 실행되는 객체 조작 거동의 양 및 그 양만큼의 객체 조작 거동의 실행 후 가상 객체의 결과 상태를 나타내는 오디오 알림을 출력한다. 스와이프 입력에 응답하여 객체 조작 동작을 수행하는 것은 동작을 수행하기 위한 추가 제어 옵션을 제공한다(예컨대, 2-접촉 입력을 요구하기보다는 스와이프 입력을 제공함으로써 사용자가 동작을 수행하게 함). 추가의 디스플레이된 제어부들로 사용자 인터페이스를 혼란스럽게 하지 않으면서 입력을 제공하기 위한 추가 제어 옵션을 제공하는 것은 (예컨대, 다중 접촉 제스처들을 제공할 수 있는 제한된 능력을 갖는 사용자들에게 객체를 조작하기 위한 옵션을 제공함으로써) 디바이스의 작동성을 향상시키고, 사용자-디바이스 인터페이스를 더 효율적으로 만드는데, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, in response to detecting a request to switch to another object manipulation type applicable to the virtual object, upon determining that the second object manipulation type is a continuously adjustable manipulation type, the device: To indicate that the type is a continuously adjustable manipulation type, generate an audio alert with an audio output naming the second object manipulation type (e.g., an audio notification naming the second object manipulation type (e.g., “rotate object clockwise around the y axis") outputs an audio output that says "adjustable"; The device is configured to: detecting a request to perform an object manipulation behavior corresponding to a second type of object manipulation, including detecting a swipe input at a location on the touch-sensitive surface corresponding to a portion of the first user interface area that displays the representation; In response to detecting the request to execute the object manipulation behavior corresponding to the second object manipulation type, the device executes the object manipulation behavior corresponding to the second object manipulation type by an amount corresponding to the magnitude of the swipe input (eg, , rotates the virtual object around the y-axis by 5 degrees or 10 degrees, or scales the object by 5% or 10, depending on whether the magnitude of the swipe input is a first amount or a second amount greater than the first amount. %, or move the object by 20 or 40 pixels on the plane) (20032). For example, as described with respect to FIGS. 15J and 15K , while clockwise rotation control 15038 is currently selected, a swipe input for switching to zoom control 15064 is detected. An audio alert 15066 is generated that includes a notification 15068 (“scale: adjustable”). 15K and 15L , a swipe input to zoom in on the virtual object 11002 is detected, and in response to the input, a zoom operation is performed on the virtual object 11002 (FIG. In the illustrative example of 15K and 15L , input for continuously adjustable manipulation is detected while staging view interface 6010 is displayed, but in a portion of the first user interface area that displays a representation of the field of view of one or more cameras. It will be appreciated that a similar input may be detected at a location on the corresponding touch-sensitive surface). In some embodiments, the device, in addition to executing the second object manipulation behavior, provides an audio indicating an amount of the object manipulation behavior executed on the virtual object and a resulting state of the virtual object after execution of the object manipulation behavior by the amount Print a notification. Performing an object manipulation action in response to a swipe input provides additional control options for performing the action (eg, allowing the user to perform the action by providing a swipe input rather than requiring a two-contact input). Providing additional control options for providing input without cluttering the user interface with additional displayed controls (eg, for manipulating objects to users with limited ability to provide multiple touch gestures) options) improve the operability of the device and make the user-device interface more efficient, which in addition reduces the device's power usage and battery life by enabling users to use the device more quickly and efficiently. to improve

일부 실시예들에서, 제1 사용자 인터페이스 영역 내에 가상 객체의 표현을 디스플레이하기 전에, 디바이스는 제2 사용자 인터페이스 영역(예컨대, 스테이징 사용자 인터페이스) 내에 가상 객체의 표현을 디스플레이하는데, 제2 사용자 인터페이스 영역은 하나 이상의 카메라들의 시야의 표현을 포함하지 않는다(예컨대, 제2 사용자 인터페이스 영역은 카메라들의 시야 내에서 캡처되는 물리적 환경에서 검출되는 평면에 대한 고정된 관계를 유지하지 않으면서 가상 객체가 조작(예컨대, 회전, 크기 재설정, 및 이동)될 수 있는 스테이징 사용자 인터페이스이다)(20034). 제2 사용자 인터페이스 영역 내에 가상 객체의 표현을 디스플레이하고 가상 객체에 적용가능한 복수의 동작들 중 제1 동작이 가상 객체에 대해 현재 선택되어 있는 동안, 디바이스는 (예컨대, 제2 사용자 인터페이스 영역 내의 가상 객체에 적용가능한 객체 조작 유형(예컨대, 크기 재설정, 회전, 기울기 등) 또는 제2 사용자 인터페이스 영역 내의 가상 객체에 적용가능한 사용자 인터페이스 동작(예컨대, 2D 사용자 인터페이스로 다시 돌아가기, 객체를 물리적 환경의 증강 현실 뷰 내로 낙하하기)을 스위칭하라는 요청을 포함하여) 가상 객체에 적용가능한 다른 동작으로 스위칭하라는 요청을 검출한다(예컨대, 요청을 검출하는 것은 제1 사용자 인터페이스 영역에 대응하는 터치 감응형 표면 상의 위치에서 (예컨대, 접촉의 수평 방향으로의 이동을 포함한) 접촉에 의한 스와이프 입력을 검출하는 것을 포함한다)(20036). 예를 들어, 도 15f 및 도 15g와 관련하여 기술된 바와 같이, 스테이징 사용자 인터페이스(6010)가 디스플레이되고 틸트 다운 제어부(15022)가 현재 선택되어 있는 동안, 시계방향 회전 제어부(15038)로 스위칭하기 위한 스와이프 입력이 검출된다. 제2 사용자 인터페이스 영역 내의 가상 객체에 적용가능한 다른 동작으로 스위칭하라는 요청을 검출하는 것에 응답하여, 디바이스는 가상 객체에 적용가능한 복수의 동작들 중 제2 동작을 명명하는 오디오 출력(예컨대, 오디오 출력은 "rotate object around x-axis", "resize object", "tilt the object toward the display(디스플레이를 향하여 객체를 기울이세요)", 또는 "display object in the augmented reality view(증강 현실 뷰 내에 객체를 디스플레이하세요)" 등이라고 하는 알림을 포함함)을 생성하는데, 제2 동작은 제1 동작과 구별된다(20038). 일부 실시예들에서, 디바이스는 동일한 방향으로의 연속적인 스와이프 입력들에 응답하여 적용가능한 동작들의 미리정의된 목록을 반복된다. 예를 들어, 도 15g에서, 도 15f와 관련하여 기술된 요청의 검출에 응답하여, 알림(15042)("selected: rotate clockwise button")을 포함하는 오디오 경보(15040)가 생성된다. 동작 유형을 스위칭하라는 요청에 응답하여 선택된 동작 유형을 명명하는 오디오 출력을 생성하는 것은 스위칭 입력이 성공적으로 수신되었다는 것을 나타내는 피드백을 사용자에게 제공한다. 동작 유형을 스위칭하라는 요청에 응답하여 선택된 동작 유형을 명명하는 오디오 출력을 생성하는 것은 스위칭 입력이 성공적으로 수신되었다는 것을 나타내는 피드백을 사용자에게 제공한다. 개선된 피드백을 사용자에게 제공하는 것은 (예컨대, 추가의 디스플레이된 정보로 디스플레이를 혼란스럽게 하지 않으면서 그리고 사용자가 디스플레이를 볼 것을 요구하지 않으면서 선택된 제어부가 변경되었을 때를 사용자가 인지하게 하는 정보를 제공함으로써) 디바이스의 작동성을 향상시키고, 사용자-디바이스 인터페이스를 더 효율적으로 만드는데, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, prior to displaying the representation of the virtual object in the first user interface area, the device displays a representation of the virtual object in a second user interface area (eg, a staging user interface), wherein the second user interface area is does not include a representation of the field of view of one or more cameras (eg, the second user interface region is a virtual object that is manipulated (eg, It is a staging user interface that can be rotated, resized, and moved) (20034). While displaying the representation of the virtual object in the second user interface area and a first of the plurality of actions applicable to the virtual object is currently selected for the virtual object, the device (eg, the virtual object in the second user interface area) A type of object manipulation applicable to (e.g., resize, rotate, tilt, etc.) or a user interface action applicable to a virtual object within the second user interface area (e.g., return back to 2D user interface, object to augmented reality of the physical environment) detect a request to switch to another action applicable to the virtual object (including a request to switch falling into view) (eg, detecting the request at a location on the touch-sensitive surface corresponding to the first user interface area) (including detecting a swipe input by a contact (eg, including movement of the contact in a horizontal direction)) (20036). For example, as described with respect to FIGS. 15F and 15G , for switching to clockwise rotation control 15038 while staging user interface 6010 is displayed and tilt down control 15022 is currently selected. A swipe input is detected. In response to detecting the request to switch to another action applicable to the virtual object within the second user interface area, the device generates an audio output naming a second action of the plurality of actions applicable to the virtual object (eg, the audio output is "rotate object around x-axis", "resize object", "tilt the object toward the display", or "display object in the augmented reality view" )", etc.), the second action is distinct from the first action (20038). In some embodiments, the device iterates through a predefined list of applicable actions in response to successive swipe inputs in the same direction. For example, in FIG. 15G , in response to detecting the request described with respect to FIG. 15F , an audio alert 15040 including a notification 15042 (“selected: rotate clockwise button”) is generated. Generating an audio output naming the selected action type in response to a request to switch the action type provides feedback to the user indicating that the switching input has been successfully received. Generating an audio output naming the selected action type in response to a request to switch the action type provides feedback to the user indicating that the switching input has been successfully received. Providing improved feedback to the user (e.g., providing information that makes the user aware when a selected control has been changed without confusing the display with additional displayed information and without requiring the user to view the display) to improve the operability of the device) and make the user-device interface more efficient, which additionally enables the user to use the device more quickly and efficiently, thereby reducing the device's power usage and improving battery life. make it

일부 실시예들에서, 제1 사용자 인터페이스 영역 내에 가상 객체의 표현을 디스플레이하기 전에, 하나 이상의 카메라들의 시야의 표현을 포함하지 않는 제2 사용자 인터페이스 영역(예컨대, 스테이징 사용자 인터페이스) 내에 가상 객체의 표현을 디스플레이하는 동안(예컨대, 제2 사용자 인터페이스 영역은 물리적 환경 내의 평면에 대한 고정된 관계를 유지하지 않으면서 가상 객체가 조작(예컨대, 회전, 크기 재설정, 및 이동)될 수 있는 스테이징 사용자 인터페이스임), 디바이스는 하나 이상의 카메라들의 시야의 표현을 포함하는 제1 사용자 인터페이스 영역 내에 가상 객체의 표현을 디스플레이하라는 요청을 검출한다(예컨대, 현재 선택된 동작이 "display the object in the augmented reality view(증강 현실 뷰 내에 객체를 디스플레이하세요)"일 때 그리고 디바이스가 (예컨대, 더블 탭 입력 직전에 수신된) 스와이프 입력에 응답하여 현재 선택된 동작을 명명하는 오디오 알림을 바로 출력한 후에 더블 탭 입력을 검출함)(20040). 예를 들어, 도 15p 내지 도 15v와 관련하여 기술된 바와 같이, 스테이징 사용자 인터페이스(6010)가 디스플레이되고 토글 제어부(6018)가 선택되어 있는 동안, 하나 이상의 카메라들의 시야(6036)의 표현을 포함하는 사용자 인터페이스 영역에 가상 객체(11002)의 표현을 디스플레이하기 위한 더블 탭 입력이 검출된다. 하나 이상의 카메라들의 시야의 표현을 포함하는 제1 사용자 인터페이스 영역 내에 가상 객체의 표현을 디스플레이하라는 요청을 검출하는 것에 응답하여, 디바이스는 하나 이상의 카메라들의 시야 내에서 캡처되는 물리적 환경에서 검출되는 평면과 가상 객체의 표현 사이의 제1 공간적 관계에 따라 제1 사용자 인터페이스 영역 내에 가상 객체의 표현을 디스플레이하고(예컨대, 가상 객체가 증강 현실 뷰 내에 표현된 물리적 환경 내로 낙하될 때 스테이징 뷰 내의 가상 객체의 회전 각 및 크기는 증강 현실 뷰 내에 유지되고, 기울기 각은 시야 내에서 캡처되는 물리적 환경에서 검출되는 평면의 배향에 따라 증강 현실 뷰 내에서 재설정됨); 디바이스는 가상 객체가 하나 이상의 카메라들의 시야 내에서 캡처되는 물리적 환경과 관련하여 증강 현실 뷰 내에 배치되는 것을 나타내는 제4 오디오 경보를 생성한다. 예를 들어, 도 15v와 관련하여 기술된 바와 같이, 하나 이상의 카메라들의 시야(6036)의 표현을 포함하는 사용자 인터페이스 영역 내에 가상 객체(11002)의 표현을 디스플레이하기 위한 입력에 응답하여, 가상 객체(11002)의 표현이 하나 이상의 카메라들의 시야(6036)를 포함하는 사용자 인터페이스 영역 내에 디스플레이되고, 알림(15116)("chair is now projected in the world, 100 percent visible, occupying 10 percent of the screen")을 포함하는 오디오 경보(15114)가 생성된다. 객체를 증강 현실 뷰 내에 배치하라는 요청에 응답하여 오디오 출력을 생성하는 것은 가상 객체를 배치하는 동작이 성공적으로 실행되었다는 것을 나타내는 피드백을 사용자에게 제공한다. 개선된 피드백을 사용자에게 제공하는 것은 (예컨대, 추가의 디스플레이된 정보로 디스플레이를 혼란스럽게 하지 않으면서 그리고 사용자가 디스플레이를 볼 것을 요구하지 않으면서 객체가 증강 현실 뷰 내에 디스플레이된 것을 사용자가 인지하게 하는 정보를 제공함으로써) 디바이스의 작동성을 향상시키고, 사용자-디바이스 인터페이스를 더 효율적으로 만드는데, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, prior to displaying the representation of the virtual object in the first user interface area, a representation of the virtual object in a second user interface area (eg, a staging user interface) that does not include a representation of the field of view of one or more cameras. during display (e.g., the second user interface region is a staging user interface in which virtual objects can be manipulated (e.g., rotated, resized, and moved) without maintaining a fixed relationship to a plane within the physical environment); The device detects a request to display a representation of a virtual object within a first user interface area that includes a representation of the field of view of one or more cameras (eg, a currently selected action is "display the object in the augmented reality view"). display the object)" and after the device outputs an audio notification naming the currently selected action in response to a swipe input (eg, received just prior to the double tap input) (20040) (20040) ). For example, as described in connection with FIGS. 15P-15V , while a staging user interface 6010 is displayed and a toggle control 6018 is selected, a representation of the field of view 6036 of one or more cameras is included. A double tap input to display a representation of the virtual object 11002 in the user interface area is detected. In response to detecting the request to display a representation of the virtual object within the first user interface area that includes a representation of the field of view of the one or more cameras, the device is configured to display a plane and virtual object detected in the physical environment captured within the field of view of the one or more cameras. display a representation of the virtual object in the first user interface area according to a first spatial relationship between the representations of the object (eg, a rotation angle of the virtual object in the staging view when the virtual object is dropped into the physical environment represented in the augmented reality view); and the size is maintained within the augmented reality view, and the tilt angle is reset within the augmented reality view according to the orientation of the plane detected in the physical environment being captured within the field of view); The device generates a fourth audio alert indicating that the virtual object is placed in the augmented reality view relative to the physical environment being captured within the field of view of the one or more cameras. For example, in response to an input to display a representation of the virtual object 11002 within a user interface area that includes a representation of the field of view 6036 of one or more cameras, as described with respect to FIG. 15V , the virtual object ( A representation of 11002 is displayed within a user interface area that includes a field of view 6036 of one or more cameras, and a notification 15116 ("chair is now projected in the world, 100 percent visible, occupying 10 percent of the screen") is displayed. An audio alert 15114 containing Generating the audio output in response to a request to place the object within the augmented reality view provides feedback to the user indicating that the action of placing the virtual object has been successfully executed. Providing improved feedback to the user (eg, allowing the user to perceive that an object is displayed in the augmented reality view without confusing the display with additional displayed information and without requiring the user to view the display) information) improves the operability of the device and makes the user-device interface more efficient, which in addition reduces the device's power usage and battery life by enabling users to use the device more quickly and efficiently. to improve

일부 실시예들에서, 제3 오디오 경보는 하나 이상의 카메라들의 시야의 일부분에 대한 가상 객체의 외관에 관한 정보를 나타낸다(예컨대, 제3 오디오 경보는 "object x is placed in the world, object x is 30% visible, occupying 90% of the screen(객체 x가 실세계에 배치되고, 객체 x가 30% 가시적이고, 스크린의 90%를 차지합니다)"라고 하는 알림을 포함하는 오디오 출력을 포함한다)(20042). 예를 들어, 도 15v와 관련하여 기술된 바와 같이, 알림(15116)("chair is now projected in the world, 100 percent visible, occupying 10 percent of the screen")을 포함하는 오디오 경보(15114)가 생성된다. 디스플레이된 증강 현실 뷰에 대해 가시적인 가상 객체의 외관을 나타내는 오디오 출력을 생성하는 것은 (예컨대, 증강 현실 뷰 내의 객체의 배치가 가상 객체의 외관에 영향을 미치는 정도를 나타내는) 피드백을 사용자에게 제공한다. 개선된 피드백을 사용자에게 제공하는 것은 (예컨대, 추가의 디스플레이된 정보로 디스플레이를 혼란스럽게 하지 않으면서 그리고 사용자가 디스플레이를 볼 것을 요구하지 않으면서 객체가 어떻게 증강 현실 뷰 내에 디스플레이되는지를 사용자가 인지하게 하는 정보를 제공함으로써) 디바이스의 작동성을 향상시키고, 사용자-디바이스 인터페이스를 더 효율적으로 만드는데, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, the third audio alert indicates information regarding the appearance of the virtual object to a portion of the field of view of the one or more cameras (eg, the third audio alert indicates "object x is placed in the world, object x is 30"). (20042) contains an audio output that includes a notification saying "% visible, occupying 90% of the screen" . For example, as described with respect to FIG. 15V , an audio alert 15114 is generated that includes notification 15116 ("chair is now projected in the world, 100 percent visible, occupying 10 percent of the screen"). do. Generating an audio output representative of the appearance of the virtual object visible relative to the displayed augmented reality view provides feedback to the user (eg, indicating the degree to which placement of the object within the augmented reality view affects the appearance of the virtual object). . Providing improved feedback to the user (eg, making the user aware of how objects are displayed within the augmented reality view without confusing the display with additional displayed information and without requiring the user to view the display) It improves the operability of the device (by providing information that improve lifespan

일부 실시예들에서, 디바이스는 하나 이상의 카메라들의 시야 내에서 캡처되는 물리적 환경과 관련하여 증강 현실 뷰 내의 가상 객체의 배치와 함께 촉각적 출력을 생성한다(20044). 예를 들어, 객체가 카메라들의 시야 내에서 검출되는 평면 상에 배치될 때, 디바이스는 평면 상으로의 객체의 랜딩을 나타내는 촉각적 출력을 생성한다. 일부 실시예들에서, 디바이스는 객체의 크기 재설정 동안 객체가 미리정의된 디폴트 크기에 도달할 때 촉각적 출력을 생성한다. 일부 실시예들에서, 디바이스는 가상 객체에 대해 수행되는 각각의 동작에 대한 (예컨대, 미리 설정된 각도만큼의 각각의 회전, 가상 객체를 상이한 평면 상으로 드래그하는 것, 객체를 원래의 배향 및/또는 크기로 재설정하는 것 등에 대한) 촉각적 출력을 생성한다. 일부 실시예들에서, 이러한 촉각적 출력들은 수행되는 동작 및 가상 객체의 결과 상태를 설명하는 대응하는 오디오 경보들에 선행한다. 예를 들어, 도 15v와 관련하여 기술된 바와 같이, 하나 이상의 카메라들의 시야(6036) 내에서의 가상 객체(11002)의 배치와 함께 촉각적 출력(15118)이 생성된다. 하나 이상의 카메라들에 의해 캡처되는 물리적 환경과 관련하여 가상 객체의 배치와 함께 촉각적 출력을 생성하는 것은 (예컨대, 가상 객체를 배치하기 위한 동작이 성공적으로 실행되었다는 것을 나타내는) 피드백을 사용자에게 제공한다. 개선된 피드백을 사용자에게 제공하는 것은 (예컨대, 디스플레이된 정보로 사용자 인터페이스를 혼란스럽게 하지 않으면서 가상 객체의 배치가 발생하였다는 것을 사용자가 인지하게 하는 감각적 정보를 제공함으로써) 디바이스의 작동성을 향상시키고, 사용자-디바이스 인터페이스를 더 효율적으로 만드는데, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, the device generates (20044) a tactile output with the placement of the virtual object in the augmented reality view relative to the physical environment captured within the field of view of the one or more cameras. For example, when an object is placed on a plane that is detected within the camera's field of view, the device generates a tactile output indicating the landing of the object on the plane. In some embodiments, the device generates a tactile output when the object reaches a predefined default size during resizing of the object. In some embodiments, the device is configured for each operation performed on the virtual object (eg, each rotation by a preset angle, dragging the virtual object onto a different plane, original orientation and/or to generate a tactile output (for resizing, etc.). In some embodiments, these tactile outputs are preceded by corresponding audio alerts describing the action being performed and the resulting state of the virtual object. For example, as described with respect to FIG. 15V , a tactile output 15118 is generated with placement of the virtual object 11002 within the field of view 6036 of one or more cameras. Generating a tactile output with placement of the virtual object relative to the physical environment captured by the one or more cameras provides feedback to the user (eg, indicating that an action to place the virtual object has been successfully executed). . Providing the user with improved feedback improves the operability of the device (eg, by providing sensory information that makes the user aware that the placement of the virtual object has occurred without confusing the user interface with the displayed information). and makes the user-device interface more efficient, which additionally reduces the power usage of the device and improves battery life by enabling the user to use the device more quickly and efficiently.

일부 실시예들에서, 디바이스는, 하나 이상의 카메라들의 시야의 표현과 동시에, 제1 사용자 인터페이스 영역 내의 제1 위치에 (예컨대, 제1 사용자 인터페이스 영역 내의 상이한 위치들에 디스플레이된 복수의 제어부들 중) 제1 제어부를 디스플레이한다(20046). 제어부 페이딩 기준들이 충족된다는 (예컨대, 터치 입력이 터치 감응형 표면 상에서 검출되지 않으면서 제1 사용자 인터페이스 영역이 적어도 임계 시간 동안 디스플레이될 때 제어부 페이딩 기준들이 충족된다는) 결정에 따라, 디바이스는 제1 사용자 인터페이스 영역 내에 하나 이상의 카메라들의 시야의 표현의 디스플레이를 유지하는 동안 (예컨대, 제1 사용자 인터페이스 영역 내의 모든 다른 제어부들과 함께) 제1 사용자 인터페이스 영역 내에 제1 제어부를 디스플레이하는 것을 중지한다(예컨대, 사용자가 디바이스를 물리적 환경에 대해 이동시킬 때 제어부들은 재디스플레이되지 않는다)(20048). 제1 사용자 인터페이스 영역 내에 제1 제어부를 디스플레이하지 않으면서 제1 사용자 인터페이스 영역을 디스플레이하는 동안, 디바이스는 제1 사용자 인터페이스 영역 내의 제1 위치에 대응하는 터치 감응형 표면 상의 각각의 위치에서 터치 입력을 검출한다(20050). 터치 입력을 검출하는 것에 응답하여, 디바이스는 제1 제어부에 대응하는 동작을 특정하는 오디오 출력(예컨대, "go back to staging view(스테이징 뷰로 다시 가세요)" 또는 "rotate object around the y-axis(y-축을 중심으로 객체를 회전시키세요)")을 포함하는 제5 오디오 경보를 생성한다(20052). 일부 실시예들에서, 디바이스는 또한, 터치 입력을 검출하는 것에 응답하여 제1 위치에서 제1 제어부를 재디스플레이한다. 일부 실시예들에서, 제어부를 재디스플레이하고 디스플레이 상의 제어부의 통상 위치에서의 터치 입력 시, 제어부를 현재 선택된 제어부로 만드는 것은, 일단 사용자가 디스플레이 상의 제어부들의 위치들을 알면 일련의 스와이프 입력들을 사용하여 이용가능한 제어부들을 통해 스캐닝하는 것보다 빠른, 제어부에 액세스하는 방식을 제공한다. 제어부 페이딩 기준들이 충족된다고 결정하는 것에 응답하여 제어부를 디스플레이하는 것을 자동으로 중지하는 것은 제어부들을 디스플레이하는 것을 중지하는 데 필요한 입력들의 수를 감소시킨다. 동작을 수행하는 데 필요한 입력들의 수를 감소시키는 것은 디바이스의 작동성을 향상시키고 사용자-디바이스 인터페이스를 더 효율적으로 만드는데, 이는 추가적으로, 사용자가 디바이스를 더 신속하고 효율적으로 사용하는 것을 가능하게 함으로써 디바이스의 전력 사용량을 감소시키고 배터리 수명을 개선시킨다.In some embodiments, the device, concurrently with the representation of the field of view of the one or more cameras, at a first location within the first user interface area (eg, among a plurality of controls displayed at different locations within the first user interface area) The first control unit is displayed (20046). Upon determining that the control fading criteria are met (eg, the control fading criteria are satisfied when the first user interface region is displayed for at least a threshold time while no touch input is detected on the touch-sensitive surface), the device configures the first user stop displaying the first control in the first user interface area (eg, along with all other controls in the first user interface area) while maintaining display of the representation of the field of view of the one or more cameras within the interface area (eg, Controls are not redisplayed when the user moves the device relative to the physical environment (20048). While displaying the first user interface area without displaying the first control within the first user interface area, the device receives a touch input at each location on the touch-sensitive surface corresponding to a first location within the first user interface area. detect (20050). In response to detecting the touch input, the device generates an audio output (eg, “go back to staging view” or “rotate object around the y-axis(y)” specifying an action corresponding to the first control. -Rotate the object around its axis)"), generate a fifth audio alert (20052). In some embodiments, the device also redisplays the first control in the first position in response to detecting the touch input. In some embodiments, redisplaying the control and upon touch input at the control's normal location on the display, making the control the currently selected control can be accomplished using a series of swipe inputs once the user knows the locations of the controls on the display. Provides a faster way to access controls than scanning through available controls. Automatically ceasing to display the control in response to determining that the control fading criteria are met reduces the number of inputs required to stop displaying the controls. Reducing the number of inputs required to perform an action improves the operability of the device and makes the user-device interface more efficient, which in addition enables the user to use the device more quickly and efficiently, thereby Reduces power usage and improves battery life.

도 20a 내지 도 20f에서의 동작들이 기술된 특정 순서는 단지 일례이며 기술된 순서가 동작들이 수행될 수 있는 유일한 순서임을 나타내는 것으로 의도되지는 않는다는 것이 이해되어야 한다. 당업자는 본 명세서에 기술된 동작들을 재순서화하는 다양한 방식들을 인식할 것이다. 추가적으로, 본 명세서에 기술된 다른 방법들(예를 들어, 방법들(800, 900, 1000, 16000, 17000, 18000, 20000))과 관련하여 본 명세서에 기술된 다른 프로세스들의 상세사항들이 도 20a 내지 도 20f와 관련하여 전술된 방법(20000)과 유사한 방식으로 또한 적용가능하다는 것이 주목되어야 한다. 예를 들어, 방법(20000)과 관련하여 전술된 접촉들, 입력들, 가상 객체들, 사용자 인터페이스 영역들, 시야들, 촉각적 출력들, 이동들, 및/또는 애니메이션들은 선택적으로, 본 명세서에 기술된 다른 방법들(예컨대, 방법들(800, 900, 1000, 16000, 17000, 18000, 19000))과 관련하여 본 명세서에 기술된 접촉들, 입력들, 가상 객체들, 사용자 인터페이스 영역들, 시야들, 촉각적 출력들, 이동들, 및/또는 애니메이션들의 특성들 중 하나 이상을 갖는다. 간결함을 위해, 이러한 상세사항들은 여기서 반복되지 않는다.It should be understood that the specific order in which the operations in FIGS. 20A-20F are described is merely an example and is not intended to indicate that the described order is the only order in which the operations may be performed. Those skilled in the art will recognize various ways of reordering the operations described herein. Additionally, details of other processes described herein in connection with other methods described herein (eg, methods 800 , 900 , 1000 , 16000 , 17000 , 18000 , 20000 ) are shown in FIGS. 20A- It should be noted that in a manner similar to method 20000 described above with respect to FIG. 20F is also applicable. For example, contacts, inputs, virtual objects, user interface regions, fields of view, tactile outputs, movements, and/or animations described above with respect to method 20000 are optionally described herein. Contacts, inputs, virtual objects, user interface areas, field of view described herein in connection with other methods described (eg, methods 800, 900, 1000, 16000, 17000, 18000, 19000) fields, tactile outputs, movements, and/or animations. For the sake of brevity, these details are not repeated here.

도 8a 내지 도 8e, 도 9a 내지 도 9d, 도 10a 내지 도 10d, 도 16a 내지 도 16g, 도 17a 내지 도 17d, 도 18a 내지 도 18i, 도 19a 내지 도 19h, 및 도 20a 내지 도 20f를 참조하여 전술된 동작들은, 선택적으로, 도 1a 및 도 1b에 도시된 컴포넌트들에 의해 구현된다. 예를 들어, 디스플레이 동작들(802, 806, 902, 906, 910, 1004, 1008, 16004, 17004, 18002, 19002, 20002); 검출 동작들(804, 904, 908, 17006, 18004, 19004, 20004); 변경 동작(910), 수신 동작들(1002, 1006, 16002, 17002); 중지 동작들(17008); 회전 동작(18006); 업데이트 동작(19006); 조정 동작(20006); 및 생성 동작(20006)은, 선택적으로, 이벤트 분류기(170), 이벤트 인식기(180) 및 이벤트 핸들러(190)에 의해 구현된다. 이벤트 분류기(170) 내의 이벤트 모니터(171)는 터치 감응형 디스플레이(112) 상에서의 접촉을 검출하고, 이벤트 디스패처 모듈(174)은 이벤트 정보를 애플리케이션(136-1)에 전달한다. 애플리케이션(136-1)의 각자의 이벤트 인식기(180)는 이벤트 정보를 각자의 이벤트 정의들(186)과 비교하고, 터치 감응형 표면 상의 제1 위치에서의 제1 접촉(또는 디바이스의 회전)이 사용자 인터페이스 상의 객체의 선택, 또는 하나의 배향으로부터 다른 배향으로의 디바이스의 회전과 같은 미리정의된 이벤트 또는 서브-이벤트에 대응하는지 여부를 결정한다. 각각의 미리정의된 이벤트 또는 서브이벤트가 검출될 때, 이벤트 인식기(180)는 이벤트 또는 서브이벤트의 검출과 연관된 이벤트 핸들러(190)를 활성화시킨다. 이벤트 핸들러(190)는, 선택적으로, 데이터 업데이터(176) 또는 객체 업데이터(177)를 이용하거나 호출하여 애플리케이션 내부 상태(192)를 업데이트한다. 일부 실시예들에서, 이벤트 핸들러(190)는 각각의 GUI 업데이터(178)에 액세스하여, 애플리케이션에 의해 디스플레이되는 것을 업데이트한다. 유사하게, 다른 프로세스들이 도 1a 및 도 1b에 도시된 컴포넌트들에 기초하여 어떻게 구현될 수 있는지는 당업자에게 자명할 것이다.8A to 8E, 9A to 9D, 10A to 10D, 16A to 16G, 17A to 17D, 18A to 18I, 19A to 19H, and 20A to 20F. Thus, the above-described operations are optionally implemented by the components shown in FIGS. 1A and 1B . For example, display operations 802, 806, 902, 906, 910, 1004, 1008, 16004, 17004, 18002, 19002, 20002; detection operations 804, 904, 908, 17006, 18004, 19004, 20004; modify operation 910 , receive operations 1002 , 1006 , 16002 , 17002 ; stop operations 17008; rotation operation 18006; update operation 19006; adjustment operation (20006); and create operation 20006 , optionally implemented by event classifier 170 , event recognizer 180 , and event handler 190 . The event monitor 171 in the event sorter 170 detects a contact on the touch-sensitive display 112 , and the event dispatcher module 174 communicates the event information to the application 136 - 1 . The respective event recognizer 180 of the application 136 - 1 compares the event information to the respective event definitions 186 , and determines that a first contact (or rotation of the device) at a first location on the touch-sensitive surface occurs. Determines whether it corresponds to a predefined event or sub-event, such as selection of an object on a user interface, or rotation of a device from one orientation to another. When each predefined event or subevent is detected, the event recognizer 180 activates an event handler 190 associated with the detection of the event or subevent. Event handler 190 optionally uses or calls data updater 176 or object updater 177 to update application internal state 192 . In some embodiments, event handler 190 accesses respective GUI updater 178 to update what is displayed by the application. Similarly, it will be apparent to those skilled in the art how other processes may be implemented based on the components shown in FIGS. 1A and 1B .

전술한 설명은, 설명의 목적을 위해, 특정 실시예들을 참조하여 설명되었다. 그러나, 상기의 예시적인 논의들은 본 발명을 개시된 정확한 형태들로 규명하거나 제한하려는 의도는 아니다. 많은 수정들 및 변형들이 상기 교시 내용들의 관점에서 가능하다. 본 발명의 원리들 및 그의 실제적인 응용들을 가장 잘 설명하여, 그에 의해 당업자들이 본 발명 및 다양한 설명된 실시예들을 고려되는 특정 용도에 적합한 바와 같은 다양한 변형들을 갖고서 가장 잘 이용하는 것을 가능하게 하도록, 실시예들이 선택 및 설명되었다.The foregoing description, for purposes of explanation, has been described with reference to specific embodiments. However, the illustrative discussions above are not intended to be exhaustive or to limit the invention to the precise forms disclosed. Many modifications and variations are possible in light of the above teachings. To best explain the principles of the invention and its practical applications, thereby enabling those skilled in the art to best utilize the invention and various described embodiments with various modifications as are suited to the particular use contemplated, the practice Examples have been selected and described.

Claims (19)

방법으로서,
디스플레이 생성 컴포넌트, 및 터치 감응형 표면을 포함하는 하나 이상의 입력 디바이스들을 갖는 디바이스에서:
상기 디스플레이 생성 컴포넌트에 의해, 디스플레이 상에 제1 사용자 인터페이스 영역 내에 가상 3차원 객체의 제1 시점(perspective)의 표현을 디스플레이하는 단계;
상기 디스플레이 상의 상기 제1 사용자 인터페이스 영역 내에 상기 가상 3차원 객체의 제1 시점의 표현을 디스플레이하는 동안, 상기 가상 3차원 객체의 제1 시점으로부터 가시적이지 않은 상기 가상 3차원 객체의 각각의 일부분을 디스플레이하기 위해 상기 가상 3차원 객체를 상기 디스플레이에 대해 회전시키라는 요청에 대응하는 제1 입력을 검출하는 단계; 및
상기 제1 입력을 검출하는 것에 응답하여:
상기 제1 입력이 제1 축을 중심으로 상기 가상 3차원 객체를 회전시키라는 요청에 대응한다는 결정에 따라, 상기 제1 입력의 크기에 기초하여 결정되는 양만큼 상기 가상 3차원 객체를 상기 제1 축에 대해 회전시켜 상기 가상 3차원 객체의 상기 제1 시점으로부터 가시적이지 않은 상기 가상 3차원 객체의 제1 부분이 디스플레이되고 - 상기 회전은 상기 제1 축에 대한 임계량 초과의 회전만큼의 상기 가상 3차원 객체의 상기 회전을 제한하는 이동에 대한 한계에 의해 제약됨 -;
상기 제1 입력이 상기 제1 축과 상이한 제2 축을 중심으로 상기 가상 3차원 객체를 회전시키라는 요청에 대응한다는 결정에 따라, 상기 제1 입력의 크기에 기초하여 결정되는 양만큼 상기 가상 3차원 객체를 상기 제2 축에 대해 회전시켜 상기 가상 3차원 객체의 상기 제1 시점으로부터 가시적이지 않은 상기 가상 3차원 객체의 제2 부분이 디스플레이되는 단계 - 각각의 임계치 초과의 크기를 갖는 상기 제1 입력의 경우, 상기 디바이스는 상기 임계량 초과의 회전만큼 상기 제2 축에 대해 상기 가상 3차원 객체를 회전시킴 - 를 포함하는, 방법.
As a method,
In a device having one or more input devices comprising a display generating component and a touch-sensitive surface:
displaying, by the display generating component, a representation of a first perspective of a virtual three-dimensional object in a first user interface area on a display;
displaying a respective portion of the virtual 3D object that is not visible from the first viewpoint of the virtual 3D object while displaying a representation of the first viewpoint of the virtual 3D object within the first user interface area on the display detecting a first input corresponding to a request to rotate the virtual three-dimensional object relative to the display to do so; and
In response to detecting the first input:
In response to a determination that the first input corresponds to a request to rotate the virtual three-dimensional object about a first axis, moving the virtual three-dimensional object to the first axis by an amount determined based on the size of the first input. a first portion of the virtual three-dimensional object that is not visible from the first viewpoint of the virtual three-dimensional object by rotating about constrained by a limit on movement that limits said rotation of an object;
Upon determining that the first input corresponds to a request to rotate the virtual three-dimensional object about a second axis different from the first axis, the virtual three-dimensional object by an amount determined based on the size of the first input. rotating an object about the second axis to display a second portion of the virtual three-dimensional object that is not visible from the first viewpoint of the virtual three-dimensional object - the first input having a size above a respective threshold , the device rotates the virtual three-dimensional object about the second axis by a rotation greater than the threshold amount.
제1항에 있어서,
상기 제1 입력을 검출하는 것에 응답하여:
상기 제1 입력이 제1 방향으로 터치 감응형 표면을 가로지르는 접촉의 제1 이동을 포함한다는 그리고 상기 제1 방향으로의 상기 접촉의 제1 이동이 상기 제1 축에 대해 상기 가상 3차원 객체의 상기 제1 시점의 표현을 회전시키기 위한 제1 기준들을 충족한다는 결정에 따라 - 상기 제1 기준들은 상기 제1 기준들이 충족되기 위해 상기 제1 입력이 상기 제1 방향으로의 제1 임계량 초과의 이동을 포함한다는 요건을 포함함 -, 상기 제1 입력이 상기 제1 축을 중심으로 상기 가상 3차원 객체를 회전시키라는 요청에 대응하는 것으로 결정하는 단계; 및
상기 제1 입력이 제2 방향으로 상기 터치 감응형 표면을 가로지르는 상기 접촉의 제2 이동을 포함한다는 그리고 상기 제2 방향으로의 접촉의 제2 이동이 상기 제2 축에 대해 상기 가상 3차원 객체의 상기 제1 시점의 표현을 회전시키기 위한 제2 기준들을 충족한다는 결정에 따라 - 상기 제2 기준들은 상기 제2 기준들이 충족되기 위해 상기 제1 입력이 상기 제2 방향으로의 제2 임계량 초과의 이동을 포함한다는 요건을 포함함 -, 상기 제1 입력이 상기 제2 축을 중심으로 상기 가상 3차원 객체를 회전시키라는 요청에 대응하는 것으로 결정하는 단계 - 상기 제1 임계치는 상기 제2 임계치보다 큼 - 를 포함하는, 방법.
According to claim 1,
In response to detecting the first input:
that the first input comprises a first movement of a contact across a touch-sensitive surface in a first direction and that the first movement of the contact in the first direction is a movement of the virtual three-dimensional object about the first axis. in accordance with a determination that first criteria for rotating the representation of the first viewpoint are satisfied, wherein the first criteria are such that the first input is more than a first threshold amount of movement in the first direction for the first criteria to be satisfied. determining that the first input corresponds to a request to rotate the virtual three-dimensional object about the first axis; and
that the first input comprises a second movement of the contact across the touch-sensitive surface in a second direction and wherein the second movement of the contact in the second direction is the virtual three-dimensional object relative to the second axis. in accordance with a determination that second criteria for rotating the representation of the first viewpoint of comprising a requirement to include movement, determining that the first input corresponds to a request to rotate the virtual three-dimensional object about the second axis, wherein the first threshold is greater than the second threshold. - A method comprising
제1항에 있어서,
상기 제1 축에 대한 상기 가상 3차원 객체의 회전은 상기 제1 입력의 제1 입력 파라미터의 특성 값과 상기 제1 축을 중심으로 하는 상기 가상 3차원 객체에 적용되는 회전량 사이의 제1 대응 정도(degree of correspondence)로 발생하고;
상기 제2 축에 대한 상기 가상 3차원 객체의 회전은 제2 입력의 제1 입력 파라미터의 특성 값과 상기 제2 축을 중심으로 하는 가상 3차원 객체에 적용되는 회전량 사이의 제2 대응 정도로 발생하고;
상기 제1 대응 정도는 상기 제2 대응 정도보다 상기 제1 입력 파라미터에 대한 상기 가상 3차원 객체의 더 작은 회전을 수반하는, 방법.
According to claim 1,
The rotation of the virtual three-dimensional object about the first axis is a first degree of correspondence between a characteristic value of a first input parameter of the first input and an amount of rotation applied to the virtual three-dimensional object about the first axis. occurs with a degree of correspondence;
the rotation of the virtual three-dimensional object about the second axis occurs in a second degree of correspondence between a characteristic value of a first input parameter of a second input and an amount of rotation applied to the virtual three-dimensional object about the second axis, and ;
wherein the first degree of correspondence involves a smaller rotation of the virtual three-dimensional object with respect to the first input parameter than the second degree of correspondence.
제1항에 있어서,
상기 제1 입력의 종료를 검출하는 단계; 및
상기 제1 입력의 종료를 검출한 후, 상기 제1 입력의 종료를 검출하기 전의 상기 제1 입력의 크기에 기초하여 상기 가상 3차원 객체를 계속 회전시키는 단계 - 상기 3차원 객체를 계속 회전시키는 단계는,
상기 가상 3차원 객체가 상기 제1 축에 대해 회전하고 있다는 결정에 따라, 상기 제1 축에 대한 상기 가상 3차원 객체의 회전의 크기에 비례하는 제1 양만큼 상기 제1 축에 대한 상기 객체의 회전을 느리게 하는 단계; 및
상기 가상 3차원 객체가 상기 제2 축에 대해 회전하고 있다는 결정에 따라, 상기 제2 축에 대한 상기 가상 3차원 객체의 회전의 크기에 비례하는, 상기 제1 양과 상이한 제2 양만큼 상기 제2 축에 대한 상기 객체의 회전을 느리게 하는 단계를 포함함 - 를 포함하는, 방법.
According to claim 1,
detecting an end of the first input; and
continuing to rotate the virtual three-dimensional object after detecting the end of the first input based on the magnitude of the first input before detecting the end of the first input - continuing rotating the three-dimensional object Is,
in response to a determination that the virtual three-dimensional object is rotating about the first axis, of the object about the first axis by a first amount proportional to the magnitude of the rotation of the virtual three-dimensional object about the first axis. slowing the rotation; and
according to a determination that the virtual three-dimensional object is rotating about the second axis, the second amount is proportional to a magnitude of the rotation of the virtual three-dimensional object about the second axis, the second amount different from the first amount. and slowing rotation of the object about an axis.
제1항에 있어서,
상기 제1 입력의 종료를 검출하는 단계; 및
상기 제1 입력의 종료를 검출한 후:
상기 가상 3차원 객체가 상기 제1 축에 대해 각각의 회전 임계치를 넘어서 회전되었다는 결정에 따라, 상기 제1 축에 대한 상기 가상 3차원 객체의 회전의 적어도 일부분을 역전시키고;
상기 가상 3차원 객체가 상기 제1 축에 대해 상기 각각의 회전 임계치를 넘어서 회전되지 않았다는 결정에 따라, 상기 제1 축에 대한 상기 가상 3차원 객체의 회전을 역전시키는 것을 보류하는 단계를 포함하는, 방법.
According to claim 1,
detecting an end of the first input; and
After detecting the end of the first input:
in response to a determination that the virtual three-dimensional object has been rotated about the first axis beyond a respective rotation threshold, reverse at least a portion of the rotation of the virtual three-dimensional object about the first axis;
withholding from reversing rotation of the virtual three-dimensional object about the first axis in accordance with a determination that the virtual three-dimensional object has not been rotated about the first axis beyond the respective rotation threshold; Way.
제1항에 있어서,
상기 제1 입력이 상기 제1 축 및 상기 제2 축과 상이한 제3 축을 중심으로 상기 가상 3차원 객체를 회전시키라는 요청에 대응한다는 결정에 따라, 상기 제3 축에 대해 상기 가상 3차원 객체를 회전시키는 것을 보류하는, 방법.
According to claim 1,
according to a determination that the first input corresponds to a request to rotate the virtual three-dimensional object about a third axis different from the first axis and the second axis, to rotate the virtual three-dimensional object about the third axis. How to withhold spinning.
제1항에 있어서,
상기 제1 사용자 인터페이스 영역 내에 상기 가상 3차원 객체의 제1 시점의 표현을 디스플레이하는 동안 상기 가상 3차원 객체에 의해 드리워진 그림자의 표현을 디스플레이하는 단계; 및
상기 제1 축 및/또는 제2 축에 대한 상기 가상 3차원 객체의 회전에 따라 상기 그림자의 표현의 형상을 가변시키는 단계를 포함하는, 방법.
According to claim 1,
displaying a representation of a shadow cast by the virtual three-dimensional object while displaying a representation of a first viewpoint of the virtual three-dimensional object within the first user interface area; and
varying the shape of the representation of the shadow according to rotation of the virtual three-dimensional object about the first axis and/or the second axis.
제7항에 있어서,
상기 제1 사용자 인터페이스 영역 내에서 상기 가상 3차원 객체를 회전시키는 동안:
상기 가상 3차원 객체가 상기 가상 3차원 객체의 미리정의된 하부를 드러내는 제2 시점으로 디스플레이된다는 결정에 따라, 상기 가상 3차원 객체의 제2 시점의 표현으로 상기 그림자의 표현을 디스플레이하는 것을 보류하는 단계를 포함하는, 방법.
8. The method of claim 7,
while rotating the virtual three-dimensional object within the first user interface area:
In accordance with a determination that the virtual three-dimensional object is displayed with a second viewpoint revealing a predefined lower portion of the virtual three-dimensional object, withholding displaying the representation of the shadow as a representation of the second viewpoint of the virtual three-dimensional object A method comprising steps.
제1항에 있어서,
상기 제1 사용자 인터페이스 영역 내에서 상기 가상 3차원 객체를 회전시킨 후, 상기 제1 사용자 인터페이스 영역 내에서 상기 가상 3차원 객체를 재설정하라는 요청에 대응하는 제2 입력을 검출하는 단계; 및
상기 제2 입력을 검출하는 것에 응답하여, 상기 제1 사용자 인터페이스 영역 내에서 상기 가상 3차원 객체의 미리정의된 원래 시점의 표현을 디스플레이하는 단계를 포함하는, 방법.
According to claim 1,
after rotating the virtual 3D object within the first user interface area, detecting a second input corresponding to a request to reset the virtual 3D object within the first user interface area; and
in response to detecting the second input, displaying a representation of a predefined original viewpoint of the virtual three-dimensional object within the first user interface area.
제1항에 있어서,
상기 제1 사용자 인터페이스 영역 내에 상기 가상 3차원 객체의 상기 제1 시점을 디스플레이하는 동안, 상기 가상 3차원 객체를 크기 재설정하라는 요청에 대응하는 제3 입력을 검출하는 단계; 및
상기 제3 입력을 검출하는 것에 응답하여, 상기 제3 입력의 크기에 따라 상기 제1 사용자 인터페이스 영역 내의 상기 가상 3차원 객체의 상기 제1 시점의 표현의 크기를 조정하는 단계를 포함하는, 방법.
According to claim 1,
detecting a third input corresponding to a request to resize the virtual three-dimensional object while displaying the first viewpoint of the virtual three-dimensional object within the first user interface area; and
in response to detecting the third input, resizing the representation of the first viewpoint of the virtual three-dimensional object within the first user interface area according to the magnitude of the third input.
제10항에 있어서,
상기 제1 사용자 인터페이스 영역 내의 상기 가상 3차원 객체의 상기 제1 시점의 표현의 크기를 조정하는 동안, 상기 가상 3차원 객체의 상기 제1 시점의 표현의 크기가 상기 가상 3차원 객체의 상기 제1 시점의 상기 표현의 미리정의된 디폴트 디스플레이 크기에 도달했다는 것을 검출하는 단계; 및
상기 가상 3차원 객체의 상기 제1 시점의 표현의 크기가 상기 가상 3차원 객체의 상기 제1 시점의 표현의 미리정의된 디폴트 디스플레이 크기에 도달했다는 것을 검출하는 것에 응답하여, 상기 가상 3차원 객체가 상기 미리정의된 디폴트 디스플레이 크기로 디스플레이되는 것을 나타내기 위해 촉각적 출력을 생성하는 단계를 포함하는, 방법.
11. The method of claim 10,
while adjusting the size of the representation of the first viewpoint of the virtual 3D object within the first user interface area, the size of the representation of the first viewpoint of the virtual 3D object is determined by the size of the representation of the first viewpoint of the virtual 3D object. detecting that a predefined default display size of the representation of a viewpoint has been reached; and
In response to detecting that the size of the representation of the first viewpoint of the virtual three-dimensional object has reached a predefined default display size of the representation of the first viewpoint of the virtual three-dimensional object, the virtual three-dimensional object is generating a tactile output to indicate display at the predefined default display size.
제1항에 있어서, 상기 디바이스는 하나 이상의 카메라들을 포함하고, 상기 방법은,
상기 제1 사용자 인터페이스 영역 내의 상기 가상 3차원 객체의 제3 시점의 표현을 디스플레이하는 동안, 하나 이상의 카메라들의 시야를 포함하는 제2 사용자 인터페이스 영역 내에 상기 가상 3차원 객체를 디스플레이하라는 요청에 대응하는 제4 입력을 검출하는 단계; 및
상기 제4 입력을 검출하는 것에 응답하여, 상기 디스플레이 생성 컴포넌트를 통해, 상기 제2 사용자 인터페이스 영역에 포함되는 상기 하나 이상의 카메라들의 시야의 적어도 일부분 위에 상기 가상 3차원 객체의 표현을 디스플레이하는 단계 - 상기 하나 이상의 카메라들의 시야는 상기 하나 이상의 카메라들이 위치되는 물리적 환경의 뷰이고, 상기 가상 3차원 객체의 표현을 디스플레이하는 단계는,
상기 가상 3차원 객체를 상기 제1 축을 중심으로 미리정의된 각도로 회전시키는 단계; 및
상기 제2 축에 대한 상기 가상 3차원 객체의 현재 각도를 유지하는 단계를 포함함 - 를 포함하는, 방법.
The method of claim 1 , wherein the device comprises one or more cameras, the method comprising:
a second corresponding to a request to display the virtual three-dimensional object in a second user interface area comprising a field of view of one or more cameras while displaying a representation of a third viewpoint of the virtual three-dimensional object within the first user interface area 4 detecting the input; and
in response to detecting the fourth input, displaying, via the display generating component, a representation of the virtual three-dimensional object over at least a portion of the field of view of the one or more cameras included in the second user interface area; The field of view of the one or more cameras is a view of the physical environment in which the one or more cameras are located, and displaying the representation of the virtual three-dimensional object comprises:
rotating the virtual three-dimensional object at a predefined angle about the first axis; and
maintaining a current angle of the virtual three-dimensional object with respect to the second axis.
제1항에 있어서,
상기 제1 사용자 인터페이스 영역 내에 상기 가상 3차원 객체의 제4 시점의 표현을 디스플레이하는 동안, 상기 가상 3차원 객체의 2차원 표현을 포함하는 2차원 사용자 인터페이스로 복귀하라는 요청에 대응하는 제5 입력을 검출하는 단계; 및
상기 제5 입력을 검출하는 것에 응답하여:
상기 가상 3차원 객체의 2차원 표현에 대응하는 상기 가상 3차원 객체의 시점을 보여주도록 상기 가상 3차원 객체를 회전시키고;
상기 가상 3차원 객체가 상기 가상 3차원 객체의 2차원 표현에 대응하는 상기 각각의 시점을 보여주도록 회전된 후에 상기 가상 3차원 객체의 2차원 표현을 디스플레이하는 단계를 포함하는, 방법.
According to claim 1,
receiving a fifth input corresponding to a request to return to a two-dimensional user interface comprising a two-dimensional representation of the virtual three-dimensional object while displaying a representation of a fourth viewpoint of the virtual three-dimensional object within the first user interface area; detecting; and
In response to detecting the fifth input:
rotating the virtual three-dimensional object to show a viewpoint of the virtual three-dimensional object corresponding to the two-dimensional representation of the virtual three-dimensional object;
displaying the two-dimensional representation of the virtual three-dimensional object after the virtual three-dimensional object has been rotated to show the respective viewpoints corresponding to the two-dimensional representation of the virtual three-dimensional object.
제1항에 있어서,
상기 가상 3차원 객체의 제1 시점의 표현을 디스플레이하기 전에, 각각의 시점으로부터의 상기 가상 3차원 객체의 뷰의 표현을 포함하는 상기 가상 3차원 객체의 표현을 포함하는 사용자 인터페이스를 디스플레이하는 단계;
상기 가상 3차원 객체의 표현을 디스플레이하는 동안, 상기 가상 3차원 객체를 디스플레이하라는 요청을 검출하는 단계; 및
상기 가상 3차원 객체를 디스플레이하라는 상기 요청을 검출하는 것에 응답하여, 상기 가상 3차원 객체의 표현의 디스플레이를 상기 가상 3차원 객체의 표현의 각각의 시점과 매칭하도록 회전된 상기 가상 3차원 객체로 대체하는 단계를 포함하는, 방법.
According to claim 1,
before displaying a representation of the first viewpoint of the virtual 3D object, displaying a user interface comprising a representation of the virtual 3D object including a representation of the view of the virtual 3D object from each viewpoint;
detecting, while displaying a representation of the virtual three-dimensional object, a request to display the virtual three-dimensional object; and
In response to detecting the request to display the virtual three-dimensional object, replacing the display of the representation of the virtual three-dimensional object with the virtual three-dimensional object rotated to match respective viewpoints of the representation of the virtual three-dimensional object A method comprising the step of
제1항에 있어서,
상기 제1 사용자 인터페이스를 디스플레이하기 전에, 상기 가상 3차원 객체의 2차원 표현을 포함하는 2차원 사용자 인터페이스를 디스플레이하는 단계;
상기 가상 3차원 객체의 2차원 표현을 포함하는 상기 2차원 사용자 인터페이스를 디스플레이하는 동안, 상기 가상 3차원 객체의 2차원 표현에 대응하는 상기 터치 감응형 표면 상의 위치에서 미리보기 기준들을 충족하는 터치 입력의 제1 부분을 검출하는 단계; 및
상기 미리보기 기준들을 충족하는 상기 터치 입력의 제1 부분을 검출하는 것에 응답하여, 상기 가상 3차원 객체의 2차원 표현보다 큰 상기 가상 3차원 객체의 미리보기를 디스플레이하는 단계를 포함하는, 방법.
According to claim 1,
before displaying the first user interface, displaying a two-dimensional user interface including a two-dimensional representation of the virtual three-dimensional object;
While displaying the two-dimensional user interface including the two-dimensional representation of the virtual three-dimensional object, a touch input that meets preview criteria at a location on the touch-sensitive surface corresponding to the two-dimensional representation of the virtual three-dimensional object. detecting a first portion of and
and in response to detecting the first portion of the touch input that meets the preview criteria, displaying a preview of the virtual three-dimensional object that is larger than the two-dimensional representation of the virtual three-dimensional object.
제15항에 있어서,
상기 가상 3차원 객체의 미리보기를 디스플레이하는 동안, 상기 터치 입력의 제2 부분을 검출하는 단계; 및
상기 터치 입력의 제2 부분을 검출하는 것에 응답하여:
상기 터치 입력의 제2 부분이 메뉴 디스플레이 기준들을 충족한다는 결정에 따라, 상기 가상 객체와 연관된 복수의 동작들에 대응하는 복수의 선택가능한 옵션들을 디스플레이하고;
상기 터치 입력의 제2 부분이 스테이징 기준들을 충족한다는 결정에 따라, 상기 가상 3차원 객체의 2차원 표현을 포함하는 상기 2차원 사용자 인터페이스의 디스플레이를 상기 가상 3차원 객체를 포함하는 상기 제1 사용자 인터페이스로 대체하는 단계를 포함하는, 방법.
16. The method of claim 15,
detecting a second portion of the touch input while displaying a preview of the virtual three-dimensional object; and
In response to detecting the second portion of the touch input:
according to a determination that the second portion of the touch input meets menu display criteria, display a plurality of selectable options corresponding to a plurality of actions associated with the virtual object;
In accordance with a determination that the second portion of the touch input meets staging criteria, display of the two-dimensional user interface including a two-dimensional representation of the virtual three-dimensional object the first user interface including the virtual three-dimensional object A method comprising replacing with
제1항에 있어서, 상기 제1 사용자 인터페이스는 복수의 제어부들을 포함하고, 상기 방법은,
상기 제1 사용자 인터페이스를 디스플레이하기 전에, 상기 가상 3차원 객체의 2차원 표현을 포함하는 2차원 사용자 인터페이스를 디스플레이하는 단계; 및
상기 제1 사용자 인터페이스 내에 상기 가상 3차원 객체를 디스플레이하라는 요청을 검출하는 것에 응답하여:
상기 가상 3차원 객체와 연관된 한 세트의 하나 이상의 제어부들을 디스플레이하지 않으면서 상기 제1 사용자 인터페이스 내에 상기 가상 3차원 객체를 디스플레이하고;
상기 제1 사용자 인터페이스 내에 상기 가상 3차원 객체를 디스플레이한 후, 상기 한 세트의 하나 이상의 제어부들을 디스플레이하는 단계를 포함하는, 방법.
The method of claim 1 , wherein the first user interface comprises a plurality of controls, the method comprising:
before displaying the first user interface, displaying a two-dimensional user interface including a two-dimensional representation of the virtual three-dimensional object; and
In response to detecting a request to display the virtual three-dimensional object within the first user interface:
displaying the virtual three-dimensional object in the first user interface without displaying a set of one or more controls associated with the virtual three-dimensional object;
after displaying the virtual three-dimensional object in the first user interface, displaying the set of one or more controls.
컴퓨터 시스템으로서,
디스플레이 생성 컴포넌트;
터치 감응형 표면을 포함하는 하나 이상의 입력 디바이스들;
하나 이상의 프로세서들; 및
상기 하나 이상의 프로세서들에 의해 실행되도록 구성된 하나 이상의 프로그램들을 저장하는 메모리를 포함하며, 상기 하나 이상의 프로그램들은, 제1항 내지 제17항 중 어느 한 항의 방법을 수행하기 위한 명령어들을 포함하는, 컴퓨터 시스템.
A computer system comprising:
display creation component;
one or more input devices comprising a touch-sensitive surface;
one or more processors; and
A computer system comprising a memory storing one or more programs configured to be executed by the one or more processors, the one or more programs comprising instructions for performing the method of any one of claims 1-17. .
하나 이상의 프로그램들을 저장하는 비일시적인 컴퓨터 판독가능 저장 매체로서, 상기 하나 이상의 프로그램들은, 디스플레이 생성 컴포넌트, 및 터치 감응형 표면을 포함하는 하나 이상의 입력 디바이스들을 갖는 컴퓨터 시스템에 의해 실행될 때, 상기 컴퓨터 시스템으로 하여금, 제1항 내지 제17항 중 어느 한 항의 방법을 수행하게 하는 명령어들을 포함하는, 비일시적인 컴퓨터 판독가능 저장 매체.
A non-transitory computer-readable storage medium storing one or more programs, the one or more programs, when executed by a computer system having a display generating component and one or more input devices comprising a touch-sensitive surface, to the computer system A non-transitory computer-readable storage medium comprising instructions that cause the method of any one of claims 1 to 17 to be performed.
KR1020227015606A 2018-01-24 2019-01-23 Devices, methods, and graphical user interfaces for system-wide behavior for 3d models KR20220065899A (en)

Applications Claiming Priority (10)

Application Number Priority Date Filing Date Title
US201862621529P 2018-01-24 2018-01-24
US62/621,529 2018-01-24
US201862679951P 2018-06-03 2018-06-03
US62/679,951 2018-06-03
DKPA201870346 2018-06-11
DKPA201870346A DK201870346A1 (en) 2018-01-24 2018-06-11 Devices, Methods, and Graphical User Interfaces for System-Wide Behavior for 3D Models
US16/145,035 US11099707B2 (en) 2018-01-24 2018-09-27 Devices, methods, and graphical user interfaces for system-wide behavior for 3D models
US16/145,035 2018-09-27
PCT/US2019/014791 WO2019147699A2 (en) 2018-01-24 2019-01-23 Devices, methods, and graphical user interfaces for system-wide behavior for 3d models
KR1020207024313A KR102397481B1 (en) 2018-01-24 2019-01-23 Devices, methods, and graphical user interfaces for system-wide behavior for 3D models

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020207024313A Division KR102397481B1 (en) 2018-01-24 2019-01-23 Devices, methods, and graphical user interfaces for system-wide behavior for 3D models

Publications (1)

Publication Number Publication Date
KR20220065899A true KR20220065899A (en) 2022-05-20

Family

ID=67395660

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020207024313A KR102397481B1 (en) 2018-01-24 2019-01-23 Devices, methods, and graphical user interfaces for system-wide behavior for 3D models
KR1020227015606A KR20220065899A (en) 2018-01-24 2019-01-23 Devices, methods, and graphical user interfaces for system-wide behavior for 3d models

Family Applications Before (1)

Application Number Title Priority Date Filing Date
KR1020207024313A KR102397481B1 (en) 2018-01-24 2019-01-23 Devices, methods, and graphical user interfaces for system-wide behavior for 3D models

Country Status (4)

Country Link
JP (3) JP7039714B2 (en)
KR (2) KR102397481B1 (en)
AU (3) AU2019212150B2 (en)
WO (1) WO2019147699A2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3993449A1 (en) * 2020-11-02 2022-05-04 Inter IKEA Systems B.V. Method and device for communicating a soundscape in an environment
KR102442715B1 (en) * 2020-12-02 2022-09-14 한국전자기술연구원 Apparatus and method for reproducing augmented reality image based on divided rendering image

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3761106B2 (en) * 1996-03-04 2006-03-29 シャープ株式会社 Image forming apparatus having magnification setting device
JP2004046326A (en) 2002-07-09 2004-02-12 Dainippon Screen Mfg Co Ltd Device and method for displaying picture and program
JP2007047294A (en) 2005-08-08 2007-02-22 Nippon Hoso Kyokai <Nhk> Stereoscopic image display device
US20080071559A1 (en) * 2006-09-19 2008-03-20 Juha Arrasvuori Augmented reality assisted shopping
US9244562B1 (en) * 2009-07-31 2016-01-26 Amazon Technologies, Inc. Gestures and touches on force-sensitive input devices
US10198854B2 (en) * 2009-08-14 2019-02-05 Microsoft Technology Licensing, Llc Manipulation of 3-dimensional graphical objects for view in a multi-touch display
JP2012089112A (en) 2010-09-22 2012-05-10 Nikon Corp Image display device
KR101852428B1 (en) 2011-03-09 2018-04-26 엘지전자 주식회사 Mobile twrminal and 3d object control method thereof
JP5966834B2 (en) 2012-02-29 2016-08-10 株式会社Jvcケンウッド Image processing apparatus, image processing method, and image processing program
US20130234926A1 (en) * 2012-03-07 2013-09-12 Qualcomm Incorporated Visually guiding motion to be performed by a user
DE112013002381T5 (en) * 2012-05-09 2015-02-26 Apple Inc. Apparatus, method and graphical user interface for moving and dropping a user interface object
JP6214981B2 (en) 2012-10-05 2017-10-18 株式会社ファイン Architectural image display device, architectural image display method, and computer program
US20140282220A1 (en) * 2013-03-14 2014-09-18 Tim Wantland Presenting object models in augmented reality images
US9286727B2 (en) * 2013-03-25 2016-03-15 Qualcomm Incorporated System and method for presenting true product dimensions within an augmented real-world setting
US9245387B2 (en) * 2013-04-12 2016-01-26 Microsoft Technology Licensing, Llc Holographic snap grid
KR101775591B1 (en) * 2013-06-11 2017-09-06 퀄컴 인코포레이티드 Interactive and automatic 3-d object scanning method for the purpose of database creation
JP2015001875A (en) * 2013-06-17 2015-01-05 ソニー株式会社 Image processing apparatus, image processing method, program, print medium, and print-media set
US10175483B2 (en) * 2013-06-18 2019-01-08 Microsoft Technology Licensing, Llc Hybrid world/body locked HUD on an HMD
JP5937128B2 (en) 2014-03-17 2016-06-22 富士フイルム株式会社 Augmented reality providing system, method and program
US9436369B2 (en) * 2014-09-26 2016-09-06 Disney Enterprises, Inc. Touch interface for precise rotation of an object
JP6292344B2 (en) 2015-03-23 2018-03-14 株式会社村田製作所 Touch input device
US10176641B2 (en) * 2016-03-21 2019-01-08 Microsoft Technology Licensing, Llc Displaying three-dimensional virtual objects based on field of view

Also Published As

Publication number Publication date
JP7039714B2 (en) 2022-03-22
AU2022201389B2 (en) 2023-10-12
AU2024200149A1 (en) 2024-01-25
AU2019212150A1 (en) 2020-08-20
AU2019212150B2 (en) 2021-12-16
JP7397899B2 (en) 2023-12-13
JP2024026250A (en) 2024-02-28
WO2019147699A3 (en) 2019-09-19
WO2019147699A8 (en) 2020-08-06
WO2019147699A2 (en) 2019-08-01
AU2022201389A1 (en) 2022-03-24
KR20200110788A (en) 2020-09-25
JP2022091798A (en) 2022-06-21
KR102397481B1 (en) 2022-05-12
JP2021518935A (en) 2021-08-05

Similar Documents

Publication Publication Date Title
US20210333979A1 (en) Devices, Methods, and Graphical User Interfaces for System-Wide Behavior for 3D Models
KR102543095B1 (en) Devices and methods for measuring using augmented reality
US11818455B2 (en) Devices, methods, and graphical user interfaces for depth-based annotation
KR102540163B1 (en) Systems, methods, and graphical user interfaces for interacting with augmented and virtual reality environments
US20230386146A1 (en) Systems, Methods, and Graphical User Interfaces for Displaying and Manipulating Virtual Objects in Augmented Reality Environments
JP6745852B2 (en) Devices, methods, and graphical user interfaces for system-wide behavior of 3D models
AU2019101597A4 (en) Devices, methods, and graphical user interfaces for system-wide behavior for 3D models
JP7397899B2 (en) Devices, methods and graphical user interfaces for system-wide behavior of 3D models

Legal Events

Date Code Title Description
A107 Divisional application of patent
E902 Notification of reason for refusal
E902 Notification of reason for refusal