IPB
AM:Stills * AM:Films

Welcome Guest ( Log In | Register )

 
Reply to this topicStart new topic
> Zpline2Zpline, Yet another plugin possibility?
Rodney
post Feb 26 2004, 06:51 PM
Post #1


Animation:Journeyman
**********

Group: Admin
Posts: 13,828
Joined: 11-November 03
From: Japan
Member No.: 1,010



Marcel, (or other enlightened plugin guru)

Edited into more basic explination wink.gif

I'm wondering if there is anyway to automate the process of joining two splines which have a point in common that occupy the same coordinate (or are within a given distance of each other).

In other words where they cross in 3D space they would be automatically connected creating two new CPs in the process. This versus manually creating a CP along the spline and stitching it into the other spline.

Consider the following:
Figure 1 - Two splines when connected at one point (center in this illustration) consist of 6 CPs. CPs 5 and 6 share the same coordinate.


Question if these two splines were not connected at the center (CPs 5 and 6), can we write code to connect the two splines at their intersection and *create* CPs 5 and 6?

Why you ask?

This is the first *important* step in a much larger process.
Baby steps... baby steps... baby steps...

Coders?


--------------------
"The audience is the last character in the story and you have to make a place for them."
Want to learn A:M? Start TaoA:M
Go to the top of the page
 
+Quote Post
ypoissant
post Feb 27 2004, 05:34 AM
Post #2


Master
**********

Group: Hash Fellow
Posts: 2,499
Joined: 18-September 03
From: Québec city, Québec, Canada
Member No.: 70
Programmer: Yes
Contests Won:*



Well, consider this:
  • Time required to code a plugin that would join 2 CPs given the requirements: 2 weeks
  • Time required to join the two CPs by hand: 0.5 second
The end result would have to be much, much more exciting to entice a programmer to work on such a plugin.


--------------------
Yves Poissant
www.ypoart.com

"In theory, there is no difference between theory and practice. But in practice, there is." -- Jan L. A. van de Snepscheut
Go to the top of the page
 
+Quote Post
Rodney
post Feb 27 2004, 08:12 AM
Post #3


Animation:Journeyman
**********

Group: Admin
Posts: 13,828
Joined: 11-November 03
From: Japan
Member No.: 1,010



Yves,

Saw your discussion, on same subject of plugin feasibility and agree whole-heartedly.

It certainly would be FAR BETTER to just CLICK TWICE to join the two splines laugh.gif
I don't suggest a plugin for that...

However to make a plugin, or add additional functionality to the AI wizard, to enter the next level of integration between A:M and vector based 2D graphics programs (Illustrator, Flash, etc.) this basic problem must be solved.

You say the code could be written in two weeks... that is truly good news!
But that is just the first step... Now we would have solve the same problem for every spline in the model.

As I see it what would be the the basic process of the code would be:

- Compare the path of each spline in a given model (one at a time) with the path of every other spline in that same model.
- Each time a common point along the two paths of the two splines is found create one CP on the first spline and one CP on the second spline at that intersection (point). Lastly, for this set of 2 splines, join the two splines at the intersection.
-Repeat for all splines in the model.

Assisting in this step of the process is the fact that ALL splines are located in a plane. Therefore only two dimensions need be examined.

Note: This could be expanded to the third dimension but, as of yet, we have not considered what would have to be adjusted in the input file to account for the 3rd dimension (Depth). Possible approaches would be to use either layers or colors to determine the depth.

Too complicated? I don't know but the results (in my opinion) could yield to revolutionary options in integration of vector based applications and A:M.

Clear as Mud?
I'm revealing my ignorance in the matter. Sadly, I do not know how to program.
As I find time I hope to learn more about programming so I can ask appropriate questions.

With the code to Howard Trickey's AI Wizard already known I'm confident that it is no great leap of faith to move toward the next level.

A, perhaps easier approach in the short term, might be to examine the problem from the 2D application's side of the equation.

If we create our lines (splines) in Illustrator already connected, they will import into A:M as desired; connected. This we can alredy do today.

One reason to do it in A:M though is because there is more to be gained, in the long run via that process. Imagine the ability to copy and paste your splines back and forth between A:M and any vector based application. blink.gif huh.gif unsure.gif

From simple beginnings... to not so simple exSPLINEations wink.gif

If you get through all this without telling me I'm crazy I will be impressed. wink.gif
Where's Howard Trickey when you need him... laugh.gif

Of course, Howard is always free to call me crazy as well!

Thanks for listening, Yves!


--------------------
"The audience is the last character in the story and you have to make a place for them."
Want to learn A:M? Start TaoA:M
Go to the top of the page
 
+Quote Post
Rodney
post Aug 9 2004, 12:56 AM
Post #4


Animation:Journeyman
**********

Group: Admin
Posts: 13,828
Joined: 11-November 03
From: Japan
Member No.: 1,010



Steffen Gross just notified me of his progress with an auto-connect plugin. smile.gif
Not sure how much info he wants out on the street while still working through any issues but I wanted to say....

AWESOME work Steffen!!!
I've done a few basic tests and the plugin works well with basic splines created internally in A:M and externally with CorelDraw.

Now I have to go back and resurrect the ideas that make such a tool useful.
I know I left that info around here somewhere....

Thanks again Steffen!


--------------------
"The audience is the last character in the story and you have to make a place for them."
Want to learn A:M? Start TaoA:M
Go to the top of the page
 
+Quote Post
Rodney
post Aug 9 2004, 05:47 PM
Post #5


Animation:Journeyman
**********

Group: Admin
Posts: 13,828
Joined: 11-November 03
From: Japan
Member No.: 1,010



Probably should find a better place to post this but seems like it goes here...



What you are seeing...

- 10 splines laid out in a grid. 5 horizontal/5 vertical
- Invoke the CONNECT SPLINES plugin (by Steffen Gross)
- Adjust tolerance as needed (not changed from default in this test)
- 16 legitimate patches formed when 50 CPs are created attached at 25 intersection points

Note: This test was laid out in a plane but it works throughout 3D space
**And yes... I know it is much more easy to just use the grid wizard! wink.gif
Go to the top of the page
 
+Quote Post
KenH
post Aug 10 2004, 02:29 AM
Post #6


Blind Lord of all he sees.
**********

Group: Film
Posts: 13,661
Joined: 21-September 03
From: Dublin,Ireland
Member No.: 278
Contests Won:***(mascot)



I could see something like that saving a bit of time over a whole model. Maybe Hash will implement it Rodney smile.gif Send it in to them and see.

Have you thought how it would work with curved(in 3d) splines? How would you line up the splines so they are exactly passing through one another?


--------------------
Vista Home Premium 64 bit/AM v15/ATI Radeon HD3870/8Gb 800mhz DDR2 RAM/e8400 Processor
My AM Goodies Store
My T.W.O models
Get your AM problems fixed at AM:Reports
Go to the top of the page
 
+Quote Post
Rodney
post Aug 10 2004, 09:02 AM
Post #7


Animation:Journeyman
**********

Group: Admin
Posts: 13,828
Joined: 11-November 03
From: Japan
Member No.: 1,010



Ken,

Curved lines work just as well as straight.
You can run into problems occasionally if the plugin doesn't know how to interpret where to create a CP. The tolerance setting is also useful if you are drawing splines and don't care to connect them via stiching as you go.

As far as lining up... all you have to do is have lines interesect in any plane in 3D space. Steffen's plugin runs through each and every spline to determine where they interesect. The process can take quite a while if you have a lot of splines.


--------------------
"The audience is the last character in the story and you have to make a place for them."
Want to learn A:M? Start TaoA:M
Go to the top of the page
 
+Quote Post
yoda64
post Aug 10 2004, 10:21 AM
Post #8


Master
**********

Group: Hash Fellow
Posts: 575
Joined: 20-September 03
From: Goeppingen,Germany
Member No.: 218
Programmer: Yes



When everyone would test this plugin , you can download
it here. Use it at your own risk :-), it's free ...
There is only one parameter that can be changed by the user , the maximal distance
between two splines at which they will be connectet . For most cases the default value is good enough . If the plugins find splines they are crossing , but the distance is higher than the default value , you can show the needed maximal distance when the plugin finished in a dialogbox.

One thing , where I'm not sure if I should implement this , is recreation the splinecurvature after connecting two splines . The plugin changes this , because the intersection can be at any point one the spline between two cp's . But the problem is , that the values for the biashandles can be very high , when I do this
For example (the upper 3 splines are the orginal splines)



Kind Regards
Steffen


--------------------
Kind Regards
Steffen

http://www.sgross.com/plugins/
Go to the top of the page
 
+Quote Post
Rodney
post Aug 10 2004, 07:39 PM
Post #9


Animation:Journeyman
**********

Group: Admin
Posts: 13,828
Joined: 11-November 03
From: Japan
Member No.: 1,010



Folks,
This plugin is useful if for no other reason than to use as an addition to the stitch feature already available in A:M.

It can do a lot more than just augment stitch though! I'm 'spirimentin' to find out more. smile.gif


--------------------
"The audience is the last character in the story and you have to make a place for them."
Want to learn A:M? Start TaoA:M
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 User(s) are reading this topic (1 Guests and 0 Anonymous Users)
0 Members:

 



- Lo-Fi Version Time is now: 2nd September 2010 - 06:19 AM