KR102263538B1 - Display system for aircraft and method for displaying character string thereof the same - Google Patents

Display system for aircraft and method for displaying character string thereof the same Download PDF

Info

Publication number
KR102263538B1
KR102263538B1 KR1020200180408A KR20200180408A KR102263538B1 KR 102263538 B1 KR102263538 B1 KR 102263538B1 KR 1020200180408 A KR1020200180408 A KR 1020200180408A KR 20200180408 A KR20200180408 A KR 20200180408A KR 102263538 B1 KR102263538 B1 KR 102263538B1
Authority
KR
South Korea
Prior art keywords
string
screen
rendering
attribute value
widget
Prior art date
Application number
KR1020200180408A
Other languages
Korean (ko)
Inventor
이인균
Original Assignee
한화시스템(주)
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 한화시스템(주) filed Critical 한화시스템(주)
Priority to KR1020200180408A priority Critical patent/KR102263538B1/en
Application granted granted Critical
Publication of KR102263538B1 publication Critical patent/KR102263538B1/en

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B64AIRCRAFT; AVIATION; COSMONAUTICS
    • B64DEQUIPMENT FOR FITTING IN OR TO AIRCRAFT; FLIGHT SUITS; PARACHUTES; ARRANGEMENTS OR MOUNTING OF POWER PLANTS OR PROPULSION TRANSMISSIONS IN AIRCRAFT
    • B64D43/00Arrangements or adaptations of instruments
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units

Abstract

According to an embodiment of the present invention, a display system for aircraft may comprise: a kernel library which stores ASCII codes for characters input to display on a screen together with bitmap fonts in internal memory; and a widget library which renders individual characters on the screen according to property information for displaying the characters stored in the kernel library on the screen, or saves individual characters in a string buffer to compose a string, and renders the strings stored in the string buffer on the screen at once.

Description

항공기용 디스플레이 시스템 및 이의 문자열 표시 방법{DISPLAY SYSTEM FOR AIRCRAFT AND METHOD FOR DISPLAYING CHARACTER STRING THEREOF THE SAME}DISPLAY SYSTEM FOR AIRCRAFT AND METHOD FOR DISPLAYING CHARACTER STRING THEREOF THE SAME

본 발명은 항공기용 디스플레이 시스템 및 이의 문자열 표시 방법에 관한 것으로, 디스플레이를 하는 동안 변하지 않는 문자열에 대해 단일 렌더링 방식을 적용하여 문자열을 표시하는 항공기용 디스플레이 시스템 및 이의 문자열 표시 방법에 관한 것이다.The present invention relates to an aircraft display system and a method for displaying a character string thereof, and to an aircraft display system for displaying a character string by applying a single rendering method to a character string that does not change during display, and a character string display method thereof.

ARINC 661은 조종석 디스플레이 시스템(Cockpit Display System, CDS)의 대화형 그래픽 사용자인터페이스(Interactive Graphical User Interface) 개발을 위한 국제 표준이다. ARINC 661 표준에서는 다양한 형태의 그래픽 요소인 위젯(Widgets)을 정의하고 있으며, 그 형태도 선, 면 등을 이용한 기하 도형을 표현하거나 사용자 입력을 통한 조종사와의 상호 작용이 가능한 기능을 포함한다. 특히 본 발명과 연관되는 문자를 표현하는 위젯이 존재하는데 라벨 위젯이 발명이며, 개선된 그래픽 렌더링 방식으로 문자를 표현한다.ARINC 661 is an international standard for the development of Interactive Graphical User Interfaces for Cockpit Display Systems (CDSs). The ARINC 661 standard defines widgets, which are graphic elements of various types, and the form also includes a function to express a geometric figure using lines and planes or to interact with the pilot through user input. In particular, there is a widget for expressing text related to the present invention, and the label widget is an invention, and the text is expressed by an improved graphic rendering method.

그래픽을 통한 글자 표현 방식은 일반적으로 두가지 방식, 벡터 폰트 파일을 이용한 방식과 비트맵 폰트 파일을 이용한 방식으로 나누어진다.A method of expressing characters through graphics is generally divided into two methods, a method using a vector font file and a method using a bitmap font file.

오픈 타입 또는 트루 타입 같은 벡터 폰트 파일을 로딩하여 글자를 화면에 표현하는 방식은 화면의 확대 또는 축소를 할 경우 동일한 품질을 유지한다. 이와는 반대로 비트맵 폰트 파일을 이용한 방식은 미리 정의된 그림으로 표현된 글자 모양을 화면에 그려주는 방식이기 때문에 확대 시 기존의 품질이 떨어지게 된다. The method of loading vector font files such as OpenType or TrueType to express characters on the screen maintains the same quality when the screen is enlarged or reduced. On the contrary, since the method using the bitmap font file draws the character shape expressed as a predefined picture on the screen, the existing quality deteriorates when enlarged.

ARINC 661 표준은 폰트 표현에 제약을 두지는 않지만 항공용이라는 특수성으로 표현 방식을 단순화하는 것을 우선하여 비트맵 폰트 파일을 이용한 비트맵 방식을 선호하며, 시스템 내 내장된 비트맵 폰트 세트를 필요시 화면의 특정 위치에 지정된 크기로 문자열 순서로 렌더링하는 방식으로 문자를 표현한다.The ARINC 661 standard does not limit the font expression, but prefers the bitmap method using the bitmap font file, giving priority to simplifying the expression method due to the specificity of aviation. Represents characters by rendering them in string order with a specified size at a specific location in .

기존 비트맵 폰트를 이용한 문자열 표현 방법은 특정 메모리 영역에 사전에 저장된 비트맵 이미지 데이터를 원하는 문자열로 한 글자씩 순차적으로 그리는 방식을 사용한다. 예를 들어, "1278"을 그리기 위해서 메모리 접근을 총 4회, 렌더링을 4회 수행하여 사각형 영역에 이미지로 문자열을 표현할 수 있다. The character string expression method using the existing bitmap font uses a method of sequentially drawing the bitmap image data stored in advance in a specific memory area as a desired character string, one character at a time. For example, to draw "1278", memory access is performed 4 times and rendering is performed 4 times to express a string as an image in a rectangular area.

이와 같이, 비트맵 폰트를 이용한 문자열 표현 방법은 메모리 접근 및 렌더링을 통해 문자열을 표현하는 데, 이러한 메모리 접근 및 렌더링을 최소화하는 것이 요구된다. As such, the character string representation method using the bitmap font expresses the character string through memory access and rendering, and it is required to minimize such memory access and rendering.

따라서, 본 발명은 상술한 요구 사항을 충족시키기 위한 것으로, 디스플레이를 하는 동안 변하지 않는 문자열에 대해 단일 렌더링 방식을 적용하여 문자열을 표시하는 항공기용 디스플레이 시스템 및 이의 문자열 표시 방법을 제공하는 것을 목적으로 한다.Accordingly, an object of the present invention is to provide a display system for an aircraft that displays a character string by applying a single rendering method to a character string that does not change during display, and a character string display method thereof, in order to satisfy the above requirements. .

본 발명의 해결과제는 이상에서 언급된 것들에 한정되지 않으며, 언급되지 아니한 다른 해결과제들은 아래의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.The problems to be solved of the present invention are not limited to those mentioned above, and other problems not mentioned will be clearly understood by those skilled in the art from the following description.

상기한 목적을 달성하기 위한 본 발명의 실시 예에 따른 항공기용 디스플레이 시스템은, 화면에 표시하기 위해 입력되는 문자에 대한 아스키 코드를 비트맵 폰트와 함께 내부 메모리에 저장하는 커널 라이브러리, 및 커널 라이브러리에 저장된 문자를 화면에 표시하기 위한 속성 정보에 따라, 개별 문자를 화면에 렌더링하거나, 개별 문자를 문자열 버퍼에 저장하여 문자열을 구성하고, 문자열 버퍼에 저장된 문자열을 한번에 화면에 렌더링하는 위젯 라이브러리를 포함할 수 있다.An aircraft display system according to an embodiment of the present invention for achieving the above object is a kernel library that stores ASCII codes for characters input to display on a screen in an internal memory together with a bitmap font, and a kernel library. Depending on the attribute information for displaying the stored characters on the screen, it may include a widget library that renders individual characters on the screen, or stores individual characters in a string buffer to compose a string, and renders the strings stored in the string buffer on the screen at once. can

상기 커널 라이브러리는, 항공기용 디스플레이 시스템의 환경 설정 파일 내에 존재하는 폰트 데이터 라이브러리에서 폰트 데이터를 읽어오는 구성 파일 로더, 구동 파일 로더가 읽어온 폰트 데이터를 해석하여 내부 메모리에 저장하는 폰트 데이터 파서, 및 내부 메모리에 저장된 정보를 바탕으로, OpenGL 텍스쳐 핸들을 생성하는 폰트 이미지 생성기를 포함할 수 있다.The kernel library includes a configuration file loader that reads font data from a font data library existing in an environment setting file of an aircraft display system, a font data parser that interprets the font data read by the driving file loader and stores it in an internal memory, and It can include a font image generator that creates an OpenGL texture handle based on information stored in internal memory.

상기 위젯 라이브러리는, 라벨 속성에 따라 라벨 위젯을 생성하는 라벨 위젯 생성기, 개별 문자를 하나의 문자열로 구성하기 위한 문자열 버퍼를 생성하고, 문자열 버퍼로 개별 문자를 복사하는 스트링 버퍼 생성기, 문자열 버퍼의 문자열을 렌더링하기 위한 OpenGL 텍스쳐 핸들을 생성하는 스트링 이미지 생성기, 및 라벨의 크기와 위치에 따라 상기 문자열 버퍼의 문자열을 화면에 렌더링하는 라벨 위젯 렌더링 실행기를 포함할 수 있다.The widget library includes a label widget generator for generating a label widget according to label properties, a string buffer generator for creating a string buffer for composing individual characters into one string, and a string buffer generator for copying individual characters into a string buffer, a string of a string buffer It may include a string image generator that generates an OpenGL texture handle for rendering, and a label widget rendering executor that renders the string of the string buffer on the screen according to the size and position of the label.

상기 라벨 위젯 생성기는 라벨 속성에 따라 라벨 위젯을 위한 메모리를 할당하고, 단일 문자열 사용여부를 설정할 수 있다.The label widget generator may allocate memory for the label widget according to label properties and set whether to use a single string.

상기 스트링 버퍼 생성기는 문자열의 길이와 크기에 대한 상기 문자열 버퍼를 생성할 수 있다.The string buffer generator may generate the string buffer for the length and size of the string.

상기 라벨 위젯 렌더링 실행기는 속성 정보가 개별 문자를 렌더링하는 값인 경우, 화면에 하나의 개별 문제를 렌더링하고, 개별 문자 전체에 대한 렌더링이 완료되었는지를 판단하고, 개별 문자 전체에 대한 렌더링이 완료되지 않았으면 다음 개별 문자를 화면에 렌더링할 수 있다.When the attribute information is a value for rendering individual characters, the label widget rendering executor renders one individual problem on the screen, determines whether the rendering of all individual characters is complete, and if the rendering of all individual characters is not completed Then, the individual characters can be rendered to the screen.

상기 라벨 위젯 렌더링 실행기는 HALO 속성 값을 확인하여 HALO 속성 값이 True인지 False인지 판단하고, HALO 속성 값이 True인 것으로 판단하면, 문자열 버퍼의 문자열에 대해 HALO 프로세싱을 수행한 후, 텍스쳐 바인딩을 수행하고, 화면에 렌더링할 수 있다.The label widget rendering executor checks the HALO attribute value to determine whether the HALO attribute value is True or False, and if it is determined that the HALO attribute value is True, performs HALO processing on the character string in the string buffer, and then performs texture binding. and render to the screen.

상기 라벨 위젯 렌더링 실행기는 HALO 속성 값이 False인 것으로 판단하면, 문자열 버퍼의 문자열에 대해 텍스쳐 바인딩을 수행한 한 후 화면에 렌더링할 수 있다.When the label widget rendering executor determines that the HALO attribute value is False, it may perform texture binding on the string in the string buffer and then render it on the screen.

한편, 본 발명의 실시 예에 따른 항공기용 디스플레이 시스템의 문자열 표시 방법은, 화면에 표시하기 위해 입력되는 문자에 대한 아스키 코드를 비트맵 폰트와 함께 내부 메모리에 저장하는 단계, 및 내부 메모리에 저장된 문자를 화면에 표시하기 위한 속성 정보에 따라, 개별 문자를 화면에 렌더링하거나, 개별 문자를 문자열 버퍼에 저장하여 문자열을 구성하고, 문자열 버퍼에 저장된 문자열을 한번에 화면에 렌더링하는 단계를 포함할 수 있다.On the other hand, the method for displaying a character string of a display system for an aircraft according to an embodiment of the present invention includes the steps of: storing an ASCII code for a character input to display on a screen in an internal memory together with a bitmap font, and the character stored in the internal memory may include rendering individual characters on the screen or storing individual characters in a string buffer to compose a string according to attribute information for displaying on the screen, and rendering the string stored in the string buffer on the screen at once.

상기 저장하는 단계는, 항공기용 디스플레이 시스템의 환경 설정 파일 내에 존재하는 폰트 데이터 라이브러리에서 폰트 데이터를 읽어오는 단계, 읽어온 폰트 데이터를 해석하여 내부 메모리에 저장하는 단계, 및 내부 메모리에 저장된 정보를 바탕으로, OpenGL 텍스쳐 핸들을 생성하는 단계를 포함할 수 있다.The storing includes reading font data from a font data library existing in an environment setting file of an aircraft display system, interpreting the read font data and storing it in an internal memory, and based on the information stored in the internal memory , creating an OpenGL texture handle.

상기 렌더링하는 단계는 문자열의 길이와 크기에 대한 문자열 버퍼를 생성하는 것을 포함할 수 있다.The rendering may include creating a string buffer for the length and size of the string.

상기 렌더링하는 단계는 속성 정보 중 Anonymous에 대한 속성 값을 확인하여 Anonymous에 대한 속성 값이 True인지 False인지 판단하고, Anonymous의 속성 값이 False인 것으로 판단하면, 개별 문자 전체를 순차적으로 화면에 표시하는 것을 포함할 수 있다.The rendering step checks the attribute value for Anonymous among the attribute information to determine whether the attribute value for Anonymous is True or False, and if it is determined that the attribute value for Anonymous is False, sequentially displaying all individual characters on the screen may include

상기 렌더링하는 단계는 속성 정보 중 Anonymous에 대한 속성 값을 확인하여 Anonymous에 대한 속성 값이 True인지 False인지 판단하고, Anonymous의 속성 값이 True인 것으로 판단하면, 문자열을 한번에 화면에 렌더링하는 것을 포함할 수 있다.The rendering step includes checking the attribute value for Anonymous among the attribute information, determining whether the attribute value for Anonymous is True or False, and if it is determined that the attribute value of Anonymous is True, rendering the string on the screen at once. can

상기 렌더링하는 단계는, 속정 정보 중 HALO 속성 값을 확인하여 HALO 속성 값이 True인지 False인지 판단하고, HALO 속성 값이 True인 것으로 판단하면, 문자열에 대해 HALO 프로세싱을 수행한 후, 텍스쳐 바인딩을 수행하고, 화면에 렌더링하는 것을 포함할 수 있다.In the rendering step, the HALO attribute value in the attribute information is checked to determine whether the HALO attribute value is True or False, and when it is determined that the HALO attribute value is True, HALO processing is performed on the string, and then texture binding is performed. and rendering to the screen.

상기 렌더링하는 단계는, HALO 속성 값이 False인 것으로 판단하면, 문자열에 대해 텍스쳐 바인딩을 수행한 한 후 화면에 렌더링하는 것을 포함할 수 있다.The rendering may include, if it is determined that the HALO attribute value is False, performing texture binding on the string and then rendering the text on the screen.

본 발명의 실시 예는 디스플레이를 하는 동안 변하지 않는 문자열에 대해 단일 렌더링 방식을 적용하여 문자열을 표시하는 항공기용 디스플레이 시스템 및 이의 문자열 표시 방법을 제공한다.An embodiment of the present invention provides an aircraft display system for displaying a character string by applying a single rendering method to a character string that does not change during display, and a character string display method thereof.

본 발명의 실시 예는 디스플레이를 하는 동안 변하지 않는 문자열에 대해 단일 렌더링 방식을 적용하여 문자열을 표시하기 때문에 메모리 접근 및 렌더링 횟수를 최소화할 수 있다.According to an embodiment of the present invention, since a single rendering method is applied to a character string that does not change during display to display the character string, memory access and the number of renderings can be minimized.

본 발명의 효과는 이상에서 언급된 것들에 한정되지 않으며, 언급되지 아니한 다른 효과들은 아래의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.Effects of the present invention are not limited to those mentioned above, and other effects not mentioned will be clearly understood by those skilled in the art from the following description.

이하에 첨부되는 도면들은 본 실시 예에 관한 이해를 돕기 위한 것으로, 상세한 설명과 함께 실시 예들을 제공한다. 다만, 본 실시 예의 기술적 특징이 특정 도면에 한정되는 것은 아니며, 각 도면에서 개시하는 특징들은 서로 조합되어 새로운 실시 예로 구성될 수 있다.
도 1은 본 발명의 실시 예에 따른 항공기용 디스플레이 시스템에 적용되는 ARICN 661 표준의 운용 개념도이다.
도 2는 본 발명의 실시 예에 따라 정의 시간 및 동작 시간에 이루어지는 동작을 개략적으로 나타낸 도면이다.
도 3은 본 발명의 실시예에 따른 항공기용 디스플레이 시스템의 커널 라이브러리의 구성을 도시한 도면이다.
도 4는 본 발명의 실시예에 따른 항공기용 디스플레이 시스템의 위젯 라이브러리의 구성을 도시한 도면이다.
도 5는 본 발명의 실시예에 따른 항공기용 디스플레이 시스템의 라벨 위젯 생성 과정 및 렌더링 과정을 설명하기 위한 플로우챠트이다.
도 6은 도 5의 단계 S540에 대한 상세 동작을 나타낸 플로우챠트이다.
The accompanying drawings are provided to help understanding of the present embodiment, and provide embodiments together with detailed description. However, the technical features of the present embodiment are not limited to specific drawings, and features disclosed in each drawing may be combined with each other to constitute a new embodiment.
1 is a conceptual diagram of the operation of the ARICN 661 standard applied to the display system for an aircraft according to an embodiment of the present invention.
2 is a diagram schematically illustrating an operation performed at a defined time and an operation time according to an embodiment of the present invention.
3 is a diagram illustrating a configuration of a kernel library of a display system for an aircraft according to an embodiment of the present invention.
4 is a diagram illustrating a configuration of a widget library of a display system for an aircraft according to an embodiment of the present invention.
5 is a flowchart for explaining a label widget creation process and a rendering process of the display system for an aircraft according to an embodiment of the present invention.
6 is a flowchart illustrating a detailed operation of step S540 of FIG. 5 .

본문에 개시되어 있는 본 발명의 실시 예들에 대해서, 특정한 구조적 내지 기능적 설명들은 단지 본 발명의 실시 예를 설명하기 위한 목적으로 예시된 것으로, 본 발명의 실시 예들은 다양한 형태로 실시될 수 있으며 본문에 설명된 실시 예들에 한정되는 것으로 해석되어서는 안 된다.With respect to the embodiments of the present invention disclosed in the text, specific structural or functional descriptions are only exemplified for the purpose of describing the embodiments of the present invention, the embodiments of the present invention may be implemented in various forms and It should not be construed as being limited to the described embodiments.

본 발명은 다양한 변경을 가할 수 있고 여러 가지 형태를 가질 수 있는 바, 특정 실시 예들을 도면에 예시하고 본문에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 개시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.Since the present invention can have various changes and can have various forms, specific embodiments are illustrated in the drawings and described in detail in the text. However, this is not intended to limit the present invention to the specific disclosed form, it should be understood to include all modifications, equivalents and substitutes included in the spirit and scope of the present invention.

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

어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. When a component is referred to as being “connected” or “connected” to another component, it is understood that the other component may be directly connected or connected to the other component, but other components may exist in between. it should be On the other hand, when it is mentioned that a certain element is "directly connected" or "directly connected" to another element, it should be understood that the other element does not exist in the middle.

본 출원에서 사용한 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 개시된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terms used in the present application are only used to describe specific embodiments, and are not intended to limit the present invention. The singular expression includes the plural expression unless the context clearly dictates otherwise. In this application, terms such as "comprise" or "have" are intended to designate that the disclosed feature, number, step, action, component, part, or combination thereof exists, but includes one or more other features or numbers, It should be understood that the possibility of the presence or addition of steps, operations, components, parts or combinations thereof is not precluded in advance.

다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.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 should be interpreted as having a meaning consistent with the meaning in the context of the related art, and should not be interpreted in an ideal or excessively formal meaning unless explicitly defined in the present application. does not

한편, 어떤 실시 예가 달리 구현 가능한 경우에 특정 블록 내에 명기된 기능 또는 동작이 순서도에 명기된 순서와 다르게 일어날 수도 있다. 예를 들어, 연속하는 두 블록이 실제로는 실질적으로 동시에 수행될 수도 있고, 관련된 기능 또는 동작에 따라서는 상기 블록들이 거꾸로 수행될 수도 있다.On the other hand, when an embodiment can be implemented differently, functions or operations specified in a specific block may occur differently from the order specified in the flowchart. For example, two consecutive blocks may be performed substantially simultaneously, or the blocks may be performed in reverse according to a related function or operation.

이하, 본 발명의 바람직한 실시 예에 따른 항공기용 디스플레이 시스템 및 이의 문자열 표시 방법에 대하여 첨부된 도면들을 참조하여 상세히 설명한다. 우선 각 도면의 구성 요소들에 참조 부호를 부가함에 있어서, 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한 동일한 부호를 가지도록 하고 있음에 유의해야 한다. 또한, 본 발명을 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략한다. 또한, 이하에서 본 발명의 바람직한 실시 예를 설명할 것이나, 본 발명의 기술적 사상은 이에 한정하거나 제한되지 않고 당업자에 의해 변형되어 다양하게 실시될 수 있음은 물론이다.Hereinafter, a display system for an aircraft and a method for displaying a character string thereof according to a preferred embodiment of the present invention will be described in detail with reference to the accompanying drawings. First of all, it should be noted that in adding reference numerals to the components of each drawing, the same components are given the same reference numerals as possible even if they are indicated on different drawings. In addition, in describing the present invention, if it is determined that a detailed description of a related known configuration or function may obscure the gist of the present invention, the detailed description thereof will be omitted. In addition, preferred embodiments of the present invention will be described below, but the technical spirit of the present invention is not limited thereto or may be variously implemented by those skilled in the art without being limited thereto.

도 1은 본 발명의 실시 예에 따른 항공기용 디스플레이 시스템에 적용되는 ARICN 661 표준의 운용 개념도이다. 도 2는 본 발명의 실시 예에 따라 정의 시간 및 동작 시간에 이루어지는 동작을 개략적으로 나타낸 도면이다.1 is a conceptual diagram of the operation of the ARICN 661 standard applied to the display system for an aircraft according to an embodiment of the present invention. 2 is a diagram schematically illustrating an operation performed at a defined time and an operation time according to an embodiment of the present invention.

도 1 및 도 2를 참조하면, 사용자 운용 프로그램인 UA(User Application)와 그래픽 서비스 엔진인 항공기용 디스플레이 시스템(CDS: Cockpit Display System)(1)은 ARINC 661 통신 규약에 따라 통신을 수행한다.1 and 2 , a user operation program UA (User Application) and a graphic service engine, an aircraft display system (CDS: Cockpit Display System) 1, perform communication according to the ARINC 661 communication protocol.

CDS(1)의 GUI(Graphic User Interface) 화면은 ARICN 661 호환 그래픽 저작도구를 통해 저작되어 ARINC 661 사용자 정의 파일(Definition File, DF)로 저장된다. CDS(1)는 화면 구성 정보를 정의한 DF를 UA를 통해 다운로드 하거나, 직접 다운로드 하여 CDS(1) 내 커널 라이브러리(10)에 적재한 후 해석하여 위젯 라이브러리(20)를 통해 화면을 표시한다.The GUI (Graphic User Interface) screen of the CDS (1) is created through an ARICN 661 compatible graphic authoring tool and is saved as an ARINC 661 user definition file (Definition File, DF). The CDS(1) downloads the DF defining the screen configuration information through the UA, or directly downloads it and loads it in the kernel library 10 in the CDS(1), interprets it, and displays the screen through the widget library 20.

사용자 운용 프로그램(UA)은 저작된 그래픽의 각 심볼의 움직임을 제어하고 운용 개념에 따라 사용자와의 상호 작용을 할 수 있게 한다. 사용자 운용 프로그램(UA)과 항공용 디스플레이 시스템(CDS)은 ARINC 661 표준 프토토콜에 따라 통신 라이브러리(30)를 통하여 통신하고 화면을 구성한다.The user operation program (UA) controls the movement of each symbol of the authored graphic and enables interaction with the user according to the operation concept. The user operation program (UA) and the aviation display system (CDS) communicate through the communication library 30 according to the ARINC 661 standard protocol and configure the screen.

본 발명은 항공기용 디스플레이 시스템(CDS)(1)의 커널 라이브러리(10)와 위젯 라이브러리(20)에 관련되며, 커널 라이브러리(10)는 정의 시간(Definition Time, DT)에 그래픽 구성을 실제 인스턴스화 하는 작업을 수행한 후 메모리에 적재한다. 위젯 라이브러리(20)는 동작 시간(Run Time, RT) 동안 UA를 통한 제어를 받으며, 메모리에 적재된 그래픽 구성에 기초하여 화면에 GUI를 표시한다.The present invention relates to a kernel library 10 and a widget library 20 of an aircraft display system (CDS) 1, wherein the kernel library 10 actually instantiates a graphic configuration at a Definition Time (DT). After performing the operation, it is loaded into memory. The widget library 20 is controlled through the UA during the Run Time (RT), and displays the GUI on the screen based on the graphic configuration loaded in the memory.

여기서, 정의 시간(DT)은 시스템이 부팅되어 메모리를 할당받고 초기화하는 작업 시간을 의미하고, 동작 시간(DT)은 운용 중 화면에 GUI가 표시되는 시간을 의미한다. 동작 시간(DT) 중에는 동적인 메모리 할당이나 위젯 추가 생성 등이 이루어지지 않는다.Here, the definition time DT means a working time for booting the system, allocating memory and initializing the system, and the operation time DT means a time during which the GUI is displayed on the screen during operation. During the operation time DT, no dynamic memory allocation or creation of additional widgets is performed.

도 2에 도시된 바와 같이, 본 발명은 최초 커널 라이브러리(10)와 위젯 라이브러리(20)에 의해 라벨이 구성될 때, 추가적인 문자열을 위한 메모리를 할당하여, 할당된 메모리에 추가된 문자열을 하나의 이미지로 구성하고, 동작 시간(RT) 중 해당 메모리의 이미지를 한번에 표시하여 메모리 접근 횟수와 렌더링 횟수를 줄일 수 있다.As shown in FIG. 2, the present invention allocates memory for an additional character string when the label is configured by the initial kernel library 10 and the widget library 20, and converts the character string added to the allocated memory into one. It is possible to reduce the number of memory accesses and rendering by composing images and displaying the images in the corresponding memory at once during the operation time (RT).

도 3은 본 발명의 실시예에 따른 항공기용 디스플레이 시스템의 커널 라이브러리의 구성을 도시한 도면이다.3 is a diagram illustrating a configuration of a kernel library of a display system for an aircraft according to an embodiment of the present invention.

도 3을 참조하면, 본 발명의 실시예에 따른 항공기용 디스플레이 시스템의 커널 라이브러리(300)는 구성 파일 로더(Config File Loader)(310), 폰트 데이터 파서(Font Data Parser)(330), 폰트 이미지 생성기(Font Image Generator)(350)로 구성될 수 있으며, 커널 라이브러리(300)의 구성이 이에 한정되는 것은 아니다.3, the kernel library 300 of the display system for an aircraft according to an embodiment of the present invention is a configuration file loader (Config File Loader) 310, a font data parser (Font Data Parser) 330, a font image The generator (Font Image Generator) 350 may be configured, and the configuration of the kernel library 300 is not limited thereto.

구성 파일 로더(Config File Loader)(310)는 항공기용 디스플레이 시스템의 환경 설정 파일 내에 존재하는 폰트 데이터 라이브러리에서 폰트 데이터를 읽어올 수 있다.The configuration file loader (Config File Loader) 310 may read font data from a font data library existing in an environment setting file of the aircraft display system.

폰트 데이터 파서(Font Data Parser)(330)는 구성 파일 로더(310)가 읽어들인 폰트 데이터를 해석하는 동작을 수행하며, 폰트 데이터 파서(330)는 비트맵 폰트 파일을 글자의 아스키 코드와 함께 내부 메모리에 저장할 수 있다.The font data parser 330 interprets the font data read by the configuration file loader 310, and the font data parser 330 internally stores the bitmap font file with the ASCII code of the character. can be stored in memory.

내부 메모리에 저장된 이미지는 메모리 구조에 따라 글자의 아스키 코드와 생성된 이미지 버퍼를 가지고 있을 수 있다.An image stored in the internal memory may have an ASCII code of characters and a created image buffer depending on the memory structure.

폰트 이미지 생성기(Font Image Generator)(350)는 내부 메모리에 저장된 정보를 바탕으로, OpenGL(오픈 그래픽 라이브러리)의 텍스쳐링 방식 적용을 위한 텍스쳐 핸들(texture handle)을 생성할 수 있다. 예를 들어, 폰트 이미지 생성기(350)는 내부 메모리에 저장된 아스키 코드와 이미지 버퍼를 바탕으로, 텍스쳐 핸들을 생성할 수 있다. 이하, OpenGL의 텍스쳐링 방식 적용을 위한 텍스쳐 핸들을 'OpenGL 텍스쳐 핸들'이라고 한다.The font image generator 350 may generate a texture handle for applying the texturing method of OpenGL (Open Graphics Library) based on information stored in the internal memory. For example, the font image generator 350 may generate a texture handle based on the ASCII code and image buffer stored in the internal memory. Hereinafter, a texture handle for applying the OpenGL texturing method is referred to as an 'OpenGL texture handle'.

도 4는 본 발명의 실시예에 따른 항공기용 디스플레이 시스템의 위젯 라이브러리의 구성을 도시한 도면이다.4 is a diagram illustrating a configuration of a widget library of an aircraft display system according to an embodiment of the present invention.

도 4를 참조하면, 본 발명의 실시예에 따른 항공기용 디스플레이 시스템의 위젯 라이브러리(400)는 라벨 위젯 생성기(Label Widget Creater)(410), 스트링 버퍼 생성기(String Buffer Generator)(430), 스트링 이미지 생성기(String Image Generator)(450), 라벨 위젯 렌더링 실행기(Label Widget Renderer)(470)로 구성될 수 있으며, 위젯 라이브러리(400)의 구성이 이에 한정되는 것은 아니다.4, the widget library 400 of the display system for an aircraft according to an embodiment of the present invention is a label widget generator (Label Widget Creator) 410, a string buffer generator (String Buffer Generator) 430, a string image It may be composed of a generator (String Image Generator) 450 and a label widget rendering executor (Label Widget Renderer) 470 , and the configuration of the widget library 400 is not limited thereto.

라벨 위젯 생성기(Label Widget Creater)(410)는 하기의 표 1과 같은 라벨 속성에 따라 정의시간에 라벨 위젯을 생성할 수 있다. 라벨 위젯 생성기(410)는 라벨 속성에 따라 라벨 위젯을 위한 메모리를 할당할 수 있으며, 단일 문자열 사용여부를 설정할 수 있다. 하기의 라벨 속성표는 일례로서, 라벨 속성은 다르게 정의될 수도 있다.The Label Widget Creator 410 may create a label widget at the definition time according to the label properties shown in Table 1 below. The label widget generator 410 may allocate memory for the label widget according to label properties, and set whether to use a single string. The following label attribute table is an example, and label attributes may be defined differently.

속성property 타입type 사이즈(Bit)Size (Bit) 설명Explanation WidgetTypeWidgetType ushortushort 1616 A661_LABELA661_LABEL WidgetIdentWidgetIdent ushortushort 1616 위젯 IDWidget ID ParentIdentParentIdent ushortushort 1616 부모 위젯 IDparent widget id VisibleVisible ucharuchar 88 가시성visibility AnonymousAnonymous ucharuchar 88 실행시간 동안 수정 가능한지에 대한 능력Ability to be modified during runtime StyleSetStyleSet ushortushort 1616 미리 정의된 그래픽 속성Predefined graphic properties PosXPosX longlong 3232 X 축에 대한 위치position about the x axis PosYPosY longlong 3232 Y 축에 대한 위치position on the y axis SizeXSizeX ulongulong 3232 가로 길이horizontal length SizeYSizeY ulongulong 3232 세로 길이vertical length FontFont ucharuchar 88 문자열을 표현할 폰트 세트A set of fonts for character strings ColorIndexColorIndex ucharuchar 88 색상color Alignmentalignment ucharuchar 88 문자열 정렬방식String sorting method LabelStringLabelString stringstring 8*문자열길이+Pad8*string length+Pad 문자열string

예를 들어, 라벨에 대한 속성으로는, 위젯 타입을 정의하는 WidgetType, 위젯 ID를 정의하는 WidgetType, 부모 위젯을 정의하는 ParentIdent, 가시성을 정의하는 Visible, 실행시간 동안 수정 가능한지에 대한 능력을 정의하는 Anonymous, 그래픽 속성을 정의하는 StyleSet, X축에 대한 위치를 정의하는 PosX, Y축에 대한 위치를 정의하는 PosY, 가로 길이에 대해 정의하는 SizeX, 세로 길이에 대해 정의하는 SizeY, 문자열을 표현할 폰트 세트를 정의하는 Font, 색상을 정의하는 ColorIndex, 문자열 정렬방식을 정의하는 Alignment, 문자열에 대해 정의하는 LabelString 등이 있을 수 있다.라벨 구성을 위해, 라벨 위젯 생성기(410)는 화면상의 위치를 PosX, PosY에서부터 SizeX, SizeY의 영역을 설정하고, 설정된 영역 안에 Alignment 방식에 따라 문자열을 배치한다. 이때, Anonymous값이 FALSE로 설정되어 있으면 사용자가 운용중에 문자열 값을 변화시킬 수 있다. 이 경우에는 동작 시간에 라벨 내 문자열이 갱신될 수 있으므로 사전 정의된 문자열 사용이 불가능하다. 따라서, 본 발명은 Anonymous 값이 TRUE인 경우, 즉 운용 중 절대로 글자가 바뀌지 않는 것을 전제로 한다.For example, the properties for the label include WidgetType, which defines the widget type, WidgetType, which defines the widget ID, ParentIdent, which defines the parent widget, Visible, which defines visibility, Anonymous, which defines the ability to be modified during runtime. , StyleSet to define graphic properties, PosX to define the position on the X axis, PosY to define the position to the Y axis, SizeX to define the horizontal length, SizeY to define the vertical length, and the font set to express the character string. There may be a Font to define, ColorIndex to define a color, Alignment to define a string alignment method, LabelString to define a string, etc. For the label configuration, the label widget generator 410 sets the position on the screen from PosX and PosY. Set the SizeX, SizeY area, and place the character string in the set area according to the Alignment method. At this time, if the Anonymous value is set to FALSE, the user can change the character string value during operation. In this case, it is impossible to use a predefined character string because the character string in the label may be updated at operation time. Therefore, the present invention is premised on the assumption that when the anonymous value is TRUE, that is, the characters are never changed during operation.

스트링 버퍼 생성기(String Buffer Generator)(430)는 개별 문자 버퍼를 하나의 문자열로 구성하기 위한 버퍼('문자열 버퍼')를 생성할 수 있다. 스트링 버퍼 생성기(430)는 문자열의 길이와 크기에 대한 메모리를 생성할 수 있다. 그리고, 스트링 버퍼 생성기(430)는 개별 문자 버퍼의 개별 문자를 문자열 버퍼로 복사할 수 있다. The string buffer generator 430 may generate a buffer ('string buffer') for composing individual character buffers into one string. The string buffer generator 430 may generate a memory for the length and size of the string. In addition, the string buffer generator 430 may copy the individual characters of the individual character buffer to the string buffer.

스트링 이미지 생성기(String Image Generator)(450)는 폰트 이미지 생성기(350)와 동일하게, 생성된 문자열 버퍼를 렌더링하기 위한 OpenGL 텍스쳐 핸들(texture handle)을 생성할 수 있다.The string image generator 450 may generate an OpenGL texture handle for rendering the generated string buffer in the same manner as the font image generator 350 .

라벨 위젯 렌더링 실행기(Label Widget Renderer)(470)는 동작 시간에 최종 라벨의 크기와 위치에 따라 문자열 이미지를 화면 상에 렌더링한다.The label widget rendering executor (Label Widget Renderer) 470 renders a string image on the screen according to the size and position of the final label at operation time.

라벨 위젯 렌더링 실행기(470)는 속성 정보가 개별 문자를 렌더링하는 값인 경우, 화면에 하나의 개별 문제를 렌더링하고, 개별 문자 전체에 대한 렌더링이 완료되었는지를 판단하고, 개별 문자 정체에 대한 렌더링이 완료되지 않았으면 다음 개별 문자를 화면에 렌더링할 수 있다.When the attribute information is a value for rendering individual characters, the label widget rendering executor 470 renders one individual problem on the screen, determines whether the rendering of the entire individual character is complete, and the rendering of the individual character identity is completed If not, the next individual character can be rendered to the screen.

라벨 위젯 렌더링 실행기(470)는 헤일로(이하, "HALO"라 칭함) 프로세싱에 대한 수행 여부를 정의하는 HALO 속성 값을 확인하여 HALO 속성 값이 True인지 False인지 판단하고, HALO 속성 값이 True인 것으로 판단하면, 문자열 버퍼의 문자열에 대해 HALO 프로세싱을 수행한 후, 텍스쳐 바인딩을 수행하고, 화면에 렌더링할 수 있다.The label widget rendering executor 470 determines whether the HALO attribute value is True or False by checking the HALO attribute value defining whether to perform halo (hereinafter referred to as "HALO") processing, and determines that the HALO attribute value is True. If it is determined, HALO processing is performed on the string in the string buffer, texture binding is performed, and it can be rendered on the screen.

라벨 위젯 렌더링 실행기(470)는 HALO 속성 값이 False인 것으로 판단하면, 문자열 버퍼의 문자열에 대해 텍스쳐 바인딩을 수행한 한 후 화면에 렌더링할 수 있다.If it is determined that the HALO attribute value is False, the label widget rendering executor 470 may perform texture binding on the string in the string buffer and then render it on the screen.

도 5는 본 발명의 실시예에 따른 항공기용 디스플레이 시스템의 라벨 위젯 생성 과정 및 렌더링 과정을 설명하기 위한 플로우챠트이다. 도 6은 도 5의 단계 S540에 대한 상세 동작을 나타낸 플로우챠트이다. 도 5 및 도 6의 단계별 동작은 항공기용 디스플레이 시스템의 위젯 라이브러리(400)에 의해 수행될 수 있다.5 is a flowchart for explaining a label widget creation process and a rendering process of the display system for an aircraft according to an embodiment of the present invention. 6 is a flowchart illustrating a detailed operation of step S540 of FIG. 5 . The step-by-step operations of FIGS. 5 and 6 may be performed by the widget library 400 of the display system for an aircraft.

도 5를 참조하면, 먼저, 위젯 라이브러리(400)는 메모리 할당(S501) 및 초기화(S502)를 수행할 수 있다(S500).Referring to FIG. 5 , first, the widget library 400 may perform memory allocation ( S501 ) and initialization ( S502 ) ( S500 ).

단계 S500에서, 메모리 할당(S501)은 메모리에 실제 라벨 내용을 만들기 위한 구조체 크기를 할당(allocation)하는 과정이고, 초기화(S502)는 정의 파일(Definition File)로부터 생성할 라벨 위젯의 속성에 따른 정의 내용에 대해 값을 설정하는 과정일 수 있다.In step S500, memory allocation (S501) is a process of allocating the size of a structure for creating actual label contents in memory, and initialization (S502) is a definition according to the properties of a label widget to be created from a definition file It may be the process of setting a value for the content.

이후, 위젯 라이브러리(400)는 문자열을 확인하는 과정을 수행할 수 있다(S510).Thereafter, the widget library 400 may perform a process of checking the character string (S510).

단계 S510에서, 위젯 라이브러리(400)는 실제 라벨에 맵핑할 글자들 및 문자열의 길이에 대해 확인할 수 있다.In step S510, the widget library 400 may check the length of characters and character strings to be mapped to the actual label.

이후, 위젯 라이브러리(400)는 Anonymous에 대한 속성 값을 확인하여 Anonymous의 속성 값이 True인지 False인지 판단할 수 있다(S520).Thereafter, the widget library 400 may determine whether the attribute value of Anonymous is True or False by checking the attribute value of Anonymous ( S520 ).

단계 S520에서, 위젯 라이브러리(400)는 Anonymous의 속성 값이 False인 것으로 판단하면, 개별 문자 전체를 화면에 렌더링한다(S530).In step S520, if the widget library 400 determines that the attribute value of Anonymous is False, it renders all individual characters on the screen (S530).

단계 S530에서, 위젯 라이브러리(400)는 화면에 하나의 개별 문자를 렌더링하고(S531), 개별 문자 전체에 대한 렌더링이 완료되었는지를 판단하고(S532), 개별 문자 전체에 대한 렌더링이 완료되지 않았으면(S532-No), 단계 S531에 따라 다음 개별 문자를 화면에 렌더링한다. 위젯 라이브러리(400)는 단계 S532에서 개별 문자 전체에 대한 렌더링이 완료된 것으로 판단되면(S532-Yes), 문자 렌더링 동작을 종료할 수 있다. 이에 따라, 개별 문자 전체는 순차적으로 화면에 표시될 수 있다.In step S530, the widget library 400 renders one individual character on the screen (S531), determines whether rendering of all individual characters is completed (S532), and if rendering of all individual characters is not completed (S532-No), the next individual character is rendered on the screen according to step S531. When it is determined that rendering of all individual characters is completed in step S532 ( S532-Yes), the widget library 400 may end the character rendering operation. Accordingly, all of the individual characters may be sequentially displayed on the screen.

단계 S520에서, 위젯 라이브러리(400)는 Anonymous의 속성 값이 True인 것으로 판단하면, 문자열을 화면에 렌더링하는 동작을 수행할 수 있다(S540).In step S520 , when it is determined that the value of the Anonymous attribute is True, the widget library 400 may perform an operation of rendering a string on the screen ( S540 ).

도 6을 참조하면, 단계 S540에서, 위젯 라이브러리(400)는 단일 문자열에 적용할 OpenGL 텍스쳐 이미지 핸들을 생성하고(S541), 정렬 속성 값에 따라 단일 문자열 위치를 계산하고(S542), 문자열의 텍스쳐링 위치를 계산할 수 있다(S543).6 , in step S540, the widget library 400 generates an OpenGL texture image handle to be applied to a single string (S541), calculates a single string position according to the alignment attribute value (S542), and texturing the string The position can be calculated (S543).

단계 S543 이후, 위젯 라이브러리(400)는 라벨에 맵핑하기 위한 문자열 버퍼를 생성하고(S544), 생성된 문자열 버퍼에 단일 문자열을 복사할 수 있다(S545). 단계 S545에서, 위젯 라이브러리(400)는 정렬 속성 값 및 텍스쳐링 위치를 고려하여 단일 문자열을 문자열 버퍼에 복사할 수 있다.After step S543, the widget library 400 may create a string buffer for mapping to the label (S544), and copy a single string to the generated string buffer (S545). In step S545, the widget library 400 may copy the single string to the string buffer in consideration of the alignment attribute value and the texturing position.

단계 S545 이후, 위젯 라이브러리(400)는 HALO 속성 값을 확인하여 HALO 속성 값이 True인지 False인지 판단하고(S546), HALO 속성 값이 Treu인 것으로 판단하면, 문자열 버퍼에 대해 HALO 프로세싱을 수행한 후(S547), 텍스쳐 바인딩을 수행한다(S548).After step S545, the widget library 400 checks the HALO attribute value to determine whether the HALO attribute value is True or False (S546), and if it is determined that the HALO attribute value is Treu, HALO processing is performed on the string buffer. (S547), texture binding is performed (S548).

단계 S546에서, 위젯 라이브러리(400)는 HALO 속성 값이 False인 것으로 판단하면, 단계 S548에 따라 텍스쳐 바인딩을 수행한다.In step S546, if the widget library 400 determines that the HALO attribute value is False, texture binding is performed according to step S548.

단계 S548 이후, 위젯 라이브러리(400)는 단일 문자열 이미지를 화면에 렌더링하고(S549), 문자 렌더링 동작을 종료할 수 있다.After step S548, the widget library 400 may render a single string image on the screen (S549), and end the character rendering operation.

위젯 라이브러리(400)는 단계 S530에 따른 개별 문자 렌더링 동작 및 단계 S549에 따른 단일 문자열 이미지 렌더링 동작을 동작 시간에 수행할 수 있다.The widget library 400 may perform an individual character rendering operation according to step S530 and a single string image rendering operation according to operation S549 at an operating time.

이상에서와 같이, 본 발명의 실시 예에 따른 항공기용 디스플레이 시스템 및 이의 문자열 표시 방법을 실시 예에 따라 설명하였지만, 본 발명의 범위는 특정 실시 예에 한정되는 것은 아니며, 본 발명과 관련하여 통상의 지식을 가진 자에게 자명한 범위 내에서 여러 가지의 대안, 수정 및 변경하여 실시할 수 있다.As described above, the display system for an aircraft and the string display method thereof according to the embodiment of the present invention have been described according to the embodiment, but the scope of the present invention is not limited to the specific embodiment, and in relation to the present invention, Various alternatives, modifications, and changes can be implemented within the range that is obvious to those with knowledge.

따라서, 본 발명에 기재된 실시 예 및 첨부된 도면들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시 예 및 첨부된 도면에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리 범위에 포함되는 것으로 해석되어야 할 것이다.Accordingly, the embodiments and the accompanying drawings described in the present invention are for explanation rather than limiting the technical spirit of the present invention, and the scope of the technical spirit of the present invention is not limited by these embodiments and the accompanying drawings. . The protection scope of the present invention should be construed by the claims, and all technical ideas within the scope equivalent thereto should be construed as being included in the scope of the present invention.

300 : 커널 라이브러리
310 : 구성 파일 로더
330 : 폰트 데이터 파서
350 : 폰트 이미지 생성기
400 : 위젯 라이브러리
410 : 라벨 위젯 생성기
430 : 스트링 버퍼 생성기
450 : 스트링 이미지 생성기
470 : 라벨 위젯 렌더링 실행기
300 : kernel library
310 : Configuration File Loader
330: font data parser
350: Font Image Generator
400 : widget library
410: Label Widget Generator
430: String Buffer Generator
450 : string image generator
470 : Label widget rendering launcher

Claims (15)

항공기용 디스플레이 시스템에 있어서,
화면에 표시하기 위해 입력되는 문자에 대한 아스키 코드를 비트맵 폰트와 함께 내부 메모리에 저장하는 커널 라이브러리; 및
상기 커널 라이브러리에 저장된 문자를 화면에 표시하기 위한 속성 정보에 따라, 개별 문자를 화면에 렌더링하거나, 개별 문자를 문자열 버퍼에 저장하여 문자열을 구성하고, 상기 문자열 버퍼에 저장된 문자열을 한번에 화면에 렌더링하는 위젯 라이브러리를 포함하고,
상기 커널 라이브러리는,
항공기용 디스플레이 시스템의 환경 설정 파일 내에 존재하는 폰트 데이터 라이브러리에서 폰트 데이터를 읽어오는 구성 파일 로더;
상기 구성 파일 로더가 읽어온 폰트 데이터를 해석하여 내부 메모리에 저장하는 폰트 데이터 파서; 및
상기 내부 메모리에 저장된 정보를 바탕으로, 오픈 그래픽 라이브러리(OpenGL) 텍스쳐 핸들을 생성하는 폰트 이미지 생성기를 포함하는 것인 항공기용 디스플레이 시스템.
In the aircraft display system,
a kernel library that stores ASCII codes for characters input to be displayed on the screen together with bitmap fonts in internal memory; and
According to the attribute information for displaying the characters stored in the kernel library on the screen, individual characters are rendered on the screen, or individual characters are stored in a string buffer to compose a string, and the string stored in the string buffer is rendered to the screen at once. contains a widget library,
The kernel library is
a configuration file loader that reads font data from a font data library existing in an environment setting file of an aircraft display system;
a font data parser that interprets the font data read by the configuration file loader and stores it in an internal memory; and
and a font image generator for generating an open graphic library (OpenGL) texture handle based on the information stored in the internal memory.
삭제delete 제 1 항에 있어서,
상기 위젯 라이브러리는,
라벨 속성에 따라 라벨 위젯을 생성하는 라벨 위젯 생성기;
개별 문자를 하나의 문자열로 구성하기 위한 문자열 버퍼를 생성하고, 상기 문자열 버퍼로 상기 개별 문자를 복사하는 스트링 버퍼 생성기;
상기 문자열 버퍼의 문자열을 렌더링하기 위한 오픈 그래픽 라이브러(OpenGL) 텍스쳐 핸들을 생성하는 스트링 이미지 생성기; 및
라벨의 크기와 위치에 따라 상기 문자열 버퍼의 문자열을 화면에 렌더링하는 라벨 위젯 렌더링 실행기를 포함하는 것인 항공기용 디스플레이 시스템.
The method of claim 1,
The widget library,
a label widget generator that creates a label widget according to label properties;
a string buffer generator that creates a string buffer for composing individual characters into one character string and copies the individual characters into the string buffer;
a string image generator for generating an open graphics library (OpenGL) texture handle for rendering the string in the string buffer; and
and a label widget rendering executor for rendering the string of the string buffer on the screen according to the size and position of the label.
제 3 항에 있어서,
상기 라벨 위젯 생성기는 상기 라벨 속성에 따라 상기 라벨 위젯을 위한 메모리를 할당하고, 단일 문자열 사용여부를 설정하는 것인 항공기용 디스플레이 시스템.
4. The method of claim 3,
The label widget generator allocates memory for the label widget according to the label attribute, and sets whether to use a single string.
제 3 항에 있어서,
상기 스트링 버퍼 생성기는 문자열의 길이와 크기에 대한 상기 문자열 버퍼를 생성하는 것인 항공기용 디스플레이 시스템.
4. The method of claim 3,
and the string buffer generator generates the string buffer for the length and size of a string.
제 3 항에 있어서,
상기 라벨 위젯 렌더링 실행기는 상기 속성 정보가 개별 문자를 렌더링하는 값인 경우, 화면에 하나의 개별 문제를 렌더링하고, 개별 문자 전체에 대한 렌더링이 완료되었는지를 판단하고, 개별 문자 전체에 대한 렌더링이 완료되지 않았으면 다음 개별 문자를 화면에 렌더링하는 것인 항공기용 디스플레이 시스템.
4. The method of claim 3,
When the attribute information is a value for rendering individual characters, the label widget rendering executor renders one individual problem on the screen, determines whether rendering of all individual characters is complete, and renders all individual characters. An aircraft display system that would otherwise render the next individual character to the screen.
제 3 항에 있어서,
상기 라벨 위젯 렌더링 실행기는 속성 정보 중 헤일로(HALO) 속성 값을 확인하여 상기 헤일로(HALO) 속성 값이 True인지 False인지 판단하고, 상기 헤일로(HALO) 속성 값이 True인 것으로 판단하면, 상기 문자열 버퍼의 문자열에 대해 헤일로(HALO) 프로세싱을 수행한 후, 텍스쳐 바인딩을 수행하고, 화면에 렌더링하는 것인 항공기용 디스플레이 시스템.
4. The method of claim 3,
The label widget rendering executor determines whether the HALO attribute value is True or False by checking the HALO attribute value among the attribute information, and when it is determined that the HALO attribute value is True, the string buffer After performing HALO processing on the string of , texture binding is performed, and the display system for an aircraft is to render on the screen.
제 7 항에 있어서,
상기 라벨 위젯 렌더링 실행기는 상기 헤일로(HALO) 속성 값이 False인 것으로 판단하면, 상기 문자열 버퍼의 문자열에 대해 텍스쳐 바인딩을 수행한 한 후 화면에 렌더링하는 것인 항공기용 디스플레이 시스템.
8. The method of claim 7,
When the label widget rendering executor determines that the HALO attribute value is False, the display system for an aircraft performs texture binding on the string in the string buffer and then renders it on the screen.
항공기용 디스플레이 시스템의 문자열 표시 방법에 있어서,
화면에 표시하기 위해 입력되는 문자에 대한 아스키 코드를 비트맵 폰트와 함께 내부 메모리에 저장하는 단계; 및
상기 내부 메모리에 저장된 문자를 화면에 표시하기 위한 속성 정보에 따라, 개별 문자를 화면에 렌더링하거나, 개별 문자를 문자열 버퍼에 저장하여 문자열을 구성하고, 상기 문자열 버퍼에 저장된 문자열을 한번에 화면에 렌더링하는 단계를 포함하고,
상기 저장하는 단계는,
항공기용 디스플레이 시스템의 환경 설정 파일 내에 존재하는 폰트 데이터 라이브러리에서 폰트 데이터를 읽어오는 단계;
읽어온 폰트 데이터를 해석하여 내부 메모리에 저장하는 단계; 및
상기 내부 메모리에 저장된 정보를 바탕으로, 오픈 그래픽 라이브러리(OpenGL) 텍스쳐 핸들을 생성하는 단계를 포함하는 것인 항공기용 디스플레이 시스템의 문자열 표시 방법.
In the character string display method of the aircraft display system,
storing an ASCII code for a character input to be displayed on a screen together with a bitmap font in an internal memory; and
According to the attribute information for displaying the characters stored in the internal memory on the screen, individual characters are rendered on the screen, or individual characters are stored in a string buffer to compose a character string, and the character string stored in the character string buffer is rendered on the screen at once. comprising steps,
The saving step is
reading font data from a font data library existing in an environment setting file of an aircraft display system;
interpreting the read font data and storing it in an internal memory; and
and generating an open graphic library (OpenGL) texture handle based on the information stored in the internal memory.
삭제delete 제 9 항에 있어서,
상기 렌더링하는 단계는 문자열의 길이와 크기에 대한 상기 문자열 버퍼를 생성하는 것을 포함하는 것인 항공기용 디스플레이 시스템의 문자열 표시 방법.
10. The method of claim 9,
The method of displaying a character string in a display system for an aircraft, wherein the rendering includes generating the character string buffer for the length and size of the character string.
제 9 항에 있어서,
상기 렌더링하는 단계는 속성 정보 중 어나니머스(Anonymous)에 대한 속성 값을 확인하여 상기 어나니머스(Anonymous)에 대한 속성 값이 True인지 False인지 판단하고, 상기 어나니머스(Anonymous)의 속성 값이 False인 것으로 판단하면, 개별 문자 전체를 순차적으로 화면에 표시하는 것을 포함하는 것인 항공기용 디스플레이 시스템의 문자열 표시 방법.
10. The method of claim 9,
In the rendering step, the attribute value of Anonymous is checked in the attribute information, it is determined whether the attribute value of the Anonymous is True or False, and the attribute value of the Anonymous is true. If it is determined that this is False, the character string display method of the aircraft display system comprising sequentially displaying all individual characters on the screen.
제 9 항에 있어서,
상기 렌더링하는 단계는 속성 정보 중 어나니머스(Anonymous)에 대한 속성 값을 확인하여 상기 어나니머스(Anonymous)에 대한 속성 값이 True인지 False인지 판단하고, 상기 어나니머스(Anonymous)의 속성 값이 True인 것으로 판단하면, 문자열을 한번에 화면에 렌더링하는 것을 포함하는 것인 항공기용 디스플레이 시스템의 문자열 표시 방법.
10. The method of claim 9,
In the rendering step, the attribute value of Anonymous is checked in the attribute information, it is determined whether the attribute value of the Anonymous is True or False, and the attribute value of the Anonymous is true. If it is determined that this is True, the character string display method of the aircraft display system comprising rendering the character string on the screen at once.
제 13 항에 있어서,
상기 렌더링하는 단계는, 속정 정보 중 헤일로(HALO) 속성 값을 확인하여 상기 헤일로(HALO) 속성 값이 True인지 False인지 판단하고, 상기 헤일로(HALO) 속성 값이 True인 것으로 판단하면, 문자열에 대해 헤일로(HALO) 프로세싱을 수행한 후, 텍스쳐 바인딩을 수행하고, 화면에 렌더링하는 것을 포함하는 것인 항공기용 디스플레이 시스템의 문자열 표시 방법.
14. The method of claim 13,
The rendering includes checking the HALO attribute value in the attribute information to determine whether the HALO attribute value is True or False, and determining that the HALO attribute value is True. After performing HALO processing, performing texture binding, and rendering on a screen.
제 14 항에 있어서,
상기 렌더링하는 단계는, 상기 헤일로(HALO) 속성 값이 False인 것으로 판단하면, 상기 문자열에 대해 텍스쳐 바인딩을 수행한 한 후 화면에 렌더링하는 것을 포함하는 것인 항공기용 디스플레이 시스템의 문자열 표시 방법.
15. The method of claim 14,
The rendering includes, if it is determined that the HALO attribute value is False, performing texture binding on the character string and then rendering the character string on the screen.
KR1020200180408A 2020-12-22 2020-12-22 Display system for aircraft and method for displaying character string thereof the same KR102263538B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200180408A KR102263538B1 (en) 2020-12-22 2020-12-22 Display system for aircraft and method for displaying character string thereof the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200180408A KR102263538B1 (en) 2020-12-22 2020-12-22 Display system for aircraft and method for displaying character string thereof the same

Publications (1)

Publication Number Publication Date
KR102263538B1 true KR102263538B1 (en) 2021-06-10

Family

ID=76378247

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200180408A KR102263538B1 (en) 2020-12-22 2020-12-22 Display system for aircraft and method for displaying character string thereof the same

Country Status (1)

Country Link
KR (1) KR102263538B1 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101297734B1 (en) * 2005-04-04 2013-08-20 삼성디스플레이 주식회사 Pre-subpixel rendered image processing in display systems
KR20180115050A (en) * 2017-04-12 2018-10-22 삼성전자주식회사 Device for controlling unmanned aerial vehicle, unmanned aerial vehicle controlled by the device and system
KR102140504B1 (en) * 2020-01-16 2020-08-03 (주)그래피카 Digital Instrument Display Method of Vehicle and Apparatus thereof

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101297734B1 (en) * 2005-04-04 2013-08-20 삼성디스플레이 주식회사 Pre-subpixel rendered image processing in display systems
KR20180115050A (en) * 2017-04-12 2018-10-22 삼성전자주식회사 Device for controlling unmanned aerial vehicle, unmanned aerial vehicle controlled by the device and system
KR102140504B1 (en) * 2020-01-16 2020-08-03 (주)그래피카 Digital Instrument Display Method of Vehicle and Apparatus thereof

Similar Documents

Publication Publication Date Title
US6573904B1 (en) Method and apparatus in a data processing system for updating color buffer window identifies when an overlay window identifier is removed
US11232535B2 (en) Systems and methods for using EGL with an OpenGL API and a Vulkan graphics driver
US6104359A (en) Allocating display information
JP3286331B2 (en) Block texture complex clip mask processor
US8786628B2 (en) Rendering electronic chart objects
GB2215168A (en) Windows with restricted colour range have priority defined by colour codes
US6005588A (en) System and method for rapidly displaying text in a graphical user interface
JPH0793568A (en) System and method for immediate execution of graphics clipping at every window
US10930040B2 (en) Graphic object modifications
EP1929446A1 (en) Sample-level screen-door transparency using programmable transparency sample masks
US10311060B2 (en) Glyph management in texture atlases
KR102263538B1 (en) Display system for aircraft and method for displaying character string thereof the same
US7567253B2 (en) Mirror driver notification of device independent bitmap drawing calls
US6038575A (en) Method of sharing glyphs between computers having graphical user interfaces
US20020146181A1 (en) System, method and computer program product for a multi-lingual text engine
US5831622A (en) Method and apparatus for intersecting color regions of multiple shapes for graphics systems
US20070006199A1 (en) Methods and apparatus for communicating between multiple levels of software components
US20220366621A1 (en) Systems for Generating Anti-Aliased Vector Objects
US6710777B1 (en) Method and apparatus in a data processing system for installing appropriate WID values for a transparent region
US7598954B2 (en) Adapting and rendering graphic effects
US9069905B2 (en) Tool-based testing for composited systems
JPS60130795A (en) Data display
US5727190A (en) Method and system for the acceleration of graphics images in a multiprocessor or preemptive processing computer system
CN113641357A (en) Performance optimization method for avionics cockpit display software
US20120306900A1 (en) Hardware Accelerated Caret Rendering

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant