Grasshopper. So, I once made an attempt to bind ms sqlServer in order to get frozen definitions at some states, to avoid managing baked objects in Rhino and also be able to retain whole results without using the GH state manager that rebuilds everything.
But at that time GH's VB.Net component didn't properly read referenced dlls and I forgot it since then.
At first, I was surprised by Slingshot's extensive interface : I was still having in mind my own old project, a tool that would have acted at the Rhino's geometry object level, and auto creating the needed tables.
The bd would have consisted of a main table, owning the objects ID and name, and related tables containing the necessary information relative to the main objects.
For example, a Brep is made of so and so underlying objects, passed to respective tables, according to GH objects definition layout (just the way they are written in the xml schema).
Then, on a db, query an object by name, and retrieve the whole object or underlying objects (e.g. at the bounding curves level, or points level for a Brep).
With Slingshot, I made a few attempts to cheat GH with BLOB data fields, but no way to get a whole object. It seems that GH simply provides an object.toString ... and GH is definitely not conceived to produce persistence outside of Rhino. If I have some spare time, I will try to extract
About points and colors, I am now simply using a single field with CHAR(asLargeAsNeeded...), as GH parses String to every Point (or Vector or Color) entry of any component.
I do so because it need less to display on the canvas...
Whatever I wrote before, I really like your conception, as opened to relational interactions between ...whatever you need or dream of !
One last thing : GH can't open the definition file "Genome_DB_Template.gh" that I've downloaded from your site : http://slingshot-dev.wikidot.com/database-genome. I was expecting to learn a lot from your very smart stuff ! (I am running GH 08.00.13 and Slingshot 0.7.2.0)
Slingshot is running great, opened to any use...Thanks again.
Best,
Stan
…
Refinement component at first, possibly using MeshMachine instead which is slow but actually gives many fewer triangles and adaptive meshing for tight curves too. Neither are easy to adjust on a deadline!
Then you have to sneak up on workable settings, using only a few lines, or Grasshopper will freeze perhaps indefinitely for 200 lines with extreme settings, especially the CS (Cube Size) setting that can blow up into a huge number if your scale is big.
Cocoon gives lots of nearly flat split quad faces so I quadrangulated those for fun:
Or MeshMachine can refine the mesh to make it efficient:
Whereas the Cocoon Refine component will merely return an equally fine mesh with more equilateral triangles but no serious remeshing to rid so many tiny triangles where they are not needed? Actually, it does seem to remesh also:
David said he used some of Daniel's MeshMachine code in there.…
rld.wolfram.com/EnnepersMinimalSurface.html
when i type the equations for z,y,z it says a syntax error so i obviously do not understand how to construct an expression. (screen capture attached)
Any help/explanation of using this function would be greatly appreciated
thanks so much
Capture.JPG…
on 2: I think the reason to draw a fitness landscape is to highlight graphically the presence of local minima, even in a simple optimisation problem. In architectural terms, this means getting an idea of how many sub-optimal solutions there are in a problem, which helps while exploring conceptual design proposals.
Have a look at this very basic example (which I published with two colleagues on "Shell Structures for Architecture", chapter 18): a shell footbridge (24m x 4m footprint), which is generated by two parabolic section curves (the two apex heights are the two design variables). The maximum displacement of the structure under gravity load and self-weight is the objective function. Simple example, but several local minima and interesting shell forms (image below).
@AB,
The expression used by David in the Number of Samples Input is a simple “x+1”. By grafting the Divide Curve Output, he got 81*81 lenghts (6,561 values). You have to make sure that number is divisible by the no. of samples. The second expression used for the Length output is only a scaling factor (my guess), to control the height of the fitness landscape drawing.
Cheers…
n account of the position of the sun and weather cannot be expressed in terms of a single set of luminous intensity values (which is what IES files do).
With regards to your example files, I agree with Chris. The primary reason for the low illuminance levels is that the light bounces are getting lost in the tube. Have you checked with the manufacturer/distributor if the location of the IES file should be inside the tube and not flush with the ceiling? Physically modelling such tubes in lighting software like Radiance (which is what HB uses) or AGI32 is a fairly expensive proposition. This is one of the reasons why manufacturers provide photometric data for such devices (however simplistic that data might be).
The candelamultiplier increases or decreases the luminous intensity values. So it will have a direct impact on the calculation. The primary reason for having that input was to enable users to do some testing with different lamp types and environmental factors such as dirt depreciation. You need not change them for your simulation. Assuming that the IES file is inside the tube, in order to make this calculation work inside HB you'd have to crank up the calculation settings to a very high level (start with -ab 10 -ad 4096).
Finally, due to shortcomings in the annual simulation software (Daysim), IES files will not work directly work with annual calculations. However, there is a fairly easy workaround for that issue. In case you are planning to run annual calculations with IES files, please let us know here.
Sarith…
ing illuminance and limiting exposure (lux hours). Hours with direct solar irradiance are likely to exceed the limiting illuminance thresholds, which range from (200 to 50 lux as per Table 3.4 in CIE 157:2004). It makes sense to consider direct illuminance (an ab=0 simulation in Honeybee) separately from a normal illuminance calculation.
Assuming that the museum exhibits have low to high responsivity to light, an ideal solution would minimize direct sunlight. For daylight from the sky and reflected light, it might be enough to keep the illuminance levels below the recommended thresholds and then sum up lux-hours.
Daysim, the annual daylighting engine used by Honeybee and DIVA, is not very accurate for direct-sun calculations. You will get more accurate results if you run your analysis with Radiance directly.
Instead of considering the horizontal illuminance grids, one can create grids that correspond to the dimensions of the exhibit and then average those values. I think single points, as shown in your gh file might not suffice. Calculating lux-hours is by far the simplest part of such a simulation. It will only require averaging these points, extracting them into an array and then summing up that array.…
they may not always give you a clear picture of their precise functionality. I thought this may be an issue with many users so I decided to use this opportunity to list all the parameters with my quick take at describing their functionality. Here it goes:
DEFAULT VERTICAL SHIFT -- Number - Shifts panels vertically creating a custom-sized panel with height of the specified dimension at first row of skin.
DEFAULT HORIZONTAL SHIFT -- Number - Shifts panels horizontally creating a custom-sized panel with width of the specified dimension at first column of skin.
DEFAULT SKIN CHAMFERED CORNER--True/False - If "True" wraps panels around surface corners. If '"False" creates a custom-sized panel if necessary to complete the skin surface at the shared edge, defining this way a sharp corner.
RESET BAY AT POINTS-- True/False - When using Panel Bays (Group of Panels) this option restarts the panel bay at a surface corner.
FLOOR HEIGHT-- Number - The Floor To Floor value of the Skin generated. If Panels are shorter than this value, a leftover 'gap' will be seen at top of panels.
MINIMUM PANEL WIDTH -- Number - If the width of a panel (standard or customized) created during the skin generation is less than this value, the panel won't be created and the placement will be skipped.
MINIMUM PANEL HEIGHT -- Number - If the height of a panel (standard or customized) created during the skin generation is less than this value, the panel won't be created and the placement will be skipped.
MINIMUM PANEL AREA-- Number - If the area of a panel (standard or customized) created during the skin generation is less than this value, the panel won't be created and the placement will be skipped.
PANEL PROFILE TOLERANCE-- Number - If a resulting panel shape is within the specified tolerance value to any already created panel, this panel is used instead of creating a new panel shape. The tolerance specifically tracks the distance between each corner of the new panel and the corresponding corners of the existing panels. This parameter is mostly used in "SURFACE PANEL MODE'', where a large number of custom-shaped panels can be generated, to reduce the number of unique panels created.
GENERATE PANEL TYPES ONLY-- True/False - This parameter allows the Skin Generator to discard the creation of scene geometry but still have the grasshopper panel data being generated. The skin panels can be retrieved as grasshopper geometry using SkinDesinger's Display components.
RESET DF BETWEEN SURFACES-- True/False - When "True", the Design Controllers (Design Functions in v.01) resets to its initial values each time it starts a new skin surface. Used for instance to restart a layout pattern at every new surface.
SURFACE PANEL MODE-- True/False - The "SURFACE PANEL MODE" is used to generate panels matching the shape of the surfaces included in the "skinSurfaceList" input.
SURFACE PANEL ORIENTATION -- Orientation Type - When activating the "SURFACE PANEL MODE'', this parameter defines the orientation of the panel generated relative to the normal of the surface that defines its shape. The acceptable values (found in the "Surface-Panel Mode Orientations" dropdown) are:RESETFLIPROTATE 90ROTATE 90 FLIPROTATE 180ROTATE 180 FLIPROTATE 270ROTATE 270 FLIP
I hope this helps but feel free to reach out if you have any questions!
Santiago
…
cnicas y estrategias para resolver problemas que hoy se presentan en el diseño y fabricación digital de formas complejas y euclidianas. Se podrá entender mejor la diferencia entre el estilo Modernista y el Parametricismo que vivimos desde el 2000.
Tomando como plataforma básica Rhino, se explora y optimiza el diseño y fabricación de topologías complejas bajo los entornos de Rhino, Grasshopper y RhinoNest.
Instructores:
Andrés Gonzalez, McNeel Miami.
Director de RhinoFabLab.
MSc. María Mena Deferme, Directora de Arquitectura.
Tecnológico de Monterrey campus León, Mexico.
NOTA 1: Tendremos el patrocinio de LaserCUT.mx y podremos usar un Láser Industrial durante todo el taller, mas el laboratorio del iTesm.
NOTA 2: Estudiantes y docentes podrán adquirir Rhino 4.0 con un descuento del 50% sobre el precio de lista en USA.
Descarga el Outline del workshop PDF
http://www.screencast.com/t/M2FjOTBi…
at the same time just seems logical to me that a force would always seek the path of least resistance, so rather than making a 90 degree turn follow a more similar direction. The thought of separating stresslines into groups of tension and compression ist interesting from a design perspective. I wondered how tension and compression forces relate to the S1 and S2 lines, so what I did is pluging the outputs of P1 and P2 into the respective vector display for S1 and S2 and coloring the vectors blue for compression (negative values) and red for tension (positive values). So when you look at the upper side of the surface S1 (SC_02), Tensors along S1 show compression towards the middle and towards the supports Tension. However the Principal Stress Display of the Mesh Visualisation Component for the upper side shows it the other way round, again Red/ Tension and Cyan/ Compression as it says in your manual. Did I miss out on something ? When I look at the lower side (SC_03) I find it more or less matching up (I am just decerning between negative and positive values) so that might make the difference in the size of the compression area. So, does this mean that the S1 and S2 lines are related to the upper and lower side of the surface ? One beeing predominantely in compression(upper side) and one being stressed(lower side) ? That would also explain to me why S1 and S2 swap when you change the side of the surface. I am sorry, many questions... If you have time to explain, would be great. Also, maybe you have a book or article in mind which would explain those things more in depth....
Many thanks,
Philipp…
returned to GSA, it is solving. You might have to reset result scales using the GSA button.
Cheers,
Jon
Checking Input Data - this may take some time.
________________________________________
Data checks commenced at 23/08/2017 4:59:18 PM.
Checking input data for static analysis by GSS.
Shortest element (element 9) is 5 m long.Longest element (element 1) is 6 m long.
Data checks completed at 23/08/2017 4:59:18 PM. No errors or warnings found.
Analysis commenced at 23/08/2017 4:59:18 PM.
Analysis by Gss Static analysis
Initialising results modulesSolving for displacementsSolution statisticsSparse Parallel Direct 12 active nodes 14 active elements 2 analysis cases 24 degrees of freedom Minimum degree ordering 90 terms in stiffness matrix Maximum stiffness is 4.804e+009 at node 4 in direction z Minimum stiffness is 3.132e+008 at node 2 in direction yy Condition number of the stiffness matrix is ~ 5328. Maximum relative error in displacements will be 2.4e-10 percent. Factorization in 109 msSolving for element forces and reactionsCalculation completeAnalysis completed with no errors
Analysis completed at 23/08/2017 4:59:18 PM.Analysis time: 0.172 seconds
…