Zobrazit plnou verzi příspěvku: Spline do DXF
Zdravím v konferenci,
mám v Excelu body představující body spline.
Snažím se vytvořit DXF s takovou spline.
Ač mám po ruce rukověť DXF, nemohu najít chybu.
Dokázal by mi někdo odpovědět, proč Ac odmítá DXF načít s chybovou hláškou "Neplatný kód skupiny 70 na řádku 20 pro objekt"?
Tím příkladem má být nejjednosdušší spline se dvěma body (tj. vlastně čára, jelikož nedefinuji koncové tangenty).
Pokusné DXF je níže a v příloze.
Předem díky.
Lukáš
--8<--
0
SECTION
2
HEADER
9
$DWGCODEPAGE
3
ANSI_1250
0
ENDSEC
0
SECTION
2
ENTITIES
0
SPLINE
8
0
70
8
71
2
73
2
10
1.50000000
20
0.00000000
10
-28.50000000
20
0.00000000
0
ENDSEC
0
EOF
Vladimír Michl
30.03.2010, 16:56
Je cílem opravdu DXF nebo to prostě potřebujete vygenerovat v AutoCADu? Pak jsou i jednodušší cesty (např. Xls2Curve, script, ad.).
... Cílem je skutečně DXF; skript není dostatečně univerzální.(V DXF mají být finálně i texty popisující nějaké body na spline; např. skript by zde potřeboval "vědět", jestli aktuální styl písma ve výkresu má nenulovou výšku.)
Vladimír Michl
30.03.2010, 18:43
Podle mých zkušeností bývá lepší si ten DXF nechat vytvořit až AutoCADem. Nakonec i ten skript ale může stačit - aktuální styl písma znát nepotřebuje, může si vytvořit svůj nový.
... Není žádoucí, aby skript vytvářel nový styl písma; i kdyby mohl, použil by font, výšku, faktor šířky apod. "podle svého", což nutí živatele styl zase přenastavit. Nehledě na to, že při opakovaném spuštění by se skript pokoušel nadefinovat již existující styl.Postup nechat Ac vygenerovat DXF pro výkres s jednou entitou - spline - také zkouším.Zatímco v případě entity = linky v pohodě funguje DXF maximálně ořezat - vyřadit úvodní sekce, slovníky apod., v případě SPLINE tento postup nefunguje.Co tedy v DXF se spline NEMUSÍ být, aby bylo DXF nahratelné do Ac? Protože jinak je tam spousta "balastu", u kterého naznám souvislosti, a vzít jej "jen proto, že mi jej Ac při jednom (náhodném) exportu vytvořil", mi nepřijde moc košér.Připojuji obsah DXF s jedinou spline (všechno ostatní vyčištěno) vytvořeného Ac. Export pro Ac 14, jelikož ten už "umí" spline (neaproximuje polylinkou) a zároveň "balastí" nejméně.Zajímalo by mě, co všechno z něj lze "beztrestně" vyházet.--8<-- 0SECTION 2HEADER 9$ACADVER 1AC1014 9$ACADMAINTVER 70 9 9$DWGCODEPAGE 3ANSI_1250 9$INSBASE 100.0 200.0 300.0 9$EXTMIN 100.0 200.0 300.0 9$EXTMAX 1010.0 201.767766952966368 300.0 9$LIMMIN 100.0 200.0 9$LIMMAX 10420.0 20297.0 9$ORTHOMODE 70 0 9$REGENMODE 70 1 9$FILLMODE 70 1 9$QTEXTMODE 70 0 9$MIRRTEXT 70 0 9$DRAGMODE 70 2 9$LTSCALE 400.001 9$OSMODE 70 109 9$ATTMODE 70 1 9$TEXTSIZE 400.05 9$TRACEWID 401.0 9$TEXTSTYLE 735 9$CLAYER 80 9$CELTYPE 6BYLAYER 9$CECOLOR 62 256 9$CELTSCALE 401.0 9$DELOBJ 70 1 9$DISPSILH 70 0 9$DIMSCALE 400.001 9$DIMASZ 402.474873099999999 9$DIMEXO 400.0 9$DIMDLI 400.0 9$DIMRND 401.0 9$DIMDLE 400.0 9$DIMEXE 401.75 9$DIMTP 400.0 9$DIMTM 400.0 9$DIMTXT 403.5 9$DIMCEN 401.0 9$DIMTSZ 400.0 9$DIMTOL 70 0 9$DIMLIM 70 0 9$DIMTIH 70 0 9$DIMTOH 70 0 9$DIMSE1 70 0 9$DIMSE2 70 0 9$DIMTAD 70 0 9$DIMZIN 70 1 9$DIMBLK 1OBLIQUE 9$DIMASO 70 1 9$DIMSHO 70 1 9$DIMPOST 1 9$DIMAPOST 1 9$DIMALT 70 0 9$DIMALTD 70 0 9$DIMALTF 401.0 9$DIMLFAC 401000.0 9$DIMTOFL 70 1 9$DIMTVP 400.8333333333333332 9$DIMTIX 70 1 9$DIMSOXD 70 0 9$DIMSAH 70 0 9$DIMBLK1 1 9$DIMBLK2 1 9$DIMSTYLE 2L 9$DIMCLRD 70 0 9$DIMCLRE 70 0 9$DIMCLRT 70 0 9$DIMTFAC 401.0 9$DIMGAP 400.5 9$DIMJUST 70 0 9$DIMSD1 70 0 9$DIMSD2 70 0 9$DIMTOLJ 70 1 9$DIMTZIN 70 0 9$DIMALTZ 70 0 9$DIMALTTZ 70 0 9$DIMFIT 70 3 9$DIMUPT 70 0 9$DIMUNIT 70 2 9$DIMDEC 70 4 9$DIMTDEC 70 4 9$DIMALTU 70 2 9$DIMALTTD 70 2 9$DIMTXSTY 7STANDARD 9$DIMAUNIT 70 0 9$LUNITS 70 2 9$LUPREC 70 4 9$SKETCHINC 401.0 9$FILLETRAD 400.0 9$AUNITS 70 2 9$AUPREC 70 4 9$MENU 1. 9$ELEVATION 400.0 9$PELEVATION 400.0 9$THICKNESS 400.0 9$LIMCHECK 70 0 9$BLIPMODE 70 0 9$CHAMFERA 400.015 9$CHAMFERB 400.015 9$CHAMFERC 400.0 9$CHAMFERD 400.0 9$SKPOLY 70 0 9$TDCREATE 402455287.349712453 9$TDUPDATE 402455287.368809491 9$TDINDWG 400.0068896412 9$TDUSRTIMER 400.0068883681 9$USRTIMER 70 1 9$ANGBASE 500.0 9$ANGDIR 70 0 9$PDMODE 70 0 9$PDSIZE 400.0 9$PLINEWID 400.0 9$COORDS 70 2 9$SPLFRAME 70 0 9$SPLINETYPE 70 6 9$SPLINESEGS 70 8 9$ATTDIA 70 0 9$ATTREQ 70 1 9$HANDLING 70 22529 9$HANDSEED 512B5 9$SURFTAB1 70 6 9$SURFTAB2 70 6 9$SURFTYPE 70 6 9$SURFU 70 6 9$SURFV 70 6 9$UCSNAME 2 9$UCSORG 100.0 200.0 300.0 9$UCSXDIR 101.0 200.0 300.0 9$UCSYDIR 100.0 201.0 300.0 9$PUCSNAME 2 9$PUCSORG 100.0 200.0 300.0 9$PUCSXDIR 101.0 200.0 300.0 9$PUCSYDIR 100.0 201.0 300.0 9$USERI1 70 0 9$USERI2 70 0 9$USERI3 70 0 9$USERI4 70 0 9$USERI5 70 0 9$USERR1 400.0 9$USERR2 400.0 9$USERR3 400.0 9$USERR4 400.0 9$USERR5 400.0 9$WORLDVIEW 70 1 9$SHADEDGE 70 3 9$SHADEDIF 70 70 9$TILEMODE 70 1 9$MAXACTVP 70 64 9$PINSBASE 100.0 200.0 300.0 9$PLIMCHECK 70 0 9$PEXTMIN 10-840.5000000000001 20-0.5 300.0 9$PEXTMAX 100.5 20594.5 300.0 9$PLIMMIN 10-835.9779663085937 20-5.0 9$PLIMMAX 103.999999999999885 20589.0213012695312 9$UNITMODE 70 0 9$VISRETAIN 70 1 9$PLINEGEN 70 0 9$PSLTSCALE 70 1 9$TREEDEPTH 70 3020 9$PICKSTYLE 70 1 9$CMLSTYLE 2STANDARD 9$CMLJUST 70 0 9$CMLSCALE 401.0 9$PROXYGRAPHICS 70 1 9$MEASUREMENT 70 0 0ENDSEC 0SECTION 2CLASSES 0CLASS 1ACDBDICTIONARYWDFLT 2AcDbDictionaryWithDefault 3AutoCAD 2000 90 0280 0281 0 0CLASS 1ACDBPLACEHOLDER 2AcDbPlaceHolder 3AutoCAD 2000 90 0280 0281 0 0CLASS 1LAYOUT 2AcDbLayout 3AutoCAD 2000 90 0280 0281 0 0CLASS 1DICTIONARYVAR 2AcDbDictionaryVar 3AutoCAD 2000 90 0280 0281 0 0CLASS 1LONG_TRANSACTION 2AcDbLongTransaction 3AutoCAD 2000 90 0280 0281 0 0CLASS 1LWPOLYLINE 2AcDbPolyline 3AutoCAD 2000 90 0280 0281 1 0CLASS 1HATCH 2AcDbHatch 3AutoCAD 2000 90 0280 0281 1 0CLASS 1XRECORD 2AcDbXrecord 3AutoCAD 2000 90 0280 0281 0 0ENDSEC 0SECTION 2TABLES 0TABLE 2VPORT 511D53300100AcDbSymbolTable 70 3 0VPORT 5128F33011D5100AcDbSymbolTableRecord100AcDbViewportTableRecord 2*ACTIVE 70 0 100.0 200.0 111.0 211.0 123.991677038808465 220.6063349839741044 130.0 230.0 1410.0 2410.0 1510.0 2510.0 160.0 260.0 361.0 170.0 270.0 370.0 409.841351102290946 411.515042117930204 4250.0 430.0 440.0 500.0 510.0 71 0 72 100 73 1 74 3 75 0 76 0 77 0 78 0 0ENDTAB 0TABLE 2LTYPE 511D23300100AcDbSymbolTable 70 1 0LTYPE 511E033011D2100AcDbSymbolTableRecord100AcDbLinetypeTableRecord 2BYBLOCK 70 0 3 72 65 73 0 400.0 0LTYPE 511E133011D2100AcDbSymbolTableRecord100AcDbLinetypeTableRecord 2BYLAYER 70 0 3 72 65 73 0 400.0 0LTYPE 511E233011D2100AcDbSymbolTableRecord100AcDbLinetypeTableRecord 2CONTINUOUS 70 0 3Solid line 72 65 73 0 400.0 0ENDTAB 0TABLE 2LAYER 511CF3300100AcDbSymbolTable 70 1 0LAYER 511DD33011CF100AcDbSymbolTableRecord100AcDbLayerTableRecord 20 70 0 62 7 6CONTINUOUS 0ENDTAB 0TABLE 2STYLE 511D03300100AcDbSymbolTable 70 2 0STYLE 511DE33011D0100AcDbSymbolTableRecord100AcDbTextStyleTableRecord 2STANDARD 70 0 400.0 410.75 500.0 71 0 420.0035 3romand.shx 4reekc.shx 0STYLE 511EF33011D0100AcDbSymbolTableRecord100AcDbTextStyleTableRecord 235 70 0 400.0035 410.75 500.0 71 0 420.05 3romand.shx 4reekc.shx 0ENDTAB 0TABLE 2VIEW 511D33300100AcDbSymbolTable 70 0 0ENDTAB 0TABLE 2UCS 511D43300100AcDbSymbolTable 70 0 0ENDTAB 0TABLE 2APPID 511D63300100AcDbSymbolTable 70 4 0APPID 511DF33011D6100AcDbSymbolTableRecord100AcDbRegAppTableRecord 2ACAD 70 0 0APPID 511F133011D6100AcDbSymbolTableRecord100AcDbRegAppTableRecord 2DCO15 70 0 0APPID 511F233011D6100AcDbSymbolTableRecord100AcDbRegAppTableRecord 2ADE 70 0 0APPID 511F333011D6100AcDbSymbolTableRecord100AcDbRegAppTableRecord 2LPR 70 0 0ENDTAB 0TABLE 2DIMSTYLE 511D73300100AcDbSymbolTable 70 1 0DIMSTYLE10511F433011D7100AcDbSymbolTableRecord100AcDbDimStyleTableRecord 2L 70 0 3 4 5 6 7 400.001 412.474873099999999 420.0 430.0 441.75 451.0 460.0 470.0 480.01403.51411.01420.01431.01441000.01450.83333333333333321461.01470.5 71 0 72 0 73 0 74 0 75 0 76 0 77 0 78 1170 0171 0172 1173 0174 1175 0176 0177 0178 0270 2271 4272 4273 2274 034011EF275 2280 0281 0282 0283 1284 1285 1286 1287 5288 0 0ENDTAB 0TABLE 2BLOCK_RECORD 511CE3300100AcDbSymbolTable 70 3 0BLOCK_RECORD 511EB102{ACAD_XDICTIONARY36012B3102}33011CE100AcDbSymbolTableRecord100AcDbBlockTableRecord 2*MODEL_SPACE 0BLOCK_RECORD 511E7102{ACAD_XDICTIONARY36012B1102}33011CE100AcDbSymbolTableRecord100AcDbBlockTableRecord 2*PAPER_SPACE 0BLOCK_RECORD 511F733011CE100AcDbSymbolTableRecord100AcDbBlockTableRecord 2$MODEL_SPACE 0BLOCK_RECORD 511FA33011CE100AcDbSymbolTableRecord100AcDbBlockTableRecord 2$PAPER_SPACE 0BLOCK_RECORD 511FD33011CE100AcDbSymbolTableRecord100AcDbBlockTableRecord 2_OBLIQUE 0ENDTAB 0ENDSEC 0SECTION 2BLOCKS 0BLOCK 511EC33011EB100AcDbEntity 80100AcDbBlockBegin 2*MODEL_SPACE 70 0 100.0 200.0 300.0 3*MODEL_SPACE 1 0ENDBLK 511ED33011EB100AcDbEntity 80100AcDbBlockEnd 0BLOCK 511E833011E7100AcDbEntity 67 1 80100AcDbBlockBegin 2*PAPER_SPACE 70 0 100.0 200.0 300.0 3*PAPER_SPACE 1 0ENDBLK 511E933011E7100AcDbEntity 67 1 80100AcDbBlockEnd 0BLOCK 511F833011F7100AcDbEntity 80100AcDbBlockBegin 2$MODEL_SPACE 70 0 100.0 200.0 300.0 3$MODEL_SPACE 1 0ENDBLK 511F933011F7100AcDbEntity 80100AcDbBlockEnd 0BLOCK 511FB33011FA100AcDbEntity 80100AcDbBlockBegin 2$PAPER_SPACE 70 0 100.0 200.0 300.0 3$PAPER_SPACE 1 0ENDBLK 511FC33011FA100AcDbEntity 80100AcDbBlockEnd 0BLOCK 511FE33011FD100AcDbEntity 80100AcDbBlockBegin 2_OBLIQUE 70 0 100.0 200.0 300.0 3_OBLIQUE 1 0LINE 511FF33011FD100AcDbEntity 80 6BYBLOCK 62 0100AcDbLine 10-0.5 20-0.5 300.0 110.5 210.5 310.0 0ENDBLK 5120033011FD100AcDbEntity 80100AcDbBlockEnd 0ENDSEC 0SECTION 2ENTITIES 0SPLINE 5128733011EB100AcDbEntity 80100AcDbSpline2100.02200.02301.0 70 8 71 3 72 8 73 4 74 2 420.0000000001 430.0000000001 440.0000000001 120.7071067811865476 220.7071067811865476 320.0 130.7071067811865476 23-0.7071067811865476 330.0 400.0 400.0 400.0 400.0 4010.0 4010.0 4010.0 4010.0 100.0 200.0 300.0 102.357022603955158 202.357022603955158 300.0 107.642977396044841 202.357022603955158 300.0 1010.0 200.0 300.0 110.0 210.0 310.0 1110.0 210.0 310.0 0ENDSEC 0SECTION 2OBJECTS 0ENDSEC 0EOF