理解为何是用iPolyGon赋值给polygon,而不是ipPointCol

理解为何是用iPolyGon赋值给polygon,而不是ipPointCol。


1:ESRI.ArcGIS.Geometry.IPointCollection ipPointCol = (IPointCollection)ipPolyGon;

2:ipPointCol.AddPoint(p, ref missing, ref missing);

3:IPolygon polygon = ipPolyGon;


从平常的逻辑中我们可以理解 1 中ipPolyGon赋值给了ipPointCol,2 中为ipPointCol添加了新的元素,3 中将ipPolyGon赋值给了polygon。

感觉哪儿不对,ipPolyGon赋值给ipPointCol后就没被赋值,最后却赋值给了polygon,那么polygon应该还是空的才对。

这种理解是错误的。

首先,1 中的代码可以理解为PolyGon 实现ipPointCol。

第二,数据还是存储在PloyGon中。

第三,最后给面赋值对象时,当然就是用ipPolyGon了。

这个跟类的类型和关系有关。



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值