[go: up one dir, main page]

US11281421B1 - Enhancing multiple monitor arrangements - Google Patents

Enhancing multiple monitor arrangements Download PDF

Info

Publication number
US11281421B1
US11281421B1 US17/196,326 US202117196326A US11281421B1 US 11281421 B1 US11281421 B1 US 11281421B1 US 202117196326 A US202117196326 A US 202117196326A US 11281421 B1 US11281421 B1 US 11281421B1
Authority
US
United States
Prior art keywords
monitor
monitors
transition
scale
adjacent
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
US17/196,326
Inventor
Robert J. Kapinos
Scott Wentao Li
Robert James Norton, JR.
Russell Speight VanBlon
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Lenovo Switzerland International GmbH
Original Assignee
Lenovo Singapore Pte Ltd
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
Application filed by Lenovo Singapore Pte Ltd filed Critical Lenovo Singapore Pte Ltd
Priority to US17/196,326 priority Critical patent/US11281421B1/en
Assigned to LENOVO (SINGAPORE) PTE. LTD. reassignment LENOVO (SINGAPORE) PTE. LTD. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: KAPINOS, ROBERT J., LI, SCOTT WENTAO, NORTON, ROBERT J., VANBLON, RUSSELL SPEIGHT
Priority to EP22150989.6A priority patent/EP4057113A1/en
Priority to CN202210221100.1A priority patent/CN114924699B/en
Application granted granted Critical
Publication of US11281421B1 publication Critical patent/US11281421B1/en
Assigned to LENOVO PC INTERNATIONAL LIMITED reassignment LENOVO PC INTERNATIONAL LIMITED ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: LENOVO (SINGAPORE) PTE LTD.
Assigned to LENOVO SWITZERLAND INTERNATIONAL GMBH reassignment LENOVO SWITZERLAND INTERNATIONAL GMBH ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: LENOVO PC INTERNATIONAL LIMITED
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • G06F3/1423Digital output to display device ; Cooperation and interconnection of the display device with other functional units controlling a plurality of local displays, e.g. CRT and flat panel display
    • G06F3/1446Digital output to display device ; Cooperation and interconnection of the display device with other functional units controlling a plurality of local displays, e.g. CRT and flat panel display display composed of modules, e.g. video walls
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • G06F3/1407General aspects irrespective of display type, e.g. determination of decimal point position, display with fixed or driving decimal point, suppression of non-significant zeros
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/038Control and interface arrangements therefor, e.g. drivers or device-embedded control circuitry
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • G06F3/1423Digital output to display device ; Cooperation and interconnection of the display device with other functional units controlling a plurality of local displays, e.g. CRT and flat panel display
    • G06F3/1438Digital output to display device ; Cooperation and interconnection of the display device with other functional units controlling a plurality of local displays, e.g. CRT and flat panel display using more than one graphics controller
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • G06F3/147Digital output to display device ; Cooperation and interconnection of the display device with other functional units using display panels
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/08Cursor circuits
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/36Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
    • G09G5/37Details of the operation on graphic patterns
    • G09G5/373Details of the operation on graphic patterns for modifying the size of the graphic pattern
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/36Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
    • G09G5/38Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory with means for controlling the display position
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2300/00Aspects of the constitution of display devices
    • G09G2300/02Composition of display devices
    • G09G2300/026Video wall, i.e. juxtaposition of a plurality of screens to create a display screen of bigger dimensions
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2340/00Aspects of display data processing
    • G09G2340/04Changes in size, position or resolution of an image
    • G09G2340/0407Resolution change, inclusive of the use of different resolutions for different screen areas
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2340/00Aspects of display data processing
    • G09G2340/04Changes in size, position or resolution of an image
    • G09G2340/0464Positioning
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2354/00Aspects of interface with display user
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2356/00Detection of the display position w.r.t. other display screens

Definitions

  • the subject matter disclosed herein relates to monitor arrangements and more particularly relates to enhancing multiple monitor arrangements.
  • a method for enhancing multiple monitor arrangements receives monitor data for a plurality of monitors.
  • the monitor data for each monitor includes a physical dimension, a monitor resolution, a monitor position, and a scale factor.
  • the method receives a transition preference specifying one of a physical parameter preference and a logical parameter preference for each monitor-to-monitor boundary of the plurality of monitors.
  • the method calculates a display transition between adjacent monitors based on the monitor data and the transition preference.
  • An apparatus and program product also perform the functions of the method.
  • FIG. 1A is a schematic block diagram illustrating one embodiment of multiple monitors
  • FIG. 2A is a schematic block diagram illustrating one embodiment of a monitor database
  • FIG. 2B is a schematic block diagram illustrating one embodiment of transition data
  • FIG. 2D is a schematic block diagram illustrating one embodiment of a transition preference
  • FIG. 2E is a schematic block diagram illustrating one embodiment of a display transition
  • FIG. 3 is a schematic diagram illustrating one embodiment of multiple monitors
  • FIG. 4 is a schematic block diagram illustrating one embodiment of a computer
  • FIG. 5 is a schematic flow chart diagram illustrating one embodiment of a monitor enhancement method.
  • embodiments may be embodied as a system, method or program product. Accordingly, embodiments may take the form of an entirely hardware embodiment, an entirely software embodiment (including firmware, resident software, micro-code, etc.) or an embodiment combining software and hardware aspects that may all generally be referred to herein as a “circuit,” “module” or “system.” Furthermore, embodiments may take the form of a program product embodied in one or more computer readable storage devices storing machine readable code, computer readable code, and/or program code, referred hereafter as code. The storage devices may be tangible, non-transitory, and/or non-transmission. The storage devices may not embody signals. In a certain embodiment, the storage devices only employ signals for accessing code.
  • modules may be implemented as a hardware circuit comprising custom VLSI circuits or gate arrays, off-the-shelf semiconductors such as logic chips, transistors, or other discrete components.
  • a module may also be implemented in programmable hardware devices such as field programmable gate arrays, programmable array logic, programmable logic devices or the like.
  • Modules may also be implemented in code and/or software for execution by various types of processors.
  • An identified module of code may, for instance, comprise one or more physical or logical blocks of executable code which may, for instance, be organized as an object, procedure, or function. Nevertheless, the executables of an identified module need not be physically located together but may comprise disparate instructions stored in different locations which, when joined logically together, comprise the module and achieve the stated purpose for the module.
  • a module of code may be a single instruction, or many instructions, and may even be distributed over several different code segments, among different programs, and across several memory devices.
  • operational data may be identified and illustrated herein within modules and may be embodied in any suitable form and organized within any suitable type of data structure. The operational data may be collected as a single data set or may be distributed over different locations including over different computer readable storage devices.
  • the software portions are stored on one or more computer readable storage devices.
  • a storage device More specific examples (a non-exhaustive list) of the storage device would include the following: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a random-access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or Flash memory), a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
  • a computer readable storage medium may be any tangible medium that can contain or store a program for use by or in connection with an instruction execution system, apparatus, or device.
  • Code for carrying out operations for embodiments may be written in any combination of one or more programming languages including an object-oriented programming language such as Python, Ruby, R, Java, Java Script, Smalltalk, C++, C sharp, Lisp, Clojure, PHP, or the like, and conventional procedural programming languages, such as the “C” programming language, or the like, and/or machine languages such as assembly languages.
  • the code may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server.
  • the remote computer may be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or the connection may be made to an external computer (for example, through the Internet using an Internet Service Provider).
  • LAN local area network
  • WAN wide area network
  • Internet Service Provider an Internet Service Provider
  • the embodiments may transmit data between electronic devices.
  • the embodiments may further convert the data from a first format to a second format, including converting the data from a non-standard format to a standard format and/or converting the data from the standard format to a non-standard format.
  • the embodiments may modify, update, and/or process the data.
  • the embodiments may store the received, converted, modified, updated, and/or processed data.
  • the embodiments may provide remote access to the data including the updated data.
  • the embodiments may make the data and/or updated data available in real time.
  • the embodiments may generate and transmit a message based on the data and/or updated data in real time.
  • the embodiments may securely communicate encrypted data.
  • the embodiments may organize data for efficient validation. In addition, the embodiments may validate the data in response to an action and/or a lack of an action.
  • the code may also be stored in a storage device that can direct a computer, other programmable data processing apparatus, or other devices to function in a particular manner, such that the instructions stored in the storage device produce an article of manufacture including instructions which implement the function/act specified in the schematic flowchart diagrams and/or schematic block diagrams block or blocks.
  • the code may also be loaded onto a computer, other programmable data processing apparatus, or other devices to cause a series of operational steps to be performed on the computer, other programmable apparatus or other devices to produce a computer implemented process such that the code which execute on the computer or other programmable apparatus provide processes for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks.
  • each block in the schematic flowchart diagrams and/or schematic block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions of the code for implementing the specified logical function(s).
  • FIG. 1A is a schematic block diagram illustrating one embodiment of multiple monitors 100 .
  • a computer 105 presents information via a plurality of monitors 110 .
  • the information presented by the monitors 110 should be coordinated across the monitors 110 to increase usability.
  • FIG. 1B is a schematic diagram illustrating one embodiment of the multiple monitors 110 of FIG. 1A .
  • the monitors 110 are of different sizes and relative positions.
  • the adjacent pixels 120 a - c of the monitors 110 a - c may be of different sizes for each monitor.
  • the first monitor 110 a has an adjacent pixel 120 a in the lower right corner
  • the second monitor 110 b has an adjacent pixel 120 b and an upper right corner
  • the third monitor 110 c has an adjacent pixel 120 c in an upper left corner.
  • the physical dimensions of each monitor 110 is different.
  • the monitors 110 are also adjacent across both vertical and horizontal boundaries.
  • determining display transitions between the adjacent monitors 110 was primarily a manual process that depended on trial and error.
  • the embodiments calculate the display transitions between the adjacent monitors 110 to efficiently and effectively configure the monitors 110 to present information as will be described hereafter.
  • FIG. 2A is a schematic block diagram illustrating one embodiment of a monitor database 200 .
  • the monitor database 200 may store monitor data 201 for each of the plurality of monitors 110 .
  • the monitor database 200 may be organized as a data structure in a memory.
  • the monitor database 200 includes monitor data 201 for each monitor 110 .
  • the monitor data 201 is described in FIG. 2C .
  • FIG. 2B is a schematic block diagram illustrating one embodiment of transition data 220 .
  • the transition data 220 stores transition preferences 221 and display transitions 225 for each of a plurality of monitors 110 .
  • the transition preference 221 may specify one of a physical parameter preference and the logical parameter preference for each monitor-to-monitor boundary of the plurality of monitors 110 .
  • a monitor 110 may present information based primarily and/or exclusively on a physical scale.
  • a monitor 110 may present information based primarily and/or exclusively on a logical scale.
  • the display transition 225 specifies a pixel location and/or rendered pixel size of adjacent pixels 120 based on a monitor resolution, the logical scale, the physical scale, an edge size, and/or rental pixel size for adjacent monitors 110 as will be described hereafter.
  • FIG. 2C is a schematic block diagram illustrating one embodiment of the monitor data 201 .
  • the monitor data 201 may store data for a given monitor 110 .
  • the monitor data 201 may be organized as a data structure in a memory.
  • the monitor data 201 includes a monitor identifier 203 , a monitor resolution 205 , a monitor orientation 207 , an edge size 209 , neighbor identifiers 211 , a monitor position 221 , a monitor-to-monitory boundary 213 , a physical dimension 215 , a scale factor 219 , the physical scale 231 , the logical scale 233 , the rendered pixel size 223 , pixel locations 227 , and a pixel size 229 .
  • the monitor identifier 203 may uniquely identify the monitor 110 .
  • the monitor resolution 205 may specify a resolution such as 1920 ⁇ 1080.
  • the monitor orientation 207 may specify whether the monitor 110 is oriented landscape, portrait, or at a specified angle.
  • the edge size 209 may specify a length of adjacent pixels for adjacent monitors 110 .
  • the edge size 209 may be measured as a physical dimension and/or a number of pixels.
  • the neighbor identifiers 211 may record the monitor identifiers 203 of one or more neighbor monitors 110 that are up from the monitor 110 , down from the monitor 110 , left of the monitor 110 , and/or right of the monitor 110 as a neighbor up identifier 211 a , a neighbor down identifier 211 b , a neighbor left identifier 211 c and neighbor right identifier 211 d respectively.
  • the monitor position 221 may specify a physical position of the monitor 110 in space.
  • the monitor position 221 may be relative to a designated monitor 110 .
  • the monitor-to-monitor boundary 213 may specify an edge of the monitor 110 adjacent to another monitor 110 .
  • the physical dimension 215 may specify a physical length, a physical width, and/or a physical diagonal for the monitor 110 .
  • the scale factor 219 may specify a proportional increase or decrease in rendered pixel size 223 .
  • the physical scale 231 may specify a proportional increase or decrease in the rendered pixel size 223 based on the physical dimensions 215 .
  • the logical scale 233 may specify a proportional increase in the rendered pixel size 223 based on the monitor resolution 205 .
  • the pixel locations 227 may specify locations of adjacent pixels 120 .
  • the pixel size 229 may store a native pixel size for the monitor 110 .
  • FIG. 2D is a schematic block diagram illustrating one embodiment of the transition preference 221 .
  • the transition preference 221 may be organized as a data structure in a memory.
  • the transition preference 221 includes the physical parameter preference 271 and the logical parameter preference 273 .
  • the physical parameter preference 271 and the logical parameter preference 273 may be received from a user and/or specified by a user preference.
  • FIG. 2E is a schematic block diagram illustrating one embodiment of the display transition 225 .
  • the display transition 225 is used to configure each of the monitors 110 .
  • the display transition 225 may be organized as a data structure in a memory.
  • the display transition 225 includes the pixel locations 227 , the rendered pixel size 223 , the physical scale 231 , the logical scale 233 , the edge size 209 , and the pixel size 229 .
  • FIG. 3 is a schematic diagram illustrating one embodiment of multiple monitors 110 .
  • a plurality of monitors 110 are shown at monitor positions 221 along with the corresponding monitor-to-monitor boundaries 213 .
  • the display transition 225 may align the monitor-to-monitor boundaries 213 .
  • the display transition 225 may scale adjacent monitors 110 to present equivalent rendered pixel sizes 223 .
  • a transition 309 is shown between a first monitor 110 a and an adjacent second monitor 110 b .
  • the display transition 225 may scale the adjacent first monitor 110 a and the second monitor 110 b to provide a smooth transition 309 across the monitor-to-monitor boundaries 213 .
  • a smooth transition 309 refers to adjacent pixels along the transition 309 , wherein a first pixel is on the first monitor 110 a and a second pixel is on the second monitor 110 b function as adjacent pixels on a single physical monitor 110 .
  • a linear pointer motion of a cursor 305 between adjacent monitors 110 places the cursor 305 on a linear vector 303 corresponding to the linear pointer motion.
  • the linear pointer motion may be a motion of a mouse, trackball, a stylus, or the like.
  • FIG. 4 is a schematic block diagram illustrating one embodiment of the computer 105 .
  • the computer 105 includes a processor 405 , a memory 410 , and communication hardware 415 .
  • the memory 410 may store code and data.
  • the processor 405 may execute the code and process the data.
  • the communication hardware 415 may communicate with other devices such as the monitors 110 .
  • FIG. 5 is a schematic flow chart diagram illustrating one embodiment of a monitor enhancement method 500 .
  • the method 500 may calculate the display transition 225 between one or more adjacent monitors 110 and present information on the monitors 110 .
  • the method 500 may be performed by the computer 105 and/or the processor 405 .
  • the method 500 starts, and in one embodiment, the processor 405 receives 501 the monitor data 201 for a plurality of monitors 110 .
  • the monitor data 201 includes at least the physical dimension 215 , the monitor resolution 205 , the monitor position 221 , and the scale factor 219 .
  • the processor 405 may receive 503 the transition preference 221 for each monitor-to-monitor boundary 213 .
  • the processor 405 presents at least one monitor-to-monitor boundary 213 to the user and receives 503 the corresponding transition preference 221 .
  • the transition preference 221 may specify one of the physical parameter preference 271 and the logical parameter preference 273 for the monitor-to-monitor boundary 213 .
  • the processor 405 may calculate 505 the display transition 225 between adjacent monitors 110 based on the monitor data 201 and the transition preference 221 . In one embodiment, the processor 405 calculates the physical scale 231 and/or the logical scale 233 for each monitor 110 of the plurality of monitors 110 . In addition, the processor 405 may calculate the pixel location 227 and the rendered pixel size 223 of adjacent pixels 120 based on the monitor resolution 205 , the logical scale 233 , the physical scale 231 , the edge size 209 , and the pixel size 229 for the adjacent monitors 110 . In one embodiment, the logical scale 233 determines the rendered pixel size 223 for each monitor 110 . The rendered pixel size 223 for each monitor 110 adjacent a given monitor-to-monitor boundary 213 may be equivalent.
  • the display transition 225 employs the physical scale 231 if the transition preference 221 is the physical parameter preference 271 .
  • the physical scale 231 may specify a proportional increase or decrease in the rendered pixel size 223 based on the physical dimensions 215 .
  • the display transition 225 employs the logical scale 233 if the transition preference 221 is the logical parameter preference 273 .
  • the logical scale 233 may specify a proportional increase in the rendered pixel size 223 based on the monitor resolution 205 .
  • the display transition 225 may align the monitor-to-monitor boundaries 213 .
  • the display transition 225 may scale adjacent monitors 110 to present equivalent rendered pixel sizes 223 .
  • the rendered pixel size 223 of the first monitor 110 a may appear the same as the rendered pixel size 223 of the second adjacent monitor 110 b , even though the pixel size 229 of the first monitor 110 a and the second monitor 110 b are different.
  • the display transition 225 may provide a smooth transition 309 across to each monitor-to-monitor boundary 213 .
  • the linear pointer motion from the first monitor 110 a to the second monitor 110 b across the monitor-to-monitor boundary 213 places the cursor 305 on the linear vector 303 corresponding to the linear pointer motion.
  • the pixel locations 227 may be provide the smooth transition 309 .
  • the computer 105 and/or processor 405 may present 507 information on each of the plurality of monitors 110 and the method 500 ends.
  • the computer 105 and/or processor 405 may present 507 the information on each of the plurality of monitors 110 using the physical scale 231 and/or the logical scale 233 for each monitor 110 .
  • the computer 105 and/or processor 405 may present the information on each of the plurality of monitors 110 based on the display transition 225 .
  • the embodiments receive the monitor data 201 and the transition preference 221 for each of a plurality of monitors 110 and calculates the display transition 225 between adjacent monitors 110 .
  • the display transition 225 aligns the monitor-to-monitor boundaries 213 and/or scales adjacent monitors 110 to provide a smooth, consistent monitor viewing experience. As a result, the function of the computer 105 and the monitors 110 is enhanced.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Human Computer Interaction (AREA)
  • Multimedia (AREA)
  • Computer Graphics (AREA)
  • User Interface Of Digital Computer (AREA)
  • Image Generation (AREA)

Abstract

For enhancing multiple monitor arrangements, a method receives monitor data for a plurality of monitors. The monitor data for each monitor includes a physical dimension, a monitor resolution, a monitor position, and a scale factor. The method receives a transition preference specifying one of a physical parameter preference and a logical parameter preference for each monitor-to-monitor boundary of the plurality of monitors. The method calculates a display transition between adjacent monitors based on the monitor data and the transition preference.

Description

FIELD
The subject matter disclosed herein relates to monitor arrangements and more particularly relates to enhancing multiple monitor arrangements.
BACKGROUND
Computer users often employ multiple monitors.
BRIEF SUMMARY
A method for enhancing multiple monitor arrangements is disclosed. The method receives monitor data for a plurality of monitors. The monitor data for each monitor includes a physical dimension, a monitor resolution, a monitor position, and a scale factor. The method receives a transition preference specifying one of a physical parameter preference and a logical parameter preference for each monitor-to-monitor boundary of the plurality of monitors. The method calculates a display transition between adjacent monitors based on the monitor data and the transition preference. An apparatus and program product also perform the functions of the method.
BRIEF DESCRIPTION OF THE DRAWINGS
A more particular description of the embodiments briefly described above will be rendered by reference to specific embodiments that are illustrated in the appended drawings. Understanding that these drawings depict only some embodiments and are not therefore to be considered to be limiting of scope, the embodiments will be described and explained with additional specificity and detail through the use of the accompanying drawings, in which:
FIG. 1A is a schematic block diagram illustrating one embodiment of multiple monitors;
FIG. 1B is a schematic diagram illustrating one embodiment of multiple monitors;
FIG. 2A is a schematic block diagram illustrating one embodiment of a monitor database;
FIG. 2B is a schematic block diagram illustrating one embodiment of transition data;
FIG. 2C is a schematic block diagram illustrating one embodiment of monitor data;
FIG. 2D is a schematic block diagram illustrating one embodiment of a transition preference;
FIG. 2E is a schematic block diagram illustrating one embodiment of a display transition;
FIG. 3 is a schematic diagram illustrating one embodiment of multiple monitors;
FIG. 4 is a schematic block diagram illustrating one embodiment of a computer; and
FIG. 5 is a schematic flow chart diagram illustrating one embodiment of a monitor enhancement method.
DETAILED DESCRIPTION
As will be appreciated by one skilled in the art, aspects of the embodiments may be embodied as a system, method or program product. Accordingly, embodiments may take the form of an entirely hardware embodiment, an entirely software embodiment (including firmware, resident software, micro-code, etc.) or an embodiment combining software and hardware aspects that may all generally be referred to herein as a “circuit,” “module” or “system.” Furthermore, embodiments may take the form of a program product embodied in one or more computer readable storage devices storing machine readable code, computer readable code, and/or program code, referred hereafter as code. The storage devices may be tangible, non-transitory, and/or non-transmission. The storage devices may not embody signals. In a certain embodiment, the storage devices only employ signals for accessing code.
Many of the functional units described in this specification have been labeled as modules, in order to more particularly emphasize their implementation independence. For example, a module may be implemented as a hardware circuit comprising custom VLSI circuits or gate arrays, off-the-shelf semiconductors such as logic chips, transistors, or other discrete components. A module may also be implemented in programmable hardware devices such as field programmable gate arrays, programmable array logic, programmable logic devices or the like.
Modules may also be implemented in code and/or software for execution by various types of processors. An identified module of code may, for instance, comprise one or more physical or logical blocks of executable code which may, for instance, be organized as an object, procedure, or function. Nevertheless, the executables of an identified module need not be physically located together but may comprise disparate instructions stored in different locations which, when joined logically together, comprise the module and achieve the stated purpose for the module.
Indeed, a module of code may be a single instruction, or many instructions, and may even be distributed over several different code segments, among different programs, and across several memory devices. Similarly, operational data may be identified and illustrated herein within modules and may be embodied in any suitable form and organized within any suitable type of data structure. The operational data may be collected as a single data set or may be distributed over different locations including over different computer readable storage devices. Where a module or portions of a module are implemented in software, the software portions are stored on one or more computer readable storage devices.
Any combination of one or more computer readable medium may be utilized. The computer readable medium may be a computer readable storage medium. The computer readable storage medium may be a storage device storing the code. The storage device may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, holographic, micromechanical, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing.
More specific examples (a non-exhaustive list) of the storage device would include the following: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a random-access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or Flash memory), a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. In the context of this document, a computer readable storage medium may be any tangible medium that can contain or store a program for use by or in connection with an instruction execution system, apparatus, or device.
Code for carrying out operations for embodiments may be written in any combination of one or more programming languages including an object-oriented programming language such as Python, Ruby, R, Java, Java Script, Smalltalk, C++, C sharp, Lisp, Clojure, PHP, or the like, and conventional procedural programming languages, such as the “C” programming language, or the like, and/or machine languages such as assembly languages. The code may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server. In the latter scenario, the remote computer may be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or the connection may be made to an external computer (for example, through the Internet using an Internet Service Provider).
The embodiments may transmit data between electronic devices. The embodiments may further convert the data from a first format to a second format, including converting the data from a non-standard format to a standard format and/or converting the data from the standard format to a non-standard format. The embodiments may modify, update, and/or process the data. The embodiments may store the received, converted, modified, updated, and/or processed data. The embodiments may provide remote access to the data including the updated data. The embodiments may make the data and/or updated data available in real time. The embodiments may generate and transmit a message based on the data and/or updated data in real time. The embodiments may securely communicate encrypted data. The embodiments may organize data for efficient validation. In addition, the embodiments may validate the data in response to an action and/or a lack of an action.
Reference throughout this specification to “one embodiment,” “an embodiment,” or similar language means that a particular feature, structure, or characteristic described in connection with the embodiment is included in at least one embodiment. Thus, appearances of the phrases “in one embodiment,” “in an embodiment,” and similar language throughout this specification may, but do not necessarily, all refer to the same embodiment, but mean “one or more but not all embodiments” unless expressly specified otherwise. The terms “including,” “comprising,” “having,” and variations thereof mean “including but not limited to,” unless expressly specified otherwise. An enumerated listing of items does not imply that any or all of the items are mutually exclusive, unless expressly specified otherwise. The terms “a,” “an,” and “the” also refer to “one or more” unless expressly specified otherwise. The term “and/or” indicates embodiments of one or more of the listed elements, with “A and/or B” indicating embodiments of element A alone, element B alone, or elements A and B taken together.
Furthermore, the described features, structures, or characteristics of the embodiments may be combined in any suitable manner. In the following description, numerous specific details are provided, such as examples of programming, software modules, user selections, network transactions, database queries, database structures, hardware modules, hardware circuits, hardware chips, etc., to provide a thorough understanding of embodiments. One skilled in the relevant art will recognize, however, that embodiments may be practiced without one or more of the specific details, or with other methods, components, materials, and so forth. In other instances, well-known structures, materials, or operations are not shown or described in detail to avoid obscuring aspects of an embodiment.
Aspects of the embodiments are described below with reference to schematic flowchart diagrams and/or schematic block diagrams of methods, apparatuses, systems, and program products according to embodiments. It will be understood that each block of the schematic flowchart diagrams and/or schematic block diagrams, and combinations of blocks in the schematic flowchart diagrams and/or schematic block diagrams, can be implemented by code. This code may be provided to a processor of a general-purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions/acts specified in the schematic flowchart diagrams and/or schematic block diagrams block or blocks.
The code may also be stored in a storage device that can direct a computer, other programmable data processing apparatus, or other devices to function in a particular manner, such that the instructions stored in the storage device produce an article of manufacture including instructions which implement the function/act specified in the schematic flowchart diagrams and/or schematic block diagrams block or blocks.
The code may also be loaded onto a computer, other programmable data processing apparatus, or other devices to cause a series of operational steps to be performed on the computer, other programmable apparatus or other devices to produce a computer implemented process such that the code which execute on the computer or other programmable apparatus provide processes for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks.
The schematic flowchart diagrams and/or schematic block diagrams in the Figures illustrate the architecture, functionality, and operation of possible implementations of apparatuses, systems, methods and program products according to various embodiments. In this regard, each block in the schematic flowchart diagrams and/or schematic block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions of the code for implementing the specified logical function(s).
It should also be noted that, in some alternative implementations, the functions noted in the block may occur out of the order noted in the Figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. Other steps and methods may be conceived that are equivalent in function, logic, or effect to one or more blocks, or portions thereof, of the illustrated Figures.
Although various arrow types and line types may be employed in the flowchart and/or block diagrams, they are understood not to limit the scope of the corresponding embodiments. Indeed, some arrows or other connectors may be used to indicate only the logical flow of the depicted embodiment. For instance, an arrow may indicate a waiting or monitoring period of unspecified duration between enumerated steps of the depicted embodiment. It will also be noted that each block of the block diagrams and/or flowchart diagrams, and combinations of blocks in the block diagrams and/or flowchart diagrams, can be implemented by special purpose hardware-based systems that perform the specified functions or acts, or combinations of special purpose hardware and code.
The description of elements in each figure may refer to elements of proceeding figures. Like numbers refer to like elements in all figures, including alternate embodiments of like elements.
FIG. 1A is a schematic block diagram illustrating one embodiment of multiple monitors 100. In the depicted embodiment, a computer 105 presents information via a plurality of monitors 110. The information presented by the monitors 110 should be coordinated across the monitors 110 to increase usability.
FIG. 1B is a schematic diagram illustrating one embodiment of the multiple monitors 110 of FIG. 1A. In the depicted embodiment, the monitors 110 are of different sizes and relative positions. For example, the adjacent pixels 120 a-c of the monitors 110 a-c may be of different sizes for each monitor. The first monitor 110 a has an adjacent pixel 120 a in the lower right corner, the second monitor 110 b has an adjacent pixel 120 b and an upper right corner, and the third monitor 110 c has an adjacent pixel 120 c in an upper left corner. In addition, the physical dimensions of each monitor 110 is different. The monitors 110 are also adjacent across both vertical and horizontal boundaries.
In the past, determining display transitions between the adjacent monitors 110 was primarily a manual process that depended on trial and error. The embodiments calculate the display transitions between the adjacent monitors 110 to efficiently and effectively configure the monitors 110 to present information as will be described hereafter.
FIG. 2A is a schematic block diagram illustrating one embodiment of a monitor database 200. The monitor database 200 may store monitor data 201 for each of the plurality of monitors 110. The monitor database 200 may be organized as a data structure in a memory. The monitor database 200 includes monitor data 201 for each monitor 110. The monitor data 201 is described in FIG. 2C.
FIG. 2B is a schematic block diagram illustrating one embodiment of transition data 220. The transition data 220 stores transition preferences 221 and display transitions 225 for each of a plurality of monitors 110.
The transition preference 221 may specify one of a physical parameter preference and the logical parameter preference for each monitor-to-monitor boundary of the plurality of monitors 110. In one embodiment, if the physical parameter preference is specified, a monitor 110 may present information based primarily and/or exclusively on a physical scale. In addition, if the logical parameter preference is specified, a monitor 110 may present information based primarily and/or exclusively on a logical scale.
The display transition 225 specifies a pixel location and/or rendered pixel size of adjacent pixels 120 based on a monitor resolution, the logical scale, the physical scale, an edge size, and/or rental pixel size for adjacent monitors 110 as will be described hereafter.
FIG. 2C is a schematic block diagram illustrating one embodiment of the monitor data 201. The monitor data 201 may store data for a given monitor 110. The monitor data 201 may be organized as a data structure in a memory. In the depicted embodiment, the monitor data 201 includes a monitor identifier 203, a monitor resolution 205, a monitor orientation 207, an edge size 209, neighbor identifiers 211, a monitor position 221, a monitor-to-monitory boundary 213, a physical dimension 215, a scale factor 219, the physical scale 231, the logical scale 233, the rendered pixel size 223, pixel locations 227, and a pixel size 229.
The monitor identifier 203 may uniquely identify the monitor 110. The monitor resolution 205 may specify a resolution such as 1920×1080. The monitor orientation 207 may specify whether the monitor 110 is oriented landscape, portrait, or at a specified angle.
The edge size 209 may specify a length of adjacent pixels for adjacent monitors 110. The edge size 209 may be measured as a physical dimension and/or a number of pixels.
The neighbor identifiers 211 may record the monitor identifiers 203 of one or more neighbor monitors 110 that are up from the monitor 110, down from the monitor 110, left of the monitor 110, and/or right of the monitor 110 as a neighbor up identifier 211 a, a neighbor down identifier 211 b, a neighbor left identifier 211 c and neighbor right identifier 211 d respectively.
The monitor position 221 may specify a physical position of the monitor 110 in space. The monitor position 221 may be relative to a designated monitor 110. The monitor-to-monitor boundary 213 may specify an edge of the monitor 110 adjacent to another monitor 110. The physical dimension 215 may specify a physical length, a physical width, and/or a physical diagonal for the monitor 110.
The scale factor 219 may specify a proportional increase or decrease in rendered pixel size 223. The physical scale 231 may specify a proportional increase or decrease in the rendered pixel size 223 based on the physical dimensions 215. The logical scale 233 may specify a proportional increase in the rendered pixel size 223 based on the monitor resolution 205.
The pixel locations 227 may specify locations of adjacent pixels 120. The pixel size 229 may store a native pixel size for the monitor 110.
FIG. 2D is a schematic block diagram illustrating one embodiment of the transition preference 221. The transition preference 221 may be organized as a data structure in a memory. In the depicted embodiment, the transition preference 221 includes the physical parameter preference 271 and the logical parameter preference 273. The physical parameter preference 271 and the logical parameter preference 273 may be received from a user and/or specified by a user preference.
FIG. 2E is a schematic block diagram illustrating one embodiment of the display transition 225. The display transition 225 is used to configure each of the monitors 110. The display transition 225 may be organized as a data structure in a memory. In the depicted embodiment, the display transition 225 includes the pixel locations 227, the rendered pixel size 223, the physical scale 231, the logical scale 233, the edge size 209, and the pixel size 229.
FIG. 3 is a schematic diagram illustrating one embodiment of multiple monitors 110. In the depicted embodiment, a plurality of monitors 110 are shown at monitor positions 221 along with the corresponding monitor-to-monitor boundaries 213. The display transition 225 may align the monitor-to-monitor boundaries 213. In addition, the display transition 225 may scale adjacent monitors 110 to present equivalent rendered pixel sizes 223.
A transition 309 is shown between a first monitor 110 a and an adjacent second monitor 110 b. The display transition 225 may scale the adjacent first monitor 110 a and the second monitor 110 b to provide a smooth transition 309 across the monitor-to-monitor boundaries 213. As used herein, a smooth transition 309 refers to adjacent pixels along the transition 309, wherein a first pixel is on the first monitor 110 a and a second pixel is on the second monitor 110 b function as adjacent pixels on a single physical monitor 110.
In one embodiment, a linear pointer motion of a cursor 305 between adjacent monitors 110 places the cursor 305 on a linear vector 303 corresponding to the linear pointer motion. The linear pointer motion may be a motion of a mouse, trackball, a stylus, or the like.
FIG. 4 is a schematic block diagram illustrating one embodiment of the computer 105. In the depicted embodiment, the computer 105 includes a processor 405, a memory 410, and communication hardware 415. The memory 410 may store code and data. The processor 405 may execute the code and process the data. The communication hardware 415 may communicate with other devices such as the monitors 110.
FIG. 5 is a schematic flow chart diagram illustrating one embodiment of a monitor enhancement method 500. The method 500 may calculate the display transition 225 between one or more adjacent monitors 110 and present information on the monitors 110. The method 500 may be performed by the computer 105 and/or the processor 405.
The method 500 starts, and in one embodiment, the processor 405 receives 501 the monitor data 201 for a plurality of monitors 110. In one embodiment, the monitor data 201 includes at least the physical dimension 215, the monitor resolution 205, the monitor position 221, and the scale factor 219.
The processor 405 may receive 503 the transition preference 221 for each monitor-to-monitor boundary 213. In one embodiment, the processor 405 presents at least one monitor-to-monitor boundary 213 to the user and receives 503 the corresponding transition preference 221. The transition preference 221 may specify one of the physical parameter preference 271 and the logical parameter preference 273 for the monitor-to-monitor boundary 213.
The processor 405 may calculate 505 the display transition 225 between adjacent monitors 110 based on the monitor data 201 and the transition preference 221. In one embodiment, the processor 405 calculates the physical scale 231 and/or the logical scale 233 for each monitor 110 of the plurality of monitors 110. In addition, the processor 405 may calculate the pixel location 227 and the rendered pixel size 223 of adjacent pixels 120 based on the monitor resolution 205, the logical scale 233, the physical scale 231, the edge size 209, and the pixel size 229 for the adjacent monitors 110. In one embodiment, the logical scale 233 determines the rendered pixel size 223 for each monitor 110. The rendered pixel size 223 for each monitor 110 adjacent a given monitor-to-monitor boundary 213 may be equivalent.
In one embodiment, the display transition 225 employs the physical scale 231 if the transition preference 221 is the physical parameter preference 271. The physical scale 231 may specify a proportional increase or decrease in the rendered pixel size 223 based on the physical dimensions 215.
In one embodiment, the display transition 225 employs the logical scale 233 if the transition preference 221 is the logical parameter preference 273. The logical scale 233 may specify a proportional increase in the rendered pixel size 223 based on the monitor resolution 205.
The display transition 225 may align the monitor-to-monitor boundaries 213. In addition, the display transition 225 may scale adjacent monitors 110 to present equivalent rendered pixel sizes 223. For example, the rendered pixel size 223 of the first monitor 110 a may appear the same as the rendered pixel size 223 of the second adjacent monitor 110 b, even though the pixel size 229 of the first monitor 110 a and the second monitor 110 b are different.
The display transition 225 may provide a smooth transition 309 across to each monitor-to-monitor boundary 213. As shown in FIG. 3, the linear pointer motion from the first monitor 110 a to the second monitor 110 b across the monitor-to-monitor boundary 213 places the cursor 305 on the linear vector 303 corresponding to the linear pointer motion. The pixel locations 227 may be provide the smooth transition 309.
The computer 105 and/or processor 405 may present 507 information on each of the plurality of monitors 110 and the method 500 ends. The computer 105 and/or processor 405 may present 507 the information on each of the plurality of monitors 110 using the physical scale 231 and/or the logical scale 233 for each monitor 110. In addition, the computer 105 and/or processor 405 may present the information on each of the plurality of monitors 110 based on the display transition 225.
The embodiments receive the monitor data 201 and the transition preference 221 for each of a plurality of monitors 110 and calculates the display transition 225 between adjacent monitors 110. The display transition 225 aligns the monitor-to-monitor boundaries 213 and/or scales adjacent monitors 110 to provide a smooth, consistent monitor viewing experience. As a result, the function of the computer 105 and the monitors 110 is enhanced.
Embodiments may be practiced in other specific forms. The described embodiments are to be considered in all respects only as illustrative and not restrictive. The scope of the invention is, therefore, indicated by the appended claims rather than by the foregoing description. All changes which come within the meaning and range of equivalency of the claims are to be embraced within their scope.

Claims (18)

What is claimed is:
1. A method comprising:
receiving, by use of a processor, monitor data for a plurality of monitors, the monitor data for each monitor comprising a physical dimension, a monitor resolution, a monitor position, and a scale factor;
receiving a transition preference specifying one of a physical parameter preference and a logical parameter preference for each monitor-to-monitor boundary of the plurality of monitors; and
calculating a display transition between adjacent monitors based on the monitor data and the transition preference, wherein the display transition calculates a pixel location and a rendered pixel size of adjacent pixels in the adjacent monitors based on the monitor resolution, a logical scale, a physical scale, an edge size, and a pixel size for the adjacent monitors.
2. The method of claim 1, the method further comprising presenting information on each of the plurality of monitors using the physical scale and the logical scale for each monitor.
3. The method of claim 1, wherein the display transition aligns the monitor-to-monitor boundaries.
4. The method of claim 1, wherein the display transition scales adjacent monitors to present equivalent rendered pixel sizes.
5. The method of claim 1, wherein the display transition provides a smooth transition across monitor-to-monitor boundaries.
6. The method of claim 1, wherein a linear pointer motion from a first monitor to a second monitor across a monitor-to-monitor boundary places a cursor on a linear vector corresponding to the linear pointer motion.
7. The method of claim 1, wherein the logical scale determines a rendered pixel size for each monitor.
8. The method of claim 7, wherein the rendered pixel size for each monitor adjacent a given monitor-to-monitor boundary is equivalent.
9. An apparatus comprising:
a processor;
a memory storing code executable by the processor to:
receive monitor data for a plurality of monitors, the monitor data for each monitor comprising a physical dimension, a monitor resolution, a monitor position, and a scale factor;
receive a transition preference specifying one of a physical parameter preference and a logical parameter preference for each monitor-to-monitor boundary of the plurality of monitors; and
calculate a display transition between adjacent monitors based on the monitor data and the transition preference, wherein the display transition calculates a pixel location and a rendered pixel size of adjacent pixels in the adjacent monitors based on the monitor resolution, a logical scale, a physical scale, an edge size, and a pixel size for the adjacent monitors.
10. The apparatus of claim 9, the code further executable by the processor to present information on each of the plurality of monitors using the physical scale and the logical scale for each monitor.
11. The apparatus of claim 9, wherein the display transition aligns the monitor-to-monitor boundaries.
12. The apparatus of claim 9, wherein the display transition scales adjacent monitors to present equivalent rendered pixel sizes.
13. The apparatus of claim 9, wherein the display transition provides a smooth transition across monitor-to-monitor boundaries.
14. The apparatus of claim 9, wherein a linear pointer motion from a first monitor to a second monitor across a monitor-to-monitor boundary places a cursor on a linear vector corresponding to the linear pointer motion.
15. The apparatus of claim 9, wherein the logical scale determines a rendered pixel size for each monitor.
16. The apparatus of claim 15, wherein the rendered pixel size for each monitor adjacent a given monitor-to-monitor boundary is equivalent.
17. A program product comprising a non-transitory computer readable storage medium that stores code executable by a processor, the executable code comprising code to:
receive monitor data for a plurality of monitors, the monitor data for each monitor comprising a physical dimension, a monitor resolution, a monitor position, and a scale factor;
receive a transition preference specifying one of a physical parameter preference and a logical parameter preference for each monitor-to-monitor boundary of the plurality of monitors; and
calculate a display transition between adjacent monitors based on the monitor data and the transition preference, wherein the display transition calculates a pixel location and a rendered pixel size of adjacent pixels in the adjacent monitors based on the monitor resolution, a logical scale, a physical scale, an edge size, and a pixel size for the adjacent monitors.
18. The program product of claim 17, the code further executable by the processor to present information on each of the plurality of monitors using the physical scale and the logical scale for each monitor.
US17/196,326 2021-03-09 2021-03-09 Enhancing multiple monitor arrangements Active US11281421B1 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
US17/196,326 US11281421B1 (en) 2021-03-09 2021-03-09 Enhancing multiple monitor arrangements
EP22150989.6A EP4057113A1 (en) 2021-03-09 2022-01-11 Enhancing multiple monitor arrangements
CN202210221100.1A CN114924699B (en) 2021-03-09 2022-03-09 Enhanced multi-monitor layout

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US17/196,326 US11281421B1 (en) 2021-03-09 2021-03-09 Enhancing multiple monitor arrangements

Publications (1)

Publication Number Publication Date
US11281421B1 true US11281421B1 (en) 2022-03-22

Family

ID=80118921

Family Applications (1)

Application Number Title Priority Date Filing Date
US17/196,326 Active US11281421B1 (en) 2021-03-09 2021-03-09 Enhancing multiple monitor arrangements

Country Status (3)

Country Link
US (1) US11281421B1 (en)
EP (1) EP4057113A1 (en)
CN (1) CN114924699B (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110080342A1 (en) * 2009-10-01 2011-04-07 Edgar Haren Docking station
US20160155410A1 (en) * 2013-06-25 2016-06-02 Samsung Electronics Co., Ltd. Display method and apparatus with multi-screen

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130022114A1 (en) * 2008-06-23 2013-01-24 Mediatek Inc. Method and related apparatuses for decoding multimedia data
US9190017B2 (en) * 2013-01-02 2015-11-17 International Business Machines Corporation Proportional pointer transition between multiple display devices
US9405387B2 (en) * 2014-09-17 2016-08-02 Getac Technology Corporation Cursor control apparatus and cursor control method thereof
US9841938B2 (en) * 2015-05-20 2017-12-12 Nvidia Corporation Pixel density normalization for viewing images across dissimilar displays
US9905200B2 (en) * 2015-10-19 2018-02-27 Yahoo Holdings, Inc. Computerized system and method for automatically creating and applying a filter to alter the display of rendered media
US10169922B2 (en) * 2016-02-16 2019-01-01 Microsoft Technology Licensing, Llc Reality mixer for mixed reality
US20180107358A1 (en) * 2016-10-17 2018-04-19 International Business Machines Corporation Multiple-display unification system and method
US10776905B2 (en) * 2018-02-28 2020-09-15 Microsoft Technology Licensing, Llc Adaptive interface transformation across display screens
US11010013B2 (en) * 2018-10-29 2021-05-18 International Business Machines Corporation Providing visual control guidance on a display
US10957109B2 (en) * 2019-04-16 2021-03-23 International Business Machines Corporation Dynamic partition of augmented reality region

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110080342A1 (en) * 2009-10-01 2011-04-07 Edgar Haren Docking station
US20160155410A1 (en) * 2013-06-25 2016-06-02 Samsung Electronics Co., Ltd. Display method and apparatus with multi-screen

Also Published As

Publication number Publication date
CN114924699B (en) 2024-12-20
CN114924699A (en) 2022-08-19
EP4057113A1 (en) 2022-09-14

Similar Documents

Publication Publication Date Title
CN111679990B (en) Test data generation method and device, readable medium and electronic equipment
US11847773B1 (en) Geofence-based object identification in an extended reality environment
US10129111B2 (en) Subscription watch lists for event handling
US10902254B2 (en) Converting a captured image of a layout to a structured document template
CN111222571B (en) Image special effect processing method and device, electronic equipment and storage medium
US10109094B2 (en) Interface to index and display geospatial data
CN114237871B (en) Cloud resource arrangement method and device, computer equipment and storage medium
US20180307399A1 (en) Dynamic Thumbnails
US10325013B2 (en) Method of optimizing space utilization in a document and a space optimization system thereof
US20070201833A1 (en) Interface for defining aperture
CN107301220B (en) Method, device and equipment for data driving view and storage medium
CN115809188A (en) Image detection algorithm debugging method, device, equipment, medium and program product
CN108280135B (en) Method and device for realizing visualization of data structure and electronic equipment
US11281421B1 (en) Enhancing multiple monitor arrangements
CN115374517B (en) Testing methods, devices, electronic equipment, and storage media for cabling software.
CN111752834A (en) Automated testing method and device
US12439012B2 (en) Image processing method and apparatus, electronic device and readable storage medium
CN116758198B (en) Image reconstruction method, device, equipment and storage medium
US9787962B2 (en) Accelerated super-resolution processing method for TV video images, accelerated super-resolution processing device for TV video images that is used in same method, first to sixth accelerated super-resolution processing programs, and first to second storage media
CN115659045B (en) User operation recognition method, device, storage medium and electronic device
CN111435589A (en) Target display method and device and target display system
US20160203390A1 (en) Processing apparatus, processing method, and program
US10402226B2 (en) Media analysis and processing framework on a resource restricted device
CN113835796B (en) Method and device for processing information
CN112837211B (en) Picture processing method and device, electronic equipment and readable storage medium

Legal Events

Date Code Title Description
FEPP Fee payment procedure

Free format text: ENTITY STATUS SET TO UNDISCOUNTED (ORIGINAL EVENT CODE: BIG.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

STCF Information on status: patent grant

Free format text: PATENTED CASE

MAFP Maintenance fee payment

Free format text: PAYMENT OF MAINTENANCE FEE, 4TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1551); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

Year of fee payment: 4