2016-05-03 8 views
-1

Ich möchte Linien, Kreise, Bögen und andere Standard-Entitäten in C# wie in AutoLisp zeichnen. Z.B. In AutoLisp können Sie Kreise über 3 Punkte auf dem Umfang zeichnen. Aber in der .Net API gibt es nur einen Konstruktor über Zentrum und Radius. Also, wenn ich 3 Punkte auf dem Umfang habe, muss ich das Zentrum und den Radius auf die gleiche Weise berechnen wie Autocad. Also ich muss kopieren die Logik existiert schon. Gibt es irgendwelche Libs, oder vermisse ich etwas? Und ich brauche 20 Ruf, um Zugang zum Chat zu bekommen> <Autocad. NET API Entities Konstruktoren, Zeichnung wie in AutoLisp

Antwort

0

Ich konfrontiert diese Situation während der Entwicklung meiner ARX-Anwendungen. In ARX verwende ich AcedCmd und AcedCommand. Ich nehme an, es wird der einfachste Weg sein. Autodesk.AutoCAD.Geometry.CircularArc3d, die einen 3 Punkte Konstruktor hat:

sample You can find here

+0

Da AutoCAD 2015 nicht mehr benötigt wird, um AcedCmd() aufzurufen, können Sie die Editor.Command() - und die Editor.CommandAsync() -Methode aufrufen. http://through-the-interface.typepad.com/through_the_interface/2014/03/autocad-2015-calling-commands.html – gileCAD

2

Sie können eine Instanz der nicht Datenbank resident Art erstellen.

Wenn Sie der Datenbank ein Circle-Objekt hinzufügen müssen, können Sie mit den Eigenschaften CircularArc3d Center, Normal und Radius die Circle-Instanz erstellen.