下面实现修改其它属性的函数,比如:

修改图层属性:

// -------------------------------------------------------------------------​​
​​// Summary:​​
​​// 修改对象图层.​​
​​// Parameters:​​
​​// id - 实体的id.​​
​​// pszLayerName - 层名,如果数据库,没有该层名,返回失败。​​
​​// Returns:​​
​​// 成功返回true​​
​​// -------------------------------------------------------------------------​​
​​bool ChangeLayer(McDbObjectId id,LPCTSTR pszLayerName)​​
​​{​​
​​// 用智能指针打开对象,写方式打开。智能指针会自动关闭对象.​​
​​McDbObjectPointer spEnt(id,McDb::kForWrite);​​
​​if​​​​(spEnt.openStatus() != Mcad::eOk)​​
​​{​​
​​// 如果对象,在其它地方打开,就会打开的失败.​​
​​return​​​ ​​false​​​​;​​
​​}​​

​​// 设置对象颜色​​
​​if​​​​(spEnt->setLayer(pszLayerName) != Mcad::eOk)​​
​​return​​​ ​​false​​​​;​​

​​return​​​ ​​true​​​​;​​
​​}​​

比如修改线型属性:

​​// -------------------------------------------------------------------------​​
​​// Summary:​​
​​// 修改对象线型.​​
​​// Parameters:​​
​​// id - 实体的id.​​
​​// pszLinetypeName - 线型名,如果数据库,没有线型名,返回失败。​​
​​// Returns:​​
​​// 成功返回true​​
​​// -------------------------------------------------------------------------​​
​​bool ChangeLinetype(McDbObjectId id,LPCTSTR pszLinetypeName)​​
​​{​​
​​// 用智能指针打开对象,写方式打开。智能指针会自动关闭对象.​​
​​McDbObjectPointer spEnt(id,McDb::kForWrite);​​
​​if​​​​(spEnt.openStatus() != Mcad::eOk)​​
​​{​​
​​// 如果对象,在其它地方打开,就会打开的失败.​​
​​return​​​ ​​false​​​​;​​
​​}​​

​​// 设置对象颜色​​
​​if​​​​(spEnt->setLinetype(pszLinetypeName) != Mcad::eOk)​​
​​return​​​ ​​false​​​​;​​

​​return​​​ ​​true​​​​;​​
​​}​​