[x3d-public] Extrusions, take 3

Leonard Daly Leonard.Daly at realism.com
Wed Jan 27 08:09:44 PST 2016


Doug & John,

Can you guys write up a description for this proposed node so that it 
can be considered for inclusion.


Leonard Daly


>
> I've done node graphs before -carbon molecules in 2D, with spline 
> bonds, and node positions adjusted dynamically by least squares- but 
> not in x3d.
> But someone must have done a node graph in x3d.
> I think the use of 2-point cylinder extrusion for this is appropriate.
> Doing it with a transform hierarchy on a regular cylinder sounds 
> awkward. I would need a clever little script for that.
> I think H-Anim and RigidBodyPhysics also have some 
> non-transform-hierarchy ways of positioning/orienting things, but 
> that's a lot of extra stuff to do something so basic.
> Maybe there should be a Node just for 2 point orienting, positioning 
> and stretching.
> x3dconnector {
> startpoint in SFVec3f
> endpoint in SFVec3f
> children inout MFNode
> }
> -Doug
>
> ------------------------------------------------------------------------
> *From:* x3d-public <x3d-public-bounces at web3d.org> on behalf of John 
> Carlson <yottzumm at gmail.com>
> *Sent:* January 27, 2016 5:11 AM
> *To:* Leonard Daly; X3D Graphics public mailing list
> *Subject:* Re: [x3d-public] Extrusions, take 3
> Let me guess, there’s some IP that’s preventing us from doing that? 
>  Like the dreaded Geo-Vector?
>
> John
>> On Jan 27, 2016, at 7:04 AM, John Carlson <yottzumm at gmail.com 
>> <mailto:yottzumm at gmail.com>> wrote:
>>
>> I guess what I am trying to say is, even though you can specify a 
>> cylinder with a central point, a height and a radius, it’s much more 
>> convenient to do it with 2 points and a radius.  If you need a 
>> height, you can subtract and take the normal, whereas getting the 
>> second point with a height is very problematic except in one 
>> direction.  Does anyone disagree?
>>
>>
>>> On Jan 27, 2016, at 12:53 AM, John Carlson <yottzumm at gmail.com 
>>> <mailto:yottzumm at gmail.com>> wrote:
>>>
>>> So if one has to take a line segment and transform it to another 
>>> line segment in space, what’s the typical algorithm to do that?  I 
>>> probably used to know this.  I was trying to work it out again a 
>>> while back.
>>> Do the new declarative nodes in V4+ support this?  Or the old nodes 
>>> in V3?  Or does one need a script?  Is there a node with a linear 
>>> transform defined by 12 numbers (4 SFVec3f)?  Could there be?
>>> 2 PositionInterpolators?  Then how does that become a transform?
>>>
>>> Thanks,
>>>
>>> John
>>>
>>>> On Jan 27, 2016, at 12:33 AM, John Carlson <yottzumm at gmail.com 
>>>> <mailto:yottzumm at gmail.com>> wrote:
>>>>
>>>> Better yet, define a script which takes two endpoints on a 
>>>> geometry, then transform the two endpoints (and thus the geometry) 
>>>> with the script.  Hm.  I might be able to do this myself.  Hmm.
>>>> Sound more possible with Cylinders defined by X3D now.  Took me 
>>>> long enough.
>>>>
>>>> John
>>>>> On Jan 27, 2016, at 12:26 AM, John Carlson <yottzumm at gmail.com 
>>>>> <mailto:yottzumm at gmail.com>> wrote:
>>>>>
>>>>> I just realized the code was online here:
>>>>>
>>>>> https://github.com/coderextreme/X3DJSONLD/blob/master/force.x3dhttps://github.com/coderextreme/X3DJSONLD/blob/master/force.x3d
>>>>>
>>>>> (click raw)
>>>>>
>>>>> Here’s the challenge.  Define an IFS by two endpoints, and then 
>>>>> move those endpoints around with minimal scripting (Declarative 3D).
>>>>>
>>>>> John
>>>>>> On Jan 26, 2016, at 11:45 PM, John Carlson <yottzumm at gmail.com 
>>>>>> <mailto:yottzumm at gmail.com>> wrote:
>>>>>>
>>>>>> I am not "modeling" I am doing declarative 3d as much as possible 
>>>>>> and scripting the rest.  Thus I am creating protos for edges and 
>>>>>> nodes of a 3D graph.  I currently use ROUTES to link the edges 
>>>>>> (cylinders/extrusions) to the nodes (spheres).   I am using 
>>>>>> position interpolators to animate the nodes, and routes to update 
>>>>>> the spline of the edges.  I do not understand how to use 
>>>>>> Cylinders as defined by X3D in this way so I use extrusions. If 
>>>>>> you can suggest a way to implement a 3D graph without extrusions, 
>>>>>> I would be welcome to hear it.  I can provide source code if you 
>>>>>> like.  I have posted force.x3d here, or you can look at 
>>>>>> force.json in https://github.com/coderextreme/X3DJSONLD/
>>>>>>
>>>>>> On Jan 26, 2016 11:27 PM, "Leonard Daly" 
>>>>>> <Leonard.Daly at realism.com <mailto:Leonard.Daly at realism.com>> wrote:
>>>>>>
>>>>>>     On 1/26/2016 5:21 PM, John Carlson wrote:
>>>>>>>     All I would really like to see is an easy way to define Cylinder with 2 endpoints and a radius.  If that is provided, I have no problem with deprecating Extrusion from the standard.
>>>>>>>     I do not think defining a Cylinder in this way would be onerous to a run-time, but I could be wrong.  If someone could provide an example of a Cylinder like this, it would be great!
>>>>>>
>>>>>>     John,
>>>>>>
>>>>>>     You using Extrusion to define a cylinder with known
>>>>>>     endpoints, as opposed to using a Transform {Shape {Cylinder}}
>>>>>>     to do that based on the center point and height then rotated
>>>>>>     & translated into place.
>>>>>>
>>>>>>     I gather you are doing your modeling by hand in a text or xml
>>>>>>     editor (like X3D-Edit). There is almost no commercial
>>>>>>     modeling-by-hand. I do not know of any professional or
>>>>>>     amateur modeler creating commercial quality models working
>>>>>>     that way. I think you will find a tool like Blender solves a
>>>>>>     lot of your modeling issues.
>>>>>>
>>>>>>
>>>>>>     Leonard Daly
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>     John
>>>>>>>>     On Jan 26, 2016, at 8:13 PM, John Carlson<yottzumm at gmail.com> <mailto:yottzumm at gmail.com>  wrote:
>>>>>>>>
>>>>>>>>     Uh, I asked for an IndexedFaceSet.  Thanks, though.
>>>>>>>>
>>>>>>>>     John
>>>>>>>>>     On Jan 26, 2016, at 8:11 PM, doug sanden<highaspirations at hotmail.com>
>>>>>>>>>     <mailto:highaspirations at hotmail.com>  wrote:
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>     http://dug9.users.sourceforge.net/web3d/tests/41.x3d
>>>>>>>>>
>>>>>>>>>     snake animation animating extrusion spine
>>>>>>>>>
>>>>>>>>>     From: x3d-public [x3d-public-bounces at web3d.org
>>>>>>>>>     <mailto:x3d-public-bounces at web3d.org>] on behalf of John Carlson [yottzumm at gmail.com <mailto:yottzumm at gmail.com>]
>>>>>>>>>     Sent: January 26, 2016 6:04 PM
>>>>>>>>>     To: Leonard Daly
>>>>>>>>>     Cc:x3d-public at web3d.org <mailto:x3d-public at web3d.org>
>>>>>>>>>     Subject: Re: [x3d-public] Extrusions, take 3
>>>>>>>>>
>>>>>>>>>     Maybe just show an example of an IndexedFaceSet which is an extrusion of a circle with 3 spline points, with the “bend” animated from 90 to 180 degrees.
>>>>>>>>>
>>>>>>>>>     It’s okay to use Blender or Maya, I’d just like to see what the results look like.
>>>>>>>>>
>>>>>>>>>     John
>>>>>>>>>     On Jan 26, 2016, at 8:01 PM, John Carlson <yottzumm at gmail.com
>>>>>>>>>     <mailto:yottzumm at gmail.com><mailto:yottzumm at gmail.com>
>>>>>>>>>     <mailto:yottzumm at gmail.com>> wrote:
>>>>>>>>>
>>>>>>>>>     So how do you propose to animate IndexedFaceSets in a declarative or VRMLscript or JavaScript manner if they are Extrusions?  Can we see an example?  If the developer has to do it, can we help them?
>>>>>>>>>
>>>>>>>>>     John
>>>>>>>>>     On Jan 26, 2016, at 6:58 PM, Leonard Daly <Leonard.Daly at realism.com
>>>>>>>>>     <mailto:Leonard.Daly at realism.com><mailto:Leonard.Daly at realism.com>
>>>>>>>>>     <mailto:Leonard.Daly at realism.com>> wrote:
>>>>>>>>>
>>>>>>>>>     On 1/26/2016 3:21 PM, John Carlson wrote:
>>>>>>>>>     Leonard, I think you forget that Extrusion splines etc. can be animated.  If Maya can export an Extrusion animation to X3D V4.0 and your new elements can handle animation of it, I think we are fine.
>>>>>>>>>
>>>>>>>>>     In Maya and Blender, extrusions are converted to IndexedFaceSets. These can be animated through the usual mechanisms in those applications. The results are typically stored in a FBX file. Unfortunately, the FBX format is not open and not too conducive to importing in a browser. Autodesk provides a C++ and Python API for accessing the file.
>>>>>>>>>
>>>>>>>>>     Extrusions are just a convenience node for creating a constrained IndexedFaceSet. I am working on exactly how X3D fits in the process chain from modeling tools to display. The goal is that X3D is an declarative archivable format that has a browser-based run time. The goal is to not reduce the display capability of X3D in that chain; however, not all of the functionality of X3D V3.3 is necessary to remain in the node definitions to make that happen.
>>>>>>>>>
>>>>>>>>>     Animation of the spline and cross-sections of an extrusion is much easier for the developer, but puts a much greater load on the run-time as it needs to re-triangulate the result on each animation.
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>     Leonard Daly
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>     John
>>>>>>>>>     On Jan 26, 2016, at 1:47 PM, Leonard Daly <<mailto:Leonard.Daly at realism.com>
>>>>>>>>>     <mailto:Leonard.Daly at realism.com>Leonard.Daly at realism.com
>>>>>>>>>     <mailto:Leonard.Daly at realism.com><mailto:Leonard.Daly at realism.com>
>>>>>>>>>     <mailto:Leonard.Daly at realism.com>> wrote:
>>>>>>>>>
>>>>>>>>>     I would like to ask the question very differently. My question is not to ignore the importance of getting the definition correct for X3D <= V3.3.
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>     Most (>95%) 3D modeling is done with a tool. In non-CAD environment, the tools is almost certainly Maya or Blender. Both of those tools have extrusions built in to their interface. I imagine CAD tools are similar. With so many tools providing graphical extrusion editors, and some of the tools being open-source (at least Blender);
>>>>>>>>>
>>>>>>>>>     Do we need an extrusion node in V4 to support content developed for V4+?
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>     Leonard Daly
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>     On 1/26/2016 7:15 AM, Alekseyev, Vsevolod (NIH/NIAID) [E] wrote:
>>>>>>>>>     Hi X3D community,
>>>>>>>>>
>>>>>>>>>     I've tried and failed twice to explain the problems with the definition of the Extrusion node. So here's a tl;dr version:
>>>>>>>>>
>>>>>>>>>     Dear authors of the X3D standard, please take a careful look at the standard and answer me:
>>>>>>>>>
>>>>>>>>>     1) When the spine goes (0,0,0)-(0,-1,0), what is the CSP?
>>>>>>>>>     Note: all answers but one will render one of the reference models in the Savage archive invalid.
>>>>>>>>>
>>>>>>>>>     2) When the spine goes (0,0,0)-(0,1,0)-(0,0,0), what is the CSP?
>>>>>>>>>
>>>>>>>>>     3) When the spine goes (0,0,0)-(1,1,0)-(1,1,0)-(1,1,0)-(2,0,0), what is the CSP for the three middle points?
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>     _______________________________________________
>>>>>>>>>     x3d-public mailing list
>>>>>>>>>     x3d-public at web3d.org
>>>>>>>>>     <mailto:x3d-public at web3d.org><mailto:x3d-public at web3d.org>
>>>>>>>>>     <mailto:x3d-public at web3d.org>
>>>>>>>>>     http://web3d.org/mailman/listinfo/x3d-public_web3d.org
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>     --
>>>>>>>>>     Leonard Daly
>>>>>>>>>     3D Systems & Cloud Consultant
>>>>>>>>>     X3D Co-Chair on Sabbatical
>>>>>>>>>     LA ACM SIGGRAPH Chair
>>>>>>>>>     President, Daly Realism - Creating the Future
>>>>>>>>>     _______________________________________________
>>>>>>>>>     x3d-public mailing list
>>>>>>>>>     x3d-public at web3d.org
>>>>>>>>>     <mailto:x3d-public at web3d.org><mailto:x3d-public at web3d.org>
>>>>>>>>>     <mailto:x3d-public at web3d.org>
>>>>>>>>>     http://web3d.org/mailman/listinfo/x3d-public_web3d.org
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>     _______________________________________________
>>>>>>>>>     x3d-public mailing list
>>>>>>>>>     x3d-public at web3d.org
>>>>>>>>>     <mailto:x3d-public at web3d.org><mailto:x3d-public at web3d.org>
>>>>>>>>>     <mailto:x3d-public at web3d.org>
>>>>>>>>>     http://web3d.org/mailman/listinfo/x3d-public_web3d.org
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>     --
>>>>>>>>>     Leonard Daly
>>>>>>>>>     3D Systems & Cloud Consultant
>>>>>>>>>     X3D Co-Chair on Sabbatical
>>>>>>>>>     LA ACM SIGGRAPH Chair
>>>>>>>>>     President, Daly Realism - Creating the Future
>>>>>>>>>     _______________________________________________
>>>>>>>>>     x3d-public mailing list
>>>>>>>>>     x3d-public at web3d.org
>>>>>>>>>     <mailto:x3d-public at web3d.org><mailto:x3d-public at web3d.org>
>>>>>>>>>     <mailto:x3d-public at web3d.org>
>>>>>>>>>     http://web3d.org/mailman/listinfo/x3d-public_web3d.org
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>     _______________________________________________
>>>>>>>>>     x3d-public mailing list
>>>>>>>>>     x3d-public at web3d.org <mailto:x3d-public at web3d.org>
>>>>>>>>>     http://web3d.org/mailman/listinfo/x3d-public_web3d.org
>>>>>>
>>>>>>
>>>>>>     -- 
>>>>>>     *Leonard Daly*
>>>>>>     3D Systems & Cloud Consultant
>>>>>>     X3D Co-Chair on Sabbatical
>>>>>>     LA ACM SIGGRAPH Chair
>>>>>>     President, Daly Realism - /Creating the Future/
>>>>>>
>>>>>
>>>>
>>>
>>
>
>
>
> _______________________________________________
> x3d-public mailing list
> x3d-public at web3d.org
> http://web3d.org/mailman/listinfo/x3d-public_web3d.org


-- 
*Leonard Daly*
3D Systems & Cloud Consultant
X3D Co-Chair on Sabbatical
LA ACM SIGGRAPH Chair
President, Daly Realism - /Creating the Future/
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://web3d.org/pipermail/x3d-public_web3d.org/attachments/20160127/42fd29e1/attachment-0001.html>


More information about the x3d-public mailing list