Ticket #1459 (closed defect: fixed)

Opened 6 years ago

Last modified 4 years ago

update interface to latest dwg/dxf lib

Reported by: gok@… Owned by: warmerdam
Priority: normal Milestone:
Component: OGR_SF Version: svn-trunk
Severity: normal Keywords: dxf dwg
Cc: tcollett, gok@…, mloskot

Description (last modified by mloskot) (diff)

To use dwg/dxf support gdal interface should be updated. Switch/redefine OdChar?* to OdString?&, OdUInt32 to OdUInt64 in ogr_dwg.h, odfilebuf.h/cpp

Attachments

gdal_diff Download (42.8 KB) - added by tcollett 6 years ago.
ogr_dwg.zip Download (2.9 KB) - added by gok 5 years ago.
ogr_dwg.h
dxfdwg.zip Download (7.6 KB) - added by gok 5 years ago.
driver implementation suggestions

Change History

Changed 6 years ago by tcollett

  Changed 6 years ago by tcollett

  • version changed from 1.4.0 to svn-trunk

Have attached a patch to update DWG support to use DWG Direct library 2.04.01

Changed 5 years ago by gok

ogr_dwg.h

  Changed 5 years ago by gok

In order to support latest 2.05.01 DWG/DXF library (DDWG) from ODA. And I hope it will support all future DDWG versions.

Changes done in ogr_dwg.h header (attached): - switch from OdChar? * to OdString? & - change OdInt?32 to OdInt?64 - make MyServices? available (drop //ifdef notdef) and put this name in OdStaticRxObject?<MyServices?> svcs;

DDWG has its own file buffer classes OdFileBuf?.h, OdFileBuf?.cpp in ddwg25\Extensions\ExServices? so my guess there is no reason to keep it in gdal trunk gdal-1.4.4\ogr\ogrsf_frmts\dxfdwg. Just move those files out of gdal scope and add the same from DDWG.

Building with msvc 8.0 extra DDWG lib linked list:

DD_vc8MD_PdfToolkit.lib DD_vc8MD_PdfExport.lib DD_VC8MD_RxRasterServices.lib Gs_WinOpenGL.lib Gs_WinGDI.lib DD_VC8MD_Br.lib DD_VC8MD_BrepRenderer.lib DD_VC8MD_AcisBuilder.lib DD_VC8MD_ModelerGeometry.lib DD_VC8MD_DbCommands.lib DD_VC8MD_Alloc.lib DD_VC8MD_SvgExport.lib DD_VC8MD_Gi.lib DD_VC8MD_Jpeg.lib DD_VC8MD_Db.lib DD_VC8MD_DbRoot.lib DD_VC8MD_Ge.lib DD_VC8MD_Gs.lib DD_VC8MD_Root.lib opengl32.lib DD_VC8MD_ZLib.lib DD_VC8MD_zip.lib DD_VC8MD_SpatialIndex.lib DD_VC8MD_BmpExport.lib DD_VC8MD_RxPlotStyleServices.lib DD_VC8MD_DynBlocks.lib DD_VC8MD_Ave.lib DD_VC8MD_RxRasterProcessor.lib DD_vc8MD_Dwf7Import.lib DD_vc8MD_Dwf7Export.lib WhipTk?.lib W3Dtk.lib DwfToolkit?.lib DD_VC8MD_ExFieldEvaluator.lib DD_vc8MD_PlotSettingsValidator.lib DwfCore?.lib

follow-up: ↓ 6   Changed 5 years ago by warmerdam

  • status changed from new to assigned
  • description modified (diff)
  • component changed from OGR_SRS to OGR_SF
  • priority changed from highest to normal
  • keywords dxfdwg added
  • severity changed from blocker to normal

Gok,

If you could test an implementation without the local OdFileBuf?.cpp/h that would be very helpful. These were the only reason I had to move the dxfdwg driver out of mainstream GDAL.

  Changed 5 years ago by warmerdam

  • cc tcollett added

I have committed the changes in gdal_diff (r13546). Are there distinct changes in the ogr_dwg.zip attachment? Can you guys (gok / tcollett) confirm here that you understand these changes are being contributed under the MIT/X license and that you have the right/permission to provide them?

  Changed 5 years ago by tcollett

No problem with the MIT/X license. The changes were based on the DWG examples (as was the original plugin) so there should be no problems there.

Changed 5 years ago by gok

driver implementation suggestions

in reply to: ↑ 3   Changed 5 years ago by gok

If you could test an implementation without the local OdFileBuf?.cpp/h that would be very helpful...

With those changes I did build gdal from trunk using nmake /NOLOGO /f makefile.vc default and using vc8 project as well. Attached is modified nmake.opt to support DWG/DXF.

I'm not familiar with GDAL structure so somebody should implement driver, datasource. Some suggestions are in attached ogrdwgdriver/datasource code (dxfdwg.zip)

  Changed 5 years ago by gok

  • cc gok@… added

  Changed 5 years ago by neteler

Possibly related to ticket #227 ?

  Changed 5 years ago by mloskot

  • cc mloskot added
  • keywords dxf dwg added; dxfdwg removed
  • description modified (diff)

  Changed 4 years ago by rouault

  • status changed from assigned to closed
  • resolution set to fixed

Another DXF driver with read & write support has been added into OGR 1.7.0

Note: See TracTickets for help on using tickets.