Giter Site home page Giter Site logo

pnid_viewer's Introduction

PNID_Viewer

사용법

  • Image, Xml 파일 불러오기

    • 열기 > Image/Xml > 파일 선택, Image파일은 1개만, Xml파일은 여러개 불러올 수 있다.
  • Xml 파일 내보내기

    • ListView에서 원하는 파일 우클릭, '내보내기' 클릭
  • Box 추가

    • ctrl + 마우스 좌클릭으로 시작점 지정 후 드래그, 다시 ctrl + 마우스 좌클릭으로 추가 종료
    • 드래그 시 Ctrl를 누르지 않으면 좌클릭으로 패닝도 가능
    • ListView에서 보기를 누른, 즉 Datagrid에 띄워진 xml파일에 추가됨
    • 추가 후name을 입력하지 않으면 파일을 내보낸 후, Xml안에서 '_'로 표시됨
  • Xml을 Data Grid에 보이기

    • ListView에서 원하는 파일 우클릭, '보기' 클릭
  • 줌/패닝

    • 마우스 휠로 줌, 좌클릭으로 패닝 가능
    • 마우스 우클릭시 줌/패닝 리셋

추가해야 할 것

  • Datagrid에서 행 선택 후 Delete key 누르면 행이 지워지긴 하지만 xml에서는 지워지지 않음
  • Datagrid에 띄워진 xml파일이 무슨 색의 Box로 표현되고 있는지 보여주는 기능 필요
  • Box클릭시 또는 Datagrid의 값 클릭시 해당 값을 가진 Datagrid의 행으로, 또는 Box로 패닝하는 기능 필요

pnid_viewer's People

Contributors

yujeong000 avatar namaek2 avatar diskhkme avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar

Forkers

namaek2 diskhkme

pnid_viewer's Issues

221021 이슈들

  1. 한 번 선택된 박스는 다른 박스가 선택되기 전까지 계속 Blue로 표시됨

    • Xml을 하나 선택함
    • Datagrid에서 값을 선택함
    • Xml을 체크 해제함
    • 선택했던 Datagrid의 값을 다시 선택함
    • Xml을 체크함
    • 위의 과정 시행시 모든 박스가 Blue로 바뀜
  2. Delete로 Datagrid의 행을 지우면 지운 행의 다음 행의 좌표로 화면이 이동함

회전된 박스 수정 기능 추가

개요

  • 기존 박스는 축에 평행하게 그려짐 [그림1]
  • 이는 기울어진 심볼을 정확하게 감싸지 않음
  • 정확하게 심볼(또는 텍스트)에 맞는 박스를 그려야 함 [그림2]
    image

요구사항

  1. 변경된 포맷 (x1, y1, x2, y2, x3, y3, x4, y4) XML을 읽고,
  2. 박스의 형태를 유지한 상태로 (직사각형),
  3. 회전된 박스의 점 4개 좌표를 XML에 저장

요구사항 1 추가 설명

  • 기존 XML 포맷 : (x_min, y_min, x_max, y_max)
  • 수정될 포맷 : (x1, y1, x2, y2, x3, y3, x4, y4)

요구사항 2 추가 설명

  • 기존 박스처럼 네 각이 직각인 직사각형의 형태를 유지한 상태로 회전되어야 함
    image

제안 방식

  1. 파워포인트 방식

    • 파워포인트에서 박스를 그리고 회전하는 것과 동일한 UI로 제작
    • 기존 방식대로 박스를 그리고 회전 버튼을 드래그 하여 회전, 박스를 드래그 하면 이동
  2. 제안 방식

    1. Ctrl+좌클릭으로 시작점을 정함
    2. 마우스를 따라서 생성될 선분이 보임
    3. Ctrl+좌클릭으로 선분의 끝점을 정함
      image
    4. 마우스를 따라 그려질 박스가 보임. 이 때, 그려져 있던 선분과 수직인 방향으로만 박스가 그려짐
      (첫 선분의 기울기를 구하고, 그에 수직인 방향으로의 마우스 움직임만 계산하여 박스 보여줌)
      image
    5. Ctrl+좌클릭으로 최종 박스를 결정하고, 그 박스의 좌표 4곳을 테이블에 저장
      image

추가 설명

  • 제안 방식은 1번이 저희가 작업할 때 '조금' 더 편한 방식입니다. 다만 구현에 다소 어려움이 있을 것 같아 내부적으로 고려해본 방식이 2번입니다. 두 방식 모두 구현 난이도에서 큰 차이는 없을 것 같고, 둘 중 어느 방식이 확실히 '편하다'는 것도 아니기 때문에 구현하기 편하신 방식대로 구현해주시면 됩니다.
  • XML 파일에서 박스의 시작 점(p1)은 항상 '심볼(또는 텍스트)이 똑바로 되어있을 때'를 기준으로 왼쪽 위의 점으로 지정되어 있으며, 그 시작점부터 시계방향으로 점 3개가 찍혀있는 형태입니다. 수정해주신 뒤 저희가 직접 작업할 때도 같은 규칙을 따를 예정입니다.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.