Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  AutoCAD ObjectARX und .NET
  C# - Managed Wrapper Classes - Geometry vs. DatabaseServices

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
  
Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte
Autor Thema:  C# - Managed Wrapper Classes - Geometry vs. DatabaseServices (1782 mal gelesen)
RoSiNiNo
Mitglied
Konstrukteur


Sehen Sie sich das Profil von RoSiNiNo an!   Senden Sie eine Private Message an RoSiNiNo  Schreiben Sie einen Gästebucheintrag für RoSiNiNo

Beiträge: 1126
Registriert: 09.10.2002

Revit Structure 2011
Acad 2011-deutsch, Express Tools
3ds Max 2011
Win 7-Professional
HP Workstation Z400, 6GB
GeForce GTX 470

erstellt am: 07. Sep. 2004 17:38    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Ich hätte da mal eine Frage bezüglich Namespace Geometry und DatabaseServices.

Wann verwendet man was?

z.B. Das Object DatabaseServices.Line verwendet man um eine Linie mit dem TransactionManager in einer Zeichnung zu zeichnen.
Wofür verwendet man dann eigentlich das Objekt Geometry.Linie3d?

------------------
Roland

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

mapcar
Mitglied
CADmin



Sehen Sie sich das Profil von mapcar an!   Senden Sie eine Private Message an mapcar  Schreiben Sie einen Gästebucheintrag für mapcar

Beiträge: 1250
Registriert: 20.05.2002

Time flies like an arrow, fruit flies like a banana (Groucho Marx)

erstellt am: 07. Sep. 2004 20:06    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für RoSiNiNo 10 Unities + Antwort hilfreich

Die Klassen in Geometry sind eher 'theoretische' Objekte, haben aber nichts mit der Zeichnungsdatenbank zu tun. Man kann sie z.B. dazu verwenden, um Datenbankobjekte zu erzeugen oder auszuwerten.

Circle circle = new Circle(new Point3d(0, 0, 0), new Vector3d(0, 0, 1), 100);

public class Circle : Autodesk.AutoCAD.DatabaseServices.Curve
    Member von Autodesk.AutoCAD.DatabaseServices

der Ctor sieht so aus:

public Circle ( Autodesk.AutoCAD.Geometry.Point3d center , Autodesk.AutoCAD.Geometry.Vector3d normal , System.Double radius )
    Member von Autodesk.AutoCAD.DatabaseServices.Circle

Point3d und Vector3d sind also nur Klasse, die dazu dienen, einen Punkt bzw. Vektor anzugeben - wobei natürlich beide aus jeweils 3 Doubles bestehen. Da Punkte und Vektoren aber unterschiedliche Inhalte repräsentieren, gibt es auch zwei Klassen dafür (und nochmal 2 für 2d).

Bei manchen anderen Klassen in Geometry ist mir allerdings auch nicht klar, wofür die gut sein sollen: Ray3d z.B. - einen database.ray kann man damit nicht erzeugen...

Gruß, Axel Strube-Zettler

------------------
(defun - Lisp over night - AutoLisp-Programmierung für AutoCad - Da weiß man, wann man's hat
Meine AutoLisp-Seiten Mein Angriff auf dein Zwerchfell Mein Lexikon der Fotografie Mein gereimtes Gesülze

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

RoSiNiNo
Mitglied
Konstrukteur


Sehen Sie sich das Profil von RoSiNiNo an!   Senden Sie eine Private Message an RoSiNiNo  Schreiben Sie einen Gästebucheintrag für RoSiNiNo

Beiträge: 1126
Registriert: 09.10.2002

Revit Structure 2011
Acad 2011-deutsch, Express Tools
3ds Max 2011
Win 7-Professional
HP Workstation Z400, 6GB
GeForce GTX 470

erstellt am: 08. Sep. 2004 06:51    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Danke Axel,
jetzt wird mir einiges klar. Ich frage mich dann wofür es eigentlich eine Curve3d oder Curve2d gibt.
Wie definiert man eigentlich eine Tolerance? Wozu brauche ich die überhaupt.

------------------
Roland

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

mapcar
Mitglied
CADmin



Sehen Sie sich das Profil von mapcar an!   Senden Sie eine Private Message an mapcar  Schreiben Sie einen Gästebucheintrag für mapcar

Beiträge: 1250
Registriert: 20.05.2002

Time flies like an arrow, fruit flies like a banana (Groucho Marx)

erstellt am: 09. Sep. 2004 14:14    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für RoSiNiNo 10 Unities + Antwort hilfreich

Curve3d und Curve2d dienen wohl dazu, Berechnungen anzustellen (das, was z.B. in Lisp als vlax-curve-... zur Verfügung steht und in VBA schmerzlich fehlt).

Was meinst du mit Tolerance? Geometry.Tolerance? Der Wrapper für AcGeTol - dient zum Vergleichen, wie z.B. (equal a b epsilon) in Lisp. Das Entity "tolerance" hab ich erst überhaupt nicht gefunden, heisst aber wohl in ObjectARX "AcDbFcf" und als Wrapper "Database.FeatureControlFrame"... Alles ziemlich verwirrend;-)

Gruß, Axel Strube-Zettler

------------------
(defun - Lisp over night - AutoLisp-Programmierung für AutoCad - Da weiß man, wann man's hat
Meine AutoLisp-Seiten Mein Angriff auf dein Zwerchfell Mein Lexikon der Fotografie Mein gereimtes Gesülze

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

RoSiNiNo
Mitglied
Konstrukteur


Sehen Sie sich das Profil von RoSiNiNo an!   Senden Sie eine Private Message an RoSiNiNo  Schreiben Sie einen Gästebucheintrag für RoSiNiNo

Beiträge: 1126
Registriert: 09.10.2002

Revit Structure 2011
Acad 2011-deutsch, Express Tools
3ds Max 2011
Win 7-Professional
HP Workstation Z400, 6GB
GeForce GTX 470

erstellt am: 09. Sep. 2004 16:04    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Interessanterweise gibt es diese Möglichkeiten auch unter DatabaseServices.Curve.
Kann ich etwa Anhand einer bekannten ID Das Objekt Geometry.Curve2d definieren?

Und bei Tolerance meinte ich Geometry.Tolerance, weiß aber immer noch nicht wie ich sie erzeuge.

Aber eigentlich brauch ich das sowieso nicht wirklich, wie schon gesagt kann ich GetPointAtDistance, etc. auch beim Curve-Objekt abfragen, und da brauch ich keine Tolerance. Wo da der Unterschied zu Curve2d besteht verstehe ich da allerdings nicht, aber ich werde noch einige Zeit brauchen um mich etwas besser zurechtzufinden. 

------------------
Roland

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2023 CAD.de | Impressum | Datenschutz