PDA

View Full Version : Require assistance / help in writing a routine to compare two DWG files


whf
2006-02-10, 06:02 PM
Hi. So I've been tinkering a little bit with the idea of writing a little lisp that could compare two dwg files, and then automatically mark/hi-lite/copy-to-layer (you get the idea) all entities within a newer drawing that had been changed from the previous version. This would be very helpful for dealing with drawings that we receive from outside sources, as very often times there are things that have been changed that are not brought to our attention and could only be recognized by a close (time-consuming) scrutiny....and sometimes the things that aren't brought to our attention are major screw-ups that the producing draftsman wants to try and slip thru under the radar... If anyone knows of any utility or lisp that would do something along these lines, or has any input that may be helpful in my quest (I'll send you a copy once it's written), please let me know. Thanks!

Bill

Wanderer
2006-02-10, 06:14 PM
Hi. So I've been tinkering a little bit with the idea of writing a little lisp that could compare two dwg files, and then automatically mark/hi-lite/copy-to-layer (you get the idea) all entities within a newer drawing that had been changed from the previous version. This would be very helpful for dealing with drawings that we receive from outside sources, as very often times there are things that have been changed that are not brought to our attention and could only be recognized by a close (time-consuming) scrutiny....and sometimes the things that aren't brought to our attention are major screw-ups that the producing draftsman wants to try and slip thru under the radar... If anyone knows of any utility or lisp that would do something along these lines, or has any input that may be helpful in my quest (I'll send you a copy once it's written), please let me know. Thanks!

Billbill, I am going to move this from the cad management forum to the lisp forum as I believe it would be better served here.
I haven't seen anything yet that does this, but, perhaps our programming gurus can tip you off.
thanks.

kennet.sjoberg
2006-02-11, 08:51 AM
You can try CompareDWG at http://www.furix.com/

: ) Happy Computing !

kennet

cgsodd
2006-02-11, 03:20 PM
Here is a program a wrote a long time ago. when activated it blanks out everything in the drawing. You then can check the the last entities added to the drawing by giving it a number of entities to show. you can do this to each drawing to get an idea of the difference. Hope this helps.


(DEFUN C:drawl (/ SELALL SLEN COUNTER ANS ENAME)
(SETQ SELALL (SSGET "X"))
(SETQ SLEN (SSLENGTH SELALL))
(SETQ COUNTER 0)
(REPEAT SLEN
(SETQ ENAME (SSNAME SELALL COUNTER))
(REDRAW ENAME 2)
(SETQ COUNTER (1+ COUNTER))
)
(SETQ ANS (GETINT "\nHOW FAR BACK DO YOU WANT TO GO "))
(WHILE (> ANS SLEN) ;MAKE SURE VARIABLE ANS IS LESS THAN TOTAL ENTITIES
(SETQ ANS (GETINT "\nHOW FAR BACK DO YOU WANT TO GO "))
)
(SETQ COUNTER 0)
(REPEAT ANS
(SETQ ENAME (SSNAME SELALL COUNTER))
(REDRAW ENAME 1)
(SETQ COUNTER (1+ COUNTER))
)
(princ)
(prompt "Regen to get screen back to normal: ")
(princ)
)

Greg

[ Moderator Action = ON ] What are [ CODE ] tags... (http://forums.augi.com/misc.php?do=bbcode#code) [ Moderator Action = OFF ]