e and i get it. If you have time check the attached papers we published a while ago in relation to the contribution of thermal mass in the reduction of temperature in residential buildings. See the nice contribution of the heavy TM or the lower one for light TM.
As for the solarHeatCapacity, your description (of the 50W) is derived on a 1 Facade/Floor ratio and fully glazed. The only way to reduce it is to increase the ratio (bigger facade area). Which is not recommended (energy losses), but this is a different issue. So, roughly, we can say that 50 is the lower value. If i have less glazing area this number will be higher (right?)
I want to define a value list of "architectural situations", so it is easy to explain and understand. One situation can be:
"Ratio facade/floor 1 & Fully glazed" = 50
"Ratio facade/floor 1 & Half glazed" = 75
"Ratio facade/floor 1.5 & Fully glazed" = 30
"Ratio facade/floor 1.5 & Half glazed" = 50
"Ratio facade/floor 0.75 & Fully glazed" = 70
"Ratio facade/floor 0.75 & Half glazed" = 90
Makes sense for you something like this?
I also defined a value list for the timeConstant like this:
Light Building (Mobile home) = 1Medium-light building (Cement tiles on floor) = 4Semi Heavy Building (Concrete floor + Tiles) = 8Heavy Building (Concrete floors/ceilings + Heavy external and internal walls) = 12
As for the first 5-10 cm effective TM in general my assumption is that you take half of the mass to your space and half to the space above/below you. Will be interesting to do a parametric study on just the thermal mass, uninsulated and insulated to see what the depth limits effectivity will be. Interested in doing such a study together? Can be a nice work even for publishing.
Thanks a lot ... again,
-A.…
error, but resetting the height to <100m should fix things.
The height of the night boundary reflects the diurnal pattern of the urban boundary layer (image below). During the day the solar shortwave radiation heats up the urban surface, mixes with the air above creating a tall boundary layer. During the night the surface cools down, the boundary layer becomes more stable, and it's height is reduced. So typical heights for daytime is ~ 1000m, and for nightime ~ >100m.
So increasing it by a factor of 8 to 10 is likely what is causing issues with the UWG calculation for you. I started a github issue here: https://github.com/chriswmackey/Dragonfly/issues/11 so that we can fix this typo. Also we should figure out why exactly the calculation is failing so that can potentially put an upper bound to the inputs or a better error message. Thanks for catching it!
Finding some reference data linking weather layers to urban typologies is a good question, I'd like to find some too. Perhaps Chris/Mostapha might be able to provide some? You can check out the following thesis [1],[2] that the UWG algorithm is based on, which references three case studies for Singapore (Punggol), Capitoul and Bubble:
[1] https://dspace.mit.edu/handle/1721.1/107347
[2] https://dspace.mit.edu/handle/1721.1/59107…
ky.exe did not accept -p parameter and made empty sky.cal file.
----
Edit: solved run problem, Bee did not download OpenStudioMasterTemplate.idf
Get it here: https://github.com/mostaphaRoudsari/Honeybee/issues/119
Now get empty HDR:
C:\ladybug\prox\imageBasedSimulation>rpict -i -t 10 -vtv -vp 245.129 -226.458 20 0.405 -vd -0.549 0.656 -0.518 -vu -0.332 0.397 0.855 -vh 42.862 -vv 26.991 -v l 0 -vs 0 -vl 0 -x 800 -y 600 -af prox_RAD_Perspective.amb -ps 8 -pt 0.15 -pj 0.6 -dj 0 -ds 0.5 -dt 0.5 -dc 0.25 -dr 0 -dp 64 -st 0.85 -ab 2 -ad 1024 -as 175 -ar 150 -aa 0.200 -lr 4 -lw 0.050 -av 0 0 0 prox_RAD.oct 1>prox_RAD_Perspectiv e.unf rpict: 0 rays, 0.00% after 0.0000 hours rpict: skybright`c__ladybug_skylib_cumulativeSkies_SINGAPORE_SGP_SINGAPORE_SGP_1 : undefined variable rpict: 1020 rays, 4.91% after 0.0000 hours
----
Hi friends,
trying to get a cumulative sky image metric to run and encountered an issue with the image-based metrics component. It throws:
Runtime error (KeyNotFoundException): honeybee_materialLib Traceback: line 768, in main, "<string>" line 1442, in script
I guess this is some sort of setup issue on my end, or I messed up the definition? Any help appreciated.
Thanks,
Max
…
the displayed geometry is being cut from top and bottom.
How can I solve this issue? I attached image for explanation and grasshopper file.
For display I use following code:
private void RunScript(Point3d point, ref object A) { //Calling trail function to limit "pts" list. trail(); //Incrementing point list pts.Add(point); //Adding points to polyline variable pline.Clear(); pline.AddRange(pts.ToArray()); } // <Custom additional code> //Variables List<Point3d> pts = new List<Point3d>(); Polyline pline = new Polyline(); int limit = 2550; //Function to limit the size of points public void trail(){ if(pts.Count > limit){ pts.RemoveAt(0); } } //Display public override void DrawViewportMeshes(IGH_PreviewArgs args) { args.Display.DrawPolyline(pline, Color.Black, 8); }…
the files and copy/paste in the Component folder...)
Unfortunately, I can't see the axes of the viewport neither the view cube when I open the Octopus window. The Solver seems to run but I don't get any visualization of the fitness landscape. I have tried with another computer and everything looks fine. Does anyone of you have already experienced such a case? How could I solve this problem for computer 1?"
Computer 1:
Computer 2:
Thanks for any idea!
Best regards"
As I start Octopus, I have two numbers in the Rhino Command Prompt Window:
sometimes 8 and then 0 or 1 and then 0...
As you recommended, I tried to place the latest version of helixtoolkitwpf.dll from the helixtoolkit in the libraries folder. HelixToolkit.Wpf.dll (http://storage.ning.com/topology/rest/1.0/file/get/2654949179?profile=original)
It still doesn't work.
Best
Aymeric…
Added by Aymeric to Octopus at 6:01am on February 9, 2016
where originally where the polysurface edges (pink in the attached picture) because they are intersecting with the cells as well.
who can help me with an idea how i can prevent from getting the intersection with those edges?
i have used a simple form for demonstration but my real polysurface has alot of sharp edges because initially it was created from mesh.
maybe i can manipulate the initial mesh somehow?
thank a lot for all the rightchess people
…
s to minimize the mass, the second to minimize the VCG (vertical center of gravity). As a genotype for now I've connected only the number of spreaders (see picture below for explanation). Two questions arises here: 1. The 1st thing is I am not sure what to connect to the Phenotype input. In all the examples it is more straihg-forward - you plug in domain for points (i.e. surface) and the solution is a point. In my case I change the number (of spreaders) and get all the geometry from the photo. I tried to connect the whole geometry - so all lines that represent: mast, spreaders, steel lines, but Octopus does not "want" to start - it seems that he calculates something - evaluation time displaying on the left etc. But nothing appears on the chart. From the other hand it doesn't crash either. 2. Judging on what I see in Rhino, Octopus rarely wait till GH finishes calculating the whole geometry. The problem is it takes a while - I've usen "time buffer" component with delay set to 8(!) seconds, so all the loops finishes and total mass that appear is the final one. Any ideas how I can make him wait? Thanks, Nicolas…
.0004. [1 of 7] Writing simulation parameters...5. [2 of 6] No context surfaces...6. [3 of 6] Writing geometry...7. [4 of 6] Writing materials and constructions...8. [5 of 7] Writing schedules...9. [6 of 7] Writing loads and ideal air system...10. [7 of 7] Writing outputs...11. ...... idf file is successfully written to : c:\ladybug\unnamed\EnergyPlus\unnamed.idf12. 13. Analysis is running!...14. c:\ladybug\unnamed\EnergyPlus\eplusout.csv15. ......
Done! Read below for errors and warnings:
16. 17. Program Version,EnergyPlus, Version 8.2.7-777c1f8d79, YMD=2015.02.28 16:09,IDD_Version 8.2.718. 19. ** Warning ** IP: Note -- Some missing fields have been filled with defaults. See the audit output file for details.20. 21. ** Warning ** Version: in IDF="'8.2.7'" not the same as expected="8.2"22. 23. ** Warning ** ManageSizing: For a zone sizing run, there must be at least 1 Sizing:Zone input object. SimulationControl Zone Sizing option ignored.24. 25. ** Warning ** ManageSizing: For a plant sizing run, there must be at least 1 Sizing:Plant object input. SimulationControl Plant Sizing option ignored.26. 27. ** Severe ** GetHTSubSurfaceData: Surface Openings have too much area for base surface=F73533B3C6894C67936B_GLZP_1228. 29. ** ~~~ ** Opening Surface creating error=F73533B3C6894C67936B_GLZP_12_GLZ_1230. 31. ** Severe ** GetHTSubSurfaceData: Surface Openings have too much area for base surface=F73533B3C6894C67936B_GLZP_2532. 33. ** ~~~ ** Opening Surface creating error=F73533B3C6894C67936B_GLZP_25_GLZ_2534. 35. ** Severe ** GetHTSubSurfaceData: Surface Openings have too much area for base surface=F73533B3C6894C67936B_GLZP_2836. 37. ** ~~~ ** Opening Surface creating error=F73533B3C6894C67936B_GLZP_28_GLZ_2838. 39. ** Severe ** GetHTSubSurfaceData: Surface Openings have too much area for base surface=4BDFD67E6D0E486796CC_GLZP_940. 41. ** ~~~ ** Opening Surface creating error=4BDFD67E6D0E486796CC_GLZP_9_GLZ_942. 43. ** Severe ** GetHTSubSurfaceData: Surface Openings have too much area for base surface=4BDFD67E6D0E486796CC_GLZP_1044. 45. ** ~~~ ** Opening Surface creating error=4BDFD67E6D0E486796CC_GLZP_10_GLZ_1046. 47. ** Severe ** GetHTSubSurfaceData: Surface Openings have too much area for base surface=4BDFD67E6D0E486796CC_GLZP_1148. 49. ** ~~~ ** Opening Surface creating error=4BDFD67E6D0E486796CC_GLZP_11_GLZ_1150. 51. ** Severe ** GetHTSubSurfaceData: Surface Openings have too much area for base surface=4BDFD67E6D0E486796CC_GLZP_1552. 53. ** ~~~ ** Opening Surface creating error=4BDFD67E6D0E486796CC_GLZP_15_GLZ_1554. 55. ** Severe ** GetHTSubSurfaceData: Surface Openings have too much area for base surface=4BDFD67E6D0E486796CC_GLZP_2456. 57. ** ~~~ ** Opening Surface creating error=4BDFD67E6D0E486796CC_GLZP_24_GLZ_2458. 59. ** Severe ** GetHTSubSurfaceData: Surface Openings have too much area for base surface=4BDFD67E6D0E486796CC_GLZP_2560. 61. ** ~~~ ** Opening Surface creating error=4BDFD67E6D0E486796CC_GLZP_25_GLZ_2562. 63. ** Severe ** GetHTSubSurfaceData: Surface Openings have too much area for base surface=4BDFD67E6D0E486796CC_GLZP_3064. 65. ** ~~~ ** Opening Surface creating error=4BDFD67E6D0E486796CC_GLZP_30_GLZ_3066. 67. ** Severe ** GetHTSubSurfaceData: Surface Openings have too much area for base surface=4BDFD67E6D0E486796CC_GLZP_3268. 69. ** ~~~ ** Opening Surface creating error=4BDFD67E6D0E486796CC_GLZP_32_GLZ_3270. 71. ** Severe ** GetHTSubSurfaceData: Surface Openings have too much area for base surface=4BDFD67E6D0E486796CC_GLZP_3472. 73. ** ~~~ ** Opening Surface creating error=4BDFD67E6D0E486796CC_GLZP_34_GLZ_3474. 75. ** Warning ** GetSurfaceData: Very small surface area[2.94495E-004], Surface=F73533B3C6894C67936B_GLZP_076. 77. ** Warning ** GetSurfaceData: Very small surface area[3.84753E-004], Surface=F73533B3C6894C67936B_GLZP_178. 79. ** Warning ** GetSurfaceData: Very small surface area[9.16905E-004], Surface=F73533B3C6894C67936B_GLZP_380. 81. ** Warning ** GetSurfaceData: Very small surface area[4.96186E-004], Surface=F73533B3C6894C67936B_GLZP_482. 83. ** Warning ** GetSurfaceData: Very small surface area[2.37373E-005], Surface=F73533B3C6894C67936B_GLZP_684. 85. ** Warning ** GetSurfaceData: Very small surface area[6.35824E-004], Surface=F73533B3C6894C67936B_GLZP_786. 87. ** Warning ** GetSurfaceData: Very small surface area[5.86549E-004], Surface=F73533B3C6894C67936B_GLZP_888. 89. ** Warning ** GetSurfaceData: Very small surface area[7.63765E-004], Surface=F73533B3C6894C67936B_GLZP_1090. 91. ** Severe ** GetSurfaceData: Zero or negative surface area[-8.09566E-004], Surface=F73533B3C6894C67936B_GLZP_1292. 93. ** Warning ** GetSurfaceData: Very small surface area[1.51701E-004], Surface=F73533B3C6894C67936B_GLZP_1394. 95. ** Warning ** GetSurfaceData: Very small surface area[9.29917E-004], Surface=F73533B3C6894C67936B_GLZP_1596. 97. ** Warning ** GetSurfaceData: Very small surface area[2.94451E-004], Surface=F73533B3C6894C67936B_GLZP_1698. 99. ** Warning ** GetSurfaceData: Very small surface area[8.03294E-004], Surface=F73533B3C6894C67936B_GLZP_17100. 101. ** Warning ** GetSurfaceData: Very small surface area[6.83026E-004], Surface=F73533B3C6894C67936B_GLZP_18102. 103. ** Warning ** GetSurfaceData: Very small surface area[9.29917E-004], Surface=F73533B3C6894C67936B_GLZP_20104. 105. ** Warning ** GetSurfaceData: Very small surface area[3.19851E-005], Surface=F73533B3C6894C67936B_GLZP_21106. 107. ** Warning ** GetSurfaceData: Very small surface area[7.63765E-004], Surface=F73533B3C6894C67936B_GLZP_23108. 109. ** Severe ** GetSurfaceData: Zero or negative surface area[-4.05899E-004], Surface=F73533B3C6894C67936B_GLZP_25110. 111. ** Warning ** GetSurfaceData: Very small surface area[6.35824E-004], Surface=F73533B3C6894C67936B_GLZP_27112. 113. ** Severe ** GetSurfaceData: Zero or negative surface area[-9.91146E-004], Surface=F73533B3C6894C67936B_GLZP_28114. 115. ** Warning ** GetSurfaceData: Very small surface area[2.70158E-004], Surface=F73533B3C6894C67936B_GLZP_29116. 117. ** Warning ** GetSurfaceData: Very small surface area[3.22781E-004], Surface=F73533B3C6894C67936B_GLZP_30118. 119. ** Warning ** GetSurfaceData: Very small surface area[4.67821E-004], Surface=F73533B3C6894C67936B_GLZP_33120. 121. ** Warning ** GetSurfaceData: Very small surface area[3.22737E-004], Surface=F73533B3C6894C67936B_GLZP_34122. 123. ** Warning ** GetSurfaceData: Very small surface area[2.65634E-004], Surface=4BDFD67E6D0E486796CC_GLZP_0124. 125. ** Warning ** GetSurfaceData: Very small surface area[4.70736E-004], Surface=4BDFD67E6D0E486796CC_GLZP_1126. 127. ** Warning ** GetSurfaceData: Very small surface area[3.42507E-004], Surface=4BDFD67E6D0E486796CC_GLZP_3128. 129. ** Warning ** GetSurfaceData: Very small surface area[5.89276E-004], Surface=4BDFD67E6D0E486796CC_GLZP_4130. 131. ** Warning ** GetSurfaceData: Very small surface area[1.91146E-004], Surface=4BDFD67E6D0E486796CC_GLZP_6132. 133. ** Warning ** GetSurfaceData: Very small surface area[9.71205E-004], Surface=4BDFD67E6D0E486796CC_GLZP_7134. 135. ** Warning ** GetSurfaceData: Very small surface area[4.34494E-004], Surface=4BDFD67E6D0E486796CC_GLZP_8136. 137. ** Severe ** GetSurfaceData: Zero or negative surface area[-3.60159E-004], Surface=4BDFD67E6D0E486796CC_GLZP_9138. 139. ** Severe ** GetSurfaceData: Zero or negative surface area[-1.11946E-004], Surface=4BDFD67E6D0E486796CC_GLZP_10140. 141. ** Severe ** GetSurfaceData: Zero or negative surface area[-3.41257E-004], Surface=4BDFD67E6D0E486796CC_GLZP_11142. 143. ** Severe ** GetSurfaceData: Zero or negative surface area[-8.21483E-005], Surface=4BDFD67E6D0E486796CC_GLZP_15144. 145. ** Warning ** GetSurfaceData: Very small surface area[2.65716E-004], Surface=4BDFD67E6D0E486796CC_GLZP_16146. 147. ** Warning ** GetSurfaceData: Very small surface area[4.84044E-004], Surface=4BDFD67E6D0E486796CC_GLZP_17148. 149. ** Warning ** GetSurfaceData: Very small surface area[7.12297E-004], Surface=4BDFD67E6D0E486796CC_GLZP_19150. 151. ** Warning ** GetSurfaceData: Very small surface area[6.14324E-004], Surface=4BDFD67E6D0E486796CC_GLZP_22152. 153. ** Warning ** GetSurfaceData: Very small surface area[8.88887E-004], Surface=4BDFD67E6D0E486796CC_GLZP_23154. 155. ** Severe ** GetSurfaceData: Zero or negative surface area[-9.89060E-004], Surface=4BDFD67E6D0E486796CC_GLZP_24156. 157. ** Severe ** GetSurfaceData: Zero or negative surface area[-1.14849E-003], Surface=4BDFD67E6D0E486796CC_GLZP_25158. 159. ** Warning ** GetSurfaceData: Very small surface area[4.00479E-004], Surface=4BDFD67E6D0E486796CC_GLZP_27160. 161. ** Warning ** GetSurfaceData: Very small surface area[6.63061E-005], Surface=4BDFD67E6D0E486796CC_GLZP_28162. 163. ** Warning ** GetSurfaceData: Very small surface area[1.09018E-004], Surface=4BDFD67E6D0E486796CC_GLZP_29164. 165. ** Severe ** GetSurfaceData: Zero or negative surface area[-2.49326E-005], Surface=4BDFD67E6D0E486796CC_GLZP_30166. 167. ** Severe ** GetSurfaceData: Zero or negative surface area[-3.17446E-004], Surface=4BDFD67E6D0E486796CC_GLZP_32168. 169. ** Warning ** GetSurfaceData: Very small surface area[8.60686E-004], Surface=4BDFD67E6D0E486796CC_GLZP_33170. 171. ** Severe ** GetSurfaceData: Zero or negative surface area[-2.48515E-005], Surface=4BDFD67E6D0E486796CC_GLZP_34172. 173. ** Fatal ** GetSurfaceData: Errors discovered, program terminates.174. 175. ...Summary of Errors that led to program termination:176. 177. ..... Reference severe error count=24178. 179. ..... Last severe error=GetSurfaceData: Zero or negative surface area[-2.48515E-005], Surface=4BDFD67E6D0E486796CC_GLZP_34180. 181. ************* Warning: Node connection errors not checked - most system input has not been read (see previous warning).182. 183. ************* Fatal error -- final processing. Program exited before simulations began. See previous error messages.184. 185. ************* EnergyPlus Warmup Error Summary. During Warmup: 0 Warning; 0 Severe Errors.186. 187. ************* EnergyPlus Sizing Error Summary. During Sizing: 2 Warning; 0 Severe Errors.188. 189. ************* EnergyPlus Terminated--Fatal Error Detected. 41 Warning; 24 Severe Errors; Elapsed Time=00hr 00min 1.51sec190.…
r." I'm sorry to hear that, I take the interface and ease-of-use rather seriously so this sounds like a fundamental failure on my part. On the other hand, Grasshopper isn't supposed to be on a par with most other 3D programs. It is emphatically not meant for manual/direct modelling. If you would normally tackle a problem by drawing geometry by hand, Grasshopper is not (and should never be advertised as) a good alternative."What in other programs is a dialog box, is 8 or 10 components strung together in grasshopper. The wisdom for this I often hear among the grasshopper community is that this allows for parametric design."Grasshopper ships with about 1000 components (rounded to the nearest power of ten). I'm adding more all the time, either because new functionality has been exposed in the Rhino SDK or because a certain component makes a lot of sense to a lot of people. Adding pre-canned components that do the same as '8 or 10 components strung together' for the heck of it will balloon the total number of components everyone has to deal with. If you find yourself using the same 8 to 10 components together all the time, then please mention it on this forum. A lot of the currently existing components have been added because someone asked for it."[...] has a far cleaner and more intuitive interface. So does SolidWorks, Inventor, CATIA, NX, and a bunch of others."Again, GH was not designed to be an alternative to these sort of modellers. I don't like referring to GH as 'parameteric' as that term has been co-opted by relational modellers. I prefer to use 'algorithmic' instead. The idea behind parameteric seems to be that one models by hand, but every click exists within a context, and when the context changes the software figures out where to move the click to. The idea behind algorithmic is that you don't model by hand.This is not to say there is no value in the parametric approach. Obviously it is a winning strategy and many people love to use it. We have considered adding some features to GH that would make manual modelling less of a chore and we would still very much like to do so. However this is such a large chunk of work that we have to be very careful about investing the time. Before I start down this road I want to make sure that the choice I'm making is not 'lame-ass algorithmic modeller with some lame-ass parametrics tacked on' vs. 'kick-ass algorithmic modeller with no parametrics tacked on'.
Visual Programming.I'm not exactly sure I understand your grievance here, but I suspect I agree. The visual part is front and centre at the moment and it should remain there. However we need to improve upon it and at the same time give programmers more tools to achieve what they want.
Context sensitivity."There is no reason a program in 2014 should allow me to make decisions that will not work. For example, if a component input is in all cases incompatible with another component's output, I shouldn't be able to connect them."Unfortunately it's not as simple as that. Whether or not a conversion between two data types makes sense is often dependent on the actual values. If you plug a list of curves into a Line component, none of them may be convertible. Should I therefore not allow this connection to be made? What if there is a single curve that could be converted to a line? What if you want to make the connection now, but only later plan to add some convertible curves to the data? What you made the connection back when it was valid, but now it's no longer valid, wouldn't it be weird if there was a connection you couldn't make again?I've started work on GH2 and one of the first things I'm writing now is the new data-conversion logic. The goal this time around is to not just try and convert type A into type B, but include information about what sort of conversion was needed (straightforward, exotic, far-fetched. etc.) and information regarding why that type was assigned.You are right that under some conditions, we can be sure that a conversion will always fail. For example connecting a Boolean output with a Curve input. But even there my preferred solution is to tell people why that doesn't make sense rather than not allowing it in the first place.
Sliders."I think they should be optional."They are optional."The “N” should turn into the number if set."What if you assign more than one integer? I think I'd rather see a component with inputs 'N', 'P' and 'X' rather than '5', '8' and '35.7', but I concede that is a personal preference."But if I plug it into something that'll only accept a 1, a 2, or a 3, that slider should self set accordingly."Agreed.
Components."Give components a little “+” or a drawer on the bottom or something that by clicking, opens the component into something akin to a dialog box. This should give access to all of the variables in the component. I shouldn't have to r-click on each thing on a component to do all of the settings."I was thinking of just zooming in on a component would eventually provide easier ways to access settings and data."Could some of these items disappear if they are contextually inappropriate or gray out if they're unlikely?"It's almost impossible for me to know whether these things are 'unlikely' in any given situation. There are probably some cases where a suggestion along the lines of "Hey, this component is about to run 40,524 times. It seems like it would make sense to Graft the 'P' input." would be useful.
Integration."Why isn't it just live geometry?"This is an unfortunate side-effect of the way the Rhino SDK was designed. Pumping all my geometry through the Rhino document would severely impact performance and memory usage. It also complicates the matter to an almost impossible degree as any command and plugin running in Rhino now has access to 'my' geometry."Maybe add more Rhino functionality to GH. GH has no 3D offset."That's the plan moving forward. A lot of algorithms in Rhino (Make2D, FilletEdge, Shelling, BlendSrf, the list goes on) are not available as part of the public SDK. The Rhino development team is going to try and rectify this for Rhino6 and beyond. As soon as these functions become available I'll start adding them to GH (provided they make sense of course).On the whole I agree that integration needs a lot of work, and it's work that has to happen on both sides of the isle.
Documentation.Absolutely. Development for GH1 has slowed because I'm now working on GH2. We decided that GH1 is 'feature complete', basically to avoid feature creep. GH2 is a ground-up rewrite so it will take a long time until something is ready for testing. During this time, minor additions and of course bug fixes will be available for GH1, but on a much lower frequency.Documentation is woefully inadequate at present. The primer is being updated (and the new version looks great), but for GH2 we're planning a completely new help system. People have been hired to provide the content. With a bit of luck and a lot of work this will be one of the main selling points of GH2.
2D-ness."I know you'll disagree completely, but I'm sticking to this. How else could an omission like offsetsurf happen?"I don't fully disagree. A lot of geometry is either flat or happens inside surfaces. The reason there's no shelling (I'm assuming that's what you meant, there are two Offset Surface components in GH) is because (a) it's a very new feature in Rhino and doesn't work too well yet and (b) as a result of that isn't available to plugins.
Organisation.Agreed. We need to come up with better ways to organise, document, version, share and simplify GH files. GH1 UI is ok for small projects (<100 components) but can't handle more complexity.
Don't get me wrong, I appreciate the feedback, I really do, but I want to be honest and open about my own plans and where they might conflict with your wishes. Grasshopper is being used far beyond the boundaries of what we expected and it's clear that there are major shortcomings that must be addressed before too long. We didn't get it right with the first version, I don't expect we'll get it completely right with the second version but if we can improve upon the -say- five biggest drawbacks (performance, documentation, organisation, plugin management and no mac version) I'll be a happy puppy.
--
David Rutten
david@mcneel.com…
been covered since 0051 (correct me if I'm wrong):
1) Shoot for the moon first -- "Control Panel Mode" which allows for advanced interface design. See Max/MSP for example of modal function. I spent a lot of time laying out control panels so they are nice for clients and team members to look at. I spend a lot of time disabling wire display and dragging sliders and panels and graphs around into nice little clusters. Could be something as simple as a mode that disables the view of all component handles, cleans up graph objects, sliders, etc. I know the Remote Control Panel has been requested over and over again since it disappeared, but honestly it wouldn't be much use to me unless it was a full blown customizable interface. In the meantime I'll stick to my own "Canvas Control Panel" methods. (See below...)
2) More control over graph objects. Right now the bar graph for instance automatically sets the lowest and highest value displayed. Would be nice to be able to set extents manually so that you can compare apples to apples on two different lists that have different extents. Also would love to force the bar graph to show all values along x axis, not just first and last. Same goes for showing the numbers of instances for each value. Now it only shows instance numbers in oddball cases. Would like to force them to show for statistical purposes. Love percentages, but usually I also want accurate tallies. I tend to use a member index sets to generate my own lists.
3) Color input for Vectors -- there are fakey fake workarounds but none that are as versatile as simply having a color input.
4) COLOR INPUT FOR TEXT TAGS -- sorry to yell... this one really frustrates me. I often build interactive feedback systems that involve a lot of different types of data, and it is difficult to convey that input when all text is red (or green when selected).
5) Ability to justify text tags using paragraph controls -- currently default is left-justified. Would like to be able to center text horizontally and vertically, among other things.
6) Ability for text tags to handle multi-line text. Not sure the best way to implement this, but often I find myself wanting to attach 3 items of information to a particular object, and I have to string it all together in one line. Would be great if I could insert a "^M" character that stands for carriage return and have that display as multiline text (used in conjunction with above justification controls).
7) More control over Text panels. Thank you for including justification options... but sadly now it begs the question for margin and header control. Text slammed up against the left edge is pretty unsightly. Moreover, if you have labeled a text box, the drop shadow from the title bar tends to overshadow the first line of text if you have Path display turned off. Would like to add some header space to fix the problem and create a cleaner look.
8) Easier access to text font size. Buried in a Special Font... menu. I want to be able to up up down down (left right left right select start) if you know what I mean.
I guess that's it for now... just the things on the top of my head in this category. Looking forward to installing the new release, have to wait until this major project is over though.
Cheers,
Marc
…