梦想CAD控件网页版搜索图面上的文字
在网页中查找到CAD控件图纸上的文字。点击此处在线演示。
主要用到函数说明:
_DMxDrawX::NewSelectionSet
实例化一个构造选择集进行过滤,该类封装了选择集及其处理函数。
_DMxDrawX::NewResbuf
新创建IMxDrawResbuf对象,构造一个过滤链表。
IMxDrawResbuf::AddStringEx
向链表中增加一个string数据,比如:把文字对象,当着过滤条件。
spFilte.AddStringEx("TEXT,MTEXT",5020);
IMxDrawSelectionSet::Select2
根据指定的选择方式在图上构造选择集,详细说明如下:
| 参数 | 说明 |
|---|---|
|
[in] MCAD_McSelect Mode |
构造选择集方式 |
|
[in] VARIANT point1 |
构造择择集时需要使用到的点对象 |
|
[in] VARIANT point2 |
构造择择集时需要使用到的点对象 |
|
[in,optional] VARIANT filterType |
构造选择集的过滤数据的类型 |
|
[in,optional] VARIANT filterData |
构造选择集的过滤数据 |
实例化一个构造选择集进行过滤,该类封装了选择集及其处理函数。将文字对象当作过滤条件,得到文字对象(此处可以是文字或多行文字)。
// 创建选择集对象
ss = mxOcx.NewSelectionSet();
// 创建一个链表对象
var spFilte = mxOcx.NewResbuf();
// 把文字,多行文字当着过滤条件
spFilte.AddStringEx("TEXT,MTEXT",5020);
// 得到图上所有文字,5代码,全图选择
ss.Select2(5,null,null,null,spFilte);
遍历每个文字对象,将文字放到视区中间并绘制一个标记圆。
// 遍历每个文字.
var bFind = false; // 遍历选择集
for(var i = 0; i < ss.Count;i++)
{
// 得到选集中的实体
var ent = ss.Item(i);
if(ent == null)
continue;
if (ent.ObjectName == "McDbText") {
// 得到文字内容
var sTxt = ent.TextString; if (sTxt == txt) {
// 把文字放到视区中间.
mxOcx.PutEntityInView(ent.ObjectID, 300); var dLen = mxOcx.ViewLongToDocCoord(80); // 绘制一个标记圆.
mxOcx.DrawVectorCircle(ent.Position.x,
ent.Position.y,
dLen, 65280);
bFind = true;
}
}
else if (ent.ObjectName == "McDbMText") { var param = mxOcx.NewResbuf();
param.AddObjectId(ent.ObjectID);
// 得到多行文字中的文字本内容
var ret = mxOcx.CallEx("Mx_GetMTextContent", param);
if (ret.AtString(0) == "Ok") { if (ret.AtString(1) == txt) {
// 把文字放到视区.
mxOcx.PutEntityInView(ent.ObjectID, 300); var dLen = mxOcx.ViewLongToDocCoord(80); // 绘制一个标记圆.
mxOcx.DrawVectorCircle(ent.Location.x,
ent.Location.y,
dLen, 65280);
bFind = true; break;
}
}
}
ent = null;
} if (!bFind) {
alert("没有找到文字对象");
}
// 在这里必须显示释放控件的COM对象指针.
ss = null;
spFilte = null;
CollectGarbage();
}
梦想CAD控件网页版搜索图面上的文字的更多相关文章
- 梦想CAD控件COM接口搜索图面上的文字
点击此处下载演示实例 主要用到函数说明: _DMxDrawX::NewSelectionSet 实例化一个构造选择集进行过滤,该类封装了选择集及其处理函数. _DMxDrawX::NewResbuf ...
- 梦想CAD控件网页版关于自定义命令
在CAD控件操作中,为方便使用者,使用自定义命令发出命令,完成CAD绘图,修改,保存等操作.点击此处在线演示. _DMxDrawX::RegistUserCustomCommand 向CAD控件注册一 ...
- 梦想CAD控件网页版标注样式
增加标注样式 _DMxDrawX::AddDimStyle 增加一个新的标注样式,如果当前已经有指定名的标注样式,就直接失败返回.详细说明如下: 参数 说明 BSTR pszName 新增加的标注样式 ...
- 梦想CAD控件网页版线型
增加线型 主要用到函数说明: _DMxDrawX::AddLinetype 增加一个线型定义.详细说明如下: 参数 说明 BSTR pszName 线型名 BSTR pszLineDefine 线定义 ...
- 梦想CAD控件网页版文字样式
增加文字样式 用户可以增加文字样式到数据库,并设置其字体等属性,具体实现js代码如下: function CreateText(){ //返回控件的数据库对象 var database =mxOcx. ...
- 梦想CAD控件网页版扩展数据
随着基于CAD的应用软件飞速发展,经常需要保存一些与图形可视性无关的数据,即非图形参数.例如在绘制化验样图中包含品位数据.MxCAD定义一类新的参数——实体扩展数据.扩展数据与实体的可视性无关,而是用 ...
- 如何在网页中浏览和编辑DWG文件 梦想CAD控件
如何在网页中浏览和编辑DWG文件 梦想CAD控件 www.mxdraw.com 梦想绘图控件5.2 是国内最强,最专业的CAD开发组件(控件),不需要AutoCAD就能独立运行.控件使用VC 201 ...
- 梦想CAD控件图块COM接口知识点
梦想CAD控件图块COM接口知识点 图块是将多个实体组合成一个整体,并给这个整体命名保存,在以后的图形编辑中图块就被视为一个实体.一个图块包括可见的实体如线.圆.圆弧以及可见或不可见的属性数据.图块的 ...
- 梦想CAD控件图层COM接口知识点
梦想CAD控件图层COM接口知识点 一.新建图层 主要用到函数说明: _DMxDrawX::AddLayer 增加新的图层.详细说明如下: 参数 说明 BSTR pszName 图层名 c#中实现代码 ...
随机推荐
- 【bzoj3208】花神的秒题计划Ⅰ
记忆化搜索 #include<algorithm> #include<iostream> #include<cstring> #include<cstdlib ...
- office文档、图片、音/视频格式转换工具
1.音频/视屏转换工具VLC https://wiki.videolan.org/Mp3/#Container_formats http://wenku.baidu.com/view/ba73ac5 ...
- Google Closure Compiler 高级模式及更多思考(转)
前言 Google Closure Compiler 是 Google Closure Tools 的一员,在 2009 年底被 Google 释出,早先,有 玉伯 的 Closure Compile ...
- Spark 二项逻辑回归__二分类
package Spark_MLlib import org.apache.spark.ml.Pipeline import org.apache.spark.ml.classification.{B ...
- mybatis中各种数据的映射类型
Mybatis对应的java和数据库的数据类型,最后有图片 Mybatis java ...
- /bin/bash: jar: command not found(转载)
转自:http://blog.csdn.net/zhangdaiscott/article/details/23138023 /bin/bash: jar: command not found 解决办 ...
- jQuery的each内部的break,continue
// break, continue在each等迭代器里都不可用 // return false = break // return true = continue function isClicke ...
- [Swift通天遁地]一、超级工具-(12)使用Toaster制作简短提示语的吐司窗口
★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★➤微信公众号:山青咏芝(shanqingyongzhi)➤博客园地址:山青咏芝(https://www.cnblogs. ...
- 修复mysql的表
数据损坏原因 MySQL表损坏一般是数据损坏,引起损坏的原因可能是由于磁盘损坏.系统崩溃或者MySQL服务器被崩溃等外部原因.例如有人使用kill -9终止进程,导致MySQL进程未能正常关闭,那么就 ...
- 洛谷P3366 【模板】最小生成树(Kruskal)
题目描述 如题,给出一个无向图,求出最小生成树,如果该图不连通,则输出orz 输入输出格式 输入格式: 第一行包含两个整数N.M,表示该图共有N个结点和M条无向边.(N<=5000,M<= ...