AutoCAD에서 원을 그리는 함수를 먼저 정의한다.
필요에 따라 사용할 수 있는 함수로, 아래와 같이 정의하여 사용한다.
static public Circle CreateCircle(Point3d CenterPt, double dRadius)
{
Circle oCir = null;
Database db = HostApplicationServices.WorkingDatabase;
Autodesk.AutoCAD.DatabaseServices.TransactionManager tm = db.TransactionManager;
Editor ed = Autodesk.AutoCAD.ApplicationServices.Application.DocumentManager.MdiActiveDocument.Editor;
using (Transaction ts = tm.StartTransaction())
{
try
{
BlockTable blockTable = (BlockTable)ts.GetObject(HostApplicationServices.WorkingDatabase.BlockTableId, OpenMode.ForRead, false);
BlockTableRecord modelSpace = (BlockTableRecord)ts.GetObject(blockTable[BlockTableRecord.ModelSpace], OpenMode.ForWrite);
oCir = new Circle(CenterPt, Vector3d.ZAxis, dRadius);
oCir.Layer = "0";
oCir.ColorIndex=2;
modelSpace.AppendEntity( oCir );
ts.AddNewlyCreatedDBObject(oCir, true);
ts.Commit();
}
catch (System.Exception exception)
{
ed.WriteMessage(exception.ToString());
ts.Abort();
}
finally
{
ts.Dispose();
}
}
return oCir ;
}
'AutoCAD C#' 카테고리의 다른 글
[AutoCAD C#]AutoCAD Palette 배경색상 설정 (0) | 2024.11.09 |
---|---|
[AutoCAD C#]AutoCAD에서 C# 코드를 이용하여 선택한 블록들의 위치 출력 (0) | 2024.10.09 |
[AutoCAD C#]오토캐드에서 선택한 객체 정보를 보여준다. (0) | 2024.02.28 |
[AutoCAD C#]오토캐드에서 블럭(Block)들을 수량과 레이어(Layer) 구분하여 출력하기 (1) | 2024.02.27 |
[AutoCAD C#]오토캐드에서 블럭(Block)을 선택, 레이어 변경하기 (0) | 2024.02.25 |