From 6bc17d181b0d0d057875bbffe233998d71182fd5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=91=A3=E5=AE=8F=E5=AE=87?= Date: Fri, 21 Feb 2020 22:21:34 +0800 Subject: [PATCH 1/4] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E4=BA=86bug=20=E3=80=90?= =?UTF-8?q?=E5=9C=A8=E7=BA=BF=E8=BD=A6=E8=BE=86=E3=80=91=E6=AF=8F=E6=AC=A1?= =?UTF-8?q?=E5=90=AF=E5=8A=A8=EF=BC=8C=E5=9C=A8=E7=BA=BF=E8=BD=A6=E8=BE=86?= =?UTF-8?q?=E5=8D=A1=E7=89=87=E9=83=BD=E4=BC=9A=E9=80=89=E6=8B=A9=E4=B8=80?= =?UTF-8?q?=E8=BE=86=E8=BD=A6=E6=98=BE=E7=A4=BA=EF=BC=8C=E4=BD=86=E6=98=AF?= =?UTF-8?q?=E8=BF=99=E8=BE=86=E8=BD=A6=E6=A0=B9=E6=9C=AC=E4=B8=8D=E5=9C=A8?= =?UTF-8?q?=E5=91=A8=E8=BE=B9=EF=BC=8CACCON=E5=90=8E=E5=BA=94=E5=BD=93?= =?UTF-8?q?=E9=BB=98=E8=AE=A4=E4=B8=8D=E6=98=BE=E7=A4=BA=E6=9F=90=E4=B8=80?= =?UTF-8?q?=E8=BD=A6=E8=BE=86=E7=9A=84=E5=9C=A8=E7=BA=BF=E8=BD=A6=E8=BE=86?= =?UTF-8?q?=E5=8D=A1=E7=89=87=EF=BC=8C=E6=88=96=E8=80=85=E9=80=89=E5=8F=96?= =?UTF-8?q?=E6=9C=80=E8=BF=91=E8=BD=A6=E8=BE=86=E7=9A=84=E5=9C=A8=E7=BA=BF?= =?UTF-8?q?=E8=BD=A6=E8=BE=86=E5=8D=A1=E7=89=87=E4=B9=9F=E8=A1=8C=20http:/?= =?UTF-8?q?/jira.zhidaohulian.com/browse/UI-372=3Fjql=3Dproject%20%3D%20UI?= =?UTF-8?q?%20AND%20assignee%20in%20(donghongyu)%20ORDER%20BY%20priority%2?= =?UTF-8?q?0DESC%2C%20updated%20DESC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../module/service/MarkerServiceHandler.java | 2 +- .../service/marker/MapMarkerManager.java | 25 +++++++++++++------ 2 files changed, 19 insertions(+), 8 deletions(-) diff --git a/modules/mogo-module-service/src/main/java/com/mogo/module/service/MarkerServiceHandler.java b/modules/mogo-module-service/src/main/java/com/mogo/module/service/MarkerServiceHandler.java index fca2cc564e..c5b640fc98 100644 --- a/modules/mogo-module-service/src/main/java/com/mogo/module/service/MarkerServiceHandler.java +++ b/modules/mogo-module-service/src/main/java/com/mogo/module/service/MarkerServiceHandler.java @@ -56,7 +56,7 @@ public class MarkerServiceHandler { mMarkerManager = mMapService.getMarkerManager(context); mNavi = mMapService.getNavi(context); mMapUIController = mMapService.getMapUIController(); - mLocationClient = mMapService.getLocationClient(context); + mLocationClient = mMapService.getSingletonLocationClient(context); mMapMarkerManager = MapMarkerManager.getInstance(context); mMapMarkerManager.init(context); diff --git a/modules/mogo-module-service/src/main/java/com/mogo/module/service/marker/MapMarkerManager.java b/modules/mogo-module-service/src/main/java/com/mogo/module/service/marker/MapMarkerManager.java index 40d3d632c4..2dc8d3121c 100644 --- a/modules/mogo-module-service/src/main/java/com/mogo/module/service/marker/MapMarkerManager.java +++ b/modules/mogo-module-service/src/main/java/com/mogo/module/service/marker/MapMarkerManager.java @@ -15,6 +15,7 @@ import com.amap.api.maps.model.animation.Animation; import com.amap.api.maps.model.animation.ScaleAnimation; import com.mogo.map.MogoLatLng; import com.mogo.map.impl.amap.marker.AMapMarkerWrapper; +import com.mogo.map.location.MogoLocation; import com.mogo.map.marker.IMogoMarker; import com.mogo.map.marker.IMogoMarkerClickListener; import com.mogo.map.marker.MogoMarkerOptions; @@ -387,7 +388,7 @@ public class MapMarkerManager implements IMogoMarkerClickListener, IMogoOnMessag noveltyInfoList = markerCardResult.getNoveltyInfo(); } if (onlineCarList != null) { - double nearlyDistance = Double.MAX_VALUE; + double nearlyDistance = Float.MAX_VALUE; for (MarkerOnlineCar markerOnlineCar : onlineCarList) { MarkerLocation markerLocation = markerOnlineCar.getLocation(); @@ -401,16 +402,25 @@ public class MapMarkerManager implements IMogoMarkerClickListener, IMogoOnMessag IMogoMarker iMogoMarker = drawMapMarker(markerShowEntity); // 计算在线车辆距离当前车辆的距离,每次都与最后一次距离最近的进行比较,保留距离最近的车辆,进行卡片展示 try { - double calculateDistance = Utils.calculateLineDistance( - new MogoLatLng(markerLocation.getLat(), markerLocation.getLat()), - new MogoLatLng( - MarkerServiceHandler.getMogoLocationClient().getLastKnowLocation().getLatitude(), - MarkerServiceHandler.getMogoLocationClient().getLastKnowLocation().getLongitude() - ) + // 当前车辆的位置 + MogoLocation currentLocation = MarkerServiceHandler.getMogoLocationClient().getLastKnowLocation(); + + // 计算车辆距离指定气泡的距离 + float calculateDistance = Utils.calculateLineDistance( + new MogoLatLng(markerLocation.getLat(), markerLocation.getLon()), + new MogoLatLng(currentLocation.getLatitude(), currentLocation.getLongitude()) ); +// Logger.d("点之间距离", +// "当前车辆经纬度:" + +// "\n\tlatitude=" + currentLocation.getLatitude() + +// "\n\tlongitude=" + currentLocation.getLongitude() + +// "\n气泡经纬度:" + markerLocation + +// "\n相距:" + calculateDistance + "米"); + // 进行比较,保留最近的一个数据 if (calculateDistance < nearlyDistance) { + nearlyDistance = calculateDistance; nearlyMogoMarker = iMogoMarker; } @@ -418,6 +428,7 @@ public class MapMarkerManager implements IMogoMarkerClickListener, IMogoOnMessag e.printStackTrace(); } } + Logger.d("点之间距离", "距离当前车辆位置最近的距离为:" + nearlyDistance); fillNumberTrackEventBody(array, 3, onlineCarList.size()); } From 30edccf509ffc14dc174201902d9cc3185c688fa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=91=A3=E5=AE=8F=E5=AE=87?= Date: Fri, 21 Feb 2020 23:30:44 +0800 Subject: [PATCH 2/4] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E4=BA=86bug=20=E3=80=90?= =?UTF-8?q?=E5=9C=A8=E7=BA=BF=E8=BD=A6=E8=BE=86=E3=80=91=E6=AF=8F=E6=AC=A1?= =?UTF-8?q?=E5=90=AF=E5=8A=A8=EF=BC=8C=E5=9C=A8=E7=BA=BF=E8=BD=A6=E8=BE=86?= =?UTF-8?q?=E5=8D=A1=E7=89=87=E9=83=BD=E4=BC=9A=E9=80=89=E6=8B=A9=E4=B8=80?= =?UTF-8?q?=E8=BE=86=E8=BD=A6=E6=98=BE=E7=A4=BA=EF=BC=8C=E4=BD=86=E6=98=AF?= =?UTF-8?q?=E8=BF=99=E8=BE=86=E8=BD=A6=E6=A0=B9=E6=9C=AC=E4=B8=8D=E5=9C=A8?= =?UTF-8?q?=E5=91=A8=E8=BE=B9=EF=BC=8CACCON=E5=90=8E=E5=BA=94=E5=BD=93?= =?UTF-8?q?=E9=BB=98=E8=AE=A4=E4=B8=8D=E6=98=BE=E7=A4=BA=E6=9F=90=E4=B8=80?= =?UTF-8?q?=E8=BD=A6=E8=BE=86=E7=9A=84=E5=9C=A8=E7=BA=BF=E8=BD=A6=E8=BE=86?= =?UTF-8?q?=E5=8D=A1=E7=89=87=EF=BC=8C=E6=88=96=E8=80=85=E9=80=89=E5=8F=96?= =?UTF-8?q?=E6=9C=80=E8=BF=91=E8=BD=A6=E8=BE=86=E7=9A=84=E5=9C=A8=E7=BA=BF?= =?UTF-8?q?=E8=BD=A6=E8=BE=86=E5=8D=A1=E7=89=87=E4=B9=9F=E8=A1=8C=20http:/?= =?UTF-8?q?/jira.zhidaohulian.com/browse/UI-372=3Fjql=3Dproject%20%3D%20UI?= =?UTF-8?q?%20AND%20assignee%20in%20(donghongyu)%20ORDER%20BY%20priority%2?= =?UTF-8?q?0DESC%2C%20updated%20DESC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../module/service/marker/MapMarkerManager.java | 15 +++++---------- 1 file changed, 5 insertions(+), 10 deletions(-) diff --git a/modules/mogo-module-service/src/main/java/com/mogo/module/service/marker/MapMarkerManager.java b/modules/mogo-module-service/src/main/java/com/mogo/module/service/marker/MapMarkerManager.java index 2dc8d3121c..ea942b3c3f 100644 --- a/modules/mogo-module-service/src/main/java/com/mogo/module/service/marker/MapMarkerManager.java +++ b/modules/mogo-module-service/src/main/java/com/mogo/module/service/marker/MapMarkerManager.java @@ -20,7 +20,6 @@ import com.mogo.map.marker.IMogoMarker; import com.mogo.map.marker.IMogoMarkerClickListener; import com.mogo.map.marker.MogoMarkerOptions; import com.mogo.map.marker.MogoMarkersHandler; -import com.mogo.module.common.entity.MarkerCarChat; import com.mogo.module.common.entity.MarkerCardResult; import com.mogo.module.common.entity.MarkerExploreWay; import com.mogo.module.common.entity.MarkerLocation; @@ -58,7 +57,6 @@ public class MapMarkerManager implements IMogoMarkerClickListener, IMogoOnMessag private static final String TAG = "MapMarkerManager"; // 第一次请求到地图的Marker数据 private boolean isFirstMarker = true; - private boolean isOnLineCard = false; private static Context mContext; private static IMogoMarker lastMarker; private static MapMarkerManager mMarkerManager; @@ -100,17 +98,15 @@ public class MapMarkerManager implements IMogoMarkerClickListener, IMogoOnMessag public void onSwitched(int position, String moduleName) { Logger.e(TAG, "======moduleName:" + moduleName); highlightedMarker(moduleName, false); - - if (moduleName.equals(ServiceConst.CARD_TYPE_USER_DATA)) { - isOnLineCard = true; - } else { - isOnLineCard = false; - } mLastHighLightModule = moduleName; } }); } + // ACC ON 的时候重置为true + public void setFirstMarker(boolean firstMarker) { + isFirstMarker = firstMarker; + } /** * 地图上的Marker点击回调 @@ -375,7 +371,6 @@ public class MapMarkerManager implements IMogoMarkerClickListener, IMogoOnMessag } } - List carChatList = markerCardResult.getCarChat(); List onlineCarList = markerCardResult.getOnlineCar(); List exploreWayList = null; List shareMusicList = null; @@ -517,7 +512,7 @@ public class MapMarkerManager implements IMogoMarkerClickListener, IMogoOnMessag try { // 在ACC on 之后第一次获取到了在线车辆数据,选中最近的一个Marker - if (isFirstMarker && isOnLineCard) { + if (isFirstMarker) { if (nearlyMogoMarker != null) { Logger.w(TAG, "ACC ON,或者语音搜索触发,默认选中最近的在线车辆nearlyMogoMarker:" + nearlyMogoMarker); onMarkerClicked(nearlyMogoMarker); From f72ce1e69c99095be6963fdfc7e47b6f28b6e331 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=91=A3=E5=AE=8F=E5=AE=87?= Date: Fri, 21 Feb 2020 23:54:21 +0800 Subject: [PATCH 3/4] =?UTF-8?q?=E4=BC=98=E5=8C=96=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/entity/MarkerShowEntity.java | 11 --- .../service/marker/MapMarkerManager.java | 89 +++++++------------ .../mogo/module/service/utils/ViewUtils.java | 37 ++++++++ 3 files changed, 68 insertions(+), 69 deletions(-) create mode 100644 modules/mogo-module-service/src/main/java/com/mogo/module/service/utils/ViewUtils.java diff --git a/modules/mogo-module-common/src/main/java/com/mogo/module/common/entity/MarkerShowEntity.java b/modules/mogo-module-common/src/main/java/com/mogo/module/common/entity/MarkerShowEntity.java index 067330a211..f8a7e293cb 100644 --- a/modules/mogo-module-common/src/main/java/com/mogo/module/common/entity/MarkerShowEntity.java +++ b/modules/mogo-module-common/src/main/java/com/mogo/module/common/entity/MarkerShowEntity.java @@ -15,8 +15,6 @@ public class MarkerShowEntity { // false - 没选中,true - 选中 private boolean isChecked; - // false - 非高亮,true - 高亮 - private boolean isHighlighted; // icon 地址,例如:头像,唱片图片,探路缩略,可能为空展示默认图 private String iconUrl; // 要展示的文本 @@ -36,14 +34,6 @@ public class MarkerShowEntity { isChecked = checked; } - public boolean isHighlighted() { - return isHighlighted; - } - - public void setHighlighted(boolean highlighted) { - isHighlighted = highlighted; - } - public String getIconUrl() { return iconUrl; } @@ -108,7 +98,6 @@ public class MarkerShowEntity { public String toString() { return "MarkerShowEntity{" + "isChecked=" + isChecked + - ", isHighlighted=" + isHighlighted + ", iconUrl='" + iconUrl + '\'' + ", textContent='" + textContent + '\'' + ", markerType='" + markerType + '\'' + diff --git a/modules/mogo-module-service/src/main/java/com/mogo/module/service/marker/MapMarkerManager.java b/modules/mogo-module-service/src/main/java/com/mogo/module/service/marker/MapMarkerManager.java index ea942b3c3f..055ae2a3f7 100644 --- a/modules/mogo-module-service/src/main/java/com/mogo/module/service/marker/MapMarkerManager.java +++ b/modules/mogo-module-service/src/main/java/com/mogo/module/service/marker/MapMarkerManager.java @@ -1,15 +1,11 @@ package com.mogo.module.service.marker; import android.content.Context; -import android.graphics.Bitmap; import android.os.Handler; import android.os.Looper; import android.text.TextUtils; -import android.view.View; -import android.view.ViewGroup; import android.view.animation.BounceInterpolator; import android.view.animation.OvershootInterpolator; -import android.widget.TextView; import com.amap.api.maps.model.animation.Animation; import com.amap.api.maps.model.animation.ScaleAnimation; @@ -33,6 +29,7 @@ import com.mogo.module.service.MarkerServiceHandler; import com.mogo.module.service.ServiceConst; import com.mogo.module.service.Utils; import com.mogo.module.service.datamanager.MogoDataHandler; +import com.mogo.module.service.utils.ViewUtils; import com.mogo.service.cardmanager.IMogoCardChangedListener; import com.mogo.service.connection.IMogoOnMessageListener; import com.mogo.utils.logger.Logger; @@ -126,26 +123,11 @@ public class MapMarkerManager implements IMogoMarkerClickListener, IMogoOnMessag return false; } // 将上次选中 Marker 设置为未选中状态 - MarkerShowEntity lastMarkerShowEntity = (MarkerShowEntity) lastMarker.getObject(); - Logger.i(TAG, "onMarkerClicked 点击了大而全中的Marker lastMarkerShowEntity:" + lastMarkerShowEntity); - if (lastMarkerShowEntity != null) { - lastMarkerShowEntity.setChecked(false); - lastMarkerShowEntity.setHighlighted(false); - IMarkerView markerView = MapMarkerAdapter.getMarkerView(mContext, lastMarkerShowEntity, lastMarker.getMogoMarkerOptions()); - lastMarker.setIcon(fromView(markerView.getView())); - } + closeMarker(lastMarker); } // 将当前的Marker设置为选中 - MarkerShowEntity markerShowEntity = (MarkerShowEntity) marker.getObject(); - Logger.i(TAG, "onMarkerClicked 点击了大而全中的Marker markerShowEntity:" + markerShowEntity); - if (markerShowEntity != null) { - markerShowEntity.setChecked(true); - markerShowEntity.setHighlighted(true); - IMarkerView markerView = MapMarkerAdapter.getMarkerView(mContext, markerShowEntity, marker.getMogoMarkerOptions()); - marker.setIcon(fromView(markerView.getView())); - } - + openMarker(marker); lastMarker = marker; // 数据统计代码 @@ -197,31 +179,6 @@ public class MapMarkerManager implements IMogoMarkerClickListener, IMogoOnMessag } - private Bitmap fromView(View view) { - view.setDrawingCacheEnabled(true); - processChildView(view); - view.destroyDrawingCache(); - view.measure(View.MeasureSpec.makeMeasureSpec(0, View.MeasureSpec.UNSPECIFIED), View.MeasureSpec.makeMeasureSpec(0, View.MeasureSpec.UNSPECIFIED)); - view.layout(0, 0, view.getMeasuredWidth(), view.getMeasuredHeight()); - Bitmap bitmap = null; - return (bitmap = view.getDrawingCache()) != null ? bitmap.copy(Bitmap.Config.ARGB_8888, false) : null; - } - - - private void processChildView(View view) { - if (!(view instanceof ViewGroup)) { - if (view instanceof TextView) { - ((TextView) view).setHorizontallyScrolling(false); - } - - } else { - for (int var1 = 0; var1 < ((ViewGroup) view).getChildCount(); ++var1) { - processChildView(((ViewGroup) view).getChildAt(var1)); - } - - } - } - // 对指定类型高亮处理 public synchronized static void highlightedMarker(final String typeTag) { highlightedMarker(typeTag, false); @@ -331,22 +288,38 @@ public class MapMarkerManager implements IMogoMarkerClickListener, IMogoOnMessag // 将上次选中 Marker 设置为未选中状态 if (marker != null) { Logger.i(TAG, "closeMarkerSelect 将出Marker详情关闭:" + marker); - - // 将上次选中 Marker 设置为未选中状态 - MarkerShowEntity lastMarkerShowEntity = (MarkerShowEntity) marker.getObject(); - lastMarkerShowEntity.setChecked(false); - lastMarkerShowEntity.setHighlighted(false); - - IMarkerView markerView = MapMarkerAdapter.getMarkerView(mContext, lastMarkerShowEntity, marker.getMogoMarkerOptions()); - marker.setIcon(fromView(markerView.getView())); - + closeMarker(marker); lastMarker = null; } } - /** - * 绘制Marker - */ + // 展开气泡 + private void openMarker(IMogoMarker mogoMarker) { + if (mogoMarker != null) { + Object object = mogoMarker.getObject(); + if (object != null) { + MarkerShowEntity markerShowEntity = (MarkerShowEntity) object; + markerShowEntity.setChecked(true); + IMarkerView markerView = MapMarkerAdapter.getMarkerView(mContext, markerShowEntity, mogoMarker.getMogoMarkerOptions()); + mogoMarker.setIcon(ViewUtils.fromView(markerView.getView())); + } + } + } + + // 折叠气泡 + private void closeMarker(IMogoMarker mogoMarker) { + if (mogoMarker != null) { + Object object = mogoMarker.getObject(); + if (object != null) { + MarkerShowEntity markerShowEntity = (MarkerShowEntity) object; + markerShowEntity.setChecked(false); + IMarkerView markerView = MapMarkerAdapter.getMarkerView(mContext, markerShowEntity, mogoMarker.getMogoMarkerOptions()); + mogoMarker.setIcon(ViewUtils.fromView(markerView.getView())); + } + } + } + + // 绘制Marker public synchronized void drawMapMarker(MarkerResponse response) { lastMarker = null; diff --git a/modules/mogo-module-service/src/main/java/com/mogo/module/service/utils/ViewUtils.java b/modules/mogo-module-service/src/main/java/com/mogo/module/service/utils/ViewUtils.java new file mode 100644 index 0000000000..315b1e7a79 --- /dev/null +++ b/modules/mogo-module-service/src/main/java/com/mogo/module/service/utils/ViewUtils.java @@ -0,0 +1,37 @@ +package com.mogo.module.service.utils; + +import android.graphics.Bitmap; +import android.view.View; +import android.view.ViewGroup; +import android.widget.TextView; + +/** + * author : donghongyu + * e-mail : 1358506549@qq.com + * date : 2020-02-2123:51 + * desc : + * version: 1.0 + */ +public class ViewUtils { + public static Bitmap fromView(View view) { + view.setDrawingCacheEnabled(true); + processChildView(view); + view.destroyDrawingCache(); + view.measure(View.MeasureSpec.makeMeasureSpec(0, View.MeasureSpec.UNSPECIFIED), View.MeasureSpec.makeMeasureSpec(0, View.MeasureSpec.UNSPECIFIED)); + view.layout(0, 0, view.getMeasuredWidth(), view.getMeasuredHeight()); + Bitmap bitmap = null; + return (bitmap = view.getDrawingCache()) != null ? bitmap.copy(Bitmap.Config.ARGB_8888, false) : null; + } + + public static void processChildView(View view) { + if (!(view instanceof ViewGroup)) { + if (view instanceof TextView) { + ((TextView) view).setHorizontallyScrolling(false); + } + } else { + for (int var1 = 0; var1 < ((ViewGroup) view).getChildCount(); ++var1) { + processChildView(((ViewGroup) view).getChildAt(var1)); + } + } + } +} From 9769db4b5941d4e80cce2d694b2e832320d8b76a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=91=A3=E5=AE=8F=E5=AE=87?= Date: Fri, 21 Feb 2020 23:55:30 +0800 Subject: [PATCH 4/4] =?UTF-8?q?=E4=BC=98=E5=8C=96=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mogo/module/common/entity/MarkerShowEntity.java | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/modules/mogo-module-common/src/main/java/com/mogo/module/common/entity/MarkerShowEntity.java b/modules/mogo-module-common/src/main/java/com/mogo/module/common/entity/MarkerShowEntity.java index f8a7e293cb..067330a211 100644 --- a/modules/mogo-module-common/src/main/java/com/mogo/module/common/entity/MarkerShowEntity.java +++ b/modules/mogo-module-common/src/main/java/com/mogo/module/common/entity/MarkerShowEntity.java @@ -15,6 +15,8 @@ public class MarkerShowEntity { // false - 没选中,true - 选中 private boolean isChecked; + // false - 非高亮,true - 高亮 + private boolean isHighlighted; // icon 地址,例如:头像,唱片图片,探路缩略,可能为空展示默认图 private String iconUrl; // 要展示的文本 @@ -34,6 +36,14 @@ public class MarkerShowEntity { isChecked = checked; } + public boolean isHighlighted() { + return isHighlighted; + } + + public void setHighlighted(boolean highlighted) { + isHighlighted = highlighted; + } + public String getIconUrl() { return iconUrl; } @@ -98,6 +108,7 @@ public class MarkerShowEntity { public String toString() { return "MarkerShowEntity{" + "isChecked=" + isChecked + + ", isHighlighted=" + isHighlighted + ", iconUrl='" + iconUrl + '\'' + ", textContent='" + textContent + '\'' + ", markerType='" + markerType + '\'' +