Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  Lisp
  bem faktor global

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:  bem faktor global (1770 mal gelesen)
nebuCADnezzar
Mitglied



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

Beiträge: 262
Registriert: 17.10.2007

AutoCAD 2019
Inventor 2019
64 bit Win 10
Intel I7 10610U 1.8 GHz
Quadro P520
32 GB Ram

erstellt am: 29. Feb. 2008 09: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

Hallo

Ich hab folgende Frage:
Ich hab nen code der die Variable dimscale abfragt und dementsprechend den Bemassungslayer umschaltet.
Nur möchte ich aber übers Layout bemassen und z.B den globalen bem-Faktor abfragen (die bemassung wird ja automatisch skalier), oder die Ansichtsfensterfaktoren.
Ich steh aber auf m schlauch weil ich nicht weiss wo oder welche variable, oder wert ich da wie abfragen könnte.

Wäre froh um ne Idee!

Gruss Robin

-------------------------------------------------------------
; Vorher-Callback für Bemassungen
(defun dim-start-callback(reactor argslist /
                            scale str layer)
  (setq scale(getvar"dimscale"))
  (setq str
    (cond
      ( (>= scale 10.0 )  "1~10")
      ( (>= scale  5.0 )  "1~5")
      ( (>= scale  4.0 )  "1~4")
      ( (>= scale  3.0 )  "1~3")
      ( (>= scale  2.0 )  "1~2")
      ( (>= scale  1.0 )  "1~1")
      ( (>= scale  0.5 )  "2~1")
      ( (>= scale  0.33)  "3~1")
      ( (>= scale  0.25)  "4~1")
      ( (>= scale  0.20)  "5~1")
      ( (>= scale  0.10)  "10~1")
      ( 1 "1~XX")
    )
  )
  (setq layer(strcat "Bem_" str))
  (if(not(layer-object layer))
    (create-layer layer '((Color . 11)))
  )
  (setq *previous-layer*(get-current-layer))
  (set-layer layer)
)
------------------------------------------------------------------

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

.

erstellt am: 29. Feb. 2008 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 Nur für nebuCADnezzar 10 Unities + Antwort hilfreich

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

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: 29. Feb. 2008 11:19    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 nebuCADnezzar 10 Unities + Antwort hilfreich

Hi,
(vports) gibt dir Daten zu den Viewports,
wenn eines aktiv ist, sollte es der erste Listeneintrag sein.
Suche mal im Forum nach viewports, du solltest zum Thema Maßstab etwas
finden (Joern Bosse hatte mal einen Code hereingestellt und ??? vergessen)
mfg Heiko

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

nebuCADnezzar
Mitglied



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

Beiträge: 262
Registriert: 17.10.2007

AutoCAD 2019
Inventor 2019
64 bit Win 10
Intel I7 10610U 1.8 GHz
Quadro P520
32 GB Ram

erstellt am: 29. Feb. 2008 14:29    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

@CADmium ich suche ne wertabfrage mit der ich die Variable "dimscale" im obigen beispilcode durch den massstab des aktuellen ansichtsfensters ersetzen kann.

Damit hab ich dann im layout bemassungen automatisch auf dem richtigen layer estellen! (dimscale ist bei mir immer 0 darum nützt die mir nix)

Hab hier auch noch nen code gefunden der diesen massstab in einm auszuwählenenden (nicht aktuellen) af anzeigt.
Aber der code überfordert meine kleinen lispkenntnisse, ich krieg den nich so auseinander gebaut das ich den wert des aktuellen af rauskrige...


----------------------------------------------
(defun c:test ( / )
  (setq vp_eedliste (entget (car(entsel))))
(setq vp_p-hoe  (cdr (assoc 41 vp_eedliste))
        vp_m-ahoe (cdr (assoc 45 vp_eedliste))
        vp_m-amast (* (/ vp_m-ahoe vp_p-hoe) 1000.0)
        inf-amast (rtos vp_m-amast 2 0)
)
;Massstab im Ansichtsfenster vereinbaren
(princ "\n\nDer aktuelle Abbildungsmaßstab zum Modell-Bereich ist  1:") (princ inf-amast)
(initget (+ 2 4))
(setq vp_m-nmast (getint "\nNeuer Maßstab <1:500 bei RETURN>  1:") )
(if (= vp_m-nmast NIL) (setq vp_m-nmast 500)) (setq vp_m-nhoe(/ 1.0 (/ vp_m-nmast 1000.0)))
  (vl-load-com)
      ;;;Scale zuweisen
    (vla-put-CustomScale(vlax-ename->vla-object (cdr(assoc -1 vp_eedliste)))vp_m-nhoe)
)

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: 29. Feb. 2008 14: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 Nur für nebuCADnezzar 10 Unities + Antwort hilfreich

Mit dem Beschriftungsmaßstab aus AutoCAD 2008 kann man das viel eleganter
lösen, da braucht man nur noch  einen Bemaßungsstil (maßstabsabhängig).

Einfach mal die Systemangaben ausfüllen.

------------------
Mit freundlichem Gruß

Udo Hübner
www.CAD-Huebner.de

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

nebuCADnezzar
Mitglied



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

Beiträge: 262
Registriert: 17.10.2007

AutoCAD 2019
Inventor 2019
64 bit Win 10
Intel I7 10610U 1.8 GHz
Quadro P520
32 GB Ram

erstellt am: 29. Feb. 2008 14: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

:-)
Ja sorry, neuer benutzer, neuer job, is noch nich alles auf dem neusten stand.

Ja und 2008 kann das... solls in ein zwei jahren die neuste version geben!

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

tunnelbauer
Ehrenmitglied V.I.P. h.c.
Bauingenieur



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

Beiträge: 7085
Registriert: 13.01.2004

ich hab eh keine Probleme damit...

erstellt am: 29. Feb. 2008 15:58    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 nebuCADnezzar 10 Unities + Antwort hilfreich

Was verstehst du eigentlich unter dem aktuellen?

Wenn ein AF bei dir aktiv ist, dann kannst du keine Bemassung im Layout ablegen - du befindest dich dann im Modellbereich.

Und das von dir gebrachte Beispiel mit dem auswählendes AFs ist das einzig richtige - schließlich kann es in einem Layout mehrere AFs mit unterschiedlichen Maßstäben geben - welches würde dann gelten?

------------------
Grüsse

Thomas

Korrekturen zum Kochbuch AutoLISP

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

nebuCADnezzar
Mitglied



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

Beiträge: 262
Registriert: 17.10.2007

AutoCAD 2019
Inventor 2019
64 bit Win 10
Intel I7 10610U 1.8 GHz
Quadro P520
32 GB Ram

erstellt am: 29. Feb. 2008 16: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

Mit Aktuellen meine ich das Aktive Ansichtsfenster.

Ziel der übung ist das der reaktor den bemassungsbefehl (ausgeführt im aktiven Ansichtsfenster) umleitet, den massstab des aktiven ansichtsfenster abfragt, nen entsprechenden layer anlegt und aktuell setzt, dann den bemassungsbefehl weiterführt (skliert wird die bem ja von selbst).
Die bemassungen sollen im Modell erstellt werden.

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

tunnelbauer
Ehrenmitglied V.I.P. h.c.
Bauingenieur



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

Beiträge: 7085
Registriert: 13.01.2004

ich hab eh keine Probleme damit...

erstellt am: 29. Feb. 2008 16: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 nebuCADnezzar 10 Unities + Antwort hilfreich

Den aktuellen Vport bekommst du mittels

(getvar "CVPORT")

Diesen Wert in Kombination mit GC 69 bringen und du kannst dir den zugehörigen Scale errechnen - mit den von dir oben genannten Mitteln...

------------------
Grüsse

Thomas

Korrekturen zum Kochbuch AutoLISP


NACHTRAG: Du bist nicht der erste der sowas schreibt - haben lt. google ungefähr 1.270 schon was in die Richtung gemacht... 

[Diese Nachricht wurde von tunnelbauer am 29. Feb. 2008 editiert.]

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

tunnelbauer
Ehrenmitglied V.I.P. h.c.
Bauingenieur



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

Beiträge: 7085
Registriert: 13.01.2004

ich hab eh keine Probleme damit...

erstellt am: 29. Feb. 2008 16:37    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 nebuCADnezzar 10 Unities + Antwort hilfreich

Achja - noch ein Nachtrag zum Nachtrag:

Tony Tanzillo löst das in einem Dreizeiler...
http://groups.google.com/group/autodesk.autocad.customization/msg/7eb89ffa1f960707?hl=en& 

------------------
Grüsse

Thomas

Korrekturen zum Kochbuch AutoLISP

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

nebuCADnezzar
Mitglied



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

Beiträge: 262
Registriert: 17.10.2007

AutoCAD 2019
Inventor 2019
64 bit Win 10
Intel I7 10610U 1.8 GHz
Quadro P520
32 GB Ram

erstellt am: 03. Mrz. 2008 20: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


reaktorenfunktioniert.LSP.txt

 
Hallo

Danke für eure Tipps, ich konnte das samstag nacht alles soweit zusammenlispeln das es mehr oder weniger funktionierte. (aber nix mehr fragen weil ich meine cad.de daten nur im büro hatte...

Mit 3 Problemen (ja und da waren sie wieder meine drei probleme...)
hab ich mich dann irgendwann schlafengelegt:

1. Scheinbar gibt die Variable "cvport" nicht immer das richtige zurück?! (habe im modell und im ansichtsfenster z.T. "2") Kann das sein?

2. Wenn die variable im af schön 3 zurückgibt, werden die Layer schön mit dem skalierfaktor des af beschriftet, alles wunderbar. Sobald ich aber "1 durch den skalierfaktor" (/ 1 scale) rechnen lasse (damit auch schön 1_50 beschriftet wird und nicht 0.0irgendwas) funktioniert das lisp fürs modell nicht mehr?! Ich hab aber nich rausgefunden wo da  ein zusammnehang besteht...

3. Die Reaktorfunktion die beim speichen noch (command "UPDATETITLE") machen soll, macht nix?! Hab auch hier einige versuche mit umwegen gemacht, aber nichts hat genutzt...

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

tunnelbauer
Ehrenmitglied V.I.P. h.c.
Bauingenieur



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

Beiträge: 7085
Registriert: 13.01.2004

ich hab eh keine Probleme damit...

erstellt am: 03. Mrz. 2008 23: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 Nur für nebuCADnezzar 10 Unities + Antwort hilfreich

Zu 1.)

Was meinst du damit? Im Modell und im Ansichtsfenster?
Das Funktioniert nur wenn du aus dem Layoutbereich ein Ansichtsfenster aktiv schaltest...

zu 2.)

Was versuchst du da?
Probier mal:

Code:

(defun xpfact ( / )
  (setq ReziProk (/ 1 (caddr (trans '(0 0 1) 2 3))))
  (princ ReziProk)(princ)
)

zu 3.)

Code:

;updatet die titelblattinfos
(defun update ( / )
  (command "UPDATETITLE")
)

Was soll das sein? Ist bei dir "UPDATETITLE" ein AutoCAD-Befehl? Oder wo kommt das Ding her? (In deinem LSP-File ist es nicht definiert...)

------------------
Grüsse

Thomas

Korrekturen zum Kochbuch AutoLISP

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

nebuCADnezzar
Mitglied



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

Beiträge: 262
Registriert: 17.10.2007

AutoCAD 2019
Inventor 2019
64 bit Win 10
Intel I7 10610U 1.8 GHz
Quadro P520
32 GB Ram

erstellt am: 04. Mrz. 2008 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

zu 1.

Die Variable sollte ja nach dem zurückgeben
layout      1
modell      2
aktives Fe  3
tut sie aber nicht gab im aktiven fenster auch schon 2 zurück (ja eigenartiger weise... hab lange gebraucht bis ich dass draussen hatte...)

zu 2.
werde ich sobald wie möglcih testen (warscheinlich erst heut abend zuhause...)

zu 3.
ja das ist ein befehl des firmeninternen aufsatzes. mittels manueller eingabe funktioniert das. (Updated titelblattinformationen aus ner datenbank)

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

tunnelbauer
Ehrenmitglied V.I.P. h.c.
Bauingenieur



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

Beiträge: 7085
Registriert: 13.01.2004

ich hab eh keine Probleme damit...

erstellt am: 04. Mrz. 2008 11:34    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 nebuCADnezzar 10 Unities + Antwort hilfreich

zu 1.)

Ich weiß nicht was du erreichen willst - das was dir die Variable zurüückgibt ist sicher richtig - ich denke aber dass du in diesem Fall AutoCAD nicht verstehst...

------------------
Grüsse

Thomas

Korrekturen zum Kochbuch AutoLISP

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

nebuCADnezzar
Mitglied



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

Beiträge: 262
Registriert: 17.10.2007

AutoCAD 2019
Inventor 2019
64 bit Win 10
Intel I7 10610U 1.8 GHz
Quadro P520
32 GB Ram

erstellt am: 04. Mrz. 2008 11: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 verstehe ich wirklich nicht :-)

layout        1
modell        2
aktives Fe    3

wie ist es möglich das die Variable in einem aktiven  ansichtsfenster 2 zurückgibt? Und das ist nicht immer so das hat einwandfrei funktioniert und auf einmal wurden die bems im af auch mit "modell" beschriftet!

Ich versuche die tilemode variable noch mit einzubauen, und dieses problem allenfalls zu umgehen (tilemode 0 und cvport 2 gibt trotzdem aktive fensterbemassung...)

Oder verstehe ich wirklich grundsätzlich was falsch?!

Gruss


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

tunnelbauer
Ehrenmitglied V.I.P. h.c.
Bauingenieur



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

Beiträge: 7085
Registriert: 13.01.2004

ich hab eh keine Probleme damit...

erstellt am: 04. Mrz. 2008 12: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 nebuCADnezzar 10 Unities + Antwort hilfreich

Also ein muss ich jetzt schon mal loswerden...

Das was du praktizierst ist ein sehr gefährliches Spiel mit deinem Datenbestand (bzw mit dem deiner Firma...) - ich hoffe ihr habt ausreichend Datensicherungen oder du arbeitest nicht in der Produktivumgebung.

Code:

(defun dim-start-callback(reactor argslist / scale str layer)
  (setq scale(xpfact))
 
  ;(setq scale2(/ 1 xpfact))
  ;(or (if (eq 2 (getvar "cvport")) (setq mod 1))
  ;    (if (eq 1 (getvar "cvport")) (setq mod 2))
  ;    (if (eq 3 (getvar "cvport")) (setq mod 2))
      ;(if (eq 1 (getvar "cvport")) (setq lay 1)
  ;)   
  ;(if (eq 3 (getvar "cvport")) (setq fen 1)
  ;)
  (if (eq 1 (getvar "cvport")) (setq str "layout"))
  (if (eq 2 (getvar "cvport")) (setq str "model"))
  (if (eq 3 (getvar "cvport")) (setq str (vl-princ-to-string scale)))
...

Mit diesem Schnipsel beschriftest du dir nämlich deine Maßstäbe mit "Model" und da du selbst schreibst, dass du nicht weißt wie dies zu Stande kommt, muss ich dir dringend davon abraten irgendwelche gefundenen Code-Schnipsel zusammenzuspielen und zu hoffen, dass das passiert was du dir denkst (aber nicht weißt wie du dort hinkommst...). Also tu dir selbst den Gefallen und lass die Finger davon und beauftrage jemand mit dem was du erzielen willst - aber zerstöre nicht den Datenbestand deiner Firma. Das was du da proggst ist dwg-Malware.

------------------
Grüsse

Thomas

Korrekturen zum Kochbuch AutoLISP

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

nebuCADnezzar
Mitglied



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

Beiträge: 262
Registriert: 17.10.2007

AutoCAD 2019
Inventor 2019
64 bit Win 10
Intel I7 10610U 1.8 GHz
Quadro P520
32 GB Ram

erstellt am: 05. Mrz. 2008 15:10    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

Heieieei harte Worte!

Ich geb ja zu das ich nen Reaktor nich einfach so programmieren kann. Was ich aber durchaus schaffe ist zu verstehen wie er funktioniert und Ihn dementsprechend anzupassen.

So, dises schnipsel da hab ich unglaublicherweise sogar selbst komponiert (nich irgendwo per zufall rauskopiert)

Ja und sinn und zweck dieses schipsels IST auch je nach rückgabe der cvport variable entweder "modell" "layout" oder "1:50 (bemassungsfaktor)" ans ende des bemasungslayernamens zu schreiben.

was mir NICHT klar ist ist
1. wie die variable cvport MANCHMAL im modell und im aktuellen ansichtsfenster "2" zurück gibt. (was dann logischer weise anstatt des faktors auch modell gibt)

2. muss ich immernoch erstma testen

3. bin ich sicher das ich irgend nen kleien eigentlich logischen pipifatz übersehen hab.

So und dann bin ich der meinung (da das gesammte paket schon einwandfrei* funktioniert hat und keiene daten weggezaubert hat) das ich keine "dwg-Malware" produziere (ich musste das wort erstma googlen.
Ich hoffe du hatest nur gerade etwas schlechte laune...

Gruss Robin


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

tunnelbauer
Ehrenmitglied V.I.P. h.c.
Bauingenieur



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

Beiträge: 7085
Registriert: 13.01.2004

ich hab eh keine Probleme damit...

erstellt am: 05. Mrz. 2008 16: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 Nur für nebuCADnezzar 10 Unities + Antwort hilfreich

Hier hat keiner was von "Daten wegzaubern" gesagt - das hast du hinzugefügt...

Das was ich gesagt habe, ist das, dass du persistente Reaktoren programmieren willst ohne verstanden zu haben, was dir die Variable CVPORT liefert. Das eine ist ganz was simples - das andere was hochkomplexes... Und Daten kann man nicht nur durch Wegnehmen von Elementen zerstören, sondern auch durch hinzufügen von Dingen - fehlerhafte persistente Reaktoren gehören zu dieser Kategorie.

Du hast bis jetzt nicht beschrieben was das Ding können soll und warum du auf 3 verschiedene Arten bemassen willst. Im Normalfall reicht eine. Vor allem - warum 3 Layer für Bemassungen?

Zu CVPORT:

Im Modell bekommst du immer 2 als Rückgabewert (also ich zumindest)
Im Layout bekommst du immer 1 als Rückgabewert (also wiederum ich)
Im verschiebbaren Modellbereich bekommst je nach Ansichtsfenster das gewählt wurde unterschiedliche Werte (bei 2 beginnend...)

Und wo ist da jetzt das Problem?

------------------
Grüsse

Thomas

Korrekturen zum Kochbuch AutoLISP

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

nebuCADnezzar
Mitglied



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

Beiträge: 262
Registriert: 17.10.2007

AutoCAD 2019
Inventor 2019
64 bit Win 10
Intel I7 10610U 1.8 GHz
Quadro P520
32 GB Ram

erstellt am: 07. Mrz. 2008 16:45    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

Eigentlich ganz einfach:
Bemassung die im moddell erstellt wird soll "modell" heissen
Bemassung die im layaut erstellt wird soll "layout" heissen
Bemassung die im ansichtsfenser erstellt wird soll "ansichtfensterfaktor z.B. 1_50 heissen

(hab das selbe dann noch für texte vor...)

Und ich hab dank dir gerade rausgefunden wo mein fehler lag! Ich hatte ein zweites ansichtfenster beim testen welches "cvport / 3" zurücklieferte...
Aber ich werde das wie gesagt noch mit der "tillmode" variable verknüpfen (und einem "cvport=>2", dann sollte das meiner meinung dann funktionieren.

Und ja tschuldigung, war mein fehler hab wirklich zuwenig genau nachgekukt was cvport zurückgibt...

Ich denke immernoch das ich die reaktor funktion selbst nur prinzipell verstehe, aber die funktionen die ich mittels dem raektor abfange und anpasse hab ich glabe ich im griff, die sind auch ziemlich simpel, wenn bemassung --> mach erstma neue layer, wenn speichere --> aktualisiere titelblatt(tut zwar nch nich...) etc.

Und es werden ja keine bestehende Daten abgeändert. (oder?! sollte ich mich da wirklich irren darfst mich nochma berechtigt anschnauzen :-)

Schönes Wochenende!!

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