18.05.2011 21:43    

tralles
Arkadaşlar,

benim gereksinim duyduğum lisp,
polyline'nın parçalarının uzunluklarını tablo şeklinde yazan bir lisp,

lisp bilgim çok çok az bu nedenle çeşitli lisplerden birleştirerek derleme olarak yaptığım lisp ektedir, fakat lispin bir kaç eksiği var.

bunları düzeltmenizi yada yeni bir lisp yazmanızı rica ediyorum.
ekteki lisp vertexleri yazıyor fakat arada boşluk bırakmıyor ve başlangıca 0 rakamını yazıyor.
ayrıca döngü şeklinde yazmıyor. bidefa yazıp komuttan çıkıyor, oysaki benim istediğim sürekli kullanıcaya seçtirsin ve bir anda tablo şeklinde yazdırsın.

şimdiden teşekkürler

Kod:

(defun c:plen (/ i ss file ent j str)
  (vl-load-com)

  (cond ((and (setq i -1 ss (ssget '((0 . "lwpolyline")))))
         
         
         (while (setq ent (ssname ss (setq i (1+ i))))
           (setq j (1- (vlax-curve-getstartparam ent)) str " ")

           (while (<= (setq j (1+ j)) (vlax-curve-getendparam ent))

             (setq str
               (strcat str
                 (rtos (- (vlax-curve-getdistatparam ent j)
                            (if (zerop j) 0
                              (vlax-curve-getdistatparam ent (1- j)))) 2 2) (chr 9)))))))
(setq yazıyüksekliği (getdist (strcat "
yazi yuksekligini giriniz : ")))
(setq koordinat (getpoint "
yazılacak yeri tıklayınız :"))
(setq koordinatx (car koordinat))
(setq koordinaty (cadr koordinat))
(setq koordinatxy (list koordinatx (+ (/ yazıyüksekliği 2) koordinaty) 0))
(command "text" "m" koordinatxy yazıyüksekliği "0" str)

  (princ))

ehya (19.05.2011 07:24 GMT)

> 1 <
Copyright © 2004-2022 SQL: 1.058 saniye - Sorgu: 48 - Ortalama: 0.02203 saniye