




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、CAD中的选择集过滤一、选择集过滤时的使用方式如下:Object指使用SelectionSet这个方法适用的对象运用select方法上面的例题已经运用了select方法,下面讲一下select的5种Mode选择方式:1:择全部对象(acselectionsetall)2 .选择上次创建的对象(acselectionsetlast)3 .选择上次选择的对象(acselectionsetprevious)4 .选择矩形窗口内对象(acselectionsetwindow)5 .选择矩形窗口内以及与边界相交的对象(acselectionsetcrossing)1) object.SelectMode
2、,Point1,Point2,FilterType儿FilterData2) object.SelectOnScreenFilterType儿FilterData3) object.SelectAtPointPoint,FilterType,FilterDataFilterType:Variant变体(整数数组);仅用于输入;(可选项)指定使用的过滤器类型的DXF组码。FilterData:Variant变体(变体数组);仅用于输入;(可选项)过滤器的值。二、DXF群组码共同群组码代码一览表群码说明预设值-4过滤群组方式,例如AND、ANDOR、OR、XOR、XOR、NOT、NOT单一条件时可
3、省略-1图元名称(会随每一个图档开启而有所不同)不可省略0图元类型,例如ARC、LINE、CIRCLE.不可省略5处理码不可省略6线型名称(如果线型不为BYLAYER,此群码值会出现)BYLAYER8图层名称不可省略48线性比例(选择性)1.060物件可见性,0=可见,1=不可见062颜色编号(如果线型不为BYLAYER,此群群码会出琨)当值为0畤,即指BYLAYER,口果是负值即指该图层是关闭的(选择性)BYLAYER67值为空或0时即指图元在模型空间,如果为1指在图形空间0三、过滤群组方式-FilterType(DXF群组码)=-4过滤群组方式内含项目描述运算法则1或多个所有项目的交集1+
4、1=1,1+0=0,0+1=0,0+0=01或多个所有项目的并集1+1=1,1+0=1,0+1=1,0+0=02个两个项目的异或运算1+1=0,1+0=1,0+1=1,0+0=01个不包含此项目的值NOT(1)=0,NOT(0)=1四、范例:1、过滤条件为图元为MTEXT图元是MTEXTFilterDataMTEXTFilterType02、过滤条件为图元为CIRCLE或LINE图元是CIRCLEOR图元是LINEFilterDataFilterType-400-43、过滤条件为图元在DIM图层(LAYER)中的CIRCLE或LINE(图元是CIRCLEOR图元是LINE)AND图层位于DIM
5、层FilterDataANDDIMANDFilterType-4-400-48-44、过滤的条件为图元为CIRCLE或LINE但图层(LAYER)不属于DIM层(图元是CIRCLEOR图元是LINE)ANDNOT图层位于DIM层)FilterDataANDANDFilterType-4-4100-41-418-4-4的XData的XData。strAppName=south名称:获取与修改AutoCADEntity功能:获取与修改AutoCADEntity源代码:南方CASS实体编码的应用程序名PublicFunctionGetCode(objEntAsAcadEntity,strAppNam
6、eAsString)AsVariantDimdTypeAsVariant,dDataAsVariant,iAsIntegerIfHasXData(objEnt,strAppName)=FalseThenGetCode=ElseobjEnt.GetXDatastrAppName,dType,dDataFori=LBound(dType)ToUBound(dType)IfdType(i)=1000ThenGetCode=dData(i)ExitForEndIfNextiEndIfEndFunctionPublicFunctionSetCode(ByValobjEntAsAcadEntity,ByV
7、alstrTextAsString,ByValstrAppNameAsString)DimdType(0To1)AsIntegerDimmData(0To1)AsVariantdType(0)=1001:mData(0)=strAppNamedType=1000:mData(1)=strTextobjEnt.SetXDatadType,mDataEndFunctionPublicFunctionHasXData(ByValentAsAcadEntity,ByValstrAppNameAsString)AsBooleanDimdataTypeAsVariantDimDataAsVarianten
8、t.GetXDatastrAppName,dataType,DataHasXData=TrueIfIsEmpty(dataType)ThenHasXData=FalseEndIfEndFunctionDimSET_PLAsAcadSelectionSetDimSET_nameAsStringSET_name=setnameDimF_type(0To7)AsIntegerDimF_data(0To7)AsVariantF_type(0)=-4:F_data(0)=F_type(4)=-4:F_data(4)=OnErrorResumeNextIfNotIsNull(ThisDrawing.Sel
9、ectionSets.Item(SET_name)ThenSetSET_PL=ThisDrawing.SelectionSets.Item(SET_name)SET_PL.DeleteEndIfSetSET_PL=ThisDrawing.SelectionSets.Add(SET_name)SET_PL.SelectOnScreenF_type,F_dataDimnAsInteger,iAsIntegern=SET_PL.Count-1DimD_BHAsIntegerD_BH=0Fori=0TonDimPL_coor()AsDoubleDimDt_lwplAsAcadLWPolyline,Dt
10、_plAsAcadPolylineDimmAsInteger,jAsIntegerD_BH=D_BH+1IfSET_PL.Item(i).ObjectName=AcDbPolylineThenSetDt_lwpl=SET_PL.Item(i)m=(UBound(Dt_lwpl.Coordinates)+1)*3/2-1ReDimPL_coor(m)Forj=0TomPL_coor(3*j)=Dt_lwpl.Coordinates(2*j)PL_coor(3*j+1)=Dt_lwpl.Coordinates(2*j+1)PL_coor(3*j+2)=0NextjElseIfSET_PL.Item
11、(i).ObjectName=AcDb2dPolylineThenSetDt_pl=SET_PL.Item(i)m=UBound(Dt_pl.Coordinates)/3ReDimPL_coor(m)Forj=0TomPL_coor(3*j)=Dt_pl.Coordinates(3*j)PL_coor(3*j+1)=Dt_pl.Coordinates(3*j+1)PL_coor(3*j+2)=Dt_pl.Coordinates(3*j+2)NextjEndIfDimset_DZAsAcadSelectionSetDimsetDZ_nameAsStringsetDZ_name=DZ_LWplDi
12、mFT_type(1)AsIntegerDimFT_data(1)AsVariantFT_type(0)=0:FT_data(0)=LWPOLYLINE”FT_type(1)=8:FT_data(1)=JMDIfNotIsNull(ThisDrawing.SelectionSets.Item(setDZ_name)ThenSetset_DZ=ThisDrawing.SelectionSets.Item(setDZ_name)set_DZ.DeleteEndIfSetset_DZ=ThisDrawing.SelectionSets.Add(setDZ_name)set_DZ.SelectByPo
13、lygonacSelectionSetCrossingPolygon,PL_coor,FT_type,FTdataDimFSAsInteger,aAsIntegerDimFW_LWPLAsAcadLWPolyline,HAOAsStringDimD_type(0To1)AsIntegerDimD_data(0To1)AsVariantDimInsert_point(2)AsDoubleDimBHAsAcadTextFS=setDZ.Count-1IfFS0ThenFora=0ToFSHAO=D_BH&-&(a+1)D_type(0)=1001:D_data(0)=LSZDD_type(1)=1
14、000:D_data(1)=HAOSetFW_LWPL=set_DZ(a)FW_PL.SetXDataD_type,D_dataInsert_point(0)=FW_LWPL.Coordinates(0)Insert_point(1)=FW_LWPL.Coordinates(1)Insert_point(2)=0SetBH=ThisDrawing.ModelSpace.AddText(HAO,Insert_point,2)BH.Layer=编号NextaElseD_type(0)=1001:D_data(0)=LSZDD_type(1)=1000:D_data(1)=D_BHSetFW_LWPL
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年中级机械工程师考试试题及答案
- 2025年大数据分析师资格考试试题及答案出炉
- 2025年图书馆管理资格考试试卷及答案
- 2025年环保工程师执业考试试卷及答案
- 2025年风景园林规划设计试题及答案
- 2025年人力资源管理师考试试题及答案详解
- 高端固态电池研发项目知识产权保护合同
- 智能家居产品责任保险费用协议
- 网络直播数字调音台效果库租赁与智能语音合成技术服务合同
- 民航气象信息服务空域申请补充协议
- 情感反应与内容反映练习
- DB63-T 1004-2011 青海省既有居住建筑节能改造技术规程-(高清现行)
- 班组级教育安全培训记录表
- 评标专家聘用协议范本书
- GB∕T 9125.2-2020 钢制管法兰连接用紧固件 第2部分:Class系列
- ASME QME-1-2002核电厂能动机械设备的鉴定
- 浙江省温州市2021-2022学年高一下学期期末语文试题
- 乙二醇安全技术说明书MSDS
- 一年级数学上册 20以内的减法玩扑克做数学教案 新版冀教版
- 新开模具开发进度表
- 华为性格测试攻略
评论
0/150
提交评论