Как нарисовать на карте ломаные линии
Оптимизируйте свои подборки
Сохраняйте и классифицируйте контент в соответствии со своими настройками.

В этом примере показана карта северной части Атлантического океана с нанесенным на нее маршрутом «Титаника».
Начать
Прежде чем вы сможете попробовать пример кода, вы должны настроить среду разработки. Для получения дополнительной информации см. Настройка проекта Flutter .
Посмотреть код
Дарт
// Copyright 2025 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// https://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
import 'package:flutter/material.dart';
import 'package:google_maps_flutter/google_maps_flutter.dart';
/// Displays a map of the North Atlantic Ocean with the route of the Titanic
/// marked on it.
class PolylinesSample extends StatelessWidget {
const PolylinesSample({super.key});
@override
Widget build(BuildContext context) {
return GoogleMap(
initialCameraPosition: CameraPosition(target: LatLng(49, -23)),
polylines: {
Polyline(
// Polyline id must be unique.
polylineId: PolylineId('titanic route'),
points: [
LatLng(50.90, -1.41), // Southampton
LatLng(49.65, -1.60), // Cherbourg
LatLng(49.77, -6.71),
LatLng(51.83, -8.28), // Cobh
LatLng(50.96, -8.58),
LatLng(41.75, -49.90), // Wreck
],
width: 5,
color: Colors.red,
geodesic: true,
// Custom caps and joint types aren't supported on all platforms.
startCap: Cap.roundCap,
endCap: Cap.roundCap,
jointType: JointType.round,
consumeTapEvents: true,
onTap: () => debugPrint('clicked route'),
),
},
);
}
}
Следующие шаги
Посмотрите полный набор примеров на GitHub:
Посмотреть на GitHub
Либо клонируйте полный набор образцов, чтобы запустить их локально, выполнив следующие команды:
git clone -b flutter_samples https://github.com/googlemaps-samples/flutter-maps-samples.git
cd flutter-samples
flutter pub get
Если не указано иное, контент на этой странице предоставляется по лицензии Creative Commons "С указанием авторства 4.0", а примеры кода – по лицензии Apache 2.0. Подробнее об этом написано в правилах сайта. Java – это зарегистрированный товарный знак корпорации Oracle и ее аффилированных лиц.
Последнее обновление: 2025-09-04 UTC.
[null,null,["Последнее обновление: 2025-09-04 UTC."],[],[],null,["# Draw polylines on a map\n\nThis example displays a map of the North Atlantic Ocean with the route of the Titanic drawn on it.\n\nGet started\n-----------\n\nBefore you can try the sample code, you must configure your development environment.\nFor more information, see [Set up a Flutter project](/maps/flutter-package/config).\n\nView the code\n-------------\n\n### Dart\n\n```python\n// Copyright 2025 Google LLC\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// https://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\nimport 'package:flutter/material.dart';\nimport 'package:google_maps_flutter/google_maps_flutter.dart';\n\n/// Displays a map of the North Atlantic Ocean with the route of the Titanic\n/// marked on it.\nclass PolylinesSample extends StatelessWidget {\n const PolylinesSample({super.key});\n\n @override\n Widget build(BuildContext context) {\n return GoogleMap(\n initialCameraPosition: CameraPosition(target: LatLng(49, -23)),\n polylines: {\n Polyline(\n // Polyline id must be unique.\n polylineId: PolylineId('titanic route'),\n points: [\n LatLng(50.90, -1.41), // Southampton\n LatLng(49.65, -1.60), // Cherbourg\n LatLng(49.77, -6.71),\n LatLng(51.83, -8.28), // Cobh\n LatLng(50.96, -8.58),\n LatLng(41.75, -49.90), // Wreck\n ],\n width: 5,\n color: Colors.red,\n geodesic: true,\n // Custom caps and joint types aren't supported on all platforms.\n startCap: Cap.roundCap,\n endCap: Cap.roundCap,\n jointType: JointType.round,\n consumeTapEvents: true,\n onTap: () =\u003e debugPrint('clicked route'),\n ),\n },\n );\n }\n}\nhttps://github.com/googlemaps-samples/flutter-maps-samples/blob/8f227e8b4d07179e5fb7cc5e8d8cb5440befd229/lib/samples/polylines.dart\n \n```\n\nNext steps\n----------\n\nView the complete set of samples on GitHub:\n\n[View on GitHub](https://github.com/googlemaps-samples/flutter-maps-samples/tree/main/lib/samples)\n\nAlternatively, clone the full set of samples to run them locally by executing the following commands: \n\n git clone -b flutter_samples https://github.com/googlemaps-samples/flutter-maps-samples.git\n cd flutter-samples\n flutter pub get"]]