Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  Rund um AutoCAD
  Raster

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:  Raster (2017 mal gelesen)
xem
Mitglied
Zeichner


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

Beiträge: 847
Registriert: 07.08.2008

Software:
AutoCAD 2022 - 64bit
Windows 10 Pro - 64bit
PDFCreator 1.0.2 - 32bit
Ghostscript 9.0 - 64bit
PDF-XChange Viewer - 64bit
GIMP 2.6.8 - 64bit
MS Office 2013 - 32bit
Opera 12 - 32bit
MacroX - 32bit
7-zip - 64bit
-----------------------
Hardware:
Intel i5 680 3,6GHz @ 4GHz
8GB RAM 1333MHz
nVidia GTX 460 1024MB
Intel SSD 2.5 80GB X25-M
Samsung SyncMaster 245B+
Iiyama ProLite E1900s
Logitech mx518
Logitech G11
Roccat Sense Glacier Blue

erstellt am: 28. Aug. 2009 09: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

Hallo,

ich habe hier ein LISP mit dem ich in einen Raum ein Raster von Hilfspunkten legen kann.

Jetzt habe ich mal versucht nicht einen Block sondern die Zwischenablage einfügen zu lassen.

Einfach _insert mit _pasteclip austauschen war es aber nicht.

Hat einer von den Profis mal einen Tip?

Code:
(defun c:ras (/ Blockn corner1 corner2 columns rows roomwidth roomheight colspacing rowspacing)
(setq layfarb "2"); Farbe für Layer
(command "layer" "m" "E-Konstruktion" "fa" layfarb "E-Konstruktion" "")
(setq corner1 (getpoint "erste Ecke im Raum: ")
corner2 (getpoint "gegenüber liegende Ecke: ")
columns (getint "Anzahl X Richtung: ")
rows (getint "Anzahl Y Richtung: ")
roomwidth (abs (- (car corner1) (car corner2)))
roomheight (abs (- (cadr corner1) (cadr corner2)))
colspacing (/ roomwidth columns)
rowspacing (/ roomheight rows)
lowerleft
(list
(min (car corner1) (car corner2))
(min (cadr corner1) (cadr corner2))
); end list
)
(setq punktx (+(car lowerleft) (/ colspacing 2.0)))
(setq punkty (+(car lowerleft) (/ rowspacing 2.0)))

(setq AWSOLD (ssget"_X"))

(command "_insert" "E-Hilfepunkt" (list(+ (car lowerleft) (/ colspacing 2.0))(+ (cadr lowerleft) (/ rowspacing 2.0))0) "" "" "")

(if (= columns 1)
  (command "_array" "l" "" "R" rows columns rowspacing)

(if (= rows 1)
  (command "_array" "l" "" "R" rows columns colspacing)

  (command "_array" "l" "" "R" rows columns rowspacing colspacing)
  )
  )
(command "_.pselect" "_all" "_r" AWSOLD "")
  )


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

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

CADmium
Moderator
Maschinenbaukonstrukteur




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

Beiträge: 13508
Registriert: 30.11.2003

Hinweis: Meine Mitarbeit auf CAD.DE ist fakultativ, unentgeltlich und beruht nur auf einem ausgeprägtem Helfersyndrom.

erstellt am: 28. Aug. 2009 09:23    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 xem 10 Unities + Antwort hilfreich

(command "_pasteclip" '(0 0 0))  sollte funktionieren .. auch mit einem anderen Einfügepunkt ... allerdings müssen die neu eingefügten Objekte erst zu einem Auswahlsatz zusammengefaßt werden, damit der
(command "_array" "l" ... Reihebefehl was zu tun hat ... sonst ist nämlich die letzte Auswahl -> L was ganz anderes

------------------
  - 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


Ex-Mitglied

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

Hi,

nur um mehrere Varianten zu haben: hast Du Dir schon mal aus den Expresstools 'superhatch' angesehen?

Wenn Du einen Raum füllen willst, der Raum aber nicht gerade in den Rasterschritten gebaut ist, wie Deine Basiselemente für dir Reihe, bzw. schräge Kanten hat, dann macht das obiger Befehl ganz praktikabel.

- alfred -

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

xem
Mitglied
Zeichner


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

Beiträge: 847
Registriert: 07.08.2008

Software:
AutoCAD 2022 - 64bit
Windows 10 Pro - 64bit
PDFCreator 1.0.2 - 32bit
Ghostscript 9.0 - 64bit
PDF-XChange Viewer - 64bit
GIMP 2.6.8 - 64bit
MS Office 2013 - 32bit
Opera 12 - 32bit
MacroX - 32bit
7-zip - 64bit
-----------------------
Hardware:
Intel i5 680 3,6GHz @ 4GHz
8GB RAM 1333MHz
nVidia GTX 460 1024MB
Intel SSD 2.5 80GB X25-M
Samsung SyncMaster 245B+
Iiyama ProLite E1900s
Logitech mx518
Logitech G11
Roccat Sense Glacier Blue

erstellt am: 28. Aug. 2009 10: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

Ich würde gern einen dynamischen Block mit dem LISP aufteilen lassen. Das geht auch, nur bekomme ich dann immer den ersten Sichtbarkeitsstatus und ohne Attribute.

Wenn ich mir einen dynamischen Block so einrichte wie ich ihn gerne hätte und dann im Befehl nach einer Auswahl gefragt werde ...? Das müßte doch auch gehen?

(command "_insert" "E-Hilfepunkt" ... - das müßte dann durch eine Abfrage "Bitte Block auswählen" ersetzt werden. Aber wie soll das dann aussehen?

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

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

xem
Mitglied
Zeichner


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

Beiträge: 847
Registriert: 07.08.2008

Software:
AutoCAD 2022 - 64bit
Windows 10 Pro - 64bit
PDFCreator 1.0.2 - 32bit
Ghostscript 9.0 - 64bit
PDF-XChange Viewer - 64bit
GIMP 2.6.8 - 64bit
MS Office 2013 - 32bit
Opera 12 - 32bit
MacroX - 32bit
7-zip - 64bit
-----------------------
Hardware:
Intel i5 680 3,6GHz @ 4GHz
8GB RAM 1333MHz
nVidia GTX 460 1024MB
Intel SSD 2.5 80GB X25-M
Samsung SyncMaster 245B+
Iiyama ProLite E1900s
Logitech mx518
Logitech G11
Roccat Sense Glacier Blue

erstellt am: 31. Aug. 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

Ist das mit den dynamischen Blöcken so schwer, oder warum weiß da niemand weiter?

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

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

marc.scherer
Ehrenmitglied V.I.P. h.c.
CAD-Administrator



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

Beiträge: 2490
Registriert: 02.11.2001

Windows 10 64bit
AutoCAD Architecture 2018/2019 (deu/eng)
AEC-Collection 2019 (Revit und Zeugs)
Wenn sich's nicht vermeiden läßt:
D-A-CH Erweiterung (mies implementierter Schrott)

erstellt am: 31. Aug. 2009 09:41    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 xem 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von xem:
Ist das mit den dynamischen Blöcken so schwer, oder warum weiß da niemand weiter?



:hmm vielleicht weil Du Dich im Posting davor nicht so ganz klar ausgedrückt hast?
Sag' doch mal präzise an, was genau Du tun willst. Dann kommt sicherlich auch eine qualifizierte Antwort.

------------------
Ciao,
Marc

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

wronzky
Ehrenmitglied V.I.P. h.c.
CAD-Dienstleistungen für Architekten



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

Beiträge: 2154
Registriert: 02.05.2005

CAD:
AutoCAD 2.6 bis 2014
ADT 2005 bis ACA 2013
Arcibem
System:
Windows
Internet-Startseite:
http://www.archi.de

erstellt am: 31. Aug. 2009 10:08    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 xem 10 Unities + Antwort hilfreich

Zuerst normal einfügen, und dann den Sichtbarkeitsstatus SO ändern?

Grüsse, Henning

------------------
Henning Jesse
VoxelManufaktur
Computer-Dienstleistungen für Architekten und Ingenieure

  http://www.voxelman.de

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

xem
Mitglied
Zeichner


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

Beiträge: 847
Registriert: 07.08.2008

Software:
AutoCAD 2022 - 64bit
Windows 10 Pro - 64bit
PDFCreator 1.0.2 - 32bit
Ghostscript 9.0 - 64bit
PDF-XChange Viewer - 64bit
GIMP 2.6.8 - 64bit
MS Office 2013 - 32bit
Opera 12 - 32bit
MacroX - 32bit
7-zip - 64bit
-----------------------
Hardware:
Intel i5 680 3,6GHz @ 4GHz
8GB RAM 1333MHz
nVidia GTX 460 1024MB
Intel SSD 2.5 80GB X25-M
Samsung SyncMaster 245B+
Iiyama ProLite E1900s
Logitech mx518
Logitech G11
Roccat Sense Glacier Blue

erstellt am: 31. Aug. 2009 10:50    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

Also, ich habe einen dyn. Block mit meheren Sichtbarkeitsparametern und Attributen.

Wenn ich das LISP von oben verwende muß ich immer nach dem einfügen die Sichtbarkeitsparameter und Attribute für die eingefügten Blöcke auswählen / eingeben.

Einfacher wäre es den Block ein mal wie gewünscht einzustellen und dann mit dem LISP einzufügen. Eine Überlegung wäre den Block in die Zwischenablage zu kopieren und von dort einfügen zu lassen, oder eine Abfrage im LISP einbauen.

Eine Abfrage einbasteln die den voreingestellen dyn. Block dann verwendet wäre da sicher die besser Variante.

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

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

marc.scherer
Ehrenmitglied V.I.P. h.c.
CAD-Administrator



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

Beiträge: 2490
Registriert: 02.11.2001

Windows 10 64bit
AutoCAD Architecture 2018/2019 (deu/eng)
AEC-Collection 2019 (Revit und Zeugs)
Wenn sich's nicht vermeiden läßt:
D-A-CH Erweiterung (mies implementierter Schrott)

erstellt am: 31. Aug. 2009 11:16    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 xem 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von xem:
Eine Abfrage einbasteln die den voreingestellen dyn. Block dann verwendet wäre da sicher die besser Variante.

Wo ist denn der Unterschied zwischen:
# Dyna.Block variiert einfügen (bei vorher feststehenden Parametern)
# Dyna.Block in Grundform einfügen und danach die Parameter entsprechend CAD-Huebners Vorschlag ändern.

Im Ergebnis erhälst Du doch eine Dyna.Block Einfügung in der gewünschten Ausprägung.

------------------
Ciao,
Marc

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

marc.scherer
Ehrenmitglied V.I.P. h.c.
CAD-Administrator



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

Beiträge: 2490
Registriert: 02.11.2001

Windows 10 64bit
AutoCAD Architecture 2018/2019 (deu/eng)
AEC-Collection 2019 (Revit und Zeugs)
Wenn sich's nicht vermeiden läßt:
D-A-CH Erweiterung (mies implementierter Schrott)

erstellt am: 31. Aug. 2009 11:17    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 xem 10 Unities + Antwort hilfreich

...verdammt. Wo kommen die Doppel-Postings denn her?

[Diese Nachricht wurde von marc.scherer am 31. Aug. 2009 editiert.]

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

xem
Mitglied
Zeichner


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

Beiträge: 847
Registriert: 07.08.2008

Software:
AutoCAD 2022 - 64bit
Windows 10 Pro - 64bit
PDFCreator 1.0.2 - 32bit
Ghostscript 9.0 - 64bit
PDF-XChange Viewer - 64bit
GIMP 2.6.8 - 64bit
MS Office 2013 - 32bit
Opera 12 - 32bit
MacroX - 32bit
7-zip - 64bit
-----------------------
Hardware:
Intel i5 680 3,6GHz @ 4GHz
8GB RAM 1333MHz
nVidia GTX 460 1024MB
Intel SSD 2.5 80GB X25-M
Samsung SyncMaster 245B+
Iiyama ProLite E1900s
Logitech mx518
Logitech G11
Roccat Sense Glacier Blue

erstellt am: 31. Aug. 2009 11:55    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

Also wenn ich CAD-Huebners Vorschlag richtig verstehe, schreibe ich die Einstellungen für den dyn. Block in die Programmierung.

Es soll aber der Block so verwendet werden, wie er zuvor eingestellt (als Muster) wurde. Denn jedes Raster hat unterschiedliche Einstellungen im Block.

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

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

marc.scherer
Ehrenmitglied V.I.P. h.c.
CAD-Administrator



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

Beiträge: 2490
Registriert: 02.11.2001

Windows 10 64bit
AutoCAD Architecture 2018/2019 (deu/eng)
AEC-Collection 2019 (Revit und Zeugs)
Wenn sich's nicht vermeiden läßt:
D-A-CH Erweiterung (mies implementierter Schrott)

erstellt am: 31. Aug. 2009 12:03    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 xem 10 Unities + Antwort hilfreich

Nächster Bitte, ich bin raus.

------------------
Ciao,
Marc

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

xem
Mitglied
Zeichner


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

Beiträge: 847
Registriert: 07.08.2008

Software:
AutoCAD 2022 - 64bit
Windows 10 Pro - 64bit
PDFCreator 1.0.2 - 32bit
Ghostscript 9.0 - 64bit
PDF-XChange Viewer - 64bit
GIMP 2.6.8 - 64bit
MS Office 2013 - 32bit
Opera 12 - 32bit
MacroX - 32bit
7-zip - 64bit
-----------------------
Hardware:
Intel i5 680 3,6GHz @ 4GHz
8GB RAM 1333MHz
nVidia GTX 460 1024MB
Intel SSD 2.5 80GB X25-M
Samsung SyncMaster 245B+
Iiyama ProLite E1900s
Logitech mx518
Logitech G11
Roccat Sense Glacier Blue

erstellt am: 31. Aug. 2009 15:01    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 habe das mal versucht:

Code:
(defun c:test (/ Blockn corner1 corner2 columns rows roomwidth roomheight colspacing rowspacing)
(setq layfarb "2"); Farbe für Layer
(command "layer" "m" "E-Konstruktion" "fa" layfarb "E-Konstruktion" "")
(setq corner1 (getpoint "erste Ecke im Raum: ")
corner2 (getpoint "gegenüber liegende Ecke: ")
columns (getint "Anzahl X Richtung: ")
rows (getint "Anzahl Y Richtung: ")
roomwidth (abs (- (car corner1) (car corner2)))
roomheight (abs (- (cadr corner1) (cadr corner2)))
colspacing (/ roomwidth columns)
rowspacing (/ roomheight rows)
lowerleft
(list
(min (car corner1) (car corner2))
(min (cadr corner1) (cadr corner2))
); end list
)
(setq punktx (+(car lowerleft) (/ colspacing 2.0)))
(setq punkty (+(car lowerleft) (/ rowspacing 2.0)))


(setq ss (ssget))
(setq ins (cdr (assoc 10)))

(if ss (command "_copy" ins (list(+ (car lowerleft) (/ colspacing 2.0))(+ (cadr lowerleft) (/ rowspacing 2.0))0) "" "" ""))

(if (= columns 1)
  (command "_array" "l" "" "R" rows columns rowspacing)

(if (= rows 1)
  (command "_array" "l" "" "R" rows columns colspacing)

  (command "_array" "l" "" "R" rows columns rowspacing colspacing)
  )
  )
  )


Nur kommt dann nach der Auswahl:

Befehl: erste Ecke im Raum: gegenüber liegende Ecke: Anzahl X Richtung: 2
Anzahl Y Richtung: 2

Objekte wählen: 1 gefunden

Objekte wählen:
; Fehler: Zu wenig Argumente

weiß jemand woran es liegt?

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

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

CADmium
Moderator
Maschinenbaukonstrukteur




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

Beiträge: 13508
Registriert: 30.11.2003

Hinweis: Meine Mitarbeit auf CAD.DE ist fakultativ, unentgeltlich und beruht nur auf einem ausgeprägtem Helfersyndrom.

erstellt am: 31. Aug. 2009 15: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 Nur für xem 10 Unities + Antwort hilfreich

(cdr (assoc 10  von was)))  ??

------------------
  - 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

xem
Mitglied
Zeichner


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

Beiträge: 847
Registriert: 07.08.2008

Software:
AutoCAD 2022 - 64bit
Windows 10 Pro - 64bit
PDFCreator 1.0.2 - 32bit
Ghostscript 9.0 - 64bit
PDF-XChange Viewer - 64bit
GIMP 2.6.8 - 64bit
MS Office 2013 - 32bit
Opera 12 - 32bit
MacroX - 32bit
7-zip - 64bit
-----------------------
Hardware:
Intel i5 680 3,6GHz @ 4GHz
8GB RAM 1333MHz
nVidia GTX 460 1024MB
Intel SSD 2.5 80GB X25-M
Samsung SyncMaster 245B+
Iiyama ProLite E1900s
Logitech mx518
Logitech G11
Roccat Sense Glacier Blue

erstellt am: 31. Aug. 2009 15:17    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

(setq ins (cdr (assoc 10 ss))) 

Bin doch kein Profi. Habe mir 1000 Posts durchgelesen und mir was versucht zusammen zu reimen. Ich werde wenigstens schon mal nach einen Objekt gefragt  .

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

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

CADmium
Moderator
Maschinenbaukonstrukteur




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

Beiträge: 13508
Registriert: 30.11.2003

Hinweis: Meine Mitarbeit auf CAD.DE ist fakultativ, unentgeltlich und beruht nur auf einem ausgeprägtem Helfersyndrom.

erstellt am: 31. Aug. 2009 15:30    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 xem 10 Unities + Antwort hilfreich

ss ist bei dir ein Auswahlsatz ... keine Liste , auf die du die Funktion cdr anwenden könntest ...

(cdr(assoc 10(entget (ssname SS 0)))) könnte vielleicht was werden ....  nimmt das erste Objekt im Auswahlsatz , erzeugt die GC-Liste und ermittelt den Wert des GC10. Bei leerem Auswahlsatz .. einem Objekt ohne GC10 ect ... gehts aber schief.

Und Profi muß man nicht sein .. : Wissen kann man sich aneignen   -.. z.b. hier

------------------
      - 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

xem
Mitglied
Zeichner


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

Beiträge: 847
Registriert: 07.08.2008

Software:
AutoCAD 2022 - 64bit
Windows 10 Pro - 64bit
PDFCreator 1.0.2 - 32bit
Ghostscript 9.0 - 64bit
PDF-XChange Viewer - 64bit
GIMP 2.6.8 - 64bit
MS Office 2013 - 32bit
Opera 12 - 32bit
MacroX - 32bit
7-zip - 64bit
-----------------------
Hardware:
Intel i5 680 3,6GHz @ 4GHz
8GB RAM 1333MHz
nVidia GTX 460 1024MB
Intel SSD 2.5 80GB X25-M
Samsung SyncMaster 245B+
Iiyama ProLite E1900s
Logitech mx518
Logitech G11
Roccat Sense Glacier Blue

erstellt am: 31. Aug. 2009 17:31    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

So gehts fast. Die Aufteilung bezieht sich auf den ausgewählten Block und nicht auf das ausgewählte Rechteck.

Code:
(defun c:test (/ Blockn corner1 corner2 columns rows roomwidth roomheight colspacing rowspacing)
(setq corner1 (getpoint "erste Ecke im Raum: ")
corner2 (getpoint "gegenüber liegende Ecke: ")
columns (getint "Anzahl X Richtung: ")
rows (getint "Anzahl Y Richtung: ")
roomwidth (abs (- (car corner1) (car corner2)))
roomheight (abs (- (cadr corner1) (cadr corner2)))
colspacing (/ roomwidth columns)
rowspacing (/ roomheight rows)
lowerleft
(list
(min (car corner1) (car corner2))
(min (cadr corner1) (cadr corner2))
); end list
)
(setq punktx (+(car lowerleft) (/ colspacing 2.0)))
(setq punkty (+(car lowerleft) (/ rowspacing 2.0)))


(setq ss (ssget))


(if (= columns 1)
  (command "_array" ss "" "R" rows columns rowspacing)

(if (= rows 1)
  (command "_array" ss "" "R" rows columns colspacing)

  (command "_array" ss "" "R" rows columns rowspacing colspacing)
  )
  )
  )


Warum bezieht der sich auf den ausgewählten Block? Der ausgewählte Raum wird doch mit "rowspacing" und "colspacing" übergeben???

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

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

xem
Mitglied
Zeichner


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

Beiträge: 847
Registriert: 07.08.2008

Software:
AutoCAD 2022 - 64bit
Windows 10 Pro - 64bit
PDFCreator 1.0.2 - 32bit
Ghostscript 9.0 - 64bit
PDF-XChange Viewer - 64bit
GIMP 2.6.8 - 64bit
MS Office 2013 - 32bit
Opera 12 - 32bit
MacroX - 32bit
7-zip - 64bit
-----------------------
Hardware:
Intel i5 680 3,6GHz @ 4GHz
8GB RAM 1333MHz
nVidia GTX 460 1024MB
Intel SSD 2.5 80GB X25-M
Samsung SyncMaster 245B+
Iiyama ProLite E1900s
Logitech mx518
Logitech G11
Roccat Sense Glacier Blue

erstellt am: 01. Sep. 2009 10:21    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

So funzt es!

Code:
(defun c:test (/ Blockn corner1 corner2 corner3 columns rows roomwidth roomheight colspacing rowspacing)
(setq corner1 (getpoint "erste Ecke im Raum: ")
corner2 (getpoint "gegenüber liegende Ecke: ")
columns (getint "Anzahl X Richtung: ")
rows (getint "Anzahl Y Richtung: ")
roomwidth (abs (- (car corner1) (car corner2)))
roomheight (abs (- (cadr corner1) (cadr corner2)))
colspacing (/ roomwidth columns)
rowspacing (/ roomheight rows)
lowerleft
(list
(min (car corner1) (car corner2))
(min (cadr corner1) (cadr corner2))
); end list
)
(setq punktx (+(car lowerleft) (/ colspacing 2.0)))
(setq punkty (+(car lowerleft) (/ rowspacing 2.0)))

(setq ss (ssget))

(setq corner3 (getpoint "Basispunkt"))

(command "_copy" ss "" corner3 (list(+ (car lowerleft) (/ colspacing 2.0))(+ (cadr lowerleft) (/ rowspacing 2.0))0) "" "" "")

(if (= columns 1)
  (command "_array" "l" "" "R" rows columns rowspacing)

(if (= rows 1)
  (command "_array" "l" "" "R" rows columns colspacing)

  (command "_array" "l" "" "R" rows columns rowspacing colspacing)
  )
  )
  )


In der Befehlszeile steht nur noch was komisches? Weiß jemand woran das liegt?

Befehl: test
erste Ecke im Raum: gegenüber liegende Ecke: Anzahl X Richtung: 3
Anzahl Y Richtung: 5

Objekte wählen: 1 gefunden

Objekte wählen:
Basispunkt_copy
Objekte wählen:  1 gefunden

Objekte wählen:
Basispunkt angeben oder [Verschiebung/Mehrfach] <Verschiebung>: Zweiten Punkt
angeben oder <ersten Punkt der Verschiebung verwenden>:
Befehl: TEST Unbekannter Befehl "TEST". Drücken Sie F1-Taste für Hilfe.

Befehl: TEST Unbekannter Befehl "TEST". Drücken Sie F1-Taste für Hilfe.

Befehl: TEST Unbekannter Befehl "TEST". Drücken Sie F1-Taste für Hilfe.

Befehl: _array
Objekte wählen: l 1 gefunden

Objekte wählen: Anordnungstyp eingeben [Rechteckig/Polar] <R>: R
Zeilenanzahl eingeben (---) <1>: 5
Spaltenanzahl eingeben (| ||) <1> 3
Zeilenabstand eingeben oder Zelle angeben (---): 25.39358319009657
Spaltenabstand angeben  (| ||): 52.62763971261907
Befehl: nil

Und hat jemand noch eine Idee wie automatisch der Basispunkt vom ausgewählten Objekt genommen wird?

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

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

CADmium
Moderator
Maschinenbaukonstrukteur




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

Beiträge: 13508
Registriert: 30.11.2003

Hinweis: Meine Mitarbeit auf CAD.DE ist fakultativ, unentgeltlich und beruht nur auf einem ausgeprägtem Helfersyndrom.

erstellt am: 01. Sep. 2009 10:26    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 xem 10 Unities + Antwort hilfreich

das mit dem 3xTEST hängt bestimmt daran :
(command "_copy" ss "" corner3 (list(+ (car lowerleft) (/ colspacing 2.0))(+ (cadr lowerleft) (/ rowspacing 2.0))0) "" "" "")

und zum Basispunkt des ausgewählten Objektes habe ich dir oben schon was gepostet. Wenn du eh bloß 1 Objekt bearbeiten willst : nimm doch (car(entsel)) statt (ssget ..)

------------------
  - 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

marc.scherer
Ehrenmitglied V.I.P. h.c.
CAD-Administrator



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

Beiträge: 2490
Registriert: 02.11.2001

Windows 10 64bit
AutoCAD Architecture 2018/2019 (deu/eng)
AEC-Collection 2019 (Revit und Zeugs)
Wenn sich's nicht vermeiden läßt:
D-A-CH Erweiterung (mies implementierter Schrott)

erstellt am: 01. Sep. 2009 10:28    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 xem 10 Unities + Antwort hilfreich

Hi Xem,

verwendest Du zum proggen eigentlich den VLisp Editor (Befehl: _vlide)?
Da kann man prima selbst mit debuggen.
Der Kollege Jörn Bosse hat dazu mal 'ne Anleitung verfaßt, lesenswert!

------------------
Ciao,
Marc

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

xem
Mitglied
Zeichner


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

Beiträge: 847
Registriert: 07.08.2008

Software:
AutoCAD 2022 - 64bit
Windows 10 Pro - 64bit
PDFCreator 1.0.2 - 32bit
Ghostscript 9.0 - 64bit
PDF-XChange Viewer - 64bit
GIMP 2.6.8 - 64bit
MS Office 2013 - 32bit
Opera 12 - 32bit
MacroX - 32bit
7-zip - 64bit
-----------------------
Hardware:
Intel i5 680 3,6GHz @ 4GHz
8GB RAM 1333MHz
nVidia GTX 460 1024MB
Intel SSD 2.5 80GB X25-M
Samsung SyncMaster 245B+
Iiyama ProLite E1900s
Logitech mx518
Logitech G11
Roccat Sense Glacier Blue

erstellt am: 01. Sep. 2009 10:48    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 CADmium 

danke marc.scherer 

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

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

marc.scherer
Ehrenmitglied V.I.P. h.c.
CAD-Administrator



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

Beiträge: 2490
Registriert: 02.11.2001

Windows 10 64bit
AutoCAD Architecture 2018/2019 (deu/eng)
AEC-Collection 2019 (Revit und Zeugs)
Wenn sich's nicht vermeiden läßt:
D-A-CH Erweiterung (mies implementierter Schrott)

erstellt am: 01. Sep. 2009 11:18    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 xem 10 Unities + Antwort hilfreich

Hi xem,

und dann noch als dreingabe ein wenig aufpolierten code zum lernen:
[Edit: CADmium-Style Prüfung der Eingabewerte eingebaut...]

Code:

(defun C:TEST (/   COLSPACING  COLUMNS   CORNER1
      CORNER2   CORNER3    LOWERLEFT  PUNKTX
      PUNKTY   ROWS       ROWSPACING  SS
      ALT-OSMODE
      )
  (setq ALT-OSMODE (getvar "osmode")) ;_ Speichern des aktuellen OFang
  (if (not (and (setq CORNER1
      (getpoint "\nErste Ecke des Raumes definieren... ")
)
(setq CORNER2
      (getcorner ;_ Getcorner um ein Rechteck aufzuziehen
CORNER1
"\nGegenüberliegende Ecke des Raumes definieren... "
      )
)
(setq COLUMNS (getint "\nAnzahl Richtung \"Rechts\": "))
(setq ROWS (getint "\nAnzahl Richtung \"Hoch\": "))
(setq
  SS (car (entsel "\nObjekt zur Rastererstellung wählen:"))
)
  )
      ) ;_ Prüfung der Eingabewerte
    (alert
      "Fehler bei der Ermittlung der Berechnungsgrundlagen... Funktionsende!" ;_ Rückmeldung an den User, das einer der Werte nicht eingegeben wurde
    )
    (if (not (setq CORNER3 (assoc 10 (entget SS)))) ;_ Prüfung ob das gewählte Rasterobjekt eine Gruppencode 10 hat
      (alert
"Gewähltes Objekt besitzt keinen DXF Gruppencode \"10\" der als Basispunkt verwendet werden könnte... Funktionsende!" ;_ Rückmeldung an User, wenn nicht.
      )
      (progn ;_ faßt nachfolgende Funktionen zusammen (if kann nur je einen Ausdruck für if, und eine für else ausführen)
(setvar "osmode" 0) ;_ OSMODE vor Berechnung und Einfügung des Rasterobjekts ausschalten
(setq COLSPACING (/ (abs (- (car CORNER1) (car CORNER2))) COLUMNS) ;_ der ganze Berechnungskram
      ROWSPACING (/ (abs (- (cadr CORNER1) (cadr CORNER2))) ROWS)
      LOWERLEFT (list
  (min (car CORNER1) (car CORNER2))
  (min (cadr CORNER1) (cadr CORNER2))
)
      PUNKTX (+ (car LOWERLEFT) (/ COLSPACING 2.0))
      PUNKTY (+ (car LOWERLEFT) (/ ROWSPACING 2.0))
)
(command "_copy" ;_ Ausführung des Kopieren-Befehls mit selektiertem Rasterobjekt
SS
""
(cdr CORNER3)
(list (+ (car LOWERLEFT) (/ COLSPACING 2.0))
      (+ (cadr LOWERLEFT) (/ ROWSPACING 2.0))
      0
)
)
(cond ;_ Condition anstatt einer Reihe von if's
  ((= COLUMNS 1) ;_ Wenn Bedingung erfüllt...
  (command "_array" "l" "" "R" ROWS COLUMNS ROWSPACING) ;_ dann dies
  )
  ((= ROWS 1) ;_ Wenn Bedingung erfüllt...
  (command "_array" "l" "" "R" ROWS COLUMNS COLSPACING) ;_ dann das
  )
  ('t ; ansonsten
  (command "_array"  "l"   ""     "R"
    ROWS      COLUMNS   ROWSPACING COLSPACING
  ) ;_das hier
  ) ;_ end 'T
) ;_ end cond
      ) ;_ end progn
    ) ;_ end if
  ) ;_ end if
  (setvar "osmode" ALT-OSMODE) ; Setze osmode wieder auf alten wert
  (princ) ;_ Funktionsrückmeldung nil unterdrücken
) ;_ end defun


Am besten in der VLIDE anschauen, ist da deutlich übersichtlicher ;-)

------------------
Ciao,
Marc
    

[Diese Nachricht wurde von marc.scherer am 01. Sep. 2009 editiert.]

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

xem
Mitglied
Zeichner


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

Beiträge: 847
Registriert: 07.08.2008

Software:
AutoCAD 2022 - 64bit
Windows 10 Pro - 64bit
PDFCreator 1.0.2 - 32bit
Ghostscript 9.0 - 64bit
PDF-XChange Viewer - 64bit
GIMP 2.6.8 - 64bit
MS Office 2013 - 32bit
Opera 12 - 32bit
MacroX - 32bit
7-zip - 64bit
-----------------------
Hardware:
Intel i5 680 3,6GHz @ 4GHz
8GB RAM 1333MHz
nVidia GTX 460 1024MB
Intel SSD 2.5 80GB X25-M
Samsung SyncMaster 245B+
Iiyama ProLite E1900s
Logitech mx518
Logitech G11
Roccat Sense Glacier Blue

erstellt am: 01. Sep. 2009 11:27    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

bei:

Code:
(setq ins(cdr(assoc 10(entget(ssname SS 0)))))

kommt:

Befehl: test
erste Ecke im Raum: gegenüber liegende Ecke: Anzahl X Richtung: 2
Anzahl Y Richtung: 2

Objekt wählen: ; Fehler: Fehlerhafter Argumenttyp: lselsetp <Objektname:
72c25140>

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

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

marc.scherer
Ehrenmitglied V.I.P. h.c.
CAD-Administrator



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

Beiträge: 2490
Registriert: 02.11.2001

Windows 10 64bit
AutoCAD Architecture 2018/2019 (deu/eng)
AEC-Collection 2019 (Revit und Zeugs)
Wenn sich's nicht vermeiden läßt:
D-A-CH Erweiterung (mies implementierter Schrott)

erstellt am: 01. Sep. 2009 11:31    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 xem 10 Unities + Antwort hilfreich

ss ist scheinbar zu dem Zeitpunkt kein selset sondern ein Einzelobjekt...

------------------
Ciao,
Marc

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

CADmium
Moderator
Maschinenbaukonstrukteur




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

Beiträge: 13508
Registriert: 30.11.2003

Hinweis: Meine Mitarbeit auf CAD.DE ist fakultativ, unentgeltlich und beruht nur auf einem ausgeprägtem Helfersyndrom.

erstellt am: 01. Sep. 2009 11:33    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 xem 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von xem:
bei:

Code:
(setq ins(cdr(assoc 10(entget(ssname SS 0)))))

kommt:

Befehl: test
erste Ecke im Raum: gegenüber liegende Ecke: Anzahl X Richtung: 2
Anzahl Y Richtung: 2

Objekt wählen: ; Fehler: Fehlerhafter Argumenttyp: lselsetp <Objektname:
72c25140>



Tja, wo fügst du den denn ein?

(if(setq ss(ssget))
(setq ins(cdr(assoc 10(entget(ssname SS 0)))))
)
klappt bei mir wenn ich eine Linie oder was ähnliches wähle
...

------------------
  - 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

xem
Mitglied
Zeichner


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

Beiträge: 847
Registriert: 07.08.2008

Software:
AutoCAD 2022 - 64bit
Windows 10 Pro - 64bit
PDFCreator 1.0.2 - 32bit
Ghostscript 9.0 - 64bit
PDF-XChange Viewer - 64bit
GIMP 2.6.8 - 64bit
MS Office 2013 - 32bit
Opera 12 - 32bit
MacroX - 32bit
7-zip - 64bit
-----------------------
Hardware:
Intel i5 680 3,6GHz @ 4GHz
8GB RAM 1333MHz
nVidia GTX 460 1024MB
Intel SSD 2.5 80GB X25-M
Samsung SyncMaster 245B+
Iiyama ProLite E1900s
Logitech mx518
Logitech G11
Roccat Sense Glacier Blue

erstellt am: 04. Mai. 2010 12:13    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,

ich habe festgestellt, in einigen Zeichnungen das LISP nicht ganz funktioniert.

Die zu kopierenden Blöcke werden zwar richtig angeordnet, aber nicht an der richtigen Stelle. Sie liegen irgend wo in der Zeichnung, als wenn die Koordinaten nicht mit den Klicks zusammen paßen.

Gibt es da was wo man überprüfen kann ob die Koordinaten der Klicks richtig übernommen werden?

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

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

cadffm
Moderator
良い精神




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

Beiträge: 21533
Registriert: 03.06.2002

System: F1
und Google

erstellt am: 04. Mai. 2010 12:36    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 xem 10 Unities + Antwort hilfreich

- Behauptung -
Ich kann dich beruhigen, sie werden sicher RICHTIG übernommen (ob du das so wolltest oder nicht ist eine andere Sache)

-Fakt-
Das wichtigste bei automatisierten Arbeiten mit "Commands" ist OSNAPCOORD , mehr würde mir
adhoc nicht einfallen (wie immer: am besten ein nachvollziehbares Beispiel posten)

------------------
CAD.de System-Angaben  -  CAD on demand  -  User:FAQ(Acad)

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

xem
Mitglied
Zeichner


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

Beiträge: 847
Registriert: 07.08.2008

Software:
AutoCAD 2022 - 64bit
Windows 10 Pro - 64bit
PDFCreator 1.0.2 - 32bit
Ghostscript 9.0 - 64bit
PDF-XChange Viewer - 64bit
GIMP 2.6.8 - 64bit
MS Office 2013 - 32bit
Opera 12 - 32bit
MacroX - 32bit
7-zip - 64bit
-----------------------
Hardware:
Intel i5 680 3,6GHz @ 4GHz
8GB RAM 1333MHz
nVidia GTX 460 1024MB
Intel SSD 2.5 80GB X25-M
Samsung SyncMaster 245B+
Iiyama ProLite E1900s
Logitech mx518
Logitech G11
Roccat Sense Glacier Blue

erstellt am: 04. Mai. 2010 13:22    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


Raster.zip

 
Hallo,

hier mal eine Datei dazu. Habe den Befehl auf das Rechteck angewendet und die Blöcke sind davon geflogen.

Hier der Code dazu:

Code:
;eine Leuchte als Raster kopieren
(defun C:belk (/  COLSPACING  COLUMNS  CORNER1
      CORNER2  CORNER3    LOWERLEFT  PUNKTX
      PUNKTY  ROWS      ROWSPACING  SS
      ALT-OSMODE
      )
  (setq ALT-OSMODE (getvar "osmode")) ;_ Speichern des aktuellen OFang
  (if (not (and (setq CORNER1
      (getpoint "\nErste Ecke des Raumes definieren... ")
)
(setq CORNER2
      (getcorner ;_ Getcorner um ein Rechteck aufzuziehen
CORNER1
"\nGegenüberliegende Ecke des Raumes definieren... "
      )
)
(setq COLUMNS (getint "\nAnzahl Richtung \"Rechts\": "))
(setq ROWS (getint "\nAnzahl Richtung \"Hoch\": "))
(setq
  SS (car (entsel "\nObjekt zur Rastererstellung wählen:"))
)
  )
      ) ;_ Prüfung der Eingabewerte
    (alert
      "Fehler bei der Ermittlung der Berechnungsgrundlagen... Funktionsende!" ;_ Rückmeldung an den User, das einer der Werte nicht eingegeben wurde
    )
    (if (not (setq CORNER3 (assoc 10 (entget SS)))) ;_ Prüfung ob das gewählte Rasterobjekt eine Gruppencode 10 hat
      (alert
"Gewähltes Objekt besitzt keinen DXF Gruppencode \"10\" der als Basispunkt verwendet werden könnte... Funktionsende!" ;_ Rückmeldung an User, wenn nicht.
      )
      (progn ;_ faßt nachfolgende Funktionen zusammen (if kann nur je einen Ausdruck für if, und eine für else ausführen)
(setvar "osmode" 0) ;_ OSMODE vor Berechnung und Einfügung des Rasterobjekts ausschalten
(setq COLSPACING (/ (abs (- (car CORNER1) (car CORNER2))) COLUMNS) ;_ der ganze Berechnungskram
      ROWSPACING (/ (abs (- (cadr CORNER1) (cadr CORNER2))) ROWS)
      LOWERLEFT (list
  (min (car CORNER1) (car CORNER2))
  (min (cadr CORNER1) (cadr CORNER2))
)
      PUNKTX (+ (car LOWERLEFT) (/ COLSPACING 2.0))
      PUNKTY (+ (car LOWERLEFT) (/ ROWSPACING 2.0))
)
(command "_copy" ;_ Ausführung des Kopieren-Befehls mit selektiertem Rasterobjekt
SS
""
(cdr CORNER3)
(list (+ (car LOWERLEFT) (/ COLSPACING 2.0))
      (+ (cadr LOWERLEFT) (/ ROWSPACING 2.0))
      0
)
)
(cond ;_ Condition anstatt einer Reihe von if's
  ((= COLUMNS 1) ;_ Wenn Bedingung erfüllt...
  (command "_array" "l" "" "R" ROWS COLUMNS ROWSPACING) ;_ dann dies
  )
  ((= ROWS 1) ;_ Wenn Bedingung erfüllt...
  (command "_array" "l" "" "R" ROWS COLUMNS COLSPACING) ;_ dann das
  )
  ('t ; ansonsten
  (command "_array"  "l"  ""    "R"
    ROWS      COLUMNS  ROWSPACING COLSPACING
  ) ;_das hier
  ) ;_ end 'T
) ;_ end cond
      ) ;_ end progn
    ) ;_ end if
  ) ;_ end if
  (setvar "osmode" ALT-OSMODE) ; Setze osmode wieder auf alten wert
  (princ) ;_ Funktionsrückmeldung nil unterdrücken
) ;_ end defun

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

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

Dorfy
Mitglied
Double-Dipl.-Ing. Bleistiftanspitzer


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

Beiträge: 900
Registriert: 21.07.2006

AutoCad2007, ProE, HiCad

erstellt am: 04. Mai. 2010 13:36    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 xem 10 Unities + Antwort hilfreich

  geht doch...
solltest deine Koordinaten mal umrechnen
oder dein Koordinatensystem zurückstellen

------------------
Mfg Heiko

Elefantenjagd in Afrika
"... LISP-Programmierer bauen einen Irrgarten aus Klammern und hoffen, dass sich der Elefant darin verirrt..."

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

xem
Mitglied
Zeichner


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

Beiträge: 847
Registriert: 07.08.2008

Software:
AutoCAD 2022 - 64bit
Windows 10 Pro - 64bit
PDFCreator 1.0.2 - 32bit
Ghostscript 9.0 - 64bit
PDF-XChange Viewer - 64bit
GIMP 2.6.8 - 64bit
MS Office 2013 - 32bit
Opera 12 - 32bit
MacroX - 32bit
7-zip - 64bit
-----------------------
Hardware:
Intel i5 680 3,6GHz @ 4GHz
8GB RAM 1333MHz
nVidia GTX 460 1024MB
Intel SSD 2.5 80GB X25-M
Samsung SyncMaster 245B+
Iiyama ProLite E1900s
Logitech mx518
Logitech G11
Roccat Sense Glacier Blue

erstellt am: 04. Mai. 2010 14:03    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

Zitat:
Original erstellt von Dorfy:
Koordinatensystem zurückstellen

manchmal sind es die einfach Dinge ...

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

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

Dorfy
Mitglied
Double-Dipl.-Ing. Bleistiftanspitzer


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

Beiträge: 900
Registriert: 21.07.2006

AutoCad2007, ProE, HiCad

erstellt am: 04. Mai. 2010 14:22    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 xem 10 Unities + Antwort hilfreich

 
Zitat:
Original erstellt von xem:
manchmal sind es die einfach Dinge ...

ja ;) 
kannst ja mal folgende Zeilen einbauen - ungetestet

Code:
(trans(list (+ (car LOWERLEFT) (/ COLSPACING 2.0))
(+ (cadr LOWERLEFT) (/ ROWSPACING 2.0))
0
  ) 1 0)

Edit: hier einbauen

Code:
...
(command "_copy" ;_ Ausführung des Kopieren-Befehls mit selektiertem Rasterobjekt
SS
""
(cdr CORNER3)
(list (+ (car LOWERLEFT) (/ COLSPACING 2.0))
      (+ (cadr LOWERLEFT) (/ ROWSPACING 2.0))
      0
)

)
...


und ... egal

------------------
Mfg Heiko

Elefantenjagd in Afrika
"... LISP-Programmierer bauen einen Irrgarten aus Klammern und hoffen, dass sich der Elefant darin verirrt..."

[Diese Nachricht wurde von Dorfy am 04. Mai. 2010 editiert.]

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