ARKANCE - globální Platinum partner Autodesk ARKANCE | KONTAKT - CZ | SK | EN | DE
Registrujte se na 22. ročník konference CADfórum 2025 - 30.9. Zámek Valeč.
Přes 119.000 registrovaných u nás, celkem 1.097.000 registrovaných (CZ+EN), přes 53.000 CAD/BIM bloků. Vyzkoušejte nový přesný Inženýrský kalkulátor a aktualizovaný Generátor čarových kódů.
AEC Collection - kompletní CAD/BIM nástroje pro projektování
RSS kanál - CAD tipy RSS tipy
RSS diskuze

Diskuze Diskuzní fórum, poradna

?
CAD diskuze, rady, výměna zkušeností

CAD Fórum - Homepage Veřejné diskuzní fórum k CAD aplikacím - ptejte se na libovolné otázky týkající se oboru CAx, podělte se o vaše znalosti a zkušenosti s programy AutoCAD, Inventor, Revit, Fusion, 3ds Max, Vault a s dalšími CAD/BIM/PDM aplikacemi. Zaregistrujte se nebo se přihlašte a zašlete váš příspěvek do odpovídajícího fóra. Viz další informace o CAD Fóru. Nechcete se registrovat? Zeptejte se v naší Facebook poradně.
Fórum nenahrazuje technický support firmy ARKANCE (CAD Studio) - přímá podpora pro zákazníky funguje na helpdesk.arkance-systems.cz
  FAQ FAQ  Prohledat fórum   Události   Registrovat Registrovat  Přihlásit Přihlásit

Téma uzavřenoLISP zaokruhlenie

 Odpovědět Odpovědět archiv
Autor
Acid3P Zobrazit panel
Diskutér
Diskutér

Přihlášen: 04.bře.2009
Lokalita: Slovensko
Používám:
PowerCivil, Revit, Civil3D
Stav: Offline
Bodů: 65
Přímý odkaz na tuto zprávu Téma: LISP zaokruhlenie
    Zasláno: 04.čvc.2011 v 14:02
Dobry den!

Vie neikto z vas o LISPe, ktory by vedel zaokruhlit text na zadany pocet miest? Pouzivam PK soft tools s prikazom TT, ktora oreze pozadovany pocet znakov zo zaciatku alebo konca textu, ale ja by som potreboval, aj spominane zaokruhlovanie. 

Skusal som hladat aj cez google, ale zatial som pozadovany lisp nenasiel.
Zpět nahoru
PepaR Zobrazit panel
CAD/BIM manager
CAD/BIM manager
Avatar

Přihlášen: 29.lis.2004
Lokalita: ČR (ZL)
Používám:
ruky a hlavu (občas ;)
Stav: Offline
Bodů: 6206
Přímý odkaz na tuto zprávu Zasláno: 04.čvc.2011 v 14:04
Dobrý den,

nepomohlo by následující téma
Zpět nahoru
Mantlík Zobrazit panel
TOP uživatel
TOP uživatel

Přihlášen: 01.říj.2004
Lokalita: ČR (Pha)
Používám:
ACAD/Map/Civil R10-> 2022
Stav: Offline
Bodů: 2578
Přímý odkaz na tuto zprávu Zasláno: 04.čvc.2011 v 14:50
Dřív se při programování zaokrouhlovalo tak, ře se k poslednímu potřebnému řádu přičetla jeho polovina
 
Takže např. při zaokrouhlování na dvě desetinná místa se přičítalo 0,005 a pak se to za 2. desetinným místem odřízlo, např.
 
12,144 + 0,005 = 12,149 -> po odříznutí je 12,14
12,145 + 0,005 = 12,150 -> po odříznutí je 12,15
12,149 + 0,005 = 12,154 -> po odříznutí je 12,15
asi by to šlo implementovat do toho lispu TT, před "ořezávací" řádek dát něco, jako
(setq a (+ 0.005 a))
 
(možná má i lisp něco pro zaokrouhlování, tak zběhlý zase nejsem)
J. Mantlík

Zpět nahoru
Mantlík Zobrazit panel
TOP uživatel
TOP uživatel

Přihlášen: 01.říj.2004
Lokalita: ČR (Pha)
Používám:
ACAD/Map/Civil R10-> 2022
Stav: Offline
Bodů: 2578
Přímý odkaz na tuto zprávu Zasláno: 04.čvc.2011 v 16:05
A úplně jsem zapomněl, že rovnou zaokrouhluje i funkce pro převod čísla na text
(rtos number [mode [precision]])
 
kde "precision" je požadovaná přesnost
a "mode" je pro desetinná čísla 2
J. Mantlík

Zpět nahoru
DodoSVK Zobrazit panel
Zasloužilý člen
Zasloužilý člen

Přihlášen: 13.říj.2007
Lokalita: Slovensko
Používám:
MAP 3D
Stav: Offline
Bodů: 184
Přímý odkaz na tuto zprávu Zasláno: 03.srp.2011 v 10:59
Prosim Vas kam treba dany script doplnit do scriptu TRIM TEXT, aby okrem orezavania sa dalo nastavit aj to zaokruhlovanie....
 
dakujem
 

; *** TRIM TEXT v0.8.0 ***
(defun C:TT ( / n ptxt ntxt pref suf mtxt)
; define number of start cut
 (initget 4)
 (setq pref (getint "\nWrite number of start cut <0>: "))
 (if (null pref) (setq pref 0))
; define sufix
 (initget 4)
 (setq suf (getint "\nWrite number of end cut <0>: "))
 (if (null suf) (setq suf 0))
 (if (and (eq pref 0) (eq suf 0))
  (princ "\nNo changes... End command.")
  (progn
   (setq ptxt 0)
   (while (/= ptxt nil)
    (princ "\nSelect (m)text to edit... [press enter for end command]")
    (setq ptxt (ssget '(
      (-4 . "<OR")
       (0 . "TEXT")
       (0 . "MTEXT")
      (-4 . "OR>")
    )))
    (if (/= ptxt nil)
     (progn
      (setq n 0)
      (repeat (sslength ptxt)
       (setq ntxt (cdr (assoc 1 (entget (ssname ptxt n)))))
; test length of trim
       (if (< (strlen ntxt) (+ pref suf))
        (alert "\nLength of start + end cut is longer, as length of the text.")
        (if (eq (strlen ntxt) (+ pref suf))
         (progn
          (if (null del)
           (progn
            (initget "Yes No")
            (setq del (getkword "\nLength of start + end cut is equal as length of the text. Do you want delete text entit? <Yes>/No: "))
            (if (null del) (setq del "Yes"))
           )
          )
          (if (eq del "Yes")
           (entdel (ssname ptxt n))
          )
         )
         (progn
          (setq ntxt (substr ntxt (1+ pref) (- (strlen ntxt) (+ pref suf))))
          (setq mtxt (subst (cons 1 ntxt) (assoc 1 (entget (ssname ptxt n))) (entget (ssname ptxt n))))
          (entmod mtxt)
         )
        )
       )
       (setq n (1+ n))
      )
     )
     (princ "\nEnd command.")
    )
   )
  )
 )
 (princ)
)
Zpět nahoru
Vladimír Michl Zobrazit panel
Moderátor
Moderátor
Avatar
ARKANCE

Přihlášen: 09.zář.2004
Lokalita: ČR (JČ)
Používám:
Implementujeme řešení Autodesk
Stav: Offline
Bodů: 21951
Přímý odkaz na tuto zprávu Zasláno: 03.srp.2011 v 11:39
Ten kód se na zaokrouhlování moc nehodí - zkuste RoundT na stránce Download, narychlo spíchnuto.
 
(Neošetřuje desetinnou čárku)
Vladimír Michl (moderátor)
ARKANCE CZ - arkance.world
(podpora viz helpdesk.arkance-systems.cz)
Zpět nahoru
DodoSVK Zobrazit panel
Zasloužilý člen
Zasloužilý člen

Přihlášen: 13.říj.2007
Lokalita: Slovensko
Používám:
MAP 3D
Stav: Offline
Bodů: 184
Přímý odkaz na tuto zprávu Zasláno: 03.srp.2011 v 12:11

funguje vyborne len tu ciarku by to chcelo este  neako zapracovat, neviem ci je to zlozite..

 
lebo takto hrozi velke riziko ze pride ku chybe, ked by som tymto prikazom  upravoval viacej cisel, a mal by som omylom medzi nimi jedno z ciarkou...
 
2.555 => 2.56
2,555 => 2.00
 
uz len tazko by si potom vsimol ze doslo ku takejto hrubej chybe .To uz by bolo lepsie keby tie s ciarkou odignorovalo a nechalo trojmiestne....Nedoslo by tak ku chybe, v pripade ze omylom dam zaokruhlit cislo s ciarkou.
 
Ak je to otazka par klikov tak by som Vas poprosil este ten script upravit.
 
Dakujem.
Zpět nahoru
Vladimír Michl Zobrazit panel
Moderátor
Moderátor
Avatar
ARKANCE

Přihlášen: 09.zář.2004
Lokalita: ČR (JČ)
Používám:
Implementujeme řešení Autodesk
Stav: Offline
Bodů: 21951
Přímý odkaz na tuto zprávu Zasláno: 03.srp.2011 v 15:34
Aktualizovaná verze RoundT teď zaokrouhluje jen čistá čísla a ošetřuje možné chyby. Řeší (a zachovává) i desetinnou čárku. Zadáním záporného počtu deset.míst jde vynutit zobrazování koncových nul.
 
Viz Download
Vladimír Michl (moderátor)
ARKANCE CZ - arkance.world
(podpora viz helpdesk.arkance-systems.cz)
Zpět nahoru
Acid3P Zobrazit panel
Diskutér
Diskutér

Přihlášen: 04.bře.2009
Lokalita: Slovensko
Používám:
PowerCivil, Revit, Civil3D
Stav: Offline
Bodů: 65
Přímý odkaz na tuto zprávu Zasláno: 05.srp.2011 v 09:39
funguje to vyborne, plni to presne funkciu, ktoru som hladal. Dakujem!
Zpět nahoru

Pro technickou podporu CAD
kontaktujte Helpdesk

Příbuzné CAD tipy:
Tip 5902:Zaokrouhlení výměr ploch ve výkazech místností Revitu.
Tip 3821:Starší LISP aplikace mi nefungují správně.
Tip 176:problem with Lisp code for defining of Linewidth
Tip 12636:VIPZjištění práce v síti VPN (LISP).
Tip 6927:AutoCAD mi hlásí: ; chyba: nesprávný typ argumentu: fixnump:
Tip 4683:VIPJak zablikat zvolenou entitou ve výkresu?


 Odpovědět Odpovědět

Přejít na fórum Oprávnění fóra Zobrazit panel



Stránka byla vygenerována za 0,367 sekund.