ADeko Technologies http://www.adeko.com/phpBB3/ |
|
3dpoly http://www.adeko.com/phpBB3/viewtopic.php?f=7&t=1298 |
1. sayfa (Toplam 1 sayfa) |
Yazar: | ressam [ 11 Kas 2004 21:04 ] |
Mesaj Başlığı: | 3dpoly |
Merhaba 3dpoly olan nesnelerin vertex koordinatlarını lisp yazarak bulabilirmiyim. Yardımcı olursanız sevinirim. |
Yazar: | Destek/Support [ 12 Kas 2004 18:57 ] |
Mesaj Başlığı: | |
Aşağıdaki kod seçilen 3DPOLY veya POLYFACE nesnesinin vertexlerini numaralandırarak ekran basar ve text ekranına da koordinatlarını yazar: <hr noshade size="1"> [code] (defun c:vno (/ msh vnxt vtxData vtxTip i) (setvar "CMDECHO" 0) (setvar "OSMODE" 0) (setvar "BLIPMODE" 0) (if (zerop (cdr (assoc 40 (tblsearch "STYLE" "STANDARD")))) (command "_-STYLE" "STANDARD" "" 0.5 "" "" "" "" "") <font color="green">;Yazı yüksekliği öndeğeri 0.5'dir (değiştirebilirsiniz)</font id="green"> ) (setq msh (car (entsel "\nPolyface veya 3dpoly nesnesini gösterin: "))) (setq i 1) (setq vnxt (entnext msh)) <font color="green">;İlk vertexi al</font id="green"> (setq vtxData (entget vnxt)) <font color="green">;Vertex datasını çek</font id="green"> (setq vtxTip (cdr (assoc 70 vtxData))) <font color="green">;Vertex tipini öğren</font id="green"> (while (or (equal 192 vtxTip) (equal 32 vtxTip)) <font color="green">;Bu aradığmız vertex ise işlemlere devam et</font id="green"> (command "_.text" "_j" "_m" <font color="green">;Vertex nosunu vertexi ortalayarak ekrana bas</font id="green"> (trans (setq pt (cdr (assoc 10 vtxData))) 0 1) 0 (rtos i 2 0) ) <font color="green">;Koordinatları yazı ekranına bas</font id="green"> (princ (strcat "\n#" (rtos i 2 0) "= " (rtos (car pt) 2 1) "," (rtos (cadr pt) 2 1) "," (rtos (caddr pt) 2 1))) (setq i (1+ i)) (setq vnxt (entnext vnxt)) <font color="green">;Bir sonraki vertexi al</font id="green"> (setq vtxData (entget vnxt)) <font color="green">;Vertex datasını çek</font id="green"> (setq vtxTip (cdr (assoc 70 vtxData))) <font color="green">;Vertex tipini öğren</font id="green"> ) (princ) ) [/code] <hr noshade size="1"> Not: Sadelik adına hata kontrolleri ve verimlilik dikkate alınmamıştır. |
Yazar: | ressam [ 13 Kas 2004 02:38 ] |
Mesaj Başlığı: | |
verilen örnek lisp için teşekkür ederim.. İyi çalışmalar |
1. sayfa (Toplam 1 sayfa) | Tüm zamanlar UTC + 2 saat [ GITZ ] |
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |