the pipe component .I have one curve ,but Pipe component outputs two pipes .This guide curve have two kinks . Pipe component fails at one of them .
Bug #3
I guess this bug may have been fixed .
Wish #1
I hope adding an "reverse list" option to the right-click menu .I think this would be useful (at least for myself).
Wish #2
I hope the SimplifyTree component would clear the zeros located at the end and middle of branch in condition the branches have same length.For example, I have a tree looks like :
A = {0;1;0} B = {0;1;0;1}
C = {0;1;0;0;1;0;0;0}
After simplify ,I get:
A = {1} B = {1;0;1}
C = {1;0;0;1}
And if the tree structure is something like:
A={0;0;1;0}
B={0;0;1;1}
C={0;0;1;2}
After simplify ,I get:
A={1;0}
B={1;1}
C={1;2}
But If the tree is:
A={0;0;0;0;0;0}
B={0;0;1;0;1;0}
C={0;0;1;0;2;0}
I get:
A={0;0}
B={1;1}
C={1;2}
WIsh #3
I came across conditions that there is no direct way to handle some Datatree matching problems . And now I think I find what's the problem :GH now lack the capability to make cross reference between lists/branches .For example, I have two trees ,the first one have two branches {0}&{1}, the other have three branches{0}&{1}&{2}.Now GH would do:
what I want is :
If this can come true ,I can say it would be very very very useful . I just have a coarse idea on how to do that: Like () wrap items,{} wrap branches, then [] wrap trees .
Say I have a tree [0] ,which have three brabches{0},{1},{2}. So [0]=[{0};{1};{2}] or [0]=[{0},{1},{2}]
If this is ruled, the following fomula is meanningful:
[0]=[{0}] (this means tree[0] just have one branch)
[0]=[{0;0;0};{0;0;1};{0;0;2}]
[0]=[{0;0};{0;1};{0;2}]=[{0;0;0};{0;0;1};{0;1};{0;2}]After that, Maybe we could match [{0};{1}] and [{0};{1};{2}] very easily (Longest List;Shortest List;Cross Reference) ??
I tried to explain the concept of "tree" to my friends ,but I am confuzed somewhere myself .For example ,how could we have a tree including branches {0},{0;0}and{0;0;0} at the same time??{0} should be the biggest tree trunk,and {0;0} is part of {0} .{0;0;0} is just the smallest trunk and store the least data inside .How could the biggert trucks are empty while only the smallest branches contain items ?(David drawed a datatree that tell this,remember??)
But if this idea is acceptable ,then I could make a fairy tale about tree to them :
(Long long ago...)
[0] is a tree ,[1] is a tree.
{0},{1},{0;0}.{0;1;0} are branches.
{0}=(0,1,2,3,4,5) is branch.
[0]= [{0;0;0};{0;0;1};{0;0;2] is a standard tree .
[0]=[{0;0;0};{0;0;2};{0;0;3] is a pruned tree.
[{0};{0;0};{0;0;0}] is an illegal tree .
Gh is lenient enough to allow the existence of illegal tree .
Gh is lenient enough to allow the existence of empty trees& empty branch&null items.
We can use PathMapper to transform an illegal tree into a legal one and vice versa . We can use PathMapper to do any things to tree&branch&item.
Wish #4
wish for Split List component : it would have a wrap option just like many other components.In this way , we can split a list of data at -1 .I think this would be useful .
wish #5
wish for a Preview toggle component .See picture below (it's fake).
this toggle look mostly like the boolean toggle, but it have a input param by which we can control the preview logically and smartly .
When there is no input ,we can control swith the preview with a double click action .This toggle component could control all gh geometry overriding the global setting .The link curve between toggle and target works just like the galapagos.
Wish #6
Wish for adding arc angle output to both Arc 3pt and Arc SED components.This would make things easier sometimes .
Wish #7
Many times I were puzzled that a same gh script would perform perfect if the input is single surface but buggy while the input is more than one surface .After debuging many times ,I just found that if one or two component of the script do things smarter ,this kind of bugs would never happen again !! Simply saying:we need a optional datatree match behavior. Say I have two datatree [{0;0};{0;1}] and [{0;0;0};{0;0;1};{0;0;2};{0;0;3};
{0;1;0};{0;1;1};{0;1;2};{0;1;3}] Normally {0;0} matchs {0;0;0},{0;1} matchs other branches (Longest List behavior).Now I need {0;0} matchs {0;0;0},{0;0;1},{0;0;2},{0;0;3} separately and {0;1} matchs {0;1;0};{0;1;1};{0;1;2};{0;1;3} separately .I cant describe this matching rules accurately but it's very obvious .I hope you can understand the meaning .
I remember David said once that he would not change anything about the datatree matching rules in order to avoid destroy people's production work .And that is my bottomline too .What I want is when I need one component to match the input datatree in this way ,I can switch it (just it ) into this mode (Assuming these is a "xxx mode" option in component's right-click menu ). In this way ,All the exist Gh def would not be destoryed.
PS. I am not carping but I found the DivideKink param input of Divide Curve component is useless except adding a segments output .
…
diseño, construcción y entendimiento de nuestro entorno.
BIM está poniendo a disposición de los diseñadores y gestores auténticas bases de datos que pueden generarse, conectarse y editarse de forma paramétrica, proporcionando una sólida capa de realidad a los ejercicios de diseño generativo y computación que son objeto de estudio en Algomad, el seminario que busca popularizar la programación y la parametrización en el diseño y en la experiencia de nuestro entorno construido.
Tras un paréntesis en 2015, Algomad vuelve con el objetivo de demostrar cómo una visión computacional del BIM es una oportunidad para mejorar la forma de trabajar de ingenieros, arquitectos, constructoras y operadores de edificios e infraestructuras, tendiendo un puente entre las técnicas de diseño digital más avanzadas y la realidad de la construcción.
Algomad 2016 tendrá lugar en el centro de Madrid, en IE School of Architecture and Design, IE University, los días 3, 4 y 5 de Noviembre de 2016 y comprenderá 4 talleres así como ponencias a cargo de expertos de primer nivel.
Estructura de Algomad 2016
Algomad 2016 se estructura en torno a tres áreas temáticas principales:
BIM, como la metodología total específica para el sector de la construcción.
Computación, englobando las aplicaciones de programación y parametrización al diseño de edificios e infraestructuras.
Realidad, como marco de trabajo, buscando siempre resolver problemas reales a través de los dos puntos anteriores.
Público objetivo
Arquitectos, arquitectos técnicos, ingenieros y en general académicos, estudiantes de últimos cursos y profesionales del mundo inmobiliario y de la construcción que compartan un interés por la digitalización de nuestro sector. Se espera un nivel mínimo en el uso de herramientas BIM y de parametrización. Algomad proporcionará formación adicional y gratuita en las herramientas básicas a emplear en los talleres para asegurar un correcto desempeño.…
an almost planar tissue (your case) can cause a variety of issues up to the undo able state (metal parts/components grow in size as well for no reason). See forces estimated by FF below.
2. Therefor I strongly suggest to consider Plan B (a) mastermind a secondary "anchor" capability in order to achieve a far more stable system (b) use a mount design that can support this (and comply with the attractor concept of yours). Here's a variable mount custom system (mostly machined AND not cast) that is suitable for the scope (Rhino reads the stp file OK .... but makes a colossally big file - thus I attach here the original).
3. On first sight lot's of things in this system appear "odd". For instance: is it stable? Why these double cables are used? How far can be adjusted? (that's a classic case for feature driven parametric design - not doable with Rhino).
4. This concept (strut axis exported only) is tested in FORMFINDER and some other far more complex membrane apps that I use quite often (not RhinoMembrane). Here's is what FF tells us about:
Observe a different kind of "stress" when this is converted to radial type:
5. If you insert the stp file to the Rhino file provided (exactly as exported from FORMFINDER - no mods of mine of any kind) you'll see what goes where (and why). That way the usage of double cables is rather obvious (and a lot other things - for instance the way that the struts achieve "equilibrium", see the slots in the base mount plate.
6. If this approach is worth considering your definition requires some serious rethinking (far more simpler/manageable with the drawback that the real parts they are "static" they can adjust only as far this particular solution allows them to do - controlling them parametrically is clearly impossible with the current state of R/GH capabilities).`
All in all: this case works because the cables push the anchor points downwards and the struts push them upwards.
more in a while
…
reaky thing consisting from triangulated "modules" (i.e an assembly out of this, this and that) where the exterior edges ARE always under tension (= SS 304/316 cables OR nylon) and the interior ones MAY be under compression ( = steel, aluminum, wood, carbon) OR ... some of them ...may be under tension. Bastardized T trusses deviate a bit from theory ... but who cares? (not me anyway). T trusses have many variants (but as the greatest ever said: Less is More).
2. Large scale T for AEC is the art of pointless since it costs around the GNP of Nigeria. Here's some indicative components from a module of a multi adjustable TX system costing (the module) ~ the price of my Panigale (Google that):
The above is mailed to a friend who has MIT (yes, that MIT: the top dog) on sight ... therefor he needs some appropriate "credentials", he he.
3. The distance that separates the above with the demo TDT node provided is around 666.666 miles - but we don't care: we are after Art not some testimony to vanity.
4. On purpose I've used a smallish ring to give you a clear indication upon the constrain numero uno in truss design: CLASH matters.
5. You'll need:
(a) A decision related with the tensioners (classic Norseman + SS cables or nylon machined thingies?).
(b) A machinist who can do elementary stuff (like the adapters) and can weld this to that (the "ring" for instance). His abilities must be 1 in a scale of 100. If the fella has a computer (not a CRAY) and he knows what 3dPDF is (hmm) ... well ... use that way to communicate with him PRIOR designing anything: He must agree on the parts BEFORE the whole is attempted (as a design in GH or in some other app).
(c) A carpenter with a wood lathe for the obvious. BTW: BEFORE doing any TDT attempt > ask the carpenter about the available wood strut sizes. Against popular belief DO NOT varnish the wood (use exterior alkyd/oil stains from some top maker like the notorious US company PPG).
http://www.ppgpaints.com/products/paints-stains-data-sheets
(d) Good quality cigars (and espresso) plus some classic music (ZZTop, PFloyd, Cure, Stones, U2 etc etc) during the assembly.
(e) Faith to the Dark Side (see my avatar).
May the Force (the dark option) be with you.…
hacia donde crecerán las venas, y tenemos otro conjunto de puntos 'N' que son los que forman el patrón de venas.
1. Por cada 's' perteneciente a S, buscamos el 'n' perteneciente a N más cercano. Ese 'n' va a "moverse".
2. Por cada 'n' que se mueve, hacemos un vector dirigido a todos los 's' hacia los que se mueve.
3. Calculamos el vector medio de todos los vectores del paso 2, movemos 'n' con ese vector y lo añadimos a V.
4. Si algún 's' está muy cerca de algún 'n', ese 's' se elimina.
5. Se repite el proceso.
Esto es para formar venaciones abiertas sin autocrecimiento (como la siguiente imagen, hecho con Visual Basic).
Para las cerradas (las reticuladas que forman algo como células, como en la imagen tuya), el paso 1 y 4 son distintos y no sabría decirte cómo hacerlo. En ese pdf explica un método usando delaunay pero es muy lento, además gh no tiene ese algoritmo en 3d (entonces solo se podría hacer este patrón en 2d), por lo que estoy buscando otras vías, solo he logrado llegar a esto:
Es más complicado de lo que parece.
No obstante, si te conformas con menos, hay muchas formas de crear raíces y patrones similares, con SortestWalk, Anemone, etc... Hay ejemplos en este foro.
Si realmente quieres conseguir ese patrón, deberías aprender a programar porque para añadir distintos radios a las venas es necesario que las venas tengan topología y eso se complica demasiado desde gh. Nervous System para su "Hyphae" usó C++ con la librería CGAL, que es una muy poderosa librería de algoritmos de 3d.
…
d work exactly as the physical model. In the model, we have a curved surface which can be analysed into squares. These squares are filled with two kind of units which are connected with each other and create a grid that follows this curved surface.
We have managed to analyse this curved surface into a planar surface consisted of squares and we painted the squares with colours to represent the kind of unit that "fills" each square. So, now in rhino I have managed to build the curved surface that I want it to be filled with the two types of units.
I also have the planar surface built in Gh with the squares split into two lists, each one for each kind of unit. Because these units are mambranes, I used kangaroo to make them act like mambranes.
I hope I described the problem clearly. The point is to keep the dimensions of the units
the same and make it work in Kangaroo. Do you have anything in mind that I should look up or any advice ? Thank you in advance and i m sorry for the extended description.
*Pic 1: the curved surfaces that has to be filled with the units
*Pic 2: The binary system that shows which square is occupied by which unit
Blue=2 , Red=1, White= Blank
*Pic 3: unit 1
*Pic 4: unit 2
*Pic 5: a point of view of the physical model (not the final curve at the surface)
…
e.github.io/hydra/viewer?owner=chriswmackey&fork=hydra_2&id=Outdoor_Microclimate_Map
Thank you very much in advance!
1. why the underground zone representing the ground is defined as a plenum zone? By default, an office zone program is assigned. Will this affect the outside surface temperature of the ground plenum zone and affect, in turn, the outdoor microclimate map calculation?
2. I assume the construction GroundMaterial composed of five layers of 200mm concrete materials as assigned to the ground plenum zone is to assimilate a ground surface composed of thick concrete. But why this construction is assigned to this zone using both the Set EP Zone Construction and Set EP Zone Underground Construction components? Will the surfaces of this zone automatically recognized as underground surfaces based on their positions in relation to the default xy plane?
3. why a brep is connected to the input node distFromFloorOrSrf on the Indoor View Factor Calculator component which is expecting a number according to its annotation?
4. why the outdoor comfort analysis recipe is used for the indoor comfort analysis component?
5. why the OutdoorComfResult and DegFromNeutralResult are 2 csv files with PPD and PMV values if PMV/PPD thermal comfort model is only applicable to indoor air-conditioned space?
…
in App store.
2. Modelo now supports VR! check out this video:
3. We've added a specular option in the rendering settings. So now you can have your design rendered a little bit shinny-er.
4. There is also a "filters" option in this panel, with which you can get some interesting image post processing effects. We are expanding this filter library, if you have any suggestions, please let us know.
5. This one is very important and has been requested by our customers for a long time. Now when you upload a model, you can grab the reviews(3d comments, screenshots,sketches) from your previously uploaded model! This works really conveniently if you use Modelo for your design review/presentation, cause you don't have to recreate the same 3d anchor views every time you made some changes to your design.
6. Also, our developer API is almost ready, which means if anyone is interested in developing a grasshopper plugin that works with Modelo, they can!
There are some many other updates and bug fixes happened. I don't want to list all of them here. Definitely stay subscribed with our newsletter. Modelo is thrived to grow into a more comprehensive platform! If you have any good ideas about our platform, please do not hesitate to let me know!
Here is our Youtube channel: https://www.youtube.com/channel/UCufBShhLtUQepsit9ilI-AA
Cheers
Qi…
Added by Suqi to Modelo at 1:24pm on October 18, 2016
the following image of a hut.
I do not have experience using kangaroo to simulate forces, but I have made a test using multiple random components on a flat surface to fake the effect I'm going for. See image below.
The main issue I'm having is that the original file used for my test surface used box morph and the variable pipe command. Box morph is a bit touchy on a curved surface and it is not as elegant as I would like it to be (ie. I want all the hair diameters to be perfectly circular and uniform in size). Variable pipe also does not align the base of the hair with the existing surface, which means I have to offset the surface and then trim the excess of my pipe.....leading to heavy code and the file crashing.
So I'm trying to rebuild the "hairs" using a new method:
1) Subdivide the surface
2) Find the midpoint of each surface and then create a straight line that is perpendicular
3) Move a point along the on the straight line (between the start and end points) in the z direction, and then create a nurbs curve using this point and the start and end points
4) create a circle at the base of each crv, and then two more circles: one at the point in the middle point (I think I set it to .9) and the end of the curve
5) The problem: Now I am trying to sweep along these three circles and the nurbs curve to create a bent hair/pipe that is flush with the conic surface, but it does not work.
If someone can help that would be amazing. I've included my original surface test file and my new file where I am rebuilding using the sweep command. Below is a drawing of what I'm trying to achieve.
…