微信开发中 ACCESS TOKEN 过期失效的解决方案详解
1980
2022-11-15
CAD绘制填充并设置填充透明度
1、在CAD制图是,用户往往需要设置填充的透明度,下面介绍如何绘制填充并设置其透明度。
2、实现思路:首先我们先在控件视区的闭合区域点取一点,然后利用DrawHatchFromPoint方法在当前控件显示范围内搜缩闭合区域,然后用该闭合区域创建填充对象。定义填充图案的文件名,再通过ObjectIdToObject方法由实体id返回实体对象,最后通过创建链表,把需要设置的参数添加到链表中去,通过transparency设置透明度就行啦。
3、主要用到函数说明:
(1)_DMxDrawX::DrawHatchFromPoint
根据一个点,在当前控件显示范围内搜缩闭合区域,然后用该闭合区域创建填充对象,详细说明如下:
参数 | 说明 |
DOUBLE dX | 开始搜索点X值 |
DOUBLE dY | 开始搜索点y值 |
DOUBLE dPatternScale | 图案缩放比例 |
(2)IMxDrawDatabase::ObjectIdToObject
实体id返回实体对象,具体详细如下:
参数 | 说明 |
[in] LONGLONG lId | 实体id |
c#代码实现如下:
MxDrawResbuf tran = new MxDrawResbuf(); tran.AddLong(150); hatch.SetProp("transparency", tran);
js代码实现如下:
var getPoint = mxOcx.NewComObject("IMxDrawUiPrPoint"); getPoint.message = "点取一点"; if (getPoint.go() != 1) { return; } var frstPt = getPoint.value(); if (frstPt == null) return; mxOcx.PatternDefinition = "SOLID"; var id = mxOcx.DrawHatchFromPoint(frstPt.x, frstPt.y, 1.0); if (id == 0) return; var hatch = mxOcx.ObjectIdToObject(id); var tran = mxOcx.NewResbuf(); tran.AddLong(50); hatch.SetProp("transparency", tran);
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~