Final Grade

비밀 번호 중간 고사 중간 고사 extra 20% 중간 고사 기말 고사 출석 (20%) 중간 고사 (30%) 기말 고사 (40%) 실습 (10%) TOTAL
0409 39 20 59 21 20.0 17.7 6.3 10 54.0
1016 27 20 47 30 19.7 14.1 9 10 52.8
1234 5 20 25 3 18.3 7.5 0.9 10 36.7
3150 39 20 59 57 18.7 17.7 17.1 10 63.5
4917 22 20 42 24 20.0 12.6 7.2 10 49.8
7324 0 0 0 6.7 0 0 10 16.7
7325 0 20 20 4 15.7 6 1.2 10 32.9
7777 0 0 0 10.3 0 0 10 20.3
9492 15 20 35 42 18.7 10.5 12.6 10 51.8

SERIALIZATION

Person Serialization (Using BinaryFormatter or SoapFormatter)
http://dis.dankook.ac.kr/lectures/hci09/entry/Simple-Serialization

Person XML Serialization (Using XML Serializer or Soap XML Serializer)
http://dis.dankook.ac.kr/lectures/hci09/entry/XML-Serialization

Person Using ISerialable Interface
http://dis.dankook.ac.kr/lectures/hci09/entry/ISerialable

PersonList Serialization (Using BinaryFormatter or SoapFormatter)
http://dis.dankook.ac.kr/lectures/hci09/entry/PersonList-Serialization

HW4

단국대학교 멀티미디어공학과 HCI프로그래밍2 (2016년 가을학기) 실습

과목코드 : 300890

강사 : 박경신

———————————————————

날짜: 2016년 11월 28일

– 실습번호 : HW4 (Due by 12/12)

– 실습제목 : Window.Forms , Controls, FileIO, GMap.Net, LINQ

– 실습요약 : 지도 위에 한국의 지진 정보를 보여준다.

– 준비자료 : 지진데이터

Data

http://greatmaps.codeplex.com/releases/view/73162

 

12/12까지 online.dankook.ac.kr 이러닝으로 실행파일(bin\*.exe)과 소스코드(*.cs)와 보고서(*.doc/*.hwp)를 전부 “학번_이름_HW4.zip”으로 묶어서 제출한다. 또한, 비주얼 스튜디오에서 만든 프로젝트 전체 파일(*.sln, *.csproj)을 폴더에 같이 넣어준다. 보고서는 출력해서 수업시간에 제출한다.

 

– 실습문제

  1. GMap.Net 컨트롤을 설치한다.

http://www.independent-software.com/gmap-net-tutorial-maps-markers-and-polygons/

http://dis.dankook.ac.kr/lectures/hci16/2016/11/28/custom-control/ 참고

 

  1. KEarthquake 클래스를 만든다.

public class KEarthquake: IComparable<KEarthquake>, IEquatable<KEarthquake>

{

public DateTime Time { get; set; }

public double Magnitude { get; set; }

public double Latitutde { get; set; }

public double Longitude { get; set; }

public string Location { get; set; }

public string Link { get; set; }

public Color MagnitudeColor { get { return ComputeARGBColor(); } }

// compute color based on magnitude
public Color ComputeARGBColor()
{
int r = 0, g = 0, b = 0;
if (Magnitude <= 1.5)
{
// BLUE
r = 0; g = 0; b = 255;
}
else if ((Magnitude > 1.5) && (Magnitude <= 2.75))
{
// BLUE->CYAN
r = 0; g = (int)(255 * (Magnitude – 1.5) / 1.25); b = 255;
}
else if ((Magnitude > 2.75) && (Magnitude <= 4.0))
{
// CYAN->GREEN
r = 0; g = 255; b = 255 – (int)(255 * (Magnitude – 2.75) / 1.25);
}
else if ((Magnitude > 4.0) && (Magnitude <= 5.25))
{
// GREEN->YELLOW
r = (int)(255 * (Magnitude – 4.0) / 1.25); g = 255; b = 0;
}
else if ((Magnitude > 5.25) && (Magnitude <= 6.5))
{
// YELLOW->RED
r = 255; g = 255 – (int)(255 * (Magnitude – 5.25) / 1.25); b = 0;
}
else if (Magnitude > 6.5)
{
// RED
r = 255; g = 0; b = 0;
}
return Color.FromArgb(75, r, g, b);
}

}

 

  1. 모든 지진데이터 *.csv 파일을 읽어서 List<KEarthquake>를 만들어주는 KEarthquakeImporter 클래스를 만든다.

http://dis.dankook.ac.kr/lectures/hci15/?p=572 Person.csv 파일 읽기 참고

 

  1. List<KEarthquake>를 이용해서 Listview에 전체 데이터를 보여준다.

kearthquake_listview

  1. List<KEarthquake>를 이용해서 지진 강도(Magnitude)에 따른 색깔로 GMap.NET marker (circle polygon)을 그려준다.

class GMapMarkerCircle : GMapMarker // 제작 필요

class GMapMarkerImageAndLink : GMapMarker // 제작 필요

kearthquake_mapview

  1. LINQ를 이용하여 발생기간, 규모(Magnitude) 범위에 따른 지진데이터를 검색하여 보여준다.