Repository navigation
Open
0 / 10 of 1 issue completedOpen
0 / 10 of 1 issue completed
Copy link
Labels
area:objectsCommon object formats and non-graphical objects (§20.1 to §20.3, §20.4 objects, §28)Common object formats and non-graphical objects (§20.1 to §20.3, §20.4 objects, §28)priority:P2Quality and completenessQuality and completenesstype:specImplements or verifies a numbered section of ODA spec v5.4.1Implements or verifies a numbered section of ODA spec v5.4.1
Description
Spec: none: these classes are absent from v5.4.1, so each field list is derived from bytes (ARCHITECTURE §7d) and held to the same bar as a prescribed one.
Classes and their state on main (2026-10-21)
| Class | State | Code | Note |
|---|---|---|---|
| VISUALSTYLE | closes |
src/objects/acad_visual_style.rs | 456 of 456 corpus records on every release (ARCHITECTURE §7d.1). |
| MATERIAL | partial |
src/objects/acad_material.rs | Strings and bit budget only (#49). |
| PROPERTYSET_DATA | partial |
src/objects/acad_property_set_data.rs | Prefix only; no record in the corpus. |
| PLOTSETTINGS | closes |
src/objects/acad_plot_settings.rs | Read with LAYOUT. |
| ACDBDETAILVIEWSTYLE / ACDBSECTIONVIEWSTYLE | closes |
src/objects/acad_detail_view_style.rs, src/objects/acad_section_view_style.rs | Joint-boundary search, delta 0 (ARCHITECTURE §7d.4). |
| EXTRUDEDSURFACE / REVOLVEDSURFACE / SWEPTSURFACE / LOFTEDSURFACE | decoder |
src/entities/*_surface.rs | |
| MESH (subdivision) | partial |
src/entities/mesh.rs | 2 records error (#71). |
| CAMERA / LIGHT / SUN / HELIX | decoder |
src/entities/camera.rs, light.rs, sun.rs, helix.rs | |
| WIPEOUT / WIPEOUTVARIABLES | decoder |
src/entities/wipeout.rs | WIPEOUTVARIABLES not decoded. |
| PDFUNDERLAY / DWFUNDERLAY / DGNUNDERLAY and their definitions | decoder |
src/entities/underlay.rs | |
| DBCOLOR | missing |
- | Referenced by ENC colours (§2.11). |
| ACAD_EVALUATION_GRAPH, ACDBASSOC* (constraints and associativity) | missing |
- |
Acceptance, for every class above
- The field list is derived and documented in ARCHITECTURE.md, with how it was derived
- It closes on every corpus record of every release band
- Every value equals AutoCAD's DXF export of the same drawing, matched by handle (DXF group 5), with the scorer from the oracle epic
- Its row in docs/spec-coverage.md moves to
complete
Parent: #138
Metadata
Metadata
Assignees
Labels
area:objectsCommon object formats and non-graphical objects (§20.1 to §20.3, §20.4 objects, §28)Common object formats and non-graphical objects (§20.1 to §20.3, §20.4 objects, §28)priority:P2Quality and completenessQuality and completenesstype:specImplements or verifies a numbered section of ODA spec v5.4.1Implements or verifies a numbered section of ODA spec v5.4.1
Activity
feat(objects): decode five small classes from AutoCAD's own DWG and D…
feat(objects): decode ACDBASSOCPERSSUBENTMANAGER and ACDBPERSSUBENTMA…
DrunkOnJava commentedon Oct 27, 2026
Status (main 2bab7b2; CI run 40503137263 and the oracle). Against the 2026-10-21 table in the body:
format_versionon R2013 and R2018, and Realistic's face lighting quality on R2000 to R2007, VISUALSTYLE: format_version and Realistic's face lighting quality differ from the export #250); fix(objects): VISUALSTYLE's R2013+ tail property types, as AutoCAD's DXF export lists them #251 fixed the R2013+ tail property types.main; 212 records are skipped in the corpus run (174 unscored in the oracle summary). The decoder is in PR feat(objects): decode MATERIAL from AutoCAD's own DWG and DXF output (#49, #152) #325.Queued, each decoded from AutoCAD's own DWG and DXF output and each provisional until #348's controlled drawings: #325 MATERIAL, #326 five small classes, #328 the dynamic-block evaluation objects, #329 DIMASSOC, #330 ACSH_HISTORY_CLASS and ACSH_BOX_CLASS, #331 PDFUNDERLAY, #332 SUN, #335 DATATABLE, #337 ACDB_TEXTOBJECTCONTEXTDATA_CLASS, #339 ACAD_EVALUATION_GRAPH and #341 ACSH_EXTRUSION_CLASS.
The largest classes still skipped on
mainin the run (533 records in all): MATERIAL 212, BLOCKGRIPLOCATIONCOMPONENT 42, CELLSTYLEMAP 32, ACAD_EVALUATION_GRAPH 21, DIMASSOC 21, TABLESTYLE on R2010+ 20, ACAD_TABLE 14, ACDB_BLOCKREPRESENTATION_DATA 14, ACSH_HISTORY_CLASS 14, BLOCKLINEARGRIP 14, TABLECONTENT 14 and TABLEGEOMETRY 14.feat(objects): decode MATERIAL from AutoCAD's own DWG and DXF output (#…
feat(objects): decode five small classes from AutoCAD's own DWG and D…
feat(objects): decode the dynamic-block evaluation objects from AutoC…
feat(objects): decode DIMASSOC from AutoCAD's own DWG and DXF output (#…
feat(objects): decode ACSH_HISTORY_CLASS and ACSH_BOX_CLASS from Auto…
fix(entities): decode PDFUNDERLAY on every release and check it again…
feat(entities): decode SUN from AutoCAD's own DWG and DXF output (#152)…
feat(objects): decode DATATABLE from AutoCAD's own DWG and DXF output (…
feat(objects): decode ACDB_TEXTOBJECTCONTEXTDATA_CLASS from AutoCAD's…
feat(objects): decode ACAD_EVALUATION_GRAPH from AutoCAD's own DWG an…
feat(objects): decode ACSH_EXTRUSION_CLASS from AutoCAD's own DWG and…
feat(objects): decode ACSH_CYLINDER_CLASS and ACSH_REVOLVE_CLASS to t…
feat(entities): route LIGHT by class name and read it with the layout…
feat(objects): decode RAPIDRTRENDERENVIRONMENT to its record boundary (…