Search
  • Sign In

Grasshopper

algorithmic modeling for Rhino

  • Home
    • Members
    • Listings
    • Ideas
  • View
    • All Images
    • Albums
    • Videos
    • Architecture Projects
    • Installations
    • Add-ons
  • Forums/Support
    • Current Discussions
  • My Page

Search Results - 分分快3最准高手助赢计划-『8TBH·COM』福利彩票开奖结果012期查询--2023年3月19日6时48分50秒.H5c2a3.5jexii16x-gov-hk

Event: Parametric Brick Wall-Facade using Rhino and Grasshopper | Advanced Digital Modeling for Additive Manufacturing (3D Printing)
ll-Facade using Rhino and Grasshopper Participants will learn; Rhinoceros Grasshopper Advanced Parametric Design Brick Formations and Explorations Shadow-Design Relationship     Session 2: Advanced Digital Modeling for Additive Manufacturing (3D Printing) Participants will learn; How to prepare a 3D design to 3D Printing process in Rhinoceros Advanced Methods for 3D Print optimisation for time and cost effective production 3D Printing software education Cura INFO Date Saturday, 28 September 2019 Schedule 9:30am – 2:30pm (Session 1) | 2:45pm – 7:00pm (Session2) Venue (TBC) Pada Labs, Istanbul  Language English/Turkish   Softwares Rhinoceros Grasshopper 3D Cura Participants will need to bring their own laptops with software installed; other plugins will be distributed at the workshop.   Prerequisites  All tutorials are open to beginner level. No previous knowledge of Cura and Grasshopper needed. Basic knowledge of Rhinoceros recommended. Participation The workshop is limited to the first 20 applicants. Each student will receive a certificate of participation.   Prices for each session: (You can pick one and attend one)   Special Early registration (Deadline 1 August ) Students 310 TL Professionals 400 TL   Regular registration  Students 390 TL Professionals 480 TL   Prices for Session 1&2 Combined: (Full Day)   Special Early registration (Deadline 1 August ) Students 540 TL Professionals 690 TL   Regular registration  Students 620 TL Professionals 790 TL  DISCOUNTS Group registration of 3 or more people will get a 15% discount.   * Previous Pada workshop students will get a 10% discount. DIRECTOR Begum Aydinoglu, M.Arch AA DRL will be instructing and directing the following workshops. REGISTRATION: Email to pada.workshops@gmail.com for registration instructions. Please note that we have limited seats and there won't be any exceptions. …
Added by Begüm Aydınoğlu at 9:08am on August 7, 2019
Comment on: Topic 'testing for surface curve intersection'
pproach that will hopefully work. There's still the last part of putting it all together, but I figured I'd post my progress so you could play around with it if you wanted. This is kind of a lucky situation since its only single face breps and simple trims that are being worked with. I've attached 3 definitions to this post. The first is my reorganization of your original definition, which creates the surfaces from the point grid and culls out any surfaces that are not "on" the surface so that we don't have to deal with them later down the line. This is done through a small VB component which determines whether any of the corner points lie on the surface. If it does it keeps the surface, if not, then it doesn't. The only issue with this is that in your example file, there are some surfaces which the corner points do not lie on the surface, yet the surface that they create spans the underlying surface. At this point I'm not worrying about those. You mentioned that you only want the surfaces that lie at the edge...this can be done by testing whether all 4 corner points lie on the trimmed surface or not. The second definition is a coded version of the project function. In the example it will project to all the breps supplied, yet in the final version this probably won't be desired. Also, the direction (z axis) is hard code...this could be swapped out if desired. The third definition is an shot at trimming a surface with an input curve (that curve happens to be projected). I tried this many ways, but found that the function RhinoCutUpSurface seamed to work alright. The other attempts at doing this directly with through functions available for OnBrep were unsuccessful and very complex. Luckily because the underlying brep is an single, untrimmed surface this function works well for us, but in situations where we have a trimmed or multiface brep we'd be up a creek with out a paddle. The function creates an array of breps, but in our case it will create essentially the same surface split by our curve and joined together as a single brep with two (possibly more) faces. All we have to do is find out which face we want to keep and duplicate that into a separate brep and pass it out of the component. In the example file I'm determining which on to keep based off of the distance from a test point to the centroid of each face. The other option here, which would trump the need for projection or trimming, would be to extrude the edge curves through the surface in question, and use the BrepSplit function which requires two breps. There would still be the need to sort out what to keep, but if this approach were used, all the split pieces would be separate breps. So, all the pieces are pretty much working separately, all that I have left to do is put them all together in the base definition. The only thing that is really the hump with that is determining exactly which face to keep. My idea at the moment is to find out which corner of the surface does not like on the base surface and use that to determine which face will be thrown out. This might be one of the easier ways, but will not be rock solid. The other option is to pull a test point that's on one of the faces to the base surface and the other face, then use the distance from test point to the point on the base surface and the distance to the pulled point on the other face to the base surface to figure out which one to keep. As to sectioning off parts of the solution, you could do this in a number of ways, but here's two simple ones. In a scripting component just add a boolean value to the inputs and put the whole script inside of an if statement that looks at that boolean value. With components just add a boolean gate or a null pattern componet anywhere you want in the stream. Again, hook in a boolean toggle value, and that will stop the info from going to components that are downstream.…
Added by Damien Alomar at 10:46am on July 5, 2009
Comment on: Topic 'How to add materials to material table'
rectly except for the first material in a series.  See attached image... Here is my code: Private Sub RunScript(ByVal M As Object, ByVal C As Color, ByRef AddName As Object, ByRef AddMat As Object, ByRef AddBool As Object, ByRef baseName As Object, ByRef newMatName As Object) Dim z As String = "newMatName" Dim y As String = "BaseName" Dim x As Integer = 0 Dim nRestore As String Dim mTemp As Rhino.DocObjects.Material mTemp = CType(M, Rhino.DocObjects.Material) y = mTemp.Name Dim nTemp As String If mTemp.Name.Contains("_MOD_R") = False Then nRestore = mTemp.Name nTemp = mTemp.Name & "_MOD_R" & C.R & "_G" & C.G & "_B" & C.B mTemp.Name = nTemp z = nTemp mTemp.DiffuseColor = C If Doc.Materials.Find(nTemp, True) < 0 Then Doc.Materials.Add(mTemp) x = x + 1 AddName = nTemp AddMat = mTemp End If mTemp.Name = nRestore End If newMatName = z AddBool = x BaseName = y End Sub 1) I have checked that all of the materials I am calling by name exist in the document and that data matching is correct.  There doesn't seem to be anything special about the offending material except that it is always the first material that was added to the document by my script.  2) The main thing I was missing in the previous script was the "doc.Materials.Add()" -- how on earth should I have known that existed?  Even a search for "doc.Materials" in the Rhinocommon SDK doesn't turn that up.  I'm having a very hard time using the SDK to my advantage, it seems not to correlate to the actual code I need to write.  2b) Perfect example... now I am trying to rewrite my other component (which exposes all of the document materials) to set a few objects manually in Rhino with the Materials I want to use as templates.  Now I am trying to find out how to access the material assigned to an object. Seems easy, but it's clearly not a Property, and I can't find an appropriate Method in either the Objects or Materials classes. 3) One of my problems originally, when feeding the component one material and multiple colors, was that the nTemp variable was not resetting properly for the second color.  Same thing if I duplicated the material to match the list of colors.  It would create a material on the first pass but concatenate "_MOD_R_G_B" in each subsequent pass and be caught by my String checker.  Why is that?  I thought that the nTemp Name variable would be reset in each pass by the line "mTemp = CType(M, Rhino.DocObjects.Material)" and "nTemp = mTemp.Name" combination.   Does the mTemp material somehow carry over its properties in each successive pass?  That's why I added the nRestore to be sure each pass reset the name back to the original. Still, I wonder if there is some problem with the way I am conceptualizing this that is causing the first material to be the same as the input material. Thanks for your help on this... Cheers, Marc…
Added by Marc Syp at 11:35am on January 6, 2012
Comment on: Topic 'UNDERSTANDING GEOMETRY.'
s: [Mesh Brep] which used the Rhino mesher, [Mesh Surface] which create a rectangular grid of mesh faces on a single surface and [Simple Mesh] which attempts to represent each face in a Brep using a single Tri or Quad and accuracy be damned. Let's focus on the easy ones first... [Simple Mesh] is a first attempt at providing a completely reductionist meshing engine. It was born out of a skype discussion I had with Brian James one night during the weekly Seattle RMA developer meeting. It only handles very simple cases at the moment so it's probably not all that useful, but it's there anyway just in case. If this mesher cannot handle a certain Brep face because it's too complicated it will use the native Rhino mesher for that face. The purpose of [Mesh Surface] is to provide a single surface mesh that isn't distorted by the underlying parameterization of a surface. My approach for this actually turned out to be really slow, which is why the [Q] input is set to false by default. This mesher was never designed to take trims into account, however you get a single option [H] to control how trims interact with the mesh. [Mesh Brep] merely channels the native Rhino mesher. You can supply meshing settings that look a little bit like the meshing settings that Rhino itself exposes. With these settings you can control how seams in breps are handled, how much the mesh is allowed to deviate from the underlying geometry, how many quads you want etc. This is the most customizable option, but even here it's totally possible you can't get what you want. For example, there is no way to enforce a mesh that contains only quads. As soon as seams are stitched or whenever trims are present, you're going to get triangles along the edges of meshes. -- David Rutten david@mcneel.com…
Added by David Rutten at 1:14pm on March 12, 2014
Comment on: Topic 'Shell Structure form finding(something wrong with the springs component for kan…'
. as you can see I devided it into 3 parts. part1: when I try to connect the new shape to the rest of your definition,the plan z,which gives the panels individually when baked(so I can work them individually)doesn't work,apparently there is something missing when I want to explode it. that is why I connected it to the definition that I already had(part2)( the only cool part about that one is the attractor point)well it kind works,but not really(if you zoom in you can see that there are some parts overlapped and really not looking good).however I much rather your definition because of the option it gives me to work with individual panels when baked(planz). however it's around 4 am. and I have decided to make some major changes in design (to prepare some closed and open space,I'm talking about part3 that works with the fibonacci like shape,I know it doesnt look really good,but seriously 4am.!).the major problem is that I tried to make a form like that with kangaroo so the shape would be smoother but I wasnt really able to make it with kangaroo,that's why I made it manually in rhino.I was wondering if you can help me make something like this ( not exacly like this) with kangaroo or (if impossible to be made with kangaroo)even helping me optimizing it so it doesnt look as bad,as you can see when I try to work the grasshopper definition on this shape,it gives me different panel sizes for each surface and all of them are to small compared with the overall size of the so-called pavillion(give it 200-500 sq feet (20-50 sq.m).and any suggestions about the shape would be appreciated,please forgive my basic knowledge of rhino and grasshopper,and let's say I wanted to make a shape like these(don't laugh please!) u promised not to laugh!!! please help me find the right way! …
Added by Nazanin Tabatabaei at 3:03am on November 18, 2015
Comment on: Topic 'Question about doing optimisation in Grasshopper with Femap'
make-this-form-... Other than that: 1. Tensegrity is a "static" thingy in the sense that you use some module (let's call it "mode") and repeat. Creating some code that does INVENT new modes for T trusses (Pulitzer/EMMY/Nobel on sight, he he)  ... I would strongly suggest to forget that THIS VERY MOMENT. 2. Applying some T "mode" on something (see my examples in the above thread where I use surfaces for the T nodes) is another animal. If you intend to use Kangaroo to "relax" that something (NOT the T itself) well ... you can do it but has nothing to do with T. 3. The Kangaroo def provided is a "way" to test the "rigidity" of the T in use. It's a "post-processing" thing NOT a T solving thing. 4. I have a terrible feeling: are you saying that (a) without knowing a thing (or two) from C#, (b) without knowing K1/K2, (c) with a limited GH experience ... your goal is to write down from scratch a FEA ("Femap") thingy that ALSO does node "relaxation" ? If so ... well ... what about sky diving (without parachute) or that classic Russian roulette "game"?  PS: shown double tetra (classic) and XFrames (classic) T trusses applied in open and closed surfaces. But of course these are abstract stupid "arrangements" utterly out of question in real-life: read CAREFULLY the discussion in the thread provided above AND also study the 3dPDF attached (with a system out of many available) in order to get the gist about what real-life means (Note: EVEN if no real-parts are used ... the node calculation is different from the abstract "star" connections pictured above - by "star" I mean that cables meet at a single point in space without any "offset" etc etc). Moral: Seppuku Plan Z: Skype ASAP …
Added by peter fotiadis at 11:58pm on November 20, 2015
Topic: Push ObjectName back into Rhino from an Excel List
d the ObjectName of a selected set of objects from a Rhino model in CSV format.  2) Opened this in Excel, Column-A contains the GUID, Column-B contains ObjectNames. 3) Modified and revised the ObjectNames in Excel.  4) Using another GH-solution, Wrote a VB script to push this modified data back into the model.  However after baking, the objectName is not getting updated.   Though the solutions do not show any runtime errors, after baking, the ObjectNames are not updated.  However, if I try selecting the object using:   obj.Select < - this gives an error   -------------------------------------------------------- Here is the code to my GH-solution (see attached image)   WriteToXL module: ------------------------------------------------------------------------------ Private Sub RunScript(ByVal id As Object, ByRef mName As Object, ByRef GUID As Object, ByRef A As Object) Dim obj As Rhino.DocObjects.RhinoObject = doc.Objects.Find(id)'Dim A As StringDim mP1(2) As DoubleDim mP2(2) As DoubleDim mCurve As Rhino.DocObjects.CurveObjectIf obj Is Nothing ThenmName = "Obj not found"ElseIf obj.ObjectType = Rhino.DocObjects.ObjectType.Curve ThenmCurve = objmP1(0) = mcurve.CurveGeometry.PointAtStart.XmP1(1) = mcurve.CurveGeometry.PointAtStart.YmP1(2) = mcurve.CurveGeometry.PointAtStart.Zmp2(0) = mcurve.CurveGeometry.PointAtEnd.Xmp2(1) = mcurve.CurveGeometry.PointAtEnd.Ymp2(2) = mcurve.CurveGeometry.PointAtEnd.ZEnd IfmName = CType(obj.Name, String)GUID = obj.idA = GUID.ToString & ", " & CStr(mName) & ", " & mp1(0) & ", " & mp1(1) & ", " & mp1(2) & ", " & mp2(0) & ", " & mp2(1) & ", " & mp2(2)End IfEnd Sub -------------------------------------------------------     ReadFromXL module: ------------------------------------------------------- Private Sub RunScript(ByVal activate As Object, ByRef A As Object, ByRef B As Object, ByRef C As Object)     If activate = True Then      Dim XLApp As Object      Dim XLSheet As Object       xlApp = System.Runtime.InteropServices.Marshal.GetActiveObject("Excel.Application")      Dim strSheet As String = "ObjectName+GUID"      XLSheet = xlApp.Worksheets(strSheet)       Dim strGUIDColumn As String = "A"      Dim strObjectNameColumn As String = "L"       Dim iRow As Int16      Dim nRows As Int16 = XLSheet.usedrange.rows.count      Dim obj As Rhino.DocObjects.RhinoObject      ReDim B(nRows - 1)      ReDim C(nRows - 1)      ReDim A(nRows - 1)      For iRow = 1 To nRows         Dim strGUID As String = XLSheet.Range(strGUIDColumn & iRow).Value        Dim objGUID As Guid = New System.Guid(strGUID)        Dim strObjectName As String = XLSheet.Range(strObjectNameColumn & iRow).Value        obj = doc.Objects.Find(objGUID)        obj.Attributes.Name = strObjectName        B(iRow - 1) = objGUID        C(iRow - 1) = obj.Attributes.Name        A(iRow - 1) = obj      Next     End If   End Sub ----------------------------------------------------------------…
Added by Viswanath Urala at 3:34pm on August 3, 2011
Topic: Octopus first steps.. trying to solve problem
a reply.  Q1. I run two generations in my generation 0 I can distinguish 3 lines...what do they refer to? I got my Fitness as 5 values Heating, Cooling etc and thought there will be 5 lines  Q2. What are values on X/Y/Z axis and color legend? What colors means I got black 409.87 and red 33.63 amd tis dot 99.2:5 and green 2.27:4? Q3. I can see that in every generation my values are condensed ...of course I shall run this for many more generations... but as result of  my simulation which is minimize energy will be the last one that head down?  Q4. I was reading this forum and there is no current way of savings all results for each run ? Q5. If there are some any general advice how I shall tackle my problem this would be great! Ps. I will try to run this example over the weekend to see what is the result. …
Added by Michal Dengusiak to Octopus at 6:04am on June 21, 2013
Topic: Ladybug Installation problems
Python and install it and it should work fine. 2. You still see the image above in case 1 however you have GHPython already installed. What about that? In this case probably the GHA component is blocked. Find GHPython.GHA on your system (usually at: C:\Users\%username%\AppData\Roaming\Grasshopper\Libraries) . Right click, go to properties and select unblock. To make sure that GHPython is working fine on your system open the attachment file (testGHPython.gh). You should see something similar to the image below on your screen when you open the file: If you see the something similar you should be fine to go! Try to open one of the example files. 3. You have Ladybug running but in some of the case the output is missing. You see something similar to this: or this This one is because you are using old version of GHPython. Close the file without saving. Download the new version and install it and re-open the file. It should work fine now. Hope it helps, Mostapha …
Added by Mostapha Sadeghipour Roudsari to Ladybug Tools at 2:22pm on December 1, 2013
Topic: New tutorial - Developable strips - Part 3
the mesh into long strips 1 quad wide. *I did make an alternative icon for this, but opted for the tamer one in the end ;) The Unroller component goes along the strip face by face, rotating it into a single plane. Note that this component will still give a result even if you supply it with non planar quads - it will just fold them along a diagonal. However, if the faces are significantly non-planar, then it won't work as well for fabricating from a smooth strip of sheet material, so it is better to try and make sure your planarizing in the relaxation part is working well. The Unroller component also has a T input which allows you to unroll only part of the mesh at a time. This is mainly for animation purposes, and most of the time you will probably just want to leave it set at 1. At the moment the unroller is limited to working with open strips, so if your strip forms a closed loop, you will have to split it first. Later releases should include an automatic 'loop snipper'. The final part of the definition then takes all these strips, orients them into the XY plane, and does some very basic layout. It's then up to you to label, add tabs, nest, laser cut and assemble! Because of the subdivision, each strip should have an even number of quads, which can also be useful for generating interlocking tabs by offsetting alternate groups of edges. I'll try and post an example of this soon. I hope this is helpful. It was my intention when making this that it could be a relatively quick and easy way of making smooth curved structures out of sheet material, (I'm thinking card, polypropylene, metal, thin plywood...) with a lot less fixing/connecting work than doing a similar shape with individual panels. Thanks to all the participants in these long-running threads: http://www.grasshopper3d.com/forum/topics/how-to-create-nodesbone http://www.grasshopper3d.com/forum/topics/skeletal-mesh*  which inspired this work, especially some of the comments by Ivan Kiryakov, Wiktor Kidziak, Giulio Piacentino, Andrew Haas and Mårten Nettelbladt. *note also that the meshes generated using this definition can be used for developable strips, because they have the even-valence property. I was also inspired by these papers: http://www.cs.jhu.edu/~misha/Fall09/Liu06.pdf http://www.geometrie.tugraz.at/wallner/strip.pdf…
Added by Daniel Piker to Kangaroo at 10:13am on January 14, 2014
  • 1
  • ...
  • 898
  • 899
  • 900
  • 901
  • 902
  • 903
  • 904
  • ...
  • 914

About

Scott Davidson created this Ning Network.

Welcome to
Grasshopper

Sign In

Translate

Search

Photos

  • Circuit Pavilion Rhino Grasshopper Tutorial

    Circuit Pavilion Rhino Grasshopper Tutorial

    by June Lee 0 Comments 1 Like

  • Circuit Pavilion Rhino Grasshopper Tutorial

    Circuit Pavilion Rhino Grasshopper Tutorial

    by June Lee 0 Comments 0 Likes

  • Vase

    Vase

    by Andrey Zotov 0 Comments 2 Likes

  • Vase Mesh

    Vase Mesh

    by Andrey Zotov 0 Comments 1 Like

  • Patterns

    Patterns

    by Andrey Zotov 0 Comments 0 Likes

  • Add Photos
  • View All
  • Facebook

Videos

  • Circuit Pavilion Rhino Grasshopper Tutorial

    Circuit Pavilion Rhino Grasshopper Tutorial

    Added by June Lee 0 Comments 0 Likes

  • Floating Mobius Pavilion Rhino Grasshopper Tutorial

    Floating Mobius Pavilion Rhino Grasshopper Tutorial

    Added by June Lee 0 Comments 0 Likes

  • Magnet Shade Pavilion Rhino Grasshopper Tutorial

    Magnet Shade Pavilion Rhino Grasshopper Tutorial

    Added by June Lee 0 Comments 0 Likes

  • Ngon Mesh

    Ngon Mesh

    Added by Parametric House 1 Comment 0 Likes

  • Minimal Surface

    Minimal Surface

    Added by Parametric House 0 Comments 0 Likes

  • Wind Pavilion

    Wind Pavilion

    Added by Parametric House 0 Comments 0 Likes

  • Add Videos
  • View All
  • Facebook

© 2026   Created by Scott Davidson.   Powered by Website builder | Create website | Ning.com

Badges  |  Report an Issue  |  Terms of Service