SlideShare a Scribd company logo
1 of 49
Download to read offline
GeoHex
               Part 1   GeoHex
               Part




                          @sa2da #geohex
                           http://geohex.net/

2010   9   4
Part 1   GeoHex




2010   9   4
GeoHex



2010   9   4
Hex



2010   9   4
CC BY-SA Original uploader was Merdal at tr.wikipedia




                                                                       Plate XIX of "Studies among the Snow Crystals ... " by Wilson Bentley,
                                                                       "The Snowflake Man." From Annual Summary of the "Monthly Weather
                                                                       Review" for 1902.

2010   9   4
1          3
                   (Regular Tessellation)




                              via. wikipedia




2010   9   4
GeoHex



2010   9   4
2010   9   4
2010   9   4
※GoogleMaps
2010   9   4
GeoHex


                        VS


               GeoHex        GeoHex

2010   9   4
01




                   →       UI




               ↑
                       ↑
2010   9   4
02




                  →




               1 : 1.41   1:1
2010   9   4
03




               →




2010   9   4
04




                         →GoogleMaps




               Level:0                 Level:24
2010   9   4
05




                 →
                 →URL        Twitter /




               20 byte
                         3 - 11 byte
2010   9   4
06




                          →




               function getDistance(_x1,_y1, _x2,_y2)
               {
                  _x2 = _x2 * Math.PI / 180.0;
                  _y2 = _y2 * Math.PI / 180.0;
                  _x1 = _x1 * Math.PI / 180.0;
                  _y1 = _y1 * Math.PI / 180.0;

                   var dx=_x2-_x1;
                   var dy=_y2-_y1;
                   var A = 6378137; //                  (6378137m)




                                                                                                  A.x - B.x
                   var x = A * (dx) * Math.cos( _y1 );
                   var y = A * (dy);
                   var old_exp = exp;
                   dy=Math.log(Math.tan(Math.PI/4+_y2/2))-Math.log(Math.tan(Math.PI/4+_y1/2));
                   var rad=((dy>=0) ? 1:-1)*Math.acos(dx/Math.sqrt(dx*dx+dy*dy))*180.0/Math.PI;
                   var tmpdist = Math.round(Math.sqrt(x*x + y*y));
                   totaldist = totaldist + tmpdist;
                   distcnt();
               }



2010   9   4
07




                             →




                35.661960,139.697900
                                          132KpxU
                35.660093,139.701741        2
                         .
                         .                  3
                         .
                         .                  2
                         .                   .
                         .                   .




               20 × (n) byte           7 + (n) byte
2010   9   4
08


                               ex) for

                           →



                                         sa2da

                   sa2da




               pinpoint
                                  vague
2010   9   4
GeoHex




2010   9   4
01




                          →




               kokogiko       sa2da




2010   9   4
02




               →




2010   9   4
03




               →60
               →AR




2010   9   4
04




               →




2010   9   4
05




               →




2010   9   4
06


                                  ×GeoHex
                         →GPS          GeoHex




                       11/40




               START                            GOAL
                               1.4km            5.2km
2010   9   4
GeoHex




2010   9   4
OK
               Creative Commons License




2010   9   4
Perl
                                           kokogiko
                                           Ruby / GitHub
                                           hal_sk
                                           AS3
                                           calcul_omikan

               http://github.com/geohex/               Android
                                                       GeoHexV1
2010   9   4
PostGIS
                         ...etc
2010   9   4
Hex




                     GeoHex   GIS




2010   9   4
Part




2010   9   4
URL: http://geohex.net
2010   9   4
[X,Y]
                   4592/-1633




                 [X,Y]
               4591/-1633         [X,Y]
                                4592/-1634




2010   9   4
[X,Y]
                   4592/-1633




                 [X,Y]
               4591/-1633         [X,Y]
                                4592/-1634




2010   9   4
[X,Y]
                   4592/-1633




                 [X,Y]
               4591/-1633         [X,Y]
                                4592/-1634




2010   9   4
[X,Y]
                   4592/-1633




                 [X,Y]
               4591/-1633         [X,Y]
                                4592/-1634




                  X                          Y
2010   9   4
[X,Y]
                      4592/-1634



               [X,Y] 2296/-817




2010   9   4
17m             67m


               x:168px
               y:148px

                         135m


                270m            1.1km




2010   9   4
299909,-107087
                                     4          19 - 15
                               /
               18744.312,-6692.9375
               h_x                 h_y
               18744    ,-6692
                   h_a        h_b
                   0.312,    -0.9375
                     if(h_b>-h_a){
                         if((h_b<2*h_a)&&(h_b>0.5*h_a)){
                             x = h_x + 1;
                             h = h_y + 1;
                         }
                     }else if(h_b<-h_a+1){
                         if((h_b>(2*h_a)-1)&&(h_b<(0.5*h_a)+0.5)){
                             x = h_x;
                             y = h_y;
                         }
                     }else{
                         x = h_x + Math.round(h_a);
                         Y = h_y + Math.round(h_b);
                     }



2010   9   4
Y                                     )
                       (+)                        (+
                          ←             X
                                    →Y→
                             (-   )←
                                            (-)
                   X


               (0,0)
2010   9   4
:
                               +85

                               - 85




               : +180   -180
2010   9   4
WGS84    2                                                   7   WGS84
                                        3   Google Mercator




                                            1
                                                                                            8
                                4




               4   Google Mercator
                                                              6   Google Mercator



                                    5   Hex

2010   9   4
/

               [LEVEL] 16                                [ZONE] quhN0Cn
               [X,Y] 37489/-13386


                                             uhN0Cn                                 Y:-13386
       X:37489
                                                                         13386*2+1
                   37489*2
                         3600*20+60*49+38                3600*7+60*26+13
                                        +1

                   abcdefghijklmnopqrstuvwxyz0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ



2010   9   4
http://geohex.net/{Hex                 }/




                     ↑   http://geohex.net/quhN0Cn/

2010   9   4
1/3
                                    HTML
           GeoHex

           <script src="http://geohex.net/hex_v2.js" type="text/
           javascript" content="text/html; charset=Shift-JIS"></script>
           PROJ4    JS

           <script src="http://geohex.net/lib/proj4js.js" content="text/
           html; charset=shift-jis"></script>
           GoogleMapsAPI V3   API

           <script type="text/javascript" src="http://maps.google.com/
           maps/api/js?sensor=false"></script>

2010   9   4
2/3
           PROJ4js
           PROJ4
           initProj4js();




           ※




2010   9   4
3/3

                    →Hex
           getZoneByLocation(lattude, longitude, level);

           Hex       →Hex
           getZoneByCode(code);

           Hex              →Hex
           drawHex(object ,linecolor,fillcolor,infowindow[1:on,0:off]);


           Hex
           -code:
           -lat:
           -lon:
           -x:                     X
           -y:                     Y



2010   9   4
GeoHex

               GeoHex                       ...etc


                         @sa2da #geohex
                         sa2da@geohex.net

2010   9   4

More Related Content

What's hot

New market leader__pre_intermediate_course_book_0_238070
New market leader__pre_intermediate_course_book_0_238070New market leader__pre_intermediate_course_book_0_238070
New market leader__pre_intermediate_course_book_0_238070Mauricio Castro Jara
 
情報共有は、なぜGoogle Docsじゃなく、 Confluenceなのか。
情報共有は、なぜGoogle Docsじゃなく、 Confluenceなのか。情報共有は、なぜGoogle Docsじゃなく、 Confluenceなのか。
情報共有は、なぜGoogle Docsじゃなく、 Confluenceなのか。Narichika Kajihara
 
テストとリファクタリングに関する深い方法論 #wewlc_jp
テストとリファクタリングに関する深い方法論 #wewlc_jpテストとリファクタリングに関する深い方法論 #wewlc_jp
テストとリファクタリングに関する深い方法論 #wewlc_jpkyon mm
 
初めての Spanner 移行
初めての Spanner 移行初めての Spanner 移行
初めての Spanner 移行Igarashi Toru
 
30歳過ぎてもエンジニアでいるためにやったこと
30歳過ぎてもエンジニアでいるためにやったこと30歳過ぎてもエンジニアでいるためにやったこと
30歳過ぎてもエンジニアでいるためにやったことonozaty
 
FlutterでBLEを
いい感じにする
FlutterでBLEを
いい感じにするFlutterでBLEを
いい感じにする
FlutterでBLEを
いい感じにするchigichan24
 
Fundamentals of DevOps for Data Testing Course - Module 2
Fundamentals of DevOps for Data Testing Course - Module 2Fundamentals of DevOps for Data Testing Course - Module 2
Fundamentals of DevOps for Data Testing Course - Module 2MichaelCalabrese20
 
Lispmeetup #53 PythonベースのLisp方言、 Hyのすすめ
Lispmeetup #53 PythonベースのLisp方言、 HyのすすめLispmeetup #53 PythonベースのLisp方言、 Hyのすすめ
Lispmeetup #53 PythonベースのLisp方言、 HyのすすめSatoshi imai
 
AI Restart 2023: Sara Polak - Využití umělé inteligence v archeologii a k čem...
AI Restart 2023: Sara Polak - Využití umělé inteligence v archeologii a k čem...AI Restart 2023: Sara Polak - Využití umělé inteligence v archeologii a k čem...
AI Restart 2023: Sara Polak - Využití umělé inteligence v archeologii a k čem...Taste
 
Interchange 1 3rd ed student book
Interchange 1 3rd ed   student bookInterchange 1 3rd ed   student book
Interchange 1 3rd ed student bookLeila Belmar
 
Crawling, indexation & the impact on performance | Brighton SEO
Crawling, indexation & the impact on performance | Brighton SEOCrawling, indexation & the impact on performance | Brighton SEO
Crawling, indexation & the impact on performance | Brighton SEOMartin Sean Fennon
 
RubyとRのおいしい関係
RubyとRのおいしい関係RubyとRのおいしい関係
RubyとRのおいしい関係sady_nitro
 
SSC School Certificate
SSC School CertificateSSC School Certificate
SSC School CertificateAqueel Ahmed
 
SEO Restart 2023: Zdeněk Dvořák aka Linki - Slabiny Ahrefs. Jaké jsou? A co s...
SEO Restart 2023: Zdeněk Dvořák aka Linki - Slabiny Ahrefs. Jaké jsou? A co s...SEO Restart 2023: Zdeněk Dvořák aka Linki - Slabiny Ahrefs. Jaké jsou? A co s...
SEO Restart 2023: Zdeněk Dvořák aka Linki - Slabiny Ahrefs. Jaké jsou? A co s...Taste
 
[Gree] グリーのソーシャルゲームにおける機械学習活用事例
[Gree] グリーのソーシャルゲームにおける機械学習活用事例[Gree] グリーのソーシャルゲームにおける機械学習活用事例
[Gree] グリーのソーシャルゲームにおける機械学習活用事例Takashi Suzuki
 
データの価値を最大化させるためのデザイン~データビジュアライゼーションの方法~ #devsumi 17-E-2
データの価値を最大化させるためのデザイン~データビジュアライゼーションの方法~ #devsumi 17-E-2データの価値を最大化させるためのデザイン~データビジュアライゼーションの方法~ #devsumi 17-E-2
データの価値を最大化させるためのデザイン~データビジュアライゼーションの方法~ #devsumi 17-E-2Yahoo!デベロッパーネットワーク
 
【SED】勉強会 第5回ソーシャルゲームの行動解析
【SED】勉強会 第5回ソーシャルゲームの行動解析【SED】勉強会 第5回ソーシャルゲームの行動解析
【SED】勉強会 第5回ソーシャルゲームの行動解析zyanki
 

What's hot (20)

New market leader__pre_intermediate_course_book_0_238070
New market leader__pre_intermediate_course_book_0_238070New market leader__pre_intermediate_course_book_0_238070
New market leader__pre_intermediate_course_book_0_238070
 
情報共有は、なぜGoogle Docsじゃなく、 Confluenceなのか。
情報共有は、なぜGoogle Docsじゃなく、 Confluenceなのか。情報共有は、なぜGoogle Docsじゃなく、 Confluenceなのか。
情報共有は、なぜGoogle Docsじゃなく、 Confluenceなのか。
 
テストとリファクタリングに関する深い方法論 #wewlc_jp
テストとリファクタリングに関する深い方法論 #wewlc_jpテストとリファクタリングに関する深い方法論 #wewlc_jp
テストとリファクタリングに関する深い方法論 #wewlc_jp
 
初めての Spanner 移行
初めての Spanner 移行初めての Spanner 移行
初めての Spanner 移行
 
30歳過ぎてもエンジニアでいるためにやったこと
30歳過ぎてもエンジニアでいるためにやったこと30歳過ぎてもエンジニアでいるためにやったこと
30歳過ぎてもエンジニアでいるためにやったこと
 
FlutterでBLEを
いい感じにする
FlutterでBLEを
いい感じにするFlutterでBLEを
いい感じにする
FlutterでBLEを
いい感じにする
 
Fundamentals of DevOps for Data Testing Course - Module 2
Fundamentals of DevOps for Data Testing Course - Module 2Fundamentals of DevOps for Data Testing Course - Module 2
Fundamentals of DevOps for Data Testing Course - Module 2
 
ミリシタを支える GAE/Go
ミリシタを支える GAE/Goミリシタを支える GAE/Go
ミリシタを支える GAE/Go
 
Lispmeetup #53 PythonベースのLisp方言、 Hyのすすめ
Lispmeetup #53 PythonベースのLisp方言、 HyのすすめLispmeetup #53 PythonベースのLisp方言、 Hyのすすめ
Lispmeetup #53 PythonベースのLisp方言、 Hyのすすめ
 
AI Restart 2023: Sara Polak - Využití umělé inteligence v archeologii a k čem...
AI Restart 2023: Sara Polak - Využití umělé inteligence v archeologii a k čem...AI Restart 2023: Sara Polak - Využití umělé inteligence v archeologii a k čem...
AI Restart 2023: Sara Polak - Využití umělé inteligence v archeologii a k čem...
 
Interchange 1 3rd ed student book
Interchange 1 3rd ed   student bookInterchange 1 3rd ed   student book
Interchange 1 3rd ed student book
 
Crawling, indexation & the impact on performance | Brighton SEO
Crawling, indexation & the impact on performance | Brighton SEOCrawling, indexation & the impact on performance | Brighton SEO
Crawling, indexation & the impact on performance | Brighton SEO
 
RubyとRのおいしい関係
RubyとRのおいしい関係RubyとRのおいしい関係
RubyとRのおいしい関係
 
SSC School Certificate
SSC School CertificateSSC School Certificate
SSC School Certificate
 
SPAを選択した理由とその結果 ~Reactを添えて~
SPAを選択した理由とその結果 ~Reactを添えて~SPAを選択した理由とその結果 ~Reactを添えて~
SPAを選択した理由とその結果 ~Reactを添えて~
 
SEO Restart 2023: Zdeněk Dvořák aka Linki - Slabiny Ahrefs. Jaké jsou? A co s...
SEO Restart 2023: Zdeněk Dvořák aka Linki - Slabiny Ahrefs. Jaké jsou? A co s...SEO Restart 2023: Zdeněk Dvořák aka Linki - Slabiny Ahrefs. Jaké jsou? A co s...
SEO Restart 2023: Zdeněk Dvořák aka Linki - Slabiny Ahrefs. Jaké jsou? A co s...
 
[Gree] グリーのソーシャルゲームにおける機械学習活用事例
[Gree] グリーのソーシャルゲームにおける機械学習活用事例[Gree] グリーのソーシャルゲームにおける機械学習活用事例
[Gree] グリーのソーシャルゲームにおける機械学習活用事例
 
データの価値を最大化させるためのデザイン~データビジュアライゼーションの方法~ #devsumi 17-E-2
データの価値を最大化させるためのデザイン~データビジュアライゼーションの方法~ #devsumi 17-E-2データの価値を最大化させるためのデザイン~データビジュアライゼーションの方法~ #devsumi 17-E-2
データの価値を最大化させるためのデザイン~データビジュアライゼーションの方法~ #devsumi 17-E-2
 
【SED】勉強会 第5回ソーシャルゲームの行動解析
【SED】勉強会 第5回ソーシャルゲームの行動解析【SED】勉強会 第5回ソーシャルゲームの行動解析
【SED】勉強会 第5回ソーシャルゲームの行動解析
 
GraphQLでフロントエンドの複雑性とたたかう
GraphQLでフロントエンドの複雑性とたたかうGraphQLでフロントエンドの複雑性とたたかう
GraphQLでフロントエンドの複雑性とたたかう
 

More from Tadayasu Sasada

ココが変わったよ! iOS6.1MAP
ココが変わったよ! iOS6.1MAPココが変わったよ! iOS6.1MAP
ココが変わったよ! iOS6.1MAPTadayasu Sasada
 
ここがヘンだよ! iOS6MAP
ここがヘンだよ! iOS6MAPここがヘンだよ! iOS6MAP
ここがヘンだよ! iOS6MAPTadayasu Sasada
 
HTML5勉強会#23_GeoHex
HTML5勉強会#23_GeoHexHTML5勉強会#23_GeoHex
HTML5勉強会#23_GeoHexTadayasu Sasada
 
GeoHex LT at FOSS4G 2010 Tokyo
GeoHex LT at FOSS4G 2010 Tokyo GeoHex LT at FOSS4G 2010 Tokyo
GeoHex LT at FOSS4G 2010 Tokyo Tadayasu Sasada
 

More from Tadayasu Sasada (7)

ココが変わったよ! iOS6.1MAP
ココが変わったよ! iOS6.1MAPココが変わったよ! iOS6.1MAP
ココが変わったよ! iOS6.1MAP
 
ここがヘンだよ! iOS6MAP
ここがヘンだよ! iOS6MAPここがヘンだよ! iOS6MAP
ここがヘンだよ! iOS6MAP
 
HTML5勉強会#23_GeoHex
HTML5勉強会#23_GeoHexHTML5勉強会#23_GeoHex
HTML5勉強会#23_GeoHex
 
GeoHex LT at FOSS4G 2010 Tokyo
GeoHex LT at FOSS4G 2010 Tokyo GeoHex LT at FOSS4G 2010 Tokyo
GeoHex LT at FOSS4G 2010 Tokyo
 
About GeoHex
About GeoHexAbout GeoHex
About GeoHex
 
Geohex v2 at GMS_nagoya
Geohex v2 at GMS_nagoyaGeohex v2 at GMS_nagoya
Geohex v2 at GMS_nagoya
 
Geohex at Off4g2009
Geohex at Off4g2009Geohex at Off4g2009
Geohex at Off4g2009
 

Recently uploaded

Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
APIForce Zurich 5 April Automation LPDG
APIForce Zurich 5 April  Automation LPDGAPIForce Zurich 5 April  Automation LPDG
APIForce Zurich 5 April Automation LPDGMarianaLemus7
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhisoniya singh
 
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxMaking_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxnull - The Open Security Community
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 

Recently uploaded (20)

Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
APIForce Zurich 5 April Automation LPDG
APIForce Zurich 5 April  Automation LPDGAPIForce Zurich 5 April  Automation LPDG
APIForce Zurich 5 April Automation LPDG
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
 
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxMaking_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Vulnerability_Management_GRC_by Sohang Sengupta.pptx
Vulnerability_Management_GRC_by Sohang Sengupta.pptxVulnerability_Management_GRC_by Sohang Sengupta.pptx
Vulnerability_Management_GRC_by Sohang Sengupta.pptx
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 

Introduction to GeoHex and its applications

  • 1. GeoHex Part 1 GeoHex Part @sa2da #geohex http://geohex.net/ 2010 9 4
  • 2. Part 1 GeoHex 2010 9 4
  • 4. Hex 2010 9 4
  • 5. CC BY-SA Original uploader was Merdal at tr.wikipedia Plate XIX of "Studies among the Snow Crystals ... " by Wilson Bentley, "The Snowflake Man." From Annual Summary of the "Monthly Weather Review" for 1902. 2010 9 4
  • 6. 1 3 (Regular Tessellation) via. wikipedia 2010 9 4
  • 8. 2010 9 4
  • 9. 2010 9 4
  • 11. GeoHex VS GeoHex GeoHex 2010 9 4
  • 12. 01 → UI ↑ ↑ 2010 9 4
  • 13. 02 → 1 : 1.41 1:1 2010 9 4
  • 14. 03 → 2010 9 4
  • 15. 04 →GoogleMaps Level:0 Level:24 2010 9 4
  • 16. 05 → →URL Twitter / 20 byte 3 - 11 byte 2010 9 4
  • 17. 06 → function getDistance(_x1,_y1, _x2,_y2) { _x2 = _x2 * Math.PI / 180.0; _y2 = _y2 * Math.PI / 180.0; _x1 = _x1 * Math.PI / 180.0; _y1 = _y1 * Math.PI / 180.0; var dx=_x2-_x1; var dy=_y2-_y1; var A = 6378137; // (6378137m) A.x - B.x var x = A * (dx) * Math.cos( _y1 ); var y = A * (dy); var old_exp = exp; dy=Math.log(Math.tan(Math.PI/4+_y2/2))-Math.log(Math.tan(Math.PI/4+_y1/2)); var rad=((dy>=0) ? 1:-1)*Math.acos(dx/Math.sqrt(dx*dx+dy*dy))*180.0/Math.PI; var tmpdist = Math.round(Math.sqrt(x*x + y*y)); totaldist = totaldist + tmpdist; distcnt(); } 2010 9 4
  • 18. 07 → 35.661960,139.697900 132KpxU 35.660093,139.701741 2 . . 3 . . 2 . . . . 20 × (n) byte 7 + (n) byte 2010 9 4
  • 19. 08 ex) for → sa2da sa2da pinpoint vague 2010 9 4
  • 20. GeoHex 2010 9 4
  • 21. 01 → kokogiko sa2da 2010 9 4
  • 22. 02 → 2010 9 4
  • 23. 03 →60 →AR 2010 9 4
  • 24. 04 → 2010 9 4
  • 25. 05 → 2010 9 4
  • 26. 06 ×GeoHex →GPS GeoHex 11/40 START GOAL 1.4km 5.2km 2010 9 4
  • 27. GeoHex 2010 9 4
  • 28. OK Creative Commons License 2010 9 4
  • 29. Perl kokogiko Ruby / GitHub hal_sk AS3 calcul_omikan http://github.com/geohex/ Android GeoHexV1 2010 9 4
  • 30. PostGIS ...etc 2010 9 4
  • 31. Hex GeoHex GIS 2010 9 4
  • 32. Part 2010 9 4
  • 34. [X,Y] 4592/-1633 [X,Y] 4591/-1633 [X,Y] 4592/-1634 2010 9 4
  • 35. [X,Y] 4592/-1633 [X,Y] 4591/-1633 [X,Y] 4592/-1634 2010 9 4
  • 36. [X,Y] 4592/-1633 [X,Y] 4591/-1633 [X,Y] 4592/-1634 2010 9 4
  • 37. [X,Y] 4592/-1633 [X,Y] 4591/-1633 [X,Y] 4592/-1634 X Y 2010 9 4
  • 38. [X,Y] 4592/-1634 [X,Y] 2296/-817 2010 9 4
  • 39. 17m 67m x:168px y:148px 135m 270m 1.1km 2010 9 4
  • 40. 299909,-107087 4 19 - 15 / 18744.312,-6692.9375 h_x h_y 18744 ,-6692 h_a h_b 0.312, -0.9375 if(h_b>-h_a){ if((h_b<2*h_a)&&(h_b>0.5*h_a)){ x = h_x + 1; h = h_y + 1; } }else if(h_b<-h_a+1){ if((h_b>(2*h_a)-1)&&(h_b<(0.5*h_a)+0.5)){ x = h_x; y = h_y; } }else{ x = h_x + Math.round(h_a); Y = h_y + Math.round(h_b); } 2010 9 4
  • 41. Y ) (+) (+ ← X →Y→ (- )← (-) X (0,0) 2010 9 4
  • 42. : +85 - 85 : +180 -180 2010 9 4
  • 43. WGS84 2 7 WGS84 3 Google Mercator 1 8 4 4 Google Mercator 6 Google Mercator 5 Hex 2010 9 4
  • 44. / [LEVEL] 16 [ZONE] quhN0Cn [X,Y] 37489/-13386 uhN0Cn Y:-13386 X:37489 13386*2+1 37489*2 3600*20+60*49+38 3600*7+60*26+13 +1 abcdefghijklmnopqrstuvwxyz0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ 2010 9 4
  • 45. http://geohex.net/{Hex }/ ↑ http://geohex.net/quhN0Cn/ 2010 9 4
  • 46. 1/3 HTML GeoHex <script src="http://geohex.net/hex_v2.js" type="text/ javascript" content="text/html; charset=Shift-JIS"></script> PROJ4 JS <script src="http://geohex.net/lib/proj4js.js" content="text/ html; charset=shift-jis"></script> GoogleMapsAPI V3 API <script type="text/javascript" src="http://maps.google.com/ maps/api/js?sensor=false"></script> 2010 9 4
  • 47. 2/3 PROJ4js PROJ4 initProj4js(); ※ 2010 9 4
  • 48. 3/3 →Hex getZoneByLocation(lattude, longitude, level); Hex →Hex getZoneByCode(code); Hex →Hex drawHex(object ,linecolor,fillcolor,infowindow[1:on,0:off]); Hex -code: -lat: -lon: -x: X -y: Y 2010 9 4
  • 49. GeoHex GeoHex ...etc @sa2da #geohex sa2da@geohex.net 2010 9 4