te some implications and questions so I will go one by one:
"Now I would like to use a single VRay material as a template for creating multiple identical materials"I hope this will work, but as VRay does not expose any SDK, I would not guarantee any specific result.
"Now I need to add them to the document material table"This is done with a reference to a document instance, such as the one you get with the code doc.Materials (both in C# and Vb.Net).
"I'm not going to learn C# to modify his script"That's a pity, it would be nice to pass on this troublemaker to somebody else! :)Btw, C# and Vb.Net are very very similar. This script could be written in Vb.Net too.
"Reference to a non-shared member requires an object reference. (line 96)"This only means that you need to access the Materials property on an instance, not on the type (class) name. Change that line using what is written at point 2.
"Do I understand that the material has to be assigned to a particular object in order to enter the Material Table?"No it does not. But if you call the _Purge command it will be removed if it does not have an object that references it.
"Can I assign it to a Layer instead?"You do not need to. But this would be achieved with doc.Layers[whichLayer].RenderMaterialIndex = materialIndex; in C# or doc.Layers(whichLayer).RenderMaterialIndex = materialIndex in Vb.Net.
"Any ideas? A better way to do this?"If you found a way to bypass the VRay SDK not being there, this should work.
"Giulio's component has a type hint defined as a Material"It does not any longer. The hint was there in earlier versions of Grasshopper, but now the hint has disappeared. This is not so bad, and it is also the only way you would be able to use either a Material instance already or a string for a material name.
"How was that done?"Probably it was done in an older version of Grasshopper. But which version are you using?
"I can't figure out how to cast the input as a Rhino.DocObjects.Material, so you can see that I have cast it as a compatible type in the first 2 lines... is there a cleaner way?"That sounds like a good way actually. Be sure your component responds properly when something wrong is inputted, though.Dim mTemp As Rhino.DocObjects.Material = CType(M, Rhino.DocObjects.Material)in one line might also work. See msdn for more conversion operators and functions.
I hope this helps,
- Giulio_______________giulio@mcneel.com…
edit 29/04/14 - Here is a new collection of more than 80 example files, organized by category:
KangarooExamples.zip
This zip is the most up to date collection of examples at the moment, and collects t
mmon.sdk ,but i herad its used in rhino5.
or example: the book grasshopper primer second edition ,page 98
i dont know what is the "doc.absolutetolerance" and where i can find about it....i dont kow it should be a class or a fuction,i tried to search the rhino4. net sdk,i cant find it ....maybe its my searching problem.
but according to the grasshopper primer, i indeed know many kind of Variables,many functions,basic structure, loops, and conditions,and what is onutil.xxxx and rhutil.xxxx.but i found all this imformation is not helpful enough to me when reading the examples downloaded from many disscussions.when i found a new variable or new funcion,i dont know where i can find the introduction about them,such as the upper coding:"doc.absolutetolerance".i tried to use the auto complete such as
dim xxxx as oncurve
xxxx. to find the class oncurve's funtions and variables ,but its too uneffcient.
-----------------------------------------------
And,i dont know the difference between the components vb script and dotnet vb script....
because i found when i type onutil. the auto complete has noting appear...and the variables declaring is not the same. in vb script dim xxxx as curve but in dotnet vb script its dim xxxx as oncurve,which is the same as the grasshopper primer teached me...but i guess.... the vb script component is just like the rhinoscript(not the same),and the dotnet vb script is more powerful than it. am i right?
------------------------------------------------
at last i dont know these.
Imports System Imports System.IO Imports System.Xml Imports System.Data Imports System.Drawing Imports System.Reflection Imports System.Collections Imports System.Windows.Forms Imports Microsoft.VisualBasic Imports System.Collections.Generic Imports System.Runtime.InteropServices
when i search google about them,the introduction about them is too professinal for me to understand......i just want to know what i can do by using them ...
-------------------------
sorry for disturbing you so much!!!
best regards!
yours truly
YUAN.T
…
lla progettazione parametrica e le tecniche di modellazione algoritmica per la generazione di forme complesse
___________________________________________________________________________________
luogo:
Sala meeting Hotel Mercure Milano Centro Piazza Oberdan 12 – 20129 MILANO
Scadenza iscrizioni: 12 Novembre 2011 – ore 15.00
___________________________________________________________________________________
info e prenotazioni:
Le Penseur (coordinamento formazione)
info@lepenseur.it
081 564 21 84
347 548 71 78
quote di partecipazione e programma (formato PDF)
ulteriori informazioni sui corsi PLUG > IT
___________________________________________________________________________________
PROGRAMMA DEL CORSO
GIORNO_01
10.00 – 10.30: presentazione workshop
10.30 – 11.30: introduzione alla progettazione parametrica: teoria, esempi, casi studio
11.30 – 13.00: Grasshopper: concetti base, logica algoritmica, interfaccia grafica
13.00 – 14.00: break | lunch
14.00 – 16.00: nozioni fondamentali: componenti, connessioni, data flow
16.00 – 18.00: esercitazione
GIORNO_02
10.00 – 12.00: funzioni matematiche e logiche, serie, gestione dei dati
12.00 – 15.00: analisi e definizione di curve e superfici
GIORNO_03
10.00 – 12.00: definizione di griglie e pattern complessi
12.00 – 13.00: trasformazioni geometriche, paneling
13.00 – 14.00: break | lunch
14.00 – 16.00: esercitazione
16.00 – 18.00: attrattori, image sampler
GIORNO_04
10.00 – 13.00: data tree: gestione di dati complessi
13.00 – 14.00: break | lunch
14.00 – 15.00: digital fabrication: teoria ed esempi
15.00 – 18.00: nesting: scomposizione di oggetti tridimensionali in sezioni e posizionamento su piani di taglio per macchine a controllo numerico CNC…
up structural systems in the parametric environment of Grasshopper. Participants will be guided through the basics of analysing and interpreting structural models, to optimisation processes and how to integrate Karamba3d into C# scripts.
This workshop is aimed towards beginner to intermediate users of Karamba however advanced users are also encouraged to apply. It is open to both professional and academic users.
Course Fee:
Professional EUR 750 (+VAT)
Educational EUR 375 (+VAT)
Course Outline
Introduction & Presentation of project examples
Optimization of cross sections of line based and surface based elements
Geometric Optimization
Topological Optimization
Structural Performance Informed Form Finding
Understanding analysis algorithms embedded in Karamba and visualising results
Complex Workflow processes in Rhino3d, Grasshopper3d and Karamba3d
Places are limited to a maximum of 10 participants with limited educational places. A minimum of 4 places are required for the workshop to take place.
The workshop will be cancelled should this quota not be filled by May 31st.
The workshop will be taught in English. Basic Rhino and Grasshopper knowledge is recommended. No knowledge of Karamba is needed.
Participants should bring their own laptops with either Rhino5/Rhino6 and Grasshopper3d installed. A 90 day trial version of Rhino can be downloaded from Rhino3d.
Karamba ½ year licenses for non-commercial use will be provided to all participants.
…
up structural systems in the parametric environment of Grasshopper. Participants will be guided through the basics of analysing and interpreting structural models, to optimisation processes and how to integrate Karamba3d into C# scripts.
This workshop is aimed towards beginner to intermediate users of Karamba however advanced users are also encouraged to apply. It is open to both professional and academic users.
Course Fee:
Professional EUR 750 (+VAT)
Student EUR 375 (+VAT)
Course Outline
Introduction & Presentation of project examples
Optimization of cross sections of line based and surface based elements
Geometric Optimization
Topological Optimization
Structural Performance Informed Form Finding
Understanding analysis algorithms embedded in Karamba and visualising results
Complex Workflow processes in Rhino3d, Grasshopper3d and Karamba3d
Places are limited to a maximum of 10 participants with limited educational places. A minimum of 4 places are required for the workshop to take place.
The workshop will be cancelled should this quota not be filled by October 15th.
The workshop will be taught in English. Basic Rhino and Grasshopper knowledge is recommended. No knowledge of Karamba is needed.
Participants should bring their own laptops with either Rhino5/Rhino6 and Grasshopper3d installed. A 90 day trial version of Rhino can be downloaded from Rhino3d.
Karamba ½ year licenses for non-commercial use will be provided to all participants.
…
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