(tree info, relationships to certain other objects, etc.) after it's been baked, so that our team can hand tool some of the results, delete certain objects, etc. I'm using the doc.objects.find(guid) function right now - which works fine when I feed a string into the VB component and set the input as a GUID, but am having a hard time casting my strings from Excel into the GUID directly in the VB component. Hopefully it's easy to do and I can whack my palm on my face, as often I do. Here's my script...I get the "specified cast is not valid" error at: Dim obj As Guid = xlSheet.Range(strGUIDColumn & I).Value.
If activate = True Then
Dim xlApp, xlSheet As Object
xlApp = System.Runtime.InteropServices.Marshal.GetActiveObject("Excel.Application")Dim strSheet As String = "MEM_6"
Dim strGUIDColumn As String = "C"
Dim strDeleteColumn As String = "F"
Dim intCheck As Int16 = xlApp.Worksheets("META").Range("B4").Value
Dim I As Int16
xlSheet = xlApp.Worksheets(strSheet)
For I = 2 To intCheck + 1
Dim obj As Guid = xlSheet.Range(strGUIDColumn & I).Value <- returns my casting error
If doc.Objects.Find(obj) Is Nothing Then
xlSheet.Range(strDeleteColumn & I).Value = "X"
End If
Next
End If
thanks!…
Added by David Stasiuk at 8:05am on December 15, 2010
(twice the amount of lines, it'll take twice as long).
If you nest two loops you're iterating over each line, and then you iterate again over each line. So when you now have twice as many lines, it takes four times as long O(N*N) or O(N²)
With an octree you can reduce the second iteration from O(N) to O(log N). The reason octrees are fast is because they allow you to quickly reject large amounts of lines in your set. Lines are no longer stored in a list, but rather in recursive spatial buckets. If we determine that a certain bucket is too far away to possibly yield any valid results, we can instantly skip all the lines in that buckets and any sub-buckets. If you're lucky, you can reject ~85% of the local data in every iteration, which means even large collections of lines are reduced to only a few potential candidates very quickly.
Thinking about this I'm actually not sure now whether lookup in my Tree3d class is O(log N) or O(sqrt N), but the basic principle holds. The reason the resulting algorithm is O(N * log N) is because the outer loop is still O(N) but the inner loop is now replaced with an O(log N) searcher, so you end up with O(N) * O(log N) = O(N log N)
At least that's how I think it works, computational theory has never been my strong suit.
--
David Rutten
david@mcneel.com
Poprad, Slovakia…
Added by David Rutten at 4:55pm on November 29, 2012
ions are probably reflective of the prevailing humidity conditions (I just had a chat about this with my advisor, who incidentally also happens to be on the committee for LM-83).
The Tregenza sky patches considered in daylighting calculations don't do a good job of incorporating the correct size of the sun into calculations. In the figure below, the sun on the right is the one considered for calculations in Daysim. You can get a more accurate answer by considering a more discretized sky, however, I am not aware if that is possible with Daysim (and therefore HB) right now. Therefore, your direct sun calculations are likely to be off somewhat depending on how much of it there is(I'd say overestimated).
The calculations with humid sky, which are on account of the sky itself (and not the sun alone) are likely to be more relevant.
Regarding your questions about studying weathering effects with LB/HB, I have no idea as that is something that I haven't looked into before. I am sure someone else on this list has a more informed opinion on this issue than I do.
Your project, and your approach to it, seems really interesting and I am glad to be having this discussion :).
Sarith
…
try now to integrate Geco in an interdisciplinary architectural engineering studio: hoping we can show you some nice applications of your tool, I'll keep you update and sending now details by e-mail. Here the file (very welcome to be shared). It most probably contais trivial errors by me, thanks for helping and giving some tip! Gr. Michela
FILE:
Ok, right, I see the outputs update correctly. Origin of problems must be in some different mistake I do:
- Incident radiation: I am not sure I understand what is going on: why I get so many 'not a number' ? (The Galapagos report is full of NaNs).
Bio-Diversity: 0.887 Genome[0], Fitness=NaN, Genes [89% · 44%] { Record: Too many fitness values supplied } ...
Genome[7], Fitness=NaN, Genes [74%] { Record: No fitness value was supplied } ....
Genome[9], Fitness=NaN, Genes [37% · 11%] { Record: Genome was mutated to avoid collision Record: Too many fitness values supplied }
- Daylight calculations: the geometry accumulates withouth deleting the previous models. As a consequance, results almost do not change after few varations (so, outputs get updated but do not vary). In current daylight definition: the first object being imported is the one where the grid has to fit; its setting makes it cancelling all the other objects during import. All the others, do not delete anything when imported. When running loops (manual or GA) that vary parameters, the entire geometry do not get cancelled - so I guess the loop does not pass back by the cancelling step, but imports only the geometry which has been varied by the parameters using the setting of that import component only? I will then try again by changing the order of the operations, but if you have specfic tips, let me know.
THANKS!
…
Data – how it’s stored, accessed, and associated – is the threshold that separates you from fluid execution and powerful routines in Grasshopper. Beginning with a presentation on the main principles of working with Data Trees, this webinar will incrementally unpack a diverse set of Data-related techniques through a series of “live” exercises. With two instructors offering guided curriculum and continuous support it is our goal to provide you with an in-depth and personal learning experience. Additional topics covered will include: what is a Data Structure, why Data Trees look the way they do, and how to navigate, manipulate, and grow your Data Tree in an organized way.
Topics:
What are Data Trees? What do all of those index values mean?
If I have a Data Tree, How can I precisely navigate through it?
My Data Tree is wild! How can I tame it and make its structure clear?
What else are Trees good for? How can I use my Data Tree to create unique labels?
Details:
Level: Some experience suggested. Beginners can review our Introduction to Grasshopper Webinar here: https://vimeo.com/album/2103407
Suitable For: All Creative Professionals: Artists, Architects, Designers, Engineers, Programmers, Students.
Software: Rhino 4SR9 or Rhino5Beta + Grasshopper 0.9.
Instructors: Ronnie Parsons + Gil Akos | Partners, Studio Mode
Pricing: $99/$59 : Professional/Student Rate. Register now to Access the Full Webinar Content and Videos: http://modelab.nu/?p=7233.…
Data – how it’s stored, accessed, and associated – is the threshold that separates you from fluid execution and powerful routines in Grasshopper. Beginning with a presentation on the main principles of working with Data Trees, this webinar will incrementally unpack a diverse set of Data-related techniques through a series of “live” exercises. With two instructors offering guided curriculum and continuous support it is our goal to provide you with an in-depth and personal learning experience. Additional topics covered will include: what is a Data Structure, why Data Trees look the way they do, and how to navigate, manipulate, and grow your Data Tree in an organized way.
Topics:
What are Data Trees? What do all of those index values mean?
If I have a Data Tree, How can I precisely navigate through it?
My Data Tree is wild! How can I tame it and make its structure clear?
What else are Trees good for? How can I use my Data Tree to create unique labels?
Details:
Level: Some experience suggested. Beginners can review our Introduction to Grasshopper Webinar here: https://vimeo.com/album/2103407
Suitable For: All Creative Professionals: Artists, Architects, Designers, Engineers, Programmers, Students.
Software: Rhino 4SR9 or Rhino5Beta + Grasshopper 0.9.
Instructors: Ronnie Parsons + Gil Akos | Partners, Studio Mode
Pricing: $99/$59 : Professional/Student Rate. Register now to Access the Full Webinar Content and Videos: http://modelab.nu/?p=7233.…
ning with a presentation on the main principles of working with NURBS surfaces, this webinar will incrementally unpack a diverse set of surface-related techniques through a series of “live” exercises with Grasshopper. With two instructors offering guided curriculum and continuous support it is our goal to provide you with an in-depth and personal learning experience. Additional topics covered will include: how to move through “surface space”, creating and analyzing simple surface panels, and how to create custom panels on a surface.
Topics:
What is a Surface? How do I make one and what are its parts?
Wait!.. A Surface has its own Space? How can I navigate this Space?
How can I divide my Surface into Panels? Can I ensure they are flat -or- How do I keep them curvy?
I just tested all of my Panels for planarity but what do those numbers mean? How can I more intuitively visualize the results?
Now I have simple Panels, but can I create my own custom Panel Object at each original Panel location?
Details:
Level: Some experience suggested. Beginners can review our Introduction to Grasshopper Webinar here: vimeo.com/album/2103407
Suitable For: All Creative Professionals: Artists, Architects, Designers, Engineers, Programmers, Students.
Software: Rhino 4SR9 or Rhino5Beta + Grasshopper 0.9.
Instructors: Ronnie Parsons + Gil Akos | Partners, Studio Mode
Pricing: $99/$59 : Professional/Student Rate. Register now to Access the Full Webinar Content and Videos: http://modelab.nu/?p=7238.…
Data – how it’s stored, accessed, and associated – is the threshold that separates you from fluid execution and powerful routines in Grasshopper. Beginning with a presentation on the main principles of working with Data Trees, this webinar will incrementally unpack a diverse set of Data-related techniques through a series of “live” exercises. With two instructors offering guided curriculum and continuous support it is our goal to provide you with an in-depth and personal learning experience. Additional topics covered will include: what is a Data Structure, why Data Trees look the way they do, and how to navigate, manipulate, and grow your Data Tree in an organized way.
Topics:
What are Data Trees? What do all of those index values mean?
If I have a Data Tree, How can I precisely navigate through it?
My Data Tree is wild! How can I tame it and make its structure clear?
What else are Trees good for? How can I use my Data Tree to create unique labels?
Details:
Level: Some experience suggested. Beginners can review our Introduction to Grasshopper Webinar here: https://vimeo.com/album/2103407
Suitable For: All Creative Professionals: Artists, Architects, Designers, Engineers, Programmers, Students.
Software: Rhino 4SR9 or Rhino5Beta + Grasshopper 0.9.
Instructors: Ronnie Parsons + Gil Akos | Partners, Studio Mode
Pricing: $99/$59 : Professional/Student Rate. Register now to Access the Full Webinar Content and Videos: http://modelab.nu/?p=7233.…