资源描述:
《cad二次实验报告》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、CAD开发实验(二)实验二AutoCAD基本图形对象创建与编辑一、主要内容1、创建直线2、创建圆3、创建圆弧4、创建多段线5、创建椭圆6、样条曲线7、创建面域8、创建文字9、创建填充10、创建尺寸标注11、创建三维实体二、学时安排三、预习内容回顾AutoCAD图形对象创建的一般过程。四、基本图形对象创建与编辑4.1基本图形对象创建4.1.1创建直线代码:[CommandMethod("CreatLine")]publicvoidCreatLine(){Databasedb=HostApplicationServices
2、.WorkingDatabase;using(Transactiontrans=db.TransactionManager.StartTransaction()){//creatlinePoint3dpt1=newPoint3d(20,20,0);Point3dpt2=newPoint3d(100,100,0);LinelineEnt=newLine(pt1,pt2);BlockTablebt=(BlockTable)trans.GetObject(db.BlockTableId,OpenMode.ForRead);B
3、lockTableRecordbtr=(BlockTableRecord)trans.GetObject(bt[BlockTableRecord.ModelSpace],OpenMode.ForWrite);PModifyEntID=btr.AppendEntity(lineEnt);trans.AddNewlyCreatedDBObject(lineEnt,true);trans.Commit();}}[CommandMethod("ModifyLine")]publicvoidModifyLine(){Databa
4、sedb=HostApplicationServices.WorkingDatabase;using(Transactiontrans=db.TransactionManager.StartTransaction()){EntitypEnt=(Entity)trans.GetObject(PModifyEntID,OpenMode.ForWrite);pEnt.ColorIndex=1;pEnt.Close();trans.Commit();}}4.1.2创建圆代码:[CommandMethod("Cir")]publ
5、icvoidCircle(){//声明圆对象Circlec=newCircle();c.Center=newPoint3d(0,0,0);c.Radius=100;Databasedb=HostApplicationServices.WorkingDatabase;//启动事务using(Transactiontrans=db.TransactionManager.StartTransaction()){//创建块表BlockTablec_block=(BlockTable)trans.GetObject(db.Blo
6、ckTableId,OpenMode.ForRead);//读取,0BlockTableRecordc_block_record=(BlockTableRecord)trans.GetObject(c_block[BlockTableRecord.ModelSpace],OpenMode.ForWrite);//写入,1c_block_record.AppendEntity(c);//块表记录追加实体,把图形对象的记录加入到块表记录trans.AddNewlyCreatedDBObject(c,true);//将圆添加
7、到事务处理中trans.Commit();//提交事务}}4.1.3创建圆弧代码://创建圆弧[CommandMethod("CreatAre")]publicvoidCreatArc(){Databasedb=HostApplicationServices.WorkingDatabase;using(Transactiontrans=db.TransactionManager.StartTransaction()){ArcpArc=newArc(newPoint3d(50,50,0),100,0,100);Block
8、Tablebt=(BlockTable)trans.GetObject(db.BlockTableId,OpenMode.ForRead);BlockTableRecordbtr=(BlockTableRecord)trans.GetObject(bt[BlockTableRecord.ModelSpace],OpenMode.F