diff --git a/SlnkDWFImpl/SLNKContourImpl.cpp b/SlnkDWFImpl/SLNKContourImpl.cpp index 2886361..7ffbda4 100644 --- a/SlnkDWFImpl/SLNKContourImpl.cpp +++ b/SlnkDWFImpl/SLNKContourImpl.cpp @@ -683,7 +683,8 @@ WT_Result CSLNKContourImpl::serialize(WT_File & file, BOOL solidOnly) #ifndef DWFTK_READ_ONLY -void CSLNKContourImpl::serializeXML( DWFToolkit::DWFXMLSerializer& rSerializer, unsigned int nFlags ) +void CSLNKContourImpl::serializeXML( DWFToolkit::DWFXMLSerializer& rSerializer, + WT_Units units ) throw( DWFException ) { rSerializer.startElement( L"Contour ", L"SLNKDWF" ); @@ -692,6 +693,17 @@ void CSLNKContourImpl::serializeXML( DWFToolkit::DWFXMLSerializer& rSerializer, wchar_t zTempBuffer[32]; _DWFCORE_SWPRINTF( zTempBuffer, 32, L"%.2f", m_DWGArea ); rSerializer.addAttribute( "Area", zTempBuffer ); + + CString builder; + for (int i=0; i < count(); i++) + { + WT_Point3D dwgPt = units.transform(points()[i]); + CString pts; + pts.Format("%.1f,%.1f", dwgPt.m_x,dwgPt.m_y); + if (builder.GetLength()>0) builder += " "; + builder = builder + pts; + } + rSerializer.addAttribute( "Points", (LPCSTR)builder ); //rSerializer.addAttribute( DWFXML::kzAttribute_Category, _zCategory ); //rSerializer.addAttribute( DWFXML::kzAttribute_Type, _zType ); //rSerializer.addAttribute( DWFXML::kzAttribute_Units, _zUnits ); diff --git a/SlnkDWFImpl/SLNKContourImpl.h b/SlnkDWFImpl/SLNKContourImpl.h index 28d0184..6e8aa6f 100644 --- a/SlnkDWFImpl/SLNKContourImpl.h +++ b/SlnkDWFImpl/SLNKContourImpl.h @@ -65,7 +65,8 @@ public: static WT_Integer32 m_next_node_num; #ifndef DWFTK_READ_ONLY - void serializeXML( DWFToolkit::DWFXMLSerializer& rSerializer, unsigned int nFlags ) + void serializeXML( DWFToolkit::DWFXMLSerializer& rSerializer, + WT_Units units ) throw( DWFException ); #endif };