Ayuda con nomenclatura para función geométrica

Iniciado por Eleкtro, 5 Diciembre 2018, 14:48 PM

0 Miembros y 2 Visitantes están viendo este tema.

Eleкtro

Buenas.

Creo que esta duda es simple y sencilla, quizás incluso algo estúpida y también atípica, pero tengo un problema y es que a veces con cosas sencillas me pongo a darle demasiadas vueltas y al final me atasco de tanto pensar y no saco nada en claro...

Bien. Resulta que en un lenguaje de programación, he desarrollado un algoritmo (nada del otro mundo, con una simple división se hace) cuyo propósito es medir el "cómo de cuadrados" son los lados de unas dimensiones específicas. Es decir, un cuadrado tiene una relación de 1:1, y cualquier otra cosa distinta sería un rectángulo pero quizás lo podriamos querer considerar como un cuadrado "imperfecto" o "desigual" (un rectángulo que al ojo humano sería practicamente indistingible de una forma cuadrada)...

No creo haberme expresado demasiado bien, así que lo explicaré de otro modo: si yo tengo unas dimensiones (Ancho x Alto) de 500x500, este algoritmo me da como resultado, en porcentaje, un valor de 100%, puesto que la longitud de los lados de la forma geometrica que forman dichas dimensiones, son exactamente iguales, forman un cuadrado perfecto al 100%.
Ahora, si yo tengo unas dimensiones de 640x480 (cómo referencia pueden tomar la forma de la pantalla de un monitor CRT), este algoritmo me da como resultado un valor de 75.00%, esto quiere decir que la forma geometrica que forman los lados de las dimensiones 640x480 son un 75% iguales (o un 25% desiguales, según se mire), vamos, que los lados no forman un cuadrado, es un rectángulo, pero está a un 25% de ser una forma cuadrada al 100%. Supongo que se entiende lo que intento decir.
Yo lo que obtengo con mi función es ese porcentaje, y con ese porcentaje llevo a cabo ciertas consideraciones personales de si a simple vista del ojo humano algo (en concreto una imagen, sus dimensiones) es o se parece más a un cuadrado, o a un rectángulo, aunque eso no viene a cuento de esta pregunta la verdad....

El problema que tengo es con la nomenclatura de esta función, no se que nombre ponerle. Considero que la nomenclatura de una función es muy importante, pues debemos tratar de describir de forma breve y concisa el propósito de la misma, para que además sea intuitivo para el usuario final. Y yo pues de terminologías científicas y geométricas, de todo lo que aprendi en el instituto no recuerdo mucho, la verdad, y por eso me está costando mucho ponerle un nombre coherente y de la forma más eficiente posible, por que se que este tipo de medición de los lados de una forma geométrica y su similitud con respecto a un cuadrado esto debe tener algún nombre geométrico/científico conocido al que puedo hacer referencia, y simplemente o no me acuerdo o no caigo, así que por el momento el nombre provisional y algo vulgar que le he puesto es: "GetSquareSimilarityOfSize()"...

Pues eso, solo necesito ayuda para la nomenclatura. ¿Qué nombre le pondrían ustedes a este tipo de función?.

Gracias por leer.








Machacador

#1
Regularización cuadrática... o algo similar llevado a nomenclatura in inglis...

:rolleyes: :o :rolleyes:

"Solo tu perro puede admirarte mas de lo que tu te admiras a ti mismo"

Eleкtro

#2
"Cuadrático", hmmm, para ser sincero no recordaba haber escuchado nunca ese término ya que siempre solemos decir "esto es cuadrado" y no "esto es cuadrático", pero sí...


¿Supongo que entonces estará correctamente expresado decir que lo que hace mi función es obtener el porcentaje cuadrático de una figura? (bueno, de unas dimensiones que forman una figura cerrada de 4 lineas rectas), entonces el nombre de la función creo que podría ser: "GetQuadraticPercentage()" y con eso me serviría, así que a falta de alguna otra propuesta que supere a tu nomenclatura, te la compro . Gracias.








Serapis

Si lo usas para imágenes, es la relacion de aspecto...

En inglés te quedaría: "GetAspectRatio"

Y más que la proporción darLa  en pocentaje, yo la daría en unidades:
640/480= 1'33
1024/768 = 1'33
Que como se ve, corresponde a 4/3
Es decir si incluso tienes que hacer algo más complejo y tratar con enumeraciones, considera algo como:

Enumeracion RelacionesDeAspecto
    RELACION_ASPECTO_4_3
    RELACION_ASPECTO_5_4
    RELACION_ASPECTO_10_9
    RELACION_ASPECTO_11_8
    RELACION_ASPECTO_16_10
    ...etc...
Fin enumeracion

z3nth10n

Yo lo llamaría SquareSimilarityPercentage o algo así :P

Interesados hablad por Discord.

Eleкtro

Cita de: NEBIRE en  5 Diciembre 2018, 19:15 PM
Si lo usas para imágenes, es la relacion de aspecto...

Ese es uno de los propósitos personales que yo le daré a la función, pero no te fijes en eso, se trata de pasarle como argumento un tamaño (width x height) el cual puede ser el tamaño de una imagen, de una caja de zapatos, o de lo que sea...

@NEBIRE y @morty gracias también por la ayuda prestada.

saludos








Serapis

#6
Si "aspectRatio", no te basta porque lo vas a aplicar a muchas más cosas, todavía la proporción entre lados de un objeto, suele llamarse 'excentricidad' o incluso 'elongación' ('eccentricity' y 'elongation' respectivamente para el inglés),

La elongación suele estar formulada como:
elongacion = ((Ancho-Alto)/Alto)

Así si el valor es mayor que 0, ancho es mayor que alto.
Siu vale 0, ancho y alto son iguales.
Si el valor es menor que 0, alto es mayor que ancho.

El valor resultante expresa la diferencia (proporcional) entre uno y otro (lo que falta o sobra para ser iguales)...
Nota como por ejemplo:
w=1024: h=768
e= (1024-768)/768 = 0.3333
Es decir el alto es 1/3 menor que el ancho.

pero en cambio
w= 768: h=1024
e = (768-1024)/1024= -0'25
Es decir el alto es 1/4 mayor que el ancho...

Despejando, el ancho sería:
w = ((h * e) + h

P.d.:
Se me olvidaba... lo llamarías entonces:
GetObjectElongation ' (w, h)