void VisualAttribute::representation(const IRepresentation &rpr) { if ( !_domain.isValid() || !rpr.isValid()) return; if ( rpr->isCompatible(_domain)){ _representation = rpr; } }
VisualAttribute::VisualAttribute(const IDomain &dom, int colindex, const IRepresentation& rpr) : _domain(dom) { if ( rpr.isValid() && rpr->isCompatible(dom)) _representation = rpr; else _representation = Representation::defaultRepresentation(dom); _representation->domain(dom); _domain = dom; _columnIndex = colindex; }
void FeatureLayerDrawer::setActiveVisualAttribute(const QString &attr) { IFeatureCoverage features = coverage().as<FeatureCoverage>(); if ( features.isValid()) { if ( features->attributeDefinitions().columnIndex(attr) != iUNDEF){ IRepresentation newrpr = Representation::defaultRepresentation(features->attributeDefinitions().columndefinition(attr).datadef().domain()); if ( newrpr.isValid()){ LayerDrawer::setActiveVisualAttribute(attr); } } } }
void RasterLayerDrawer::setActiveVisualAttribute(const QString &attr) { IRasterCoverage raster = coverage().as<RasterCoverage>(); if ( attr == PIXELVALUE){ LayerDrawer::setActiveVisualAttribute(attr); } else if ( raster.isValid() ) { if(raster->hasAttributes()) { if ( raster->attributeTable()->columnIndex(attr) != iUNDEF){ IRepresentation newrpr = Representation::defaultRepresentation(raster->attributeTable()->columndefinition(attr).datadef().domain()); if ( newrpr.isValid()){ LayerDrawer::setActiveVisualAttribute(attr); } } } } }