Dear list,
I couldn't find anyone answering my question on the list... (sob!) Given the traffic these days, I can see various reason for this...
1- Nobody understood what I meant 2- Nobody ever had this problem 3- Noobody ever solved this problem within PD 4- My mail just got drowned in friday's mail rush 5-The question is too hard and nobody wanted to waste time answering this. 6-The question is too easy and nobody wanted to waste time answering this. 7- other?
still searching ... waiting for a kind GEM/OpenGL guru
to help me find sleep again many thanks! vinc (eyes wide shot)
--- Georges Babouche infopapier@yahoo.com.sg wrote:
Date: Fri, 25 Mar 2005 20:43:22 +0800 (CST) From: Georges Babouche infopapier@yahoo.com.sg Subject: GEM : How to create vertex dynamically? / drawing 3D lines? To: pd-list@iem.at
Hi,
I would like to be able to draw lines in a 3D space with a Wacom pen tablet, and I cannot find any solution for creating the vertex.
I had managed to do that with Jitter quite simply with the sketch object and commands "moveto" "lineto".
But it seems that there is no way to dynamically add new vertex and link them to get a line (bezier or even a simple).
I thought I could it with VertexArrays but the function handling pointers are not (?) accessible in GEM. Example : glEnableClientState(GLenum array) is instanciated correctly but glVertexPointer(GLint size, (...), const GLvoid *pointer); is not.
If this is actually implemented, are there any reference guide for how one should type the names and command? Something like GLdefine for pointers?
I guess dynamically instanciating new [GEMglVertex3f] objects every time I get a message from the tablet is not the solution. (Well, I hope too ;-)
The operation seems quite common though... I guess that some people must have done similar stuff, if the GEMtablet exists... Did I miss a sooooo simple function/command? Are there any objects/patchs already doin this? Any patch repository for GEM could be nice...
Last: since I would like to be able to deform these lines after drawing them, maybe my solution is not the best... (and sure isn't at the present time)
Thanks for any helpful advice! Vincent (still RTFM and STFW for now)
Do You Yahoo!? Download the latest ringtones, games, and more! http://sg.mobile.yahoo.com
Do You Yahoo!? Download the latest ringtones, games, and more! http://sg.mobile.yahoo.com
Hi Georges.
Gem has not been often used for "drawing" Until vertex arrays (still not released) all objects were static primatives with some control. I have a couple of ideas. You can look at the "curve" object that simply creates a spline curve of up to 5 control points. I guess you could have to use a bunch of these and overlap them by two points to make sure they are smooth. This could be problematic though. Also you could try using curve3d. curve3d is a 3d surface (matrix) of control points. You could make the matrix very wide and not very tall 2x100 or 1x100 points. Then you would have up to 100 control points to use for drawing, but these are there to start with, you cannot add points as you go. Maybe this would be a feature for curve3d? the ability to add points on the fly?
Maybe the "curve" object could be modified to allow more points, but each point has an inlet so the way you use it would have to change...
I've CCed the gem developers to see if they have any ideas.
b>
Georges Babouche wrote:
Dear list,
I couldn't find anyone answering my question on the list... (sob!) Given the traffic these days, I can see various reason for this...
1- Nobody understood what I meant 2- Nobody ever had this problem 3- Noobody ever solved this problem within PD 4- My mail just got drowned in friday's mail rush 5-The question is too hard and nobody wanted to waste time answering this. 6-The question is too easy and nobody wanted to waste time answering this. 7- other?
still searching ... waiting for a kind GEM/OpenGL guru
to help me find sleep again many thanks! vinc (eyes wide shot)
--- Georges Babouche infopapier@yahoo.com.sg wrote:
Date: Fri, 25 Mar 2005 20:43:22 +0800 (CST) From: Georges Babouche infopapier@yahoo.com.sg Subject: GEM : How to create vertex dynamically? / drawing 3D lines? To: pd-list@iem.at
Hi,
I would like to be able to draw lines in a 3D space with a Wacom pen tablet, and I cannot find any solution for creating the vertex.
I had managed to do that with Jitter quite simply with the sketch object and commands "moveto" "lineto".
But it seems that there is no way to dynamically add new vertex and link them to get a line (bezier or even a simple).
I thought I could it with VertexArrays but the function handling pointers are not (?) accessible in GEM. Example : glEnableClientState(GLenum array) is instanciated correctly but glVertexPointer(GLint size, (...), const GLvoid *pointer); is not.
If this is actually implemented, are there any reference guide for how one should type the names and command? Something like GLdefine for pointers?
I guess dynamically instanciating new [GEMglVertex3f] objects every time I get a message from the tablet is not the solution. (Well, I hope too ;-)
The operation seems quite common though... I guess that some people must have done similar stuff, if the GEMtablet exists... Did I miss a sooooo simple function/command? Are there any objects/patchs already doin this? Any patch repository for GEM could be nice...
Last: since I would like to be able to deform these lines after drawing them, maybe my solution is not the best... (and sure isn't at the present time)
Thanks for any helpful advice! Vincent (still RTFM and STFW for now)
Do You Yahoo!? Download the latest ringtones, games, and more! http://sg.mobile.yahoo.com
Do You Yahoo!? Download the latest ringtones, games, and more! http://sg.mobile.yahoo.com
PD-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://iem.at/cgi-bin/mailman/listinfo/pd-list
hello,
B. Bogart wrote:
Hi Georges.
Gem has not been often used for "drawing" Until vertex arrays (still not released) all objects were static primatives with some control. I have a couple of ideas. You can look at the "curve" object that simply creates a spline curve of up to 5 control points. I guess you could have to use a bunch of these and overlap them by two points to make sure they are smooth.
i'm afraid it's not simple to make this curve object to overlap.
This could be problematic though. Also you could try using curve3d. curve3d is a 3d surface (matrix) of control points. You could make the matrix very wide and not very tall 2x100 or 1x100 points.
Chris already point out that this will be very slow.
Then you would have up to 100 control points to use for drawing, but these are there to start with, you cannot add points as you go. Maybe this would be a feature for curve3d? the ability to add points on the fly?
the problem is that the curve draw by curve3d will change if a single point is add. only 1st and last point are really part of the curve, other point are just "attraction" points.
Maybe the "curve" object could be modified to allow more points, but each point has an inlet so the way you use it would have to change...
in fact, curve and curve3d are drawing a bezier curve. i think making a new object for spline curve could be a good idea.
to try to answer the original question : why don't you try to record the pointer postion in 3 differents array (x, y and z), and using a lot of small line (with [curve 2]) to draw the entire curve? ([repeat] is GEM best friend)
cyrille
I've CCed the gem developers to see if they have any ideas.
b>
Georges Babouche wrote:
Dear list,
I couldn't find anyone answering my question on the list... (sob!) Given the traffic these days, I can see various reason for this...
1- Nobody understood what I meant 2- Nobody ever had this problem 3- Noobody ever solved this problem within PD 4- My mail just got drowned in friday's mail rush 5-The question is too hard and nobody wanted to waste time answering this. 6-The question is too easy and nobody wanted to waste time answering this. 7- other?
still searching ... waiting for a kind GEM/OpenGL guru
to help me find sleep again many thanks! vinc (eyes wide shot)
--- Georges Babouche infopapier@yahoo.com.sg wrote:
Date: Fri, 25 Mar 2005 20:43:22 +0800 (CST) From: Georges Babouche infopapier@yahoo.com.sg Subject: GEM : How to create vertex dynamically? / drawing 3D lines? To: pd-list@iem.at
Hi,
I would like to be able to draw lines in a 3D space with a Wacom pen tablet, and I cannot find any solution for creating the vertex.
I had managed to do that with Jitter quite simply with the sketch object and commands "moveto" "lineto".
But it seems that there is no way to dynamically add new vertex and link them to get a line (bezier or even a simple).
I thought I could it with VertexArrays but the function handling pointers are not (?) accessible in GEM. Example : glEnableClientState(GLenum array) is instanciated correctly but glVertexPointer(GLint size, (...), const GLvoid *pointer); is not.
If this is actually implemented, are there any reference guide for how one should type the names and command? Something like GLdefine for pointers?
I guess dynamically instanciating new [GEMglVertex3f] objects every time I get a message from the tablet is not the solution. (Well, I hope too ;-)
The operation seems quite common though... I guess that some people must have done similar stuff, if the GEMtablet exists... Did I miss a sooooo simple function/command? Are there any objects/patchs already doin this? Any patch repository for GEM could be nice...
Last: since I would like to be able to deform these lines after drawing them, maybe my solution is not the best... (and sure isn't at the present time)
Thanks for any helpful advice! Vincent (still RTFM and STFW for now)
Do You Yahoo!? Download the latest ringtones, games, and more! http://sg.mobile.yahoo.com
Do You Yahoo!? Download the latest ringtones, games, and more! http://sg.mobile.yahoo.com
PD-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://iem.at/cgi-bin/mailman/listinfo/pd-list
Thanks for your help Ben, and Cyrille!
Cyrille wrote :
in fact, curve and curve3d are drawing a bezier curve. i think making a new object for spline curve could be a good idea.
sure it is. Ben's idea to have another [curve] object, where you are not obliged to statically define the number of points you want is even better to me.
to try to answer the original question : why don't you try to record the pointer postion in 3 differents array (x, y and z), and using a lot of small line (with [curve 2]) to draw the entire curve? ([repeat] is GEM best friend)
??? maybe it is just UGLY to instanciate 4000 [curve] objects to draw something that *only* needs 2000 points to look nice/smooth? no? or I miss something?
To Yves Degoyon: don't you have any piece of code from your pdp "freehand drawing" object that could be ported to GEM? ....pleeeeaaaaase!... :-)
cheers, Vincent
Do You Yahoo!? Download the latest ringtones, games, and more! http://sg.mobile.yahoo.com