[Bf-committers] OOPS Parenting & Patch
Campbell Barton
bf-committers@blender.org
Sat, 05 Jun 2004 00:34:57 +1000
Its an attachment so you should be anle to go and save it from your mail
client??
car wrote:
> Can you zip the file or offer it on a server ? Copy and paste never
> works for me.
>
>
> On Jun 4, 2004, at 4:31 AM, Campbell Barton wrote:
>
>> Hi, Added curved splines to OOPS.
>> This looks nices and I recon is more useable... straight lines all
>> over the place dont indicate very well whats going on... though a lot
>> has to do with how the user sets up things..
>>
>> It works fine bit there are 2 issues.
>> The line glMap1f(GL_MAP1_VERTEX_3, 0.0f, 100.0f, 3,
>> 4,&ctrlPoints[0][0]);
>> Only accepts points with 3 (XYZ) Locations, oops only needs X and Y
>> since its 2D. Couldent find any command that used XY's onle so I have
>> kept glMap1f as is.
>> The other issue is that 100 may be too many steps to make up the
>> spline. Since its only to look nice we might be able to do with ~40.
>> Im not that fussed but sombody may want to change it.
>>
>> The Next think Id like to do is rewrite the shuffle code to take into
>> account parent child hierarchy.
>> - Cam
>>
>> Campbell Barton wrote:
>>
>>> I like the idea of users setting up parent/child stuff with the
>>> mouse, as well as Key Shortcuts. since the key shortcuts allow you
>>> to set up many children at once.
>>>
>>> Im lookin at adding spline curves to the oops view- I think it would
>>> make links more obvious (as to where there going from/to)
>>> Any comments on this?
>>>
>>> - Cam
>>>
>>> Matt Ebb wrote:
>>>
>>>>
>>>> On 4 Jun 2004, at 2:41 AM, Alexander Ewering wrote:
>>>>
>>>>> Sorry, this is probably more appropriate for bf-funboard, but then
>>>>> again,
>>>>> I wasn't the one with the first post :-)
>>>>
>>>>
>>>>
>>>>
>>>> No, incessant whining and flamebait is appropriate neither here nor
>>>> on bf-funboard. It's getting tiresome and distracting. If you've
>>>> got a concrete proposal or a relevant point to make, do it like
>>>> Stephen, succinctly and on-topic.
>>>>
>>>> To try and be somewhat constructive here, well, it looks like
>>>> there's a communication breakdown if two people on this list
>>>> (including Campbell, an experienced professional user and
>>>> developer) are unsure that this feature exists or of how it works.
>>>> Indeed there's nothing in the interface that even suggests it's
>>>> possible. In Shake, you can manipulate the layout of nodes freely,
>>>> and then select them for editing by clicking on a UI control on the
>>>> selected node. (
>>>> http://mke3.net:9000/blender/ui/misc/shake_node_sel.png ) We could
>>>> adopt a similar method for the OOPS window, keeping the
>>>> ctrl-click-to-activate behaviour, too. You know, right-brained
>>>> artists wanting to think visually and all that crazy stuff... Who
>>>> would have thought.
>>>>
>>>> Matt
>>>
>>>
>>>
>>>
>>>
>>
>>
>> --
>> Campbell J Barton
>>
>> 133 Hope Street
>> Geelong West, Victoria 3218 Australia
>>
>> URL: http://www.metavr.com
>> e-mail: cbarton@metavr.com
>> phone: AU (03) 5229 0241
>>
>> Index: source/blender/src/drawoops.c
>> ===================================================================
>> RCS file: /cvsroot/bf-blender/blender/source/blender/src/drawoops.c,v
>> retrieving revision 1.13
>> diff -u -r1.13 drawoops.c
>> --- source/blender/src/drawoops.c 14 Mar 2004 16:59:46 -0000 1.13
>> +++ source/blender/src/drawoops.c 4 Jun 2004 08:11:56 -0000
>> @@ -129,8 +129,13 @@
>> void draw_oopslink(Oops *oops)
>> {
>> OopsLink *ol;
>> - float vec[4];
>> -
>> + float ptA[2];
>> + float ptB[2];
>> + /* All these are used for spline drawing */
>> + int i;
>> + float ctrlPoints[4][3];
>> + glEnable(GL_MAP1_VERTEX_3);
>> +
>> if(oops->type==ID_SCE) {
>> if(oops->flag & SELECT) {
>> if(oops->id->lib) cpack(0x4080A0);
>> @@ -150,11 +155,35 @@
>> while(ol) {
>> if(ol->to && ol->to->hide==0) {
>>
>> - give_oopslink_line(oops, ol, vec, vec+2);
>> + give_oopslink_line(oops, ol, ptA, ptB);
>> +
>> + /* Set up control points for spline */
>> + /* Location ptA*/
>> + ctrlPoints[0][0] = ptA[0];
>> + ctrlPoints[0][1] = ptA[1];
>> + /* Handle ptA*/
>> + ctrlPoints[1][0] = ptA[0];
>> + ctrlPoints[1][1] = (ptA[1] + ptB[1])/2;
>> + /* Handle ptB*/
>> + ctrlPoints[2][0] = ptB[0];
>> + ctrlPoints[2][1] = (ptA[1] + ptB[1])/2;
>> + /* Location ptB*/
>> + ctrlPoints[3][0] = ptB[0];
>> + ctrlPoints[3][1] = ptB[1];
>> +
>> + /*Make 0 only 2D coords needed*/
>> + ctrlPoints[0][2] = 0.0f;
>> + ctrlPoints[1][2] = 0.0f;
>> + ctrlPoints[2][2] = 0.0f;
>> + ctrlPoints[3][2] = 0.0f;
>>
>> + glMap1f(GL_MAP1_VERTEX_3, 0.0f, 100.0f, 3,
>> 4,&ctrlPoints[0][0]);
>> +
>> glBegin(GL_LINE_STRIP);
>> - glVertex2fv(vec);
>> - glVertex2fv(vec+2);
>> + for(i=0;i <=100;i++)
>> + {
>> + glEvalCoord1f((GLfloat) i);
>> + }
>> glEnd();
>> }
>> ol= ol->next;
>
>
> _______________________________________________
> Bf-committers mailing list
> Bf-committers@blender.org
> http://www.blender.org/mailman/listinfo/bf-committers
>
>
--
Campbell J Barton
133 Hope Street
Geelong West, Victoria 3218 Australia
URL: http://www.metavr.com
e-mail: cbarton@metavr.com
phone: AU (03) 5229 0241