多边形
使用集合让一切井井有条
根据您的偏好保存内容并对其进行分类。

此示例显示了北大西洋的地图,并在其上绘制了百慕大三角的形状。
开始使用
您必须先配置开发环境,然后才能试用该示例代码。如需了解详情,请参阅设置 Flutter 项目。
查看代码
Dart
// 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 Atlantic Ocean with the shape of the famous
/// Bermuda Triangle drawn over it.
class PolygonsSample extends StatelessWidget {
const PolygonsSample({super.key});
@override
Widget build(BuildContext context) {
return GoogleMap(
initialCameraPosition: CameraPosition(target: LatLng(25, -72)),
polygons: {
Polygon(
// Polygon id must be unique.
polygonId: PolygonId('bermuda triangle'),
points: [
LatLng(25.28, -80.33),
LatLng(32.29, -64.79),
LatLng(18.51, -65.36),
LatLng(25.28, -80.33), // Same as first point to close polygon.
],
strokeColor: Colors.red,
fillColor: Colors.yellow,
consumeTapEvents: true,
onTap: () => debugPrint('tapped on the Bermuda Triangle'),
),
},
);
}
}
后续步骤
在 GitHub 上查看完整的示例集:
在 GitHub 上查看
或者,您也可以通过执行以下命令克隆完整的示例集,以便在本地运行这些示例:
git clone -b flutter_samples https://github.com/googlemaps-samples/flutter-maps-samples.git
cd flutter-samples
flutter pub get
如未另行说明,那么本页面中的内容已根据知识共享署名 4.0 许可获得了许可,并且代码示例已根据 Apache 2.0 许可获得了许可。有关详情,请参阅 Google 开发者网站政策。Java 是 Oracle 和/或其关联公司的注册商标。
最后更新时间 (UTC):2025-08-29。
[null,null,["最后更新时间 (UTC):2025-08-29。"],[],[],null,["# Polygons\n\nThis example displays a map of the Atlantic Ocean with the shape of the Bermuda Triangle drawn over 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 Atlantic Ocean with the shape of the famous\n/// Bermuda Triangle drawn over it.\nclass PolygonsSample extends StatelessWidget {\n const PolygonsSample({super.key});\n\n @override\n Widget build(BuildContext context) {\n return GoogleMap(\n initialCameraPosition: CameraPosition(target: LatLng(25, -72)),\n polygons: {\n Polygon(\n // Polygon id must be unique.\n polygonId: PolygonId('bermuda triangle'),\n points: [\n LatLng(25.28, -80.33),\n LatLng(32.29, -64.79),\n LatLng(18.51, -65.36),\n LatLng(25.28, -80.33), // Same as first point to close polygon.\n ],\n strokeColor: Colors.red,\n fillColor: Colors.yellow,\n consumeTapEvents: true,\n onTap: () =\u003e debugPrint('tapped on the Bermuda Triangle'),\n ),\n },\n );\n }\n}\nhttps://github.com/googlemaps-samples/flutter-maps-samples/blob/8f227e8b4d07179e5fb7cc5e8d8cb5440befd229/lib/samples/polygons.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"]]