Registrujte se na 22. ročník konference CADfórum 2025 - 30.9. Zámek Valeč.
Přes 118.500 registrovaných u nás, celkem 1.096.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ů.
Diskuzní fórum, poradna
?CAD diskuze, rady, výměna zkušeností

Fórum nenahrazuje technický support firmy ARKANCE (CAD Studio) - přímá podpora pro zákazníky funguje na helpdesk.arkance-systems.cz
|
Odpovědět ![]() |
archiv |
Autor | |
Venca80 ![]() Zasloužilý člen ![]() Přihlášen: 07.čvc.2008 Lokalita: ČR (PL) Používám: Civil 3D Stav: Offline Bodů: 183 |
![]() Zasláno: 07.dub.2009 v 14:32 |
Přátelé jdu k vám pro radu, jestli lze nějakým způsobem hromadně otočit texty (případně jiné objekty) o zadaný úhel (např. 180°) kolem svých řídících bodů. Pochopitelně se mi jedná o texty s různým natočením, jinak by to nebyl problém... Předem děkuji za rady!
|
|
![]() |
|
Ferdinand ![]() TOP uživatel ![]() Přihlášen: 01.říj.2004 Lokalita: ČR (JM) Používám: AutoCAD2004 (EN) na Windows XP Stav: Offline Bodů: 1906 |
![]() |
Podle mne to půjde jenom nějakým lispem:
- vyber objekty dle druhu (dle volby)
- dej je do seznamu
- na každý prvek tohoto seznamu aplikuj:
-- zjisti aktuální úhel otočení
-- změň tento úhel o 180 st. Upravil Ferdinand - 07.dub.2009 v 14:52 |
|
-FerTh-
|
|
![]() |
|
Venca80 ![]() Zasloužilý člen ![]() Přihlášen: 07.čvc.2008 Lokalita: ČR (PL) Používám: Civil 3D Stav: Offline Bodů: 183 |
![]() |
A pokud to nejde jinak, než nějakým takovýmto lispem, někdo by ho uměl stvořit?
![]() |
|
![]() |
|
Martin Bielina ![]() Zasloužilý člen ![]() Přihlášen: 04.led.2007 Lokalita: ČR (Pha) Používám: AutoCAD True view 2016 Stav: Offline Bodů: 100 |
![]() |
Pokud by stačilo aby se otáčely jen jednoduché prvky jako jsou texty, mtexty a bloky tak by to mohlo vypadat třeba takhle. Spouští se příkazem rot180 a otočí najednou všechny bloky texty a mtexty ve výkresu/souboru o 180°.
(defun C:rot180 ( / i n sel_length ent_sel ent entseznam uhel) (setq ent_sel (ssget "_X" '((-4 . "<OR") (0 . "INSERT") (0 . "TEXT") (0 . "MTEXT") (-4 . "OR>") ) ) ) (setq i 0) (if (= ent_sel nil) (setq sel_length 0) (setq sel_length (SSLENGTH ent_sel)) ) (princ) (princ (strcat (rtos sel_length 2 0) " OBJEKTŮ VE VÝBĚRU K OTÁČENÍ")) (princ) (while (/= i sel_length) (setq ent (ssname ent_sel i)) (setq entseznam (entget ent));načte list (setq uhel (cdr (assoc 50 entseznam))) (setq entseznam (subst (cons 50 (+ uhel pi)) (assoc 50 entseznam) entseznam)) (entmod entseznam) (entupd ent) (setq i (+ i 1)) ) (print) ) |
|
![]() |
|
v.straka ![]() Diskutér ![]() Přihlášen: 01.říj.2004 Lokalita: Czech Republic Používám: Civil 3D 2012 Stav: Offline Bodů: 20 |
![]() |
Prikaz torient z express. |
|
v.straka
ICQ 283-000-941 |
|
![]() |
|
Venca80 ![]() Zasloužilý člen ![]() Přihlášen: 07.čvc.2008 Lokalita: ČR (PL) Používám: Civil 3D Stav: Offline Bodů: 183 |
![]() |
Martin Bielina: Děkuji, to je ono! Hezké by ještě bylo mít tam volbu pro zadání úhlu otočení
![]() ![]() v.straka: Příkaz torient bohužel otáčí jen na absolutní úhel (jestli se nepletu) a ne o nějaký úhel. Ale i tento příkaz občas využiji zvláště otočení na "Most Readable". I tak díky. |
|
![]() |
|
Martin Bielina ![]() Zasloužilý člen ![]() Přihlášen: 04.led.2007 Lokalita: ČR (Pha) Používám: AutoCAD True view 2016 Stav: Offline Bodů: 100 |
![]() |
V dolní čtvrtině kódu jsem vám zvýraznil výraz pi což je právě ten úhel v radiánech o který se vše otáčí. Není problém doplnit do kódu ještě požadavek na zadání úhlu a otáčet pak právě o něj. V tom případě by mě pak zajímalo, v jakých úhlových jednotkách si to přejete zadávat (°, rad nebo třeba g). Nerad bych ještě dodělával rozhodovací cyklus na jednotky ... ![]() Upravil Martin Bielina - 08.dub.2009 v 09:08 |
|
![]() |
|
Martin Bielina ![]() Zasloužilý člen ![]() Přihlášen: 04.led.2007 Lokalita: ČR (Pha) Používám: AutoCAD True view 2016 Stav: Offline Bodů: 100 |
![]() |
Na přání zakladatele tohoto vlákna přidávám modifikaci, která umí otáčet s prvky ve výběru o libovolný úhel.
(defun C:rotx ( / i n sel_length ent_sel ent entseznam uhel rotuhel) (princ "\nVyberte objekty k otočení") (setq ent_sel (ssget '((-4 . "<OR") (0 . "INSERT") (0 . "TEXT") (0 . "MTEXT") (-4 . "OR>") ) ) ) (setq i 0) (if (= ent_sel nil) (setq sel_length 0) (setq sel_length (SSLENGTH ent_sel)) ) (princ) (princ (strcat (rtos sel_length 2 0) " OBJEKTŮ VE VÝBĚRU K OTÁČENÍ")) (princ) (setq rotuhel (getreal "\nZadejte ve stupních hodnotu úhlu pro otáčení <180> ")) (if (= rotuhel nil) (setq rotuhel pi) (setq rotuhel (* rotuhel (/ pi 180))) ) (while (/= i sel_length) (setq ent (ssname ent_sel i)) (setq entseznam (entget ent)) (setq uhel (cdr (assoc 50 entseznam))) (setq entseznam (subst (cons 50 (+ uhel rotuhel)) (assoc 50 entseznam) entseznam)) (entmod entseznam) (entupd ent) (setq i (+ i 1)) ) (print) ) |
|
![]() |
|
Venca80 ![]() Zasloužilý člen ![]() Přihlášen: 07.čvc.2008 Lokalita: ČR (PL) Používám: Civil 3D Stav: Offline Bodů: 183 |
![]() |
Tleskám a děkuji!!!
![]() |
|
![]() |
|
Vladimír Michl ![]() Profil člena
Odeslat soukromou zprávu
Najít příspěvky člena
Navštívit stránky člena
Přidat do seznamu známých
Moderátor ![]() ![]() ARKANCE Přihlášen: 09.zář.2004 Lokalita: ČR (JČ) Používám: Implementujeme řešení Autodesk Stav: Offline Bodů: 21950 |
![]() |
Dovolili jsme si kód trochu začistit a ošetřit případy, kdy text takto otočit nelze - viz RotX na stránce Download.
|
|
![]() |
Pro technickou podporu CAD
kontaktujte Helpdesk
Odpovědět ![]() |
|
Přejít na fórum | Oprávnění fóra ![]() Nemůžete vytvářet nová témata v tomto fóru Nemůžete odpovídat na témata v tomto fóru Nemůžete vymazávat vaše příspěvky v tomto fóru Nemůžete upravovat vaše příspěvky v tomto fóru Nemůžete vytvářet ankety v tomto fóru Nemůžete hlasovat v anketách v tomto fóru |
Stránka byla vygenerována za 0,590 sekund.