Я только начал заниматься программированием с использованием библиотеки GDAL,
и столкнулся с проблемами:
1) в результате экспорта таблицы MapInfo в таблицу MapInfo у меня потерялись графические атрибуты (стили) для объектов (геометрия и атрибутика по полям переносится).
В чем может быть проблема? Что неправильно?
Вот примерный текст кода (исходный код почерпнул у Барышникова Дмитрия):
Код: Выделить всё
OGRCoordinateTransformation *poCT = OGRCreateCoordinateTransformation( pSrcSpaRef, &oDstSpaRef);
if(poCT)
{
OGRFeature* pSrcFeature;
while((pSrcFeature = pSrcLayer->GetNextFeature()) != NULL)
{
OGRGeometry *pSrcGeom = pSrcFeature->GetGeometryRef();
if(pSrcGeom)
{
OGRGeometry* pDstGeom = NULL;
if ( pCutGeom )
pDstGeom = pSrcGeom->Intersection(pCutGeom);
else
pDstGeom = pSrcGeom;
if(pDstGeom && pDstGeom->transform(poCT) == OGRERR_NONE)
{
OGRFeature *poDstFeature = OGRFeature::CreateFeature( poDstLayer->GetLayerDefn() );
OGRFeatureDefn* pSrcFeatureDefn = pSrcFeature->GetDefnRef();
for(size_t j = 0; j < pSrcFeatureDefn->GetFieldCount(); ++j)
{
poDstFeature->SetField(j, pSrcFeature->GetRawFieldRef(j));
}
poDstFeature->SetGeometryDirectly(pDstGeom);
if( poDstLayer->CreateFeature( poDstFeature ) != OGRERR_NONE )
{
printf( "[%d] Failed to create feature in shapefile.\n" , nRows);
exit( 1 );
}
OGRFeature::DestroyFeature( poDstFeature );
nRows++;
}
}
}
OCTDestroyCoordinateTransformation(poCT);
printf( "[%d] Exported.\n" , nRows);
}
Буду благодарен за любые советы и рекомендации
С уважением, Александр