• This forum is the machine-generated translation of www.cad3d.it/forum1 - the Italian design community. Several terms are not translated correctly.

lisp compares two files

  • Thread starter Thread starter camilla72
  • Start date Start date

camilla72

Guest
Good evening, everyone! !
i autocad 2016 where there is no command compares.
do you know if there is a lisp that compares two files??
or that deletes the overlap lines so that the final file is only the differences between the two files? ?
 
Hello.
the dos fc command compares two files and highlights the differences; There are numerous mini tutorials and/or descriptions on the network.
I can't believe
 
for the simple lines I use this, not having autocad, the problem however for me is another, and I would like to understand if in native autocad is solved.
By cleaning a design I can only delete the lines actually equal, even if with opposite carrier, and I still have line breaks if these are contained and overlapped to other longer segments.
the same with the matching surfaces, where the comparison is even slower because it requires even more comparisons on the order of the vertices, and therefore I am not in post. I only use it on small parts of the whole design, and it is worth the same defect, if a surface is contained in another does not identify it.. .





Code:
(defun deletelinecopy ()
(prompt "\ndelete line copy new: ") (setq selez(ssget))) (setq dead 0 spy 0)
(if (/= nil selez)
(progn)
(setq max (sslength selez) Contasel 0)
(while (> max contasel)
(setq en (ssname selez contasel) alist (entget en)
(if (or (= "3dline" (cdr(assoc 0 alist)))) (= "line" (cdr(assoc 0 alist)))))
(progn)
(setq dead 0)
(setq pnta (cdr(assoc 10 alist)) pntb (cdr(assoc 11 alist))
(Sectq spying 1)
(while (and (- max contasel ) spy on) ( /= dead 1) )
(setq en2 (ssname selez (+ counterwire spy)) alist2 (entget en2))
(setq pnta2 (cdr(assoc 10 alist2)) pntb2 (cdr(assoc 11 alist2)) )
(if (and (equal pnta2)(equal pntb pntb2))
(setq dead 1)
)
(if (and (equal pntb2)(equal pntb pnta2))
(setq dead 1)
)
(setq flatness (+ flatness 1) )
) ; end progn
) ; end if
;wend nested

(if (= dead 1)(entdel en))
(setq dead 0 spy 0)

;(princ (rtos contasel))
(princ)
(setq contasel (+ 1 accountant))
) ; end progn
) ; end if
)
)
 
.... maybe I'm a little out of time to answer... but winmerge test:
 

Forum statistics

Threads
44,997
Messages
339,767
Members
4
Latest member
ibt

Members online

No members online now.
ciao
Back
Top