| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
| |
| Cideon Solution Days 2025, eine Veranstaltung am 03.06.2025
|
Autor
|
Thema: Text - Lisp (957 mal gelesen)
|
Mozi Mitglied Zeichner
Beiträge: 111 Registriert: 15.05.2001 ACAD Mech 2015 / PSP 2011 / Design Review 2011 Adobe Creativ WIN 10
|
erstellt am: 21. Aug. 2002 09:47 <-- editieren / zitieren --> Unities abgeben:
Hallo Programmiererererer, allzugerne hätte ich ein Lisp, mit dem ich einen Text (nur zahlen, real oder integer) anwählen kann und dieser verändert sich dann um einen festen Faktor. Textelement : "22.51" Objekt anwählen....Enter (Faktor geteilt durch 0.947 ist fest eingestellt) selbiges Textelement zeigt nun die Zahl : "23.77" (zwei Stellen) oder kennt jemand schon so ein Programmchen ? mit untertänigstem Bitten Mozi ------------------ Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
LutzJ Mitglied
Beiträge: 17 Registriert: 30.04.2002
|
erstellt am: 21. Aug. 2002 09:58 <-- editieren / zitieren --> Unities abgeben: Nur für Mozi
hallo mozi nimm dieses tool in lisp (defun c:bemassung_wert_aendern (/ FAKTOR GENAU INDEX OBJDATA SSET ) (setq sset (ssget "_X" '(( 0 . "DIMENSION")))) (setq faktor (getreal "Multiplikator für Maßwerte :")) (setq genau (getint "Nachkommastellen :")) (setq index 0) (while (< index (sslength sset)) (setq objdata (entget (ssname sset index))) (setq objdata (subst (cons 1 (rtos (* faktor (atof (cdr (assoc 1 objdata)))) 2 genau)) (assoc 1 objdata) objdata)) (entmod objdata) (setq index (+ 1 index)) ) ) lutz
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Mozi Mitglied Zeichner
Beiträge: 111 Registriert: 15.05.2001 ACAD Mech 2015 / PSP 2011 / Design Review 2011 Adobe Creativ WIN 10
|
erstellt am: 21. Aug. 2002 10:21 <-- editieren / zitieren --> Unities abgeben:
Also das war wohl wieder weihnachten und ostern zusammen. obwohl ich nach der Kommastellenabfrage : ; Fehler: Fehlerhafter Argumenttyp: lselsetp nil erhalte übrigens habe ich mal so 10 unites überwiesen, obwohl ich noch nicht weiss, in wie weit diese Wertpunkte nun sinnvoll genützt werden können. Mozi ------------------ Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
RoSiNiNo Mitglied Konstrukteur
Beiträge: 1126 Registriert: 09.10.2002 Autodesk Building Design Suite Premium 2021 Windows 10 Pro 64bit HP Workstation Z620, 24GB GeForce GTX 970
|
erstellt am: 21. Aug. 2002 11:41 <-- editieren / zitieren --> Unities abgeben: Nur für Mozi
Hallo Mozi, hab so etwas für mich auch einmal unter VBA programmiert. vbaide aufrufen, unter Datei --> Datei importieren..., die Datei vom Anhang laden, Funktion TextCalculate aufrufen. Berechnungen mit Text (=Zahl), Nachkommastellen werden mit dem Eingabewert festgelegt. Mögliche Operatoren: *, x, /, :, +, - Eingabebeispiele: *25.23, +10, /13.50, -33.333 Viel Spaß damit, ich hoffe ich hab nichts vergessen. ------------------ Roland [Diese Nachricht wurde von RoSiNiNo am 21. August 2002 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Mozi Mitglied Zeichner
Beiträge: 111 Registriert: 15.05.2001
|
erstellt am: 21. Aug. 2002 11:57 <-- editieren / zitieren --> Unities abgeben:
so soll auch dich eine flut unitees sanft belaben jedoch sagt mir ein kästchen "Fehler beim Kompilieren" und zeigt dann auf "funPunkt" TextObj.textString = funPunkt(Format(TextObj.textString, IIf (Nachkomma = 0, "0", "0." & String(Nachkomma, "0")))) ------------------
[Diese Nachricht wurde von Mozi am 21. August 2002 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
RoSiNiNo Mitglied Konstrukteur
Beiträge: 1126 Registriert: 09.10.2002 Autodesk Building Design Suite Premium 2021 Windows 10 Pro 64bit HP Workstation Z620, 24GB GeForce GTX 970
|
erstellt am: 21. Aug. 2002 12:53 <-- editieren / zitieren --> Unities abgeben: Nur für Mozi
Einfach die Datei nochmmal herunterladen, oder folgenden Text hinten anfügen. Code:
'Ersetzt Komma durch Punkt Public Function funPunkt(Wert) Dim Punkt As Long Dim Komma As Long Wert = LTrim(Wert) Komma = InStr(Wert, ",") If Komma > 0 Then Mid(Wert, Komma) = "." Punkt = InStr(Wert, ".") If Punkt = 1 Then Wert = "0" & Wert funPunkt = Wert End Function
Wenn anstelle des Dezimalpunktes ein Komma stehen soll, dann die Zeile die den Fehler verursacht hat mit dieser ersetzen. Code:
TextObj.textString = Format(TextObj.textString, IIf (Nachkomma = 0, "0", "0." & String(Nachkomma, "0")))
------------------ Roland Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |