Grasshopper

algorithmic modeling for Rhino

# Data Matching Explained

Data matching is a problem without a clean solution. It occurs when a component has access to differently sized inputs. Imagine a component which creates line segments between points. It will have two input parameters which both supply point coordinates (Stream A and Stream B). It is irrelevant where these parameters collect their data from, a component cannot "see" beyond its in- and output parameters:

As you can see there are different ways in which we can draw lines between these sets of points. The Grasshopper plugin currently supports three matching algorithms, but many more are possible. The simplest way is to connect the inputs one-on-one until one of the streams runs dry. This is called the "Shortest List" algorithm:

the "Longest List" algorithm keeps connecting inputs until all streams run dry, this is the default behaviour for components:

Finally, the "Cross Reference" method makes all possible connections:

This is potentially dangerous since the amount of output can be humongous. The problem becomes more intricate as more input parameters are involved and when the volatile data inheritance starts to multiply data, but the logic remains the same.

Imagine we have a point component which inherits its x, y and z values from remote parameters which contain the following data:

X coordinate: {0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0}

Y coordinate: {0.0, 1.0, 2.0, 3.0, 4.0}

Z coordinate: {0.0, 1.0}

If we combine this data in the "Shortest List" fashion, we get only two points since the "Z coordinate" contains only two values. Since this is the shortest list it defines the extent of the solution:

The "Longest List" algorithm will create ten points, recycling the highest possible values of the Y and Z streams:

"Cross Reference" will connect all values in X with all values in Y and Z, thus resulting in 10×5×2 = a hundred points:

Every component can be set to obey one of these rules (the setting is available in the menu).

Note the one big exception to this behaviour. Some components EXPECT to get a list of data in one or more of their input fields. The polyline component for example creates a polyline curve through an array of input points. More points in the input parameter will result in a longer polyline, not in more polylines. Input parameters which are expected to yield more than one value are called List Parameters and they are ignored during data matching.

For sample files, go here...

Views: 6460

Comment

Comment by coca mary on November 4, 2021 at 3:01am

You have some interesting points in this article. I would never have reviewed any of this if I hadn't come across this. Thanks!.

among us 2

Comment by Rose Watson on May 9, 2021 at 8:35pm

It's in reality a great and helpful piece of info. I am glad that you just shared this useful info with us. Please stay us up to date like this. Thank you for sharing. Stickman Hook

Comment by les chrapid on January 17, 2021 at 9:07pm

I really like your content because it is very informative and knowledgeable content. 1v1 lol slope unblocked Nice.That a really interesting topic. I really thankful to you for this useful and informative blog post and really appreciated you keep blogging.

Comment by AmelieAtkins on June 27, 2020 at 5:04am

Online-Flash-pelit ovat aina houkutelleet minua. Tämän välineen avulla miss midas pelata suosikkipeliäni latamatta sitä. Voin pelata näitä pelejä suoraan selaimesta lisäämättä liian paljon taakkaa tallennustilaan.

Comment by Talia Monfore on March 29, 2020 at 11:47pm

Shortest line algorithm is a best way to draw a line between two points. Data matching is a big problem as it is very difficult to arrange all the information in a specific sequence without getting essay have services online. Grasshopers make my work easy.

Comment by Lisa4 on December 30, 2019 at 12:16am

A minute he bewildered, a minute I dreamed
Do not rush to make the rain fill my heart
To forget the heart, to the constant pain
Droplets of sad drops dropped on the soft, wet lashes.
We sobbed to look at each other, making an appointment for the next day
Be together forever, my love
For your own sake, because I love you
Early morning for each other the first ray of sunshine.

A minute he bewildered, a minute I dreamed
Do not rush to make the rain fill my heart
To forget the heart, to the constant pain
Droplets of sad drops dropped on the soft, wet lashes.
We sobbed to look at each other, making an appointment for the next day
Be together forever, my love
For your own sake, because I love you
Early morning for each other the first ray of sunshine.

shell shockers

Comment by Matthew Newell on July 16, 2019 at 12:32am

Data matching involves looking at PC records held by one body against other PC records held by the equivalent or another body to perceive how far they coordinate. This is generally close to home data. The computerized data matching allows possibly false cases and installments to be recognized.

Comment by click on June 26, 2019 at 10:37am

Getting the online here all update of outlook sync settings windows 10 in computer this is the process to batter working.

Comment by deli dumrul on October 29, 2015 at 8:06am

hi, i am trying cross reference but there is two input only, so i can not connect z with anything. can you explain that?

Comment by cmrhm on May 19, 2010 at 9:11am
People have difficulties to explain this concept. Thanks for the good work.