""" Try combining the functions in custom labels for two grids with 1000 meter interval lines. first: if(left(right( @grid_number , 4),1) = 0, if( @grid_axis = 'x', longNumber( @grid_number ), ''), shortNumber( @grid_number )) second: if(left(right( @grid_number , 4),1) = 0, if( @grid_axis = 'y', longNumber( @grid_number ), ''), '' ) Klas Karlsson """ from qgis.core import * from qgis.gui import * @qgsfunction(args='auto', group='Custom') def shortNumber(gridNumber, feature, parent): """ Converts coordinates to "kilometer grid index".
shortNumber(123456) -> '23'
shortNumber( @grid_number )
"""
gridString = str(int(gridNumber))
return gridString[len(gridString)-5:len(gridString)-3]
@qgsfunction(args='auto', group='Custom')
def longNumber(gridNumber, feature, parent):
"""
Converts coordinates to "kilometer grid index" with superscript characters to create a "full" coordinate.
longNumber(123456) -> '123456'
longNumber( @grid_number )