Can any one tell me How to compare two drawing file with object data(two version of the same drawing) .if any body has source code (C# Arx) then will be much better.
ok..suppose I have drawing A ..Now I have made some changes in drawing A(like addition/deletion/object data modification) and save it as Drawing B. Now I want to compare Drawing A and B to find out the changes and mark those changes in a temporary drawing.
1. Iterate model space (and other layout if needed).
2. Collect ObjectID's for all entities in both dwg files.
3. Compare collection of ObjectID's, find deleted/added entities (compare not ObjectID but Handle value)
4. Compare entities with the same Handle from both dwg file. It is easy compare entitytype, layer, color, linetype, etc., but not easy compare geometry of entities.
Thanks..actually major issue with the object data copmarison.should I have to open both the dwg in the current session?
If you have sample code..will b good for me.
is there a way to iterate over all the different properties of an object, without having to specifically specify each one. Such as height , width. just use the properties that would normally show up in the properties in Visual Studio.
I know this is probably a long shot.
You could use reflection or create a filer.
Here was attempt that was thrown together as a intial test just to see how it worked but I think I wiould take another approach.
It used handles to compare so the idea was for comparing diffrent versions of the same drawing.
It might be better to go with a DxfFiler that which looks like it overrides might be eaiser for creating some type of structure for comparing.
If you look at Tony T posts here
You could maybe use LINQ to group types, and figure a way to test some properties and get more specidic as needed like using curve properties for lines, polylines, and get more specific for ones that pass.
Or somehow mix the two where you file out info that would make comparing eaiser.
Log into access your profile, ask and answer questions, share ideas and more. Haven't signed up yet? Register