Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

mapping component #9

Open
daniel-wer opened this issue Dec 5, 2013 · 1 comment
Open

mapping component #9

daniel-wer opened this issue Dec 5, 2013 · 1 comment

Comments

@daniel-wer
Copy link
Contributor

Implement a mapping component that takes an input dataset consisting of homogenous elements and creates morphs for each element according to the modifications executed by the user.

The user modifies a arbitrary example morph in two possible ways.

  1. He can modify the example morph directly through the style halo and set static attributes.
  2. He can bind specific data keys to certain morph attributes by scripting those relationships in a workspace also contained in the component. (e.g. morph.setHeight(element.commitCount))

The component then creates a morph for each data set element. To do so, it applies the mapping defined on the example morph to every morph it creates.
The output will be an array of all created morphs.

@philippotto
Copy link
Contributor

I implemented that changing extent, rotation or fill color of the prototype morph will notify the dependent components. Which attribute changes should cause a notification can be changed easily. A more generic way than using explicit attributes is desirable, though.
At the moment, the setter functions of the attributes in the prototype morph will be hooked. If you delete the existing prototype morph and drop a new one into the component, the hook will be constructed not until you change something in your mapping code.
Probably, there should be an event listener which reacts to dropping new morphs into the mapping component.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants