<div dir="ltr">ok, genial Steven.<div><br></div><div>Con todo esto estoy tratando de escribir un código que rasterice figuras 3D en pantalla, pasándole a opengl buffers de píxels, y de momento me estoy pegando con el recorte, uf, super complejo para mi nivel.</div><div><br></div><div>De momento consigo recortar un cubo simple con todos los planos salvo el plano cercano y el lejano, jejeje.......una movida.....y me falla también al pasar de un cubo a una figura más compleja, con más vértices.</div><div><br></div><div>Alguien ha hecho algo de esto alguna vez ????</div><div><br></div><div>Saludos y como siempre muchísimas gracias.</div></div><div class="gmail_extra"><br><div class="gmail_quote">El 8 de abril de 2015, 15:45, Davidson, Steven <span dir="ltr"><<a href="mailto:srd4121@njit.edu" target="_blank">srd4121@njit.edu</a>></span> escribió:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Hola Miguel Ángel,<div class="gmail_extra"><br><div class="gmail_quote">2015-04-08 0:53 GMT-04:00 Miguel Ángel Torres Fernández-Píñar <span dir="ltr"><<a href="mailto:miguelangeltorresfp@gmail.com" target="_blank">miguelangeltorresfp@gmail.com</a>></span>:<span class=""><br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr">uf, Steven, muchísimas gracias por todos tus apuntes.<div><br></div><div>Me sirve muchísimo todo esto y me hace darme cuenta del enorme camino que me queda aun por delante siquiera para ser un programador junior.</div><div><br></div></div></blockquote><div><br></div></span><div>Siempre estamos aprendiendo - incluso los más veteranos.</div><span class=""><div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr"><div></div><div>De veras, muchas gracias por tu esfuerzo y tiempo desinteresado.</div><div><br></div></div></blockquote><div><br></div></span><div>De nada; para eso estamos :)</div><span class=""><div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr"><div></div><div>De momento comparto esta duda en relación a lo que indicaste arriba.</div><div><br></div><div>He probado a usar :</div><span><div><br></div><div><span style="font-size:12.8000001907349px"><font color="#3d85c6">// Get</font></span></div><div class="gmail_extra" style="font-size:12.8000001907349px"><font color="#3d85c6">const T & operator [] ( std::vector<T>::size_type index) const</font>;</div><div class="gmail_extra" style="font-size:12.8000001907349px"><br></div></span><div class="gmail_extra" style="font-size:12.8000001907349px">Pero me funciona si le coloco <b><i>typename </i></b>delante : ( aunque no entiendo muy bien todo eso )</div><div class="gmail_extra" style="font-size:12.8000001907349px"><br></div><div class="gmail_extra" style="font-size:12.8000001907349px"><div class="gmail_extra" style="font-size:12.8000001907349px"><font color="#3d85c6">// Get</font></div><div class="gmail_extra" style="font-size:12.8000001907349px"><font color="#3d85c6">const T & operator [] (typename std::vector<T>::size_type index) const;</font></div></div></div></blockquote><div><br></div></span><div>Sí. Tienes toda la razón del mundo; ha sido un descuido mío. Como a estas alturas el compilador no ha creado la clase 'std :: vector< int >', 'std :: vector< std :: string >', 'std :: vector< float >', o la que exista en su momento. Sin embargo, el compilador sí puede comprobar ciertos aspectos de la plantilla usando la gramática. El problema es que no sabe lo que es 'size_type' por lo que no puede determinar si su uso es correcto.</div><div><br></div><div>La solución es obligar al compilador a aceptar que la entidad que escribimos sí es el nombre de un tipo de dato anteponiendo el vocablo, 'typename'. Por lo tanto, si en cualquier momento escribes una expresión que se consideraría ambigua, lo más seguro es que escribiendo 'typename' se eliminaría tal ambiegüedad.</div><div><br></div><div><br></div><div>Por cierto, otro consejo es que definas tipos de datos dentro de la plantilla; por ejemplo,</div><div><br></div><div>template< typename T ></div><div>class pool<br>{<br>public:</div><div>  typedef T value_type;<br><div>  typedef T * pointer_type;</div><div><div>  typedef const T * const_pointer_type;</div></div><div><div>  typedef T & reference_type;</div><div>  typedef const T & const_reference_type;</div></div><div><br></div>  typedef std::vector<value_type> vector_type;</div><div>  typedef typename vector_type::size_type size_type;<br>  ...<br>};</div><div><br></div><div><br></div><div>Espero que esto te ayude.</div><span class="HOEnZb"><font color="#888888"><div><br></div><div>Steven</div><div><br></div></font></span></div></div></div>
<br>_______________________________________________<br>
Lista de correo Cconclase <a href="mailto:Cconclase@listas.conclase.net">Cconclase@listas.conclase.net</a><br>
<a href="http://listas.conclase.net/mailman/listinfo/cconclase_listas.conclase.net" target="_blank">http://listas.conclase.net/mailman/listinfo/cconclase_listas.conclase.net</a><br>
Bajas: <a href="http://listas.conclase.net/index.php?gid=2&mnu=FAQ" target="_blank">http://listas.conclase.net/index.php?gid=2&mnu=FAQ</a><br></blockquote></div><br></div>