我有一组使用 DrawGeometry 在我的覆盖方法 OnRender 上绘制的坐标。我试图绘制的多边形之一是 121000 点,这很多。这会减慢我的地图控制速度。
同样,当这个 OnRender 发生时,这些点已经在内存中,我只是将这些点传递给 DrawGeomerty
这是一个例子 OnRender 发生了什么
MapProjection pa = new MapProjection();
if (this.mapCommunication.MapLayers == null)
{
return;
}
foreach (KeyValuePair<Guid, MapLayerHelper> coordinatePointsLayer in this.mapCommunication.MapLayers)
{
if (!coordinatePointsLayer.Value.IsVisible)
{
continue;
}
if (coordinatePointsLayer.Value.State != LayerEnum.Visible)
{
continue;
}
foreach (CoordinateHelper coordinatePoints in coordinatePointsLayer.Value.Coordinates)
{
foreach (StreamGeometry item in coordinatePoints.GeomertyPoints)
{
drawingContext.DrawGeometry(null, penDrawing, item);
}
}
}
我的问题是我应该从这里采取什么方向进行优化,或者我应该尝试合并 DirectX 这会有所帮助还是我应该采取什么方法?
感谢您的帮助,我很新来渲染这么多数据。