使用C#代码打开和关闭AutoCAD对象捕捉(OSNAP)功能

当需要在当前dwg图纸中,实现绘制或者选位置操作时,如果当时CAD的对象捕捉功能是打开状态,可能会导致插入的内容,自动的定位到捕捉点上,若捕捉点位置较远或者在视口外时,会导致用户看不到所插入的实体。
我们可以在执行自己绘制代码之前,通过设置系统变量**”OSMODE“**的值,来关闭当前的CAD对象捕捉功能,在执行完成绘制命令之后,再次打开对象捕捉功能,并还原原本的对象捕捉内容;
代码如下:

// 获取当前对象捕捉状态及捕捉项
var orgOSMode = Application.GetSystemVariable("OSMODE");
if((short)orgOSMode != 0)
{
	Application.SetSystemVariable("OSMODE", 0);
}
// 写业务代码实现功能
// ......
// 还原对象捕捉
if((short)orgOSMode != 0)
{
	Application.SetSystemVariable("OSMODE", orgODMode);
}

以上,即可实现关闭对象捕捉,业务执行完成后,还原对象捕捉设置。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值