more samples
[CommandMethodAttribute("DrawCircle1")]
public static void DrawCircle1()
{
SDSResultBuffer rb = new SDSResultBuffer();
rb.Add(new TypedValue(0, "circle"));
rb.Add(new TypedValue(62, 5));
rb.Add(new TypedValue(10, new SDSPoint(0.0, 0.0, 0.0)));
rb.Add(new TypedValue(40, 10));
SDSMethods.EntMake(rb);
}
[CommandMethodAttribute("DrawCircle2")]
public static void DrawCircle()
{
//new way to get COM instance
AcadApplication app = (AcadApplication)DRXNET.OdAp.Application.ComApplication;
if (app == null)
{
DRXNET.SDS.SDSMethods.PrintF("\n" + "Doh");
}
DRXNET.OdGe.Point3d pt1 = new DRXNET.OdGe.Point3d(0, 0, 0);
AcadDocument Doc = app.ActiveDocument;
AcadDatabase Db = Doc.Database;
AcadCircle myCircle = Db.ModelSpace.AddCircle(pt1.ToArray(), 12);
myCircle.color = ACAD_COLOR.acCyan;
myCircle.Update();
}
[CommandMethodAttribute("addlayout")]
public static void addlayout()
{
//new way to get COM instance
AcadApplication app = (AcadApplication)DRXNET.OdAp.Application.ComApplication;
if (app == null)
{
DRXNET.SDS.SDSMethods.PrintF("\n" + "Doh");
}
AcadDocument Doc = app.ActiveDocument;
AcadLayout myLayout = Doc.Layouts.Add("MyLayout");
}
[CommandMethodAttribute("myosmode")]
public static void myosmode()
{
//new way to get COM instance
AcadApplication app = (AcadApplication)DRXNET.OdAp.Application.ComApplication;
if (app == null)
{
DRXNET.SDS.SDSMethods.PrintF("\n" + "Doh");
}
AcadDocument Doc = app.ActiveDocument;
Doc.SetVariable("OSMODE", 191);
}
[CommandMethodAttribute("myplolyline")]
public static void myplolyline()
{
try
{
//new way to get COM instance
AcadApplication app = (AcadApplication)DRXNET.OdAp.Application.ComApplication;
if (app == null)
{
DRXNET.SDS.SDSMethods.PrintF("\n" + "Doh");
}
AcadDocument Doc = app.ActiveDocument;
AcadDatabase Db = Doc.Database;
Point2dCollection ptcollection = new Point2dCollection();
ptcollection.Add(new Point2d(0, 0));
ptcollection.Add(new Point2d(0, 100));
ptcollection.Add(new Point2d(100, 100));
ptcollection.Add(new Point2d(100, 0));
ptcollection.Add(new Point2d(0, 0));
List<double> vertexList = new List<double>(10);
ptcollection.ForEach(p => vertexList.AddRange(p.ToArray()));
AcadLWPolyline pline = Db.ModelSpace.AddLightWeightPolyline(vertexList.ToArray());
object omin;
object omax;
pline.GetBoundingBox(out omin, out omax);
double[] min = (double[])omin;
double[] max = (double[])omax;
pline.Rotate(new double[] { (max[0] - min[0]), (max[1] - min[1]) }, 0.785398163);
pline.Update();
}
catch (System.Exception ex)
{
DRXNET.SDS.SDSMethods.PrintF("\n" + ex.Message);
DRXNET.SDS.SDSMethods.PrintF("\n" + ex.StackTrace);
}
}