Odzrkadlenie vyberu podla svojho stredu
Příspěvků: 6
• Stránka 1 z 1
Odzrkadlenie vyberu podla svojho stredu
Zdravim, potreboval by som LISP, ktory by odzrkadlil vyber podla stredu tohoto vyberu (nieco ako v SketchUpe Flip Vertikal / Flip Horizntal), nemate niekto nieco take? Dakujem
ZW+ 2012 SP2
- JanP
- Administrátor
- Příspěvky: 405
- Registrován: 14 dub 2014, 15:50
- Jméno (bez příjmení): Ján Pajerchin
Re: Odzrkadlenie vyberu podla svojho stredu
...aspoň tak narýchlo:
Funkcie umožňujú výber len jedného objektu (môže byť aj blok)
Spustíte funkciu, kliknete na objekt a odzrkadlí ho
; ZHor - Horizontálne zrkadlenie jedného objektu okolo jeho stredu
(defun C:ZHor (/ en1 obj_1 pt1 pt2 ptmid)
(setq en1 (car (entsel)))
(setq obj_1 (vlax-ename->vla-object en1))
(vla-getboundingbox obj_1 'minpoint 'maxpoint)
(setq pt1 (vlax-safearray->list minpoint) pt2 (vlax-safearray->list maxpoint)
ptmid (list (/ (+ (car pt1) (car pt2)) 2)
(/ (+ (car pt1) (car pt2)) 2)
(/ (+ (cadr pt1) (cadr pt2)) 2)
)
)
(command "_.mirror" en1 "" "_none" ptmid "_none" "@0,1" "_yes" )
)
; ZVer - Vertikálne zrkadlenie jedného objektu okolo jeho stredu
(defun C:ZVer (/ en1 obj_1 pt1 pt2 ptmid)
(setq en1 (car (entsel)))
(setq obj_1 (vlax-ename->vla-object en1))
(vla-getboundingbox obj_1 'minpoint 'maxpoint)
(setq pt1 (vlax-safearray->list minpoint) pt2 (vlax-safearray->list maxpoint)
ptmid (list (/ (+ (car pt1) (car pt2)) 2)
(/ (+ (cadr pt1) (cadr pt2)) 2)
(/ (+ (cadr pt1) (cadr pt2)) 2)
)
)
(command "_.mirror" en1 "" "_none" ptmid "_none" "@1,0" "_yes" )
)
Funkcie umožňujú výber len jedného objektu (môže byť aj blok)
Spustíte funkciu, kliknete na objekt a odzrkadlí ho
; ZHor - Horizontálne zrkadlenie jedného objektu okolo jeho stredu
(defun C:ZHor (/ en1 obj_1 pt1 pt2 ptmid)
(setq en1 (car (entsel)))
(setq obj_1 (vlax-ename->vla-object en1))
(vla-getboundingbox obj_1 'minpoint 'maxpoint)
(setq pt1 (vlax-safearray->list minpoint) pt2 (vlax-safearray->list maxpoint)
ptmid (list (/ (+ (car pt1) (car pt2)) 2)
(/ (+ (car pt1) (car pt2)) 2)
(/ (+ (cadr pt1) (cadr pt2)) 2)
)
)
(command "_.mirror" en1 "" "_none" ptmid "_none" "@0,1" "_yes" )
)
; ZVer - Vertikálne zrkadlenie jedného objektu okolo jeho stredu
(defun C:ZVer (/ en1 obj_1 pt1 pt2 ptmid)
(setq en1 (car (entsel)))
(setq obj_1 (vlax-ename->vla-object en1))
(vla-getboundingbox obj_1 'minpoint 'maxpoint)
(setq pt1 (vlax-safearray->list minpoint) pt2 (vlax-safearray->list maxpoint)
ptmid (list (/ (+ (car pt1) (car pt2)) 2)
(/ (+ (cadr pt1) (cadr pt2)) 2)
(/ (+ (cadr pt1) (cadr pt2)) 2)
)
)
(command "_.mirror" en1 "" "_none" ptmid "_none" "@1,0" "_yes" )
)
Re: Odzrkadlenie vyberu podla svojho stredu
presne toto potrebujem , len keby sa podarilo to spravit na selekciu, nie len na jeden objekt
ZW+ 2012 SP2
- JanP
- Administrátor
- Příspěvky: 405
- Registrován: 14 dub 2014, 15:50
- Jméno (bez příjmení): Ján Pajerchin
Re: Odzrkadlenie vyberu podla svojho stredu
Je to dobrá a užitočná myšlienka.
Skúsim sa s tým viac pohrať ...uvidíme ako to pôjde.
Potom to tu pridám
Skúsim sa s tým viac pohrať ...uvidíme ako to pôjde.
Potom to tu pridám
Re: Odzrkadlenie vyberu podla svojho stredu
Zdravim, nepodarilo sa vam vymysliet nieco v tejto otazke? (teda preklopenie vyberu nie len bloku)
ZW+ 2012 SP2
- JanP
- Administrátor
- Příspěvky: 405
- Registrován: 14 dub 2014, 15:50
- Jméno (bez příjmení): Ján Pajerchin
Re: Odzrkadlenie vyberu podla svojho stredu
Nuž - priznávam - to už je podstatne komplikovanejšie (aspoň teda pre mňa)
...ak budem mať časový priestor - ešte sa tomu povenujem ...ale úprimne - bude to dlhodobá záležitosť
...ak budem mať časový priestor - ešte sa tomu povenujem ...ale úprimne - bude to dlhodobá záležitosť
Příspěvků: 6
• Stránka 1 z 1
Zpět na Technické dotazy ZWCADu
Kdo je online
Uživatelé procházející toto fórum: Žádní registrovaní uživatelé a 10 návštevníků