@salman_abeed wrote:
thanks ... I am going to try latest
There are few more types not covered .. maybe a minute for you to add them in the best way.
case DwgDataType.UInt32:
case DwgDataType.UInt16:
case DwgDataType.Real:
If you're talking about the code that converts items to TypedValues, I'm depreciating that because it just doesn't work. I did add a case for DxfCode.Real, but there is no DXF output that uses unsigned integers and there are no DxfCodes that represent those types:
case DwgDataType.UInt32:
return new TypedValue((short) DxfCode.???????, Value)
case DwgDataType.UInt64:
return new TypedValue((short) DxfCode.???????, Value)
There's no direct correlation between DwgDataType and DxfCode. For example, there are several DxfCode fields that all have the same numeric value of 41. ToString() will always show you the first one that appears in the enum declaration, which is not meaningful. It may represent the width factor of a TEXT entity; the X scale factor of an INSERT entity; or a VIEWPORT's aspect ratio. So, the same DxfCode can have a different meaning for each type of entity whose DXF output it appears in.
For DWG output, the latest version marshals a list of DwgDataItem structs that use the DwgDataType enum to describe the type. DwgDataType conveys both a data type, and a sub-type (e.g., what type of reference an ObjectId represents). But unlike DxfCodes, a DwgDataType does not convey what a value represents, because that can be object type-dependent and/or order-dependent. I will probably remove all of the TypeValue/DxfCode-related code because it only confuses interpretation of the output.