KR101785845B1 - Device and method for dynamic display controller to provide a plurality of monitoring images - Google Patents

Device and method for dynamic display controller to provide a plurality of monitoring images Download PDF

Info

Publication number
KR101785845B1
KR101785845B1 KR1020160052286A KR20160052286A KR101785845B1 KR 101785845 B1 KR101785845 B1 KR 101785845B1 KR 1020160052286 A KR1020160052286 A KR 1020160052286A KR 20160052286 A KR20160052286 A KR 20160052286A KR 101785845 B1 KR101785845 B1 KR 101785845B1
Authority
KR
South Korea
Prior art keywords
display
objects
user input
response
providing
Prior art date
Application number
KR1020160052286A
Other languages
Korean (ko)
Other versions
KR20170085414A (en
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
Application filed by 건국대학교 산학협력단, 주식회사 위엠비 filed Critical 건국대학교 산학협력단
Publication of KR20170085414A publication Critical patent/KR20170085414A/en
Application granted granted Critical
Publication of KR101785845B1 publication Critical patent/KR101785845B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/18Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast
    • H04N7/181Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast for receiving images from a plurality of remote sources
    • H04N5/232
    • H04N5/23203
    • H04N5/23206

Abstract

일 실시예에 따르면 동적인 디스플레이 컨트롤러를 제공하는 중앙집중형 모니터링 시스템을 제작하는 도구가 제공될 수 있다. 일 실시예에 따른 복수의 모니터링 영상들을 제공하기 위한 동적인 디스플레이 컨트롤러 지원 장치는, 다중 선택에서 교차 범위를 얻기 위한 알고리즘을 실행하고, 코드를 재컴파일 하지 않는 경우, 보안 카메라와 UI 컴포넌트에 대한 작업 소스 목록을 업데이트하고, HTML5 캔버스 기반 WYSIWYG 에디터를 실행하여, 상기 캔버스의 컴포넌트가 업데이트될 때마다 프로젝트 파일을 업데이트하고, 상기 캔버스 위의 오브젝트를 위한 Z- index 알고리즘을 실행하고, 상기 보안 카메라로부터의 비디오 스트리밍이 가능한 디스플레이 컴포넌트를 실행할 수 있다.According to one embodiment, a tool for creating a centralized monitoring system that provides a dynamic display controller can be provided. A dynamic display controller support device for providing a plurality of monitoring images according to an embodiment may be configured to execute an algorithm for obtaining an intersecting range in multiple selection and to perform operations on a security camera and a UI component Updating a source list, executing an HTML5 canvas-based WYSIWYG editor, updating a project file each time the canvas component is updated, executing a Z-index algorithm for the object on the canvas, Video streaming enabled display components.

Description

복수의 모니터링 영상들을 제공하기 위한 동적인 디스플레이 컨트롤러 지원 방법 및 장치{DEVICE AND METHOD FOR DYNAMIC DISPLAY CONTROLLER TO PROVIDE A PLURALITY OF MONITORING IMAGES}TECHNICAL FIELD [0001] The present invention relates to a dynamic display controller supporting method and apparatus for providing a plurality of monitoring images.

이하, 모니터링 시스템을 지원하는 도구에 관한 기술이 제공된다.Hereinafter, techniques relating to tools for supporting the monitoring system are provided.

사용자가 중앙집중형 모니터링 시스템을 위한 디스플레이 제어기를 생성하거나, 편집할 수 있는 시스템에 관한 장치 및 방법이 미흡한 실정이다. 또한, 중앙집중형 모니터링 시스템에 대한 생성 또는 편집된 동적인 컨트롤러를 저장하는 문서 구조를 만드는 장치 및 방법이 미흡한 실정이다.There is a lack of a system and a method for a system in which a user can create or edit a display controller for a centralized monitoring system. Also, there is a lack of an apparatus and method for creating a document structure storing a dynamic controller created or edited for a centralized monitoring system.

종래 기술에서는 중앙집중형 모니터링 시스템을 위해 협업을 통한 제작 및 수정이 불가능하고, "What You See Is What You Get"이 가능한 동적인 디스플레이 컨트롤러 저작 도구를 만드는 것이 미흡한 실정이다.In the conventional technology, it is not possible to produce and modify through a collaboration for a centralized monitoring system, and it is insufficient to make a dynamic display controller authoring tool capable of "What You See Is What You Get".

사용자에게 저장, 불러오기, 수정 및 수정된 결과의 저장하는 기능을 가진 동적인 디스플레이 컨트롤러를 사용자에게 제공하는 장치 및 기술이 필요하다.What is needed is a device and technique that provides a user with a dynamic display controller with the ability to store, retrieve, modify, and store modified results to the user.

일 실시예에 따르면, 사용자가 중앙집중형 모니터링 시스템을 위한 디스플레이 제어기를 생성하거나, 편집할 수 있는 시스템을 서버를 통해 제공할 수 있다.According to one embodiment, a user may provide a system through a server that can create or edit a display controller for a centralized monitoring system.

일 실시예에 따르면, 중앙집중형 모니터링 시스템에 대한 생성 또는 편집된 동적인 컨트롤러를 저장하는 문서 구조를 제공할 수 있다.According to one embodiment, a document structure may be provided to store dynamic controllers created or edited for a centralized monitoring system.

일 실시예에 따르면, 사용자에게 제한이 없는 소스와 스크린 컨트롤러, 동적인 디스플레이, 패널, 버튼, 텍스트, 이미지를 포함한 동적 디스플레이 구성 요소를 저작을 위해 제공할 수 있다.According to one embodiment, a dynamic display component including a source and a screen controller, a dynamic display, a panel, a button, text, and an image can be provided for authoring without limitation to the user.

일 실시예에 따르면 위지위그(WYSIWYG, What You See Is What You Get)가 가능한 동적인 디스플레이 컨트롤러를 지원하는 저작 도구를 제공할 수 있다.According to one embodiment, a authoring tool supporting a dynamic display controller capable of WYSIWYG (What You See Is What You Get) can be provided.

일 실시예에 따르면 사용자에게 저장, 불러오기, 수정 및 수정된 결과의 저장하는 기능을 가진 동적인 디스플레이 컨트롤러를 제공할 수 있다.According to one embodiment, it is possible to provide a dynamic display controller having a function of storing, retrieving, modifying, and storing modified results to a user.

일 실시예에 따르면, 서버에 의해 구현되는 복수의 모니터링 영상들을 제공하기 위한 동적인 디스플레이 컨트롤러 지원 방법은 상기 서버에 대한 외부 단말의 제1 사용자의 접속을 허용하는 단계; 상기 제1 사용자로부터 스크린 제어 아이템(screen control item)과 연관된 제1 사용자 입력을 수신하는 단계; 및 상기 스크린 제어 아이템과 연관된 제1 사용자 입력의 수신에 응답하여 캔버스 영역(canvas region)에 디스플레이 객체를 생성하고, 제2 사용자로부터 수신되는 상기 디스플레이 객체와 연관된 제2 사용자 입력에 응답하여 보안 카메라로부터 스트리밍되는 복수의 소스 영상들 중에서 상기 디스플레이 객체에 대응하는 소스 영상이 제공되도록 상기 디스플레이 객체를 설정하는 단계를 포함할 수 있다.According to an embodiment, a method of supporting a dynamic display controller for providing a plurality of monitoring images implemented by a server includes: allowing a first user of an external terminal to access the server; Receiving a first user input associated with a screen control item from the first user; And generating a display object in a canvas region in response to receiving the first user input associated with the screen control item and generating a display object from the security camera in response to a second user input associated with the display object received from the second user And setting the display object such that a source image corresponding to the display object is provided from a plurality of source images to be streamed.

상기 디스플레이 객체를 설정하는 단계는, 디스플레이 소스 객체를 생성하고, 상기 디스플레이 소스 객체와 연관된 제2 사용자 입력에 응답하여 보안 카메라로부터 스트리밍되는 복수의 소스 영상들 중에서 상기 디스플레이 소스 객체에 대응하는 소스 영상을 선택하도록 상기 디스플레이 소스 객체를 설정하는 단계; 디스플레이 크기 객체를 상기 캔버스 영역에 생성하고, 상기 디스플레이 크기 객체 및 디스플레이 셀과 연관된 제2 사용자 입력에 응답하여 상기 디스플레이 셀의 크기를 해당 디스플레이 크기 객체에 지정된 크기로 결정하도록 상기 디스플레이 크기 객체를 설정하는 단계; 및 디스플레이 셀을 상기 캔버스 영역에 생성하고, 상기 디스플레이 셀 및 상기 디스플레이 소스 객체와 연관된 제2 사용자 입력에 응답하여 상기 선택된 소스 영상을 상기 지정된 크기로 상기 디스플레이 셀 상에 표시하도록 상기 디스플레이 셀을 설정하는 단계를 포함할 수 있다.Wherein the step of setting the display object further comprises the steps of: creating a display source object, and generating a source image corresponding to the display source object from a plurality of source images streamed from a security camera in response to a second user input associated with the display source object Setting the display source object to select; Creating a display size object in the canvas region and setting the display size object to determine a size of the display cell in response to a second user input associated with the display size object and the display cell, step; And setting the display cell to display the selected source image on the display cell in the designated size in response to a second user input associated with the display cell and the display source object, Step < / RTI >

상기 디스플레이 셀을 설정하는 단계는, 복수의 디스플레이 셀들을 상기 캔버스 영역에 미리 정해진 간격으로 된 그리드 형태로 생성하는 단계; 및 상기 디스플레이 크기 객체 및 상기 복수의 디스플레이 셀들 중 하나의 디스플레이 셀과 연관된 제2 사용자 입력에 응답하여, 상기 하나의 디스플레이 셀을 기준으로 상기 복수의 셀들 중 적어도 둘 이상의 셀들을 병합하도록 상기 복수의 디스플레이 셀들을 설정하는 단계를 포함할 수 있다.Wherein the setting of the display cell comprises: generating a plurality of display cells in a grid form at predetermined intervals in the canvas area; And a plurality of display cells, responsive to a second user input associated with the display size object and one of the plurality of display cells, for merging at least two of the plurality of cells with respect to the one display cell, And setting the cells.

복수의 모니터링 영상들을 제공하기 위한 동적인 디스플레이 컨트롤러 지원 방법은 상기 캔버스 영역에 디스플레이 크기 객체를 생성하는 단계; 및 상기 디스플레이 크기 객체와 연관된 제2 사용자 입력의 수신에 응답하여, 스트리밍되는 소스 영상으로부터 상기 디스플레이 크기 객체에 지정된 크기의 모니터링 영상을 생성하도록 상기 디스플레이 크기 객체를 설정하는 단계를 더 포함할 수 있다.A method of supporting a dynamic display controller to provide a plurality of monitoring images, comprising: generating a display size object in the canvas area; And setting the display size object to generate a monitoring image of a size specified in the display size object from the streamed source image, in response to receiving a second user input associated with the display size object.

상기 디스플레이 객체를 설정하는 단계는, 상기 스크린 제어 아이템과 연관된 제1 사용자 입력의 수신에 응답하여, 상기 캔버스 영역에 n x m 개의 디스플레이 셀들을 그리드 형태로 생성하는 단계를 포함할 수 있다.The step of configuring the display object may include generating n x m display cells in a grid form in the canvas area in response to receiving a first user input associated with the screen control item.

상기 디스플레이 객체를 설정하는 단계는, 디스플레이 크기 객체를 상기 캔버스 영역에 생성하고, 상기 디스플레이 크기 객체 및 상기 n x m 개의 디스플레이 셀들 중 하나의 디스플레이 셀과 연관된 제2 사용자 입력에 응답하여, 상기 하나의 디스플레이 셀을 기준으로 상기 디스플레이 크기 객체에 대응하는 크기로 상기 n x m개의 디스플레이 셀들 중 둘 이상의 디스플레이 셀들을 병합하여 단일 디스플레이 셀을 생성하도록 상기 디스플레이 크기 객체를 설정하는 단계; 디스플레이 소스 객체를 상기 캔버스 영역에 생성하고, 상기 디스플레이 소스 객체 및 상기 단일 디스플레이 셀과 연관된 제2 사용자 입력에 응답하여, 상기 디스플레이 소스 객체에 대응하는 소스 영상으로부터 상기 단일 디스플레이 셀의 높이 및 폭 중 적어도 하나에 매칭되면서 상기 소스 영상과 동일한 영상 비율을 가지는 모니터링 영상을 생성하도록 상기 디스플레이 소스 객체를 설정하는 단계; 및 상기 단일 디스플레이 셀의 적어도 일부에 상기 모니터링 영상을 제공하고, 상기 단일 디스플레이 셀의 나머지 부분에 검은 영상을 제공하도록 상기 단일 디스플레이 셀을 설정하는 단계를 더 포함할 수 있다.Wherein setting the display object comprises: generating a display size object in the canvas area; and responsive to a second user input associated with the display size object and one of the nxm display cells, Setting the display size object to merge two or more of the nxm display cells with a size corresponding to the display size object to generate a single display cell; Generating a display source object in the canvas region and generating at least one of a height and a width of the single display cell from a source image corresponding to the display source object in response to the display source object and a second user input associated with the single display cell Setting the display source object to generate a monitoring image having a same image ratio as the source image while being matched to one; And providing the monitoring image to at least a portion of the single display cell and setting the single display cell to provide a black image to the remaining portion of the single display cell.

복수의 모니터링 영상들을 제공하기 위한 동적인 디스플레이 컨트롤러 지원 방법은 상기 제1 사용자로부터 공통 제어 아이템과 연관된 제1 사용자 입력을 수신하는 단계; 상기 공통 제어 아이템과 연관된 제1 사용자 입력에 응답하여, 버튼, 이미지, 텍스트, 및 패널 중 적어도 하나를 캔버스 영역에 생성하는 단계를 더 포함할 수 있다.A method of supporting a dynamic display controller for providing a plurality of monitoring images includes receiving a first user input associated with a common control item from the first user; In response to the first user input associated with the common control item, generating at least one of the button, the image, the text, and the panel in the canvas area.

상기 접속을 허용하는 단계는, 상기 외부 단말의 웹 브라우저를 통해 HTTP(HyperText Transfer Protocol)에 기초하여, 상기 외부 단말과의 연결을 수립하는 단계; 및 상기 외부 단말로 위지위그 에디터(WYSIWYG editor)를 제공하는 단계를 포함할 수 있다.The step of allowing the connection includes: establishing a connection with the external terminal based on HTTP (HyperText Transfer Protocol) through a web browser of the external terminal; And providing a WYSIWYG editor to the external terminal.

복수의 모니터링 영상들을 제공하기 위한 동적인 디스플레이 컨트롤러 지원 방법은 상기 캔버스 영역의 배경과 연관된 제1 사용자 입력을 수신하는 단계; 상기 배경과 연관된 제1 사용자 입력에 기초하여 상기 복수의 셀들 주변의 배경 영역에 대해 배경 이미지 및 배경 색 중 적어도 하나를 결정하는 단계; 상기 배경 색이 결정된 경우에 응답하여, 상기 캔버스 영역의 배경을 상기 결정된 배경 색으로 제공하는 단계; 상기 배경 이미지가 결정된 경우에 응답하여, 상기 캔버스 영역의 배경에 상기 결정된 배경 이미지를 제공하는 단계; 및 상기 배경 색 및 상기 배경 이미지가 결정된 경우에 응답하여, 상기 배경 색으로 구성되는 상기 배경 영역에 상기 배경 이미지를 오버레이하여 제공하는 단계를 더 포함할 수 있다.A method of supporting a dynamic display controller to provide a plurality of monitoring images, comprising: receiving a first user input associated with a background of the canvas region; Determining at least one of a background image and a background color for a background area around the plurality of cells based on a first user input associated with the background; Providing a background of the canvas area as the determined background color in response to determining the background color; In response to determining the background image, providing the determined background image to the background of the canvas area; And providing the background image overlaid on the background area, which is made up of the background color, in response to the determination of the background color and the background image.

복수의 모니터링 영상들을 제공하기 위한 동적인 디스플레이 컨트롤러 지원 방법은 객체의 생성, 객체의 크기 변경, 객체의 그래픽 표현(graphic representation) 변경, 객체의 위치 변경, 및 둘 이상의 객체들의 병합(merge) 중 적어도 하나에 응답하여, 상기 캔버스 영역에 생성된 객체들을 포함하는 프로젝트 파일을 자동으로 업데이트하여 상기 서버에 저장하는 단계를 더 포함할 수 있다.A dynamic display controller support method for providing a plurality of monitoring images includes at least one of creating an object, resizing an object, changing a graphic representation of an object, changing an object position, and merging two or more objects And automatically updating the project file including the objects created in the canvas area in response to the one of the canvas area and storing the updated project file in the server.

복수의 모니터링 영상들을 제공하기 위한 동적인 디스플레이 컨트롤러 지원 방법은 복수의 객체들에 대해 Z 인덱스를 지정하는 단계; 지정된 Z 인덱스에 기초하여 상기 복수의 객체들을 정렬하는 단계; 및 정렬된 순서에 따라 상기 복수의 객체들을 상기 캔버스 영역에 제공하는 단계를 더 포함할 수 있다.A method of supporting a dynamic display controller for providing a plurality of monitoring images includes: designating a Z index for a plurality of objects; Arranging the plurality of objects based on a specified Z index; And providing the plurality of objects to the canvas area in an ordered sequence.

복수의 모니터링 영상들을 제공하기 위한 동적인 디스플레이 컨트롤러 지원 방법은 복수의 객체들 중 둘 이상의 객체들과 연관된 제1 사용자 입력에 응답하여, 상기 둘 이상의 객체들을 선택하고, 상기 선택된 둘 이상의 객체들을 단일 객체로 변환하는 단계; 및 단일 객체와 연관된 제1 사용자 입력에 응답하여, 상기 단일 객체를 상기 단일 객체에 대응하는 둘 이상의 객체들로 변환하는 단계를 더 포함할 수 있다.A method of supporting a dynamic display controller for providing a plurality of monitoring images comprises selecting the two or more objects in response to a first user input associated with two or more of the plurality of objects, ; And converting the single object to two or more objects corresponding to the single object in response to a first user input associated with the single object.

복수의 모니터링 영상들을 제공하기 위한 동적인 디스플레이 컨트롤러 지원 방법은 객체의 객체 타입에 따라 적어도 하나의 프로퍼티를 지정하는 단계; 복수의 객체들 중 둘 이상의 객체들과 연관된 제1 사용자 입력에 응답하여, 상기 둘 이상의 객체들을 선택하는 단계; 및 상기 선택된 둘 이상의 객체들에 공통적으로 지정된 프로퍼티(property)를 검색하며, 상기 공통적으로 지정된 프로퍼티를 표시하는 단계를 포함할 수 있다.A method of supporting a dynamic display controller for providing a plurality of monitoring images includes the steps of: specifying at least one property according to an object type of an object; Responsive to a first user input associated with two or more of the plurality of objects, selecting the two or more objects; And searching for a property commonly designated to the selected two or more objects, and displaying the commonly-designated property.

복수의 모니터링 영상들을 제공하기 위한 동적인 디스플레이 컨트롤러 지원 방법은 상기 선택된 둘 이상의 객체들에 지정된 프로퍼티들에 대응하는 이진 플래그들(binary flags)에 대해 이진 연산자(binary operator)를 적용하여 이진 조합(binary combination)을 생성하는 단계; 및 상기 이진 조합에 기초하여 상기 선택된 둘 이상의 객체들에 공통되는 프로퍼티에 대응하는 이진 값을 추출하는 단계를 포함할 수 있다.A method of supporting a dynamic display controller to provide a plurality of monitoring images comprises applying binary operators to binary flags corresponding to properties specified on the selected two or more objects to generate binary combinations combination; And extracting a binary value corresponding to a property common to the selected two or more objects based on the binary combination.

복수의 모니터링 영상들을 제공하기 위한 동적인 디스플레이 컨트롤러 지원 방법은 상기 선택된 둘 이상의 객체들에 공통적으로 지정된 프로퍼티가 존재하는 경우, 상기 공통적으로 지정된 프로퍼티와 연관된 제1 사용자 입력의 수신에 응답하여, 상기 공통적으로 지정된 프로퍼티를 상기 선택된 둘 이상의 객체들에 대해 일괄적으로 설정하는 단계를 더 포함할 수 있다.A method of supporting a dynamic display controller for providing a plurality of monitoring images, comprising the steps of: if a property commonly designated to two or more selected objects exists, in response to receiving a first user input associated with the commonly- To the selected two or more objects at the same time.

복수의 모니터링 영상들을 제공하기 위한 동적인 디스플레이 컨트롤러 지원 방법은 미리 정해진 문서 서식에 따라 소스와 액션 리스트를 갱신하는 단계를 더 포함할 수 있다.The dynamic display controller support method for providing a plurality of monitoring images may further include updating the source and action list according to a predetermined document format.

복수의 모니터링 영상들을 제공하기 위한 동적인 디스플레이 컨트롤러 지원 방법은 복수의 객체들 중 둘 이상의 객체들과 연관된 제1 사용자 입력에 응답하여, 상기 둘 이상의 객체들을 선택하는 단계; 상기 둘 이상의 객체들 중 처음에 선택된 객체를 기준 객체로 지정하는 단계; 및 상기 기준 객체를 기초로 상기 선택된 둘 이상의 객체들 중 나머지 객체를 정렬하는 단계를 더 포함할 수 있다.A method of supporting a dynamic display controller for providing a plurality of monitoring images comprises: selecting the two or more objects in response to a first user input associated with two or more of the plurality of objects; Designating a first object selected from the two or more objects as a reference object; And sorting the remaining objects of the two or more selected objects based on the reference object.

복수의 모니터링 영상들을 제공하기 위한 동적인 디스플레이 컨트롤러 지원 방법은 상기 캔버스 영역에 더하여 메뉴 영역, 툴박스 영역, 및 프로퍼티 영역을 제공하는 단계를 더 포함하고, 상기 메뉴 영역은, 객체를 정렬시키는 동작을 실행하기 위한 아이템, 프로젝트를 동작시키기 위한 아이템, 동작을 수정하기 위한 아이템, 미리보기 동작을 실행하기 위한 아이템, 및 환경설정을 위한 아이템을 포함하고, 상기 툴박스 영역은, 생성될 객체의 타입을 지정하기 위한 아이템을 포함하며, 상기 캔버스 영역은, 생성된 객체가 배치되는 영역이며, 상기 프로퍼티 영역은, 상기 생성된 객체의 프로퍼티 및 상기 캔버스 영역의 프로퍼티를 변경하기 위한 아이템을 포함할 수 있다.A method of supporting a dynamic display controller for providing a plurality of monitoring images, the method further comprising providing a menu area, a tool box area, and a property area in addition to the canvas area, An item for operating the project, an item for modifying the operation, an item for executing the preview operation, and an item for setting the environment, and the toolbox area includes an item for specifying the type of the object to be created Wherein the canvas area is an area in which the created object is disposed, and the property area may include an item for changing a property of the created object and a property of the canvas area.

일 실시예에 따르면 복수의 모니터링 영상들을 제공하기 위한 동적인 디스플레이 컨트롤러 지원 장치는 제1 사용자의 외부 단말과 통신하는 통신부; 상기 통신부를 통해 상기 장치에 대한 상기 외부 단말의 상기 제1 사용자의 접속을 허용하고, 상기 통신부를 통해 상기 제1 사용자로부터 스크린 제어 아이템(screen control item)과 연관된 제1 사용자 입력을 수신하며, 상기 스크린 제어 아이템과 연관된 제1 사용자 입력의 수신에 응답하여 캔버스 영역(canvas region)에 디스플레이 객체를 생성하고, 제2 사용자로부터 수신되는 상기 디스플레이 객체와 연관된 제2 사용자 입력에 응답하여 보안 카메라로부터 스트리밍되는 복수의 소스 영상들 중에서 상기 디스플레이 객체에 대응하는 소스 영상이 제공되도록 상기 디스플레이 객체를 설정하는 처리부를 포함할 수 있다.According to one embodiment, a dynamic display controller support apparatus for providing a plurality of monitoring images includes a communication unit for communicating with an external terminal of a first user; Allowing a connection of the first user of the external terminal to the device via the communication unit and receiving a first user input associated with a screen control item from the first user via the communication unit, Creating a display object in a canvas region in response to receiving a first user input associated with the screen control item and streaming the security object from the security camera in response to a second user input associated with the display object received from the second user And a processing unit configured to set the display object such that a source image corresponding to the display object is provided from a plurality of source images.

일 실시예에 따르면, 사용자들은 서버를 통해 협업하여 중앙집중형 모니터링 시스템을 제작 및 수정할 수 있게 해주는 저작 도구를 제공할 수 있다.According to one embodiment, users can provide authoring tools that allow them to collaborate through a server to create and modify a centralized monitoring system.

일 실시예에 따르면, 보안 카메라와 객체에 대한 작업 소스 목록을 업데이트 할 수 있고, 소스의 동작과 방법의 목록이 포함된 문서 구조를 통해, 재컴파일 없이 중앙집중형 모니터링 시스템을 수정할 수 있다.According to one embodiment, a list of working sources for security cameras and objects can be updated, and a centralized monitoring system can be modified without recompilation through a document structure that includes a list of operations and methods of the source.

일 실시예에 따르면 사용자는 위지위그 에디터를 통해 동적인 디스플레이를 용이하게 저작할 수 있다.According to one embodiment, a user can easily author a dynamic display via a wiggie editor.

일 실시예에 따르면, 사용자는 웹 브라우저를 통해 플랫폼의 제한 없이 위지위그 저작 도구를 사용할 수 있다.According to one embodiment, a user can use the Wii Wig authoring tool through a web browser without limitation of a platform.

도 1은 일 실시예에 따른 복수의 모니터링 영상들을 제공하기 위한 동적인 디스플레이 컨트롤러 지원 장치를 도시한 블록도이다.
도 2 내지 도 5는 일 실시예에 따른 HTML5 캔버스를 이용한 위지위그 에디터를 설명하기 위한 도면이다.
도 6 내지 도 8은 일 실시예에 따른 캔버스 영역의 배경을 변경하는 과정을 설명하기 위한 도면이다.
도 9는 일 실시예에 따른 객체를 다중선택 하는 과정 및 그룹화와 그룹화 해제하는 과정을 설명하기 위한 도면이다.
도 10 및 도 11은 일 실시예에 따른 메뉴 인터페이스를 설명하기 위한 도면이다.
도 12 내지 도 14는 일 실시예에 따른 보안 카메라로부터의 스트리밍되는 영상을 제공하는 디스플레이 객체를 설명하기 위한 도면이다.
도 15는 일 실시예에 따른 복수의 모니터링 영상들을 제공하기 위한 동적인 디스플레이 컨트롤러 지원 방법을 설명하기 위한 흐름도이다.
1 is a block diagram illustrating a dynamic display controller support device for providing a plurality of monitoring images according to one embodiment.
FIGS. 2 to 5 are diagrams for explaining a wiggie editor using an HTML5 canvas according to an embodiment.
FIGS. 6 to 8 are views for explaining a process of changing the background of the canvas area according to an embodiment.
FIG. 9 is a diagram for explaining a process of multiple selection of objects and a process of grouping and ungrouping objects according to an embodiment.
10 and 11 are diagrams for explaining a menu interface according to an embodiment.
12 to 14 are views for explaining a display object providing a streamed image from a security camera according to an embodiment.
15 is a flowchart illustrating a dynamic display controller support method for providing a plurality of monitoring images according to an exemplary embodiment.

본 명세서에 개시되어 있는 본 발명의 개념에 따른 실시예들에 대해서 특정한 구조적 또는 기능적 설명들은 단지 본 발명의 개념에 따른 실시예들을 설명하기 위한 목적으로 예시된 것으로서, 본 발명의 개념에 따른 실시예들은 다양한 형태로 실시될 수 있으며 본 명세서에 설명된 실시예들에 한정되지 않는다.It is to be understood that the specific structural or functional descriptions of embodiments of the present invention disclosed herein are presented for the purpose of describing embodiments only in accordance with the concepts of the present invention, May be embodied in various forms and are not limited to the embodiments described herein.

본 발명의 개념에 따른 실시예들은 다양한 변경들을 가할 수 있고 여러 가지 형태들을 가질 수 있으므로 실시예들을 도면에 예시하고 본 명세서에 상세하게 설명하고자 한다. 그러나, 이는 본 발명의 개념에 따른 실시예들을 특정한 개시형태들에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 변경, 균등물, 또는 대체물을 포함한다.Embodiments in accordance with the concepts of the present invention are capable of various modifications and may take various forms, so that the embodiments are illustrated in the drawings and described in detail herein. However, it is not intended to limit the embodiments according to the concepts of the present invention to the specific disclosure forms, but includes changes, equivalents, or alternatives falling within the spirit and scope of the present invention.

제1 또는 제2 등의 용어를 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만, 예를 들어 본 발명의 개념에 따른 권리 범위로부터 이탈되지 않은 채, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소는 제1 구성요소로도 명명될 수 있다.The terms first, second, or the like may be used to describe various elements, but the elements should not be limited by the terms. The terms may be named for the purpose of distinguishing one element from another, for example without departing from the scope of the right according to the concept of the present invention, the first element being referred to as the second element, Similarly, the second component may also be referred to as the first component.

어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. 구성요소들 간의 관계를 설명하는 표현들, 예를 들어 "~사이에"와 "바로~사이에" 또는 "~에 직접 이웃하는" 등도 마찬가지로 해석되어야 한다.It is to be understood that when an element is referred to as being "connected" or "connected" to another element, it may be directly connected or connected to the other element, . On the other hand, when an element is referred to as being "directly connected" or "directly connected" to another element, it should be understood that there are no other elements in between. Expressions that describe the relationship between components, for example, "between" and "immediately" or "directly adjacent to" should be interpreted as well.

본 명세서에서 사용한 용어는 단지 특정한 실시예들을 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 설시된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함으로 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the invention. The singular expressions include plural expressions unless the context clearly dictates otherwise. In this specification, the terms "comprises ", or" having ", and the like, are used to specify one or more of the features, numbers, steps, operations, elements, But do not preclude the presence or addition of steps, operations, elements, parts, or combinations thereof.

다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 갖는 것으로 해석되어야 하며, 본 명세서에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless defined otherwise, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art to which this invention belongs. Terms such as those defined in commonly used dictionaries are to be interpreted as having a meaning consistent with the meaning of the context in the relevant art and, unless explicitly defined herein, are to be interpreted as ideal or overly formal Do not.

이하, 실시예들을 첨부된 도면을 참조하여 상세하게 설명한다. 그러나, 특허출원의 범위가 이러한 실시예들에 의해 제한되거나 한정되는 것은 아니다. 각 도면에 제시된 동일한 참조 부호는 동일한 부재를 나타낸다.Hereinafter, embodiments will be described in detail with reference to the accompanying drawings. However, the scope of the patent application is not limited or limited by these embodiments. Like reference symbols in the drawings denote like elements.

본 명세서에서 설명되는 복수의 모니터링 영상들을 제공하기 위한 동적인 디스플레이 컨트롤러 지원 장치(이하, 컨트롤러 지원 장치)는 복수의 모니터링 영상들을 동적으로 표시할 수 있는 디스플레이 컨트롤러를 제공하는 중앙집중형 모니터링 시스템을 저작하는 도구로서, 소프트웨어, 하드웨어, 및 소프트웨어 및 하드웨어의 결합으로 구현될 수 있다.A dynamic display controller supporting device (hereinafter referred to as a controller supporting device) for providing a plurality of monitoring images described in this specification includes a centralized monitoring system that provides a display controller capable of dynamically displaying a plurality of monitoring images, A combination of software, hardware, and software and hardware.

일 실시예에 따른 컨트롤러 지원 장치는 웹 브라우저를 통해 위지위그(WYSIWYG, What You See Is What You Get) 저작 도구를 제공할 수 있다. 컨트롤러 지원 장치는 동적인 디스플레이 컨트롤러를 포함하는 프로젝트 파일을 저작할 수 있다. 이 프로젝트 파일은 화면 크기와 화면 해상도를 변경하기 위한 객체를 포함할 수 있다. 컨트롤러 지원 장치는 제한이 없는 소스와 스크린 컨트롤러, 동적인 디스플레이, 패널, 버튼, 텍스트, 이미지를 포함한 동적 디스플레이 객체를 생성할 수 있다. 각 객체들은 크기와 위치, 물체의 모양에 제한이 없을 수 있다. 일 실시예에 따른 컨트롤러 지원 장치는 사용자가 보이는 대로 작업한 객체들의 수정이 있을 때마다 프로젝트 파일을 자동으로 업데이트 할 수 있다. 컨트롤러 지원 장치는 프로젝트 파일을 서버에 저장할 수 있고, 차후 수정을 위해 서버로부터 불러올 수도 있다. 이하에서는 컨트롤러 지원 장치에 대해 상세히 설명한다.The controller supporting apparatus according to an embodiment can provide a WYSIWYG (What You See Is What You Get) authoring tool through a web browser. A controller-enabled device can author a project file containing a dynamic display controller. This project file can contain objects for changing the screen size and screen resolution. Controller-enabled devices can create dynamic display objects, including unrestricted sources and screen controllers, dynamic displays, panels, buttons, text, and images. Each object may be unlimited in size, position, or shape of the object. The controller support device according to an exemplary embodiment may automatically update a project file whenever there is a modification of objects that the user has viewed as shown. The controller-supported device can save the project file to the server and can be called from the server for later modification. Hereinafter, the controller supporting apparatus will be described in detail.

도 1은 본 발명의 일 실시예에 따른 복수의 모니터링 영상들을 제공하기 위한 동적인 디스플레이 컨트롤러 지원 장치를 나타내는 블록도이다.1 is a block diagram illustrating a dynamic display controller support apparatus for providing a plurality of monitoring images according to an embodiment of the present invention.

일 실시예에 따른 복수의 모니터링 영상들을 제공하기 위한 동적인 디스플레이 컨트롤러 지원 장치(100, 이하, 컨트롤러 지원 장치)는 통신부(110), 처리부(120), 및 저장부(130)를 포함할 수 있다.A dynamic display controller support apparatus 100 (hereinafter referred to as a controller support apparatus) for providing a plurality of monitoring images according to an embodiment may include a communication unit 110, a processing unit 120, and a storage unit 130 .

예를 들어, 컨트롤러 지원 장치(100)는 외부 단말로 위지위그 에디터 기능을 제공하는 서버일 수 있다.For example, the controller supporting apparatus 100 may be a server that provides a wiggie editor function to an external terminal.

통신부(110)는 제1 사용자의 외부 단말과 통신할 수 있다. 예를 들어, 통신부(110)는 유선 또는 무선을 통해 외부 단말과 통신할 수 있다. 외부 단말은 통신 가능한 전자 기기로서, 서버와 구별되는 기기를 나타낼 수 있다. 제1 사용자는 외부 단말을 통해 서버에 접속하여 위지위그 에디터 기능을 이용하는 사용자로서, 중앙집중형 모니터링 시스템을 저작하는 사용자를 나타낼 수 있다. 일 실시예에 따르면, 통신부(110)는 외부 단말의 웹 브라우저를 통해 HTTP(HyperText Transfer Protocol)에 기초하여, 외부 단말과의 연결을 수립할 수 있고, 처리부(120)의 제어에 따라 외부 단말로 위지위그 에디터(WYSIWYG editor)를 제공할 수 있다.The communication unit 110 can communicate with an external terminal of the first user. For example, the communication unit 110 can communicate with an external terminal through wired or wireless communication. An external terminal is an electronic device capable of communicating, and can represent a device that is distinguished from a server. The first user may be a user who accesses the server through an external terminal and uses the wiki wig editor function, and may represent a user authoring the centralized monitoring system. According to one embodiment, the communication unit 110 can establish a connection with an external terminal on the basis of HyperText Transfer Protocol (HTTP) through a web browser of an external terminal, and can communicate with an external terminal under the control of the processing unit 120 You can provide a WYSIWYG editor.

처리부(120)는 다중 선택된 객체에서 공통되는 프로퍼티를 검색하기 위한 알고리즘을 실행할 수 있다. 예를 들면, 처리부(120)는 만일 사용자가 복수의 객체들을 선택하면, 선택된 복수의 객체들에서 공통되는 프로퍼티를 프로퍼티 영역으로 제공할 수 있다. 또한, 처리부(120)는 미리 정해진 문서 서식에 따라 소스와 액션 리스트를 갱신함으로써, 코드를 재컴파일할 필요가 없고 보안 카메라와 UI 객체(user interface object)에 대한 작업 소스 목록을 업데이트할 수 있다. 처리부(120)가 재컴파일이 필요 없도록, 소스의 동작과 방법의 목록이 포함된 문서 구조가 정의될 수 있다.The processing unit 120 may execute an algorithm for retrieving properties common to multiple selected objects. For example, if the user selects a plurality of objects, the processing unit 120 may provide a property common to the selected plurality of objects in the property area. In addition, the processing unit 120 updates the source and action list according to a predetermined document format, so that it is not necessary to recompile the code, and can update the operation source list for the security camera and the UI object (user interface object). A document structure including a list of operations and methods of the source can be defined so that the processing unit 120 does not need to recompile.

또한, 처리부(120)는 외부 단말이 웹브라우저를 통해 서버와 접속되면, HTML5(HyperText Markup Language 5)로 구현된 캔버스 기반 위지위그 에디터를 실행하여 외부 단말로 제공할 수 있다. 처리부(120)는 캔버스 영역의 객체가 업데이트될 때마다 프로젝트 파일을 업데이트할 수 있다. 더 나아가, 처리부(120)는 캔버스 영역 내의 객체에 대해 Z 인덱스(Z index) 알고리즘을 실행할 수 있다. 아울러, 처리부(120)는 제1 사용자의 입력에 따라, 보안 카메라로부터의 비디오 스트리밍이 가능한 디스플레이 객체를 저작할 수 있다. 여기서, 처리부(120)는 저작이 완료된 중앙집중형 모니터링 시스템에서 셀 병합 기능 및 PIP(Picture In Picture) 기능이 수행되도록 디스플레이 객체들을 생성할 수 있다.When the external terminal is connected to the server through the web browser, the processing unit 120 can execute the canvas-based wigg editor implemented in HTML5 (HyperText Markup Language 5) and provide it to the external terminal. The processing unit 120 may update the project file each time an object in the canvas area is updated. Furthermore, the processing unit 120 may execute a Z index algorithm for objects in the canvas region. In addition, the processing unit 120 may author a display object capable of video streaming from the security camera according to the input of the first user. Here, the processing unit 120 may generate display objects so that the cell merging function and the PIP (Picture In Picture) function are performed in the centralized monitoring system in which the work is completed.

일 실시예에 따르면 처리부(120)는 통신부(110)를 통해 장치(100)(예를 들어, 컨트롤러 지원 장치(100))에 대한 외부 단말의 제1 사용자의 접속을 허용하고, 통신부(110)를 통해 제1 사용자로부터 스크린 제어 아이템(screen control item)과 연관된 제1 사용자 입력을 수신하며, 스크린 제어 아이템과 연관된 제1 사용자 입력의 수신에 응답하여 캔버스 영역(canvas region)에 디스플레이 객체를 생성하고, 제2 사용자로부터 수신되는 디스플레이 객체와 연관된 제2 사용자 입력에 응답하여 보안 카메라로부터 스트리밍되는 복수의 소스 영상들 중에서 디스플레이 객체에 대응하는 소스 영상이 제공되도록 디스플레이 객체를 설정할 수 있다.The processing unit 120 permits the first user of the external terminal to access the device 100 (for example, the controller supporting apparatus 100) through the communication unit 110, Receiving a first user input associated with a screen control item from a first user via the first screen control item and generating a display object in a canvas region in response to receiving the first user input associated with the screen control item , And set the display object such that a source image corresponding to the display object is provided from a plurality of source images streamed from the security camera in response to a second user input associated with the display object received from the second user.

스크린 제어 아이템은 디스플레이 객체를 저작하기 위한 아이템이고, 캔버스 영역은 객체가 생성되는 영역이며, 디스플레이 객체는 저작이 완료된 후에 동적으로 디스플레이를 제2 사용자가 제어할 수 있도록 하는 객체를 나타낼 수 있고, 하기 도 5에서 상세히 설명한다. 제2 사용자는 저작이 완료된 후에 중앙집중형 모니터링 시스템을 이용하는 사용자를 나타낼 수 있다. 스크린 제어 아이템과 연관된 제1 사용자 입력은, 저작이 완료된 후에 스크린을 제어하기 위한 디스플레이 객체를 생성하기 위해 제1 사용자로부터 수신되는 스크린 제어 아이템에 대한 입력(예를 들어, 스크린 제어 아이템을 클릭하는 조작 등)을 나타낼 수 있다. 디스플레이 객체와 연관된 제2 사용자 입력은 저작이 완료된 이후에 제2 사용자로부터 수신되는 디스플레이 객체에 대한 입력(예를 들어, 디스플레이 객체를 클릭하는 조작 등)을 나타낼 수 있다. 보안 카메라는 영상을 촬영하여 중앙집중형 모니터링 시스템으로 촬영된 영상을 스트리밍을 통해 제공하는 카메라를 나타낼 수 있다. 소스 영상은 보안 카메라로부터 스트리밍되는 영상을 나타낼 수 있다.The screen control item is an item for authoring a display object, the canvas area is an area in which an object is created, the display object can represent an object that allows a second user to dynamically control the display after authoring is completed, This will be described in detail in FIG. The second user may indicate a user using the centralized monitoring system after authoring is completed. The first user input associated with the screen control item may include an input for a screen control item received from the first user to create a display object for controlling the screen after authoring is complete Etc.). The second user input associated with the display object may indicate an input (e.g., an operation to click on the display object, etc.) to the display object received from the second user after authoring is completed. The security camera may represent a camera that captures an image and provides the captured image through a centralized monitoring system through streaming. The source image may represent an image streamed from a security camera.

본 명세서에서 제1 사용자 입력은 제1 사용자에 의한 입력을 나타내고, 제2 사용자 입력은 제2 사용자에 의한 입력을 나타낼 수 있으며, 각 입력은 마우스 클릭, 키 입력, 마우스 드래그, 드래그앤드랍, 터치 및 기타 다양한 형태의 조작을 모두 포함할 수 있다. 다만, 상술한 입력의 종류들은 단순한 예시로서, 이로 한정하는 것은 아니다.Herein, the first user input represents an input by a first user, the second user input may represent an input by a second user, and each input may include a mouse click, a key input, a mouse drag, a drag and drop, And various other types of manipulations. However, the types of the above-described inputs are merely examples, and the present invention is not limited thereto.

저장부(130)는 처리부(120)가 상술한 동작들을 실행하도록 하는 명령어들을 포함하는 컴퓨터 프로그램을 저장할 수 있다. 또한, 저장부(130)는 중앙집중형 모니터링 시스템을 저작 및 제공하기 위한 데이터를 임시적으로 또는 반영구적으로 저장할 수도 있다. 예를 들어, 저장부(130)는 프로젝트 파일 등을 저장할 수 있고, 처리부(120)의 제어에 따라 업데이트할 수 있다.The storage unit 130 may store a computer program containing instructions for causing the processing unit 120 to execute the above-described operations. In addition, the storage unit 130 may temporarily or semi-permanently store data for authoring and providing the centralized monitoring system. For example, the storage unit 130 may store a project file or the like, and may update the file according to the control of the processing unit 120.

일 실시예에 따르면, 컨트롤러 지원 장치(100)의 처리부(120)는 객체의 객체 타입에 따라 적어도 하나의 프로퍼티를 지정할 수 있다. 처리부(120)는 복수의 객체들 중 둘 이상의 객체들과 연관된 제1 사용자 입력에 응답하여, 둘 이상의 객체들을 선택할 수 있다. 또한, 처리부(120)는 선택된 둘 이상의 객체들에 공통적으로 지정된 프로퍼티(property)를 검색하며, 공통적으로 지정된 프로퍼티를 표시할 수 있다. 둘 이상의 객체들에 공통적으로 지정된 프로퍼티를 검색하는 알고리즘은 하기 표 1에서, 둘 이상의 객체들을 선택하는 알고리즘은 하기 표 2에서 설명한다.According to one embodiment, the processing unit 120 of the controller supporting apparatus 100 may designate at least one property according to the object type of the object. The processing unit 120 may select two or more objects in response to a first user input associated with two or more of the plurality of objects. In addition, the processing unit 120 may search for a property commonly designated to two or more selected objects, and may display a commonly-designated property. An algorithm for searching a property commonly designated to two or more objects is shown in Table 1 below, and an algorithm for selecting two or more objects is described in Table 2 below.

하기 표 1은 일 실시예에 따른 컨트롤러 지원 장치(100)가 선택된 복수개의 객체들에서 공통되는 프로퍼티를 검색하기 위한 알고리즘을 슈도 코드(pseudo code)로 나타낼 수 있다. 하기 표 1에서 객체를 컴포넌트(component)라고 표현할 수 있다.Table 1 below shows an algorithm for searching a property common to a plurality of objects selected by the controller support apparatus 100 according to an exemplary embodiment in pseudo code. In the following Table 1, an object can be expressed as a component.

Getting the common properties in the selection
input addedComponents
compute firstBit
set firstComponent to result of 1 left shift firstBit (1 << firstBit)
set propertiesToReturn to properties of firstComponent
for c in componentTypes
if addedComponents has c
set propertiesToReturn to intersection of properties of c and propertiesToReturn
return propertiesToReturn
Getting the common properties in the selection
input addedComponents
compute firstBit
set firstComponent to result in 1 left shift firstBit (1 << firstBit)
set propertiesToReturn to properties of firstComponent
for c in componentTypes
if addedComponents has c
set propertiesToReturn to intersection of properties of c and propertiesToReturn
return propertiesToReturn

상술한 표 1과 같이, 처리부(120)는 선택된 둘 이상의 객체들에 지정된 프로퍼티들에 대응하는 이진 플래그들(binary flags)에 대해 이진 연산자(binary operator)를 적용하여 이진 조합(binary combination)(예를 들어, 표 1에서 addedComponents)을 생성할 수 있다. 또한, 처리부(120)는 이진 조합에 기초하여 선택된 둘 이상의 객체들에 공통되는 프로퍼티에 대응하는 이진 값(예를 들어, 표 1에서 propertiesToReturn)을 추출할 수 있다. 이진 플래그는 각각의 프로퍼티에 대해 고유하게 지정된 이진 값(binary value)을 나타낼 수 있다.As shown in Table 1, the processing unit 120 applies a binary operator to binary flags corresponding to the properties specified for two or more selected objects to obtain a binary combination For example, addComponents in Table 1 can be generated. In addition, the processing unit 120 may extract a binary value (e.g., propertiesToReturn in Table 1) corresponding to properties common to two or more objects selected based on the binary combination. The binary flag may represent a binary value uniquely assigned to each property.

예를 들어, 처리부(120)는 선택된 객체들에 공통된 프로퍼티를 검색하기 위해 이진 조합 중 첫번째 비트(예를 들어, 표 1의 firstBit)를 확인할 수 있다. 그 후엔 처리부(120)는 선택된 복수의 객체들에 대해 각 프로퍼티에 대해 고유하게 지정된 이진 플래그가 존재하는 지를 순차적으로 반복하여 확인할 수 있다. 처리부(120)는 캔버스 영역의 선택 범위 안에서 선택된 객체들이 어떤 프로퍼티를 가지는지 확인할 수 있다. 처리부(120)는 선택된 객체들의 객체 타입을 찾을 때마다, 선택된 객체들이 공유하는 프로퍼티를 확인해 나갈 수 있다. 처리부(120)는 처음엔 공유 프로퍼티를 첫번째 객체 타입으로 결정할 수 있고, 그 후엔 다른 객체 타입을 선택 범위 안에서 찾을 때마다 검출해낼 수 있다.For example, processing unit 120 may check the first bit of the binary combination (e.g., firstBit in Table 1) to retrieve properties common to the selected objects. Thereafter, the processing unit 120 may sequentially check whether a binary flag uniquely designated for each property is present for the selected plurality of objects. The processing unit 120 can check which properties the selected objects have within the selection range of the canvas area. Each time the processing unit 120 finds the object type of the selected objects, the processing unit 120 can confirm the properties shared by the selected objects. The processing unit 120 may first determine the shared property as the first object type, and then detect each time another object type is found within the selection range.

처리부(120)는 선택된 객체들에서 서로 중복되는 프로퍼티(예를 들어, 버튼 및 이미지에서의 폭, 높이 등의 값들)을 검출하여, 선택된 객체들의 공통된 프로퍼티를 한번에 조정할 수 있다. 예를 들어, 처리부(120)는 선택된 둘 이상의 객체들에 공통적으로 지정된 프로퍼티가 존재하는 경우, 공통적으로 지정된 프로퍼티와 연관된 제1 사용자 입력의 수신에 응답하여, 공통적으로 지정된 프로퍼티를 선택된 둘 이상의 객체들에 대해 일괄적으로 설정할 수 있다. 공통적으로 지정된 프로퍼티와 연관된 제1 사용자 입력은, 선택된 객체들에 공통되는 프로퍼티를 변경하는 제1 사용자의 입력을 나타낼 수 있다.The processing unit 120 may detect overlapping properties (e.g., values such as width and height in buttons and images) in the selected objects and adjust the common properties of the selected objects at once. For example, in response to receiving a first user input associated with a commonly-assigned property, the processing unit 120 may compare a commonly-assigned property to a selected two or more objects Can be set collectively. A first user input associated with a commonly assigned property may represent an input of a first user that changes properties common to the selected objects.

하기 표 2는 일 실시예에 따른 컨트롤러 지원 장치(100)가 복수개의 객체를 선택하는 과정을 나타낸 슈도 코드일 수 있다.Table 2 below may be a pseudo code indicating a process of the controller supporting apparatus 100 selecting a plurality of objects according to one embodiment.

프로퍼티는 객체를 정의하는 정보로서, 예를 들어 배경색, 높이, 폭, 배경이미지, 객체 색상, 객체 형태 등의 다양한 정보를 나타낼 수 있다. 객체의 타입마다 지정되는 프로퍼티는 달라질 수 있으며, 예를 들어, 객체의 타입은 텍스트 객체, 버튼 객체, 사진 객체, 영상 객체, 및 디스플레이 객체 등이 있을 수 있다.A property is information defining an object, and can represent various information such as background color, height, width, background image, object color, object shape, and the like. For example, the type of an object may be a text object, a button object, a photo object, a video object, and a display object.

addedComponents - binary value which shows the types of components added to the selection.
It?s updated whenever component is added/removed to/from the selection Initially addedComponents is initialized to the binary flag, which shows that none of the items are added to the selection.

Adding component to the selection:
input componentToAdd, addedComponents
set componentType to component type of the componentToAdd
for c in componentTypes
if c == componentType
set addedComponents to addedComponents | componentTypeBinaryFlag
increment componentTypeCounter to 1
break

Removing component from the selection:
input componentToRemove, addedComponents
set componentType to component type of the componentToRemove
for c in componentTypes
if c == componentType
decrement componentTypeCounter to 1
if componentTypeCounter == 0
set addedComponents to addedComponents & ~componentTypeBinaryFlag
break
addedComponents - binary value which shows the types of components added to the selection.
It? S updated whenever component is added / removed to / from the selection. Initially addedComponents is initialized to the binary flag, which shows that none of the items are added to the selection.

Adding component to the selection:
input componentToAdd, addedComponents
set componentType to component type of the componentToAdd
for c in componentTypes
if c == componentType
set addedComponents to addedComponents | componentTypeBinaryFlag
increment componentTypeCounter to 1
break

Removing component from the selection:
input componentToRemove, addedComponents
set componentType to component type of the componentToRemove
for c in componentTypes
if c == componentType
decrement componentTypeCounter to 1
if componentTypeCounter == 0
set addedComponents to addedComponents & ~ componentTypeBinaryFlag
break

하기 표 3은 일 실시예에 따른 소스와 액션 목록을 시스템 재컴파일 없이 업데이트 하기 위해 정의된 문서 구조(document structure)를 나타낼 수 있다.Table 3 below may represent a document structure defined to update the source and action list according to one embodiment without system recompilation.

Document structure is developed as json object, containing list of sources and commands.

{
"server": "<server url>?,
"port": "<port number>?,
"actions": {
"<action name>": "<action definition>"
}
“sources": {
"<source name>": "<source URI>"
}
}
Routine to read sources and actions from document conforming to the said document structure:

input dataFile
initialize list of sources
initialize list of commands
for actions in dataFile.actions
add action to list of actions
for source in dataFile.sources
add source to list of sources
Document structure is developed as json object, containing list of sources and commands.

{
"server": "<server url> ?,
"port": "<port number>?"
"actions": {
"<action name>": "<action definition>"
}
"Sources": {
"<source name>": "<source URI>"
}
}
Routine to read sources and actions from document conforming to the said document structure:

input dataFile
initialize list of sources
initialize list of commands
for actions in dataFile.actions
add action to list of actions
for source in dataFile.sources
add source to list of sources

컨트롤러 지원 장치(100)는 UI 컴포넌트의 감시카메라 소스와 액션 리스트를 정의하기 위한 문서 서식(상술한 표 3 참조)을 제공할 수 있다. 컨트롤러 지원 장치(100)는 모든 소스와 액션을 개발된 서식에 따라 상술한 문서 안에 저장할 수 있다. 컨트롤러 지원 장치(100)는 동적인 디스플레이 컨트롤러를 포함하는 중앙집중형 모니터링 시스템을 개발하는 동안에는, 만들어진 형식대로 문서를 읽고 소스와 액션 리스트를 갱신하는 시스템 루틴을 제공할 수 있다.The controller support apparatus 100 may provide a document format (see Table 3, described above) for defining a surveillance camera source and an action list of the UI component. The controller support device 100 may store all the sources and actions in the above-described document according to the developed format. While developing a centralized monitoring system that includes a dynamic display controller, the controller support device 100 may provide a system routine that reads the document in a constructed format and updates the source and action list.

도 2 내지 도 5는 일 실시예에 따른 HTML5 캔버스를 이용한 위지위그 에디터를 설명하기 위한 도면이다.FIGS. 2 to 5 are diagrams for explaining a wiggie editor using an HTML5 canvas according to an embodiment.

도 2는 외부 단말(291, 292)의 사용자가 웹 브라우저(Web browser)를 통해 서버 내의 위지위그 에디터(210)를 사용하는 일례를 나타낼 수 있다.2 illustrates an example in which a user of the external terminals 291 and 292 uses the wiggie editor 210 in the server through a web browser.

도 2에 도시된 바와 같이, 컨트롤러 지원 장치(100)(예를 들어, 도 2에 도시된 서버)는 HTML5 캔버스를 포함한 웹 기술을 이용하여 위지위그 에디터(210)를 외부 단말(291, 292)로 제공할 수 있다. 상술한 위지위그 에디터(210)는 서버인 컨트롤러 지원 장치(100)에 배치되어 있으므로, 외부 단말(291, 292)의 제1 사용자는 다양한 플랫폼의 외부 단말(291, 292)(예를 들어, 윈도우 기반 PC, MAC 기반 PC, 리눅스 기반 PC 등)와 다양한 종류의 브라우저에서 상술한 위지위그 에디터(210)를 이용할 수 있다. 외부 단말(291, 292)은 예를 들어, HTTP를 통해 서버에 접속할 수 있다.2, the controller supporting apparatus 100 (for example, the server shown in FIG. 2) transmits the wig wig editor 210 to the external terminals 291 and 292 using a web technology including an HTML5 canvas, . The first user of the external terminals 291 and 292 is able to communicate with the external terminals 291 and 292 of various platforms Based PC, a MAC-based PC, a Linux-based PC, and the like) and various types of browsers. The external terminals 291 and 292 can connect to the server via HTTP, for example.

또한, 컨트롤러 지원 장치(100)는 외부 단말(291, 292)의 제1 사용자가 어떠한 사항을 변경할 때 마다, 예를 들어 객체를 변경할 때마다 프로젝트 파일을 업데이트하는 위지위그 에디터(210)를 제공할 수 있다. 예를 들어, 컨트롤러 지원 장치(100)는 객체의 생성, 객체의 크기 변경, 객체의 그래픽 표현(graphic representation) 변경, 객체의 위치 변경, 및 둘 이상의 객체들의 병합(merge) 중 적어도 하나에 응답하여, 캔버스 영역에 생성된 객체들을 포함하는 프로젝트 파일을 자동으로 업데이트하여 서버에 저장할 수 있다. 그래픽 표현은 객체가 외부 단말의 스크린을 통해 웹브라우저에 시각화되는 형태를 나타낼 수 있다.In addition, the controller support apparatus 100 provides a wig wig editor 210 for updating a project file whenever a first user of the external terminals 291 and 292 changes something, for example, every time the object is changed . For example, the controller aiding device 100 may respond to at least one of creating an object, resizing the object, changing the graphic representation of the object, changing the location of the object, and merging two or more objects , The project file including the objects created in the canvas area can be automatically updated and stored in the server. The graphical representation may represent a form in which an object is visualized in a web browser through a screen of an external terminal.

도 3은 위지위그 에디터의 웰컴 스크린(300)에 대한 일례를 나타낼 수 있다.FIG. 3 shows an example of the welcome screen 300 of the wiggie editor.

도 3에 도시된 바와 같이, 컨트롤러 지원 장치(100)는 제1 사용자가 처음 위지위그 에디터를 로딩하면 웰컴 스크린(300)을 외부 단말로 제공할 수 있다. 제1 사용자는 웰컴 스크린에선 기존 프로젝트를 불러오거나 새 프로젝트를 생성할 수 있다. 예를 들어, 컨트롤러 지원 장치(100)는 "Load UI project" 버튼(310)과 연관된 제1 사용자 입력의 수신에 응답하여, 컨트롤러 지원 장치(100) 내에 저장된 기존 프로젝트를 불러올 수 있다. 컨트롤러 지원 장치(100)는 "New UI project" 버튼(320)과 연관된 제1 사용자 입력의 수신에 응답하여 새 프로젝트를 생성할 수 있다.As shown in FIG. 3, the controller supporting apparatus 100 may provide the welcome screen 300 to an external terminal when the first user loads the initial wig editor. The first user can invoke an existing project or create a new project on the welcome screen. For example, controller support device 100 may invoke an existing project stored in controller assistant device 100 in response to receiving a first user input associated with a "Load UI project" The controller support device 100 may create a new project in response to receiving the first user input associated with the "New UI project"

도 4는 컨트롤러 지원 장치(100)로부터 프로젝트를 로딩하는 일례를 나타낼 수 있다.FIG. 4 illustrates an example of loading a project from the controller supporting apparatus 100. FIG.

도 4에 도시된 바와 같이, 컨트롤러 지원 장치(100)는 도 3에서 상술한 웰컴 스크린(300)에서 "Load UI Project" 버튼과 연관된 제1 사용자 입력(예를 들어, 해당 버튼을 선택)의 수신에 응답하여, 컨트롤러 지원 장치(100) 내에 있는 UI 프로젝트들의 리스트(400)로 재연결하여 외부 단말로 제공할 수 있다. 도 4에서는 예시적으로 "test_2015_11_09.json", "1117_test.json" 등과 같이 json의 확장자로 서버(예를 들어, 컨트롤러 지원 장치(100)) 내에 저장된 기존 프로젝트들의 리스트(400)를 제1 사용자에게 제공할 수 있다.4, the controller supporting apparatus 100 receives the first user input (e.g., selecting the corresponding button) associated with the "Load UI Project" button on the welcome screen 300 described above in FIG. The user may reconnect to the list of UI projects 400 in the controller support device 100 and provide the list to the external terminal. 4 shows a list 400 of existing projects stored in a server (e.g., controller-assisted device 100) with a json extension, such as "test_2015_11_09.json "," 1117_test.json " .

도 5는 위지위그 에디터의 메인 스크린에 대한 일례를 나타낼 수 있다.5 shows an example of the main screen of the wiggie editor.

컨트롤러 지원 장치(100)는 도 3의 웰컴 스크린(300)에서 "New UI Project" 버튼과 연관된 제1 사용자 입력의 수신에 응답하여,Controller support device 100 responds to the receipt of the first user input associated with the "New UI Project" button on welcome screen 300 of Fig. 3,

도 5에 도시된 바와 같이 위지위그 에디터의 에디터 페이지로 재연결하여 제1 사용자에게 메인 스크린(500)을 제공할 수 있다. 이때, 컨트롤러 지원 장치(100)는 외부 단말로 메뉴 영역(510), 툴박스 영역(520), 캔버스 영역(530), 프로퍼티 영역(540) 등을 포함하는 메인 스크린(500)을 제공할 수 있다. The main screen 500 may be provided to the first user by reconnecting to the editor page of the wiggie editor as shown in FIG. At this time, the controller supporting apparatus 100 may provide a main screen 500 including a menu area 510, a tool box area 520, a canvas area 530, and a property area 540 to an external terminal.

메뉴 영역(510)은 다음과 같은 메뉴 아이템을 포함할 수 있다. 예를 들어, 컨트롤러 지원 장치(100)는 메뉴 영역(510)을 통해, UI 프로젝트를 동작시키기 위한 페이지(Page) 아이템, 동작을 수정하기 위한 에디트(Edit) 아이템, 객체를 정렬시키는 동작을 실행하기 위한 정렬(Alignment) 아이템, 저작된 프로젝트에 대한 미리보기 동작을 실행하기 위한 뷰(View) 아이템, UI 프로젝트의 환경 설정을 위한 설정(Setting) 아이템을 포함하는 메뉴를 제공할 수 있다.The menu area 510 may include the following menu items. For example, the controller support apparatus 100 may include a page item for operating a UI project, an edit item for modifying an operation, an operation for sorting an object, , A view item for executing a preview operation for the authored project, and a setting item for setting the environment of the UI project.

툴박스 영역(520)은 생성될 객체의 타입을 지정하기 위한 아이템을 제공할 수 있다. 객체의 타입은 버튼 객체, 이미지 객체, 텍스트 객체, 패널 객체, 디스플레이 셀, 디스플레이 크기 객체, 디스플레이 소스 객체 등과 같이 객체를 정의하는 다양한 분류를 나타낼 수 있다. 일 실시예에 따르면, 컨트롤러 지원 장치(100)는 툴박스 영역(520)을 통해 공통 제어 아이템(521)(예를 들어, "Button", "Image", "Text", "Panel" 등의 아이템) 및 스크린 제어 아이템(522)(예를 들어, "Display", "Screen control", "Source" 등의 아이템)을 제공할 수 있다.The toolbox area 520 may provide an item for specifying the type of the object to be created. The type of an object may represent various categories that define the object, such as a button object, an image object, a text object, a panel object, a display cell, a display size object, a display source object, According to one embodiment, the controller support apparatus 100 may include a common control item 521 (e.g., a button, an image, a text, a panel, etc.) And screen control items 522 (e.g., items such as "Display", "Screen control", "Source", etc.).

예를 들어, 컨트롤러 지원 장치(100)는 제1 사용자로부터 공통 제어 아이템(521)과 연관된 제1 사용자 입력을 수신할 수 있고, 공통 제어 아이템(521)과 연관된 제1 사용자 입력에 응답하여, 버튼, 이미지, 텍스트, 및 패널 중 적어도 하나를 캔버스 영역(530)에 생성할 수 있다.For example, the controller support device 100 may receive a first user input associated with a common control item 521 from a first user, and in response to a first user input associated with the common control item 521, , At least one of an image, text, and a panel in the canvas area 530.

또한, 컨트롤러 지원 장치(100)는 제1 사용자로부터 스크린 제어 아이템 (screen control item)(522)과 연관된 제1 사용자 입력을 수신할 수 있고, 스크린 제어 아이템(522)과 연관된 제1 사용자 입력의 수신에 응답하여 캔버스 영역(canvas region) (530)에 디스플레이 객체를 생성할 수 있다. 디스플레이 객체는 보안 카메라로부터 스트리밍되는 소스 영상을 제2 사용자에게 제공하기 위한 객체로서, 예를 들어, 디스플레이 셀(예를 들어, "Display" 아이템에 대한 입력에 응답하여 생성됨), 디스플레이 크기 객체(예를 들어, "Screen control" 아이템에 대한 입력에 응답하여 생성됨), 및 디스플레이 소스 객체(예를 들어, "Source" 아이템에 대한 입력에 응답하여 생성됨) 등을 포함할 수 있다. 여기서, 컨트롤러 지원 장치(100)는 제2 사용자로부터 수신되는 디스플레이 객체와 연관된 제2 사용자 입력에 응답하여 보안 카메라로부터 스트리밍되는 복수의 소스 영상들 중에서 디스플레이 객체에 대응하는 소스 영상이 제공되도록 디스플레이 객체를 설정할 수 있다.The controller support device 100 may also receive a first user input associated with a screen control item 522 from a first user and may receive a first user input associated with a screen control item 522 To generate a display object in the canvas region 530 in response. A display object is an object for providing a source image streamed from a security camera to a second user, for example, a display cell (e.g., generated in response to an input to a "Display & (E.g., generated in response to an input to a "Screen control" item), and a display source object (e.g., generated in response to an input to a "Source" item). Here, the controller-assisted device 100 may display the display object in response to the second user input associated with the display object received from the second user so that the source image corresponding to the display object is provided from among the plurality of source images streamed from the security camera Can be set.

일 실시예에 따르면, 컨트롤러 지원 장치(100)는 디스플레이 소스 객체를 생성하고, 디스플레이 소스 객체와 연관된 제2 사용자 입력(예를 들어, 디스플레이 소스 객체를 클릭 또는 드래그하는 조작)에 응답하여 보안 카메라로부터 스트리밍되는 복수의 소스 영상들 중에서 디스플레이 소스 객체에 대응하는 소스 영상(예를 들어, 상술한 디스플레이 소스 객체에 매핑된 소스 영상)을 선택하도록 디스플레이 소스 객체를 설정할 수 있다. 아울러, 컨트롤러 지원 장치(100)는 디스플레이 크기 객체를 캔버스 영역(530)에 생성하고, 디스플레이 크기 객체 및 디스플레이 셀과 연관된 제2 사용자 입력 (예를 들어, 디스플레이 크기 객체 및 디스플레이 셀을 순차적으로 클릭 또는 드래그앤드랍하는 조작 등)에 응답하여 디스플레이 셀의 크기를 해당 디스플레이 크기 객체에 지정된 크기로 결정하도록 디스플레이 크기 객체를 설정할 수 있다. 또한, 컨트롤러 지원 장치(100)는 디스플레이 셀을 캔버스 영역(530)에 생성하고, 디스플레이 셀 및 디스플레이 소스 객체와 연관된 제2 사용자 입력(예를 들어, 디스플레이 셀 및 디스플레이 소스 객체를 순차적으로 클릭 또는 드래그앤드랍하는 조작 등)에 응답하여 선택된 소스 영상을 지정된 크기로 디스플레이 셀 상에 표시하도록 디스플레이 셀을 설정할 수 있다. 디스플레이 객체의 생성 및 활용은 하기 도 12 내지 도 14에서 상세히 설명한다.According to one embodiment, the controller aided device 100 generates a display source object and, in response to a second user input associated with the display source object (e.g., clicking or dragging a display source object) A display source object can be set to select a source image (e.g., a source image mapped to the above-described display source object) corresponding to the display source object from a plurality of source images to be streamed. In addition, the controller aided device 100 may generate a display size object in the canvas area 530 and provide a display size object and a second user input associated with the display cell (e.g., Drag and drop operations, etc.), the display size object can be set to determine the size of the display cell to the size specified for that display size object. In addition, the controller aiding device 100 may generate a display cell in the canvas region 530 and may include a second user input associated with the display cell and the display source object (e.g., sequentially clicking or dragging the display cell and the display source object) And dropping operation), the display cell can be set to display the selected source image on the display cell at a specified size. The generation and utilization of the display object will be described in detail in Figs. 12 to 14 below.

캔버스 영역(530)은, 생성된 객체가 배치되는 영역을 나타낼 수 있다. 외부 단말의 제1 사용자는 컨트롤러 지원 장치(100)에 의해 제공되는 캔버스 영역(530) 내에 사용자가 UI인터페이스를 저작할 수 있다.The canvas region 530 may represent an area in which the generated object is disposed. The first user of the external terminal can author the UI interface in the canvas area 530 provided by the controller supporting apparatus 100. [

프로퍼티 영역(540)은, 생성된 객체의 프로퍼티 및 캔버스 영역(530)의 프로퍼티를 변경하기 위한 아이템을 포함할 수 있다.The property area 540 may include an item for changing a property of the created object and a property of the canvas area 530. [

도 6 내지 도 8은 본 발명의 일 실시예에 따른 UI 인터페이스의 배경 변경하는 과정을 설명하기 위한 도면이다.6 to 8 are views for explaining a process of changing the background of the UI interface according to an embodiment of the present invention.

도 6은 컨트롤러 지원 장치(100)가 프로퍼티 영역(540)에서 "Background color"라는 이름의 텍스트 박스(641)를 통해 배경 색을 컬러값을 지정하는 과정을 도시한다. 도 7은 컨트롤러 지원 장치(100)가 프로퍼티 영역(540)에서 배경 색을 팔레트(741)(예를 들어, 컬러 피커(Color-picker))를 통해 설정하는 과정을 도시한다. 도 7에서 컨트롤러 지원 장치(100)는 보여지는 컬러 피커에서 제1 사용자가 선택한 색상으로 배경 색을 결정할 수 있다.6 shows a process in which the controller supporting apparatus 100 designates a color value of a background color through a text box 641 named "Background color" in the property area 540. 7 illustrates a process in which the controller support apparatus 100 sets a background color in a property area 540 through a palette 741 (for example, a color picker). In FIG. 7, the controller supporting apparatus 100 can determine a background color in a color selected by a first user in a color picker shown.

컨트롤러 지원 장치(100)는 제1 사용자가 캔버스 영역(530)의 배경 색을 변경하거나 배경 이미지(831)를 지정하도록 할 수 있다. 예를 들어, 컨트롤러 지원 장치(100)는 캔버스 영역(530)의 배경과 연관된 제1 사용자 입력(예를 들어, 배경 색을 지정하는 조작 또는 배경 이미지(831)를 지정하는 조작)을 수신할 수 있다. 컨트롤러 지원 장치(100)는 배경과 연관된 제1 사용자 입력에 기초하여 복수의 셀들 주변의 배경 영역에 대해 배경 이미지(831) 및 배경 색 중 적어도 하나를 결정할 수 있다. 일 실시예에 따르면 컨트롤러 지원 장치(100)는 배경 색이 결정된 경우에 응답하여, 캔버스 영역(530)의 배경을 결정된 배경 색으로 제공할 수 있다. 다른 일 실시예에 따르면, 컨트롤러 지원 장치(100)는 배경 이미지(831)가 결정된 경우에 응답하여, 캔버스 영역(530)의 배경에 결정된 배경 이미지(831)를 제공할 수 있다. 또한, 컨트롤러 지원 장치(100)는 배경 색 및 배경 이미지(831)가 결정된 경우에 응답하여, 배경 색으로 구성되는 배경 영역에 배경 이미지(831)를 오버레이하여 제공할 수 있다. 따라서 배경 색을 먼저 지정한 후 배경 이미지(831)를 삽입하면 컨트롤러 지원 장치(100)는 삽입된 이미지만 제1 사용자 단말에서 표시되도록 제공할 수 있다. 컨트롤러 지원 장치(100)는 지정되었던 배경 이미지(831)가 삭제된 후에 배경 색이 드러나는 캔버스 영역(530)을 제공할 수 있다.The controller support device 100 may allow the first user to change the background color of the canvas area 530 or to specify the background image 831. [ For example, the controller support device 100 may receive a first user input associated with the background of the canvas region 530 (e.g., an operation to specify a background color or an operation to specify a background image 831) have. The controller support device 100 may determine at least one of the background image 831 and the background color for the background area around the plurality of cells based on the first user input associated with the background. According to one embodiment, the controller support apparatus 100 may provide the background of the canvas region 530 with the determined background color in response to determination of the background color. According to another embodiment, the controller support apparatus 100 may provide a determined background image 831 in the background of the canvas region 530 in response to a determination that the background image 831 has been determined. In addition, the controller support device 100 may overlay the background image 831 in the background area, which is configured as a background color, in response to determination of the background color and background image 831. [ Therefore, when the background color is first designated and then the background image 831 is inserted, the controller supporting apparatus 100 can display only the embedded image in the first user terminal. The controller support apparatus 100 may provide a canvas region 530 in which the background color is revealed after the designated background image 831 is deleted.

컨트롤러 지원 장치(100)는 배경에 이미지를 삽입하거나 색을 변경하기 위해선 다음과 같은 작업을 할 수 있다. 컨트롤러 지원 장치(100)는 만약 툴박스 영역이 선택되어 있다면, 제1 사용자로부터 키보드의 "Esc" 버튼의 입력을 수신할 수 있다. 또한, 컨트롤러 지원 장치(100)는 캔버스의 빈 공간에 대한 클릭을 제1 사용자로부터 수신할 수 있고, 배경의 프로퍼티를 프로퍼티 영역을 통해 제1 사용자에게 제공할 수 있다. 컨트롤러 지원 장치(100)는 프로퍼티 영역(540)을 통해 제1 사용자로부터 배경 색에 대한 지정을 수신할 수 있다.The controller supporting apparatus 100 can perform the following operations to insert an image in the background or change the color. The controller support device 100 may receive input of the keyboard "Esc" button from the first user if the toolbox area is selected. In addition, the controller support device 100 can receive a click on the empty space of the canvas from the first user, and can provide the background property to the first user through the property area. The controller support device 100 may receive a designation for the background color from the first user via the property area 540. [

도 8은 백그라운드 이미지가 설정될 때 "X" 버튼이 생성되는 일례를 나타낼 수 있다.8 shows an example in which an "X" button is generated when a background image is set.

일 실시예에 따르면, 컨트롤러 지원 장치(100)는 제1 사용자 입력에 기초하여 배경 이미지(831)를 설정할 수 있다. 컨트롤러 지원 장치(100)는 외부 단말의 제1 사용자가 선택한 외부 단말에 저장되거나 인터넷 주소 등을 통해 링크되는 이미지 파일을 수신할 수 있다. 이후 컨트롤러 지원 장치(100)는 제1 사용자로부터 캔버스 영역(530)에 대한 재클릭을 수신하면, 배경 이미지(831)를 변경하고 프로퍼티 영역의 배경 이미지 섹션(841)에 "X" 버튼을 제공할 수 있다. 여기서, 컨트롤러 지원 장치(100)는 "X" 버튼에 대한 제1 사용자 입력이 수신되는 경우에 응답하여 캔버스 영역(530)으로부터 배경 이미지(831)를 삭제할 수 있다.According to one embodiment, the controller aided device 100 may set the background image 831 based on the first user input. The controller supporting apparatus 100 may receive an image file stored in an external terminal selected by the first user of the external terminal, or linked through an Internet address or the like. When the controller support device 100 receives the click again from the first user for the canvas area 530, the controller support device 100 changes the background image 831 and provides the "X" button to the background image section 841 of the property area . Here, the controller aided device 100 may delete the background image 831 from the canvas area 530 in response to receiving a first user input for the "X" button.

또한, 컨트롤러 지원 장치(100)는 생성된 객체의 프로퍼티를 설정할 수 있다. 예를 들어, 컨트롤러 지원 장치(100)는 생성된 객체가 선택된 경우, 제1 사용자에게 해당 객체에 대한 프로퍼티를 프로퍼티 영역을 통해 제공할 수 있고, 프로퍼티 영역과 연관된 제1 사용자 입력의 수신에 응답하여 해당 객체의 프로퍼티를 설정할 수 있다.In addition, the controller supporting apparatus 100 can set properties of the created object. For example, the controller-assisted device 100 may provide a first user with a property for the object when the created object is selected, in response to receiving a first user input associated with the property area, You can set properties for this object.

외부 단말은 제1 사용자의 조작에 기초하여, 생성된 객체의 프로퍼티를 변경하기 위해, 컨트롤러 지원 장치(100)에서 제공되는 캔버스 영역에 있는 객체를 선택하거나, 툴박스 영역에 있는 아이템을 선택하여 새 객체를 캔버스 영역에 생성한 후 선택할 수 있다. 컨트롤러 지원 장치(100)는 캔버스 영역에 있는 객체들 중 제1 사용자에 의해 선택된 객체 또는 제1 사용자에 의해 상술한 캔버스 영역에 생성된 객체의 프로퍼티와 관련된 정보를 프로퍼티 영역을 통해 제1 사용자에게 제공할 수 있다.The external terminal selects an object in the canvas area provided by the controller supporting apparatus 100 or selects an item in the tool box area to change the property of the created object based on the operation of the first user, Can be created in the canvas area and then selected. The controller support apparatus 100 provides information related to a property of an object created by a first user or objects created in a canvas region by a first user among objects in a canvas region to a first user through a property region can do.

예를 들면, 컨트롤러 지원 장치(100)는 캔버스 영역 내의 객체들 중 적어도 하나의 객체와 연관된 제1 사용자 입력(예를 들어, 제1 사용자가 외부 단말의 웹브라우저에 나타난 객체를 클릭)에 기초하여, 캔버스 영역 내의 객체를 선택할 수 있다. 캔버스 영역에 생성되어 있는 상태의 객체가 존재하지 않는 경우, 컨트롤러 지원 장치(100)는 툴 박스 영역에서 객체를 생성하기 위한 아이템과 연관된 제1 사용자 입력(예를 들어, 디스플레이 셀, 디스플레이 크기 객체, 및 디스플레이 소스 객체 중 적어도 하나를 생성하기 위한 스크린 제어 아이템을 클릭 또는 드래그앤드랍하는 제1 사용자의 조작)에 기초하여 객체를 선택할 수 있다. 예를 들어, 컨트롤러 지원 장치(100)는 객체 타입과 동일한 이름의 아이템(예를 들어, 디스플레이 셀 타입에 대해서는 디스플레이 셀이라는 이름을 가지는 스크린 제어 아이템)을 제1 사용자에게 제공할 수 있다. 컨트롤러 지원 장치(100)는 선택된 객체를 외부 단말이 웹브라우저 상의 캔버스 영역에 그리도록 외부 단말을 제어할 수 있다.For example, the controller aiding device 100 may be based on a first user input associated with at least one of the objects in the canvas region (e.g., the first user clicking on an object displayed in the external terminal's web browser) , An object in the canvas area can be selected. If there is no created object in the canvas area, the controller support device 100 displays a first user input (e.g., a display cell, a display size object, and a display object) associated with an item for creating an object in the toolbox area, And manipulation of a first user to click or drag and drop a screen control item to create at least one of the display source objects). For example, the controller support device 100 may provide a first user with an item with the same name as the object type (e.g., a screen control item with a name of display cell for the display cell type). The controller support apparatus 100 can control the external terminal so that the external terminal draws the selected object in the canvas area on the web browser.

또한, 컨트롤러 지원 장치(100)는 선택된 객체의 프로퍼티는 프로퍼티 영역을 통해 외부 단말로 제공할 수 있다. 이때, 컨트롤러 지원 장치(100)는 객체의 모든 변경된 사항을 실시간으로 프로퍼티 영역에 제공할 수 있다.In addition, the controller supporting apparatus 100 can provide the property of the selected object to the external terminal through the property area. At this time, the controller support apparatus 100 can provide all the changed items of the object in the property area in real time.

도 9는 일 실시예에 따른 객체를 다중선택 하는 과정 및 그룹화와 그룹화 해제하는 과정을 설명하기 위한 도면이다.FIG. 9 is a diagram for explaining a process of multiple selection of objects and a process of grouping and ungrouping objects according to an embodiment.

다중선택은 둘 이상의 객체와 연관된 제1 사용자 입력에 기초하여, 컨트롤러 지원 장치(100)가 복수의 객체들(911, 912, 913)을 한번에 선택하는 동작을 나타낼 수 있다. 예를 들어, 컨트롤러 지원 장치(100)는 둘 이상의 객체들(911, 912, 913)과 연관된 제1 사용자 입력으로서, 캔버스 영역 내에 있는 복수의 객체들(911, 912, 913)을 ctrl 키를 클릭한 상태로 순차적으로 마우스로 클릭하는 입력에 응답하여, 순차적으로 클릭의 대상이 된 객체들(911, 912, 913)을 선택할 수 있다. 다른 예를 들어, 컨트롤러 지원 장치(100)는 둘 이상의 객체들(911, 912, 913)과 연관된 제1 사용자 입력으로서 마우스 클릭을 일정 시간 유지하면서 커서를 이동시키는 입력에 응답하여, 캔버스 영역 내에서 마우스 클릭의 시작 지점 및 종료 지점을 기준으로 형성되는 범위(예를 들어, 사각형의 범위)(920) 내의 객체들(911, 912, 913)을 선택할 수 있다.The multiple selection may indicate that the controller support device 100 selects a plurality of objects 911, 912, 913 at one time based on a first user input associated with two or more objects. For example, the controller support apparatus 100 may include a plurality of objects 911, 912, and 913 in the canvas area as first user inputs associated with two or more objects 911, 912, and 913, 912, and 913, which are sequentially clicked, in response to an input that is sequentially clicked with a mouse in a state. In another example, the controller aiding device 100 may be configured to respond to an input to move a cursor while keeping a mouse click for a predetermined time as a first user input associated with two or more objects 911, 912, 913, (911, 912, 913) within a range (e.g., a range of rectangles) 920 that are formed based on the starting point and the ending point of a mouse click.

도 9에 도시된 바와 같이, 컨트롤러 지원 장치(100)는 복수의 객체들 중 둘 이상의 객체들(911, 912, 913)과 연관된 제1 사용자 입력(예를 들어, ctrl 키를 누른 상태로 객체들을 순차적으로 클릭하는 입력)에 응답하여, 둘 이상의 객체들(911, 912, 913)을 선택할 수 있다. 컨트롤러 지원 장치(100)는 둘 이상의 객체들(911, 912, 913) 중 처음에 선택된 객체(911)를 기준 객체로 지정할 수 있다. 컨트롤러 지원 장치(100)는 기준 객체(911)를 기초로 선택된 둘 이상의 객체들 중 나머지 객체(912, 913)를 정렬할 수 있다. 예를 들어, 컨트롤러 지원 장치(100)는 복수의 객체들(911, 912, 913)을, 선택된 순서에 따라 다른 색상 등의 그래픽 표현을 객체에 적용하여 제1 사용자에게 제공함으로써, 제1 사용자에게 기준이 되는 객체를 인식시킬 수 있다.9, the controller support apparatus 100 may include a first user input associated with two or more of the plurality of objects 911, 912, 913 (e.g., In response to an input that is sequentially clicked), more than one object 911, 912, 913 may be selected. The controller support apparatus 100 may designate the first object 911 among the two or more objects 911, 912, and 913 as a reference object. The controller support apparatus 100 may arrange the remaining objects 912 and 913 of two or more objects selected based on the reference object 911. [ For example, the controller support device 100 may apply a plurality of objects 911, 912, and 913 to a first user by applying a graphical representation, such as a different color, The reference object can be recognized.

컨트롤러 지원 장치(100)는 프로퍼티 영역에 선택된 객체들(911, 912, 913)의 공통되는 프로퍼티를 제공할 수 있다. 예를 들어, 선택된 객체들(911, 912, 913)이 모두 버튼들이라면, 컨트롤러 지원 장치(100)는 프로퍼티 영역엔 버튼 객체의 모든 속성을 제공할 수 있다. 만약 다른 타입의 객체들이 같이 선택이 되어 있다면(예를 들면 텍스트 객체, 버튼 객체 그리고 사진 객체 등), 컨트롤러 지원 장치(100)는 프로퍼티 영역에 텍스트 객체, 버튼 객체, 사진 객체가 공통적으로 가지고 있는 프로퍼티를 제공할 수 있다.The controller support apparatus 100 may provide a common property of the selected objects 911, 912, 913 in the property area. For example, if the selected objects 911, 912, 913 are all buttons, the controller support device 100 may provide all properties of the button object to the property area. If other types of objects are selected together (e.g., a text object, a button object, a photo object, etc.), the controller support device 100 displays the property common to the text object, the button object, and the photo object in the property area Can be provided.

컨트롤러 지원 장치(100)는 다중으로 선택 된 객체들(911, 912, 913)에 대하여 일괄적으로 삭제, 이동, 정렬, 또는 그룹화 등의 동작을 적용 할 수 있다. 컨트롤러 지원 장치(100)는 복수의 객체들(911, 912, 913)을 다중 선택한 후 제1 사용자로부터 키보드의 Del 키에 대한 제1 사용자 입력이 수신된 경우에 응답하여, 다중 선택된 복수의 객체들을 삭제할 수 있다. 컨트롤러 지원 장치(100)는 다중 선택된 복수의 객체들(911, 912, 913)을 클릭하여 드래그하는 제1 사용자 입력에 응답하여, 선택된 복수의 객체들(911, 912, 913)을 이동시킬 수 있다. 컨트롤러 지원 장치(100)는 처음에 선택된 객체를 기준으로 하여, 정렬 동작을 수행할 수 있다. 컨트롤러 지원 장치(100)는 결과물로서, 선택된 정렬 타입에 따라 객체들(911, 912, 913)을 정렬시킬 수 있다. 정렬 동작은 예를 들어, 객체들(911, 912, 913) 간의 수평 간격을 일정하게 하는 수평 정렬, 객체들(911, 912, 913)의 수직 간격을 일정하게 하는 수직 정렬, 기준이 되는 객체(911)와 다른 객체들의 x 좌표 또는 y 좌표가 동일하도록 하는 정렬 등을 포함할 수 있다.The controller support apparatus 100 may apply operations such as deletion, movement, alignment, or grouping to the multiple selected objects 911, 912, and 913 at a time. The controller support apparatus 100 selects a plurality of objects 911, 912, 913 and then selects a plurality of objects (911, 912, 913) in response to receiving a first user input for a Del key of a keyboard from a first user Can be deleted. The controller support apparatus 100 may move a selected plurality of objects 911, 912, 913 in response to a first user input that clicks and drags a plurality of selected multiple objects 911, 912, 913 . The controller support apparatus 100 can perform an alignment operation based on the initially selected object. As a result, the controller support apparatus 100 can arrange the objects 911, 912, and 913 according to the selected sort type. The sorting operation may be performed, for example, by horizontal alignment that makes horizontal intervals between objects 911, 912, and 913 constant, vertical alignment that makes vertical intervals of objects 911, 912, and 913 constant, 911) and the x-coordinate or y-coordinate of other objects are the same.

또한, 도 9에 도시된 바와 같이, 컨트롤러 지원 장치(100)는 마우스 클릭을 일정 시간 유지하면서 커서를 이동시키는 입력에 응답하여, 캔버스 영역 내에서 마우스 클릭의 시작 지점 및 종료 지점을 기준으로 형성되는 범위(예를 들어, 사각형의 범위)(920) 내의 객체들(911, 912, 913)을 선택할 수 있다.9, the controller supporting apparatus 100 is formed on the basis of a start point and an end point of a mouse click in the canvas area in response to an input for moving a cursor while holding a mouse click for a predetermined period of time Objects 911, 912, 913 within a range (e.g., a range of rectangles) 920 can be selected.

일 실시예에 따르면, 컨트롤러 지원 장치(100)는 복수의 객체들 중 둘 이상의 객체들(911, 912, 913)과 연관된 제1 사용자 입력에 응답하여, 둘 이상의 객체들(911, 912, 913)을 선택하고, 선택된 둘 이상의 객체들(911, 912, 913)을 단일 객체(930)로 변환할 수 있다. 예를 들어, 컨트롤러 지원 장치(100)는 둘 이상의 객체들(911, 912, 913)을 단일 객체(930)로 변환함으로써, 둘 이상의 객체들(911, 912, 913)을 그룹화할 수 있다. 컨트롤러 지원 장치(100)는 사각형을 그리거나 Ctrl+ 마우스 클릭을 하는 제1 사용자 입력에 응답하여 복수의 객체들(911, 912, 913)을 선택할 수 있다. 복수의 객체들(911, 912, 913)이 선택된 상태에서, 컨트롤러 지원 장치(100)는 제1 조합 키(예를 들어, Ctrl+Alt+G)로 된 제1 사용자 입력에 응답하여 둘 이상의 객체들(911, 912, 913)을 그룹화할 수 있고, 그룹화 된 객체(930) 주위로 점선을 그래픽 표현을 제공할 수 있다. 도 9에 도시된 바와 같이, 컨트롤러 지원 장치(100)는 그룹화 된 객체들(911, 912, 913)을 단일 객체(930)로서 관리할 수 있다.According to one embodiment, the controller aiding device 100 may include two or more objects 911, 912, 913 in response to a first user input associated with two or more of the plurality of objects 911, 912, And convert the selected two or more objects 911, 912, 913 into a single object 930. [ For example, the controller support apparatus 100 may group two or more objects 911, 912, 913 by converting two or more objects 911, 912, 913 into a single object 930. The controller support apparatus 100 may select a plurality of objects 911, 912, and 913 in response to a first user input to draw a rectangle or Ctrl + mouse click. With the plurality of objects 911, 912, 913 selected, the controller support device 100 responds to a first user input of a first combination key (e.g., Ctrl + Alt + G) 911, 912, and 913 and provide a graphical representation of the dotted lines around the grouped objects 930. [ As shown in FIG. 9, the controller supporting apparatus 100 may manage the grouped objects 911, 912, and 913 as a single object 930.

컨트롤러 지원 장치(100)는 단일 객체(930)와 연관된 제1 사용자 입력에 응답하여, 단일 객체(930)를 단일 객체에 대응하는 둘 이상의 객체들로 변환할 수 있다. 예를 들어, 컨트롤러 지원 장치(100)는 단일 객체(930)와 연관된 제1 사용자 입력에 응답하여, 둘 이상의 객체들(911, 912, 913)이 그룹화된 단일 객체(930)를 선택할 수 있다. 컨트롤러 지원 장치(100)는 제2 조합 키(예를 들어, Ctrl+Alt+U)로 된 제1 사용자 입력에 응답하여 그룹화를 해제하고 점선의 그래픽 표현을 제거할 수 있다. 이후, 컨트롤러 지원 장치(100)는 그룹화가 해제된 둘 이상의 객체들을 개별 객체로서 관리할 수 있다.The controller support apparatus 100 may convert a single object 930 into two or more objects corresponding to a single object in response to a first user input associated with the single object 930. [ For example, controller assistant device 100 may select a single object 930 in which two or more objects 911, 912, 913 are grouped in response to a first user input associated with a single object 930. The controller support apparatus 100 may release the grouping and remove the graphical representation of the dotted line in response to the first user input of the second combination key (e.g., Ctrl + Alt + U). Thereafter, the controller supporting apparatus 100 may manage two or more ungrouped objects as individual objects.

또한, 컨트롤러 지원 장치(100)는 객체와 연관된 제1 사용자 입력의 수신에 응답하여, 객체의 크기를 조절할 수 있다. 컨트롤러 지원 장치는 제1 사용자가 크기를 조정하고자 하는 객체에 대한 제1 사용자 입력을 수신하면, 해당 객체를 선택할 수 있다. 컨트롤러 지원 장치(100)는 도 9에 도시된 바와 같이 선택된 객체에 대해 4개의 작은 사각형으로 된 그래픽 객체를 각 객체의 모서리에 시각화하여 제1 사용자에게 제공할 수 있다. 컨트롤러 지원 장치(100)는 객체의 크기를 하나의 작은 사각형을 클릭 및 드래그하는 제1 사용자 입력에 응답하여 조절할 수 있다. In addition, the controller aiding device 100 may adjust the size of the object in response to receiving a first user input associated with the object. The controller support device may select a corresponding object when the first user receives a first user input for an object to be resized. The controller support device 100 As shown in FIG. 9, four small rectangular graphic objects may be visualized at the edges of each object for the selected object to provide to the first user. The controller support device 100 may adjust the size of the object in response to a first user input clicking and dragging a small square.

도 10 및 도 11은 일 실시예에 따른 메뉴 인터페이스를 설명하기 위한 도면이다.10 and 11 are diagrams for explaining a menu interface according to an embodiment.

컨트롤러 지원 장치(100)는 제작된 UI 인터페이스를 가지는 중앙집중형 모니터링 시스템을 JSON 형식의 프로젝트 파일로 컨트롤러 지원 장치(100) 내에 저장할 수 있으며, 이 파일을 추후 불러올 수 있다. 하기에서는 도 10 및 도 11에 나타난 메뉴 아이템(510)의 예시를 설명한다.The controller support device 100 The centralized monitoring system having the UI interface produced can be stored in the controller supporting apparatus 100 as a JSON format project file, and this file can be called later. Hereinafter, an example of the menu item 510 shown in Figs. 10 and 11 will be described.

도 10는 페이지 아이템(1010)의 일례를 나타낼 수 있다. 도 10에 도시된 바와 같이, 컨트롤러 지원 장치(100)는 프로젝트를 동작시키기 위한 페이지 아이템(1010) 중에서 "Save" 아이템과 연관된 제1 사용자 입력에 응답하여 UI 인터페이스를 가지는 중앙집중형 모니터링 시스템을 JSON 파일로 저장할 수 있다. 컨트롤러 지원 장치(100)는 제1 사용자 입력에 기초하여, UI 인터페이스를 가지는 중앙집중형 모니터링 시스템에 대한 프로젝트 파일의 이름을 결정할 수 있고, 컨트롤러 지원 장치(100) 내(예를 들어, 서버)에 저장할 수 있다.FIG. 10 may represent an example of a page item 1010. 10, the controller support apparatus 100 responds to a first user input associated with a "Save" item among page items 1010 for operating a project, and sends a centralized monitoring system having a UI interface to a JSON You can save it as a file. The controller support device 100 Based on the first user input, the name of the project file for the centralized monitoring system having a UI interface can be determined and stored in the controller support device 100 (e.g., a server).

아울러, 컨트롤러 지원 장치(100)는 도 10에 도시된 바와 같이 페이지 아이템(1010) 중에서 "Open" 아이템과 연관된 제1 사용자 입력에 응답하여 기존에 저장한 프로젝트 파일을 불러올 수 있다.In addition, the controller support device 100 may retrieve a previously stored project file in response to a first user input associated with the "Open" item of the page item 1010, as shown in FIG.

도 11은 정렬 아이템(1110)의 일례를 나타낼 수 있다. 컨트롤러 지원 장치(100)는 정렬 아이템(1110) 중에서 "Size alignment" 아이템과 연관된 제1 사용자 입력에 응답하여, 복수 선택된 객체들의 크기를 동일하게 설정할 수 있고, "Horizontal alignment" 아이템과 연관된 제1 사용자 입력에 응답하여 복수 선택된 객체들의 수평 위치를 동일하게 설정할 수 있으며, "Vertical alignment" 아이템과 연관된 제1 사용자 입력에 응답하여 복수 선택된 객체들의 수직 위치를 동일하게 설정할 수 있고, "Horizontal interval alignment" 아이템과 연관된 제1 사용자 입력에 응답하여 복수 선택된 객체들의 수평 간격을 균등하게 설정할 수 있으며, "Vertical interval alignment" 아이템과 연관된 제1 사용자 입력에 응답하여 복수 선택된 객체들의 수직 간격을 균등하게 설정할 수 있다.FIG. 11 may show an example of an alignment item 1110. FIG. The controller support apparatus 100 may set the sizes of the plurality of selected objects equal in response to a first user input associated with the "Size alignment" item among the alignment items 1110, The horizontal position of a plurality of selected objects may be set the same in response to an input, the vertical positions of a plurality of selected objects may be set equal in response to a first user input associated with a "Vertical alignment & The horizontal spacing of the plurality of selected objects may be set equally in response to the first user input associated with the vertical interlace alignment item, and the vertical spacing of the plurality of selected objects may be evenly set in response to the first user input associated with the "Vertical interval alignment" item.

input list of objects
sort list by z-index property
for o in objects
draw o on the canvas
input list of objects
sort list by z-index property
for o in objects
draw o on the canvas

상술한 표 4는 일 실시예에 따른 캔버스 영역 내의 객체에 관련된 Z 인덱스 알고리즘을 나타낼 수 있다. HTML5 캔버스는 객체를 그릴 때 Z 인덱스가 지원되지 않을 수 있다. 일 실시예에 따르면 Z 인덱스는 화면 상에 객체가 시각화되는 우선 순위를 나타낼 수 있고, 예를 들어, 객체의 일부가 중복되는 경우 높은 우선순위의 Z 인덱스를 가지는 객체가 중복되는 영역에서 시각화되고 낮은 우선순위의 Z 인덱스를 가지는 객체는 해당 중복되는 영역에서 가려질 수 있다. 컨트롤러 지원 장치(100)는 객체의 Z 인덱스 기능을 통해 외부 단말의 디스플레이에 변화가 적용될 수 있도록 알고리즘을 실행할 수 있다. 알고리즘은 상술한 표 4에 설명된 바와 같을 수 있다. 컨트롤러 지원 장치(100)는 Z 인덱스가 임의의 객체에 대해 변경될 때 마다, 모든 객체를 Z 인덱스를 기반으로 정렬하고 결과 값에 의해 객체를 그리도록 할 수 있다. 예를 들어, 컨트롤러 지원 장치(100)는 복수의 객체들에 대해 Z 인덱스를 지정하고, 지정된 Z 인덱스에 기초하여 복수의 객체들을 정렬하며, 정렬된 순서에 따라 복수의 객체들을 캔버스 영역에 제공할 수 있다.Table 4 above may represent a Z index algorithm associated with an object in the canvas region according to an embodiment. The HTML5 canvas may not support Z indexes when drawing objects. According to one embodiment, the Z index may represent a priority in which an object is visualized on the screen. For example, when a part of an object is overlapped, an object having a Z index with a high priority is visualized in an overlapped area, An object with a Z index of priority can be hidden in the overlapping area. The controller support device 100 The algorithm can be executed so that the change can be applied to the display of the external terminal through the Z index function of the object. The algorithm may be as described in Table 4 above. The controller support device 100 Whenever the Z index changes for any object, you can arrange all objects based on the Z index and draw the object by the result. For example, the controller support apparatus 100 may specify a Z index for a plurality of objects, sort a plurality of objects based on a specified Z index, and provide a plurality of objects to the canvas area in an ordered order .

도 12 내지 도 14는 일 실시예에 따른 보안 카메라로부터의 스트리밍되는 영상을 제공하는 디스플레이 객체를 설명하기 위한 도면이다.12 to 14 are views for explaining a display object providing a streamed image from a security camera according to an embodiment.

도 12는 디스플레이 객체들의 예시를 나타낼 수 있다. 디스플레이 객체는 디스플레이 소스 객체(1230) 디스플레이 크기 객체(1220), 및 디스플레이 셀(1210) 등을 포함할 수 있다. 컨트롤러 지원 장치(100)는 제1 사용자가 디스플레이 소스 객체(1230), 디스플레이 크기 객체(1220), 및 디스플레이 셀(1210) 등을 캔버스 영역(530)에 생성할 수 있도록 해주는 스크린 제어 아이템을 제공할 수 있다.Figure 12 may illustrate an example of display objects. The display object may include a display source object 1230, a display size object 1220, and a display cell 1210 and the like. The controller support device 100 provides a screen control item that allows a first user to create a display source object 1230, a display size object 1220, and a display cell 1210, etc. in the canvas area 530 .

디스플레이 소스 객체(1230)는 컨트롤러 지원 장치(100)가 디스플레이 소스 객체(1230)와 연관된 제2 사용자 입력에 응답하여 보안 카메라로부터 스트리밍되는 복수의 소스 영상들 중에서 디스플레이 소스 객체(1230)에 대응하는 소스 영상을 선택하도록 설정된 객체를 나타낼 수 있다. 디스플레이 크기 객체(1220)는 컨트롤러 지원 장치(100)가 디스플레이 크기 객체(1220) 및 디스플레이 셀(1210)과 연관된 제2 사용자 입력에 응답하여 디스플레이 셀(1210)의 크기를 해당 디스플레이 크기 객체(1220)에 지정된 크기로 결정하도록 설정된 객체를 나타낼 수 있다. 디스플레이 셀(1210)은 컨트롤러 지원 장치(100)가 디스플레이 셀(1210) 및 디스플레이 소스 객체(1230)와 연관된 제2 사용자 입력에 응답하여 선택된 소스 영상을 지정된 크기로 디스플레이 셀(1210) 상에 표시하도록 설정된 객체를 나타낼 수 있다.The display source object 1230 may be used by the controller-assisted device 100 to display a source corresponding to the display source object 1230 among a plurality of source images streamed from the security camera in response to a second user input associated with the display source object 1230 And may indicate an object set to select an image. The display size object 1220 may be sized such that the controller support device 100 responds to a second user input associated with the display size object 1220 and the display cell 1210 to size the display cell 1210 to the corresponding display size object 1220. [ To determine the size of the object. The display cell 1210 is configured to cause the controller support device 100 to display the selected source image on the display cell 1210 at a specified size in response to a second user input associated with the display cell 1210 and the display source object 1230 It can represent the set object.

도 12에 도시된 바와 같이, 컨트롤러 지원 장치(100)는 복수의 디스플레이 셀들(1211, 1212, 1213, 1214, 1215, 1216)을 캔버스 영역(530)에 미리 정해진 간격으로 된 그리드 형태로 생성할 수 있다. 다만, 디스플레이 셀들(1211, 1212, 1213, 1214, 1215, 1216)의 형태 및 배치를 도시된 바로 한정하는 것은 아니다. 컨트롤러 지원 장치(100)는 디스플레이 크기 객체(1220) 및 복수의 디스플레이 셀들(1211, 1212, 1213, 1214, 1215, 1216) 중 하나의 디스플레이 셀과 연관된 제2 사용자 입력에 응답하여, 하나의 디스플레이 셀을 기준으로 복수의 셀들 중 적어도 둘 이상의 셀들을 병합하도록 복수의 디스플레이 셀들(1211, 1212, 1213, 1214, 1215, 1216)을 설정할 수 있다. 도 12에서는 예를 들어, 디스플레이 셀(1210)이 총 6개의 셀들(1211, 1212, 1213, 1214, 1215, 1216)로 구분될 수 있고, 디스플레이 크기 객체(1220)는 1 x 1 크기로 설정하는 객체, 2 x 2 크기로 설정하는 객체, 3 x 2 크기로 설정하는 객체 등이 예시적으로 도시되었으며, 디스플레이 소스 객체(1230)들은 CCTV 및 PC 화면 등이 소스 영상으로서 제공되는 것으로 도시될 수 있다.12, the controller supporting apparatus 100 can generate a plurality of display cells 1211, 1212, 1213, 1214, 1215, and 1216 in a grid form at predetermined intervals in the canvas area 530 have. However, the shape and arrangement of the display cells 1211, 1212, 1213, 1214, 1215, and 1216 are not limited to the illustrated ones. In response to a second user input associated with a display cell of one of a display size object 1220 and a plurality of display cells 1211, 1212, 1213, 1214, 1215, 1216, 1212, 1213, 1214, 1215, and 1216 so as to merge at least two of the plurality of cells based on a plurality of display cells 1211, 1212, 1213, 1214, 1215, and 1216. 12, for example, the display cell 1210 can be divided into a total of six cells 1211, 1212, 1213, 1214, 1215, and 1216, and the display size object 1220 is set to a size of 1 x 1 An object set to a size of 2 x 2, an object set to a size of 3 x 2, and the like, and the display source objects 1230 can be shown as being provided as a source image, such as a CCTV and a PC screen .

도 13은 디스플레이 셀 크기 변경의 예시를 도시할 수 있다.13 illustrates an example of a display cell size change.

일 실시예에 따르면, 컨트롤러 지원 장치(100)는 캔버스 영역에 디스플레이 크기 객체(1321)를 생성할 수 있고, 디스플레이 크기 객체(1321)와 연관된 제2 사용자 입력(1391)의 수신에 응답하여, 스트리밍되는 소스 영상으로부터 디스플레이 크기 객체(1321)에 지정된 크기의 모니터링 영상을 생성하도록 디스플레이 크기 객체(1321)를 설정할 수 있다. 컨트롤러 지원 장치(100)는 제2 사용자가 동적으로 소스 영상들의 크기를 조정할 수 있게 해주는 디스플레이 크기 객체(1321)를, 제1 사용자가 용이하게 생성할 수 있도록 지원할 수 있다.In accordance with one embodiment, the controller aided device 100 may generate a display size object 1321 in the canvas region and, in response to receiving a second user input 1391 associated with the display size object 1321, A display size object 1321 can be set to generate a monitor image of a size specified in the display size object 1321 from the source image. The controller support apparatus 100 may facilitate a first user to easily generate a display size object 1321 that allows a second user to dynamically adjust the size of the source images.

예를 들어, 컨트롤러 지원 장치(100)는 스크린 제어 아이템과 연관된 제1 사용자 입력의 수신에 응답하여, 캔버스 영역에 n x m 개(n 및 m은 각각 1이상의 정수임)의 디스플레이 셀들을 그리드 형태로 생성할 수 있다. 또한, 컨트롤러 지원 장치(100)는 디스플레이 크기 객체(1321)를 캔버스 영역에 생성하고, 디스플레이 크기 객체(1321) 및 n x m 개의 디스플레이 셀들 중 하나의 디스플레이 셀(1311)과 연관된 제2 사용자 입력(1392)에 응답하여, 하나의 디스플레이 셀(1311)을 기준으로 디스플레이 크기 객체(1321)에 대응하는 크기로 n x m개의 디스플레이 셀들 중 둘 이상의 디스플레이 셀들(예를 들어, 도 13에서는 (1,1)셀, (1,2)셀, (2,1)셀, (2,2)셀)을 병합하여 단일 디스플레이 셀(1319)을 생성하도록 디스플레이 크기 객체(1321)를 설정할 수 있다.For example, in response to receipt of a first user input associated with a screen control item, the controller support device 100 generates nxm (n and m are each an integer of 1 or more) display cells in the canvas area in a grid form . The controller support device 100 also generates a display size object 1321 in the canvas area and generates a display size object 1321 and a second user input 1392 associated with one of the nxm display cells 1311, (E.g., (1, 1) cell, ((1, 1), (1, 2)) cells of the nxm display cells of a size corresponding to the display size object 1321 on the basis of one display cell 1311 (2,1) cell, (2,1) cell, (2,2) cell) may be merged to set the display size object 1321 to produce a single display cell 1319. [

구체적으로, 컨트롤러 지원 장치(100)는 디스플레이 셀의 오른쪽 하단의 코너를 드래그하는 제2 사용자 입력에 응답하여 디스플레이 셀의 크기가 변경되도록 하거나, 디스플레이 크기 객체(1321)에 대한 제2 사용자 입력(1391)에 응답하여 디스플레이 셀의 크기가 변경될 수 있도록 중앙집중형 모니터링 시스템을 저작할 수 있다. 후자의 경우, 컨트롤러 지원 장치(100)에 의해 제작된 중앙집중형 모니터링 시스템은 제2 사용자의 디스플레이 크기 객체(1321)에 대한 입력(예를 들어, 특정 크기를 지시하는 디스플레이 크기 객체(1321)를 클릭)(1391)(예를 들어, 도 13에서는 2 x 2)에 응답하여, 디스플레이 셀의 크기를 선택할 수 있다. 디스플레이 셀의 크기는 도 13에 도시된 바와 같이, 선택된 크기로 변경될 수 있다. 상술한 바와 같이, 저작이 완료된 중앙집중형 모니터링 시스템에 있어서, 제2 사용자는 제1 사용자에 의해 저작된 디스플레이 크기 객체(1321) 및 디스플레이 셀(1311)에 대한 간단한 제2 사용자 입력을 통해서, 소스 영상이 디스플레이되는 디스플레이 셀을 동적으로 쉽고 빠르게 조정할 수 있다.Specifically, the controller supporting apparatus 100 The size of the display cell is changed in response to the second user input dragging the lower right corner of the display cell or the size of the display cell is changed in response to the second user input 1391 for the display size object 1321 A centralized monitoring system can be authored so that In the latter case, the centralized monitoring system, produced by the controller support device 100, (E.g., 2 x 2 in Figure 13) 1391 (e.g., clicking on a display size object 1321 indicating a particular size) for a display size object 1321, You can choose the size. The size of the display cell can be changed to a selected size, as shown in Fig. As described above, in a centralized monitoring system in which authoring has been completed, the second user is able to access the display source 1321 and the display cell 1311 through a simple second user input to the display size object 1321 and display cell 1311 authored by the first user, The display cell in which the image is displayed can be dynamically adjusted easily and quickly.

도 14는 디스플레이되는 소스 영상을 디스플레이 셀에 연결하는 예시를 나타낼 수 있다. Fig. 14 may show an example of connecting a source image to be displayed to a display cell.

컨트롤러 지원 장치(100)는 디스플레이 소스 객체(1431)를 캔버스 영역에 생성하고, 디스플레이 소스 객체(1431) 및 단일 디스플레이 셀(1411)과 연관된 제2 사용자 입력(1491, 1492)에 응답하여, 디스플레이 소스 객체(1431)에 대응하는 소스 영상으로부터 단일 디스플레이 셀(1411)의 높이 및 폭 중 적어도 하나에 매칭되면서 소스 영상과 동일한 영상 비율을 가지는 모니터링 영상(1419)을 생성하도록 디스플레이 소스 객체(1431)를 설정할 수 있다. 컨트롤러 지원 장치(100)는 단일 디스플레이 셀(1411)의 적어도 일부에 모니터링 영상(1419)을 제공하고, 단일 디스플레이 셀(1419)의 나머지 부분에 검은 영상을 제공하도록 단일 디스플레이 셀(1419)을 설정할 수 있다. 컨트롤러 지원 장치(100)는 모니터링 영상(1419)의 영상 비율을 소스 영상과 동일하게 유지함으로써, 영상의 확대 및 축소 시에 왜곡을 최소화할 수 있다.The controller support device 100 creates a display source object 1431 in the canvas area and in response to the display source object 1431 and the second user input 1491, 1492 associated with the single display cell 1411, The display source object 1431 is set to generate a monitoring image 1419 having the same image ratio as the source image while matching at least one of the height and the width of the single display cell 1411 from the source image corresponding to the object 1431 . The controller support apparatus 100 may set a single display cell 1419 to provide a monitoring image 1419 to at least a portion of a single display cell 1411 and to provide a black image to the remainder of a single display cell 1419 have. The controller supporting apparatus 100 can maintain the same image ratio of the monitoring image 1419 as the source image, thereby minimizing distortion at the time of enlarging and reducing the image.

예를 들어, 컨트롤러 지원 장치(100)에 의해 저작된 중앙집중형 모니터링 시스템은 제2 사용자로부터 먼저 디스플레이 소스 객체들(1431) 중에서 소스 영상을 선택하는 입력(1491) 및, 소스 영상이 표시될 디스플레이 셀을 선택하는 입력(1492)을 수신할 수 있다. 컨트롤러 지원 장치(100)에 의해 저작된 중앙집중형 모니터링 시스템은 선택된 소스 영상을 선택된 디스플레이 셀(1411)에 표시할 수 있다. 또한, 컨트롤러 지원 장치(100)에 의해 저작된 중앙집중형 모니터링 시스템은 임의의 소스 영상에 대응하는 디스플레이 소스 객체(1431)를 드래그하여 디스플레이 셀(1411)에 드롭하는 제2 사용자 입력에 응답하여, 선택된 소스 영상을 선택된 디스플레이 셀에 제공할 수 있다. 다만, 디스플레이 셀(1411) 및 디스플레이 소스 객체(1431)에 대한 제2 사용자 입력을 상술한 바로 한정하는 것은 아니고, 제2 사용자 입력의 순서는 변경될 수 있고, 입력 형태는 터치, 제스쳐 등과 같은 다양한 형태를 포함할 수 있다.For example, the centralized monitoring system authored by the controller support device 100 may include an input 1491 for first selecting a source image from the display source objects 1431 from a second user, Lt; RTI ID = 0.0 &gt; 1492 &lt; / RTI &gt; The centralized monitoring system authored by the controller support device 100 And display the selected source image on the selected display cell 1411. [ In addition, the centralized monitoring system authored by the controller support device 100 may respond to a second user input dragging a display source object 1431 corresponding to any source image into the display cell 1411, And can provide the selected source image to the selected display cell. However, the second user input to the display cell 1411 and the display source object 1431 is not limited to the above-described one. The order of the second user input may be changed, and the input form may be various &Lt; / RTI &gt;

도 15는 일 실시예에 따른 복수의 모니터링 영상들을 제공하기 위한 동적인 디스플레이 컨트롤러 지원 방법을 설명하기 위한 흐름도이다.15 is a flowchart illustrating a dynamic display controller support method for providing a plurality of monitoring images according to an exemplary embodiment.

우선, 단계(1510)에서는 컨트롤러 지원 장치는 처리부를 통해 서버에 대한 외부 단말의 제1 사용자의 접속을 허용할 수 있다.First, in step 1510, the controller supporting apparatus can allow the first user of the external terminal to access the server through the processing unit.

그리고 단계(1520)에서는 컨트롤러 지원 장치는 통신부를 통해 제1 사용자로부터 스크린 제어 아이템(screen control item)과 연관된 제1 사용자 입력을 수신할 수 있다.And in step 1520, the controller support device may receive a first user input associated with a screen control item from the first user via the communication portion.

이어서 단계(1530)에서는 컨트롤러 지원 장치는 처리부를 통해 스크린 제어 아이템과 연관된 제1 사용자 입력의 수신에 응답하여 캔버스 영역(canvas region)에 디스플레이 객체를 생성하고, 제2 사용자로부터 수신되는 디스플레이 객체와 연관된 제2 사용자 입력에 응답하여 보안 카메라로부터 스트리밍되는 복수의 소스 영상들 중에서 디스플레이 객체에 대응하는 소스 영상이 제공되도록 디스플레이 객체를 설정할 수 있다.Subsequently, in step 1530, the controller-assisted device generates a display object in the canvas region in response to receiving the first user input associated with the screen control item through the processing unit and generates a display object associated with the display object received from the second user The display object may be set such that a source image corresponding to the display object is provided among the plurality of source images streamed from the security camera in response to the second user input.

다만, 서버에 의해 구현되는 복수의 모니터링 영상들을 제공하기 위한 동적인 디스플레이 컨트롤러 지원 방법의 동작들을 상술한 바로 한정하는 것은 아니고, 각 동작의 순서 및 세부 사항은 설계에 따라 변경될 수 있다. 또한, 디스플레이 컨트롤러 지원 방법의 동작은 상술한 도 1 내지 도 14의 컨트롤러 지원 장치의 동작들과 결합되어 수행될 수 있다.However, the operations of the dynamic display controller support method for providing a plurality of monitoring images implemented by the server are not limited to those described above, and the order and details of each operation may be changed according to the design. In addition, the operation of the display controller support method can be performed in combination with the operations of the controller support apparatus of Figs. 1 to 14 described above.

본 발명의 실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.The method according to an embodiment of the present invention may be implemented in the form of a program command that can be executed through various computer means and recorded in a computer-readable medium. The computer-readable medium may include program instructions, data files, data structures, and the like, alone or in combination. The program instructions to be recorded on the medium may be those specially designed and configured for the embodiments or may be available to those skilled in the art of computer software. Examples of computer-readable media include magnetic media such as hard disks, floppy disks and magnetic tape; optical media such as CD-ROMs and DVDs; magnetic media such as floppy disks; Magneto-optical media, and hardware devices specifically configured to store and execute program instructions such as ROM, RAM, flash memory, and the like. Examples of program instructions include machine language code such as those produced by a compiler, as well as high-level language code that can be executed by a computer using an interpreter or the like. The hardware devices described above may be configured to operate as one or more software modules to perform the operations of the embodiments, and vice versa.

이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.While the present invention has been particularly shown and described with reference to exemplary embodiments thereof, it is to be understood that the invention is not limited to the disclosed exemplary embodiments. For example, it is to be understood that the techniques described may be performed in a different order than the described methods, and / or that components of the described systems, structures, devices, circuits, Lt; / RTI &gt; or equivalents, even if it is replaced or replaced.

그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.Therefore, other implementations, other embodiments, and equivalents to the claims are also within the scope of the following claims.

100: 컨트롤러 지원 장치
110: 통신부
120: 처리부
130: 저장부
100: Controller supported device
110:
120:
130:

Claims (20)

서버에 의해 구현되는 복수의 모니터링 영상들을 제공하기 위한 동적인 디스플레이 컨트롤러 지원 방법에 있어서,
상기 서버에 대한 외부 단말의 제1 사용자의 접속을 허용하는 단계;
상기 제1 사용자로부터 디스플레이 셀, 디스플레이 크기 객체 및 디스플레이 소스 객체 중 적어도 하나를 생성하기 위한 스크린 제어 아이템(screen control item)과 연관된 제1 사용자 입력을 수신하는 단계; 및
상기 스크린 제어 아이템과 연관된 제1 사용자 입력의 수신에 응답하여 캔버스 영역(canvas region)에 상기 적어도 하나를 포함하는 디스플레이 객체를 생성하고, 상기 제1 사용자와 상이한 제2 사용자로부터 수신되는 상기 디스플레이 객체와 연관된 제2 사용자 입력에 응답하여 보안 카메라로부터 스트리밍되는 복수의 소스 영상들 중에서 상기 디스플레이 객체에 대응하는 소스 영상이 제공되도록 상기 디스플레이 객체를 설정하는 단계
를 포함하는 복수의 모니터링 영상들을 제공하기 위한 동적인 디스플레이 컨트롤러 지원 방법.
A method of supporting a dynamic display controller for providing a plurality of monitoring images implemented by a server,
Allowing a first user of the external terminal to access the server;
Receiving a first user input associated with a screen control item for generating at least one of a display cell, a display size object and a display source object from the first user; And
In response to receiving a first user input associated with the screen control item, generating a display object comprising the at least one in a canvas region, wherein the display object received from a second user different from the first user Setting the display object such that a source image corresponding to the display object is provided among a plurality of source images streamed from a security camera in response to an associated second user input
The method comprising the steps of: providing a plurality of monitoring images;
제1항에 있어서,
상기 디스플레이 객체를 설정하는 단계는,
상기 디스플레이 소스 객체를 생성하고, 상기 디스플레이 소스 객체와 연관된 제2 사용자 입력에 응답하여 보안 카메라로부터 스트리밍되는 복수의 소스 영상들 중에서 상기 디스플레이 소스 객체에 대응하는 소스 영상을 선택하도록 상기 디스플레이 소스 객체를 설정하는 단계;
상기 디스플레이 크기 객체를 상기 캔버스 영역에 생성하고, 상기 디스플레이 크기 객체 및 상기 디스플레이 셀과 연관된 제2 사용자 입력에 응답하여 상기 디스플레이 셀의 크기를 해당 디스플레이 크기 객체에 지정된 크기로 결정하도록 상기 디스플레이 크기 객체를 설정하는 단계; 및
상기 디스플레이 셀을 상기 캔버스 영역에 생성하고, 상기 디스플레이 셀 및 상기 디스플레이 소스 객체와 연관된 제2 사용자 입력에 응답하여 상기 선택된 소스 영상을 상기 지정된 크기로 상기 디스플레이 셀 상에 표시하도록 상기 디스플레이 셀을 설정하는 단계
를 포함하는 복수의 모니터링 영상들을 제공하기 위한 동적인 디스플레이 컨트롤러 지원 방법.
를 포함하는 복수의 모니터링 영상들을 제공하기 위한 동적인 디스플레이 컨트롤러 지원 방법.
The method according to claim 1,
Wherein the setting of the display object comprises:
Setting the display source object to select a source image corresponding to the display source object from a plurality of source images streamed from a security camera in response to a second user input associated with the display source object ;
Creating a display size object in the canvas region and responsive to a second user input associated with the display size object and the display cell to convert the display size object to a size specified in the display size object, ; And
Setting the display cell to display the selected source image on the display cell in the designated size in response to a second user input associated with the display cell and the display source object, step
The method comprising the steps of: providing a plurality of monitoring images;
The method comprising the steps of: providing a plurality of monitoring images;
제2항에 있어서,
상기 디스플레이 셀을 설정하는 단계는,
복수의 디스플레이 셀들을 상기 캔버스 영역에 미리 정해진 간격으로 된 그리드 형태로 생성하는 단계; 및
상기 디스플레이 크기 객체 및 상기 복수의 디스플레이 셀들 중 하나의 디스플레이 셀과 연관된 제2 사용자 입력에 응답하여, 상기 하나의 디스플레이 셀을 기준으로 상기 복수의 셀들 중 적어도 둘 이상의 셀들을 병합하도록 상기 복수의 디스플레이 셀들을 설정하는 단계
를 포함하는 복수의 모니터링 영상들을 제공하기 위한 동적인 디스플레이 컨트롤러 지원 방법.
3. The method of claim 2,
The step of setting the display cell includes:
Generating a plurality of display cells in a grid form at predetermined intervals in the canvas area; And
In response to a second user input associated with the display size object and one of the plurality of display cells, merges at least two of the plurality of cells with respect to the one display cell, &Lt; / RTI &gt;
The method comprising the steps of: providing a plurality of monitoring images;
제1항에 있어서,
상기 캔버스 영역에 상기 디스플레이 크기 객체를 생성하는 단계; 및
상기 디스플레이 크기 객체와 연관된 제2 사용자 입력의 수신에 응답하여, 스트리밍되는 소스 영상으로부터 상기 디스플레이 크기 객체에 지정된 크기의 모니터링 영상을 생성하도록 상기 디스플레이 크기 객체를 설정하는 단계
를 포함하는 복수의 모니터링 영상들을 제공하기 위한 동적인 디스플레이 컨트롤러 지원 방법.
The method according to claim 1,
Creating the display size object in the canvas area; And
Setting the display size object to generate a monitoring image of a size specified in the display size object from the streamed source image in response to receiving a second user input associated with the display size object
The method comprising the steps of: providing a plurality of monitoring images;
제1항에 있어서,
상기 디스플레이 객체를 설정하는 단계는,
상기 스크린 제어 아이템과 연관된 제1 사용자 입력의 수신에 응답하여, 상기 캔버스 영역에 n x m 개의 디스플레이 셀들을 그리드 형태로 생성하는 단계
를 포함하고,
상기 n 및 m은 각각 1이상의 정수인,
복수의 모니터링 영상들을 제공하기 위한 동적인 디스플레이 컨트롤러 지원 방법.
The method according to claim 1,
Wherein the setting of the display object comprises:
In response to receiving a first user input associated with the screen control item, generating nxm display cells in a grid form in the canvas area
Lt; / RTI &gt;
And n and m are each an integer of 1 or more,
A method of supporting a dynamic display controller to provide a plurality of monitoring images.
제5항에 있어서,
상기 디스플레이 객체를 설정하는 단계는,
상기 디스플레이 크기 객체를 상기 캔버스 영역에 생성하고, 상기 디스플레이 크기 객체 및 상기 n x m 개의 디스플레이 셀들 중 하나의 디스플레이 셀과 연관된 제2 사용자 입력에 응답하여, 상기 하나의 디스플레이 셀을 기준으로 상기 디스플레이 크기 객체에 대응하는 크기로 상기 n x m개의 디스플레이 셀들 중 둘 이상의 디스플레이 셀들을 병합하여 단일 디스플레이 셀을 생성하도록 상기 디스플레이 크기 객체를 설정하는 단계;
상기 디스플레이 소스 객체를 상기 캔버스 영역에 생성하고, 상기 디스플레이 소스 객체 및 상기 단일 디스플레이 셀과 연관된 제2 사용자 입력에 응답하여, 상기 디스플레이 소스 객체에 대응하는 소스 영상으로부터 상기 단일 디스플레이 셀의 높이 및 폭 중 적어도 하나에 매칭되면서 상기 소스 영상과 동일한 영상 비율을 가지는 모니터링 영상을 생성하도록 상기 디스플레이 소스 객체를 설정하는 단계; 및
상기 단일 디스플레이 셀의 적어도 일부에 상기 모니터링 영상을 제공하고, 상기 단일 디스플레이 셀의 나머지 부분에 검은 영상을 제공하도록 상기 단일 디스플레이 셀을 설정하는 단계
를 더 포함하는 복수의 모니터링 영상들을 제공하기 위한 동적인 디스플레이 컨트롤러 지원 방법.
6. The method of claim 5,
Wherein the setting of the display object comprises:
In response to a second user input associated with the display size object and one of the nxm display cells, generating a display size object in the canvas area, Setting the display size object to merge two or more display cells of the nxm display cells to a corresponding size to produce a single display cell;
In response to a second user input associated with the display source object and the single display cell, generating a display source object from the source image corresponding to the display source object, Setting the display source object to generate a monitoring image having a same image ratio as the source image while being matched to at least one; And
Setting the single display cell to provide the monitoring image to at least a portion of the single display cell and to provide a black image to the remaining portion of the single display cell
The method comprising the steps of: providing a plurality of monitoring images;
제1항에 있어서,
상기 제1 사용자로부터 공통 제어 아이템과 연관된 제1 사용자 입력을 수신하는 단계;
상기 공통 제어 아이템과 연관된 제1 사용자 입력에 응답하여, 버튼, 이미지, 텍스트, 및 패널 중 적어도 하나를 캔버스 영역에 생성하는 단계
를 더 포함하는 복수의 모니터링 영상들을 제공하기 위한 동적인 디스플레이 컨트롤러 지원 방법.
The method according to claim 1,
Receiving a first user input associated with a common control item from the first user;
Generating at least one of a button, an image, a text, and a panel in a canvas area in response to a first user input associated with the common control item
The method comprising the steps of: providing a plurality of monitoring images;
제1항에 있어서,
상기 접속을 허용하는 단계는,
상기 외부 단말의 웹 브라우저를 통해 HTTP(HyperText Transfer Protocol)에 기초하여, 상기 외부 단말과의 연결을 수립하는 단계; 및
상기 외부 단말로 위지위그 에디터(WYSIWYG editor)를 제공하는 단계
를 포함하는 복수의 모니터링 영상들을 제공하기 위한 동적인 디스플레이 컨트롤러 지원 방법.
The method according to claim 1,
The step of allowing the connection comprises:
Establishing a connection with the external terminal based on HTTP (HyperText Transfer Protocol) through a web browser of the external terminal; And
Providing a WYSIWYG editor to the external terminal;
The method comprising the steps of: providing a plurality of monitoring images;
제1항에 있어서,
상기 캔버스 영역의 배경과 연관된 제1 사용자 입력을 수신하는 단계;
상기 배경과 연관된 제1 사용자 입력에 기초하여 상기 복수의 셀들 주변의 배경 영역에 대해 배경 이미지 및 배경 색 중 적어도 하나를 결정하는 단계;
상기 배경 색이 결정된 경우에 응답하여, 상기 캔버스 영역의 배경을 상기 결정된 배경 색으로 제공하는 단계;
상기 배경 이미지가 결정된 경우에 응답하여, 상기 캔버스 영역의 배경에 상기 결정된 배경 이미지를 제공하는 단계; 및
상기 배경 색 및 상기 배경 이미지가 결정된 경우에 응답하여, 상기 배경 색으로 구성되는 상기 배경 영역에 상기 배경 이미지를 오버레이하여 제공하는 단계
를 더 포함하는 복수의 모니터링 영상들을 제공하기 위한 동적인 디스플레이 컨트롤러 지원 방법.
The method according to claim 1,
Receiving a first user input associated with a background of the canvas region;
Determining at least one of a background image and a background color for a background area around the plurality of cells based on a first user input associated with the background;
Providing a background of the canvas area as the determined background color in response to determining the background color;
In response to determining the background image, providing the determined background image to the background of the canvas area; And
In response to determining the background color and the background image, overlaying the background image on the background area,
The method comprising the steps of: providing a plurality of monitoring images;
제1항에 있어서,
객체의 생성, 객체의 크기 변경, 객체의 그래픽 표현(graphic representation) 변경, 객체의 위치 변경, 및 둘 이상의 객체들의 병합(merge) 중 적어도 하나에 응답하여, 상기 캔버스 영역에 생성된 객체들을 포함하는 프로젝트 파일을 자동으로 업데이트하여 상기 서버에 저장하는 단계
를 포함하는 복수의 모니터링 영상들을 제공하기 위한 동적인 디스플레이 컨트롤러 지원 방법.
The method according to claim 1,
In response to at least one of creating an object, resizing an object, changing a graphic representation of the object, repositioning the object, and merging two or more objects, Automatically updating the project file and storing it in the server
The method comprising the steps of: providing a plurality of monitoring images;
제1항에 있어서,
복수의 객체들에 대해 Z 인덱스를 지정하는 단계;
지정된 Z 인덱스에 기초하여 상기 복수의 객체들을 정렬하는 단계; 및
정렬된 순서에 따라 상기 복수의 객체들을 상기 캔버스 영역에 제공하는 단계
를 포함하는 복수의 모니터링 영상들을 제공하기 위한 동적인 디스플레이 컨트롤러 지원 방법.
The method according to claim 1,
Specifying a Z index for a plurality of objects;
Arranging the plurality of objects based on a specified Z index; And
Providing the plurality of objects to the canvas area in an ordered order
The method comprising the steps of: providing a plurality of monitoring images;
제1항에 있어서,
복수의 객체들 중 둘 이상의 객체들과 연관된 제1 사용자 입력에 응답하여, 상기 둘 이상의 객체들을 선택하고, 상기 선택된 둘 이상의 객체들을 단일 객체로 변환하는 단계; 및
단일 객체와 연관된 제1 사용자 입력에 응답하여, 상기 단일 객체를 상기 단일 객체에 대응하는 둘 이상의 객체들로 변환하는 단계
를 포함하는 복수의 모니터링 영상들을 제공하기 위한 동적인 디스플레이 컨트롤러 지원 방법.
The method according to claim 1,
Selecting the two or more objects in response to a first user input associated with two or more of the plurality of objects and converting the selected two or more objects into a single object; And
In response to a first user input associated with a single object, converting the single object into two or more objects corresponding to the single object
The method comprising the steps of: providing a plurality of monitoring images;
제1항에 있어서,
객체의 객체 타입에 따라 적어도 하나의 프로퍼티를 지정하는 단계;
복수의 객체들 중 둘 이상의 객체들과 연관된 제1 사용자 입력에 응답하여, 상기 둘 이상의 객체들을 선택하는 단계; 및
상기 선택된 둘 이상의 객체들에 공통적으로 지정된 프로퍼티(property)를 검색하며, 상기 공통적으로 지정된 프로퍼티를 표시하는 단계
를 포함하는 복수의 모니터링 영상들을 제공하기 위한 동적인 디스플레이 컨트롤러 지원 방법.
The method according to claim 1,
Designating at least one property according to an object type of the object;
Responsive to a first user input associated with two or more of the plurality of objects, selecting the two or more objects; And
Searching for a property commonly designated to the selected two or more objects, and displaying the commonly-designated property
The method comprising the steps of: providing a plurality of monitoring images;
제13항에 있어서,
상기 선택된 둘 이상의 객체들에 지정된 프로퍼티들에 대응하는 이진 플래그들(binary flags)에 대해 이진 연산자(binary operator)를 적용하여 이진 조합(binary combination)을 생성하는 단계; 및
상기 이진 조합에 기초하여 상기 선택된 둘 이상의 객체들에 공통되는 프로퍼티에 대응하는 이진 값을 추출하는 단계
를 포함하는 복수의 모니터링 영상들을 제공하기 위한 동적인 디스플레이 컨트롤러 지원 방법.
14. The method of claim 13,
Generating a binary combination by applying a binary operator to binary flags corresponding to the properties specified for the selected two or more objects; And
Extracting a binary value corresponding to a property common to the selected two or more objects based on the binary combination
The method comprising the steps of: providing a plurality of monitoring images;
제13항에 있어서,
상기 선택된 둘 이상의 객체들에 공통적으로 지정된 프로퍼티가 존재하는 경우, 상기 공통적으로 지정된 프로퍼티와 연관된 제1 사용자 입력의 수신에 응답하여, 상기 공통적으로 지정된 프로퍼티를 상기 선택된 둘 이상의 객체들에 대해 일괄적으로 설정하는 단계
를 더 포함하는 복수의 모니터링 영상들을 제공하기 위한 동적인 디스플레이 컨트롤러 지원 방법.
14. The method of claim 13,
In response to receiving a first user input associated with the commonly-assigned property, if there is a property commonly designated to the selected two or more objects, collectively assigning the commonly-assigned property to the selected two or more objects collectively Steps to set
The method comprising the steps of: providing a plurality of monitoring images;
제1항에 있어서,
미리 정해진 문서 서식에 따라 소스와 액션 리스트를 갱신하는 단계
를 포함하는 복수의 모니터링 영상들을 제공하기 위한 동적인 디스플레이 컨트롤러 지원 방법.
The method according to claim 1,
Updating the source and action list according to a predetermined document format
The method comprising the steps of: providing a plurality of monitoring images;
제1항에 있어서,
복수의 객체들 중 둘 이상의 객체들과 연관된 제1 사용자 입력에 응답하여, 상기 둘 이상의 객체들을 선택하는 단계;
상기 둘 이상의 객체들 중 처음에 선택된 객체를 기준 객체로 지정하는 단계; 및
상기 기준 객체를 기초로 상기 선택된 둘 이상의 객체들 중 나머지 객체를 정렬하는 단계,
를 더 포함하는 복수의 모니터링 영상들을 제공하기 위한 동적인 디스플레이 컨트롤러 지원 방법.
The method according to claim 1,
Responsive to a first user input associated with two or more of the plurality of objects, selecting the two or more objects;
Designating a first object selected from the two or more objects as a reference object; And
Arranging the remaining objects of the selected two or more objects on the basis of the reference object,
The method comprising the steps of: providing a plurality of monitoring images;
제1항에 있어서,
상기 캔버스 영역에 더하여 메뉴 영역, 툴박스 영역, 및 프로퍼티 영역을 제공하는 단계
를 더 포함하고,
상기 메뉴 영역은,
객체를 정렬시키는 동작을 실행하기 위한 아이템, 프로젝트를 동작시키기 위한 아이템, 동작을 수정하기 위한 아이템, 미리보기 동작을 실행하기 위한 아이템, 및 환경설정을 위한 아이템을 포함하고,
상기 툴박스 영역은,
생성될 객체의 타입을 지정하기 위한 아이템을 포함하며,
상기 캔버스 영역은,
생성된 객체가 배치되는 영역이며,
상기 프로퍼티 영역은,
상기 생성된 객체의 프로퍼티 및 상기 캔버스 영역의 프로퍼티를 변경하기 위한 아이템을 포함하는,
복수의 모니터링 영상들을 제공하기 위한 동적인 디스플레이 컨트롤러 지원 방법.
The method according to claim 1,
Providing a menu area, a tool box area, and a property area in addition to the canvas area
Further comprising:
Wherein the menu area comprises:
An item for executing an operation for arranging an object, an item for operating a project, an item for modifying an operation, an item for executing a preview operation, and an item for setting environment,
The toolbox area includes:
An item for designating the type of the object to be generated,
Wherein the canvas region comprises:
The area where the created object is placed,
Wherein the property area comprises:
And an item for changing a property of the created object and a property of the canvas area.
A method of supporting a dynamic display controller to provide a plurality of monitoring images.
하드웨어와 결합되어 제1항 내지 제18항 중 어느 한 항의 방법을 실행시키기 위하여 매체에 저장된 컴퓨터 프로그램.18. A computer program stored on a medium for executing the method of any one of claims 1 to 18 in combination with hardware. 복수의 모니터링 영상들을 제공하기 위한 동적인 디스플레이 컨트롤러 지원 장치에 있어서,
제1 사용자의 외부 단말과 통신하는 통신부;
상기 통신부를 통해 상기 장치에 대한 상기 외부 단말의 상기 제1 사용자의 접속을 허용하고, 상기 통신부를 통해 상기 제1 사용자로부터 디스플레이 셀, 디스플레이 크기 객체 및 디스플레이 소스 객체 중 적어도 하나를 생성하기 위한 스크린 제어 아이템(screen control item)과 연관된 제1 사용자 입력을 수신하며, 상기 스크린 제어 아이템과 연관된 제1 사용자 입력의 수신에 응답하여 캔버스 영역(canvas region)에 상기 적어도 하나를 포함하는 디스플레이 객체를 생성하고, 상기 제1 사용자와 상이한 제2 사용자로부터 수신되는 상기 디스플레이 객체와 연관된 제2 사용자 입력에 응답하여 보안 카메라로부터 스트리밍되는 복수의 소스 영상들 중에서 상기 디스플레이 객체에 대응하는 소스 영상이 제공되도록 상기 디스플레이 객체를 설정하는 처리부
를 포함하는 복수의 모니터링 영상들을 제공하기 위한 동적인 디스플레이 컨트롤러 지원 장치.
A dynamic display controller support device for providing a plurality of monitoring images,
A communication unit for communicating with an external terminal of the first user;
A screen control for allowing connection of the first user of the external terminal to the device via the communication unit and for generating at least one of a display cell, a display size object and a display source object from the first user via the communication unit; A method comprising: receiving a first user input associated with a screen control item, generating a display object comprising the at least one in a canvas region in response to receiving a first user input associated with the screen control item, The display object being adapted to provide a source image corresponding to the display object from a plurality of source images streamed from a security camera in response to a second user input associated with the display object received from a second user different from the first user, The processing unit
And a display controller for displaying the plurality of monitoring images.
KR1020160052286A 2016-01-14 2016-04-28 Device and method for dynamic display controller to provide a plurality of monitoring images KR101785845B1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020160004943 2016-01-14
KR20160004943 2016-01-14

Publications (2)

Publication Number Publication Date
KR20170085414A KR20170085414A (en) 2017-07-24
KR101785845B1 true KR101785845B1 (en) 2017-10-13

Family

ID=59429064

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160052286A KR101785845B1 (en) 2016-01-14 2016-04-28 Device and method for dynamic display controller to provide a plurality of monitoring images

Country Status (1)

Country Link
KR (1) KR101785845B1 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100913796B1 (en) * 2007-03-30 2009-08-26 한국기술산업 (주) Method and apparatus for authoring web pages
KR101357901B1 (en) * 2011-10-12 2014-02-04 (주)모션블루 Method and appratus for providing realizable service in n-screen enviroment and recording media therefor
KR101456507B1 (en) * 2012-08-13 2014-10-31 인크로스 주식회사 An authoring apparatus for applying n-screen to web application ui and the method for the same

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100913796B1 (en) * 2007-03-30 2009-08-26 한국기술산업 (주) Method and apparatus for authoring web pages
KR101357901B1 (en) * 2011-10-12 2014-02-04 (주)모션블루 Method and appratus for providing realizable service in n-screen enviroment and recording media therefor
KR101456507B1 (en) * 2012-08-13 2014-10-31 인크로스 주식회사 An authoring apparatus for applying n-screen to web application ui and the method for the same

Also Published As

Publication number Publication date
KR20170085414A (en) 2017-07-24

Similar Documents

Publication Publication Date Title
US20210042012A1 (en) Interactive presentation controls
US9720658B2 (en) Application creation method and apparatus
US20190303269A1 (en) Methods and systems for testing visual aspects of a web page
US20100042933A1 (en) Region selection control for selecting browser rendered elements
US9105094B2 (en) Image layers navigation
US20200097719A1 (en) Converting a captured image of a layout to a structured document template
US20170109020A1 (en) Interactive presentation system
WO2014002812A1 (en) Terminal device, annotation method, computer system, and computer program
CN111679818A (en) Method and system for editing display software
US9646362B2 (en) Algorithm for improved zooming in data visualization components
CN112667235A (en) Visual layout editing implementation method and device and electronic equipment
US20030037310A1 (en) Visual programming tool and execution environment for developing computer software applications
CN113158619A (en) Document processing method and device, computer readable storage medium and computer equipment
JP4148721B2 (en) Shared terminal for conference support, information processing program, storage medium, information processing method, and conference support system
KR101785845B1 (en) Device and method for dynamic display controller to provide a plurality of monitoring images
CN110020279A (en) Page data processing method, device and storage medium
US10956497B1 (en) Use of scalable vector graphics format to encapsulate building floorplan and metadata
JP6287498B2 (en) Electronic whiteboard device, electronic whiteboard input support method, and program
US20170357412A1 (en) Data creating device, data creating method, and data creating program
CN115509665B (en) Method, device, medium and equipment for recording control in window
JP2014197256A (en) Editing device, editing method, and program
US11966572B2 (en) Commenting feature for graphic design systems
US11069091B2 (en) Systems and methods for presentation of and interaction with immersive content
CN109804372B (en) Emphasizing image portions in a presentation
JP6063153B2 (en) Information processing apparatus, information processing method, and program

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right