Need ideas for an icon(征集图标)
来源:互联网 发布:手机电影软件 编辑:程序博客网 时间:2024/04/28 00:51
这个帖子看着有点逗,就翻译过来吧
After a request by Arend I added an unflatten component for reversing a flattening operation. If you still have the original tree and the number of items hasn't changed it can be put back together:
However I just cannot come up with a good idea for an icon for Unflatten. The best I could come up with was an acorn, which is a tenuous link at best.
Any ideas welcome, but please remember that the icon must de drawable and recognizable in a 20x20 (24x24 in an emergency) pixel image.
--
David Rutten
david@mcneel.com
Poprad, Slovakia
Reply by Mateusz Zwierzycki on
I know "unflatten" is a straightforward name, but it may be named "Rebuild tree"... or similar.
► Reply
Attach files (limit: 5MB)
Unflatten seems to be the rebirth of a data structure, which is an easy jump to a butterfly or a butterfly emerging from a cocoon. A reach could be a phoenix, but that gets away from the "tree" themed icons.
is this different in functionality from the "match paths" component in HDT Utilities? Just curious... I'd be happy for that to be made a built-in feature. It seems to me that "unflatten" is maybe not the clearest way to express that - because it can work on data that was never flattened from a tree structure to begin with (if I'm understanding correctly how it works...)
not that that helps you with the icon problem...
Basically it iterates over all the items in one tree and assigns them to the path structure of another tree.
T0 = {ABCDEFGHIJKL}
T1 = {NOP}{QRSYU}{VWX}{Y}
unflatten T0 using T1 as a guide gets you {ABC}{DEFGH}{IJK}{L}
I think unflatten is quite a good -albeit a made up- word for this.
--
David Rutten
david@mcneel.com
Poprad, Slovakia
- Message
Could just be "restore tree". I also like the idea of a sapling coming out of the flattened stump.
- I think match tree, maybe just add some sprouts coming out of the acorn. Also, will it work on multi layered lists like 0;0, 1;0, 2;0 ect. As the action you show above can just be done with partition.
Already wrote another component called [Match Tree] :)
--
David Rutten
david@mcneel.com
Poprad, Slovakia
- Message
- Sounds good :)
hey what does match tree do? I've been putting together a series of path filtering components...
Match tree copies the paths from one tree and the data from another. It requires they both have the same amount of branches.
--
David Rutten
david@mcneel.com
Poprad, Slovakia
- Message
Hi,
I'd prefer to use the image of a bunch of grapes. It contains the idea of "belonging" - elements to a family, and families to a system.
https://www.google.com/search?as_st=y&tbm=isch&hl=en&as...
Reply by Michael McCune on
Well you cant go wrong with something like this:
Or you could have a giant hand placing a tiny new tree on top of the flatten stump icon.
Permalink Reply byMichael Pryor on
David at a loss for icon ideas? :-|
It happens. It often takes longer to come up with a good idea and draw an icon than it takes to write the code for a new component.
--
David Rutten
david@mcneel.com
Poprad, Slovakia
- Message
This seems to be the consensus. It's definitely up against the detail barrier for small icons but it might work.
--
David Rutten
david@mcneel.com
Poprad, Slovakia
- Message
I think it is better to remove the grass. I will be more iconic.
Best
Nice one
Looks great. I'd say it lives up to the(your) GH standard.
To split a hair, It think Vincenzo's idea will put an end to this quest:)
I was thinking "Revive Tree" for the name, but than again, I'm dutch.
- I think the sapling growing from a stump is a perfect analogy. The tree had been cut down, but now it grows back.
Support for McCune's suggestion too.
Hey David,
I have an idea for you.
I thought it could be just a flatten plant or tree, with newborn grafts. ;)
What do you think?
How about replacing the old tree on the (flatten icon) treestump and put a bandaid over it ;)
This is freaking me out. The tree-stump-with-band-aid idea is also what my girlfriend came up with, who is also called Anja and also into dancing...
--
David Rutten
david@mcneel.com
Poprad, Slovakia
- Message
Permalink Reply byMostafa R. A. Khalifa on
how about Unflattening a flatten mother bubble to unflatten small kids bubbles, such as a soap bubbles
or a christmas tree ?
Nice Systemiq, how about this? the visibility of joints, like a plastic tree.
Nice icon,how about this?
I still think the stump and sprout are the clearest.
+1
Yeah it's stump+sprout without grass for the time being. It's not as pretty as the acorn but a lot more descriptive.
--
David Rutten
david@mcneel.com
Poprad, Slovakia
- Message
- Saw?
Clean Tree actually, I needed the cherries for another object which is actually called [Cherry Picker]. No more subtle visual pun I guess...
--
David Rutten
david@mcneel.com
Poprad, Slovakia
- Message
The first idea that comes to my mind was a burned forest replanted...but I know that it is quite complicate to translate into an icon.
Or perhaps a black (burned) tree with a small green branch growing.
https://www.google.es/search?q=replanted+forest&aq=f&um=1&a...
Following on from the last comment you could have one tree blacked out and the smae tree with colour overlapping in front.
Do all the suggestions so far strike anyone else as well.... 'autistic'? For the informed individuals who are part of this thread it seems oh-so-obvious that a sapling growing out of a tree indicates 'unflatten', however take a step back and think of someone who has never used the program before nor been part of this post, and what they would think looking at such an icon, or worse, at a tree with what looks like coloured fruit on its branches? None of them say 'unflatten' to me. I suppose that maybe be my own ill-founded view that if you are going to create an icon it should in some way pose what it actually does.
Really it's yet more debilitating abstraction and if the forum 'fanbois' are removed from the equation, then this kind of methodology will be met with a lot of confusion, frustration and criticism from future users and should be avoided at all costs. Can some analogy be proposed that actually refers to what the component is doing....i.e unflatten! A good start point would be to forget the whole 'tree' thing for a while and actually come up with a pictogram which would show an object being 'unflattened' andthen apply the whole 'tree' part somehow if it is so important.
Food for thought.
Permalink Reply byMichael Pryor on
What book are you referring to?
And I dont see how it makes sense (if at all possible, try really hard to imagine a new user looking at that icon rather than yourself, and without being biased, tell me if it makes sense). How can any uninitiated individual (i.e. new user, not Michael Pryor) fathom that a sprout coming out of a tree stump would refer to 'unflatten' tree? Even that sentence by itself sounds absurd. I guess at the very least there is the [wholly dependent] GH user forum to explain all. Bad user experience once commercially released is what concerns me the most.
- Easy. Use the text components if its that difficult. :) Grasshopper icons are a language. Just as one would need to learn any language before they speak it they need to practice and use them. This goes for coding as well. When someone understands data trees and how grasshopper works then it will make sense why unflatten is the rebirth of a flatten i.e. the re-growth of a stump. Im certain grasshoppe will have an official document once its completed as it is mcneel and they document help files really well online. http://docs.mcneel.com/rhino/5/help/en-us/commandlist/command_list.htm
All in all grasshopper is one of the easiest coding languages to learn.
To be perfectly Honest I dont even remember the icons. I just type the commands in I need.
Thanks. One quick point: GH isn't a coding langauge! Its an algorithm editor.
http://en.wikipedia.org/wiki/Computer_programming
Now we can argue :
http://en.wikipedia.org/wiki/Visual_programming
- It is a programming language :)
Correct! It is not however coding; clearly Meteusz overlooked the all important 'C' word in my post! A form of programming it most certainly is, but nowhere in my post did I suggest otherwise. Heck, even managing your washing machine cycle is a form of programming. What a wonderful digital world we live in. But lets not get into another 'visual programming and why it sucks' debate, I think everyone is well versed on the limitations.
The whole concept of data "trees" is pretty complex. While a real tree is a nice analogy for what this data structure looks like, not all the complex data manipulation operations find a similar equivalent in nature.
Think about "Graft" in a botanical way. You transfer a top part of one plant onto the roots of another. I think, "graft" would be a far more fitting analogy for this component here. Even you might agree, that a tree stump is a good symbol for a flattened tree. Now this root contains all data. If you transfer a new tree crown onto this stump, it will transfer all this data into then new structure... now regraft data from a flattened tree and you get a combination of the two symbols.
Problem is, there already is a component that adds new branches to an existing tree, which in botanical terms is also called grafting...
all that said, find a symbol that works in 20x20 pixels...
- That makes sense. I was thinking graft at first as well. The two are similar.
Sometimes an operation can be represented by an icon very well, sometimes it's very difficult and sometimes it's easy but we all still use a visual metaphor because it has become the standard representation.
An icon is not supposed to explain what a certain function does. If it can, great, if not, no harm done. There are much better ways of explaining functionality and tooltips are right at the top of that list.
Icons need to serve the following purposes:
- Be rememberable. Once you know what an icon means it should be hard to forget.
- Be distinct. An icon must look different from its neighbours so it's easy to find.
These are of course my personal feelings and you're welcome to disagree with them. I would concur that Grasshopper has become harder and harder to learn over time as more functions were added. I hope I can do a better job in the future of 'hiding' expert functionality until the user is ready for it than I've done so far, but this is a very difficult task.
--
David Rutten
david@mcneel.com
Poprad, Slovakia
- Message
Can some analogy be proposed that actually refers to what the component is doing....
I can't think of a good analogy. Most components that operate on tree data-structures often have quite abstract icons associated with them. It's relatively easy to visually represent geometric operations, but tree management modifies the way in which data is structured. Language and imagery to do with data trees is quite metaphor-heavy by necessity.
--
David Rutten
david@mcneel.com
Poprad, Slovakia
- Message
Flatten tree icon: a tree outline, similar to some of the attached suggestions posted on this thread, being compressed with a bold arrow on top directing downwards
Unflatten tree: As above but with the arrow pointing upwards?
Simple, more intuitive (although far from perfect), and better than the current offering. Thoughts?
Replies to This Discussion
- Better for who? Also, that makes no sense to me atleast as flatten is just the name. Flatten really just removes all the branches in a tree. I think this is why david choose the cutting of a tree. Again, if you understand the tree logic the icons do make sense as an abstraction.
I am just a big advocate in 'programming' of living by the rule that you should only abstract once. Any more and the meaning becomes esoteric or just unnecessarily complicated / confusing. Simple, simple, simple. That is actually an internal motto used in Apple corp and Lo and behold it becomes the most valuable tech company in the world. Programming by nature is abstract hence why many individuals find it complicated, so to burden it any more is surely a big foi pas.
Would probably be better to call the component "TransferDataLayoutFromTreeToFlatList" and animate the icon to show the full process step-by-step in HD...
- Can it be in 3D too? Thats the trend these days
Lets not be facetious, after all the strongest something can be is always limited by its weakest link.
I think the direction this discussion can take will be slightly beyond your comprehension so lets leave it here.
- Yea your right, im the one that gets it but okay :D well later then must get back to dwelling on icons :DDDDDD
The arrow would have to be visually on top of the tree rather than positionally. There isn't enough room in 20 pixels to draw both a tree and an arrow. If I draw them on top each other then I suppose it could look like this:
Once you're told it's to do with flattening data structures called 'trees' it becomes obvious what it means and very easy to remember. If you had to guess what it meant before you were told about trees I'm not sure what you'd make of it. Perhaps something to do with downloading? Downward pointing arrows are often associated with downloading things.
If I compress the tree image the arrow can be above it, but now the tree doesn't look like a tree any more:
Unless you've seen it before on another icon and you know that shape represents a data tree in Grasshopper.
I in fact did use a downward pointing arrow to represent flatten in the parameter post-processes:
These icons only have 10x10 pixels so anything beyond a single, simple shape cannot be represented so I couldn't go with the stump.
I'm not particularly hesitant to change the UI from version to version. I know it annoys some people and I know that some tutorials and course materials will become outdated because of it. But while GH is in alpha mode I think it is more important to try and figure out what interface works best. I'm not particularly impressed by the improvement of the tree+arrow icon, because even if it immediately conjures up the words "Flatten Tree" in your mind, you still don't know what to make of it unless you already know about data trees and what it means to flatten them.
--
David Rutten
david@mcneel.com
Poprad, Slovakia
- Message
Nice idea and would certainly make the process and the reverse a consistent set.
Now look at it as a totally "uninitiated individual". Right now Graft and Flatten form a consistent pair, both beeing constantly used data operations. Growing a tree looks more like a graft operation but actually does something completely different. How is that less confusing than the current state?
Well, there is an interesting discussion.
What this component actually does is not unflatten. If I were to name it in a more descriptive sense it would be called Build Tree By BranchCount From List (if what it actually does should reflect the name of the component).
Unflatten is a word chosen after the grasshopper analogy for flatten tree, because it somewhat reverses the behaviour of the flatten command. So knowledge of the flatten command is needed to understand the unflatten analogy for the working of this command.
If you know the flatten icon, I think this icon makes sense.
To me the flatten icon really says 'eliminate the branches'. I never think of it as actually 'flattening' anything. Flattening is probably not the best word to use but I find I have no interest in suggesting another. Turn the icon upside down to 'shake out' the original branch structure (let gravity do the work).
This wont make any difference
To me the flatten icon says 'deforestation'. The planet is hurting enough already so to keep my definitions green and sustainable I instead use the environmentally friendly "shift paths" component with the appropriate offset value in each case.
Permalink Reply byÁngel Linares on
xDDDDDDDDDDDDDDDDDDDDDDDD
- Ha!
You could always put two blank Graft components below any Flatten component. As long as you plant more trees than you cut, we're all in the clear.
--
David Rutten
david@mcneel.com
Poprad, Slovakia
- Message
haha! :D
Just to throw in my 0.02. When I think of flattening a tree... I think of a piece of paper (since it's about as flat as a piece of wood can go). Unflattened then would just be a crumpled up ball of paper. This would require changing the flatten component too... but it's a thought. Not sure if it's a good idea... just throwing it out there for the sake of discussion.
I agree with a few of the previous posts suggesting that the flatten/unflatten metaphor is a bit strange. First, "Unflatten" is not a common word. I have little problem with making up words, but when combined with "Tree", it is really very confusing. The phrase "unflattening a tree" is mixing too many metaphors.
I would prefer something that more accurately describes the action of the component such as "Rebuild Tree". The term "rebuild" is used in several other places in Rhino and Grasshopper to mean modify the essential structure of something (surface, mesh, curve, etc.). In common meaning, "rebuild" means to build something back to its original state. For example, you might rebuild a house after a fire. Conversely, that house might have been "flattened" by a hurricane.
When "Rebuild Tree" is used, it still has a strange sound in comparison to a house (trees are regrown or replanted after destruction), but it sounds better to me than "unflatten tree". I think the Flatten/Rebuild duality is a better one than Flatten/Unflatten. English is strange sometimes in the use of "un" as a prefix. It works well when there is no other term for the opposite of an action, but if there already exists a common word for the opposite, then the use of "un" sounds forced and awkward. For example, we don't use destroy/undestroy; we use destroy/make.
As for an icon, I think the sapling coming out of the stump works well. Another idea that might work would be to use the hammer symbol that is used elsewhere in Rhino and Grasshopper with the word Rebuild along with some sort of tree symbol.
Originally "flatten" came from Photoshop. Flattening all the layers of an image was the closest operation I could think of that was sort of analogous and which most people will have heard of. It has little to do with the metaphor of trees and indeed "flattening a tree" is an awkward thing to say.
You're right in that unflatten doesn't very closely describe what the component does. It's more of a contextual name, since the only time you'd probably use unflatten is just after you flattened something and need to put Humpty back together again. It is therefore a sort of 'undo for flatten' which got contracted to unflatten.
'Rebuild' to me signals like you'd have too much of a choice about the outcome. When rebuilding curves and surfaces you typically get to pick the accuracy of the operation. Unflatten exposes no such controls. I realize that RebuildMesh doesn't provide any control either*. I'm not saying Unflatten is better than Rebuild, it's just that neither actually tells you what the component really does.At the end of the day we're stuck with a vocabulary that is already wildly inconsistent and misleading in many areas. Words have been inherited from programming, computing, mathematics, 3D CAD in general, Rhino in specific and I made a few stupid choices along the way as well**. Keep the ideas coming though, perhaps thereis a single word out there that unambiguously describes an unflatten operation. When we find it I will happily use it.
* But then RebuildMesh is very different from RebuildCurve and RebuildSurface anyway and it should probably have been called FixMesh or something
** Case in point; "parameters". They should have been called "containers" or something.
--
David Rutten
david@mcneel.com
Poprad, Slovakia
- Message
Repeating myself here...but I think "restore" tree captures the operation pretty effectively. I also think "scrub" would be a good alternative to flatten. That or "obliterate".
I like the "restore" idea. It may be familiar to some windows users... also, my online dictionary says "reform" is synonymous for "restore".
"...that was sort of analogous and which most people will have heard of."
Restore is okay as a descriptor. But restore to what? Any previous state? Restore data, or paths, or both? If you saw 'Restore Tree', would you instantly know that it can be used to perform the inverse operation of flattening?
Ultimate, one major benefit of using unflatten -despite it being an awkward word- is that it doesn't involve anew term. Undo and Redo and not called Restore and Retrace. There's nothing wrong with restore and retrace, they describe the actions every bit as well as undo and redo, but because they are so different from each other knowing one doesn't help you at all figuring out what the other is about.
--
David Rutten
david@mcneel.com
Poprad, Slovakia
- Message
As an analagy, this whole debate makes me think of "Smash," mostly because of the icon...
But "Unsmash" (which is also a term that, on it's own, wouldn't make much sense...) would be like in cartoons when Wile E. Coyote gets run over by a steamroller and then inflates (pumps-up?) his paper thin self.
So I'll throw the descriptors inflate, pump, or plump into the mix (plump may actually be a plant/tree related term)...
Another random aside is that in Rhino there is obviously "UnrollSrf" which everyone understands, but there is no corollary "RollSrf" command because that wouldn't make any sense.
How about recompose? Flatten; Recompose.
This Discussion
What about revive (i just saw Pieter Segeren was sugesting this one as well)?
Although i personally find unflatten the most straight forward. Once you know what flatten does, u automatically know what unflatten does.
But then again, wasn't this discussion actually about an icon ?! :);)
Supposing the "flatten" name gets a name overhaul how about "Retread" for the unflatten command? Otherwise if the flatten name stays I think the retread name is confusing and the unflatten name is the most straightforward.
I agree, I like the:
icon best. But I like it with grass... :D
BTW, nice jokes everyone!
- A bifurcated trunk would do if you imagined one being "flattened" a longer time ago. So, this would suggest a fully developed second tree as a part of the same branched trunk, not just branching out to become fully developed, time later:
www.treeworld.info/attachments/f53/22743d1330030793-single-trunk-si..." target="_blank">http://1.1.1.3/bmi/www.treeworld.info/attachments/f53/22743d1330030793-single-trunk-si...
- Another idea could be an owl nesting in a hollow tree but this is probably a little harder to depict as an icon.http://ibc.lynxeds.com/files/pictures/screech_owl.jpg
http://www.youtube.com/watch?feature=player_detailpage&v=2NS7Gk...
Lovely discussion! I haven't got any tools to draw nice icons, but here's another idea in case there's no clear winner yet (tough I quite like the stump and little twig from earlier):
flatten turns the tree into a plank- um, well, it's flat! ;-)
"unflatten" then reconstructs a tree-shape from a set of planks!
flatten:
unflatten:
maybe this solution will suit :)
- Need ideas for an icon(征集图标)
- 图标(icon)
- 图标动画技术入门(An Introduction to Icon Animation Techniques翻译)
- jqmobi 图标大全(icon)
- ICON图标,
- icon图标在线生成教程(svg转icon)
- Ideas for "Snap to grid"
- Tomcat 项目中的图标(ICON)设置
- android 使用字体图标(Icon Font)
- Android 图标(Icon)绘制尺寸规范
- 各种icon图标(阿里巴巴矢量图)
- ionic3自定义icon图标(简单版!!)
- Ideas
- What is an Icon?
- icon图标不用愁
- 获取ICON图标
- 地址栏icon图标替换
- Android 系统图标 Icon
- php.ini error_reporting设置,错误等级。
- c语言ODBC连接数据库
- Android电话及短信的监听程序源码
- 【一天一篇CPP】不同类型数据间的转换【转换构造函数、类型转换函数】
- go语言defer使用
- Need ideas for an icon(征集图标)
- 清空页面上所有textBox的值
- 开发收获(3)之规范的JDBC写法
- 自定义程序 第三方apk 编译进Android方法
- hbase的thriftserver开启
- iOS应用内购买(In-App Purchase)
- BNU10790:Periodic Table of Elements
- C++小知识之wsprintf使用
- /etc/ld.so.conf文件