Simple macro for model comparison, requires blank project. Based on a command 'Select duplicate components'. That is, it finds the identical surfaces.
IF project_pathname(0) != '' {
MESSAGE INFO ' Please save /close project'
RETURN
}
PROJECT RESET NO
STRING Old = ''
STRING New = ''
$Old = FILESELECT 'Please select old model'
$New = FILESELECT 'Please select new model'
STRING cmd='IMPORT MODEL FILEOPEN "'+$Old+'"'
DoCommand $cmd
$cmd='IMPORT MODEL FILEOPEN "'+$New+'"'
DoCommand $cmd
STRING LIST Models=extract(folder('Model'),'Name')
CREATE LEVEL 'old' LEVEL
CREATE LEVEL 'new' LEVEL
CREATE LEVEL 'old_diff' LEVEL
CREATE LEVEL 'new_diff' LEVEL
EDIT MODEL $Models[0] SELECT ALL
EDIT LEVEL "old_diff" ACQUIRE SELECTED
EDIT MODEL $Models[0] DESELECT ALL
EDIT MODEL $Models[1] SELECT ALL
EDIT LEVEL "new_diff" ACQUIRE SELECTED
EDIT MODEL $Models[1] DESELECT ALL
DIALOGS MESSAGE OFF
EDIT MODEL ALL DUPLICATE_SURFACES SELECT
EDIT LEVEL "old" ACQUIRE SELECTED
EDIT MODEL $Models[0] DESELECT ALL
DELETE MODEL $Models[0]
EDIT RECYCLER RECOVER Model ALL
EDIT MODEL ALL DUPLICATE_SURFACES SELECT
EDIT LEVEL "new" ACQUIRE SELECTED
EDIT MODEL $Models[1] DESELECT ALL
ORDERSESSION Model $Models[0] FIRST
DELETE LEVEL EMPTY