dyrks1991 / quimeraengine

Automatically exported from code.google.com/p/quimeraengine
0 stars 0 forks source link

QLineSegment #87

Closed GoogleCodeExporter closed 8 years ago

GoogleCodeExporter commented 8 years ago
Representa un segmento en el espacio tridimensional, delimitado por 2 puntos 
arbitrarios. Aporta funcionalidad de escala, intersección y cálculo de 
distancias.

Más información en:

http://quimeraengine.googlecode.com/files/QLineSegment.pdf

Original issue reported on code.google.com by Lince3D@gmail.com on 27 Dec 2010 at 2:53

GoogleCodeExporter commented 8 years ago

Original comment by anderson...@gmail.com on 1 Feb 2011 at 11:39

GoogleCodeExporter commented 8 years ago

Original comment by anderson...@gmail.com on 1 Feb 2011 at 11:40

GoogleCodeExporter commented 8 years ago
Status: Started, Owner: anderson_jag <-- Esos son los dos cambios anteriores

Original comment by anderson...@gmail.com on 1 Feb 2011 at 12:34

GoogleCodeExporter commented 8 years ago
-Implemented template class QLineSegment
-Compiled succesfully on QuimeraEngine and QuimeraEngineTestApp
-Happy-path tested using all methods implemented for the class.

Original comment by anderson...@gmail.com on 22 Feb 2011 at 11:57

GoogleCodeExporter commented 8 years ago
Resultado de la revisión:

-Documentación de clase: "INHERITS FROM: QBaseLineSegment" no es necesario 
especificar de dónde heredan las clases, eso ya aparece automáticamente en la 
documentación.

-Constructor que recibe un QBaseLineSegment: Los nombres de parámetro siempre 
empiezan por minúsculas.

-GetLength: Debería ser inline.

-Documentación de GetCenter: Después de la palabra [OUT], va una mayúscula.

-GetCenter: ¿Cómo llegas a la conclusión de que es 0.5(A+B)? ¿No sería A + 
0.5(B-A)?

-Documentación de Intersection: Se ha colado un [DOC]. En el resultado, 
empieza por mayúscula.

-Intersection: Sobra un paréntesis de apertura y otro de cierre. ¿Es estilo 
propio?

-ClampFunction: Por favor, ponle un TODO, en el futuro lo pondremos como 
función genérica para que sea usado por cualquier clase. Yo lo pondría como 
"return fFactor > fMax ? fMax : fFactor < fMin : fMin : fFactor;". Además, los 
parámetros deberían ser pasados por referencia.

-MaxDistance: "float_q fDistancePointToA = QFloat::_0; fDistancePointToA = 
v2.GetLength();" por favor, cada sentencia en una línea, ahí no se gana nada 
con ponerlo así, a mi entender.

-Documentación de Scale, ScaleFromA y ScaleFromB: 
----"scaling og the segment" = "scaling of the segment".
----"-If the scale factor es 0.0" = "-If the scale factor is 0.0"
----"-If the scale factor es 1.0" = "-If the scale factor is 1.0"
----"[IN] a floating" = "[IN] A floating"

-ToString: ¿No da error al intentar sumar un const char* a un std::string?

-UnitLine: No se trata de un método, como puede apreciarse en el diagrama, se 
trata de una constante de la clase.

-private: A menos que se especifique lo contrario, los métodos no públicos 
serán protected.

-PROPERTIES/ATTRIBUTES: Aquellas secciones que no se utilicen deben ser 
borradas.

-Quitar todas las etiquetas [REVIEW].

Original comment by Lince3D@gmail.com on 25 Feb 2011 at 8:55

GoogleCodeExporter commented 8 years ago
En GetCenter: ambas cosas son lo mismo Thund :)

A + 0.5(B-A) = A - 0.5A + 0.5B = 0.5A + 0.5B = 0.5(A+B)

Original comment by jwl...@gmail.com on 26 Feb 2011 at 8:26

GoogleCodeExporter commented 8 years ago
Cierto, gracias por la aclaración.

Original comment by Lince3D@gmail.com on 28 Feb 2011 at 7:20

GoogleCodeExporter commented 8 years ago
-Corregidos errores en documentación, comentarios.
-Corregidos errores de nombres en parámetros de constructiores.
-Quitadas las etiquetas [REVIEW].
-Puesta cada sentencia en una línea.
-QLineSegment<VectorType>::MaxDistance (vPoint) detecta ahora que, si el punto 
se halla dentro del segmento, devuelva 0 como distancia.
-Añadido un [TODO] en la sección de documentación de 
QLineSegment<VectorType>::ClampFactor, para poder ser encontrada y puesta como 
función genérica.
-Modificadas comparaciones '>', '<', '>=' y '<=' en la forma propuesta por 
jwladi; añadidos varios [TODO] en dichas comparaciones para poder ser 
sustituídos por QFLoat::AreGreaterThan, QFLoat::AreLesserThan, ... cuando 
dichos métodos sean implementados.
-Modificado UnitLine para que sea una constante de clase.
-Añadido el modificador inline a varios métodos "pequeños" (4 o 5 líneas 
útiles de código).

-Asímismo, quitados los paréntesis de cierre y apertura en los return (es 
más por estilo propio), dejados sólo quellos para separar mejor los miembros 
de una expresión.

Original comment by anderson...@gmail.com on 28 Feb 2011 at 10:20

GoogleCodeExporter commented 8 years ago
Resultado de la revisión (2): Correcta.

Original comment by Lince3D@gmail.com on 7 Mar 2011 at 1:26

GoogleCodeExporter commented 8 years ago
Saludos. ¿Qué quiere expresar la condición "Done-TODO"?.

Original comment by anderson...@gmail.com on 7 Mar 2011 at 6:22

GoogleCodeExporter commented 8 years ago
Quiere decir que hay cosas por hacer, que se han introducido en esta tarea, 
pero que se ignoran en la revisión porque se harán en el futuro. Quizás en 
este caso debiera ser un Done a secas dado que la funcionalidad propia de la 
tarea sí está desarrollada.

Original comment by Lince3D@gmail.com on 7 Mar 2011 at 6:56

GoogleCodeExporter commented 8 years ago
Falta sustituir operadores de comparación por funciones de QFloat (cuando 
estén implementadas).
Falta implementar la función Clamp en QFloat.

Original comment by Lince3D@gmail.com on 31 Mar 2011 at 6:47

GoogleCodeExporter commented 8 years ago
¿Esto podría opnerse ya en Done?

Original comment by Lince3D@gmail.com on 1 Aug 2011 at 8:33

GoogleCodeExporter commented 8 years ago
Sí, las dos cosas que faltaban (indicadas en el comentario 12) ya han sido 
realizadas.

Original comment by anderson...@gmail.com on 2 Aug 2011 at 12:49