CAD关于实体的选择操作(com接口网页版)

调用控件的AddCurrentSelect函数,把实体设置成选中状,函数详见:

http://www.mxdraw.com/help/[email protected]@[email protected]_BOOL.htm

调用控件的ClearCurrentSelect函数清除当前选择

调用IMxDrawSelectionSet::CurrentSelect 得到当前选择的实体,详见:

http://www.mxdraw.com/help/[email protected][in,defaultvalueNULL]_IMxDrawResbuf_.htm

下面代码,得到当前选择的实体:

//实例化一个构造选择集进行过滤,该类封装了选择集及其处理函数。
var  ss = mxOcx.NewSelectionSet();
//构造一个过滤链表
var filter = mxOcx.NewResbuf();
ss.CurrentSelect(filter);

for (var i = 0; i < ss.Count; i++)
{
    var ent = ss.Item(i);
    if (ent.ObjectName == "McDbLine")
    {
        // 是个直线。
        var line = ent;
        var spt = line.StartPoint;
        alert(spt.x);
        alert(spt.y);
        var ept = line.EndPoint;
        alert(ept.x);
        alert(ept.y);

    }
    else if (ent.ObjectName == "McDbPolyline")
    {
        // 是个多义线.
        var pl = ent;
        var j = 0;
        // 循环,得到端点坐标
        for (j = 0; j < pl.NumVerts; j++)
        {
            var pt = pl.GetPointAt(j);
            alert(pt.x);
            alert(pt.y);

        }
    }
}

原文地址:https://www.cnblogs.com/yzy0224/p/12016493.html

时间: 2024-11-07 15:29:19

CAD关于实体的选择操作(com接口网页版)的相关文章

CAD关于实体扩展记录操作(com接口网页版)

在CAD中,对象上面不但可以存放扩展数据,还可以存放扩展记录,在对象上可创建一个字典(这个字典和前面说到的全局字典类似),字典中存放扩展记录,这样可以存放更多的数据,调用GetExtensionDictionary函数得到字典. 下面js代码演示如何读取对象扩展记录: // 让用户在图上选择一个对象. var ent = mxOcx.GetEntity("选择实体"); if (ent == null) return; // 得到实体扩展字典 var dict = ent.GetExt

CAD关于文字样式得到图所有文字对象使用的字体文件操作(com接口网页版)

下面代码会遍历图上所有CAD文字对象,然后取它使用的字体信息 var database = mxOcx.GetDatabase(); //返回数据库中的文字样式表表对象 var textStyleTable = database.GetTextStyleTable(); // 定义选择集对象 var ss = mxOcx.NewSelectionSet(); //构造一个过滤链表 var spFilte = mxOcx.NewResbuf(); //得到当前空间的所有实体 ss.AllSelec

CAD关于文字样式修改文字对象的文字样式操作(com接口网页版)

文字对象都一个TextStyle属性,用这个属性可以设置,或取到文字对象的文字样式. 下面代码演示设置一个文字对象的字体为黑体,如果没有文字样式,就添加文字样式. var ent = mxOcx.GetEntity("选择实体对象:"); if(ent == null) { return; } // 得到数据库对象. var database = mxOcx.GetDatabase(); // 得到文本式表. var textStyleTable = database.GetTextS

CAD关于文字样式删除文字样式操作(com接口网页版)

在删除文字样式前,最好判断图上有没有文字对象正在使用该文字样式,如果有的话就不要删除文字样式 JS代码如下: function DelText() { var winWidth = 440; var winHeight = 140; var winLeft = (screen.width - winWidth) / 2; var winTop = (screen.height - winHeight) / 2 - 20; var str = 'dialogHeight:' + winHeight

CAD关于块表操作2(com接口网页版)

E   添加块表记录 下面代码,判断块表中是否有指定名称的块表记录,如果没有就增一个块表记录. function AddBlockRrecord(sName,blkOriginPoint) { // 取当前数据库. var curDatabase = mxOcx.GetDatabase(); // 得到块表 var blkTable = curDatabase.GetBlockTable(); // 判断块表是否已经有该名称的块名. if (blkTable.Has(sName)) { var

EF实体框架数据操作接口(转)

//----------------------------------------------------------------// Copyright (C) 2013 河南禄恒软件科技有限公司// // 功能描述:实体框架数据仓储的操作接口,包含增删改查接口////----------------------------------------------------------------using System;using System.Linq;using System.Linq.

EF实体框架数据操作接口

//----------------------------------------------------------------// Copyright (C) 2013 河南禄恒软件科技有限公司// // 功能描述:实体框架数据仓储的操作接口,包含增删改查接口////----------------------------------------------------------------using System;using System.Linq;using System.Linq.

EF实体框架数据操作基类(转)

//----------------------------------------------------------------// Copyright (C) 2013 河南禄恒软件科技有限公司// // 功能描述:实体框架数据仓储的操作接口,包含增删改查接口////----------------------------------------------------------------using System;using System.Data.Entity.Infrastruct

EF实体框架数据操作基类

//----------------------------------------------------------------// Copyright (C) 2013 河南禄恒软件科技有限公司// // 功能描述:实体框架数据仓储的操作接口,包含增删改查接口////----------------------------------------------------------------using System;using System.Data.Entity.Infrastruct