- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
CAD二次验报告4
实验四 用户交互、选择集及扩展属性一、主要内容1、基于用户交互式的信息输入2、创建选择集3、给图形实体添加扩展属性二、学时安排三、预习内容回顾用户交互命令的使用、选择集创建的几种方式,四、实验步骤4.1 用户交互Editor ed = Application.DocumentManager.MdiActiveDocument.Editor;//提示输入圆心坐标 PromptPointOptions fristpoint = new PromptPointOptions(\n请输入圆心:); …… //提示输入半径 PromptDoubleOptions r = new PromptDoubleOptions(\n请输入圆半径:);…… 4.1.1 读入字符串//获取提示框输入的或点选的坐标 PromptPointResult result = ed.GetPoint(fristpoint); Point3d p = result.Value; 4.1.2 读入Double型数据 //获取输入半径,并转换为double类型 PromptDoubleResult Temp_radius = ed.GetDouble(r); //通过PromptDoubleResult下的属性Value转换为.NET下的Double类型 double radius = Temp_radius.Value;4.1.3 读入Point//声明圆对象 Circle c = new Circle(); c.Center = p; c.Radius = radius;4.1.4 拾取实体Entity ent = (Entity)acTrans.GetObject(id, OpenMode.ForRead, false);4.1.5 打开dwg文件//打开并插入dwg文件[CommandMethod(insertdwg)] static public void insertdwg() { OpenFileDialog pOpenFileDialog = new OpenFileDialog(打开地形图, null, dwg, openfile, OpenFileDialog.OpenFileDialogFlags.DefaultIsFolder); pOpenFileDialog.ShowDialog(); string fname = pOpenFileDialog.Filename; Document doc = Application.DocumentManager.MdiActiveDocument; Editor ed = doc.Editor; if (!File.Exists(fname)) fname = HostApplicationServices.Current.FindFile(fname, doc.Database, FindFileHint.Default); using (Database db = new Database(false, false)) { db.ReadDwgFile(fname, FileShare.ReadWrite, true, null); using (Transaction t = doc.TransactionManager.StartTransaction()) { int n = fname.LastIndexOf(\\); ObjectId idBTR = doc.Database.Insert(fname.Substring(n + 1, fname.Length - n - 5), db, false); BlockTable bt = (BlockTable)t.GetObject(doc.Database.BlockTableId, OpenMode.ForWrite); BlockTableRecord btr = (BlockTableRecord)t.GetObject(bt[BlockTableRecord.ModelSpace], OpenMode.ForWrite); using (BlockReference bref = new BlockReference(Point3d.Origin, idBTR)) { DBObjectCollection pbrefColl = new DBObjectCollection(); bref.Explode(pbrefColl); int num = pbrefColl.Count; for (int i = 0; i num; i++) { btr.AppendEntity(pbrefColl[i] as Entity);
您可能关注的文档
最近下载
- (高清版)DB42∕T 2382-2025 《社区居家养老服务机构安全应急规范》.docx VIP
- 消防基层指挥员如何做好初战控火指挥.pptx
- EN IEC 63118-1-2024 用于汽车启动、照明、点火(SLI)应用和辅助用途的12V 锂离⼦⼆次电池 第1部分:一般要求和测试方法中文版.pdf
- 《人工智能通识基础》全套教学课件.pptx
- AutomotiveSPICE_V4.0_中文版(最新版).pdf VIP
- 工程机械焊接结构图.ppt VIP
- 2025年宜昌当阳市招聘工会协理员考试笔试试题[含答案].pdf VIP
- 中职劳动教育教学课件专题四教学课件.pptx VIP
- 财务报表分析(第6版)全套PPT课件.pptx
- 双减课题小学数学作业分层设计的策略研究课题开题报告与结题报告.pdf VIP
文档评论(0)