Newsgroup: it.comp.software.cad
Titolo: modifica addlen

saluti
spulciando tra le domande e risposte ho  scaricato il file addlen  di 
seguito riportato,
ho provato  guardando  altri file a inserire le righe di programma che 
creano un file
di destinazione del risultato dell'eleborazione ma senza successo, 
probabilmente
ho inserito le linee di chiusura nel posto sbagliato,  penso che bastino le 
4 righe sottoriportate,
le prime 2 posizionate sotto setvar; e le altre 2 ????
grazie
------------------------
  (setq nomefile(getfiled "Selezionare il nome del File di punti" "" "txt" 
4))
 (setq nome-f(open nomefile "r"))
(close nome-f)
  (princ)
-------------------------------
;;;--- ADDLEN.lsp - Total lengths of objects.
;;;    Polylines, LWPolylines, Splines, Arcs, Circles, Lines, and Ellipse
;;;
;;;
;;;
(defun C:ADDLEN()
  (setvar "cmdecho" 0)
  ;;;--- Function to get the length of an ARC entity
  (defun getArc(en)
    (command "lengthen" en "")
    (getvar "perimeter")
  )
  ;;;--- Function to get the length of a LINE entity
  (defun getLine(en)
    (setq enlist(entget en))
    (distance (cdr(assoc 10 enlist)) (cdr(assoc 11 enlist)))
  )
  ;;;--- Function to get the length of a POLY, CIRCLE, SPLINE, OR ELLIPSE
  (defun getPoly(en)
    (command "area" "Object" en)
    (getvar "perimeter")
  )
  ;;;--- Main application
  ;;;--- Let the user select objects
  (if(setq eset(ssget))
    (progn
      ;;;--- Set up a variable to hold the length
      (setq totalLen 0)
      ;;;--- Set up a counter
      (setq cntr 0)
      ;;;--- Cycle through each entity in the selection set
      (while(< cntr (sslength eset))
        ;;;--- Get the first entity's name
        (setq en(ssname eset cntr))
        ;;;--- Get the DXF group codes
        (setq enlist(entget en))
        ;;;--- Get the type of entity
        (setq enType(cdr(assoc 0 enlist)))
        ;;;--- Get the length based on entity type
        (cond
          ((= enType "ARC"       )(setq len(getArc en)))
          ((= enType "CIRCLE"    )(setq len(getPoly en)))
          ((= enType "ELLIPSE"   )(setq len(getPoly en)))
          ((= enType "LINE"      )(setq len(getLine en)))
          ((= enType "LWPOLYLINE")(setq len(getPoly en)))
          ((= enType "POLYLINE"  )(setq len(getPoly en)))
          ((= enType "SPLINE"    )(setq len(getPoly en)))
          (T (setq len 0.0))
        )
        ;;;--- Format the entity type to be 12 characters long
        (while(< (strlen enType) 12)(setq enType(strcat enType " ")))
        ;;;--- Inform the user of progress
        (princ "\n Found ")
        (princ enType)
        (princ " with a length of: ")
        (princ (rtos len))
        ;;;--- Total the length
        (setq totalLen(+ totalLen len))
        ;;;--- Increment the counter to get the next entity
        (setq cntr (+ cntr 1))
      )
    )
  )
  (setvar "cmdecho" 1)
  ;;;--- Inform the user of the results
  (alert (strcat "\n Found " (itoa cntr) " entitie(s) with a Total Length of 
" (rtos totalLen)))
  ;;;--- Suppress the last echo for a clean exit
  (princ)
) 

non è corretto togliere l'autore del LISP
;;;--- ADDLEN.lsp - Total lengths of objects. 
;;;    Polylines, LWPolylines, Splines, Arcs, Circles, Lines, and Ellipse
;;;
;;;
;;;
;;;--- Copyright 2005 by JefferyPSanders.com
;;;    All rights reserved.
;;;
;;;
;;;
;;;--- Created on 11/25/05
;;;
(defun C:ADDLEN()
  (setvar "cmdecho" 0)



  ;;;--- Main application














-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

> non è corretto togliere l'autore del LISP
Credo anche che dove sta scritto:
"Copyright 2005 by ... - All rights reserved."
non sia possibile nemmeno pubblicare il testo del programma senza
l'autorizzazione dell'autore.
A me è successo, e ho dovuto far rimuovere il messaggio dall'NG
e fare le scuse all'autore.
Alla fine del testo, che avevo copiato da un sito Internet (quindi pubblico)
e che avevo riportato integralmente, c'era scritto in modo esplicito che
tali informazioni non potevano essere pubblicate in nessun modo.
Appena mi sono accordo della limitazione, rileggedo meglio le note sul
Copyright, ho fatto rimuovere subito il messaggio.
Nel frattempo, nel giro di poche ore, l'autore, che non frequentava da tempo
in modo assiduo l'NG., era già stato informato da alcuni che avevano letto
il mio messaggio.
Facco notare che ciò che io avevo reso pubblico era una spiegazione dettagliata
sulla funzione "Mapcar", che non mi ero assolutamente preso alcun merito
sul suo contenuto, che "conoscevo" l'autore avendolo incontrato diverse volte
sullo stesso NG e con il quale c'era un certo "rapporto di amicizia".
Marco

chiedo pubblicamene scusa
pensavo   non si dovesse  (ovvvviamente mettere il proprio nome)    l'ho 
tolto per la tua seconda ipotesi
dimmi cosa devo fare adesso
grazie ad entrambi per avermelo segnalato
grazie anche a chi mi ha segnalato il problema del quotar bene
spero prossimamente di essere all'altezza
ciao
"Marco_AA" <Marco_AA@Marco_AA.com> ha scritto nel messaggio 
news:4415229f$0$18283$4faf...@reader1.news.tin.it...


> dimmi cosa devo fare adesso
Credo che non succeda nulla, difficilmente qualcuno
che conosce l'autore o l'autore stesso andrà a rovistare
in questo NG.
La tua buona fede mi sembra sufficiente.
Ma non tutti la pensano così!
Eventualmente chiedi al moderatore di eliminare il messaggio.
Ciao.
Marco 

come faccio a farlo
a chi indirizzo il messaggio ?
ciao
"Marco_AA" <Marco_AA@Marco_AA.com> ha scritto nel messaggio 
news:4415ae0f$0$18295$4faf...@reader1.news.tin.it...


a seguito segnalazione chiedo al moderatore se in ascolto di cancellare il 
messaggio
ringrazio
e spero   a risentirci alla prossima occasione
grazie tutti
ciao
maurizio
"Marco_AA" <Marco_AA@Marco_AA.com> ha scritto nel messaggio 
news:4415ae0f$0$18295$4faf...@reader1.news.tin.it...
