proxy object version

proxy object version

JamesMaeding
Advisor Advisor
4,973 Views
6 Replies
Message 1 of 7

proxy object version

JamesMaeding
Advisor
Advisor

I have a version 2007 drawing that may have civil3d surfaces from 2017, 2015.

I found the props for ProxyEntity here:

https://www.theswamp.org/index.php?topic=44950.msg501586#msg501586

but am not clear on how to determine the version of the object enabler that created them.

 

I want to be able to say "this 2007 drawing has or does not have surfaces from 2015", same for 2017.

Just knowing they are a proxy from aeccsurface class is not enough.

Anyone done that?

 

This is a generic question, not really specific to c3d surfaces, just using that as an example.

 


internal protected virtual unsafe Human() : mostlyHarmless
I'm just here for the Shelties

0 Likes
4,974 Views
6 Replies
Replies (6)
Message 2 of 7

_gile
Consultant
Consultant

Hi,

 

As far as I know, neither ProxyObject nor ProxyEntity types expose much properties.

 

From the docs:

 

ProxyObject.png

 

ProxyEntity.png



Gilles Chanteau
Programmation AutoCAD LISP/.NET
GileCAD
GitHub

Message 3 of 7

fieldguy
Advisor
Advisor

Is there xdata on the objects?  If there is, you can find the "Registered Application Name" but I am not sure there is an entity type, like "Surface".

0 Likes
Message 4 of 7

JamesMaeding
Advisor
Advisor

Fieldguy,

Understand that a registered application name has nothing to do with a proxy objects class name or version.

 

If a regapp did have some kind of version info, it would be completely coincidence and unreliable, especially considering most programmers would not want to change those names from version to version. I myself use them and always make them generic named.

Not to show how incredibly knowledgeable I am, ha ha, I say this because I fight the regapp war with autodesk, and so many people get confused on regapps.

 

Gile,

You are going to die of over-kudos. Your nice responses are making autodesk look bad.


internal protected virtual unsafe Human() : mostlyHarmless
I'm just here for the Shelties

0 Likes
Message 5 of 7

Alexander.Rivilis
Mentor
Mentor

It is look like only reading dxf-groups of Proxy can help you: http://help.autodesk.com/view/ACD/2016/ENU/?guid=GUID-F59F0EC3-D34D-4C1A-91AC-7FDA569EF016

 

 

95

DXF: Object drawing format when it becomes a proxy (a 32-bit unsigned integer):

Low word is AcDbDwgVersion

High word is MaintenanceReleaseVersion

 

 

Also group 310 contain information about original object/entity. Usually (but not always) some first bytes contains version information.

Відповідь корисна? Клікніть на "ВПОДОБАЙКУ" цім повідомленням! | Do you find the posts helpful? "LIKE" these posts!
Находите сообщения полезными? Поставьте "НРАВИТСЯ" этим сообщениям!
На ваше запитання відповіли? Натисніть кнопку "ПРИЙНЯТИ РІШЕННЯ" | Have your question been answered successfully? Click "ACCEPT SOLUTION" button.
На ваш вопрос успешно ответили? Нажмите кнопку "УТВЕРДИТЬ РЕШЕНИЕ"


Alexander Rivilis / Александр Ривилис / Олександр Рівіліс
Programmer & Teacher & Helper / Программист - Учитель - Помощник / Програміст - вчитель - помічник
Facebook | Twitter | LinkedIn
Expert Elite Member

0 Likes
Message 6 of 7

JamesMaeding
Advisor
Advisor

great suggestion, but I do not see the 95 group for a c3d surface from 2017 opened in 2015:

(-1 . <Entity name: 7ff600c20b00>)
(0 . "ACAD_PROXY_ENTITY")
(5 . "C60")
(102 . "{ACAD_XDICTIONARY")
(360 . <Entity name: 7ff600c21b60>)
(102 . "}")
(330 . <Entity name: 7ff600c139f0>)
(100 . "AcDbEntity")
(67 . 0)
(410 . "Model")
(8 . "0")

 

Immediately I see my surface is an  "ACAD_PROXY_ENTITY", not  "ACAD_PROXY_OBJECT", so not too surprised.

I will have to play around a bit to see if entgetting the 360 or 330 items yield additional info.

 

Also listing gives this:

ACAD_PROXY_ENTITY Layer: "0"
Space: Model space
Handle = c60
DXF name: AECC_TIN_SURFACE
Class name: AeccDbSurfaceTin
Application name: AeccLand110
Product Desc: AutoCAD Civil 3D
Company: Autodesk,Inc.
WEB Address: www.autodesk.com

 

I wonder if the AeccLand110 is keyed to the version


internal protected virtual unsafe Human() : mostlyHarmless
I'm just here for the Shelties

0 Likes
Message 7 of 7

Alexander.Rivilis
Mentor
Mentor

@Anonymous wrote:

great suggestion, but I do not see the 95 group for a c3d surface from 2017 opened in 2015:

(-1 . <Entity name: 7ff600c20b00>)
(0 . "ACAD_PROXY_ENTITY")
(5 . "C60")
(102 . "{ACAD_XDICTIONARY")
(360 . <Entity name: 7ff600c21b60>)
(102 . "}")
(330 . <Entity name: 7ff600c139f0>)
(100 . "AcDbEntity")
(67 . 0)
(410 . "Model")
(8 . "0")



Please attach file with one c3d surface. It is interesting to me investigate this.

Відповідь корисна? Клікніть на "ВПОДОБАЙКУ" цім повідомленням! | Do you find the posts helpful? "LIKE" these posts!
Находите сообщения полезными? Поставьте "НРАВИТСЯ" этим сообщениям!
На ваше запитання відповіли? Натисніть кнопку "ПРИЙНЯТИ РІШЕННЯ" | Have your question been answered successfully? Click "ACCEPT SOLUTION" button.
На ваш вопрос успешно ответили? Нажмите кнопку "УТВЕРДИТЬ РЕШЕНИЕ"


Alexander Rivilis / Александр Ривилис / Олександр Рівіліс
Programmer & Teacher & Helper / Программист - Учитель - Помощник / Програміст - вчитель - помічник
Facebook | Twitter | LinkedIn
Expert Elite Member

0 Likes