A Porblem about TsgDXFDimension?

Discuss and ask questions about CAD VCL (Delphi and C++ Builder).

Moderators: SDS, support, admin

Post Reply
leapme
Posts: 2
Joined: 30 Aug 2007, 09:24

A Porblem about TsgDXFDimension?

Post by leapme » 30 Aug 2007, 09:40

In delphi, I want to get the block of a Dimension.but sometimes there get wrong coordinates.
For example, a dimension point in Autocad are in coordinates(816350, -296423).When I use the sentence 'img.Converter.Entities.block[j].X/Y' to get the coordinats(535998,-162770).(the i entity is the dimension, the j pointer is upper pointer)
It's happened in some files. I don't down why.

support
Posts: 3272
Joined: 30 Mar 2005, 11:36
Contact:

Post by support » 07 Sep 2007, 13:26

Hello!

There is no mistake.
Such strange behaviour is explained by existence of additional conditions such as <b>Extrusion direction</b> etc.
If necessary, please send us your file to support@cadsofttools.com with a reference to this topic. We will check it to ensure the situation is just like we suppose.

Sergey.

Please post questions to the forum or write to support@cadsofttools.com

leapme
Posts: 2
Joined: 30 Aug 2007, 09:24

Post by leapme » 11 Sep 2007, 10:06

Thank you for your answers. I don't use the tsgDXFDimension.point, this point contains coordinates of the vertex.

I also have a new problem:
When I use tsgDXFDimension.flags, the values is always 11.In help document flags is to sets/gets dimension type byte. Can you tell me how to get the right values.

support
Posts: 3272
Joined: 30 Mar 2005, 11:36
Contact:

Post by support » 11 Sep 2007, 11:24

Hello!

This description is from CAD Import VCL Help:

<b>property</b> TsgDXFDimension.Flags - sets or gets a dimension type byte.

Dimension type.

Values 0-6 are integer values that represent the dimension type. Values 32, 64, and 128 are bit values, which are added to the integer values (value 32 is always set in R13 and later releases).

Type Meaning
0 Rotated, horizontal, or vertical
1 Aligned
2 Angular
3 Diameter
4 Radius
5 Angular 3 point
6 Ordinate
32 Indicates that the block reference (group code 2) is referenced by this dimension only.
64 Ordinate type. This is a bit value (bit 7) used only with integer value 6. If set, ordinate is X-type; if not set, ordinate is Y-type.
128 This is a bit value (bit 8) added to the other group 70 values if the dimension text has been positioned at a user-defined location rather than at the default location.

If you get another values, it is incorrect. Can you please send us your file to support@cadsofttools.com with a reference to this topic. We will test it.

Sergey.

Please post questions to the forum or write to support@cadsofttools.com

Post Reply