Member 13944776 Ответов: 1

Как изменить значок автомобиля на значок грузовика?.


var car = "M17.402,0H5.643C2.526,0,0,3.467,0,6.584v34.804c0,3.116,2.526,5.644,5.643,5.644h11.759c3.116,0,5.644-2.527,5.644-5.644 V6.584C23.044,3.467,20.518,0,17.402,0z M22.057,14.188v11.665l-2.729,0.351v-4.806L22.057,14.188z M20.625,10.773 c-1.016,3.9-2.219,8.51-2.219,8.51H4.638l-2.222-8.51C2.417,10.773,11.3,7.755,20.625,10.773z M3.748,21.713v4.492l-2.73-0.349 V14.502L3.748,21.713z M1.018,37.938V27.579l2.73,0.343v8.196L1.018,37.938z M2.575,40.882l2.218-3.336h13.771l2.219,3.336H2.575z M19.328,35.805v-7.872l2.729-0.355v10.048L19.328,35.805z";
var icon = {
  path: car,
  scale: .7,
  strokeColor: 'white',
  strokeWeight: .10,
  fillOpacity: 1,
  fillColor: '#FF0000',
  offset: '5%',
  // rotation: parseInt(heading[i]),
  anchor: new google.maps.Point(10, 25) // orig 10,50 back of car, 10,0 front of car, 10,25 center of car
};


Что я уже пробовал:

Я хочу изменить этот значок автомобиля на значок грузовика

Member 13944776

Если кто-то знает о моем запросе, пожалуйста, поделитесь....:)

Richard MacCutchan

Используйте значок, который выглядит как грузовик.

1 Ответов

Рейтинг:
5

Maciej Los

Состояния платформы Google Maps:
Пользовательские символы
Все символы определяются с помощью обозначения пути SVG. Они имеют различный цвет штриха, цвет заливки, вес штриха, непрозрачность и свойства вращения.

Видеть: Символы  |  Maps JavaScript API  |  Разработчики Google[^]

Я нашел здесь значок грузовика: Грузовик доставки - бесплатные транспортные иконки[^]. Его SVG-нотация такова:
var truck = "M21.474,377.522V117.138c0-14.469,11.729-26.199,26.199-26.199h260.25c14.469,0,26.198,11.73,26.198,26.199v260.385   c0,4.823-3.909,8.733-8.733,8.733H30.207C25.383,386.256,21.474,382.346,21.474,377.522z M231.634,466.724   c0,30.01-24.329,54.338-54.338,54.338c-30.009,0-54.338-24.328-54.338-54.338c0-30.011,24.329-54.338,54.338-54.338   C207.305,412.386,231.634,436.713,231.634,466.724z M204.464,466.724c0-15.005-12.164-27.169-27.169-27.169   s-27.17,12.164-27.17,27.169s12.165,27.17,27.17,27.17S204.464,481.729,204.464,466.724z M130.495,412.385H8.733   c-4.823,0-8.733,3.91-8.733,8.733v26.495c0,4.823,3.91,8.733,8.733,8.733h97.598C108.879,438.862,117.704,423.418,130.495,412.385z    M515.938,466.724c0,30.01-24.329,54.338-54.338,54.338c-30.01,0-54.338-24.328-54.338-54.338   c0-30.011,24.328-54.338,54.338-54.338C491.609,412.385,515.938,436.713,515.938,466.724z M488.77,466.724   c0-15.005-12.165-27.169-27.17-27.169c-15.006,0-27.169,12.164-27.169,27.169s12.164,27.17,27.169,27.17   S488.77,481.729,488.77,466.724z M612,421.118v26.495c0,4.823-3.91,8.733-8.733,8.733h-70.704   c-5.057-34.683-34.906-61.427-70.961-61.427c-36.062,0-65.912,26.745-70.969,61.427H248.261   c-2.549-17.483-11.373-32.928-24.164-43.961h134.994V162.594c0-9.646,7.82-17.466,17.466-17.466h82.445   c23.214,0,44.911,11.531,57.9,30.77l53.15,78.721c7.796,11.547,11.962,25.161,11.962,39.094v118.672h21.253   C608.09,412.385,612,416.295,612,421.118z M523.408,256.635l-42.501-60.393c-1.636-2.324-4.3-3.707-7.142-3.707H407.47   c-4.822,0-8.733,3.91-8.733,8.733v60.393c0,4.824,3.91,8.733,8.733,8.733h108.798C523.342,270.394,527.48,262.421,523.408,256.635z"


Удачи вам!


Member 13944776

Благодарю Вас мистер Мацейлос,
Это действительно очень полезно для меня...большое спасибо.Счастливого вам дня!!

Maciej Los

Всегда пожалуйста.

Member 13944776

Я пробовал это,но положение головы не должно поворачивать это дорожное положение ..Не могли бы вы, пожалуйста, направить это
====================================================

//окна.событий onload = calcRoute;



var step = 50; // 5; // метров
var tick = 1000; // миллисекунды
ВАР Эол;
var k = 0;
var stepnum = 0;
скорость var = "";
var lastVertex = 1;

//=============== анимационные функции ======================
функция updatePoly(d) {
// Создавайте новую полилинию каждые 20 вершин, потому что обновление 100-вершинного полилиния слишком медленное
if (poly2.getPath().getLength() > 20) {
poly2 = новый google.maps.Полилиния([polyline.getPath().getAt(lastVertex - 1)]);
// map.addOverlay(poly2)
}

если (ломаная линия.GetIndexAtDistance(d) < lastVertex + 2) {
if (poly2.getPath().getLength() > 1) {
poly2.getPath().removeAt(poly2.getPath().метода getlength может служить метод() - 1);
}
poly2.getPath().insertAt(poly2.getPath().метода getlength может служить метод(), полилиния.GetPointAtDistance(d));
} еще {
poly2.getPath().insertAt(poly2.getPath().метода getlength может служить метод(), endLocation.latlng с);
}
}

функция animate(d) {
если (d > eol) {
карта.панто(endLocation.latlng с);
маркер.setposition для(endLocation.latlng с);
вернуть;
}
var p = ломаная линия.GetPointAtDistance(d);
карта.панто(Р);
ВАР lastPosn = маркер.getPosition();
маркер.setposition для(п);
ВАР заголовок = в гугле.карты.геометрия.сферически.computeHeading(lastPosn, п);
значок.вращение = заголовок;
маркер.(значок с seticon);
updatePoly(д);
timerHandle = setTimeout("animate(" + (d + step) + ")", ТИК);
}

функция startAnimation() {
eol = полилиния.Расстояние();
map.setCenter(polyline.getPath().getAt(0));
маркер = новый google.maps.Маркер({
позиция: polyline.getPath().getAt(0),
карта: карта,
значок: значок
});

poly2 = новый google.maps.Полилиния({
путь: [polyline.getPath().getAt(0)],
strokeColor: "#0000FF",
вес удара: 10
});
// map.addOverlay(poly2);
setTimeout("анимировать(10)", 2000); // выделите время для первоначального отображения карты
}
google.maps.event.addDomListener(окно, 'load');

//=============== ~анимация масштабных мероприятий =====================


значок var = {
URL-адрес: "http://www.geocodezip.com/mapIcons/SO_20170925_multiplePaths_mod.svg",
якорь: новый google.maps.Точка(39, 60),
масштаб: .7,
strokeColor: 'белый',
ударный вес: .10,
заполняемость: 1,
fillColor: '#0000FF',
смещение: "5%",
размер: новый google.maps.Size(120, 120)
};

//var car = "M17.402,0H5.643C2.526,0,0,3.467,0,6.584v34.804c0,3.116,2.526,5.644,5.643,5.644h11.759c3.116,0,5.644-2.527,5.644-5.644 V6.584C23.044,3.467,20.518,0,17.402,0 z M22.057,14.188v11.665l-2.729,0.351 v-4.806L22.057,14.188 z M20.625,10.773 c-1.016,3.9-2.219,8.51-2.219,8.51H4.638l-2.222-8.51C2.417,10.773,11.3,7.755,20.625,10.773 z M3.748,21.713v4.492l-2.73-0.349 V14.502L3.748,21.713 z M1.018,37.938V27.579l2.73,0.343v8.196L1.018,37.938 z M2.575,40.882l2.218-3.336h13.771l2.219,3.336H2.575z M19.328,35.805 V-7.872l2.729-0.355v10.048l19.328,35.805 Z";
//значок var = {
// путь: автомобиль,
// масштаб: .7,
// strokeColor: 'белый',
// ударный вес: .10,
// заполняемость: 1,
// fillColor: '#0000FF',
// смещение: '5%',
// вращение: parseInt(заголовок[i]),
// якорь: новый google.maps.Точка(10, 25) // ориг 10,50 задняя часть автомобиля, 10,0 передняя часть автомобиля, 10,25 центр автомобиля
//};

// === первые методы поддержки, которые еще не существуют в v3
google.maps.LatLng.prototype.distanceFrom = функция (newLatLng) {
var EarthRadiusMeters = 6378137.0; // метры
var lat1 = this.lat();
ВАР lon1 = это.СПГ();
var lat2 = newLatLng.lat();
var lon2 = newLatLng.lng();
var dLat = (lat2 - lat1) * математика.ПИ / 180;
var dLon = (lon2 - lon1) * математика.ПИ / 180;
ВАР а = математика.грех(длать / 2) * математика.грех(длать / 2) + математика.в COS(lat1 * математика.PI / 180) * Math.cos(lat2 * Math.ПИ /

Maciej Los

Извините, я не специалист по JavaScript. Если вы хотите получить ответ, пожалуйста СПРАШИВАТЬ еще один вопрос по QA.

Member 13944776

я в порядке, хорошо, спасибо...