PART 1 앱 인벤터 프로젝트 02 페인트 통. PART 1 앱 인벤터 프로젝트 02 페인트 통.

Slides:



Advertisements
Similar presentations
ⓒ 2015 NHN Entertainment Corp. Django 로 만드는 초간단 블로그 시스템운영팀 김영태 개발환경 구축.
Advertisements

1/ 편집 기능 사용하기 – 실습 1 글자 모양을 바꾸고 싶은 곳을 블록 설정 [ 글자 모양 ] 대화 상자에서 [ 글꼴 ] ‘ 궁서체 ’, [ 글자 색 ] ‘ 토마토색 ’ 으로 선택 → [ 설정 ] 클릭 → 글자 모양 변경.
1 파일 및 폴더 다루기 A. 파일이란 : 응용프로그램을 이용해서 만든 사용자가 만든 정보의 집합 - 파일 형식 : 이름과 확장자로 이뤄짐 예 sample.txt 샘플.txt - 복원하려면 휴지통에서 파일선택 후 드래그해서 밖으로 이동 혹은 RESTORE B. 확장자의.
Term project. Touch-screen 활용 그림판 –Touch-screen 을 입력장치로 하여 LCD 상에 그림을 그리는 프로그램 – 터치 입력을 절대 좌표로 받는 디바이스 /dev/touch 를 만들어 응용 프 로그램에서 수행하도록 함. –User interface.
스마트 KTC 사용자 매뉴얼 스마트폰용 모바일학생증 앱 설치 및 기본기능. 강원관광대 스마트 KTC 앱 설치 강원관광대학교 모바일학생증 앱 ( 이하 ‘ 스마트 KTC’ 로 명명 ) 은 안드로이드폰은 Google Play Store, 아이폰 은 App Store 에서 무료로.
MS 워드 2007 기초 사용법 MS 워드 2007 시작하기와 종료 MS 워드 2007 화면의 구성요소 MS 워드 2007 단축키 ( 기초 ) MS 워드 2007 표 그리기 MS 워드 2007 화일변환.
1 차시 : SW 코딩으로 배우는 3D 기초작품 및 톱니바퀴 만들기 1)SPL3D 프린팅 툴 설치하기 2) 도형 추가하기 3) 도형 연산 명령어 익히기 4)3D 프린터 출력을 위한 STL 파일 내보내기 5) 하트모양 만들기 6) 하트모양 열쇠고리 만들기 7) 변수와 수식.
난이도 : 초급 제1장 앱 인벤터 소개 및 준비.
한국기술교육대학교 아두이노 기반 펌웨어 개발 (기본과정) 5일차 강사: 김영준 목원대학교 겸임교수.
목 차 C# 언어 특징 .NET 프레임워크 C# 콘솔 프로그램 C# 윈도우 프로그램 실습 프로그래밍세미나 2.
OpenCV 안드로이드 연동 환경설정 OpenCV-Android 를 다운 받습니다.
대림대학교 2017년도 1학기 강의 왕보현 순서도와 스크래치 5주차 대림대학교 2017년도 1학기 강의 왕보현
순차, 조건, 반복 이점숙 농대 뒷편 언덕을 넘어가며 같은 문제 다르게 해결 순차, 조건, 반복 이점숙
순차, 조건, 반복 이점숙 같은 문제 다르게 해결하기 순차, 조건, 반복 이점숙
149개의 실습예제로 배우는 Flash 8.
풀 다운 메뉴 File > New “intent” 이름을 넣고 OK 를 클릭한다.
컴퓨터프로그래밍 1주차실습자료 Visual Studio 2005 사용법 익히기.
1. 신뢰할 수 있는 싸이트 등록 인터넷 익스플로러 실행 후 실행
Power Java 제2장 자바 개발 도구.
나민영 서경대학교 컴퓨터공학과 CGVR Lab 같이만들어보자 5주차 OpenCV 설정 및 기초.
Windows 8 Ksystem G&I 설치.
마우스(Mouse) 다루기 컴퓨터응용 및 실습 I.
CHAPTER 02 OpenCV 개요 PART 01 영상 처리 개요 및 OpenCV 소개.
Communication and Information Systems Lab. 황재철
1. C++ 시작하기.
SqlParameter 클래스 선문 비트 18기 발표자 : 박성한.
iframe 사용하기 Chapter 3 Part 2
Power Java 제14장 배치 관리자.
로고 화면 만들기 자료번호 애니메이션 기본 화면 구성 및 설명 기본 화면 구성 설명
SSL-VPN 설치 및 접속 설명서.
학습목표 학습목차 다른 홈페이지의 HTML 파일 코드를 보는 방법에 대해 알아봅니다.
ASP.NET AJAX 비동기 게시판 작성 2007 컴퓨터공학실험( I )
컴퓨터 프로그래밍 : 실습3 2장 데이터와 식.
스크래치 언어 이해 스크래치 이용법 습득 고양이가 말을 하며 움직이는 예제 작성
자바응용.
Chapter03 캔버스(1) HTML5 Programming.
10장 tkinter로 GUI 만들기.
30강 JAVA 그래픽 JAVA GUI(Graphic User Interface)란? AWT 컴포넌트? Swing 컴포넌트?
영상처리 실습 인공지능연구실.
PART 1 앱 인벤터 프로젝트 10 퀴즈 만들기와 퀴즈 풀기. PART 1 앱 인벤터 프로젝트 10 퀴즈 만들기와 퀴즈 풀기.
2 보안 1 도구 윈도우 XP > 온밀크 프로그램 설치 장애 (보안 설정) / 품목추가 깨질 때 장애증상
Adobe 제품 다운로드 및 설치 방법 안내 Adobe Creative Cloud Adobe License 권한을 받으신 분
안드로이드 앱 개발과정 Step1. 기초과정 강사 : 정 훈 희.
SEOUL NATIONAL UNIVERSITY OF SCIENCE & TECHNOLOGY
3D 프린팅 프로그래밍 01 – 기본 명령어 강사: 김영준 목원대학교 겸임교수.
10차시: 크리스털 LCD 명령어 기초 준비물 SPL-Duino 보드 개요: 크리스털 LCD의 기초 명령어를 익혀 봅니다.
ASP.NET AJAX / AJAX Control Toolkit 응용 2008 컴퓨터공학실험( I )
Clipping 이진학.
1차시: 낮과 밤이 생기는 원리 지구과학
8장. spss statistics 20의 데이터 변환
SEOUL NATIONAL UNIVERSITY OF SCIENCE & TECHNOLOGY
빌드 성공.
학습목표 처음 만드는 비주얼 베이직 프로그램 프로그램 실행과 실행 파일 생성. 학습목표 처음 만드는 비주얼 베이직 프로그램 프로그램 실행과 실행 파일 생성.
PART 1 앱 인벤터 프로젝트 12 원격 로봇. PART 1 앱 인벤터 프로젝트 12 원격 로봇.
그래픽 메소드.
05. 그래픽 빨간색 사각형 그리기 그래픽 그리기 발 표 자 : 07 정 경 오.
컴퓨터 구성요소와 사용 컴퓨터 문서 작업 인터넷 활용
메뉴(Menu) 컴퓨터응용 및 실습 I.
01. 분산 파일 시스템의 개요 네트워크에 분산된 파일을 사용자가 쉽게 접근하고 관리할 수 있게 해준다.
함수, 모듈.
PART 1 앱 인벤터 프로젝트 05 무당벌레 추적. PART 1 앱 인벤터 프로젝트 05 무당벌레 추적.
9 브라우저 객체 모델.
프로그래밍 개론 Ⅰ-실습 2장 데이터와 식①.
Power Java 제14장 배치 관리자.
과제물 3호 3번 문제 설명자료.
오늘의 강의 제목을 입력하세요 소 속 : 인문대학 국어국문학과 이 름 : 홍길동 교수 1.
Chapter 11. 문서 인쇄 및 파일 형식.
SPL-Duino 블록 편집기 이용하기 전류센서 블록 만들기 SPL-Duino 블록 편집기를 실행합니다.
BoardGame 보드게임 따라가기.
20 XMLHttpRequest.
Presentation transcript:

PART 1 앱 인벤터 프로젝트 02 페인트 통

2차원 그래픽 프로그램 1970년대 앱 인벤터에서는 아주 쉽게 화려한 그래픽 가능 개인용 컴퓨터 잠재력을 보여주는 초창기 프 로그램 매우 어렵고 조잡한 그래픽 화면 앱 인벤터에서는 아주 쉽게 화려한 그래픽 가능 여기서는 <페이트 통>이라는 간단한 그림 그리기 앱 3장 <두더지 잡기>, 5장 <무당벌레 추적> 게임 앱

무엇을 개발하는가? <페인트 통> 앱에서 개발하는 기능들 가상의 페이트 통에 손가락을 담가 색깔 선택 손가락으로 화면에 선을 그림 화면을 찍어 점을 그림 버튼을 클릭하여 화면을 깨끗이 지움 버튼을 클릭하여 점의 크기 조절 카메라로 사진을 찍고 그 위에 그림을 그림

무엇을 배우는가? <페인트 통> 앱을 만들며 배우는 것들 그림을 그릴 Canvas 컴포넌트 화면을 드래그하거나 터치할 때 발생하는 이벤트 처리 Arrangement 컴포넌트로 여러 컴포넌트를 배치 매개변수를 갖는 이벤트 처리기 변수 사용

프로젝트 생성 프로젝트 만들고, 라이브 테스팅 연결 세 가지 중요한 이름 프로젝트 이름은 “PaintPot” Screen1의 Title 속성은 “페인트 통” 세 가지 중요한 이름 프로젝트 이름 컴포넌트 이름 Screen1 화면 제목 Note _ 라이브 테스팅에 대한 문서는 http://appinventor.chonbuk.ac.kr

컴포넌트 설계 <페인트 통> 앱을 만들 때 사용하는 컴포넌트 빨강, 파랑, 초록에 해당하는 세 개의 Button 컴포넌트 버튼을 한 줄에 배치하는 데 사용하는 HorizontalArrangement 컴포넌트 화면을 지우는 Button 컴포넌트 점의 크기를 바꾸는 데 사용할 Button 컴포넌트 두 개 사진을 찍으라는 명령을 내리는 데 사용할 Button 컴포넌트 그림을 그리는 데 사용할 Canvas 컴포넌트 사진을 찍는데 사용할 Camera 컴포넌트 (보이지 않는 컴포넌트)

색깔 버튼 만들기 절차 Button 컴포넌트 끌어오기  Text 속성을 “빨강”, BackgroundColor 속성을 빨간색 Button1이던 버튼 이름을 RedButton으로 바꿈 같은 방법으로 BlueButton과 GreenButton을 만듦 컴포넌트에게 의미 있는 이름을 붙여주면 프로그램을 이해하는데 크게 도움이 됨

라이브 테스팅

Arrangement 컴포넌트로 깔끔하게 버튼 배치하기 절차 Layout 서랍에서 HorizontalArrangement 컴포넌트를 끌어옴 Width 속성을 Fill parent (화면 전체 너비 차지) 색깔 버튼을 HorizontalArrangement로 옮김 (세 버튼 컴포넌트는 부속 컴포넌트가 됨)

Canvas 컴포넌트 추가하기 절차 Canvas 컴포넌트를 끌어옴  Width는 Fill parent, height는 300으로 설정 kitty.png 다운로드 kitty.png 업로드 Canvas 컴포넌트의 PaintColor 속성을 빨간색으로 설정

아래쪽 버튼과 Camera 컴포넌트 추가하기 절차 HorizontalArrangement 컴포넌 트를 끌어옴. 두 개의 버튼 (Text 속성을 “사진 찍기”와 “지우기”) 배치 두 개 버튼을 추가 배치 Text 속성을 “큰 점”과 “작은 점” Camera 컴포넌트 끌어오기 (Non-visible components 영역 에 나타남)

컴포넌트 동작 프로그래밍 할 일들 DrawingCanvas 컴포넌트 버튼 컴포넌트 화면을 터치하면 DrawingCanvas.Touched 이벤트 처리  점을 찍어줌 화면을 드래그하면 DrawingCanvas.Dragged 이벤트 처리  선을 그려줌 버튼 컴포넌트 색을 바꿈 사진 찍음 화면을 지움 점의 크기를 바꿈

터치하여 점 찍기 절차 DrawingCanvas 서랍에서 DrawingCanvas.Touched 이벤트 처리기 블록 끌어옴 사용자 터치한 곳을 저장하고 있는 x와 y라는 매개변수

터치하여 점 찍기 절차 DrawingCanvas 서랍에서 DrawingCanvas.DrawCircle 명령어를 끌어와 끼움 원의 중심을 나타내는 centerx와 centery 매개변수, 반지름을 나타내는 radius 매개변수, 채울지 여부를 나타내는 fill 매개변수

터치하여 점 찍기 절차 x와 y의 get 블록을 끌어와 DrawCircle의 해당 홈에 끼움

터치하여 점 찍기 절차 반지름 radius 매개변수를 5로 지정

드래그하여 선 긋기 터치와 드래그의 차이점 절차 화면에 손가락을 댄 다음 이동하지 않은 채 떼면 터치 이벤트 발생 화면에 손가락을 댄 다음 떼지 않은 채 이동하면 드래그 이벤트 발생 절차 DrawingCanvas 서랍에서 DrawingCanvas.Dragged 이벤트 처리기 블록 끌어옴 startX와 startY: 드래그가 처음 시작된 곳의 위치 prevX와 prevY: 손가락의 바로 이전 위치 currentX와 currentY: 손가락의 현재 위치

드래그하여 선 긋기 절차 DrawingCanvas 서랍에서 DrawingCanvas.DrawLine 블록 끌어오기 get 블록 끼우기

색 바꾸기 절차 RedButton.Click 블록 끌어오기 set DrawingCanvas.PaintColor to 블록을 RedButton.Click에 끼우기 Color 서랍에서 빨간 블록을 끌어와 set DrawingCanvas.PaintColor to 블록에 끼움 1~3을 반복하여 파랑과 초록 버튼도 코딩함 지우기 버튼 코딩

사진 찍기 절차 TakePictureButton.Click 이벤트 처리기 블록을 끌어오기 Camera1.TakePicture블록을 끌어와 TakePictureButton.Click에 끼우기 Camera1.AfterPicture 이벤트 처리기 블록을 끌어오기 set DrawingCanvas.BackgroundImage to 블록을 Camera1.AfterPicture에 끼우기 get Image 블록을 DrawingCanvas.BackgroundImage 블록에 끼우기

사진 찍기

점 크기 바꾸기 점의 크기는 언제 정해질까? 사용자가 화면을 터치하면, DrawingCanvas.Touched 이벤트가 발생하고 아래 이벤트 처 리기 블록이 실행되고, 이때 radius가 5가 되어 반지름이 5인 원이 그려짐 5를 10으로 바꾸고 점이 커지는지 라이브 테스팅으로 실험해보자.

점 크기 바꾸기 한계점 해결책 점의 크기를 바꾸려면, 프로그래머가 매번 코드를 바꾸고 다시 실행해야 함 이런 방식의 프로그램을 “하드 코딩(hard coding)”되어 있다고 말함 프로그래머가 아니라 사용자가 자유롭게 점의 크기를 바꿀 수 있게 하려면? 해결책 변수(variable) 사용 사용자가 점의 크기를 지정하는 버튼을 누를 때마다 변수 값을 변경함 DrawingCanvas.Touched 블록은 변수 값을 radius로 사용

점 크기 바꾸기 변수 dotSize 정의하기 Variables 서랍에서 initialize global name to 블록 끌어와, name을 dotSize로 변경 초깃값 지정

DrawCircle에서 dotSize 참조하기 절차 get global dotSize 꺼내오기 DrawingCanavs.Touched 블록에 get global dotSize 끼우기

dotSize의 값 변경하기 절차 SmallButton.Click 이벤트 처리기에 set global dotSize to 끼우기  set global dotSize to에 숫자 블록 2 끼우기 BigButton.Click 이벤트 처리기에 set global dotSize to 끼우기  set global dotSize to에 숫자 블록 8 끼우기

dotSize의 값 변경하기

전체 앱 프로그램

확장해 보기