rection: there's no visible demand. Explanation: a lot of AEC oriented people (Smart Geo daydreamers) they think - potentially - about GH but they are rejecting it for more than obvious reasons: our job is 1% about the smart thing and 99% about the structured aspect of the smart (or stupid thing).
Back to that "hangar" : The primary role of this GH definition provided herein (and hopefully some future updates) is NOT to outline some academic solution (via some abstract collection of pipes/lines/points/surfaces) ...but to place in 3d space - properly structured - all the real-life (hmm, he he) bits that can compose the actual project. Of course if the bits could be parametrically driven assemblies ...well...you get the gist of the message.
All in all: I think that Engineers who are GH skeptics could see GH with a totally new perspective if, say, a collection of similar examples/test cases could be available for demo/evaluation/whatever > Ah! at last : this appears to be a real thing > what software did it? > say it again - Grass Components you said? > what sort of name is this? ... etc etc etc.
But since a similar development is quite expensive (and requires a team of several gurus), maybe this is rather a future potential task for the GH/Rhino people if they think that the AEC market segment could be beneficial for their products. Combine a similar capability with tools like yours and/or Evolute (planar quads are "a-la-mode" these days).
PS: forget trivial stuff > what about Stefanie? (plan B : better something than nothing)…
things I need to keep in mind are that, 1) I'm the only tool guy on this project, and 2) I need to generate results in my application domain - and Rhino, Grasshopper and my own code are tools, not results. If I spend all my time developing tools (or learning how to develop tools) then we're never going to get across the finish line. I can perhaps take a longer view on my tool investment once I have the "core" functionality in place. But I'm not there yet.
I've mapped out the various algorithms I would use for each task of the toolset I'm developing. For example merging surfaces was supposed to simply involve intersection/split/cull/join. That intersection operations don't always return complete, accurate and usable results throws my plans into the air. Data flow programming of genetic algorithms fits my background of 30 years programming and 5 years of 3D design. Diving more deeply into the underlying math of B-rep geometry is a rabbit hole I didn't budget falling into.
You bring up other architectures like solid modeling and features. R/GH are just 2 of many, many tools I've looked at to achieve my goals. No single tool or ecosystem looks complete enough to meet all my needs. My prior stop on my quest was OnShape. I found much to appreciate there, but it's still VERY early in their development. (I personally think they are a decade away from having a solution worth investing in.) R/GH seems fairly mature, but I'm already hitting walls like this. There are always struggles and never an ideal solution.
Thanks for your insights,
- Bob…
Added by neobobkrause at 7:32am on September 2, 2016
component in GH for a project im working on. as part of that component I want to dynamic show text the rhino viewport but I don't want to have to return a value that I then plug into the "text tag 3d" component. I want to build a similar method into my custom component.
therein lies my problem. I haven't yet figured out how to get my vb code to produce text.
my latest attempt looks a little something like this.
Dim TestPoint3D As New rhino.Geometry.Point3d(0, 0, 0) Dim TestVect As New rhino.Geometry.Vector3d(0, 0, 1) Dim TestPlane As New plane(TestPoint3D, TestVect) Dim TestText As New display.text3d("bob", TestPlane, 10) ListItem = TestPlane TextItem = TestText
but I get nothing out of it.
latest theory is to try using "Draw3dText Method (Text3d, Color)" but this is where ive hit a wall
if I understand how this works than I would think I would code this
Dim TestText As New Rhino.Display.DisplayPipline.Draw3dText( text here, and color here)
but the hint that im getting after "DisplayPipline" doesnt show a "Draw3dText" method?
so im confused?
again my overall goal is to get text to display in the viewport directly through my component
any thoughts or ideas, or if im even in the ballpark on this one would be helpful.
thanks!…
) In the Rhino view port it is not possible to modify it until is backed (and I don't want!) I need to place several images each one in a different place.
2) Is it possible to use another component THAT DO NOT CONVERT INTO BLACK AND WHITE, the pictures??. I need to set COLOR images in a 3D model, using grasshopper. thanks!
Any comment or suggestion would be welcome!!!
Thanks a lot!
…
o express my gratitude. I've been experimenting with your definitions (and still am), but let me extend my question.
Actually what I'm trying to achieve, is to recreate another project by Andrew Kudless, the spore lamp (I mentioned the Chrysalis at the beginning just because of the animation, which wasn't included in the Spore Lamp presentation).
Basically the spore lamp seems to me to be something like a preliminary study to the Chrysalis III project (I think it's a similar approach).
Andrew stated on his site that he used kangaroo for this project, so the Spore Lamp consists in my opinion either of a relaxed voronoi 3d diagram (b-rep, b-rep intersection) on a sphere which then has been planarized, or more likely it is a sort of relaxed facet dome.
The trick is to:
1. obtain a nicely-balanced voronoish diagram (or facet dome cells)
2. keep each cell/polyline planar (or force them with kangaroo to be planar) in order to move scale and loft them later on.
Here is what I have by now. (files: matsys spore lamp attempt)
That's the closest appearance that I got so far (simple move scale and loft of facet dome cells with the amount of transformations being proportional to the power of the initial cell area: bigger cell = bigger opening etc.) - with no relaxation of the diagram. But it's obviously not the same thing as the matsys design.
Here are some of my attempts of facet dome relaxation, but well, it certainly still not the right approach, and most importantly I don't know how to keep or force the cells to be planar after the relaxation.
1. pulling vertices to a sphere - no anchor points. That obviously doesn't make sense at all, but the relaxation without anchor points gives at the beginning a pattern that is closer to what I am looking for. (files: relaxation 01)
2. pulling vertices to a sphere - two faces of the initial facet dome anchored (files: relaxation 02)
3. pulling vertices to the initial geometry (facet dome) no anchor points (files: relaxation 03)
The cell pattern of the lamp kinda looks like this:
you can find it here: http://www.grasshopper3d.com/forum/topics/kangaroo-0-095-released?g...
Done with Plankton (of course without the "gradient increase" appearance), but in fact not, I took a look at Daniel Parker's Plankton example files, and it's not quite the same thing. Also the cells aren't planar...
The last problem is that during the relaxation attempts that I did, the biggest initial cells became enormous, and it's not like that in the elegant project by Andrew Kudless, that I'd like to achieve.
So to sum up:
Goal no 1: Obtain an elegant voronoi /facet dome cell pattern on a sphere (or an ellipsoid surface, whatever).
Goal no 2: Keep the cells planar in order to be able to loft them later and obtain those pyramidal forms, and assemble easily
Any ideas? Or maybe there's a completely different approach to that?…
p across to Kangaroo 2, but I am still trying to wrap my head around it. I understand that it allows you to incorporate multiple forces dependent on one another a bit better, which is what my question pertains to...
We are currently developing a project around creating a tensile lattice structure within an inflatable. In mocking things up, I have been able to simply inflate forms with static anchor points. I was wondering if it would be possible to link the anchor points for the inflatable shell to tensioned cables or nets pulling on the interior that find equilibrium when the tension is changed?
Below are some illustrations of what I am trying to achieve that I did with a tetrahedron in Kangaroo 1. To get both the inflated form and the tensioned form I had to run two simulations and bake each. I am looking for a way to have to forces of both dependent on one another.
I'm isolating the interior tension member to cables for now, but I would eventually like to expand to suspending 3d netted volumes within the inflatable.
I have also attached my attempted gh file with Kangaroo 2. It kind of works but not as drastically as I would like, and it breaks down very easily. Any help/advice would be greatly appreciated!:)
…
learn, or as an alternative to your morning coffee + cross-word puzzle.
Rules:
Contributions can be posted by anyone. Either selected from a previously posted problem from the general discussion (please acknowledge original poster), a selection from one of the many grasshopper+ primers (please include credits) something you think is fun, curious about, or even something you want to learn.
We should keep the entries dated so we can track them. One new problem per day (so if you see one posted for today- there is always tomorrow).
User(you) adds post titled: date-name of problem.
Solutions will be posted with breakdowns, either in logic procedure, etc. And in the spirit of the NY Times, an explained solution will be posted as well within the following days.
Remember there are multiple ways to solve a problem- however the “official” post should include a “clean and elegant” (or simplest) solution. So that all learning can develop better scripting habits.
Rules: an explanation.
1- Submission categories are as follows:
Native
Plug In
Scripted
Each category should have a difficulty rating - 1 to 5 perhaps.
They should be included in title for clarity-
Date_NameOfProblem_Native Plugin or Script_Difficulty
2. Since we are an international community, and this is an open group- a C+G day starts at the time of 10 am local poster’s time.
3.Anyone can set the next question. However the same person cannot set two days in a row. If a question is up- then next person needs to wait until the following day to post. You can PM Danny Boyes or Myself (Monique) if you are having posting issues- (i.e.: how to post, or have been trying to post, but keep missing the opportunity)
4. Answers are presented in the typical grasshopper community response way: in the form of examples, and/or screen shots. For screen shots: make sure the nodes are legible, if you do a function inside a node make sure we can see what you did. Verbal explanation. Maybe picture of result.
The difference between this group and the general discussion is that the poster should know how to solve the problem, be able to post a solution up themselves.
5. The poster judges the answer. They should offer a sample solution as well when they declare the winner.
However overall quality control may be checked by moderators of the group.
6. Still thinking about this one. …
3 arms and 6 legs (PS: Remember: in real-life our fee is proportional to the budget > thus > like Godzilla > the bigger the better).
In the mean time (auto detection of struts < min Allowed == true) get the gist of the whole "torque" issue, the other gist not to mention the other-other gist.
Of course you can opt for NOT making the cables (green) that stabilize the "extension" part of a given tensegrity strut ... yielding the Mother in Law syndrome (fat and ugly):
But ... hmm ... well ... are you really the chosen one? Here's your chance for the ticket to Paradise (full Lord's assistance, that is). Identify this engine, name the designer and the related immortal racer (when men were men).
Moral: Heaven can wait. …
ese explanations help (we will also look at your file) asap.
About your question regarding the Tutte graph drawing algorithm (also known as topological embedding):
The Tutte algorithm can be viewed as a special case of Spectral Graph Drawing, which is a mathematical solution for topological embedding formulated as an optimization problem. The formulation of the topological embedding (e.g. as in Tutte algorithm) is in fact quite similar to the so-called force-directed drawing that is often solved by heuristic methods like the one we have made for the SYNTACTIC plugin. You can read more about Force-Directed Graph Drawing (a.k.a. coin-graph drawing and kissing disks drawing) and Spectral Graph Drawing and Spectral Graph Theory in my dissertation.
The functionality of the Tutte algorithm is only guaranteed for graphs that are 3-connected, i.e. graphs with more than 3 vertices which cannot be torn apart unless at least two vertices are removed.
https://en.wikipedia.org/wiki/K-vertex-connected_graph
Speaking of the conditions for the Tutte algorithm to work properly: Practically, this implies, for instance, that there should not be rooms connected only to one other room.
Anyhow, long story short, we have decided to continue with Spectral Graph Drawing and 3D force-directed graph drawing. These algorithms are ready and with a couple of adjustments for maximum speed and stability we will release them shortly. Some conditions for these algorithms are easier to ensure, but in general if a node(room) is connected to only one space or the graph is not well connected one cannot expect a good graph drawing from neither of these methods. The other issue that is also common is that the force directed graph drawing will not work if one forces a big bubble to be squeezed in the middle of smaller bubbles. Stay tuned. …
o fix before it becomes very usable, but I'm posting the file here in case anyone wants to try it out.
It is a few simple scripts which record point locations from a first Kangaroo simulation whenever the capture button is pressed, and then when you playback the animation it interpolates between this captured sequence of points, pulling a second Kangaroo simulation to these targets. You can control the playback with a slider or automatically with a timer.
This should work with other Kangaroo2 setups, but here demonstrated with a human figure modelled as a collection of rigid bodies. At the knees and elbows the rigid bodies share 2 points to give a hinge joint, while for shoulders, neck, hips, ankles, wrists and torso they share only single points, giving a basic ball joint.
This is also the first time I've posted this model, and I'm also including the setup without the animation script. I know there are numerous issues with this poseable figure - dragging joints sometimes moves parts of the model you don't want to, and joints have unrealistic ranges of motion. I made a start at trying to limit some of these - such as ClampLength goals to stop the torso bending too much, but more could be done. There is also an issue with the rigid bodies (which track orientations with a frame of 3 points) that if you grab the frame itself, the simulation can break. I'm currently rethinking this whole approach.
I should also say that although I have heavily modified this human model to make it work for this setup, I did start from a mesh downloaded from some free 3d model collection site, but unfortunately I do not know the name of the original artist. If someone recognises it I would like to add appropriate credits.…