Maison > Applet WeChat > Développement WeChat > Développement de la plateforme publique WeChat : description de l'interface liée à la carte

Développement de la plateforme publique WeChat : description de l'interface liée à la carte

高洛峰
Libérer: 2017-02-27 13:31:49
original
2207 Les gens l'ont consulté

Afin de faciliter le développement d'applications LBS, le SDK encapsule les formules de calcul et les interfaces cartographiques couramment utilisées de Baidu et Google.

Calculs couramment utilisés :

Utilisé pour calculer la distance en ligne droite entre deux points de coordonnées : Senparc.Weixin.MP.Helpers.Distance(double n1, double e1, double n2, double e2 )

Obtenez la différence dimensionnelle en fonction de la distance : Senparc.Weixin.MP.Helpers.GetLatitudeDifference(double km)

Obtenez la différence de longitude en fonction de la distance : Senparc.Weixin.MP.Helpers. GetLongitudeDifference(double km)

Classe API Baidu : Senparc.Weixin.MP.Helpers.BaiduMapHelper

Générer une carte statique Baidu URL : BaiduMapHelper.GetBaiduStaticMap(double lng, double lat, int scale, int zoom, IList

L'adresse finale générée est la suivante :

http://maps.googleapis.com/maps/ api/staticmap?center=&zoom =13&size=640x640&maptype=roadmap&format=jpg&sensor=false&lingual=zh&&markers=color:red|label:O|31.285774,120.59761&markers=color:blue|label:T|31.289774,120.59791


L'URL générée peut être placée directement dans , ou directement affectée à Article.PicUrl de ResponseMessageNews.

correspond à l'API GoogleMap et offre une expérience de fonctionnement cohérente dans le SDK.

Classe API GoogleMap : Senparc.Weixin.MP.Helpers.GoogleMapHelper

Générer une carte statique Baidu URL : GoogleMapHelper.GetGoogleStaticMap(int scale, IList MarkersList, string size = "640x640" )

L'adresse générée est la suivante :

http://maps.googleapis.com/maps/api/staticmap?center=&zoom=&size=640x640&maptype=roadmap&format=jpg&sensor=false&langage= zh&&markers= color:red|label:O|31.285774,120.59761&markers=color:blue|label:T|31.289774,120.59791


Combiné avec le SDk , nous pouvons Lorsque l'utilisateur envoie un message de localisation, utiliser l'interface cartographique pour exécuter certaines fonctions. Par exemple, nous traitons le message dans la pratique OnLocationRequest de MessageHandler :

/// <summary>
   /// 处理位置请求
   /// </summary>
   /// <param name="requestMessage"></param>
   /// <returns></returns>
   public override IResponseMessageBase OnLocationRequest(RequestMessageLocation requestMessage)
   {
       var responseMessage = ResponseMessageBase.CreateFromRequestMessage<ResponseMessageNews>(requestMessage);
 
       var markersList = new List<GoogleMapMarkers>();
       markersList.Add(new GoogleMapMarkers()
       {
           X = requestMessage.Location_X,
           Y = requestMessage.Location_Y,
           Color = "red",
           Label = "S",
           Size = GoogleMapMarkerSize.Default,
       });
       var mapSize = "480x600";
       var mapUrl = GoogleMapHelper.GetGoogleStaticMap(19 /*requestMessage.Scale*//*微信和GoogleMap的Scale不一致,这里建议使用固定值*/,
                                                       markersList, mapSize);
       responseMessage.Articles.Add(new Article()
       {
           Description = string.Format("您刚才发送了地理位置信息。Location_X:{0},Location_Y:{1},Scale:{2},标签:{3}",
                         requestMessage.Location_X, requestMessage.Location_Y,
                         requestMessage.Scale, requestMessage.Label),
           PicUrl = mapUrl,
           Title = "定位地点周边地图",
           Url = mapUrl
       });
       responseMessage.Articles.Add(new Article()
       {
           Title = "微信公众平台SDK 官网链接",
           Description = "Senparc.Weixin.MK SDK地址",
           PicUrl = "http://weixin.senparc.com/images/logo.jpg",
           Url = "http://weixin.senparc.com"
       });
Copier après la connexion
return responseMessage;<br> }
Copier après la connexion

Dans le développement réel. processus, en plus d'afficher l'emplacement Pour information, nous pouvons également récupérer les points les plus proches en fonction de l'emplacement actuel de l'utilisateur, les afficher dans des articles et calculer la distance.

Pour plus de développement de la plateforme publique WeChat : instructions d'interface liées à la carte et articles connexes, veuillez faire attention au site Web PHP chinois !


Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal