Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de
  AutoCAD VBA
  Block Zuschneiden

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
  
PNY: der unverzichtbare Partner für umfassende KI-Lösungen von Workstations bis zu Edge Computing und KI-Cluster-Bereitstellung, eine Pressemitteilung
Autor Thema:  Block Zuschneiden (3999 mal gelesen)
c.schojer
Mitglied



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

Beiträge: 299
Registriert: 23.05.2007

Autocad 2018

erstellt am: 06. Jul. 2009 09:32    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 liebe Kollegen!
Folgendes Problem:
Ich habe zb einen Block eingefügt der
mittels einer Polylinie zugeschnitten wurde
funktioniert ja mittels dem Befehl _xclip
Die Frage ist kann ich das auch irgendwie mit VBA machen? (Sauber ohne sendcommand)

Gibts da irgendwo ne Doku dazu??

Mfg Chris

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


Ex-Mitglied

erstellt am: 06. Jul. 2009 12:26    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat

Hi Chris,

mit VBA wird's schwer (bin jetzt nicht mal sicher, ob überhaupt möglich), mit dotNET kann man eine ARX-Funktion mit Invoke und Pointern zu den Objekten (BlockReference und Outline) aufrufen.

Du fragst nach Doku  ==> nein Sorry, ich hätts nirgends gefunden

Und bevor ich dann am Abend lange suche: wirklich VBA oder dotNET?

- alfred -

------------------
www.hollaus.at

c.schojer
Mitglied



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

Beiträge: 299
Registriert: 23.05.2007

Autocad 2018

erstellt am: 06. Jul. 2009 12:32    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

Bräuchte das für VBA im Autocad integriert
Mfg Chris

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


Ex-Mitglied

erstellt am: 06. Jul. 2009 13:44    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat

Hi,

was hast Du bisher schon? Damit ich zumindest ableiten kann, wie Du mit Polylinien/Grenzen zum Clippen umgehst, welche Objektarten Du clipst, ....

Wenn ich versuche, es mit VBA zu machen (ist, wenn ich mich recht erinnere 'hacking into the XRecords'), würde ich gerne zuerst sehen, worauf ich mich einlasse, ev. gibt es darin schon Ausschliessungsgründe. Am besten mit dem Code, mit dem Du's derzeit machst und Zeichnung(en) mit den bei Dir vorkommenden Gegebenheiten.

- alfred -

------------------
www.hollaus.at

c.schojer
Mitglied



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

Beiträge: 299
Registriert: 23.05.2007

Autocad 2018

erstellt am: 06. Jul. 2009 13: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

Naja bisher hab ich nicht viel
gerade mal das filtern aus dem Selectionset
=>Polylinie und Block
Und anhand der Koordinaten der Polylinie wollte ich ein Clipping erstellen.

Das Clipping was ich gesehen habe geht aber nur für Bilder und bringt mir nix.
Ich hab nicht mal einen Ansatz wie ich das mit vba realisieren könnte
(Bis auf mit Sendcommand)
Aber es wäre gut wenns mit VBA ginge (automatisches nachziehen wenn sich die Polylinie ändert. Das wäre mein Ziel)
Mfg Chris

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


Ex-Mitglied

erstellt am: 06. Jul. 2009 14:03    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat

Hi,

und welche Polylinientypen hast Du? 2D-Poly, LW-Poly, mit gesplined und 'Kurve angeglichen'. ==> Genau für diese Fragen hätte ich mir gewünscht, bestehenden Code zu sehen und Musterzeichnungen, wo die Zustände, die bei Dir vorkommen, ersichtlich sind.

Wie gehst Du mit den Bögen um? (Clip geht nur mit geraden Polyliniensegmenten! Also müssen vorher Bögen segmentiert werden) Dann willst Du wahrscheinlich, wenn die Grenze assoziativ sein soll, nicht die segmentierten Vertizes modifizieren, um z.B. für den Bogen im Verlauf der Polylinie einen Radius zu ändern. Da gehört ein ganzer Workflow dahinter!

Mach das mal und schick mir dann den Code, ich ergänze dann wenn möglich, damit's (hoffentlich) mit VBA funkt.

- alfred -

------------------
www.hollaus.at

c.schojer
Mitglied



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

Beiträge: 299
Registriert: 23.05.2007

Autocad 2018

erstellt am: 06. Jul. 2009 14:24    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


ClipBlock.zip

 
Hallo Also das mit den Bögen habe ich selbst noch nicht bedacht
Mit _Xclip funktioniert das mit dem anklicken der Polylinie als Objekt
Siehe Dwg da siehst einen fertig zurechtgeschnittenen Block.
Der Code ist natürlich nur mager aber mir gehts vor allem mal um grundsätzliches!
Mfg Chris

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


Ex-Mitglied

erstellt am: 06. Jul. 2009 21:08    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat

Hi,

sorry, ich sehe keine Möglichkeit, dies in VBA zu tun ohne über Lisp oder dotNET oder ARX auszuweichen.

Mit Lisp hast Du hier einen Code
Wenn es einfacher sein soll, dann kannst Du auch über das VL-Application-Object mit '(command "_xclip" ...' aus VBA heraus arbeiten.

Aber eine Lösung hier zu präsentieren, die das gesamte Event-Handling für nachfolgendes Ändern der Grenzpolylinie inkludiert, benötigt einige Zeit (zumindest deutlich mehr als ich hier geben kann). 

Hoffe es hilft Dir trotzdem weiter, - alfred -

------------------
www.hollaus.at

c.schojer
Mitglied



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

Beiträge: 299
Registriert: 23.05.2007

Autocad 2018

erstellt am: 07. Jul. 2009 07:07    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

Du Danke vorerst mal
Gibts ev ne Möglichkeit Paramter an lisp weiterzugeben
zb die Handles von dem Polyline Objekt und dem Block sodaß man nur ne Funktion schreibt die das Clipping macht??
Es ist nur so in Lisp bin ich nicht sehr bewandert
Das Event Handling könnte ich ja in VBA machen...
wäre für mich einfacher!
Mfg Chris

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


Ex-Mitglied

erstellt am: 07. Jul. 2009 09:28    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat

Hi,

mit z.B. (handent "3D2") kannst Du das Objekt mit dem Handle &h3D2 an Lisp übergeben, Du kannst genauso nur den Handle als Text übergeben und dann im Lisp mit 'handent' auswerten.

Wenn es Dir darum geht, wie man in Lisp eine Funktion definiert, die Parameter übernimmt ==> das kriegst Du auch schon aus der Hilfe direkt raus, da steht z.B.
(defun sym ([arguments] [/ variables...]) expr...)

HTH, - alfred -

------------------
www.hollaus.at

c.schojer
Mitglied



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

Beiträge: 299
Registriert: 23.05.2007

Autocad 2018

erstellt am: 07. Jul. 2009 11: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

Bekomme das Lisp programm von oben nicht zum laufen?
Was kann das sein nicht korrekt geladen??
Mfg Chris

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

c.schojer
Mitglied



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

Beiträge: 299
Registriert: 23.05.2007

Autocad 2018

erstellt am: 07. Jul. 2009 11:12    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

Bekomme das Lisp programm von oben nicht zum laufen?
Was kann das sein nicht korrekt geladen??
Mfg Chris

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


Ex-Mitglied

erstellt am: 27. Jul. 2009 21:42    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat

Hi,

vorerst mal sorry, der Thread ist mir 'entglitten'. 

Zitat:
Bekomme das Lisp programm von oben nicht zum laufen?
...kannst Du mir den Code zeigen, damit ich mir vorstellen kann, woran's scheitern könnte.

Arbeitest Du jetzt mit Lisp oder VBA (aus dem heraus Du etwas Lisp-artiges starten willst)?

- alfred -

------------------
www.hollaus.at

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)2025 CAD.de | Impressum | Datenschutz