ive 'correct' normal.
Non-normalized cross products is effectively weighting face normals by area, and is fast and simple, so we put that one as the default.
In some cases normalizing the cross-products improves the result, but not always.
Another option is to weight by angles, though this is computationally slightly more expensive, so might not be ideal for real-time updates on large meshes.
As an example, here is a mesh with a 90° corner, and uneven meshing on the 2 sides.
The arrows show:
0- Area weighted (non-normalized cross products)
1- Angle weighted
2- Normalized cross-products
Here the angle-weighted normal is the one at 45°, which is intuitively the 'best' one in this case.
These 3 seem to be the most commonly used, but there are many other possible definitions of normals - such as inverse-area weighted, mean curvature, etc...
I think really what would be best would be to put a few of these into Plankton, and include an optional argument in GetNormal for selecting which one you need for a particular application.
Pull requests welcome if you feel inspired to add this!
http://meshlabstuff.blogspot.co.uk/2009/04/on-computation-of-vertex-normals.html
http://steve.hollasch.net/cgindex/geometry/surfnorm.html…
us allows Grasshopper authors to stream geometry to the web in real time. It works like a chatroom for parametric geometry, and allows for on-the-fly 3D model mashups in the web browser. Multiple [Grasshopper] authors can stream geometry into a shared 3D environment on the web – a Platypus Session – and multiple viewers can join that session on 3dplatyp.us to interact with the 3D model. Platypus can be used to present parametric 3D models to a remote audience, to quickly collaborate with other Grasshopper users, or both!
You can down load the Grasshopper plugin at food4rhino, and visit 3dplatyp.us to view your geometry on the web. This first round of Alpha testing will run for two weeks, until April 24 2014, after which the Grasshopper components will not solve.
We are very interested in hearing feedback from the community while the project is still in the prototyping stages of development. Please use the comments on this discussion to ask questions, suggest ideas, report bugs, etc. We are planning on rolling out another public alpha release or two this Spring, depending on how this first one goes, in advance of our Technology Symposium and Hackathon in New York.
Check out our getting started video below, and enjoy!
…
e rod with circular section (no goals allow for controlling torsion for what I know). The rods are set with two options, with straight rest position or the (initial) bent one. The calibration integrated with the model is more about giving a scale between the forces rather than the will to accurately simulate them (at the moment). Anyway, I am trying to do it on a macro scale, instead of a micro, with elements which are rather thin.
The system at the moment is not stable. In fact, besides the rods' characteristics is quite fundamental to keep them planar when they intersect. I am lacking something but also probably missing some parameters. In the script, there are two goals to define this: impose 90° between vertical and horizontal, as well as between these and a normal to their intersection. For my understanding, angle goal works tri-dimensionally without a preferred plane and this (hopefully) should address it.
Just wondering if anyone can give me a hint on this. After this step, it would be great to understand if the system can get out of its plane (through a pull force out of its plane, simulated in the script through point loads in the joints). I am still not entirely sure about the possibility of doing this. By looking at how other auxetic patterns have been used to generate freeform surfaces, I am giving it a try.
Thank you
Claudio
PS: I noticed also this post and this, really interesting. I see the problematic over the stability and the necessity to separate the states with an energetic hill in the first, as well as some potential in using auxetics in the latter.…
opening a simple file with 30 curves being lofted took like 2 minutes to complete and Rhino crashed afterwards saying:"Windows is out of memory and Rhino will close after you click ok."evethough I still had 7GB of free physical memory and my page file is set also to 16 GB just to be shure...I then switched to Rhino 5.0 Version 5 SR14 64-bit (5.14.522.8390, 05/22/2017) which also had big problems to display the lofted surface. It was unresponsive after loading the file for a minute and a half and then it normally displayed the lofted surface. Every move of camera takes at least 10 seconds to update, but at least it runs. GH profiler says the loft took only 12 ms (90%).
So I'm suspected my graphics card, because the Windows are just three weeks from a clean install. I've also updated my Graphics Driver from the stock Windows one to Intel HD one, but nothing changed.Is there something I'm missing??? What can I try next?My specs:CPU: i5-3320M @ 2.60 GHzRAM: 16 GBGPU: Intel HD Graphics 4000, driver: 07.04. 2017, version 10.18.10.4653
…
Added by Šimon Prokop at 10:39am on October 21, 2017
n to finding a concave contour polyline (which is in general what you need). In your case each contour section contains a series of points of which you do not know the order and you need to sort them so that by connecting them you find the contour. This is fairly easy to do when the contour is convex (basically you find the average point then calculate the vectors from the average to the points and sort the vectors by angle - sorting the points by the same angle gives you the right order for the contour), but generally impossible to find uniquely when the contour is concave (PS: convex means that, for ANY 2 points inside the figure, a straight line connecting them doesn't intersect with the border curve - i.e. circles, ellipses, rectangles, triangles - concave shapes are a star, a crescent moon, an arrow, a boomerang, etc.).
The problem goes like this: given a generic list of points:
Each of these configurations for a perimeter equally fits the above:
Laurent already went for another possible solution, the stochastic approach (by subdividing the connecting lines), I slightly adjusted a few things over his solution:
namely, I added a rounding option to adjust for some weird tolerance issues (some points that should be at Y=80 were at Y=79.99998 or something) and a more straightforward solution to group them by section plane using sets logic. This, coupled with alpha shape, gives a quite good approach, still very coarse in terms of results but that depends on the sampling resolution of the field (i.e. number of height sections in which you calculate the metaballs) and sampling length of the connecting lines.
Definition attached.…
Diffraction , I left it, how it is.
For the unusual issues that comes in the image source component, so, is it something strange? But, I still have the same issues when I sets any integer component (single or multiple) in the “reflection order” of the image source component, in the “image source order” in the ray tracing component, and again, when I connect the output “Direct sound data” of Direct Sound component in the Energy Time Curve.
Do I wrong something with the integer component? I used it already in the first parts, for sets “grasshopper layers”, in the “Scene” component, but here it works. Should I start with a new file?
For the multi-object optimization, thank you for all suggestions. Yes, I red PHD thesis work of Tomas Mendez and the article “ EDT, C80 and G Driven Auditorium design” and still others. Thank you to all these articles, I decided where to focus my thesis.
I understand the potential of Multi-object optimization, and problems that I can finding without using it. Actually, in the beginning of my thesis, I tried to jet in contact with the Politecnico di Torino, but was not easy because I’m not a Politecnico student.
Here, in University of Florence (Building engineering), there isn’t a department or someone that is already familiar with these field of study, so, as you can image, for design my thesis, I can confide on online resources. So far, my Professor suggest me to begin with a Nonlinear Global optimization like Galapagos, and only after see the multi-object. In this way, step by step if something doesn’t work is easier to understand way and where something is going wrong: if are problems due to the setting of the programs, because we are not practical about these, or if there is a wrong in the simulations or in the algorithm and ect.
Do you think is a good way for go on?
Thank you very much,
Kind Regards
Giulia
…
s para acercarse al diseño paramétrico.
El curso esta dirigido a arquitectos diseñadores e ingenieros de diseño que pretendan implementar las técnicas del modelado por parámetros dentro de sus herramientas de proyectación.
La duración de dicho curso es de 20 horas, repartidas en 6 sesiones los días lunes y miércoles de 5pm a 8:20pm, en el espacio cultural calle nueve (calle 9 # 43b-75 abajo del parque del Poblado. https://www.facebook.com/calle.nueve). El curso dará inicio el día lunes 22 de Agosto de 2011. El máximo de inscritos por curso es de 15 personas para garantizar la calidad de la enseñanza.
Este curso estará dictado por los arquitectos Ana Maria Bustamante Y David Vanegas arquitectos de la oficina de arquitectura interior137 (www.interior137.blogspot.com) que cuentan con más de dos años de experiencia en el manejo de GRASSHOPPER, y tienen una trayectoria reconocida como docentes en la Facultad de Arquitectura de la U.P.B.
Para participar en el taller los estudiantes deberán tener un computador portátil para su uso personal, durante todo el curso, además deben tener instalado el software Rhino versión 4.0 con la actualización SR9, y un conocimiento mínimo del modelado y la interfaz de este software.
Contenidos:
Sesión 1: * Introducción al modelado por parámetros y al diseño mediante algoritmos.
* Grasshopper: datos + acciones. Interface.
Sesión 2: * Datos fijos, datos variables: Parámetros.
* Puntos, Curvas parametrizables.
* Transformaciones: Mover, Rotar.
Sesión 3: * Datos múltiples (listas): Series. Rangos.
* Funciones de 1 y 2 variables.
Sesión 4: * Gestiones de datos en listas: seleccionar items, ordenarlos, desordenarlos, eliminarlos.
Sesión 5: * Atractores.
Sesión 6: * Superficies: creación de superficies, panelizaciones.
Informes e inscripciones:
Para inscribirse en el curso deberá reservar su cupo abonando el costo total del curso al menos hasta el miércoles 17 de Agosto. Este valor se devolverá totalmente únicamente en caso de cancelación del curso.
Para mayor información, póngase en contacto a través del correo electrónico interior137@gmail.com asunto: CURSO GH…
r-tools/
the hack is found here: http://fancywires.com/?p=499
it doesn't function the same as it used to, and i wonder if somethings have changed in the functions underlying the VB script or maybe some other updates to GH that are relevant.
furthurmore, i ask if anyone has made advancements on labeling techniques for cnc/laser cutting?
is there anything more built into GH to do this task?
Permalink Reply by Giulio Piacentino on Thursday
Yesterday I was asked a modified version of the script. Now it supports planes, so it should be easier to use.
- Giulio
Permalink Reply by gotjosh on Thursday
Delete
cool! I also recently adapted the old version to use an input plane instead of a point... i'll have to look at your script to see if we made the same solution.
thanks for your reply... is there anyway that your script could take care of the hack that fancywires has made afterwards? it would be great to have each letter returned cleaned and joined, so there were exactly the same number of curves in the output as characters in the input...
i am basically clueless with VB and .net scripting so far, but i can code in AS3 and php, so a small push in the right direction might get me far...
How can one return one single curve in a letter like "O"? Do you mean using single-stroke fonts? Or maybe returning a brep (polysurface) as output?
- Giulio
…
r interface to gsa, you'll find technical help/descriptions in it's help system. Certainly changing the type to Bar overrides any user defined releases.
The gsa solver must make special allowance for node "stability" when the elements connected are all bars (for rotation). If you're circumstance when you change type to Beams, your end releases are applied to axial and shear at all ends (note you can change the "close model" input on the solver component to false so you can see the analysis error). I think I previously discussed with Oasys about the COM interface sending back the "log" so I could display it in Grasshopper. Elements with axial and shear releases both ends are unrestrained, so it's causing the solver error. If you say released Fx and Fy at both ends it might work (I didn't test), certainly at one end only it should.
There's a hidden component (I can't remember if it's completed or not, i think so but not extensively tested) that can generate "tied interfaces" along edges of meshes to link nodes. Try dragging and dropping this string below onto the gh canvas.
{4661c381-1c36-4099-90f2-0d5cf0d30db3}
The trouble with rhino meshing is that polysurface edges can only have two adjacent faces, so getting coincident nodes along shared "edges" of surfaces is near impossible.
I do have some routines for "meshing" surfaces with simple geometry (ie 3 or 4 edged faces). This takes a distance setting and forces vertex spacing to respect this along edges, so tied interfaces wouldn't be necessary. If this is of interest, I'll see if I can provide it (or have done so) for the plugin. Let me know deadline/time frames you have for using this.
Look forward to hearing from you,
Jon…