Comment 9 for bug 192923

Revision history for this message
Alvin Penner (apenner) wrote :

   First of all before I get too far, two apologies, I apologize for the length of this response because it will be long, and I apologize for mangling your code, because it was elegant. The code you wrote for python extensions is some of the most elegant and powerful stuff I have ever seen. I'm an old QBASIC person, grew up on FORTRAN IV, so this is a bit new to me, and very refreshing after looking at spaghetti code at work.
  So, to get to the point, I believe the syntax you are using for SPLINE probably originated in AutoCAD Release 13. Any references that I have seen before R13 typically contained multiply segmented lines or polylines even if they used the word "spline". To me the word spline means one thing only, namely cubic Bezier, anything less than that is not a spline. The problem, I think, is that in order to get AutoCAD to recognize the spline you need to specify a rev number. In this case the rev number is anything greater than AC1012, which is code for Release 13. So you need to say
  9
$ACADVER
  1
AC1012 (or greater)
in the HEADER section. Then the spline elements will be properly recognized.

  Unfortunately, that's the good news. The bad news is that you will now have to specify unique handles for the various ENTITIES. afaik handles became optional in Release 10 and became mandatory in Release 13. This means that you need to have the code
  9
$HANDSEED
  5
xxx
in the HEADER, and you also need to specify unique handles for every ENTITY using the syntax
  5
xxx
for every ENTITY. (btw the code that I used for handles was actually ripped off from pstoedit, which I believe is fully compatible with the syntax of the spline that you used.)

    Anyways, that was also the good news, the really bad news is that I have not been able to find any meaningful documentation on what would constitute a reasonable value for $HANDSEED, that appears to be a very closely guarded secret.

    This is the point at which I gave up and cried uncle. I could not make sense out of where this data is coming from, so I generated a standard ACAD2000 format DXF file using AutoCAD LT 2002, and used it as a template.

   I believe that if a meaningful value of $HANDSEED could be developed, then a more minimalist version could be produced, which I am all in favor of, but can't figure out how to accomplish.

   Thanks for the feedback, I will investigate the handle issue some more, and if I have no luck at all then I'll report back.

-APP