Extrusion

I created an Extrusion similar to the Extrusion node in VRML. Those of you who know

i don't know what VRML is could you tell us me how usefull it is? sounds interesting thou.

Virtual Reality Modeling Language - An text-based language that you can define a 3D world within.  It used to be moderately popular, but I don't think it ever really caught on.  It was always too slow in my opinion. :o



darkfrog

alrite i still wanna know about extrusion

Taken from http://web3d.vapourtech.com/tutorials/vrml97/en/tut24.html


Extrusion... takes a 2D cross-section and extrudes it along a path, called a spine

Hehe, an Extrusion is when you extrude things  - now you know Patrick  :lol:



But googling for define:extrusion will help you  :slight_smile:

well i knew that  :D  i'll be really to the point here what does it do.  Does it spilt vertexs and extrudes, what could this be used for besides volumes(shadow,view,ect) this isn't a cad program or a modeling program I missing where it comes in use(besides volumes which is already being put together)

Found some bugs, and updated the zip file.



Extrusion takes a 2D shape and stretches it along a spine

O.K., I guess my previous explanations about extrusion were unclear. Now I have time to write an explanation one can actualy understand:



The extrusions basic elements are the cross section and the spine. The cross section is a set of 2D points that make the vertices of a 2D shape. The spine is a set of 3D points.



Now, what extrusion does is froming a plane for every point in the spine. Each plane's point of origin is it's point in the spine. The orientation of those planes will be discussed later.



On each and every one of those planes, a cross section is drawn. We will call this a joint. Then, a quadrangular is drawn between the corresponding lines in each two following cross sections. So, lets say we have a cross section made out of 3 points - and therefore 3 lines - and we call the lines a,b and c, and we have a spine with 3 points - therefore 3 joints - and we call those joints A,B and C.



line a in joint A is connected in a quadrangular with line a in joint B.

line b in joint A is connected in a quadrangular with line b in joint B.

line c in joint A is connected in a quadrangular with line c in joint B.



line a in joint B is connected in a quadrangular with line a in joint C.

line b in joint B is connected in a quadrangular with line b in joint C.

line c in joint B is connected in a quadrangular with line c in joint C.





Now, the joints are oriented so that the vector vertical to its plane will form the same angle with the two vectors that the joint's point in the spine creates with the next and previous points.(This gives me an idea for making my code more efficient, but I will do it later.)





The original extrusion node in VRML allows you to scale each joints, and to choose if the first and last joint will be covered. My Extrusion also allows you to rotate each joint, and to choose if the cross section will be a close shape or an open shape.

Your explanation of how it works is clear…  but can you give some practical examples of why and where you'd use it? 

While hand modelling in VRML, I used extrusions for almost everything.



I even built up something like this:



Ugly, I know, but it is made entirely by extrusions.





I programmed that class because I like to hand model. I like hand modeling because I don’t want to read the blender manual. So, yea, to avoid doing some work, I am doing even more work. Go figure…