sanyaade-g2g-repos / quimeraengine

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

QLineSegment3D Extension 002 #131

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
Añade funcionalidad relacionada con el cálculo de puntos de intersección con 
objetos geométricos.

Más información en:

http://quimeraengine.googlecode.com/files/QLineSegment3D%20Extension%20002.pdf

Original issue reported on code.google.com by Lince3D@gmail.com on 24 Mar 2011 at 12:00

GoogleCodeExporter commented 9 years ago

Original comment by jwl...@gmail.com on 16 Jun 2011 at 5:29

GoogleCodeExporter commented 9 years ago

Original comment by jwl...@gmail.com on 31 Aug 2011 at 8:18

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

-Documentación de Intersection: "wheter" = "whether". Creo que no es necesario 
mencionar que llama a la implementación de la clase base.

-Documentación de IntersectionPoint que recibe un QBaseLineSegment: Falta la 
documentación del parámetro vPoint. No es necesario mencionar que se llama a 
la implementación de la clase base. No se concreta qué punto se devuelve 
basado en qué, cuando las líneas coinciden. Realmente tengo serias dudas de 
que el resultado sea correcto cuando están contenidas o coinciden parcialmente.

-Parámetro IntersectionPoint (todas las sobrecargas): Debe empezar por 
minúscula (actualizar documentación).

-Documentación de parámetro IntersectionPoint (todas las sobrecargas): Pone 
Orb cuando es otro tipo.

-IntersectionPoint que recibe un QBasePlane: Si lo ves necesario, haz un 
casting o recibe un QPlane, pero utiliza el método PointDistance. Por favor, 
no introduzcas comentarios que rompan bloques, como poner un comentario justo 
encima de un else if, es más legible meterlo dentro.

-IntersectionPoint que recibe un QBaseTriangle: Puedes usar un QPlane para 
utilizar su constructor a partir de 3 puntos en lugar de usar PlaneFrom3Points. 
No lo llames pAux, p- está reservado para punteros. El nombre de las variables 
Value, Value2AB, etc. debería empezar por minúscula. El comentario "//(Value 
== EQIntersections::E_Infinite)" resulta confuso en el sentido de que no se 
sabe si es para dar a entender algo o que ha quedado ahí como residuo. Igual 
que antes, no rompas bloques con comentarios, ponlos al lado o dentro.

-Documentación de IntersectionPoint que recibe un QBaseHexahedron: Sería 
bueno especificar que se trata de un hexaedro convexo. De lo contrario se 
podrían hallar hasta 4 puntos de intersección o a saber. No se especifica 
cuál de los 2 puntos de intersección se devolverá, basado en qué.

Muy buen trabajo :)

Original comment by Lince3D@gmail.com on 22 Sep 2011 at 6:52

GoogleCodeExporter commented 9 years ago

Original comment by jwl...@gmail.com on 23 Sep 2011 at 12:48

GoogleCodeExporter commented 9 years ago
Resultado de la revisión: Correcta.

-Por favor, no pongas comentarios entre la documentación y la firma del 
método, no sé cómo puede afectar a Doxygen. Me refiero al que hay sobre 
Intersection que recibe un QBaseTriangle.

-"[TODO] jwladi: It's necessary to replace current method for triangle inside 
points detection (PointsInSameSideOfLine) by the centroid method": ¿Podrías 
explicarlo en el foro?

-IntersectionPoint que recibe QBaseTriangle: Aconsejaría usar nombres más 
descriptivos para las variables valueXXX. No hace falta que lo cambies, pero 
para el futuro siempre mejora la inteligibilidad.

-Ya que estás, aunque no sea de la tarea, ¿podrías poner bien el nombre del 
parámetro de la función MaxDistance, en la documentación? Pone q cuando es p.

Original comment by Lince3D@gmail.com on 25 Sep 2011 at 10:19

GoogleCodeExporter commented 9 years ago

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