PP.MapFilledArrow(settings);
settings. JSON-объект со значениями свойств компонента.
Конструктор MapFilledArrow создает экземпляр класса MapFilledArrow.
Для выполнения примера необходимо наличие на html-странице компонента MapChart с наименованием «map» (см. «Пример создания компонента MapChart»). Создадим стрелку, направленную от области слоя карты с идентификатором «RU-MOW» к области слоя карты с идентификатором «RU-KYA», отобразим всплывающую подсказку для неё и метку:
// Возвращает слой с областями карты function getWorkLayer() { return map.getLayer("Regions"); } // Возвращает настройки сопоставления данных стрелки function getArrowVisual() { return map.getVisuals().MapArrowVisual; } // Создаёт объект для работы с настройками сопоставления данных для стрелки на карте function createArrowVisual() { var arrowVisual = new PP.ArrowVisual({ ColorMapping: getArrowVisual().getColorMapping(), BasementWidthMapping: getArrowVisual().getBasementWidthMapping() }); return arrowVisual; } // Выводит информацию о стрелке function printArrowVisualInfo(mapArrow) { console.log("Идентификатор источника данных для первого сопоставления: %s", mapArrow.getVisual().getFirstDataSource().getId()); } // Создаёт всплывающую подсказку function createToolTip() { var toolTip = new PP.Ui.ChartTooltipBase({ HoverMode: PP.HoverMode.Click, MaskText: { IsAuto: true, Value: "{%WidthValue}" } }); return toolTip; } // Отрисовывает всплывающую подсказку function drawToolTip(mapArrow) { // Определяем цвет заливки всплывающей подсказки var toolTipColor = mapArrow.getToolTipColor(); mapArrow.getToolTip().setBackground(new PP.SolidColorBrush({ Color: toolTipColor, Opacity: 0.5 })); mapArrow.getToolTip().setFont(new PP.Font({ Color: PP.Color.Colors.white })); // Отображаем всплывающую подсказку mapArrow.toggleToolTip(); } // Создаёт пузырьковый показатель function createMapArrow() { // Создаём стрелку с заливкой var mapArrow = new PP.MapFilledArrow({ Border: { Color: PP.Color.Colors.white, Width: 1 }, // Стиль границы стрелки Chart: map, StartShape: "RU-MOS", EndShape: "RU-KYA", Visual: createArrowVisual(), // Сопоставление данных стрелки Id: "Filled", // Идентификатор стрелки IsRelativeWidth: true, Label: new PP.MapLabel({ MaskText: { Value: "{%StartShape} - {%EndShape}" } }), ToolTip: createToolTip(), // Всплывающая подсказка UseAnimation: true // Разрешаем воспроизведение анимации }); return mapArrow; } // Удаляет стрелку с карты function clearArrow(mapArrow) { mapArrow.getToolTip().dispose(); mapArrow.clear(); } // Отрисовывает стрелку на карте function drawMapArrow(mapArrow) { var arrows = map.getMapArrows(); if (arrows == null) { arrows = {}; } arrows[mapArrow.getId()] = mapArrow; // Перерисовываем карту map.refresh(); } // Выводит информацию, отображаемую в всплывающей подсказке function printToolTipInfo(mapArrow) { console.log("Всплывающая подсказка отображает значение %s", mapArrow.getToolTipValues().WidthValue.value); } // Создаём стрелку с заливкой var mapArrow = createMapArrow(); // Отрисовываем данную стрелку drawMapArrow(mapArrow); // Отображаем всплывающую подсказку drawToolTip(mapArrow); // Выводим информацию о настройках сопоставления данных стрелки printArrowVisualInfo(mapArrow); // Выводим информацию, отображаемую в всплывающей подсказке printToolTipInfo(mapArrow); // Настроим подсветку стрелки - стрелка будет подсвечиваться при выделении области, в которую она заходит map.setArrowEffectsMode(PP.Ui.MapChart.ArrowEffectsMode.EndShape); // Зададим шрифт и заливку подписи стрелки mapArrow.setFont( new PP.Font({ FontFamily: 'Impact', Size: 12, SizeUnits: PP.SizeUnits.Pt }) ); mapArrow.setTextBackground( new PP.BrushEffect({ Brush: { SolidColorBrush: { Color: "#F7EBD1"} } }) ); // Обновим карту map.refresh(true);
В результате выполнения примера были отображены стрелка, направленная от области слоя карты с идентификатором «RU-MOW» к области слоя карты с идентификатором «RU-KYA», всплывающая подсказка для неё и метка:
В консоли браузера были выведены идентификатор источника данных для первого сопоставления данных стрелки и значение, отображаемое на всплывающей подсказке:
Идентификатор источника данных для первого сопоставления: arrowSource
Всплывающая подсказка отображает значение 7.19
См. также: