Grasshopper

algorithmic modeling for Rhino

Hello  all,


Do it a little while I want to ask the question.

It's a bit subtle, but I have some problems for specific components.

Here, look good image. Why item on the tree simplification does not apply?

In the case of the tree component works perfectly. But for an item, nothing changes.

Why ?

Thanks for all

Views: 6661

Replies to This Discussion

Tree simplification removes those parts that are shared amongst all branches. When you only have a single branch, then nothing can be shared.

--

David Rutten

david@mcneel.com

Tirol, Austria

I know the tree operation in GH.

In a logical tree construction, it would be convenient to have a component that works on the same principle but for single list.

The goal is to be on the typology of the same tree in the case of item.

Do you understand?

I do understand but it is not logically possible. Let's say you have these branches:

{0;0;1}

{0;0;2}

{0;0;3}

If we simplify those we'll end up with:

{1}

{2}

{3}

Now imagine we have these branches:

{0;0;1}

{5;0;1}

{9;0;1}

Applying a simplify operation would result in:

{0}

{5}

{9}

If we only had the first branch in each case they would be the same (to wit, {0;0;1}), what should it reduce to? You can only say which parts of a branch are redundant when you have something to compare it to.

--

David Rutten

david@mcneel.com

Tirol, Austria

A less outlandish example would be the following two trees:

{0;0;0}

{0;0;1}

{0;0;2}

and

{0;0;0}

{0;0;1}

{0;1;0}

Again the first branch is the same in both, but the simplified form of each would be {0} and {0;0} respectively. 

--

David Rutten

david@mcneel.com

Tirol, Austria

For trees that's okay:

{0;0;1}

{5;0;1}

{9;0;1}

=

{0,1}

{5,1}

{9,1}

or

{0;0;0}

{0;0;1}

{0;0;2}

and

{0;0;0}

{0;0;1}

{0;1;0}

=

{0}

{1}

{2}

and

{0;1}

{0;2}

{1;0}

It's ok for me.

But in the simple case of list I produced different operating flow data.
Watch this quick example:

With the same component I generates two different structures that depend on the input, be an item or be a tree.

This poses a huge problem for the verification of input data, rather tedious.

So what is the simple form of {1;5;2} supposed to be?

The problem here either way is consistency. At the moment, it isn't consistent because the first branch in a tree with multiple branches does not simplify the same as that very same branch on its own.

But what you're suggesting isn't any more consistent. There's no way of knowing whether an individual branch that looks like {1;5;2} should be simplified to {1}, {5}, {2}, {1;5}, {1;2}, {5;2} or indeed left intact at {1;5;2}.

I don't see a way around this problem at all because Simplify is a contextual operation. Consider the publication of an addendum to an encyclopedia. An encyclopedia (E1) is published at some point as a large series of books. Then, at a later date a newer version of the encyclopedia (E2) is published which has fewer errors. This poses a problem for owners of the old version as they now have to either spend a lot of money or stick with faulty version. That is why an addendum is published which only contains the changes required to convert E1 into E2.

The way this addendum is constructed is by looking at all the text in E2 and seeing which bits overlap with E1. Those bits are left out. However you could not complete this exercise without having both E1 and E2 available. 

--

David Rutten

david@mcneel.com

Tirol, Austria

We could not in the case of a single branch to simplify the maximum number of 0 in the name of the tree?
For more complex retain the current operating structure...

is the only case:
If length of path structure = 1
Then
If name of path = {(nbre of 0);0}
Then
{0}

Is it 0's that you want removed with this logic e.g.

{0;1;0;0;3} would be come {1;3}

or should the simplified version be {3}

or {1}

Here's the way I see the options mentioned above:

Attachments:

Agree. (Dare i say more).

Dany Sorry,
I do not understand what has serve me your example.

I want to understand why simplify component works differently for a list item or a tree.

Thanks

It is contextual, as David mentioned.  One item has no context, thus, it cannot be compared with anything in order to be simplified.  A tree has context, thus its branches can be compared and simplified if certain redundancies are found.

In your last image, when you combine the two streams in the panel, you have simplified prior to combining the streams, thus each item has no context again, and thus no simplification occurs...

RSS

About

Translate

Search

Videos

  • Add Videos
  • View All

© 2024   Created by Scott Davidson.   Powered by

Badges  |  Report an Issue  |  Terms of Service