Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  Lisp
  Visuallisp

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:  Visuallisp (1416 mal gelesen)
Kenny1
Mitglied



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

Beiträge: 77
Registriert: 29.06.2004

erstellt am: 01. Jul. 2004 07:00    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

Hallo Leute,
ich habe folgendes Problem :

Ich möchte ein paar Lisp-Routinen schreiben, mit denen ich Bauteile als 3D-Grafik einfügen kann. Dies soll über den Befehl"_box" erfolgen. Weiter sollen die Bauteile in der Zeichnung über den Befehl"_solidedit" verlängert oder verkürzt werden.
Jetzt die eigentliche Frage : Ist es mit Acad und Lisp möglich von diesen Bauteilen eine Stückliste ins Excel oder Access zu generieren.
Wichtig: Die Abmessungen der Bauteile sind alle unterschiedlich. Es werden alle 3 Dimensionen benötigt.
Genial wäre es, wenn man die Bauteile nach Typen klassifizieren könnte und bei der Übertragung dies berücksichtigt bzw. sortiert würde.

Kann man im Acad mit Grips 3D Bauteile ziehen ? Entwickelt ACAD in dieser Hinsicht etwas?

Gruß Kenny1.

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

CADwiesel
Moderator
CAD4FM UG




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

Beiträge: 1968
Registriert: 05.09.2000

AutoCAD, Bricscad
Wir machen das Mögliche unmöglich

erstellt am: 01. Jul. 2004 07:57    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 Kenny1 10 Unities + Antwort hilfreich

ich verschib das mal ins Lisp-Forum

------------------
Gruß
CADwiesel
Besucht uns im CHAT

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: 02. Jul. 2004 00:53    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 Kenny1 10 Unities + Antwort hilfreich

Tja, ich muss hier doch mal ein wenig intervenieren: Bauteile über den Befehl '_box' einfügen? Und dann mit '_solidedit' bearbeiten?

Klingt ziemlich unwahrscheinlich. Es gibt Kollegen hier, die würden dir jetzt einen Grundkurs empfehlen. Ich bin eher Optimist und sage: Wenn du bei der Konkurrenz von LEGO arbeitest (ich meine die, die oben auf den Steinen quadratische Noppen anbringen statt der runden - das gibt's ja immerhin als Baukasten für Architekten) - dann hast du eine Chance mit deinem Konzept. Dann kommst du mit "_box" locker aus.

> Wichtig: Die Abmessungen der Bauteile sind alle unterschiedlich

Wenn das anders wäre, dann wäre LEGO auch recht langweilig;-) Aber immer nur Flachdach und ohne Fenster - und ohne die runden Einer, die immer irgendwo unterm Teppich verschwinden?

> Kann man im Acad mit Grips 3D Bauteile ziehen ?

Aber klar, wenn man genug hat...

> Entwickelt ACAD in dieser Hinsicht etwas?

nee, John Walker hat sich zurückgezogen. Das war der Einzige bei denen, der wirklich Grips hatte.

SCNR, Axel

------------------

Meine AutoLisp-Seiten
Meine private Homepage
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

Kenny1
Mitglied



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

Beiträge: 77
Registriert: 29.06.2004

erstellt am: 06. Jul. 2004 08: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

ja, vom Prinzip her ist es ne Art Lego. Die Teile werden aneinandergesetzt, wobei die Art und Weise immer unterschiedlich ist. Es gibt lediglich gewisse „Regeln“. Diese sind aber auch nicht immer zwingend. Die Bauteile haben zu 95 % die Geometrie eines Quaders. Ab und an müssen die Bauteile verformt werden, haben aber nie hochkomplexe 3D Formen. Mit „_extrude“ und ein wenig Schneiden kriegt man bei diesen „komplexen“ Teilen alles hin. Weiter müssen die Teile auftragsspezifisch bearbeitet werden : Bohrungen, Ausschnitte, Anschlussfunktionen ect. Eigentlich nichts weltbewegendes.
Als Muß-Kriterium gilt noch folgendes :
1. Die Stückliste soll aus der Zeichnung heraus generiert werden. Die „Software“ soll aus kleinen „Makros“ bestehen, woraus ich mir meine Gesamtkonstruktion erstelle. D.h. mehrere kleine Makrofunktionen ergeben meine fertige Gesamtkonstruktion. Danach sollte ein Bauteilliste mit verschiedenen Informationen herausgegeben werden in Excel oder Access. Ist dies machbar ? Wenn ja, wie ?
2. Wenn die Konstruktion erstellt worden ist, kommt der Bedarf an nachträglichen Änderungen ohne komplett neu anzufangen. Ist es möglich diese Makrofunktionen wieder aufzurufen und die Werte neu einzugeben, so das die Grafik ( incl. Stückliste) neu generiert wird ?

Da ich noch kein Lisp-Profi bin ( hab lediglich ein paar dieser Makros (halb)fertig ) stellt sich mir auch die Frage, welche Programmierung die richtige ist. VBA, Lisp oder muß es doch C++ sein. Kann man nach diesen wenigen Beschreibungen eine Aussage treffen ?


Gruß Kenny1

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

CAD-Huebner
Ehrenmitglied V.I.P. h.c.
Verm.- Ing., ATC-Trainer



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

Beiträge: 9732
Registriert: 01.12.2003

One AutoCAD 2.5 - 2023, Civil 3D, Win10/win11

erstellt am: 06. Jul. 2004 09:42    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 Kenny1 10 Unities + Antwort hilfreich

Für die 95% der reinen Quader empfehle ich einen Block aus einem Einheitsquader 1,1,1. Evt. ein paar zusätzliche Attribute anhängen (Artikelnummer, Preis o. ä.)
dann mit ATTEXT oder EATTEXT die Blockreferenzen in eine Tabelle exportieren, dabei sind BL:XSCALE, BL:YSCALE und BL:ZSCALE dann Länge, Breite und Höhe.
für den Rest (nicht in Blöcken enthaltene 3D-Körper mit Fasen o. ä.) gäbe es dann noch die ActiveX/Vba Methode GetBoundingBox

Gruß
Udo Hübner

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: 06. Jul. 2004 10:47    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 Kenny1 10 Unities + Antwort hilfreich

Ungleich skalierte Blöcke? Da, Udo, bin ich ein bisschen skeptisch, ob ma das machen sollte - es lässt sich ja hinterher nichts mehr dran verändern! Aber ich komme gleich noch mal darauf zurück.

Lisp oder VBA? Natürlich ist es vielleicht etwas praktischer, wenn man den Datenbankteil in VBA macht - aber das geht mit Lisp fast genauso, da die ActiveX-Methoden ja auch in Lisp zur Verfügungs stehen. VBA hätte nur eindeutige Stärken, wenn Dialoge usw. ins Spiel kämen.

Was viel wichtiger ist: Für das Bearbeiten und Ändern von Volumenkörpern gibt es in keiner der beiden Sprachen direkte Unterstützung. Man ist also darauf angewiesen, die AutoCAD-Befehle zu benutzen! Und da entscheidet sich die Sache eindeutig für Lisp: Die command-Programmierung ist hier deutlich einfacher!

Und dann stellt sich natürlich die Frage: Ist es einfacher, ein (command "_-insert" ...) mit Skalierungsfaktoren zu schreiben, oder aber ein (command "_box" ...) mit 3 Seitenlängen? Nimmt sich doch nix - aber im zweiten Fall kann man hinterher noch ein Loch reinbohren oder auch eine Kollisionsprüfung über die ganze Zeichnung fahren.

Wenn man fit ist im 3D-Zeichnen mit 3DSolids, dann ist die Programmierung mit command sogar richtig einfach, von ein paar Kleinigkeiten abgesehen: Es ist z.B. nicht möglich, das Gesabbel in der Kommandozeile abzustellen, da hilft kein NOMUTT und gar nix (jedenfalls war das so bei meinen letzten Programmen, die ich in diesem Bereich geschrieben habe - vielleicht hat man in den neueren Versionen doch noch ein Einsehen gehabt). Und man sollte wissen, dass man den Befehlen niemals zu viele Entities auf einmal geben sollte, z.B. bei (subtract ...). 100 subtracts mit je 100 Entities geht ganz fix, ruft man den Befehl einmal auf und übergibt gleich 10000 Entities, kann's Stunden oder Tage dauern.

Was den Datenbank-Anschluss angeht: Schreiben einer Excel-Tabelle aus Lisp war hier schon des öfteren Thema - da gibt's Fertiglösungen. Mal hier suchen, und auch beim Wiesel.

Gruß, Axel

------------------

Meine AutoLisp-Seiten
Meine private Homepage
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

Kenny1
Mitglied



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

Beiträge: 77
Registriert: 29.06.2004

erstellt am: 19. Jul. 2004 20:47    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

Hallo,

Das Thema Attribute hat sich für mich erledigt, da ich in der Auswertung der Listen nicht flexibel genug bin. Ebenso ist es ein absolutes Muß-Kriterium, das ich in die Teile nach ein Loch, ein Ausschnitt ect. hineinbekomme.
Muß ich wohl den Weg über Lisp versuchen. Momentan tendiere ich stark zum Lisp. Die AutoCAD-Nähe ist genau das, was ich als den großen Vorteil ansehe und mag. Man kann alles in „command“ reinpacken. Mit VBA habe ich mich noch nicht so intensiv beschäftigt.
Wie stark ist denn Lisp eingeschränkt in der Gestaltung der Masken ? Kann man Grafikdateien einbinden ? Kann man Bibliotheken ansteuern ? Damit meine ich, wenn ich eine Konfiguration erstellt habe, dann möchte ich vielleicht „diesem Dingen“ einen Namen geben, weil es ein „Standard“ ist und ich es beim nächsten Mal laden möchte ?

Wenn ich das Material im nachhinein ändern möchte, kann ich dies über „Auftragsspezifische Variablen“ erledigen, ohne das ich alles neu hinstellen muß ? Kann man da eine Art „Neu-Generier-funktion“ erstellen ?
Dann zur Ausgabe noch ein paar Fragen :
Ist es in Lisp möglich, Baugruppen über Macros einzufügen und im nachhinein in der Zeichnung diese als Position zu gruppieren, die dann in der Stücklisten auf Wunsch gruppiert ausgegeben werden ?.
Kann man sich die Ausgaben der verschiedenen Listen so konfigurieren, das nur ein Button notwendig ist. ( Die Oberfläche soll sehr einfach sein...). Bei den Attributen habe ich diesen Wizzard, wo man nicht alles direkt verknüpfen kann.
Dann eine für heute abschließende, vielleicht auch zum Nase rümpfende Frage : Ist es in der Acad-Oberfläche möglich eine Excel – Tabelle „anzudocken“ ( ähnlich dem Eigenschaftsmanager oder den schönen Paletten). Diese könnte man ja ideal zur Bibliotheksverwaltung von Standards nutzen.

Gruß Kenny1

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