그래픽 편집기에서는 객체 편집 시 사용되는 Common Edit Command를
제공하며, 종류는 Copy, Cut, Paste, Delete,
Select를 제공한다.
Copy는 Paste를
하기 전에 선택한 객체를 메모리에 복사하여 놓는다. 키보드 단축키로는 “Ctrl + C”를 눌러 할 수 있고 편집기 화면에서는 아래 그림의 3번
항목을 클릭하여 실행할 수 있다. 객체의 선택은 선택하고자 하는 객체를 영역을 드래그 함으로써 영역
내에 있는 모든 객체를 선택하는 방법과 원하는 객체를 Shift+클릭을 함으로써 추가 할 수 있다.
Cut은 Paste를 하기
전에 선택한 객체를 메모리에 복사하여 놓고 원래의 선택된 객체 또는 객체들을 삭제한다. 키보드 단축키는
“Ctrl + X”를 눌러 할 수 있으며, 편집기 화면에서는
아래 그림의 1번 항목을 클릭하여 실행할 수 있다. 객체의
선택은 선택하고자 하는 객체를 영역을 드래그 함으로써 영역 내에 있는 모든 객체를 선택하는 방법과 원하는 객체를
Shift+클릭을 함으로써 추가 할 수 있다.
Paste는 Copy 또는 Cut를 사용하여 메모리에 저장된 객체를 새로운 객체로 생성하는 것이다. 키보드
단축키는 “Ctrl + V”를 눌러 할 수 있고 편집기 화면에서는 아래 그림 1번 항목을 클릭하여 실행할 수 있다.
Delete는 선택한 객체를 삭제하며 키보드 단축키는 “Delete” 버튼을 눌러 실행할 수 있고, 편집기 화면에서는 4번 항목으로 실행할 수 있다.
Select는 객체를 선택할 때 사용되며 편집기에서는 단일 선택, 전체 선택 및 선택해제 기능을 지원한다. 전체선택은 Picture에 있는 모든 객체를 선택하며, 키보드 단축키는 “Ctrl + A”를 눌러 할 수 있다. 선택해제는 Picture에서 객체가 없는 빈 공간을 클릭함으로써 해제 할 수 있다.
그래픽 편집기는 그래픽에 대한 속성들과 사용자 정의 전역 및 지역 변수 들을 가지고 있으며 현재의 값을 Lua Script에 전달하고 Lua Script에서 함수의 실행에 의해 바뀐 값을 그래픽 편집기의 그래픽 속성이나 전역 또는 지역변수에 전달하여 값을 변경시킨다. 모든 값을 변경시키는 행위는 프로그램이나 사용자의 마우스 이벤트 등에 의해 발생되며 현재 값의 전달 및 변경된 값의 반환이 함수의 실행 전과 실행 후에 각각 발생한다. 아래 그림은 그래픽 편집기에서 객체의 사용자 정의 함수인 GetColor()에 대한 예시를 나타낸 것이다.
아래 그림은 그래픽 편집기에서 객체의 사용자 정의 함수인 onmousedown()에 대한 예시를 나타낸 것이다.
Lua Script 내부에서만 실행되는 변수 및 함수는 별도로 User Interface가 지원되며Lua Script내부에서는 이벤트 또는 사용자 함수에 의해서 사용 가능하다.
그래픽 편집기에서 Lua Script를 사용하는 방법은 아래와 같다.
1.Lua Script 편집 창을 연다.
2.Lua Script 편집 다이얼로크 창에서 편집된 내용을 Lua Script에 등록한다.
3.Lua Script에 등록된 변수의 값을 확인하거나 새로운 값을 할당하는 스크립트를 작성한다.
4.3번 항목에서 작성된 스크립트를 Lua Script에서 실행한다.
5.COLOR 테이블을 Lua Script에 작성하는 스크립트.
6.COLOR 테이블에서 Red 필드.
7.4번 항목에서 실행한 결과 값의 표현.
그래픽 편집기에서는 전역변수 및 각 객체의 속성 등 다양한 구조적 변수를 가지고 있으며 이러한 구조적 변수를 Lua State에 그대로 가지지 않는다. 모든 값의 변경은 Lua Script에 등록된 함수의 실행에 의해 이루어 지며, 사용되는 변수와 함수 스크립트는 Lua Script에 테이블을 생성하여 변수 및 함수로 등록한다. 이벤트 및 프로그램에 의해 실행되는 함수는 각 함수에 해당하는 Lua Script 테이블과 1:1 대응 관계에 있으며 변수의 인터페이스나 반환 값이 없는 경우 그래픽 편집기 함수는 Lua State에 등록되지 않는다. 아래 그림은 그래픽 편집기의 데이터 구조를 나타낸 것이다.
본 소프트웨어는 객체 지향형 그래픽 편집 프로그램으로 사용자 정의 라이브러리를 생성하고, 생성된
라이브러리를 활용하여 또다른 라이브러리를 생성할 수 있는 기능을 제공합니다. HMI(Human Machine Interface) 라이브러리를 멤버변수와 멤버함수로 구현합니다. Logic 라이브러리를 개발하여 연결선을 이용한 Flowbase Programming이 가능한 프로그램입니다.
본 프로그램은 그래픽 컴포넌트, 그래픽 편집, 로직 처리를 하나의 솔루션으로 적용할 수 있습니다. enuSpace 파일 포맷은 SVG(Scalable Vector Graphics)로 구성되었습니다.
스케일러블 벡터 그래픽스(Scalable Vector Graphics, SVG)는 2차원 벡터 그래픽을 표현하기 위한 XML 기반의 파일 형식으로, 1999년 W3C(World Wide Web Consortium)의 주도하에 개발된 오픈 표준의 벡터 그래픽 파일 형식이다. SVG 형식의 이미지와 그 작동은 XML 텍스트 파일들로 정의 됩니다.
ALL IN ONE Graphics Component (그래픽 컴포넌트 하나의 솔루션으로 완벽 해결)
본 소프트웨어의 SDK는 강력한 그래픽 컴포넌트를 제공합니다. 사용자 응용 프로그램 개발에 SDK 라이브러리와 해더파일을 포함하여 개발자의 응용 프로그램을 손쉽게 제작할 수 있습니다. 약 300 여종의 API를 제공하며, 기본 API만의 활용만으로 나만의수려한 응용 프로그램제작이 가능하다. 그래픽 및 편집기 제작용 응용프로그램 제작에 매우 효율적입니다.
<작업 동영상>
ALL IN ONE Graphics Editor (강력한 편집기)
본 소프트웨어는 라이브러리 제작 화면 구성을 위한 편집기를 제공합니다. 라이브러리는 HMI와 Logic 심볼로 구성됩니다. HMI는 동적 현시를 위한 목적으로 제작하여 활용할 수 있으며, 제작시 스크립트 언어(Lua)를 기반으로 쉽고 빠르게 제작할 수 있습니다.
루아(Lua) 프로그래밍 언어는 가벼운 명령형/절차적 언어로, 확장 언어로 쓰일 수 있는 스크립팅 언어를 주 목적으로 설계되었다. 루아는 "달"을 의미하는 포르투갈어 단어입니다.
제작된 라이브러리는 실시간으로 화면 구성에 적용할 수 있습니다. 또한, 기 제작된 라이브러리 파일은 프로젝트 워크스페이스를 통하여 포함하여 재사용할 수 있습니다.
강력한 Zoom 스케일 기능, 하나의 페이지에 GUI 및 다이어그램을 확대 축소 기능을 통하여 구성할 수 있습니다.
ALL IN ONE Logic Simulation
본 소프트웨어는 스크립트 기반의 Logic 시뮬레이션이 가능합니다. 사용자가 정의한 Logic 라이브러리를 화면상에 Drag & Drop기능으로 로직 객체를 생성하며, 생성된 객체간의 연결선 연결만으로 시뮬레이션을 시간으로 확인 할 수 있습니다. 또한, 시뮬레이션 진행중에 편집이 가능하며, 실시간 처리 결과를 확인 할 수 있습니다.
분산 모델 시험 장비에 최적의 솔루션을 제공합니다. 손쉽게 각 개별 서버를 이용하여 분산 시뮬레이션 환경을 제공합니다.