![]() |
【转帖】
请教一下扩展数据过滤实体的问题
www.dimcax.com 请教一下扩展数据过滤实体的问题 我在做刻度盘,先画个圆弧,然后画了50个line做刻度,为了和圆弧关联,我把圆弧的id作为参数,保存到line的扩展数据中,现在我选中弧,想通过弧的id过滤选择line。 画line时,写扩展数据的代码: private void addlinedbrecord(string appname,objectid lineid,objectid arcid,point3d centerpoint,point3d referpoint,double angle)//typeid=1 { resultbuffer xdatain = new resultbuffer( new typedvalue((int)dxfcode.extendeddataregappname, appname), new typedvalue((int)dxfcode.extendeddatainteger32,1),//type=1 new typedvalue((int)dxfcode.extendeddataasciistring, arcid.tostring()), new typedvalue((int)dxfcode.extendeddataxcoordinate, centerpoint), new typedvalue((int)dxfcode.extendeddataxcoordinate, referpoint), new typedvalue((int)dxfcode.extendeddatareal, angle)); lineid.setxdata(appname, xdatain); } 过滤时代码: typedvalue[] ftv = new typedvalue[] { new typedvalue((int)dxfcode.operator , "<and"), new typedvalue((int)dxfcode.start, "line") , new typedvalue(1000,arcid.tostring()),//没有用,查出结果总是空 new typedvalue((int)dxfcode.operator , "and>") }; selectionfilter sf = new selectionfilter(ftv); promptselectionresult sp = ed.selectall(sf); if (sp.status != promptstatus.ok) { return new objectid[0] ; } else { return sp.value.getobjectids(); } 请问错在哪里? 晕,怎么没人回答呀? |
所有的时间均为北京时间。 现在的时间是 06:05 PM. |