[Tween-svn] [1558] ・Google Static MapsAPIによるプレビューが表示されている場合、ダブルクリックするとGoogle Mapsを開くように

Back to archive index

svnno****@sourc***** svnno****@sourc*****
2011年 6月 23日 (木) 10:39:53 JST


Revision: 1558
          http://sourceforge.jp/projects/tween/svn/view?view=rev&revision=1558
Author:   syo68k
Date:     2011-06-23 10:39:53 +0900 (Thu, 23 Jun 2011)

Log Message:
-----------
・Google Static MapsAPIによるプレビューが表示されている場合、ダブルクリックするとGoogle Mapsを開くように
・関数名変更(CreateGoogleMapsUri→CreateGoogleStaticMapsUri)
・Geo情報からGoogle MapsのUriへ変換する関数作成(未使用)

Modified Paths:
--------------
    trunk/Tween/Foursquare.vb
    trunk/Tween/Google.vb
    trunk/Tween/Resources/ChangeLog.txt
    trunk/Tween/Thumbnail.vb


-------------- next part --------------
Modified: trunk/Tween/Foursquare.vb
===================================================================
--- trunk/Tween/Foursquare.vb	2011-06-22 12:22:35 UTC (rev 1557)
+++ trunk/Tween/Foursquare.vb	2011-06-23 01:39:53 UTC (rev 1558)
@@ -70,7 +70,7 @@
 
         If CheckInUrlsVenueCollection.ContainsKey(urlId) Then
             refText = CheckInUrlsVenueCollection(urlId).LocateInfo
-            Return (New Google).CreateGoogleMapsUri(CheckInUrlsVenueCollection(urlId))
+            Return (New Google).CreateGoogleStaticMapsUri(CheckInUrlsVenueCollection(urlId))
         End If
 
         Dim curVenue As FourSquareDataModel.Venue = Nothing
@@ -84,7 +84,7 @@
         '例外発生の場合があるため
         If Not CheckInUrlsVenueCollection.ContainsKey(urlId) Then CheckInUrlsVenueCollection.Add(urlId, curLocation)
         refText = curLocation.LocateInfo
-        Return (New Google).CreateGoogleMapsUri(curLocation)
+        Return (New Google).CreateGoogleStaticMapsUri(curLocation)
     End Function
 
     Private ReadOnly Property CreateVenueInfoText(ByVal info As FourSquareDataModel.Venue) As String

Modified: trunk/Tween/Google.vb
===================================================================
--- trunk/Tween/Google.vb	2011-06-22 12:22:35 UTC (rev 1557)
+++ trunk/Tween/Google.vb	2011-06-23 01:39:53 UTC (rev 1558)
@@ -275,12 +275,20 @@
 #End Region
 
 #Region "GoogleMaps"
+    Public Overloads Function CreateGoogleStaticMapsUri(ByVal locate As GlobalLocation) As String
+        Return CreateGoogleStaticMapsUri(locate.Latitude, locate.Longitude)
+    End Function
+
+    Public Overloads Function CreateGoogleStaticMapsUri(ByVal lat As Double, ByVal lng As Double) As String
+        Return "http://maps.google.com/maps/api/staticmap?center=" + lat.ToString + "," + lng.ToString + "&size=" + AppendSettingDialog.Instance.FoursquarePreviewWidth.ToString + "x" + AppendSettingDialog.Instance.FoursquarePreviewHeight.ToString + "&zoom=" + AppendSettingDialog.Instance.FoursquarePreviewZoom.ToString + "&markers=" + lat.ToString + "," + lng.ToString + "&sensor=false"
+    End Function
+
     Public Overloads Function CreateGoogleMapsUri(ByVal locate As GlobalLocation) As String
         Return CreateGoogleMapsUri(locate.Latitude, locate.Longitude)
     End Function
 
     Public Overloads Function CreateGoogleMapsUri(ByVal lat As Double, ByVal lng As Double) As String
-        Return "http://maps.google.com/maps/api/staticmap?center=" + lat.ToString + "," + lng.ToString + "&size=" + AppendSettingDialog.Instance.FoursquarePreviewWidth.ToString + "x" + AppendSettingDialog.Instance.FoursquarePreviewHeight.ToString + "&zoom=" + AppendSettingDialog.Instance.FoursquarePreviewZoom.ToString + "&markers=" + lat.ToString + "," + lng.ToString + "&sensor=false"
+        Return "http://maps.google.com/maps?ll=" + lat.ToString + "," + lng.ToString + "&z=" + AppendSettingDialog.Instance.FoursquarePreviewZoom.ToString + "&q=" + lat.ToString + "," + lng.ToString
     End Function
 
     Public Class GlobalLocation

Modified: trunk/Tween/Resources/ChangeLog.txt
===================================================================
--- trunk/Tween/Resources/ChangeLog.txt	2011-06-22 12:22:35 UTC (rev 1557)
+++ trunk/Tween/Resources/ChangeLog.txt	2011-06-23 01:39:53 UTC (rev 1558)
@@ -3,7 +3,7 @@
 ==== Ver 1.0.2.0(2011/06/16)
  * NEW: Foursquare連携でチェックイン時のツイート内URLから地図サムネイル画像を表示。設定でサムネイル表示有効切り替え。吹き出しでVenue情報表示
  * NEW: 設定のユーザー指定URLで{status}を使用出来るように。StatusIDに変換されます
- * NEW: ツイートに位置情報が付加されている際、GoogleMapsのサムネイル画像を表示。画像ダブルクリック時のリンクは固定画像を指している問題あり
+ * NEW: ツイートに位置情報が付加されている際、GoogleMapsのサムネイル画像を表示。画像ダブルクリックでGoogle Mapを表示。
  * CHG: ツイート情報(返信先あり、Protected、位置情報、マーク)をアイコン表示に変更
  * CHG: 画像サムネイル表示、画像投稿のPlixi→Lockerz変更対応
  * CHG: UserStreamの反映間隔設定を廃止

Modified: trunk/Tween/Thumbnail.vb
===================================================================
--- trunk/Tween/Thumbnail.vb	2011-06-22 12:22:35 UTC (rev 1557)
+++ trunk/Tween/Thumbnail.vb	2011-06-23 01:39:53 UTC (rev 1558)
@@ -2370,7 +2370,7 @@
     Private Function TwitterGeo_GetUrl(ByVal args As GetUrlArgs) As Boolean
         ' TODO URL判定処理を記述
         If args.geoInfo IsNot Nothing AndAlso (args.geoInfo.Latitude <> 0 OrElse args.geoInfo.Longitude <> 0) Then
-            Dim url As String = (New Google).CreateGoogleMapsUri(args.geoInfo)
+            Dim url As String = (New Google).CreateGoogleStaticMapsUri(args.geoInfo)
             args.imglist.Add(New KeyValuePair(Of String, String)(url, url))
             Return True
         End If
@@ -2396,8 +2396,24 @@
             Return False
         End If
         ' 成功した場合はURLに対応する画像、ツールチップテキストを登録
-        args.pics.Add(New KeyValuePair(Of String, Image)(args.url.Key, img))
-        args.tooltipText.Add(New KeyValuePair(Of String, String)(args.url.Key, ""))
+        Dim url As String = args.url.Key
+        Try
+            ' URLをStaticMapAPIから通常のURLへ変換
+            ' 仕様:ズーム率、サムネイルサイズの設定は無視する
+            ' 参考:http://imakoko.didit.jp/imakoko_html/memo/parameters_google.html
+            ' サンプル
+            ' static版 http://maps.google.com/maps/api/staticmap?center=35.16959869,136.93813205&size=300x300&zoom=15&markers=35.16959869,136.93813205&sensor=false
+            ' 通常URL  http://maps.google.com/maps?ll=35.16959869,136.93813205&size=300x300&zoom=15&markers=35.16959869,136.93813205&sensor=false
+
+            url = url.Replace("/maps/api/staticmap?center=", "?ll=")
+            url = url.Replace("&markers=", "&q=")
+            url = Regex.Replace(url, "&size=\d+x\d+&zoom=\d+", "")
+            url = url.Replace("&sensor=false", "")
+        Catch ex As Exception
+            url = args.url.Key
+        End Try
+        args.pics.Add(New KeyValuePair(Of String, Image)(url, img))
+        args.tooltipText.Add(New KeyValuePair(Of String, String)(url, ""))
         Return True
     End Function
 #End Region



Tween-svn メーリングリストの案内
Back to archive index