| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
| |
| Effiziente Datenmigration trifft nahtlose Systemintegration , ein Anwenderbericht
|
Autor
|
Thema: Ellipse exportieren Winkel/Radius (1903 mal gelesen)
|
pepper4two Mitglied
Beiträge: 1133 Registriert: 30.11.2003 Dell Precision M6800; Intel® Core™ i7-4810MQ Prozessor; 32GB (4x8GB) HyperX HX316LS9IB/8 1600MHz DDR3L; AMD FirePro M6100 2GB GDDR5; UltraSharp FHD (1.920 × 1.080); Hybrid-SATA-Festplatte, 2,5 Zoll, 5oo GB, 6 Gbit/s, 8 GB Flash-Speicher; Spaca Mouse Pro Wireless; Cad Mouse; SWX 2013 SP5
|
erstellt am: 06. Dez. 2012 23:25 <-- editieren / zitieren --> Unities abgeben:
Hallo liebe AutoCad Spezialisten, kann mir einer von euch sagen ob und wenn ja wie, ich die Kontur einer elliptischen Polylinie exportieren kann. Ich bräuchte, zum Import in ein anderes Programm, eine Tabelle die aus zwei Spalten besteht, in der ersten soll der Winkel angegeben werden und in der zweiten Spalte der Abstand (Radius) der Linie vom Mittelpunkt. Da ich vornehmlich mit Inventor Arbeite und mir zugegebenermaßen das Detailwissen zu Autocad fehlt hoffe ich das mir einer von euch dabei helfen kann die notwendigen Informationen zu exportieren. Gegockelt hab ich schon aber nur mit mässigem Erfolg, xy Koordinaten Anleitungen kann ich finden jedoch keine information zum Export von Polaren Koordinaten. Beste Grüße Matthias ------------------ Nihil Ex Nihilo Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
jupa Ehrenmitglied V.I.P. h.c. Ruheständler
Beiträge: 6052 Registriert: 16.09.2004 Windows 10 64bit, ACAD Rel. 14 - ACAD 2023
|
erstellt am: 07. Dez. 2012 05:43 <-- editieren / zitieren --> Unities abgeben: Nur für pepper4two
Hallo Matthias, da wirst Du in AutoCAD nichts fertiges finden, weil die von Dir gewünschten Daten so nicht in der dwg-Datenbank hinterlegt sind. Wenn es nur gelegentlich vorkommt, kannst Du Dir, ausgehend vom (voher hoffentlich skizzierten) Zentrumspunkt der elliptischen Polylinie ein paar Linien zeichen (wie viele hängt von der gewünschten Genauigkeit ab), die bis an die Ellipse reichen (eine erste Linie vom Zentrumspunkt entlang der Hauptachse zeichnen, mit Reihe polar anordenen und Überstände wegstutzen) und dann deren Geometriedaten abfragen (Länge, Winkel). Das läßt sich relativ bequem mit eattext machen. Ist 'ne Sache von einer Minute. Dabei ist es sogar egal, ob Du eine elliptische Polylinie oder eine echte Ellipse hast. Wenn so eine Aufgabe häufiger vorkommt, werden wohl ein paar Zeilen LISP-Code hilfreich sein. Jürgen
[Diese Nachricht wurde von jupa am 07. Dez. 2012 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
CADmium Moderator Maschinenbaukonstrukteur
Beiträge: 13527 Registriert: 30.11.2003 Hinweis: Meine Mitarbeit auf CAD.DE ist fakultativ, unentgeltlich und beruht nur auf einem ausgeprägtem Helfersyndrom.
|
erstellt am: 07. Dez. 2012 07:32 <-- editieren / zitieren --> Unities abgeben: Nur für pepper4two
naja .. eigentlich bekommt man so ne Tabelle mit Excel ganz gut hin: http://de.wikipedia.org/wiki/Ellipse .. (Ellipsengleichung in Parameterform) aber zum "Abgreifen" hier ein kleines Lisp: (quick und dirty und zum selbsttesten) (defun C:Ellipsenkoords( / E M START ENDE COUNT DELTA PARAM P R W) (vl-load-com) (if(and(setq E(car(entsel "\nEllipse wählen: "))) (setq E(vlax-ename->vla-object E)) (=(strcase(vla-get-objectname E)) "ACDBELLIPSE") (setq M(vlax-safearray->list(vlax-variant-value(vla-get-center E)))) (setq START(vlax-curve-getstartparam E)) (setq ENDE(vlax-curve-getendparam E)) ) (progn (setq COUNT 50) (setq DELTA (/(- ENDE START)(float COUNT))) (setq PARAM START) (princ (strcat "\nMittelpunkt: "(vl-princ-to-string M))) (princ "\nPUNKT\tRADIUS\tWINKEL") (repeat COUNT (setq P (vlax-curve-getpointatparam E PARAM)) (setq R (distance P M)) (setq W (angle (mapcar '- P M) '(1 0 0))) (princ (strcat "\n"(vl-princ-to-string P)"\t" (rtos R 2 3)"\t"(rtos (* W 57.29577951)2 3))) (setq PARAM(+ PARAM DELTA)) ) ) ) )
------------------ Also ich finde Unities gut ... und andere sicher auch --------------------------------------- - Thomas - "Bei 99% aller Probleme ist die umfassende Beschreibung des Problems bereits mehr als die Hälfte der Lösung desselben." Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
pepper4two Mitglied
Beiträge: 1133 Registriert: 30.11.2003
|
erstellt am: 07. Dez. 2012 07:53 <-- editieren / zitieren --> Unities abgeben:
Hallo Ihr beiden, danke schon mal für die Tipps, das Lisp werde ich ausprobieren. Ich hoffe es funktioniert auch mit anderen Formen denn was die Kontur angeht war ich nicht ganz präzise, es handelt sich um eine aus diversen Ellipsen und Geraden zusammengesetzte Kontur. Beste Grüße Matthias ------------------ Nihil Ex Nihilo Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
CADmium Moderator Maschinenbaukonstrukteur
Beiträge: 13527 Registriert: 30.11.2003 Hinweis: Meine Mitarbeit auf CAD.DE ist fakultativ, unentgeltlich und beruht nur auf einem ausgeprägtem Helfersyndrom.
|
erstellt am: 07. Dez. 2012 08:15 <-- editieren / zitieren --> Unities abgeben: Nur für pepper4two
|
pepper4two Mitglied
Beiträge: 1133 Registriert: 30.11.2003
|
erstellt am: 07. Dez. 2012 08:29 <-- editieren / zitieren --> Unities abgeben:
Hallo Cadmium, habs gerade festgestellt das die oben genannte Einschränkung besteht (Fehlermeldung: nil). Was muss ich daran ändern um die Einschränkung aufzuheben? Nachtrag: Der Ausgangs-/Mittelpunkt der Kontur liegt auf 0,0,0 Das andere Programm akzeptiert nur die Polarkoordinaten, ansonsten hätte ich mich auf die xy Variante beschränkt. Danke für die Hilfe Matthias ------------------ Nihil Ex Nihilo [Diese Nachricht wurde von pepper4two am 07. Dez. 2012 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
CADmium Moderator Maschinenbaukonstrukteur
Beiträge: 13527 Registriert: 30.11.2003 Hinweis: Meine Mitarbeit auf CAD.DE ist fakultativ, unentgeltlich und beruht nur auf einem ausgeprägtem Helfersyndrom.
|
erstellt am: 07. Dez. 2012 08:54 <-- editieren / zitieren --> Unities abgeben: Nur für pepper4two
na ok (defun C:POLARkoords( / E M START ENDE COUNT DELTA PARAM P R W) (vl-load-com) (if(and(or(setq E(car(entsel "\nKontur wählen: "))) (prompt "\nNichts gewählt.Abbruch") ) (setq E(vlax-ename->vla-object E)) (or(setq START(vlax-curve-getstartparam E)) (prompt "\nKeine Kurve gewählt.Abbruch") ) (setq ENDE(vlax-curve-getendparam E)) (or(setq M(getpoint "\nKoordiantenursprung :< 0 0 0 >")) (setq M'(0.0 0.0 0.0)) ) ) (progn (setq COUNT 50) (setq DELTA (/(- ENDE START)(float COUNT))) (setq PARAM START) (princ "\nPUNKT\tRADIUS\tWINKEL") (repeat COUNT (setq P (mapcar '- (vlax-curve-getpointatparam E PARAM)) M) (setq R (distance P M)) (setq W (angle (mapcar '- P M) '(1 0 0))) (princ (strcat "\n"(vl-princ-to-string P)"\t" (rtos R 2 3)"\t"(rtos (* W 57.29577951)2 3))) (setq PARAM(+ PARAM DELTA)) ) ) ) ) [ungetestet]
------------------ Also ich finde Unities gut ... und andere sicher auch --------------------------------------- - Thomas - "Bei 99% aller Probleme ist die umfassende Beschreibung des Problems bereits mehr als die Hälfte der Lösung desselben." Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
pepper4two Mitglied
Beiträge: 1133 Registriert: 30.11.2003
|
erstellt am: 07. Dez. 2012 09:24 <-- editieren / zitieren --> Unities abgeben:
Hallo CADmium, das LISP läuft nicht die Fehlermeldung lautet: "Zu wenige Argumente in SETQ: (SETQ P (MAPCAR (QUOTE -) (VLAX-CURVE-GETPOINTATPARAM E PARAM)) M)" Beste Grüße Matthias ------------------ Nihil Ex Nihilo Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
CADmium Moderator Maschinenbaukonstrukteur
Beiträge: 13527 Registriert: 30.11.2003 Hinweis: Meine Mitarbeit auf CAD.DE ist fakultativ, unentgeltlich und beruht nur auf einem ausgeprägtem Helfersyndrom.
|
erstellt am: 07. Dez. 2012 09:26 <-- editieren / zitieren --> Unities abgeben: Nur für pepper4two
ja , Klammer zuviel (defun C:POLARkoords( / E M START ENDE COUNT DELTA PARAM P R W) (vl-load-com) (if(and(or(setq E(car(entsel "\nKontur wählen: "))) (prompt "\nNichts gewählt.Abbruch") ) (setq E(vlax-ename->vla-object E)) (or(setq START(vlax-curve-getstartparam E)) (prompt "\nKeine Kurve gewählt.Abbruch") ) (setq ENDE(vlax-curve-getendparam E)) (or(setq M(getpoint "\nKoordiantenursprung :< 0 0 0 >")) (setq M'(0.0 0.0 0.0)) ) ) (progn (setq COUNT 50) (setq DELTA (/(- ENDE START)(float COUNT))) (setq PARAM START) (princ "\nPUNKT\tRADIUS\tWINKEL") (repeat COUNT (setq P (mapcar '- (vlax-curve-getpointatparam E PARAM) M)) (setq R (distance P M)) (setq W (angle (mapcar '- P M) '(1 0 0))) (princ (strcat "\n"(vl-princ-to-string P)"\t" (rtos R 2 3)"\t"(rtos (* W 57.29577951)2 3))) (setq PARAM(+ PARAM DELTA)) ) ) ) ) ------------------ Also ich finde Unities gut ... und andere sicher auch --------------------------------------- - Thomas - "Bei 99% aller Probleme ist die umfassende Beschreibung des Problems bereits mehr als die Hälfte der Lösung desselben." Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
pepper4two Mitglied
Beiträge: 1133 Registriert: 30.11.2003
|
erstellt am: 07. Dez. 2012 09:33 <-- editieren / zitieren --> Unities abgeben:
|
pepper4two Mitglied
Beiträge: 1133 Registriert: 30.11.2003 Dell Precision M6800; Intel® Core™ i7-4810MQ Prozessor; 32GB (4x8GB) HyperX HX316LS9IB/8 1600MHz DDR3L; AMD FirePro M6100 2GB GDDR5; UltraSharp FHD (1.920 × 1.080); Hybrid-SATA-Festplatte, 2,5 Zoll, 5oo GB, 6 Gbit/s, 8 GB Flash-Speicher; Spaca Mouse Pro Wireless; Cad Mouse; SWX 2013 SP5
|
erstellt am: 07. Dez. 2012 15:33 <-- editieren / zitieren --> Unities abgeben:
Hallo CADmium, wenn ich das richtig verstehe dann kann ich durch das Anheben der Zahl hinter "setq COUNT" von 50 auf, sagen wir 1000, die Anzahl der ausgegebenen Werte (Schritte) erhöhen oder? Wenn dem so sein sollte, wie hoch ist die maximal mögliche Anzahl und kann man das Ergebnis irgendwie in eine Datei schreiben? (Im Moment hab ich die Ausgabedaten einfach kopiert und in eine Textdatei eingefügt) Danke im voraus für die weitere Hilfe Matthias ------------------ Nihil Ex Nihilo Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
REl Mitglied Maschienenbautechniker
Beiträge: 349 Registriert: 25.07.2012 WIN 7 Prof. 64bit SP1 Intel Xeon W3530 24GB Ram NVIDEA Quadro 2000
|
erstellt am: 11. Dez. 2012 10:48 <-- editieren / zitieren --> Unities abgeben: Nur für pepper4two
Schau dir mal DATENEXTRAKT an. Dort kann man Infos über Zeichnungselemente wie Elipsen auch ausgeben lassen. leider sind keine Winkle angegeben aber Vektoren damit und mit den Winkelfunktionen kann man sicherlich in Exel sich was einfaches bastel wo man alle infos ausgegeben bekommt. MfG ------------------ wer nichst weis der mus nichts tuhn Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
CADmium Moderator Maschinenbaukonstrukteur
Beiträge: 13527 Registriert: 30.11.2003 Hinweis: Meine Mitarbeit auf CAD.DE ist fakultativ, unentgeltlich und beruht nur auf einem ausgeprägtem Helfersyndrom.
|
erstellt am: 11. Dez. 2012 10:52 <-- editieren / zitieren --> Unities abgeben: Nur für pepper4two
|