diff --git a/dxf-specs.txt b/dxf-specs.txt index cb3319e..36961bd 100644 --- a/dxf-specs.txt +++ b/dxf-specs.txt @@ -1,2 +1,16 @@ +LINE 10, 20, 30 (start point), 11, 21, 31 (end point). + +POINT 10, 20, 30 (point), 50 (angle of X axis for the UCS in effect + when the Point was drawn -optional 0, for use when PDMODE is + nonzero). + +CIRCLE 10, 20, 30 (center), 40 (radius). + +ARC 10, 20, 30 (center), 40 (radius), 50 (start angle), 51 (end + angle) + +0 start of an entitiy +8 layer name + $ANGBASE is set to 0.0, meaning 0 degrees is to the east or right. $ANGDIR is set to 0, meaning drawing is counter-clockwise. diff --git a/dxf/#5inchknife.dxf b/dxf/#5inchknife.dxf new file mode 100644 index 0000000..91c8218 --- /dev/null +++ b/dxf/#5inchknife.dxf @@ -0,0 +1,3408 @@ +999 +dxflib 2.2.0.0 + 0 +SECTION + 2 +HEADER + 9 +$ACADVER + 1 +AC1015 + 9 +$HANDSEED + 5 +FFFF + 9 +$OBSCOLOR + 70 +257 + 9 +$DIMLIM + 70 +0 + 9 +$LENSLENGTH + 40 +50.0 + 9 +$LONGITUDE + 40 +-122.3940000000000055 + 9 +$DIMLUNIT + 70 +2 + 9 +$DIMTIX + 70 +0 + 9 +$LOFTANG1 + 40 +1.570796326794897 + 9 +$AUNITS + 70 +0 + 9 +$LOFTANG2 + 40 +1.570796326794897 + 9 +$SHOWHIST +280 +1 + 9 +$QTEXTMODE + 70 +0 + 9 +$USERR1 + 40 +0.0 + 9 +$DIMALTU + 70 +2 + 9 +$UCSORGBOTTOM + 10 +0.0 + 20 +0.0 + 30 +0.0 + 9 +$USERR2 + 40 +0.0 + 9 +$USERR3 + 40 +0.0 + 9 +$USERR4 + 40 +0.0 + 9 +$LIMMAX + 10 +12.0 + 20 +9.0 + 9 +$USERR5 + 40 +0.0 + 9 +$PELEVATION + 40 +0.0 + 9 +$DIMALTZ + 70 +0 + 9 +$DIMADEC + 70 +0 + 9 +$JOINSTYLE +280 +0 + 9 +$DIMATFIT + 70 +3 + 9 +$TILEMODE + 70 +1 + 9 +$PEXTMIN + 10 +0.0 + 20 +0.0 + 30 +0.0 + 9 +$TDUSRTIMER + 40 +2456137.6476075919345021 + 9 +$DWGCODEPAGE + 3 +ANSI_1252 + 9 +$SORTENTS +280 +127 + 9 +$UCSORTHOVIEW + 70 +0 + 9 +$DIMSOXD + 70 +0 + 9 +$DIMTZIN + 70 +0 + 9 +$SPLINETYPE + 70 +6 + 9 +$DIMLFAC + 40 +1.0 + 9 +$DIMSE1 + 70 +0 + 9 +$FILLETRAD + 40 +0.0 + 9 +$DIMSE2 + 70 +0 + 9 +$PSTYLEMODE +290 +1 + 9 +$TEXTSTYLE + 7 +Standard + 9 +$DIMTSZ + 40 +0.0 + 9 +$PUCSXDIR + 10 +1.0 + 20 +0.0 + 30 +0.0 + 9 +$DIMTFILL + 70 +0 + 9 +$XCLIPFRAME +280 +0 + 9 +$DIMTXSTY + 7 +Standard + 9 +$PLIMMAX + 10 +0.0 + 20 +0.0 + 9 +$LOFTNORMALS +280 +1 + 9 +$DIMTFILLCLR + 70 +0 + 9 +$DIMTM + 40 +0.0 + 9 +$UCSORG + 10 +0.0 + 20 +0.0 + 30 +0.0 + 9 +$DIMJOGANG + 40 +0.7853981633974483 + 9 +$DIMTP + 40 +0.0 + 9 +$PSLTSCALE + 70 +1 + 9 +$ANGBASE + 50 +0.0 + 9 +$PUCSYDIR + 10 +0.0 + 20 +1.0 + 30 +0.0 + 9 +$EXTNAMES +290 +1 + 9 +$LIGHTGLYPHDISPLAY +280 +1 + 9 +$DIMASZ + 40 +0.18 + 9 +$PUCSORTHOVIEW + 70 +0 + 9 +$INSBASE + 10 +0.0 + 20 +0.0 + 30 +0.0 + 9 +$UNITMODE + 70 +0 + 9 +$MEASUREMENT + 70 +0 + 9 +$INDEXCTL +280 +0 + 9 +$REALWORLDSCALE +290 +1 + 9 +$EXTMAX + 10 +-100000000000000000000.0 + 20 +-100000000000000000000.0 + 30 +-100000000000000000000.0 + 9 +$ELEVATION + 40 +0.0 + 9 +$TDCREATE + 40 +2452642.855050936806947 + 9 +$STEPSPERSEC + 40 +2.0 + 9 +$DIMDEC + 70 +4 + 9 +$LATITUDE + 40 +37.7950000000000017 + 9 +$CELTYPE + 6 +ByLayer + 9 +$MENU + 1 +. + 9 +$ANGDIR + 70 +0 + 9 +$DIMALTTD + 70 +2 + 9 +$TREEDEPTH + 70 +3020 + 9 +$LTSCALE + 40 +1.0 + 9 +$PROXYGRAPHICS + 70 +1 + 9 +$DIMTMOVE + 70 +0 + 9 +$DIMAZIN + 70 +0 + 9 +$TDUPDATE + 40 +2456137.4463098500855267 + 9 +$DIMTOLJ + 70 +1 + 9 +$DIMCEN + 40 +0.09 + 9 +$DIMTVP + 40 +0.0 + 9 +$TRACEWID + 40 +0.05 + 9 +$CMLSTYLE + 2 +Standard + 9 +$DISPSILH + 70 +0 + 9 +$DIMSTYLE + 2 +Standard + 9 +$STEPSIZE + 40 +6.0 + 9 +$SKETCHINC + 40 +0.1 + 9 +$FILLMODE + 70 +1 + 9 +$PLINEGEN + 70 +0 + 9 +$DIMLWD + 70 +-2 + 9 +$LASTSAVEDBY + 1 +Autodesk + 9 +$THICKNESS + 40 +0.0 + 9 +$DIMLWE + 70 +-2 + 9 +$CELTSCALE + 40 +1.0 + 9 +$PUCSORG + 10 +0.0 + 20 +0.0 + 30 +0.0 + 9 +$DIMALTTZ + 70 +0 + 9 +$INSUNITS + 70 +1 + 9 +$UCSORGBACK + 10 +0.0 + 20 +0.0 + 30 +0.0 + 9 +$PLINEWID + 40 +0.0 + 9 +$PEXTMAX + 10 +0.0 + 20 +0.0 + 30 +0.0 + 9 +$DIMJUST + 70 +0 + 9 +$CSHADOW +280 +0 + 9 +$DIMASSOC +280 +2 + 9 +$DIMTXTDIRECTION + 70 +0 + 9 +$UCSYDIR + 10 +0.0 + 20 +1.0 + 30 +0.0 + 9 +$PUCSORGBACK + 10 +0.0 + 20 +0.0 + 30 +0.0 + 9 +$PDSIZE + 40 +0.0 + 9 +$PUCSORGBOTTOM + 10 +0.0 + 20 +0.0 + 30 +0.0 + 9 +$DIMUPT + 70 +0 + 9 +$TILEMODELIGHTSYNCH +280 +1 + 9 +$DIMTAD + 70 +0 + 9 +$SHADOWPLANELOCATION + 40 +0.0 + 9 +$UCSXDIR + 10 +1.0 + 20 +0.0 + 30 +0.0 + 9 +$MAXACTVP + 70 +64 + 9 +$DIMSAH + 70 +0 + 9 +$HALOGAP +280 +0 + 9 +$TDUCREATE + 40 +2452643.0633842712268233 + 9 +$DIMFRAC + 70 +0 + 9 +$USERI1 + 70 +0 + 9 +$USERI2 + 70 +0 + 9 +$UCSORGRIGHT + 10 +0.0 + 20 +0.0 + 30 +0.0 + 9 +$USERI3 + 70 +0 + 9 +$CELWEIGHT +370 +-1 + 9 +$LWDISPLAY +290 +0 + 9 +$SKPOLY + 70 +0 + 9 +$USERI4 + 70 +0 + 9 +$USERI5 + 70 +0 + 9 +$LOFTPARAM + 70 +7 + 9 +$LIMMIN + 10 +0.0 + 20 +0.0 + 9 +$ACADMAINTVER + 70 +6 + 9 +$UCSORGTOP + 10 +0.0 + 20 +0.0 + 30 +0.0 + 9 +$PSOLHEIGHT + 40 +4.0 + 9 +$MIRRTEXT + 70 +0 + 9 +$TDUUPDATE + 40 +2456137.6546431831084192 + 9 +$TEXTSIZE + 40 +0.2 + 9 +$DIMGAP + 40 +0.09 + 9 +$LUPREC + 70 +4 + 9 +$INTERFERECOLOR + 62 +1 + 9 +$CECOLOR + 62 +256 + 9 +$TIMEZONE + 70 +-8000 + 9 +$DIMSD1 + 70 +0 + 9 +$3DDWFPREC + 40 +2.0 + 9 +$DIMSD2 + 70 +0 + 9 +$WORLDVIEW + 70 +1 + 9 +$PUCSORGRIGHT + 10 +0.0 + 20 +0.0 + 30 +0.0 + 9 +$PLIMCHECK + 70 +0 + 9 +$DIMTFAC + 40 +1.0 + 9 +$CMLJUST + 70 +0 + 9 +$DWFFRAME +280 +2 + 9 +$USRTIMER + 70 +1 + 9 +$SURFU + 70 +6 + 9 +$SURFV + 70 +6 + 9 +$DIMASO + 70 +1 + 9 +$PSOLWIDTH + 40 +0.25 + 9 +$DIMDLE + 40 +0.0 + 9 +$EXTMIN + 10 +100000000000000000000.0 + 20 +100000000000000000000.0 + 30 +100000000000000000000.0 + 9 +$UCSORGLEFT + 10 +0.0 + 20 +0.0 + 30 +0.0 + 9 +$OLESTARTUP +290 +0 + 9 +$PUCSORGFRONT + 10 +0.0 + 20 +0.0 + 30 +0.0 + 9 +$DIMDLI + 40 +0.38 + 9 +$LUNITS + 70 +2 + 9 +$DIMCLRD + 70 +0 + 9 +$SHADEDIF + 70 +70 + 9 +$DIMCLRE + 70 +0 + 9 +$SPLINESEGS + 70 +8 + 9 +$PUCSORGLEFT + 10 +0.0 + 20 +0.0 + 30 +0.0 + 9 +$INTERSECTIONDISPLAY +280 +0 + 9 +$DIMALTRND + 40 +0.0 + 9 +$DIMRND + 40 +0.0 + 9 +$DIMALT + 70 +0 + 9 +$FINGERPRINTGUID + 2 +{FDEAD576-A652-11D2-9A35-0060089B3A3F} + 9 +$DIMCLRT + 70 +0 + 9 +$DIMFXLON + 70 +0 + 9 +$PUCSORGTOP + 10 +0.0 + 20 +0.0 + 30 +0.0 + 9 +$OBSLTYPE +280 +0 + 9 +$DIMTOH + 70 +1 + 9 +$UCSORGFRONT + 10 +0.0 + 20 +0.0 + 30 +0.0 + 9 +$VISRETAIN + 70 +1 + 9 +$SHADEDGE + 70 +3 + 9 +$CAMERADISPLAY +290 +0 + 9 +$DIMTOL + 70 +0 + 9 +$SURFTYPE + 70 +6 + 9 +$VERSIONGUID + 2 +{FBC2AE19-5C5C-49EC-81BC-71B1A3362A02} + 9 +$CHAMFERA + 40 +0.0 + 9 +$SURFTAB1 + 70 +6 + 9 +$CHAMFERB + 40 +0.0 + 9 +$SURFTAB2 + 70 +6 + 9 +$CHAMFERC + 40 +0.0 + 9 +$AUPREC + 70 +0 + 9 +$NORTHDIRECTION + 40 +0.0 + 9 +$CHAMFERD + 40 +0.0 + 9 +$DIMTDEC + 70 +4 + 9 +$PDMODE + 70 +0 + 9 +$SPLFRAME + 70 +0 + 9 +$PLIMMIN + 10 +0.0 + 20 +0.0 + 9 +$SOLIDHIST +280 +1 + 9 +$XEDIT +290 +1 + 9 +$CAMERAHEIGHT + 40 +0.0 + 9 +$DIMDSEP + 70 +46 + 9 +$DIMARCSYM + 70 +0 + 9 +$LIMCHECK + 70 +0 + 9 +$PINSBASE + 10 +0.0 + 20 +0.0 + 30 +0.0 + 9 +$ORTHOMODE + 70 +0 + 9 +$PSVPSCALE + 40 +0.0 + 9 +$CLAYER + 8 +0 + 9 +$DIMSHO + 70 +1 + 9 +$DIMTOFL + 70 +0 + 9 +$LOFTMAG1 + 40 +0.0 + 9 +$DIMTXT + 40 +0.18 + 9 +$DIMEXE + 40 +0.18 + 9 +$TDINDWG + 40 +0.0042459954 + 9 +$LOFTMAG2 + 40 +0.0 + 9 +$REGENMODE + 70 +1 + 9 +$ATTMODE + 70 +1 + 9 +$CMLSCALE + 40 +1.0 + 9 +$DIMTIH + 70 +1 + 9 +$DIMZIN + 70 +0 + 9 +$CEPSNTYPE +380 +0 + 9 +$DIMFXL + 40 +1.0 + 9 +$HIDETEXT +280 +1 + 9 +$DIMSCALE + 40 +1.0 + 9 +$INTERSECTIONCOLOR + 70 +257 + 9 +$DIMALTD + 70 +2 + 9 +$DIMAUNIT + 70 +0 + 9 +$DIMALTF + 40 +25.3999999999999986 + 9 +$DIMEXO + 40 +0.0625 + 9 +$DGNFRAME +280 +0 + 9 +$ENDCAPS +280 +0 + 0 +ENDSEC + 0 +SECTION + 2 +TABLES + 0 +TABLE + 2 +VPORT + 5 +8 +100 +AcDbSymbolTable + 70 +1 + 0 +VPORT + 5 +30 +100 +AcDbSymbolTableRecord +100 +AcDbViewportTableRecord + 2 +*Active + 70 +0 + 10 +0.0 + 20 +0.0 + 11 +1.0 + 21 +1.0 + 12 +286.3055555555554861 + 22 +148.5 + 13 +0.0 + 23 +0.0 + 14 +10.0 + 24 +10.0 + 15 +10.0 + 25 +10.0 + 16 +0.0 + 26 +0.0 + 36 +1.0 + 17 +0.0 + 27 +0.0 + 37 +0.0 + 40 +297.0 + 41 +1.92798353909465 + 42 +50.0 + 43 +0.0 + 44 +0.0 + 50 +0.0 + 51 +0.0 + 71 +0 + 72 +100 + 73 +1 + 74 +3 + 75 +1 + 76 +1 + 77 +0 + 78 +0 +281 +0 + 65 +1 +110 +0.0 +120 +0.0 +130 +0.0 +111 +1.0 +121 +0.0 +131 +0.0 +112 +0.0 +122 +1.0 +132 +0.0 + 79 +0 +146 +0.0 + 0 +ENDTAB + 0 +TABLE + 2 +LTYPE + 5 +5 +100 +AcDbSymbolTable + 70 +21 + 0 +LTYPE + 5 +14 +100 +AcDbSymbolTableRecord +100 +AcDbLinetypeTableRecord + 2 +ByBlock + 70 +0 + 3 + + 72 +65 + 73 +0 + 40 +0.0 + 0 +LTYPE + 5 +15 +100 +AcDbSymbolTableRecord +100 +AcDbLinetypeTableRecord + 2 +ByLayer + 70 +0 + 3 + + 72 +65 + 73 +0 + 40 +0.0 + 0 +LTYPE + 5 +16 +100 +AcDbSymbolTableRecord +100 +AcDbLinetypeTableRecord + 2 +CONTINUOUS + 70 +0 + 3 +Solid line + 72 +65 + 73 +0 + 40 +0.0 + 0 +LTYPE + 5 +31 +100 +AcDbSymbolTableRecord +100 +AcDbLinetypeTableRecord + 2 +DOT + 70 +0 + 3 +Dot . . . . . . . . . . . . . . . . . . . . . . + 72 +65 + 73 +2 + 40 +6.3499999999999996 + 49 +0.0 + 74 +0 + 49 +-6.3499999999999996 + 74 +0 + 0 +LTYPE + 5 +32 +100 +AcDbSymbolTableRecord +100 +AcDbLinetypeTableRecord + 2 +DOT2 + 70 +0 + 3 +Dot (.5x) ..................................... + 72 +65 + 73 +2 + 40 +3.1749999999999998 + 49 +0.0 + 74 +0 + 49 +-3.1749999999999998 + 74 +0 + 0 +LTYPE + 5 +33 +100 +AcDbSymbolTableRecord +100 +AcDbLinetypeTableRecord + 2 +DOTX2 + 70 +0 + 3 +Dot (2x) . . . . . . . . . . . . . + 72 +65 + 73 +2 + 40 +12.6999999999999993 + 49 +0.0 + 74 +0 + 49 +-12.6999999999999993 + 74 +0 + 0 +LTYPE + 5 +34 +100 +AcDbSymbolTableRecord +100 +AcDbLinetypeTableRecord + 2 +DASHED + 70 +0 + 3 +Dashed __ __ __ __ __ __ __ __ __ __ __ __ __ _ + 72 +65 + 73 +2 + 40 +19.0500000000000007 + 49 +12.6999999999999993 + 74 +0 + 49 +-6.3499999999999996 + 74 +0 + 0 +LTYPE + 5 +35 +100 +AcDbSymbolTableRecord +100 +AcDbLinetypeTableRecord + 2 +DASHED2 + 70 +0 + 3 +Dashed (.5x) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ + 72 +65 + 73 +2 + 40 +9.5250000000000004 + 49 +6.3499999999999996 + 74 +0 + 49 +-3.1749999999999998 + 74 +0 + 0 +LTYPE + 5 +36 +100 +AcDbSymbolTableRecord +100 +AcDbLinetypeTableRecord + 2 +DASHEDX2 + 70 +0 + 3 +Dashed (2x) ____ ____ ____ ____ ____ ___ + 72 +65 + 73 +2 + 40 +38.1000000000000014 + 49 +25.3999999999999986 + 74 +0 + 49 +-12.6999999999999993 + 74 +0 + 0 +LTYPE + 5 +37 +100 +AcDbSymbolTableRecord +100 +AcDbLinetypeTableRecord + 2 +DASHDOT + 70 +0 + 3 +Dash dot __ . __ . __ . __ . __ . __ . __ . __ + 72 +65 + 73 +4 + 40 +25.3999999999999986 + 49 +12.6999999999999993 + 74 +0 + 49 +-6.3499999999999996 + 74 +0 + 49 +0.0 + 74 +0 + 49 +-6.3499999999999996 + 74 +0 + 0 +LTYPE + 5 +38 +100 +AcDbSymbolTableRecord +100 +AcDbLinetypeTableRecord + 2 +DASHDOT2 + 70 +0 + 3 +Dash dot (.5x) _._._._._._._._._._._._._._._. + 72 +65 + 73 +4 + 40 +12.6999999999999993 + 49 +6.3499999999999996 + 74 +0 + 49 +-3.1749999999999998 + 74 +0 + 49 +0.0 + 74 +0 + 49 +-3.1749999999999998 + 74 +0 + 0 +LTYPE + 5 +39 +100 +AcDbSymbolTableRecord +100 +AcDbLinetypeTableRecord + 2 +DASHDOTX2 + 70 +0 + 3 +Dash dot (2x) ____ . ____ . ____ . ___ + 72 +65 + 73 +4 + 40 +50.7999999999999972 + 49 +25.3999999999999986 + 74 +0 + 49 +-12.6999999999999993 + 74 +0 + 49 +0.0 + 74 +0 + 49 +-12.6999999999999993 + 74 +0 + 0 +LTYPE + 5 +3A +100 +AcDbSymbolTableRecord +100 +AcDbLinetypeTableRecord + 2 +DIVIDE + 70 +0 + 3 +Divide ____ . . ____ . . ____ . . ____ . . ____ + 72 +65 + 73 +6 + 40 +31.75 + 49 +12.6999999999999993 + 74 +0 + 49 +-6.3499999999999996 + 74 +0 + 49 +0.0 + 74 +0 + 49 +-6.3499999999999996 + 74 +0 + 49 +0.0 + 74 +0 + 49 +-6.3499999999999996 + 74 +0 + 0 +LTYPE + 5 +3B +100 +AcDbSymbolTableRecord +100 +AcDbLinetypeTableRecord + 2 +DIVIDE2 + 70 +0 + 3 +Divide (.5x) __..__..__..__..__..__..__..__.._ + 72 +65 + 73 +6 + 40 +15.875 + 49 +6.3499999999999996 + 74 +0 + 49 +-3.1749999999999998 + 74 +0 + 49 +0.0 + 74 +0 + 49 +-3.1749999999999998 + 74 +0 + 49 +0.0 + 74 +0 + 49 +-3.1749999999999998 + 74 +0 + 0 +LTYPE + 5 +3C +100 +AcDbSymbolTableRecord +100 +AcDbLinetypeTableRecord + 2 +DIVIDEX2 + 70 +0 + 3 +Divide (2x) ________ . . ________ . . _ + 72 +65 + 73 +6 + 40 +63.5 + 49 +25.3999999999999986 + 74 +0 + 49 +-12.6999999999999993 + 74 +0 + 49 +0.0 + 74 +0 + 49 +-12.6999999999999993 + 74 +0 + 49 +0.0 + 74 +0 + 49 +-12.6999999999999993 + 74 +0 + 0 +LTYPE + 5 +3D +100 +AcDbSymbolTableRecord +100 +AcDbLinetypeTableRecord + 2 +CENTER + 70 +0 + 3 +Center ____ _ ____ _ ____ _ ____ _ ____ _ ____ + 72 +65 + 73 +4 + 40 +50.7999999999999972 + 49 +31.75 + 74 +0 + 49 +-6.3499999999999996 + 74 +0 + 49 +6.3499999999999996 + 74 +0 + 49 +-6.3499999999999996 + 74 +0 + 0 +LTYPE + 5 +3E +100 +AcDbSymbolTableRecord +100 +AcDbLinetypeTableRecord + 2 +CENTER2 + 70 +0 + 3 +Center (.5x) ___ _ ___ _ ___ _ ___ _ ___ _ ___ + 72 +65 + 73 +4 + 40 +28.5749999999999993 + 49 +19.0500000000000007 + 74 +0 + 49 +-3.1749999999999998 + 74 +0 + 49 +3.1749999999999998 + 74 +0 + 49 +-3.1749999999999998 + 74 +0 + 0 +LTYPE + 5 +3F +100 +AcDbSymbolTableRecord +100 +AcDbLinetypeTableRecord + 2 +CENTERX2 + 70 +0 + 3 +Center (2x) ________ __ ________ __ _____ + 72 +65 + 73 +4 + 40 +101.5999999999999943 + 49 +63.5 + 74 +0 + 49 +-12.6999999999999993 + 74 +0 + 49 +12.6999999999999993 + 74 +0 + 49 +-12.6999999999999993 + 74 +0 + 0 +LTYPE + 5 +40 +100 +AcDbSymbolTableRecord +100 +AcDbLinetypeTableRecord + 2 +BORDER + 70 +0 + 3 +Border __ __ . __ __ . __ __ . __ __ . __ __ . + 72 +65 + 73 +6 + 40 +44.4500000000000028 + 49 +12.6999999999999993 + 74 +0 + 49 +-6.3499999999999996 + 74 +0 + 49 +12.6999999999999993 + 74 +0 + 49 +-6.3499999999999996 + 74 +0 + 49 +0.0 + 74 +0 + 49 +-6.3499999999999996 + 74 +0 + 0 +LTYPE + 5 +41 +100 +AcDbSymbolTableRecord +100 +AcDbLinetypeTableRecord + 2 +BORDER2 + 70 +0 + 3 +Border (.5x) __.__.__.__.__.__.__.__.__.__.__. + 72 +65 + 73 +6 + 40 +22.2250000000000014 + 49 +6.3499999999999996 + 74 +0 + 49 +-3.1749999999999998 + 74 +0 + 49 +6.3499999999999996 + 74 +0 + 49 +-3.1749999999999998 + 74 +0 + 49 +0.0 + 74 +0 + 49 +-3.1749999999999998 + 74 +0 + 0 +LTYPE + 5 +42 +100 +AcDbSymbolTableRecord +100 +AcDbLinetypeTableRecord + 2 +BORDERX2 + 70 +0 + 3 +Border (2x) ____ ____ . ____ ____ . ___ + 72 +65 + 73 +6 + 40 +88.9000000000000057 + 49 +25.3999999999999986 + 74 +0 + 49 +-12.6999999999999993 + 74 +0 + 49 +25.3999999999999986 + 74 +0 + 49 +-12.6999999999999993 + 74 +0 + 49 +0.0 + 74 +0 + 49 +-12.6999999999999993 + 74 +0 + 0 +ENDTAB + 0 +TABLE + 2 +LAYER + 5 +2 +100 +AcDbSymbolTable + 70 +2 + 0 +LAYER + 5 +10 +100 +AcDbSymbolTableRecord +100 +AcDbLayerTableRecord + 2 +0 + 70 +0 + 62 +7 + 6 +CONTINUOUS +290 +1 +370 +-3 +390 +F + 0 +LAYER + 5 +43 +100 +AcDbSymbolTableRecord +100 +AcDbLayerTableRecord + 2 +Defpoints + 70 +0 + 62 +7 + 6 +CONTINUOUS +290 +0 +370 +-3 +390 +F + 0 +ENDTAB + 0 +TABLE + 2 +STYLE + 5 +3 +100 +AcDbSymbolTable + 70 +1 + 0 +STYLE + 5 +11 +100 +AcDbSymbolTableRecord +100 +AcDbTextStyleTableRecord + 2 +Standard + 70 +0 + 40 +0.0 + 41 +0.75 + 50 +0.0 + 71 +0 + 42 +2.5 + 3 +txt + 4 + + 0 +ENDTAB + 0 +TABLE + 2 +VIEW + 5 +6 +100 +AcDbSymbolTable + 70 +0 + 0 +ENDTAB + 0 +TABLE + 2 +UCS + 5 +7 +100 +AcDbSymbolTable + 70 +0 + 0 +ENDTAB + 0 +TABLE + 2 +APPID + 5 +9 +100 +AcDbSymbolTable + 70 +1 + 0 +APPID + 5 +12 +100 +AcDbSymbolTableRecord +100 +AcDbRegAppTableRecord + 2 +ACAD + 70 +0 + 0 +ENDTAB + 0 +TABLE + 2 +DIMSTYLE + 5 +A +100 +AcDbSymbolTable + 70 +1 +100 +AcDbDimStyleTable + 71 +0 + 0 +DIMSTYLE +105 +27 +100 +AcDbSymbolTableRecord +100 +AcDbDimStyleTableRecord + 2 +Standard + 41 +0.18 + 42 +0.0625 + 43 +3.75 + 44 +0.18 + 70 +0 + 73 +0 + 74 +0 + 77 +1 + 78 +8 +140 +0.18 +141 +2.5 +143 +0.03937007874016 +147 +0.09 +171 +3 +172 +1 +271 +2 +272 +2 +274 +3 +278 +44 +283 +0 +284 +8 +340 +11 + 0 +ENDTAB + 0 +TABLE + 2 +BLOCK_RECORD + 5 +1 +100 +AcDbSymbolTable + 70 +1 + 0 +BLOCK_RECORD + 5 +1F +100 +AcDbSymbolTableRecord +100 +AcDbBlockTableRecord + 2 +*Model_Space +340 +22 + 0 +BLOCK_RECORD + 5 +1B +100 +AcDbSymbolTableRecord +100 +AcDbBlockTableRecord + 2 +*Paper_Space +340 +1E + 0 +BLOCK_RECORD + 5 +23 +100 +AcDbSymbolTableRecord +100 +AcDbBlockTableRecord + 2 +*Paper_Space0 +340 +26 + 0 +BLOCK_RECORD + 5 +44 +100 +AcDbSymbolTableRecord +100 +AcDbBlockTableRecord + 2 +*D7 +340 +0 + 0 +ENDTAB + 0 +ENDSEC + 0 +SECTION + 2 +BLOCKS + 0 +BLOCK + 5 +20 +100 +AcDbEntity + 8 +0 +100 +AcDbBlockBegin + 2 +*Model_Space + 70 +0 + 10 +0.0 + 20 +0.0 + 30 +0.0 + 3 +*Model_Space + 1 + + 0 +ENDBLK + 5 +21 +100 +AcDbEntity + 8 +0 +100 +AcDbBlockEnd + 0 +BLOCK + 5 +1C +100 +AcDbEntity + 67 +1 + 8 +0 +100 +AcDbBlockBegin + 2 +*Paper_Space + 70 +0 + 10 +0.0 + 20 +0.0 + 30 +0.0 + 3 +*Paper_Space + 1 + + 0 +ENDBLK + 5 +1D +100 +AcDbEntity + 67 +1 + 8 +0 +100 +AcDbBlockEnd + 0 +BLOCK + 5 +24 +100 +AcDbEntity + 8 +0 +100 +AcDbBlockBegin + 2 +*Paper_Space0 + 70 +0 + 10 +0.0 + 20 +0.0 + 30 +0.0 + 3 +*Paper_Space0 + 1 + + 0 +ENDBLK + 5 +25 +100 +AcDbEntity + 8 +0 +100 +AcDbBlockEnd + 0 +BLOCK + 5 +45 +100 +AcDbEntity + 8 +0 +100 +AcDbBlockBegin + 2 +*D7 + 70 +0 + 10 +0.0 + 20 +0.0 + 30 +0.0 + 3 +*D7 + 1 + + 0 +LINE + 5 +46 +100 +AcDbEntity +100 +AcDbLine + 8 +0 + 62 +0 +370 +-2 + 6 +ByLayer + 10 +5.2357532805000586 + 20 +3.1479784708062071 + 30 +0.0 + 11 +4.1041175095418074 + 21 +3.1479784708062071 + 31 +0.0 + 0 +LINE + 5 +47 +100 +AcDbEntity +100 +AcDbLine + 8 +0 + 62 +0 +370 +-2 + 6 +ByLayer + 10 +5.2420133778516531 + 20 +2.3748564478843299 + 30 +0.0 + 11 +4.1041175095418074 + 21 +2.3748564478843299 + 31 +0.0 + 0 +LINE + 5 +48 +100 +AcDbEntity +100 +AcDbLine + 8 +0 + 62 +0 +370 +-2 + 6 +ByLayer + 10 +4.2841175095418071 + 20 +2.1948564478843302 + 30 +0.0 + 11 +4.1041175095418074 + 21 +2.1948564478843302 + 31 +0.0 + 0 +LINE + 5 +49 +100 +AcDbEntity +100 +AcDbLine + 8 +0 + 62 +0 +370 +-2 + 6 +ByLayer + 10 +4.2841175095418071 + 20 +2.9679784708062069 + 30 +0.0 + 11 +4.2841175095418071 + 21 +2.554856447884331 + 31 +0.0 + 0 +LINE + 5 +4A +100 +AcDbEntity +100 +AcDbLine + 8 +0 + 62 +0 +370 +-2 + 6 +ByLayer + 10 +4.2841175095418071 + 20 +2.3748564478843299 + 30 +0.0 + 11 +4.2841175095418071 + 21 +2.1948564478843302 + 31 +0.0 + 0 +MTEXT + 5 +4B +100 +AcDbEntity +100 +AcDbMText + 8 +0 + 62 +0 +370 +-1 + 6 +ByLayer + 10 +3.6091175095418069 + 20 +2.1948564478843302 + 30 +0.0 + 40 +0.18 + 41 +0.0 + 71 +5 + 72 +0 + 1 +0.7731 + 7 +Standard + 50 +0.0 + 73 +0 + 44 +1.0 + 0 +POINT + 5 +4C +100 +AcDbEntity +100 +AcDbPoint + 8 +Defpoints + 62 +0 +370 +-1 + 6 +ByLayer + 10 +5.2982532805000586 + 20 +3.1479784708062071 + 30 +0.0 + 0 +POINT + 5 +4D +100 +AcDbEntity +100 +AcDbPoint + 8 +Defpoints + 62 +0 +370 +-1 + 6 +ByLayer + 10 +5.3045133778516531 + 20 +2.3748564478843299 + 30 +0.0 + 0 +POINT + 5 +4E +100 +AcDbEntity +100 +AcDbPoint + 8 +Defpoints + 62 +0 +370 +-1 + 6 +ByLayer + 10 +4.2841175095418071 + 20 +2.3748564478843299 + 30 +0.0 + 0 +ENDBLK + 5 +4F +100 +AcDbEntity + 8 +0 +100 +AcDbBlockEnd + 0 +ENDSEC + 0 +SECTION + 2 +ENTITIES + 0 +ARC + 5 +50 +100 +AcDbEntity + 8 +0 + 62 +256 +370 +-1 + 6 +ByLayer +100 +AcDbCircle + 10 +9.7786027799838386 + 20 +2.8066101387679572 + 30 +0.0 + 40 +0.7081048159606451 +100 +AcDbArc + 50 +283.0547163952807068 + 51 +7.2269347933078638 + 0 +ARC + 5 +51 +100 +AcDbEntity + 8 +0 + 62 +256 +370 +-1 + 6 +ByLayer +100 +AcDbCircle + 10 +9.4833451400661204 + 20 +3.758213896176716 + 30 +0.0 + 40 +1.703358563335003 +100 +AcDbArc + 50 +250.6064390035708982 + 51 +285.5000911390446277 + 0 +ARC + 5 +52 +100 +AcDbEntity + 8 +0 + 62 +256 +370 +-1 + 6 +ByLayer +100 +AcDbCircle + 10 +7.3767422061535326 + 20 +-3.5439036551419538 + 30 +0.0 + 40 +5.9001974570614983 +100 +AcDbArc + 50 +74.86010633747334 + 51 +90.911893296019187 + 0 +ARC + 5 +53 +100 +AcDbEntity + 8 +0 + 62 +256 +370 +-1 + 6 +ByLayer +100 +AcDbCircle + 10 +7.2049505585959084 + 20 +0.3116232988190874 + 30 +0.0 + 40 +2.045406856460394 +100 +AcDbArc + 50 +87.8176017595463776 + 51 +110.012354486499504 + 0 +ARC + 5 +54 +100 +AcDbEntity + 8 +0 + 62 +256 +370 +-1 + 6 +ByLayer +100 +AcDbCircle + 10 +6.2101952908779143 + 20 +3.131817378864072 + 30 +0.0 + 40 +0.9454188473063343 +100 +AcDbArc + 50 +232.2920047620085313 + 51 +288.1670321006499762 + 0 +LINE + 5 +55 +100 +AcDbEntity +100 +AcDbLine + 8 +0 + 62 +256 +370 +-1 + 6 +ByLayer + 10 +5.6319417234914653 + 20 +2.3838604224508808 + 30 +0.0 + 11 +5.4415368352193374 + 21 +2.278896184438008 + 31 +0.0 + 0 +ARC + 5 +56 +100 +AcDbEntity + 8 +0 + 62 +256 +370 +-1 + 6 +ByLayer +100 +AcDbCircle + 10 +2.1179899999999998 + 20 +5.5786100000000003 + 30 +0.0 + 40 +3.1128900000000002 +100 +AcDbArc + 50 +231.742999999999995 + 51 +269.5219999999999914 + 0 +LINE + 5 +57 +100 +AcDbEntity +100 +AcDbLine + 8 +0 + 62 +256 +370 +-1 + 6 +ByLayer + 10 +0.190519 + 20 +3.1342500000000002 + 30 +0.0 + 11 +10.1831999999999994 + 21 +3.1613899999999999 + 31 +0.0 + 0 +ARC + 5 +58 +100 +AcDbEntity + 8 +0 + 62 +256 +370 +-1 + 6 +ByLayer +100 +AcDbCircle + 10 +10.2045999999999992 + 20 +2.8855499999999998 + 30 +0.0 + 40 +0.276662 +100 +AcDbArc + 50 +2.0995900000000001 + 51 +94.4384000000000015 + 0 +LINE + 5 +59 +100 +AcDbEntity +100 +AcDbLine + 8 +0 + 62 +256 +370 +-1 + 6 +ByLayer + 10 +5.4415399999999998 + 20 +2.2789000000000001 + 30 +0.0 + 11 +5.3537600000000003 + 21 +2.3710399999999998 + 31 +0.0 + 0 +LINE + 5 +5A +100 +AcDbEntity +100 +AcDbLine + 8 +0 + 62 +256 +370 +-1 + 6 +ByLayer + 10 +2.0920200000000002 + 20 +2.46583 + 30 +0.0 + 11 +5.3537600000000003 + 21 +2.3710399999999998 + 31 +0.0 + 0 +ENDSEC + 0 +SECTION + 2 +OBJECTS + 0 +DICTIONARY + 5 +C +100 +AcDbDictionary +280 +0 +281 +1 + 3 +ACAD_GROUP +350 +D + 3 +ACAD_LAYOUT +350 +1A + 3 +ACAD_MLINESTYLE +350 +17 + 3 +ACAD_PLOTSETTINGS +350 +19 + 3 +ACAD_PLOTSTYLENAME +350 +E + 3 +AcDbVariableDictionary +350 +5B + 0 +DICTIONARY + 5 +D +100 +AcDbDictionary +280 +0 +281 +1 + 0 +ACDBDICTIONARYWDFLT + 5 +E +100 +AcDbDictionary +281 +1 + 3 +Normal +350 +F +100 +AcDbDictionaryWithDefault +340 +F + 0 +ACDBPLACEHOLDER + 5 +F + 0 +DICTIONARY + 5 +17 +100 +AcDbDictionary +280 +0 +281 +1 + 3 +Standard +350 +18 + 0 +MLINESTYLE + 5 +18 +100 +AcDbMlineStyle + 2 +STANDARD + 70 +0 + 3 + + 62 +256 + 51 +90.0 + 52 +90.0 + 71 +2 + 49 +0.5 + 62 +256 + 6 +BYLAYER + 49 +-0.5 + 62 +256 + 6 +BYLAYER + 0 +DICTIONARY + 5 +19 +100 +AcDbDictionary +280 +0 +281 +1 + 0 +DICTIONARY + 5 +1A +100 +AcDbDictionary +281 +1 + 3 +Layout1 +350 +1E + 3 +Layout2 +350 +26 + 3 +Model +350 +22 + 0 +LAYOUT + 5 +1E +100 +AcDbPlotSettings + 1 + + 2 +C:\Program Files\AutoCAD 2002\plotters\DWF ePlot (optimized for plotting).pc3 + 4 + + 6 + + 40 +0.0 + 41 +0.0 + 42 +0.0 + 43 +0.0 + 44 +0.0 + 45 +0.0 + 46 +0.0 + 47 +0.0 + 48 +0.0 + 49 +0.0 +140 +0.0 +141 +0.0 +142 +1.0 +143 +1.0 + 70 +688 + 72 +0 + 73 +0 + 74 +5 + 7 + + 75 +16 +147 +1.0 +148 +0.0 +149 +0.0 +100 +AcDbLayout + 1 +Layout1 + 70 +1 + 71 +1 + 10 +0.0 + 20 +0.0 + 11 +420.0 + 21 +297.0 + 12 +0.0 + 22 +0.0 + 32 +0.0 + 14 +100000000000000000000.0 + 24 +100000000000000000000.0 + 34 +100000000000000000000.0 + 15 +-100000000000000000000.0 + 25 +-100000000000000000000.0 + 35 +-100000000000000000000.0 +146 +0.0 + 13 +0.0 + 23 +0.0 + 33 +0.0 + 16 +1.0 + 26 +0.0 + 36 +0.0 + 17 +0.0 + 27 +1.0 + 37 +0.0 + 76 +0 +330 +1B + 0 +LAYOUT + 5 +22 +100 +AcDbPlotSettings + 1 + + 2 +C:\Program Files\AutoCAD 2002\plotters\DWF ePlot (optimized for plotting).pc3 + 4 + + 6 + + 40 +0.0 + 41 +0.0 + 42 +0.0 + 43 +0.0 + 44 +0.0 + 45 +0.0 + 46 +0.0 + 47 +0.0 + 48 +0.0 + 49 +0.0 +140 +0.0 +141 +0.0 +142 +1.0 +143 +1.0 + 70 +1712 + 72 +0 + 73 +0 + 74 +0 + 7 + + 75 +0 +147 +1.0 +148 +0.0 +149 +0.0 +100 +AcDbLayout + 1 +Model + 70 +1 + 71 +0 + 10 +0.0 + 20 +0.0 + 11 +12.0 + 21 +9.0 + 12 +0.0 + 22 +0.0 + 32 +0.0 + 14 +0.0 + 24 +0.0 + 34 +0.0 + 15 +0.0 + 25 +0.0 + 35 +0.0 +146 +0.0 + 13 +0.0 + 23 +0.0 + 33 +0.0 + 16 +1.0 + 26 +0.0 + 36 +0.0 + 17 +0.0 + 27 +1.0 + 37 +0.0 + 76 +0 +330 +1F + 0 +LAYOUT + 5 +26 +100 +AcDbPlotSettings + 1 + + 2 +C:\Program Files\AutoCAD 2002\plotters\DWF ePlot (optimized for plotting).pc3 + 4 + + 6 + + 40 +0.0 + 41 +0.0 + 42 +0.0 + 43 +0.0 + 44 +0.0 + 45 +0.0 + 46 +0.0 + 47 +0.0 + 48 +0.0 + 49 +0.0 +140 +0.0 +141 +0.0 +142 +1.0 +143 +1.0 + 70 +688 + 72 +0 + 73 +0 + 74 +5 + 7 + + 75 +16 +147 +1.0 +148 +0.0 +149 +0.0 +100 +AcDbLayout + 1 +Layout2 + 70 +1 + 71 +2 + 10 +0.0 + 20 +0.0 + 11 +12.0 + 21 +9.0 + 12 +0.0 + 22 +0.0 + 32 +0.0 + 14 +0.0 + 24 +0.0 + 34 +0.0 + 15 +0.0 + 25 +0.0 + 35 +0.0 +146 +0.0 + 13 +0.0 + 23 +0.0 + 33 +0.0 + 16 +1.0 + 26 +0.0 + 36 +0.0 + 17 +0.0 + 27 +1.0 + 37 +0.0 + 76 +0 +330 +23 + 0 +DICTIONARY + 5 +5B +100 +AcDbDictionary +281 +1 + 3 +DIMASSOC +350 +5D + 3 +HIDETEXT +350 +5C + 0 +DICTIONARYVAR + 5 +5C +100 +DictionaryVariables +280 +0 + 1 +2 + 0 +DICTIONARYVAR + 5 +5D +100 +DictionaryVariables +280 +0 + 1 +1 + 0 +ENDSEC + 0 +EOF diff --git a/dxf2gcode.go b/dxf2gcode.go index 27dd962..a6da56f 100644 --- a/dxf2gcode.go +++ b/dxf2gcode.go @@ -3,7 +3,7 @@ package main // DXF to G code converter import ( "fmt" - "github.com/jethornton/dxfutil" + "github.com/jethornton/dxf2gcode/dxfutil" "os" "os/user" ) @@ -31,20 +31,24 @@ func main() { dxfutil.Readini(iniMap, cwd) lines := dxfutil.GetLines(inFile) entities := dxfutil.GetEntities(lines) + for _, e := range entities { + fmt.Printf("%2d %4s G10 %8s G11 %8s G20 %8s G21 %8s G50 %9s G51 %9s\n", + e.N, e.G0, e.G10, e.G11, e.G20, e.G21, e.G50, e.G51) + } entities = dxfutil.GetEndPoints(entities) for _, e := range entities { - fmt.Printf("%2d %2s %4s Xs %f Ys %f Xe %f Ye %f\n", - e.Index, e.G, e.G0, e.Xs, e.Ys, e.Xe, e.Ye) + fmt.Printf("%2d %4s Xs %9f Xe %9f Ys %9f Ye %9f\n", + e.N, e.G0, e.Xs, e.Xe, e.Ys, e.Ye) } entities = dxfutil.GetIndex(entities) -/* + for _, e := range entities { - fmt.Printf("%2d %2s %4s Xs %f Ys %f Xe %f Ye %f\n", - e.Index, e.G, e.G0, e.Xs, e.Ys, e.Xe, e.Ye) + fmt.Printf("%2d %2d %4s Xs %9f Xe %9f Ys %9f Ye %9f\n", + e.N, e.Index, e.G0, e.Xs, e.Xe, e.Ys, e.Ye) } -*/ + dxfutil.GenGcode(entities, iniMap["SAVEAS"]) } diff --git a/dxfutil b/dxfutil new file mode 160000 index 0000000..c12fa18 --- /dev/null +++ b/dxfutil @@ -0,0 +1 @@ +Subproject commit c12fa185d21e2f467d909fb42781d370f9b49e79