9

Click here to load reader

Cross Reference; What is It, How Does It Work, Why Would I Need It

Embed Size (px)

Citation preview

Page 1: Cross Reference; What is It, How Does It Work, Why Would I Need It

25/4/2014 Cross Reference; what is it, how does it work, why would I need it? - Grasshopper

http://www.grasshopper3d.com/forum/topics/cross-reference-what-is-it-how-does-it-work-why-would-i-need-it?id=2985220%3ATopic%3A650277&page=1… 1/12

Search Grasshopper Search

massimilianoSign Out

Grasshopper

algorithmic modeling for Rhino

HomeGalleriesDownloadTutorialsDiscussionsEvents

My Page

All DiscussionsMy DiscussionsAdd

Cross Reference; what is it, how does it work, whywould I need it?

Posted by David Rutten on August 1, 2012 at 4:31pm in FAQ (Frequent Questions and Problems)Send Message View Discussions

As of Grasshopper 0.9 components no longer offer a Cross Reference option in their pop-up menus. This feature was

removed because I felt it was not flexible enough. Now, you can achieve Cross Reference matching with a dedicatedcomponent which creates combinations of items. You can find the [Cross Reference] component in the Sets.List panel.

When Grasshopper iterates over lists of items, it will match the first item in list A with the first item in list B. Then the seconditem in list A with the second item in list B and so on and so forth. Sometimes however you want all items in list A to combine

with all items in list B, the [Cross Reference] component allows you to do this.

Page 2: Cross Reference; What is It, How Does It Work, Why Would I Need It

25/4/2014 Cross Reference; what is it, how does it work, why would I need it? - Grasshopper

http://www.grasshopper3d.com/forum/topics/cross-reference-what-is-it-how-does-it-work-why-would-i-need-it?id=2985220%3ATopic%3A650277&page=1… 2/12

Here we have two input lists {A,B,C} and {X,Y,Z}. Normally Grasshopper would iterate over these lists and only consider

the combinations {A,X}, {B,Y} and {C,Z}. There are however six more combinations that are not typically considered, towit: {A,Y}, {A,Z}, {B,X}, {B,Z}, {C,X} and {C,Y}. As you can see the output of the [Cross Reference] component issuch that all nine permutations are indeed present.

We can denote the behaviour of data cross referencing using a table. The rows represent the first list of items, the columns thesecond. If we create all possible permutations, the table will have a dot in every single cell, as every cell represents a uniquecombination of two source list indices:

Sometimes however you don't want all possible permutations. Sometimes you wish to exclude certain areas because theywould result in meaningless or invalid computations. A common exclusion principle is to ignore all cells that are on the diagonalof the table. The image above shows a 'holistic' matching, whereas the 'diagonal' option (available from the [Cross Reference]component menu) has gaps for {0,0}, {1,1}, {2,2} and {3,3}:

If we apply this to our {A,B,C}, {X,Y,Z} example, we should expect to not see the combinations for {A,X}, {B,Y} and{C,Z}:

The rule that is applied to 'diagonal' matching is: "Skip all permutations where all items have the same list index" .'Coincident' matching is the same as 'diagonal' matching in the case of two input lists which is why I won't show an example ofit here (since we are only dealing with 2-list examples), but the rule is subtly different: "Skip all permutations where any twoitems have the same list index".

The four remaining matching algorithms are all variations on the same theme. 'Lower triangle' matching applies the rule: "Skipall permutations where the index of an item is less than the index of the item in the next list" , resulting in an emptytriangle but with items on the diagonal.

Page 3: Cross Reference; What is It, How Does It Work, Why Would I Need It

25/4/2014 Cross Reference; what is it, how does it work, why would I need it? - Grasshopper

http://www.grasshopper3d.com/forum/topics/cross-reference-what-is-it-how-does-it-work-why-would-i-need-it?id=2985220%3ATopic%3A650277&page=1… 3/12

'Lower triangle (strict)' matching goes one step further and also eliminates the items on the diagonal:

'Upper Triangle' and 'Upper Triangle (strict)' are mirror images of the previous two algorithms, resulting in empty triangles onthe other side of the diagonal line:

Tags: Coincident, Cross Reference, Diagonal, Holistic, Lower, Matching, Strict, Triangle, Upper

Share Twitter Facebook Facebook

Views: 10549

▼ Reply to This

Page 4: Cross Reference; What is It, How Does It Work, Why Would I Need It

25/4/2014 Cross Reference; what is it, how does it work, why would I need it? - Grasshopper

http://www.grasshopper3d.com/forum/topics/cross-reference-what-is-it-how-does-it-work-why-would-i-need-it?id=2985220%3ATopic%3A650277&page=1… 4/12

Upload Files

Follow – Email me when people reply

Add Reply

Replies to This Discussion

Permalink Reply by Ángel Linares on August 1, 2012 at 5:18pm

The component looks amazing. Nice idea implementing all this functions and different combinations :)

▶ Reply

Permalink Reply by Yasser Hafizs on August 2, 2012 at 10:30am

Awesome, Thanks David.

How about this feature? I've seen before in the forum, did this feature available too?

▶ Reply

Page 5: Cross Reference; What is It, How Does It Work, Why Would I Need It

25/4/2014 Cross Reference; what is it, how does it work, why would I need it? - Grasshopper

http://www.grasshopper3d.com/forum/topics/cross-reference-what-is-it-how-does-it-work-why-would-i-need-it?id=2985220%3ATopic%3A650277&page=1… 5/12

Permalink Reply by David Rutten on August 2, 2012 at 12:57pm

Hi Yasser,

not like that, at least not yet. You can enter paths into a parameter Set Multiple... item:

--

David Rutten

[email protected]

Poprad, Slovakia

▶ Reply

Message

Page 6: Cross Reference; What is It, How Does It Work, Why Would I Need It

25/4/2014 Cross Reference; what is it, how does it work, why would I need it? - Grasshopper

http://www.grasshopper3d.com/forum/topics/cross-reference-what-is-it-how-does-it-work-why-would-i-need-it?id=2985220%3ATopic%3A650277&page=1… 6/12

Permalink Reply by Yasser Hafizs on August 3, 2012 at 7:35am

I see. Thank you

▶ Reply

Permalink Reply by Diego Porr on August 3, 2012 at 11:52am

Hi David, i hope you can answer me this question...

How could you use this component to make this combination: AX, AY, AZ, BX, BY, BZ, CX, CY, CZ?

▶ Reply

Permalink Reply by Garcia del Castillo on August 3, 2012 at 12:42pm

Remember to plug the graft at output B first.

Page 7: Cross Reference; What is It, How Does It Work, Why Would I Need It

25/4/2014 Cross Reference; what is it, how does it work, why would I need it? - Grasshopper

http://www.grasshopper3d.com/forum/topics/cross-reference-what-is-it-how-does-it-work-why-would-i-need-it?id=2985220%3ATopic%3A650277&page=1… 7/12

▶ Reply

Permalink Reply by Garcia del Castillo on August 3, 2012 at 12:43pm

PNG transparency not working properly?

▶ Reply

Permalink Reply by Danny Boyes on August 3, 2012 at 12:44pm

That's the same as the first example Holistic

▶ Reply

Permalink Reply by Danny Boyes on August 3, 2012 at 4:07pm

An alternative to String Join is Concatenate

Page 8: Cross Reference; What is It, How Does It Work, Why Would I Need It

25/4/2014 Cross Reference; what is it, how does it work, why would I need it? - Grasshopper

http://www.grasshopper3d.com/forum/topics/cross-reference-what-is-it-how-does-it-work-why-would-i-need-it?id=2985220%3ATopic%3A650277&page=1… 8/12

▶ Reply

Permalink Reply by Diego Porr on August 4, 2012 at 9:46am

I wanted to create a dot matrix which in the past Grasshopper version was too easy by clicking 'cross reference' on

component's pop-up menu. I finally used f(x,y)= x+y with A and B outputs of cross reference component. Thank somuch for your help guys.

▶ Reply

Permalink Reply by Lucybell on September 20, 2012 at 7:05pm

Hi! David.

I have a problem, I want to build a surface from points generated by the parametric form but using cross references for

every single parametric function, only describing the edge.

how I can fix that?

Thanks for help me

Lucibell

▶ Reply

Page 9: Cross Reference; What is It, How Does It Work, Why Would I Need It

25/4/2014 Cross Reference; what is it, how does it work, why would I need it? - Grasshopper

http://www.grasshopper3d.com/forum/topics/cross-reference-what-is-it-how-does-it-work-why-would-i-need-it?id=2985220%3ATopic%3A650277&page=1… 9/12

Permalink Reply by David Rutten on September 21, 2012 at 2:16am

Hi Lucybell,

I think it's better if you post on the main forum and attach the file so people can see what you've got. More people willsee it over there.

--

David Rutten

[email protected]

Poprad, Slovakia

▶ Reply

Message

‹ Previous12Next ›

Page 2 Go

RSS

massimiliano

Sign Out

Inbox

AlertsFriends – Invite

Settings

New Invites

4 Group Invites

Translate

Select Language

Pow ered by Translate

Search Grasshopper

Search

Photos