VRTFilteredSource::VRTFilteredSource() : m_nSupportedTypesCount(1), m_nExtraEdgePixels(0) { for( size_t i = 0; i < CPL_ARRAYSIZE(m_aeSupportedTypes); ++i ) m_aeSupportedTypes[i] = GDT_Unknown; m_aeSupportedTypes[0] = GDT_Float32; }
OGRGPSBabelDataSource::OGRGPSBabelDataSource() : nLayers(0), pszName(nullptr), pszGPSBabelDriverName(nullptr), pszFilename(nullptr), poGPXDS(nullptr) { std::fill_n(apoLayers, CPL_ARRAYSIZE(apoLayers), static_cast<OGRLayer*>(nullptr)); }
const measurement_unit* LevellerDataset::get_uom(UNITLABEL code) const { for(size_t i = 0; i < CPL_ARRAYSIZE(kUnits); i++) { if(kUnits[i].oemCode == code) return &kUnits[i]; } CPLError( CE_Failure, CPLE_AppDefined, "Unknown measurement unit code: %08x", code ); return NULL; }
const measurement_unit* LevellerDataset::get_uom(const char* pszUnits) const { for(size_t i = 0; i < CPL_ARRAYSIZE(kUnits); i++) { if(strcmp(pszUnits, kUnits[i].pszID) == 0) return &kUnits[i]; } CPLError( CE_Failure, CPLE_AppDefined, "Unknown measurement units: %s", pszUnits ); return NULL; }
OGRErr OGRDXFWriterLayer::WriteCore( OGRFeature *poFeature ) { /* -------------------------------------------------------------------- */ /* Write out an entity id. I'm not sure why this is critical, */ /* but it seems that VoloView will just quietly fail to open */ /* dxf files without entity ids set on most/all entities. */ /* Also, for reasons I don't understand these ids seem to have */ /* to start somewhere around 0x50 hex (80 decimal). */ /* -------------------------------------------------------------------- */ poFeature->SetFID( poDS->WriteEntityID(fp,(int)poFeature->GetFID()) ); /* -------------------------------------------------------------------- */ /* For now we assign everything to the default layer - layer */ /* "0" - if there is no layer property on the source features. */ /* -------------------------------------------------------------------- */ const char *pszLayer = poFeature->GetFieldAsString( "Layer" ); if( pszLayer == nullptr || strlen(pszLayer) == 0 ) { WriteValue( 8, "0" ); } else { CPLString osSanitizedLayer(pszLayer); // Replaced restricted characters with underscore // See http://docs.autodesk.com/ACD/2010/ENU/AutoCAD%202010%20User%20Documentation/index.html?url=WS1a9193826455f5ffa23ce210c4a30acaf-7345.htm,topicNumber=d0e41665 const char achForbiddenChars[] = { '<', '>', '/', '\\', '"', ':', ';', '?', '*', '|', '=', '\'' }; for( size_t i = 0; i < CPL_ARRAYSIZE(achForbiddenChars); ++i ) { osSanitizedLayer.replaceAll( achForbiddenChars[i], '_' ); } // also remove newline characters (#15067) osSanitizedLayer.replaceAll( "\r\n", "_" ); osSanitizedLayer.replaceAll( '\r', '_' ); osSanitizedLayer.replaceAll( '\n', '_' ); const char *pszExists = poDS->oHeaderDS.LookupLayerProperty( osSanitizedLayer, "Exists" ); if( (pszExists == nullptr || strlen(pszExists) == 0) && CSLFindString( poDS->papszLayersToCreate, osSanitizedLayer ) == -1 ) { poDS->papszLayersToCreate = CSLAddString( poDS->papszLayersToCreate, osSanitizedLayer ); } WriteValue( 8, osSanitizedLayer ); } return OGRERR_NONE; }
NWT_GRDDataset::NWT_GRDDataset() : fp(NULL), pGrd(NULL), pszProjection(NULL) { //poCT = NULL; for( size_t i=0; i < CPL_ARRAYSIZE(ColorMap); ++i ) { ColorMap[i].r = 0; ColorMap[i].g = 0; ColorMap[i].b = 0; } }
const measurement_unit* LevellerDataset::get_uom(double dM) const { for(size_t i = kFirstLinearMeasureIdx; i < CPL_ARRAYSIZE(kUnits); i++) { if(dM >= 1.0e-4) { if(approx_equal(dM, kUnits[i].dScale)) return &kUnits[i]; } else if(dM == kUnits[i].dScale) return &kUnits[i]; } CPLError( CE_Failure, CPLE_AppDefined, "Unknown measurement conversion factor: %f", dM ); return NULL; }
bool LevellerDataset::convert_measure ( double d, double& dResult, const char* pszSpace ) { // Convert a measure to meters. for(size_t i = kFirstLinearMeasureIdx; i < CPL_ARRAYSIZE(kUnits); i++) { if(str_equal(pszSpace, kUnits[i].pszID)) { dResult = d * kUnits[i].dScale; return true; } } CPLError( CE_Failure, CPLE_FileIO, "Unknown linear measurement unit: '%s'", pszSpace ); return false; }
JDEMDataset::JDEMDataset() : fp(NULL) { std::fill_n(abyHeader, CPL_ARRAYSIZE(abyHeader), 0); }
JDEMDataset::JDEMDataset() : fp(nullptr) { std::fill_n(abyHeader, CPL_ARRAYSIZE(abyHeader), static_cast<GByte>(0)); }