三维地图使用AGSMultilayerPolylineSymbol绘制纹理线条时崩溃
在三维地图上使用AGSMultilayerPolylineSymbol绘制纹理线条时,多画几条会内存不断上升,直到崩溃,二维地图就不会
if (!_simpleLineSymbol) {
AGSSolidStrokeSymbolLayer *bubu = [[AGSSolidStrokeSymbolLayer alloc] initWithWidth:1 color:UIColor.redColor];
AGSMultilayerPointSymbol *symbol = [[AGSMultilayerPointSymbol alloc] initWithSymbolLayers:@[bubu]];
AGSPolylineBuilder *polyy = [[AGSPolylineBuilder alloc] initWithPoints:@[AGSPointMake(0, 0, nil),AGSPointMake(0, 10, nil),AGSPointMake(10, 10, nil),AGSPointMake(10, 0, nil)]];
AGSVectorMarkerSymbolElement *ele = [[AGSVectorMarkerSymbolElement alloc] initWithGeometry:[polyy toGeometry] multilayerSymbol:symbol];
AGSSolidStrokeSymbolLayer *nono = [[AGSSolidStrokeSymbolLayer alloc] initWithWidth:1 color:UIColor.blueColor];
AGSMultilayerPointSymbol *symbol1 = [[AGSMultilayerPointSymbol alloc] initWithSymbolLayers:@[nono]];
AGSPolylineBuilder *polyy1 = [[AGSPolylineBuilder alloc] initWithPoints:@[AGSPointMake(0, 0, nil),AGSPointMake(0, 5, nil),AGSPointMake(5, 5, nil),AGSPointMake(5, 0, nil)]];
AGSVectorMarkerSymbolElement *ele1 = [[AGSVectorMarkerSymbolElement alloc] initWithGeometry:[polyy1 toGeometry] multilayerSymbol:symbol1];
AGSVectorMarkerSymbolLayer *sync = [[AGSVectorMarkerSymbolLayer alloc] initWithVectorMarkerSymbolElements:@[ele,ele1]];
AGSMultilayerPolylineSymbol *hatchLineSymbol = [[AGSMultilayerPolylineSymbol alloc] initWithSymbolLayers:@[sync]];
hatchLineSymbol.width = 10;
_simpleLineSymbol = hatchLineSymbol;
}
return _simpleLineSymbol;
if (!_simpleLineSymbol) {
AGSSolidStrokeSymbolLayer *bubu = [[AGSSolidStrokeSymbolLayer alloc] initWithWidth:1 color:UIColor.redColor];
AGSMultilayerPointSymbol *symbol = [[AGSMultilayerPointSymbol alloc] initWithSymbolLayers:@[bubu]];
AGSPolylineBuilder *polyy = [[AGSPolylineBuilder alloc] initWithPoints:@[AGSPointMake(0, 0, nil),AGSPointMake(0, 10, nil),AGSPointMake(10, 10, nil),AGSPointMake(10, 0, nil)]];
AGSVectorMarkerSymbolElement *ele = [[AGSVectorMarkerSymbolElement alloc] initWithGeometry:[polyy toGeometry] multilayerSymbol:symbol];
AGSSolidStrokeSymbolLayer *nono = [[AGSSolidStrokeSymbolLayer alloc] initWithWidth:1 color:UIColor.blueColor];
AGSMultilayerPointSymbol *symbol1 = [[AGSMultilayerPointSymbol alloc] initWithSymbolLayers:@[nono]];
AGSPolylineBuilder *polyy1 = [[AGSPolylineBuilder alloc] initWithPoints:@[AGSPointMake(0, 0, nil),AGSPointMake(0, 5, nil),AGSPointMake(5, 5, nil),AGSPointMake(5, 0, nil)]];
AGSVectorMarkerSymbolElement *ele1 = [[AGSVectorMarkerSymbolElement alloc] initWithGeometry:[polyy1 toGeometry] multilayerSymbol:symbol1];
AGSVectorMarkerSymbolLayer *sync = [[AGSVectorMarkerSymbolLayer alloc] initWithVectorMarkerSymbolElements:@[ele,ele1]];
AGSMultilayerPolylineSymbol *hatchLineSymbol = [[AGSMultilayerPolylineSymbol alloc] initWithSymbolLayers:@[sync]];
hatchLineSymbol.width = 10;
_simpleLineSymbol = hatchLineSymbol;
}
return _simpleLineSymbol;
0 个回复