Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/svg/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios4 基于SVGKIT的地理地图_Ios4_Svg_Calayer_Cashapelayer - Fatal编程技术网

Ios4 基于SVGKIT的地理地图

Ios4 基于SVGKIT的地理地图,ios4,svg,calayer,cashapelayer,Ios4,Svg,Calayer,Cashapelayer,我正试图找到使用SVGKit的方法(https://github.com/SVGKit/SVGKit)用于处理地理地图的iOS项目 此时,我可以使用CALayer对象访问地图上的特定区域。这使我可以访问该区域周围的矩形 以下是我使用的代码: CALayer *layer=[svgView.document layerWithIdentifier:@"myLayerID"]; [layer setBackgroundColor:[UIColor orangeColor].CGColor]; if

我正试图找到使用SVGKit的方法(https://github.com/SVGKit/SVGKit)用于处理地理地图的iOS项目

此时,我可以使用CALayer对象访问地图上的特定区域。这使我可以访问该区域周围的矩形

以下是我使用的代码:

CALayer *layer=[svgView.document layerWithIdentifier:@"myLayerID"];
[layer setBackgroundColor:[UIColor orangeColor].CGColor];

if( [layer isKindOfClass:[CAShapeLayer class]] )
{
    CAShapeLayer* shapeLayer = (CAShapeLayer*) layer;
    NSLog(@"That is good so far!");
    layer.mask=shapeLayer;
}
但我需要进入地图的精确区域;不仅是周围的矩形,为了突出显示它。 我已经读过了,我应该使用CGPathRef和一个掩码

我该怎么做呢


谢谢你的提示。

当你找到CALayer时,把它扔到CAShapeLayer上(如果可以的话;如果你有合适的图层,应该可以)

然后你可以改变线条的宽度,填充颜色,等等-各种各样的时髦的东西


还可以查看CALayer.shadow*——苹果公司提供的各种功能,可以自动点亮图层的可见部分。

谢谢您的回复。事实上是的,我可以把它扔给一个玩现金的人。但我仍然没有达到最终目标,那就是照亮这个地区。我编辑了我的问题以反映我所做的。我假设我得到的CAShapeLayer已经有了正确的路径,可以用作适当的遮罩。这是错的吗?我在这里有点迷路了。我原以为使用SVGKit会让事情变得相当简单,但显然情况并非如此,至少对初学者来说是这样。。。上面的代码毫无意义。不能将层用作其自身的遮罩!
if( [layer isKindOfClass:[CAShapeLayer class]] )
{
   CAShapeLayer* shapeLayer = (CAShapeLayer*) layer;

   // Now you have access to lots more Apple methods
}