CAD修改对象颜色

网友投稿 696 2022-11-15

CAD修改对象颜色

CAD修改对象颜色

函数McDbObjectId CreateLine1(McGePoint3d pt1,McGePoint3d pt2)会返回新绘制的对象id。

// -------------------------------------------------------------------------​​​​// Summary:​​​​// 改变实体颜色​​​​// Parameters:​​​​// id - 实体的id​​​​// color - 实体的新颜色​​​​// Returns:​​​​// 成功返回true​​​​// -------------------------------------------------------------------------​​​​bool ChangeColor(McDbObjectId id,const McCmColor& color)​​​​{​​​​// 用智能指针打开对象,写方式打开。智能指针会自动关闭对象.​​​​McDbObjectPointer spEnt(id,McDb::kForWrite);​​​​if​​​​(spEnt.openStatus() != Mcad::eOk)​​​​{​​​​// 如果对象,在其它地方打开,就会打开的失败.​​​​return​​​ ​​false​​​​;​​​​}​​ ​​// 设置对象颜色​​​​spEnt->setColor(color);​​ ​​return​​​ ​​true​​​​;​​​​}​​

COM接口调用方式,如C#代码:

​​// -------------------------------------------------------------------------​​​​// Summary:​​​​// 改变实体颜色​​​​// Parameters:​​​​// id - 实体的id.​​​​// iR, iG,iB - 实体的颜色​​​​// Returns:​​​​// 成功返回true​​​​// -------------------------------------------------------------------------​​​​bool ChangeColor(Int64 id,int iR,int iG,int iB)​​​​{​​​​// 由id得到实体对象.​​​​MxDrawEntity ent = (MxDrawEntity)axMxDrawX1.ObjectIdToObject(id);​​​​if​​​ ​​(ent == ​​​​null​​​​)​​​​return​​​ ​​false​​​​;​​​​MxDrawMcCmColor color = ​​​​new​​​ ​​MxDrawMcCmColor();​​​​color.SetRGB(iR, iG, iB);​​ ​​// 设置实体颜色。​​​​ent.TrueColor = color;​​​​return​​​ ​​true​​​​;​​​​}​​

COM接口调用方式,如js代码:

// 向当前空间增加直线 newline 是增加的新直线。​​​​var​​​ ​​newline = curSpace.AddLine(point1.x,point1.y,point2.x,point2.y);​​ ​​var​​​ ​​color = MxDrawXCtrl_Obj.NewComObject(​​​​"IMxDrawMcCmColor"​​​​);​​​​color.SetRGB(255,77,0);​​​​newline.TrueColor = color;​​

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:【原创翻译】为Windows XP用户创建“SubAdministrator”工作组
下一篇:Apache log4j2
相关文章

 发表评论

暂时没有评论,来抢沙发吧~