SlideShare a Scribd company logo
1 of 36
Download to read offline
벡터기반 지하철 노선도
렌더링 엔진
안덕용 과장 / 지도앱 개발팀
Naver
CONTENTS
1.SVG to Model Data
 
2.Vector Rendering Engine
 
3.QA
 
 
 
1. SVG to Model Data
1.1 Intro
1.1 Intro
1.1 Intro
1.2 벡터 개발의 시작
1.3 벡터 데이터 포멧
Easy for Designer
1. 많은 사람들이 사용하는 벡터 디자인 툴을 이용해서 쉽게 디자인 할 수 있어야 할 것
2. 디자이너가 각 벡터 오브젝트에 이름을 쉽게 명시 할 수 있을 것

Easy for Programmer
1. File Import 및 개발하기 편해야 할 것
2. 쉽게 디버깅이 가능해야 할 것

AI CDR CGM DXF EVA EMF Gerber HVIF IGES PGML

Designer

Easy

SVG
VML WMF Xar

Programmer
1.3 벡터 데이터 포멧
SVG(Scalable Vector Graphic) : XML 기반
1.3 벡터 데이터 포멧
SVG(Scalable Vector Graphic) : XML 기반
1. 지하철과 같이 복잡한 SVG에 적합한 오픈 소스가 없다
2. 필요한 데이타만 Import
1.3 벡터 데이터 포멧
SVG(Scalable Vector Graphic) : XML 기반
1. 지하철과 같이 복잡한 SVG에 적합한 오픈 소스가 없다
2. 필요한 데이타만 Import

Element
지하철 노선

비고

path
line
polyline
polygon
rect

지하철 역

circle

역 좌표

text

역 이름
1.4 모델 데이터 만들기
SVG File

Model Data

1. Rendering Data (호선별 전체 라인)
2. Meta Data (호선별 구간 라인, 지하철 역)

SVG File

Rendering Data

VM 2

Meta Data
1.4 모델 데이터 만들기

호선별 전체 라인

호선별
 구간
 라인
 

지하철
 역
 
1.4 모델 데이터 만들기

SVG File

Data Model

호선별 전체 라인

렌더링 데이터

호선별 구간 라인
메타 데이터
지하철역
1.4 모델 데이터 만들기

SVG File

Server Data

호선별
구간 라인

위경도 좌표

Data Model

메타 데이터
지하철역

지하철 역 이름
/ ID
1.4 모델 데이터 만들기
SVG Processer
SVG File

Server Data

Data Model

호선별
전체 라인

위경도 좌표

렌더링 데이터
최적화

지하철 역 이름
/ ID

메타 데이터

호선별
구간 라인

지하철역
1.5 모델 데이터 자동화
SVG File

Meta Data

호선별
전체 라인

지하철역
정보

호선별
구간 라인

노선 구간
정보

지하철역

Server Data
위경도 좌
표

지하철 역
이름 / ID

SVG
Processor

Rendering
렌더링
최적화
1.5 모델 데이터 자동화
IOS

Android

WEB
2. Vector Rendering Engine
2.1 Vector Rendering Engine
대표적인 지하철 노선도 렌더링 방식
Tile Bitmap

One Bitmap
2.1 Vector Rendering Engine
Bitmap Rendering
1. 서버를 통해 Bitmap을 받아오거나, Bitmap을 저장할 공간이 필요하다
2. 해상도에 따라 이미지 뭉개짐
3. 렌더링이 빠르다

Full Vector Rendering
1. 적은 용량의 벡터 데이터만 있으면 된다
2. 해상도에 전혀 상관이 없다
3. 렌더링이 느리다

Bitmap Rendering Based On Vector Model
1. 적은 용량의 벡터 데이터만 있으면 된다
2. 해상도에 따라 이미지 뭉개짐이 덜하다
3. 렌더링이 빠르다
2.1 Vector Rendering Engine
지하철 노선도 렌더링 방식 : 벡터 타일 방식
Rendering
Vector
Data
2.1 Vector Rendering Engine
지하철 노선도 렌더링 방식 : 벡터 타일 방식
Rendering
Vector
Data
2.1 Vector Rendering Engine
지하철 노선도 렌더링 방식 : 벡터 타일 방식
2.1 Vector Rendering Engine
지하철 노선도 렌더링 방식 : 벡터 타일 방식
장점
1. 적은 용량의 벡터 데이터만 있으면 된다
2. 해상도에 따라 이미지 뭉개짐이 덜하다
3. 렌더링이 빠르다
4. 화면에 보이지 않는 타일은 로딩되지 않는다

단점
1. 벡터 데이터로 타일을 하나를 만들때 소요되는 시간이 기기별로 틀리다.
2.1 Vector Rendering Engine
Vector Model to Bitmap Tile

More Related Content

What's hot

Smart SAP Testing with Panaya Test Dynamix
Smart SAP Testing with Panaya Test DynamixSmart SAP Testing with Panaya Test Dynamix
Smart SAP Testing with Panaya Test Dynamixpanayaofficial
 
Harnessing your customer truth from value propositions to sales propositions ...
Harnessing your customer truth from value propositions to sales propositions ...Harnessing your customer truth from value propositions to sales propositions ...
Harnessing your customer truth from value propositions to sales propositions ...Futurecurve
 
First Steps to Salesforce Release Management & DevOps [Salesforce User Group,...
First Steps to Salesforce Release Management & DevOps [Salesforce User Group,...First Steps to Salesforce Release Management & DevOps [Salesforce User Group,...
First Steps to Salesforce Release Management & DevOps [Salesforce User Group,...Anna Loughnan Colquhoun
 
Business Requirements: How to Create a Business Requirements Document (Free T...
Business Requirements: How to Create a Business Requirements Document (Free T...Business Requirements: How to Create a Business Requirements Document (Free T...
Business Requirements: How to Create a Business Requirements Document (Free T...QuekelsBaro
 
Creating an Omnichannel Customer Experience
Creating an Omnichannel Customer ExperienceCreating an Omnichannel Customer Experience
Creating an Omnichannel Customer ExperienceCSI Solutions
 
Rượu vang - powerpoint template
Rượu vang - powerpoint templateRượu vang - powerpoint template
Rượu vang - powerpoint templatemrtomlearning
 
How to Design a Value-Based Renewal Management Process
 How to Design a Value-Based Renewal Management Process How to Design a Value-Based Renewal Management Process
How to Design a Value-Based Renewal Management ProcessGainsight
 
B2B sales lead to cash
B2B sales lead to cashB2B sales lead to cash
B2B sales lead to cashAmir NikKhah
 
How To Prepare For The AIPMM CPM® Certification Exam - H. Del Castillo, AIPMM
How To Prepare For The AIPMM CPM® Certification Exam - H. Del Castillo, AIPMMHow To Prepare For The AIPMM CPM® Certification Exam - H. Del Castillo, AIPMM
How To Prepare For The AIPMM CPM® Certification Exam - H. Del Castillo, AIPMMHector Del Castillo, CPM, CPMM
 
Presales Consultant Roles&Responsibilities
Presales Consultant Roles&ResponsibilitiesPresales Consultant Roles&Responsibilities
Presales Consultant Roles&Responsibilitiesvarshnnh
 
BMS catalogue
BMS catalogueBMS catalogue
BMS catalogueBipin KG
 
The 5 Must Have Customer Success Processes
The 5 Must Have Customer Success ProcessesThe 5 Must Have Customer Success Processes
The 5 Must Have Customer Success ProcessesTotango
 
Strategic Brand Development Plan Powerpoint Presentation Slides
Strategic Brand Development Plan Powerpoint Presentation SlidesStrategic Brand Development Plan Powerpoint Presentation Slides
Strategic Brand Development Plan Powerpoint Presentation SlidesSlideTeam
 
apidays Paris 2022 - Sustainable API Green Score, Yannick Tremblais (Groupe R...
apidays Paris 2022 - Sustainable API Green Score, Yannick Tremblais (Groupe R...apidays Paris 2022 - Sustainable API Green Score, Yannick Tremblais (Groupe R...
apidays Paris 2022 - Sustainable API Green Score, Yannick Tremblais (Groupe R...apidays
 
Developer group introduction & Salesforce overview
Developer group introduction & Salesforce overviewDeveloper group introduction & Salesforce overview
Developer group introduction & Salesforce overviewSujesh Ramachandran
 
"Zawód: Tłumacz. Praca tłumacza od podstaw"
"Zawód: Tłumacz. Praca tłumacza od podstaw""Zawód: Tłumacz. Praca tłumacza od podstaw"
"Zawód: Tłumacz. Praca tłumacza od podstaw"INFEO
 
Real Estate CRM
Real Estate CRM Real Estate CRM
Real Estate CRM abinjoy123
 

What's hot (19)

Smart SAP Testing with Panaya Test Dynamix
Smart SAP Testing with Panaya Test DynamixSmart SAP Testing with Panaya Test Dynamix
Smart SAP Testing with Panaya Test Dynamix
 
Harnessing your customer truth from value propositions to sales propositions ...
Harnessing your customer truth from value propositions to sales propositions ...Harnessing your customer truth from value propositions to sales propositions ...
Harnessing your customer truth from value propositions to sales propositions ...
 
First Steps to Salesforce Release Management & DevOps [Salesforce User Group,...
First Steps to Salesforce Release Management & DevOps [Salesforce User Group,...First Steps to Salesforce Release Management & DevOps [Salesforce User Group,...
First Steps to Salesforce Release Management & DevOps [Salesforce User Group,...
 
Business Requirements: How to Create a Business Requirements Document (Free T...
Business Requirements: How to Create a Business Requirements Document (Free T...Business Requirements: How to Create a Business Requirements Document (Free T...
Business Requirements: How to Create a Business Requirements Document (Free T...
 
Creating an Omnichannel Customer Experience
Creating an Omnichannel Customer ExperienceCreating an Omnichannel Customer Experience
Creating an Omnichannel Customer Experience
 
Qualitative kpi
Qualitative kpiQualitative kpi
Qualitative kpi
 
Rượu vang - powerpoint template
Rượu vang - powerpoint templateRượu vang - powerpoint template
Rượu vang - powerpoint template
 
How to Design a Value-Based Renewal Management Process
 How to Design a Value-Based Renewal Management Process How to Design a Value-Based Renewal Management Process
How to Design a Value-Based Renewal Management Process
 
B2B sales lead to cash
B2B sales lead to cashB2B sales lead to cash
B2B sales lead to cash
 
How To Prepare For The AIPMM CPM® Certification Exam - H. Del Castillo, AIPMM
How To Prepare For The AIPMM CPM® Certification Exam - H. Del Castillo, AIPMMHow To Prepare For The AIPMM CPM® Certification Exam - H. Del Castillo, AIPMM
How To Prepare For The AIPMM CPM® Certification Exam - H. Del Castillo, AIPMM
 
Presales Consultant Roles&Responsibilities
Presales Consultant Roles&ResponsibilitiesPresales Consultant Roles&Responsibilities
Presales Consultant Roles&Responsibilities
 
BMS catalogue
BMS catalogueBMS catalogue
BMS catalogue
 
The 5 Must Have Customer Success Processes
The 5 Must Have Customer Success ProcessesThe 5 Must Have Customer Success Processes
The 5 Must Have Customer Success Processes
 
Strategic Brand Development Plan Powerpoint Presentation Slides
Strategic Brand Development Plan Powerpoint Presentation SlidesStrategic Brand Development Plan Powerpoint Presentation Slides
Strategic Brand Development Plan Powerpoint Presentation Slides
 
apidays Paris 2022 - Sustainable API Green Score, Yannick Tremblais (Groupe R...
apidays Paris 2022 - Sustainable API Green Score, Yannick Tremblais (Groupe R...apidays Paris 2022 - Sustainable API Green Score, Yannick Tremblais (Groupe R...
apidays Paris 2022 - Sustainable API Green Score, Yannick Tremblais (Groupe R...
 
Developer group introduction & Salesforce overview
Developer group introduction & Salesforce overviewDeveloper group introduction & Salesforce overview
Developer group introduction & Salesforce overview
 
"Zawód: Tłumacz. Praca tłumacza od podstaw"
"Zawód: Tłumacz. Praca tłumacza od podstaw""Zawód: Tłumacz. Praca tłumacza od podstaw"
"Zawód: Tłumacz. Praca tłumacza od podstaw"
 
Dynamics 365
Dynamics 365Dynamics 365
Dynamics 365
 
Real Estate CRM
Real Estate CRM Real Estate CRM
Real Estate CRM
 

Viewers also liked

125 고성능 web view-deview 2013 발표 자료_공유용
125 고성능 web view-deview 2013 발표 자료_공유용125 고성능 web view-deview 2013 발표 자료_공유용
125 고성능 web view-deview 2013 발표 자료_공유용NAVER D2
 
실시간 웹 협업도구 만들기 V0.3
실시간 웹 협업도구 만들기 V0.3실시간 웹 협업도구 만들기 V0.3
실시간 웹 협업도구 만들기 V0.3NAVER D2
 
DEVIEW2013: Automating Performance Tests for Android Applications
DEVIEW2013: Automating Performance Tests for Android ApplicationsDEVIEW2013: Automating Performance Tests for Android Applications
DEVIEW2013: Automating Performance Tests for Android ApplicationsKyungmin Lee
 
하이브리드앱 성능 극복
하이브리드앱 성능 극복하이브리드앱 성능 극복
하이브리드앱 성능 극복Mu-ik Jeon
 
NAVER 오픈세미나 대구 (2014.08.01) - 오픈소스 라이브러리를 활용한 네이티브 어플리케이션의 데이터 저장과 통신
NAVER 오픈세미나 대구 (2014.08.01) - 오픈소스 라이브러리를 활용한 네이티브 어플리케이션의 데이터 저장과 통신NAVER 오픈세미나 대구 (2014.08.01) - 오픈소스 라이브러리를 활용한 네이티브 어플리케이션의 데이터 저장과 통신
NAVER 오픈세미나 대구 (2014.08.01) - 오픈소스 라이브러리를 활용한 네이티브 어플리케이션의 데이터 저장과 통신Sungwoo Choo
 
서울 지하철 노선도를 통해서 본, 사인 디자인 시 고려할 점
서울 지하철 노선도를 통해서 본, 사인 디자인 시 고려할 점서울 지하철 노선도를 통해서 본, 사인 디자인 시 고려할 점
서울 지하철 노선도를 통해서 본, 사인 디자인 시 고려할 점sunhee kim
 
디미컨 어린이컴퓨터교육 6주차
디미컨 어린이컴퓨터교육 6주차디미컨 어린이컴퓨터교육 6주차
디미컨 어린이컴퓨터교육 6주차jiyein
 
세바시 15분 이정웅 선데이토즈 대표 - 애니팡과 선데이토즈의 소셜게임 스토리
세바시 15분 이정웅 선데이토즈 대표 - 애니팡과 선데이토즈의 소셜게임 스토리세바시 15분 이정웅 선데이토즈 대표 - 애니팡과 선데이토즈의 소셜게임 스토리
세바시 15분 이정웅 선데이토즈 대표 - 애니팡과 선데이토즈의 소셜게임 스토리cbs15min
 
2015 UX SERVICE DESIGN : ALLSO
2015 UX SERVICE DESIGN : ALLSO2015 UX SERVICE DESIGN : ALLSO
2015 UX SERVICE DESIGN : ALLSO다은 이
 
[찜꽁] 어플리케이션 소개
[찜꽁] 어플리케이션 소개[찜꽁] 어플리케이션 소개
[찜꽁] 어플리케이션 소개Lim So Jeong
 
어랍쇼 발표자료
어랍쇼 발표자료어랍쇼 발표자료
어랍쇼 발표자료NikYromi
 
[D2 오픈세미나]3.web view hybridapp
[D2 오픈세미나]3.web view hybridapp[D2 오픈세미나]3.web view hybridapp
[D2 오픈세미나]3.web view hybridappNAVER D2
 
재미에 대한 고찰
재미에 대한 고찰재미에 대한 고찰
재미에 대한 고찰Hyungyu Kang
 
[Kgc2013] 모바일 엔진 개발기
[Kgc2013] 모바일 엔진 개발기[Kgc2013] 모바일 엔진 개발기
[Kgc2013] 모바일 엔진 개발기changehee lee
 
위대한개발문화
위대한개발문화위대한개발문화
위대한개발문화신승환
 
「스퀘어 에닉스 오픈 컨퍼런스 2012」「Agni's Philosophy」비하인드 스토리
「스퀘어 에닉스 오픈 컨퍼런스 2012」「Agni's Philosophy」비하인드 스토리「스퀘어 에닉스 오픈 컨퍼런스 2012」「Agni's Philosophy」비하인드 스토리
「스퀘어 에닉스 오픈 컨퍼런스 2012」「Agni's Philosophy」비하인드 스토리민웅 이
 
모바일 스타트업이 경험한 모바일 앱 마케팅
모바일 스타트업이 경험한 모바일 앱 마케팅모바일 스타트업이 경험한 모바일 앱 마케팅
모바일 스타트업이 경험한 모바일 앱 마케팅Buzzvil
 
모바일앱 시장현황 및 마케팅을 위한 25가지 방법
모바일앱 시장현황 및 마케팅을 위한 25가지 방법 모바일앱 시장현황 및 마케팅을 위한 25가지 방법
모바일앱 시장현황 및 마케팅을 위한 25가지 방법 마킨드(makiind)
 

Viewers also liked (20)

125 고성능 web view-deview 2013 발표 자료_공유용
125 고성능 web view-deview 2013 발표 자료_공유용125 고성능 web view-deview 2013 발표 자료_공유용
125 고성능 web view-deview 2013 발표 자료_공유용
 
실시간 웹 협업도구 만들기 V0.3
실시간 웹 협업도구 만들기 V0.3실시간 웹 협업도구 만들기 V0.3
실시간 웹 협업도구 만들기 V0.3
 
DEVIEW2013: Automating Performance Tests for Android Applications
DEVIEW2013: Automating Performance Tests for Android ApplicationsDEVIEW2013: Automating Performance Tests for Android Applications
DEVIEW2013: Automating Performance Tests for Android Applications
 
하이브리드앱 성능 극복
하이브리드앱 성능 극복하이브리드앱 성능 극복
하이브리드앱 성능 극복
 
NAVER 오픈세미나 대구 (2014.08.01) - 오픈소스 라이브러리를 활용한 네이티브 어플리케이션의 데이터 저장과 통신
NAVER 오픈세미나 대구 (2014.08.01) - 오픈소스 라이브러리를 활용한 네이티브 어플리케이션의 데이터 저장과 통신NAVER 오픈세미나 대구 (2014.08.01) - 오픈소스 라이브러리를 활용한 네이티브 어플리케이션의 데이터 저장과 통신
NAVER 오픈세미나 대구 (2014.08.01) - 오픈소스 라이브러리를 활용한 네이티브 어플리케이션의 데이터 저장과 통신
 
서울 지하철 노선도를 통해서 본, 사인 디자인 시 고려할 점
서울 지하철 노선도를 통해서 본, 사인 디자인 시 고려할 점서울 지하철 노선도를 통해서 본, 사인 디자인 시 고려할 점
서울 지하철 노선도를 통해서 본, 사인 디자인 시 고려할 점
 
디미컨 어린이컴퓨터교육 6주차
디미컨 어린이컴퓨터교육 6주차디미컨 어린이컴퓨터교육 6주차
디미컨 어린이컴퓨터교육 6주차
 
세바시 15분 이정웅 선데이토즈 대표 - 애니팡과 선데이토즈의 소셜게임 스토리
세바시 15분 이정웅 선데이토즈 대표 - 애니팡과 선데이토즈의 소셜게임 스토리세바시 15분 이정웅 선데이토즈 대표 - 애니팡과 선데이토즈의 소셜게임 스토리
세바시 15분 이정웅 선데이토즈 대표 - 애니팡과 선데이토즈의 소셜게임 스토리
 
2015 UX SERVICE DESIGN : ALLSO
2015 UX SERVICE DESIGN : ALLSO2015 UX SERVICE DESIGN : ALLSO
2015 UX SERVICE DESIGN : ALLSO
 
[찜꽁] 어플리케이션 소개
[찜꽁] 어플리케이션 소개[찜꽁] 어플리케이션 소개
[찜꽁] 어플리케이션 소개
 
지하철알리미 공모전경험담 및 팁 (이민석)
지하철알리미 공모전경험담 및 팁 (이민석)지하철알리미 공모전경험담 및 팁 (이민석)
지하철알리미 공모전경험담 및 팁 (이민석)
 
어랍쇼 발표자료
어랍쇼 발표자료어랍쇼 발표자료
어랍쇼 발표자료
 
MVP 패턴 소개
MVP 패턴 소개MVP 패턴 소개
MVP 패턴 소개
 
[D2 오픈세미나]3.web view hybridapp
[D2 오픈세미나]3.web view hybridapp[D2 오픈세미나]3.web view hybridapp
[D2 오픈세미나]3.web view hybridapp
 
재미에 대한 고찰
재미에 대한 고찰재미에 대한 고찰
재미에 대한 고찰
 
[Kgc2013] 모바일 엔진 개발기
[Kgc2013] 모바일 엔진 개발기[Kgc2013] 모바일 엔진 개발기
[Kgc2013] 모바일 엔진 개발기
 
위대한개발문화
위대한개발문화위대한개발문화
위대한개발문화
 
「스퀘어 에닉스 오픈 컨퍼런스 2012」「Agni's Philosophy」비하인드 스토리
「스퀘어 에닉스 오픈 컨퍼런스 2012」「Agni's Philosophy」비하인드 스토리「스퀘어 에닉스 오픈 컨퍼런스 2012」「Agni's Philosophy」비하인드 스토리
「스퀘어 에닉스 오픈 컨퍼런스 2012」「Agni's Philosophy」비하인드 스토리
 
모바일 스타트업이 경험한 모바일 앱 마케팅
모바일 스타트업이 경험한 모바일 앱 마케팅모바일 스타트업이 경험한 모바일 앱 마케팅
모바일 스타트업이 경험한 모바일 앱 마케팅
 
모바일앱 시장현황 및 마케팅을 위한 25가지 방법
모바일앱 시장현황 및 마케팅을 위한 25가지 방법 모바일앱 시장현황 및 마케팅을 위한 25가지 방법
모바일앱 시장현황 및 마케팅을 위한 25가지 방법
 

Similar to 121 벡터기반 지하철 노선도 렌더링 엔진

[152] 웹브라우저 감옥에서 살아남기
[152] 웹브라우저 감옥에서 살아남기[152] 웹브라우저 감옥에서 살아남기
[152] 웹브라우저 감옥에서 살아남기NAVER D2
 
프론트엔드 개발 첫걸음
프론트엔드 개발 첫걸음프론트엔드 개발 첫걸음
프론트엔드 개발 첫걸음DataUs
 
프론트엔드 개발자를 위한 크롬 렌더링 성능 인자 이해하기
프론트엔드 개발자를 위한 크롬 렌더링 성능 인자 이해하기프론트엔드 개발자를 위한 크롬 렌더링 성능 인자 이해하기
프론트엔드 개발자를 위한 크롬 렌더링 성능 인자 이해하기Chang W. Doh
 
전형규, 가성비 좋은 렌더링 테크닉 10선, NDC2012
전형규, 가성비 좋은 렌더링 테크닉 10선, NDC2012전형규, 가성비 좋은 렌더링 테크닉 10선, NDC2012
전형규, 가성비 좋은 렌더링 테크닉 10선, NDC2012devCAT Studio, NEXON
 
코드잇-리액트-특강.pdf
코드잇-리액트-특강.pdf코드잇-리액트-특강.pdf
코드잇-리액트-특강.pdf이정환
 
[24]안드로이드 웹뷰의 모든것
[24]안드로이드 웹뷰의 모든것[24]안드로이드 웹뷰의 모든것
[24]안드로이드 웹뷰의 모든것NAVER Engineering
 
[125]웹 성능 최적화에 필요한 브라우저의 모든 것
[125]웹 성능 최적화에 필요한 브라우저의 모든 것[125]웹 성능 최적화에 필요한 브라우저의 모든 것
[125]웹 성능 최적화에 필요한 브라우저의 모든 것NAVER D2
 
Ndc12 이창희 render_pipeline
Ndc12 이창희 render_pipelineNdc12 이창희 render_pipeline
Ndc12 이창희 render_pipelinechangehee lee
 
WebRTC 1.0 표준완성과 현재, 그리고 다음버전
WebRTC 1.0 표준완성과 현재, 그리고 다음버전WebRTC 1.0 표준완성과 현재, 그리고 다음버전
WebRTC 1.0 표준완성과 현재, 그리고 다음버전sung young son
 
Create App Easier With SVC Pattern - DroidKnights 2019 @Seoul
Create App Easier With SVC Pattern - DroidKnights 2019 @SeoulCreate App Easier With SVC Pattern - DroidKnights 2019 @Seoul
Create App Easier With SVC Pattern - DroidKnights 2019 @SeoulBansook Nam
 
HTML5/JSON 을 이용해 범용 2D 맵에디터 제작하기
HTML5/JSON 을 이용해 범용 2D 맵에디터 제작하기HTML5/JSON 을 이용해 범용 2D 맵에디터 제작하기
HTML5/JSON 을 이용해 범용 2D 맵에디터 제작하기Miyu Park
 
Visual Studio 2008 SP1
Visual Studio 2008 SP1Visual Studio 2008 SP1
Visual Studio 2008 SP1준일 엄
 
[0602 박민근] direct2 d
[0602 박민근] direct2 d[0602 박민근] direct2 d
[0602 박민근] direct2 dMinGeun Park
 
프론트엔드 개발자를 위한 Layer Model
프론트엔드 개발자를 위한 Layer Model프론트엔드 개발자를 위한 Layer Model
프론트엔드 개발자를 위한 Layer ModelHan Lee
 
내가요즘하는건
내가요즘하는건내가요즘하는건
내가요즘하는건Sangwook Kwon
 
[0602 박민근] Direct2D
[0602 박민근] Direct2D[0602 박민근] Direct2D
[0602 박민근] Direct2D흥배 최
 
프론트엔드 개발자를 위한 크롬 렌더링 성능인자 이해하기
프론트엔드 개발자를 위한 크롬 렌더링 성능인자 이해하기프론트엔드 개발자를 위한 크롬 렌더링 성능인자 이해하기
프론트엔드 개발자를 위한 크롬 렌더링 성능인자 이해하기Chang W. Doh
 
Android와 Flutter 앱 개발의 큰 차이점 5가지
Android와 Flutter 앱 개발의 큰 차이점 5가지Android와 Flutter 앱 개발의 큰 차이점 5가지
Android와 Flutter 앱 개발의 큰 차이점 5가지Bansook Nam
 
[211]대규모 시스템 시각화 현동석김광림
[211]대규모 시스템 시각화 현동석김광림[211]대규모 시스템 시각화 현동석김광림
[211]대규모 시스템 시각화 현동석김광림NAVER D2
 
[111217 아꿈사연말모임] 웹소켓과온라인게임
[111217 아꿈사연말모임] 웹소켓과온라인게임[111217 아꿈사연말모임] 웹소켓과온라인게임
[111217 아꿈사연말모임] 웹소켓과온라인게임sung ki choi
 

Similar to 121 벡터기반 지하철 노선도 렌더링 엔진 (20)

[152] 웹브라우저 감옥에서 살아남기
[152] 웹브라우저 감옥에서 살아남기[152] 웹브라우저 감옥에서 살아남기
[152] 웹브라우저 감옥에서 살아남기
 
프론트엔드 개발 첫걸음
프론트엔드 개발 첫걸음프론트엔드 개발 첫걸음
프론트엔드 개발 첫걸음
 
프론트엔드 개발자를 위한 크롬 렌더링 성능 인자 이해하기
프론트엔드 개발자를 위한 크롬 렌더링 성능 인자 이해하기프론트엔드 개발자를 위한 크롬 렌더링 성능 인자 이해하기
프론트엔드 개발자를 위한 크롬 렌더링 성능 인자 이해하기
 
전형규, 가성비 좋은 렌더링 테크닉 10선, NDC2012
전형규, 가성비 좋은 렌더링 테크닉 10선, NDC2012전형규, 가성비 좋은 렌더링 테크닉 10선, NDC2012
전형규, 가성비 좋은 렌더링 테크닉 10선, NDC2012
 
코드잇-리액트-특강.pdf
코드잇-리액트-특강.pdf코드잇-리액트-특강.pdf
코드잇-리액트-특강.pdf
 
[24]안드로이드 웹뷰의 모든것
[24]안드로이드 웹뷰의 모든것[24]안드로이드 웹뷰의 모든것
[24]안드로이드 웹뷰의 모든것
 
[125]웹 성능 최적화에 필요한 브라우저의 모든 것
[125]웹 성능 최적화에 필요한 브라우저의 모든 것[125]웹 성능 최적화에 필요한 브라우저의 모든 것
[125]웹 성능 최적화에 필요한 브라우저의 모든 것
 
Ndc12 이창희 render_pipeline
Ndc12 이창희 render_pipelineNdc12 이창희 render_pipeline
Ndc12 이창희 render_pipeline
 
WebRTC 1.0 표준완성과 현재, 그리고 다음버전
WebRTC 1.0 표준완성과 현재, 그리고 다음버전WebRTC 1.0 표준완성과 현재, 그리고 다음버전
WebRTC 1.0 표준완성과 현재, 그리고 다음버전
 
Create App Easier With SVC Pattern - DroidKnights 2019 @Seoul
Create App Easier With SVC Pattern - DroidKnights 2019 @SeoulCreate App Easier With SVC Pattern - DroidKnights 2019 @Seoul
Create App Easier With SVC Pattern - DroidKnights 2019 @Seoul
 
HTML5/JSON 을 이용해 범용 2D 맵에디터 제작하기
HTML5/JSON 을 이용해 범용 2D 맵에디터 제작하기HTML5/JSON 을 이용해 범용 2D 맵에디터 제작하기
HTML5/JSON 을 이용해 범용 2D 맵에디터 제작하기
 
Visual Studio 2008 SP1
Visual Studio 2008 SP1Visual Studio 2008 SP1
Visual Studio 2008 SP1
 
[0602 박민근] direct2 d
[0602 박민근] direct2 d[0602 박민근] direct2 d
[0602 박민근] direct2 d
 
프론트엔드 개발자를 위한 Layer Model
프론트엔드 개발자를 위한 Layer Model프론트엔드 개발자를 위한 Layer Model
프론트엔드 개발자를 위한 Layer Model
 
내가요즘하는건
내가요즘하는건내가요즘하는건
내가요즘하는건
 
[0602 박민근] Direct2D
[0602 박민근] Direct2D[0602 박민근] Direct2D
[0602 박민근] Direct2D
 
프론트엔드 개발자를 위한 크롬 렌더링 성능인자 이해하기
프론트엔드 개발자를 위한 크롬 렌더링 성능인자 이해하기프론트엔드 개발자를 위한 크롬 렌더링 성능인자 이해하기
프론트엔드 개발자를 위한 크롬 렌더링 성능인자 이해하기
 
Android와 Flutter 앱 개발의 큰 차이점 5가지
Android와 Flutter 앱 개발의 큰 차이점 5가지Android와 Flutter 앱 개발의 큰 차이점 5가지
Android와 Flutter 앱 개발의 큰 차이점 5가지
 
[211]대규모 시스템 시각화 현동석김광림
[211]대규모 시스템 시각화 현동석김광림[211]대규모 시스템 시각화 현동석김광림
[211]대규모 시스템 시각화 현동석김광림
 
[111217 아꿈사연말모임] 웹소켓과온라인게임
[111217 아꿈사연말모임] 웹소켓과온라인게임[111217 아꿈사연말모임] 웹소켓과온라인게임
[111217 아꿈사연말모임] 웹소켓과온라인게임
 

More from NAVER D2

[211] 인공지능이 인공지능 챗봇을 만든다
[211] 인공지능이 인공지능 챗봇을 만든다[211] 인공지능이 인공지능 챗봇을 만든다
[211] 인공지능이 인공지능 챗봇을 만든다NAVER D2
 
[233] 대형 컨테이너 클러스터에서의 고가용성 Network Load Balancing: Maglev Hashing Scheduler i...
[233] 대형 컨테이너 클러스터에서의 고가용성 Network Load Balancing: Maglev Hashing Scheduler i...[233] 대형 컨테이너 클러스터에서의 고가용성 Network Load Balancing: Maglev Hashing Scheduler i...
[233] 대형 컨테이너 클러스터에서의 고가용성 Network Load Balancing: Maglev Hashing Scheduler i...NAVER D2
 
[215] Druid로 쉽고 빠르게 데이터 분석하기
[215] Druid로 쉽고 빠르게 데이터 분석하기[215] Druid로 쉽고 빠르게 데이터 분석하기
[215] Druid로 쉽고 빠르게 데이터 분석하기NAVER D2
 
[245]Papago Internals: 모델분석과 응용기술 개발
[245]Papago Internals: 모델분석과 응용기술 개발[245]Papago Internals: 모델분석과 응용기술 개발
[245]Papago Internals: 모델분석과 응용기술 개발NAVER D2
 
[236] 스트림 저장소 최적화 이야기: 아파치 드루이드로부터 얻은 교훈
[236] 스트림 저장소 최적화 이야기: 아파치 드루이드로부터 얻은 교훈[236] 스트림 저장소 최적화 이야기: 아파치 드루이드로부터 얻은 교훈
[236] 스트림 저장소 최적화 이야기: 아파치 드루이드로부터 얻은 교훈NAVER D2
 
[235]Wikipedia-scale Q&A
[235]Wikipedia-scale Q&A[235]Wikipedia-scale Q&A
[235]Wikipedia-scale Q&ANAVER D2
 
[244]로봇이 현실 세계에 대해 학습하도록 만들기
[244]로봇이 현실 세계에 대해 학습하도록 만들기[244]로봇이 현실 세계에 대해 학습하도록 만들기
[244]로봇이 현실 세계에 대해 학습하도록 만들기NAVER D2
 
[243] Deep Learning to help student’s Deep Learning
[243] Deep Learning to help student’s Deep Learning[243] Deep Learning to help student’s Deep Learning
[243] Deep Learning to help student’s Deep LearningNAVER D2
 
[234]Fast & Accurate Data Annotation Pipeline for AI applications
[234]Fast & Accurate Data Annotation Pipeline for AI applications[234]Fast & Accurate Data Annotation Pipeline for AI applications
[234]Fast & Accurate Data Annotation Pipeline for AI applicationsNAVER D2
 
Old version: [233]대형 컨테이너 클러스터에서의 고가용성 Network Load Balancing
Old version: [233]대형 컨테이너 클러스터에서의 고가용성 Network Load BalancingOld version: [233]대형 컨테이너 클러스터에서의 고가용성 Network Load Balancing
Old version: [233]대형 컨테이너 클러스터에서의 고가용성 Network Load BalancingNAVER D2
 
[226]NAVER 광고 deep click prediction: 모델링부터 서빙까지
[226]NAVER 광고 deep click prediction: 모델링부터 서빙까지[226]NAVER 광고 deep click prediction: 모델링부터 서빙까지
[226]NAVER 광고 deep click prediction: 모델링부터 서빙까지NAVER D2
 
[225]NSML: 머신러닝 플랫폼 서비스하기 & 모델 튜닝 자동화하기
[225]NSML: 머신러닝 플랫폼 서비스하기 & 모델 튜닝 자동화하기[225]NSML: 머신러닝 플랫폼 서비스하기 & 모델 튜닝 자동화하기
[225]NSML: 머신러닝 플랫폼 서비스하기 & 모델 튜닝 자동화하기NAVER D2
 
[224]네이버 검색과 개인화
[224]네이버 검색과 개인화[224]네이버 검색과 개인화
[224]네이버 검색과 개인화NAVER D2
 
[216]Search Reliability Engineering (부제: 지진에도 흔들리지 않는 네이버 검색시스템)
[216]Search Reliability Engineering (부제: 지진에도 흔들리지 않는 네이버 검색시스템)[216]Search Reliability Engineering (부제: 지진에도 흔들리지 않는 네이버 검색시스템)
[216]Search Reliability Engineering (부제: 지진에도 흔들리지 않는 네이버 검색시스템)NAVER D2
 
[214] Ai Serving Platform: 하루 수 억 건의 인퍼런스를 처리하기 위한 고군분투기
[214] Ai Serving Platform: 하루 수 억 건의 인퍼런스를 처리하기 위한 고군분투기[214] Ai Serving Platform: 하루 수 억 건의 인퍼런스를 처리하기 위한 고군분투기
[214] Ai Serving Platform: 하루 수 억 건의 인퍼런스를 처리하기 위한 고군분투기NAVER D2
 
[213] Fashion Visual Search
[213] Fashion Visual Search[213] Fashion Visual Search
[213] Fashion Visual SearchNAVER D2
 
[232] TensorRT를 활용한 딥러닝 Inference 최적화
[232] TensorRT를 활용한 딥러닝 Inference 최적화[232] TensorRT를 활용한 딥러닝 Inference 최적화
[232] TensorRT를 활용한 딥러닝 Inference 최적화NAVER D2
 
[242]컴퓨터 비전을 이용한 실내 지도 자동 업데이트 방법: 딥러닝을 통한 POI 변화 탐지
[242]컴퓨터 비전을 이용한 실내 지도 자동 업데이트 방법: 딥러닝을 통한 POI 변화 탐지[242]컴퓨터 비전을 이용한 실내 지도 자동 업데이트 방법: 딥러닝을 통한 POI 변화 탐지
[242]컴퓨터 비전을 이용한 실내 지도 자동 업데이트 방법: 딥러닝을 통한 POI 변화 탐지NAVER D2
 
[212]C3, 데이터 처리에서 서빙까지 가능한 하둡 클러스터
[212]C3, 데이터 처리에서 서빙까지 가능한 하둡 클러스터[212]C3, 데이터 처리에서 서빙까지 가능한 하둡 클러스터
[212]C3, 데이터 처리에서 서빙까지 가능한 하둡 클러스터NAVER D2
 
[223]기계독해 QA: 검색인가, NLP인가?
[223]기계독해 QA: 검색인가, NLP인가?[223]기계독해 QA: 검색인가, NLP인가?
[223]기계독해 QA: 검색인가, NLP인가?NAVER D2
 

More from NAVER D2 (20)

[211] 인공지능이 인공지능 챗봇을 만든다
[211] 인공지능이 인공지능 챗봇을 만든다[211] 인공지능이 인공지능 챗봇을 만든다
[211] 인공지능이 인공지능 챗봇을 만든다
 
[233] 대형 컨테이너 클러스터에서의 고가용성 Network Load Balancing: Maglev Hashing Scheduler i...
[233] 대형 컨테이너 클러스터에서의 고가용성 Network Load Balancing: Maglev Hashing Scheduler i...[233] 대형 컨테이너 클러스터에서의 고가용성 Network Load Balancing: Maglev Hashing Scheduler i...
[233] 대형 컨테이너 클러스터에서의 고가용성 Network Load Balancing: Maglev Hashing Scheduler i...
 
[215] Druid로 쉽고 빠르게 데이터 분석하기
[215] Druid로 쉽고 빠르게 데이터 분석하기[215] Druid로 쉽고 빠르게 데이터 분석하기
[215] Druid로 쉽고 빠르게 데이터 분석하기
 
[245]Papago Internals: 모델분석과 응용기술 개발
[245]Papago Internals: 모델분석과 응용기술 개발[245]Papago Internals: 모델분석과 응용기술 개발
[245]Papago Internals: 모델분석과 응용기술 개발
 
[236] 스트림 저장소 최적화 이야기: 아파치 드루이드로부터 얻은 교훈
[236] 스트림 저장소 최적화 이야기: 아파치 드루이드로부터 얻은 교훈[236] 스트림 저장소 최적화 이야기: 아파치 드루이드로부터 얻은 교훈
[236] 스트림 저장소 최적화 이야기: 아파치 드루이드로부터 얻은 교훈
 
[235]Wikipedia-scale Q&A
[235]Wikipedia-scale Q&A[235]Wikipedia-scale Q&A
[235]Wikipedia-scale Q&A
 
[244]로봇이 현실 세계에 대해 학습하도록 만들기
[244]로봇이 현실 세계에 대해 학습하도록 만들기[244]로봇이 현실 세계에 대해 학습하도록 만들기
[244]로봇이 현실 세계에 대해 학습하도록 만들기
 
[243] Deep Learning to help student’s Deep Learning
[243] Deep Learning to help student’s Deep Learning[243] Deep Learning to help student’s Deep Learning
[243] Deep Learning to help student’s Deep Learning
 
[234]Fast & Accurate Data Annotation Pipeline for AI applications
[234]Fast & Accurate Data Annotation Pipeline for AI applications[234]Fast & Accurate Data Annotation Pipeline for AI applications
[234]Fast & Accurate Data Annotation Pipeline for AI applications
 
Old version: [233]대형 컨테이너 클러스터에서의 고가용성 Network Load Balancing
Old version: [233]대형 컨테이너 클러스터에서의 고가용성 Network Load BalancingOld version: [233]대형 컨테이너 클러스터에서의 고가용성 Network Load Balancing
Old version: [233]대형 컨테이너 클러스터에서의 고가용성 Network Load Balancing
 
[226]NAVER 광고 deep click prediction: 모델링부터 서빙까지
[226]NAVER 광고 deep click prediction: 모델링부터 서빙까지[226]NAVER 광고 deep click prediction: 모델링부터 서빙까지
[226]NAVER 광고 deep click prediction: 모델링부터 서빙까지
 
[225]NSML: 머신러닝 플랫폼 서비스하기 & 모델 튜닝 자동화하기
[225]NSML: 머신러닝 플랫폼 서비스하기 & 모델 튜닝 자동화하기[225]NSML: 머신러닝 플랫폼 서비스하기 & 모델 튜닝 자동화하기
[225]NSML: 머신러닝 플랫폼 서비스하기 & 모델 튜닝 자동화하기
 
[224]네이버 검색과 개인화
[224]네이버 검색과 개인화[224]네이버 검색과 개인화
[224]네이버 검색과 개인화
 
[216]Search Reliability Engineering (부제: 지진에도 흔들리지 않는 네이버 검색시스템)
[216]Search Reliability Engineering (부제: 지진에도 흔들리지 않는 네이버 검색시스템)[216]Search Reliability Engineering (부제: 지진에도 흔들리지 않는 네이버 검색시스템)
[216]Search Reliability Engineering (부제: 지진에도 흔들리지 않는 네이버 검색시스템)
 
[214] Ai Serving Platform: 하루 수 억 건의 인퍼런스를 처리하기 위한 고군분투기
[214] Ai Serving Platform: 하루 수 억 건의 인퍼런스를 처리하기 위한 고군분투기[214] Ai Serving Platform: 하루 수 억 건의 인퍼런스를 처리하기 위한 고군분투기
[214] Ai Serving Platform: 하루 수 억 건의 인퍼런스를 처리하기 위한 고군분투기
 
[213] Fashion Visual Search
[213] Fashion Visual Search[213] Fashion Visual Search
[213] Fashion Visual Search
 
[232] TensorRT를 활용한 딥러닝 Inference 최적화
[232] TensorRT를 활용한 딥러닝 Inference 최적화[232] TensorRT를 활용한 딥러닝 Inference 최적화
[232] TensorRT를 활용한 딥러닝 Inference 최적화
 
[242]컴퓨터 비전을 이용한 실내 지도 자동 업데이트 방법: 딥러닝을 통한 POI 변화 탐지
[242]컴퓨터 비전을 이용한 실내 지도 자동 업데이트 방법: 딥러닝을 통한 POI 변화 탐지[242]컴퓨터 비전을 이용한 실내 지도 자동 업데이트 방법: 딥러닝을 통한 POI 변화 탐지
[242]컴퓨터 비전을 이용한 실내 지도 자동 업데이트 방법: 딥러닝을 통한 POI 변화 탐지
 
[212]C3, 데이터 처리에서 서빙까지 가능한 하둡 클러스터
[212]C3, 데이터 처리에서 서빙까지 가능한 하둡 클러스터[212]C3, 데이터 처리에서 서빙까지 가능한 하둡 클러스터
[212]C3, 데이터 처리에서 서빙까지 가능한 하둡 클러스터
 
[223]기계독해 QA: 검색인가, NLP인가?
[223]기계독해 QA: 검색인가, NLP인가?[223]기계독해 QA: 검색인가, NLP인가?
[223]기계독해 QA: 검색인가, NLP인가?
 

121 벡터기반 지하철 노선도 렌더링 엔진

  • 1. 벡터기반 지하철 노선도 렌더링 엔진 안덕용 과장 / 지도앱 개발팀 Naver
  • 5.  
  • 6.  
  • 7.  
  • 8. 1. SVG to Model Data
  • 13. 1.3 벡터 데이터 포멧 Easy for Designer 1. 많은 사람들이 사용하는 벡터 디자인 툴을 이용해서 쉽게 디자인 할 수 있어야 할 것 2. 디자이너가 각 벡터 오브젝트에 이름을 쉽게 명시 할 수 있을 것 Easy for Programmer 1. File Import 및 개발하기 편해야 할 것 2. 쉽게 디버깅이 가능해야 할 것 AI CDR CGM DXF EVA EMF Gerber HVIF IGES PGML Designer Easy SVG VML WMF Xar Programmer
  • 14. 1.3 벡터 데이터 포멧 SVG(Scalable Vector Graphic) : XML 기반
  • 15. 1.3 벡터 데이터 포멧 SVG(Scalable Vector Graphic) : XML 기반 1. 지하철과 같이 복잡한 SVG에 적합한 오픈 소스가 없다 2. 필요한 데이타만 Import
  • 16. 1.3 벡터 데이터 포멧 SVG(Scalable Vector Graphic) : XML 기반 1. 지하철과 같이 복잡한 SVG에 적합한 오픈 소스가 없다 2. 필요한 데이타만 Import Element 지하철 노선 비고 path line polyline polygon rect 지하철 역 circle 역 좌표 text 역 이름
  • 17. 1.4 모델 데이터 만들기 SVG File Model Data 1. Rendering Data (호선별 전체 라인) 2. Meta Data (호선별 구간 라인, 지하철 역) SVG File Rendering Data VM 2 Meta Data
  • 18. 1.4 모델 데이터 만들기 호선별 전체 라인 호선별
  • 22.  역
  • 23.  
  • 24. 1.4 모델 데이터 만들기 SVG File Data Model 호선별 전체 라인 렌더링 데이터 호선별 구간 라인 메타 데이터 지하철역
  • 25. 1.4 모델 데이터 만들기 SVG File Server Data 호선별 구간 라인 위경도 좌표 Data Model 메타 데이터 지하철역 지하철 역 이름 / ID
  • 26. 1.4 모델 데이터 만들기 SVG Processer SVG File Server Data Data Model 호선별 전체 라인 위경도 좌표 렌더링 데이터 최적화 지하철 역 이름 / ID 메타 데이터 호선별 구간 라인 지하철역
  • 27. 1.5 모델 데이터 자동화 SVG File Meta Data 호선별 전체 라인 지하철역 정보 호선별 구간 라인 노선 구간 정보 지하철역 Server Data 위경도 좌 표 지하철 역 이름 / ID SVG Processor Rendering 렌더링 최적화
  • 28. 1.5 모델 데이터 자동화 IOS Android WEB
  • 30. 2.1 Vector Rendering Engine 대표적인 지하철 노선도 렌더링 방식 Tile Bitmap One Bitmap
  • 31. 2.1 Vector Rendering Engine Bitmap Rendering 1. 서버를 통해 Bitmap을 받아오거나, Bitmap을 저장할 공간이 필요하다 2. 해상도에 따라 이미지 뭉개짐 3. 렌더링이 빠르다 Full Vector Rendering 1. 적은 용량의 벡터 데이터만 있으면 된다 2. 해상도에 전혀 상관이 없다 3. 렌더링이 느리다 Bitmap Rendering Based On Vector Model 1. 적은 용량의 벡터 데이터만 있으면 된다 2. 해상도에 따라 이미지 뭉개짐이 덜하다 3. 렌더링이 빠르다
  • 32. 2.1 Vector Rendering Engine 지하철 노선도 렌더링 방식 : 벡터 타일 방식 Rendering Vector Data
  • 33. 2.1 Vector Rendering Engine 지하철 노선도 렌더링 방식 : 벡터 타일 방식 Rendering Vector Data
  • 34. 2.1 Vector Rendering Engine 지하철 노선도 렌더링 방식 : 벡터 타일 방식
  • 35. 2.1 Vector Rendering Engine 지하철 노선도 렌더링 방식 : 벡터 타일 방식 장점 1. 적은 용량의 벡터 데이터만 있으면 된다 2. 해상도에 따라 이미지 뭉개짐이 덜하다 3. 렌더링이 빠르다 4. 화면에 보이지 않는 타일은 로딩되지 않는다 단점 1. 벡터 데이터로 타일을 하나를 만들때 소요되는 시간이 기기별로 틀리다.
  • 36. 2.1 Vector Rendering Engine Vector Model to Bitmap Tile
  • 37. 2.1 Vector Rendering Engine Vector Model to Bitmap Tile : SVGRenderer
  • 38. 2.2 Bitmap Tile Cache SoftReference / WeekReference Cache 1. Android 2.3(API9) : SoftReference / WeekReference GC 빈번 2. 즉, StrongReference 가 사라지면 바로 GC 대상 LruCache 1. LruCache는 LinkedHashMap에 의해 StrongReference 유지 2. Cache에 사용할 메모리 사이즈를 지정 (지정된 메모리 사이즈가 넘을 시, Hit가 되지 않는 것들은 제거 3. Support Library 4. http://developer.android.com/training/displaying-bitmaps/cache-bitmap.html
  • 39. 2.2 Bitmap Tile Cache Bitmap Tile Cache : Use LRU Cache Strong Reference LRU Cache
  • 40. 2.2 Bitmap Tile Cache Bitmap Tile Cache : Use LRU Cache New Strong Reference LRU Cache 로 이동
  • 41. 2.2 Bitmap Tile Cache Bitmap Tile Cache : Use LRU Cache 1. LRUCacheSize Memory : Tile 제거 2. OOM 발생시 - LRUCache clear - Bitmap.Config.RGB_565 변경
  • 42. 2.2 Bitmap Tile Cache Bitmap Tile Cache : Use LRU Cache
  • 43. 2.2 Bitmap Tile Cache Bitmap Tile Cache : Use LRU Cache
  • 45. QA