Imagino que esto se debe porque la herramienta redondea.
Por ejemplo, si es 3H:2V, divide 3/2 y da 1,5..que al redondeo lo considera =1, de forma que interpreta que seria 1H:1V
Si es 2H:3V,divide 2/3 que es 0,666 que al redondeo lo considera=1 ,de forma que interpreta que seria 1H:1V
Quiza en estos casos, al tratarse de factores frecuentemente usados y seria un error que mostrara esos valores,seria interesante concretarle al programa,que cuando encuentre valores cercanos a 0,666 lo considere como 2/3 y con valores cercanos a 1,5 lo considere 3/2
Otra opcion interesante,para evitar posibles equivocaciones, es anadir un checkbox de si se quiere poner el valor de los catetos conincidentes con la dimension real del talud o si se quieren simplificar las fracciones.
Yo creo que lo mejor seria lo siguiente para programarlo:
Dividir siempre el incremento de X entre el incremnto de Y (en el caso de seleccionar H:V)
poner el cateto de abcisas el valor que nos da y el cateto de ordenadas siempre el valor de 1.
Solo en el caso que la division de un valor cercano a 0,666 lo consideraremos como 2:3 y si da un valor cercano a 1,5 lo consideraremos como 3:2
Si da la division 0.5 o un valor cercano, se trata de 1H:2V
Si la division da un valor igual o cercano a 0,333, entonces tenemos un factor 1H:3V
Si la division da un valor igual o cercano a 0,25, entonces tenemos un factor 1H:4V