[PD] mesh_square
cyrille henry
cyrille.henry at la-kitchen.fr
Sun Apr 6 19:33:00 CEST 2008
marius schebella a écrit :
> cyrille henry wrote:
>>
>>
>> marius schebella a écrit :
>>> hi cyrille,
>>> with mesh_square, are there other arguments to the draw message than
>>> "default" "line" and "point"?
>> you can send to mesh_square all draw style that you can send to any
>> other gem primitive. but only this one work as expected.
>>> and what is the "default" draw method?
>>
>> if(m_drawType==GL_DEFAULT_GEM)m_drawType=GL_TRIANGLE_STRIP;
>
> if I send the message draw triangle_strip then it looks different than
> the default. if I send draw + integernumber, I get error: Bad arguments
> for message 'draw' to object 'mesh_square'
what's the problem with draw DEFAULT?
in gemshape.cpp you'll find :
switch (c){
case 'D': // default
m_drawType = GL_DEFAULT_GEM;
break;
case 'L': // line
m_drawType = GL_LINE_LOOP;
break;
case 'F': // fill
m_drawType = GL_POLYGON;
break;
case 'Q': // quads
m_drawType = GL_QUADS;
break;
case 'P': // point
m_drawType = GL_POINTS;
break;
case 'T': // triangles
m_drawType = GL_TRIANGLES;
break;
case 'S': // strip
m_drawType = GL_TRIANGLE_STRIP;
break;
in this code, c is the 1st letter after "draw ".
so draw Triangle_strip is the same as draw Triangle, or draw Turtle
try "draw STRIP", or "draw Something" to draw triangle_strip....
(STRIP in more logic, but anything starting with S will work).
>
>>> how are the vertices connected/what is the order of the vertices?
>> the best explanation i can provide is from the source code! :
>>
>> for (int i=0; i<(gridX-1) ; i++)
>> {
>> glBegin(m_drawType);
>> for (int j = 0; j < gridY ; j++)
>> {
>> glTexCoord2fv( texCoords[i][j] );
>> glVertex3f( m_size * (i*sizeX - 1), m_size * (j*sizeY
>> -1) , 0);
>>
>> glTexCoord2fv( texCoords[i+1][j] );
>> glVertex3f( m_size * ((i+1)*sizeX - 1), m_size *
>> (j*sizeY -1), 0);
>> }
>> glEnd();
>> }
>
> I should read more code, this is not so difficult as I thought...
yes, really. it's the best documentation ever!
gem code is usually very clear.
cyrille
> marius.
>
>
More information about the Pd-list
mailing list