same as in Maya:
1) number of vertices on the source and target should be identical
2) order of vertices should also be identical -- for this reason, when blending in Maya, one often ends up copying the source shape and modifying it to generate the target shape rather than modelling it from scratch -- just to make sure that order of vertices remains the same.
If you are indeed looking for a definition that works with Meshes, this methodology should work for you:
1) get vertices of source and target (count and order should match)
2) get the vertices for each face of the mesh (identifying the index of vertices that create a face. For Rhino, they will either be 3 or 4)
3) draw lines between source and target vertices.
4) sample one point on every line based on the blend amount. Implying that a 50% value would give you the midpoint on each line, 0 would give the start point, and 100% would give the end point.
5) these new points are the vertices of your desired shape. use the information you generated in step (1) to recreate mesh faces.…
start. I suggest you to apply your rules still after the random reduce; do like 1/2 (or 3?) iterations with those rules to "fix" the 1/2 pattern. But give more information: - you say "first" and "last" objects, on the same plane? or those rules have to check also between different planes? - "first" and "last" stop counting at edges of the building? every edges? (or just at <90° etc..)
- you rules can conflict with themselves... left vs right
left say 50% and right say 0%... what to do?…
but once it finished I get this error message:
1. The simulation has not run correctly because of this severe error: ** Severe ** GetSurfaceData: There are 50 degenerate surfaces; Degenerate surfaces are those with number of sides < 3.
Can sombody tell me how to find the degenerate surfaces and get rid of them?
I attached the gh.-file and I'm using the "Small objects - meters" template for Rhino, in case that's important.
Thanks in anvance…
be done easier, but later on the geometry will change and therefore this seems the better option. But coming back to the problem
First, there were some problems concerning the zone, although it seems solved still the “runenergysimulation” gives the following warning:
1. The simulation has not run correctly because of this severe error:
** Severe ** UpdateZoneSizing: Cooling supply air temperature (calculated) within 2C of zone temperature
Do one of you know what went wrong? It probably will solve most of it.
Second, “set Zone Thresholds” gives the following warning:
1. Solution exception:global name 'maxHumidity_' is not defined
However, the component is missing the max humidity input on the list, has this to do something with the error?
All the components are up to date.
I hope it will be an easy fix.
Gr Lars
“set Zone Thresholds” runtime error
{0;0;0}0. Runtime error (UnboundNameException): global name 'maxHumidity_' is not defined1. Traceback: line 80, in checkTheInputs, "<string>" line 282, in script
"runenergysimulation” report
{0;0}0. Current document units is in Meters1. Conversion to Meters will be applied = 1.0002. TypeError('Waarde kan niet null zijn.\r\nParameternaam: source',)3. Failed to copy the object. Returning the original objects...This can cause strange behaviour!4. [1 of 8] Writing simulation parameters...5. [2 of 8] No context surfaces...6. [3 of 8] Writing geometry...7. [4 of 8] Writing Electric Load Center - Generator specifications ...8. [5 of 8] Writing materials and constructions...9. [6 of 8] Writing schedules...10. [7 of 8] Writing loads and ideal air system...11. [8 of 8] Writing outputs...12. ...... idf file is successfully written to : c:\ladybug\unnamed\EnergyPlus\unnamed.idf13. 14. Analysis is running!...15. c:\ladybug\unnamed\EnergyPlus\eplusout.csv16. ......
Done! Read below for errors and warnings:
17. 18. Program Version,EnergyPlus, Version 8.3.0-6d97d074ea, YMD=2016.03.02 20:55,IDD_Version 8.3.019. 20. ** Warning ** IP: Note -- Some missing fields have been filled with defaults. See the audit output file for details.21. 22. ************* Beginning Zone Sizing Calculations23. 24. ** Warning ** GetInternalHeatGains: People="CLASSROOMOFFICEPEOPLE", Activity Level Schedule Name values25. 26. ** ~~~ ** fall outside typical range [70,1000] W/person for Thermal Comfort Reporting.27. 28. ** ~~~ ** Odd comfort values may result; Schedule="SCHOCCUPANCYSCHEDULE".29. 30. ** ~~~ ** Entered min/max range=[0.0,1.0] W/person.31. 32. ** Warning ** Calculated design heating load for zone=CLASSROOM is zero.33. 34. ** ~~~ ** Check Sizing:Zone and ZoneControl:Thermostat inputs.35. 36. ** Severe ** UpdateZoneSizing: Cooling supply air temperature (calculated) within 2C of zone temperature37. 38. ** ~~~ ** ...check zone thermostat set point and design supply air temperatures39. 40. ** ~~~ ** ...zone name = CLASSROOM41. 42. ** ~~~ ** ...design sensible cooling load = 25499.10 W43. 44. ** ~~~ ** ...thermostat set point temp = 0.000 C45. 46. ** ~~~ ** ...zone temperature = 15.334 C47. 48. ** ~~~ ** ...supply air temperature = 15.000 C49. 50. ** ~~~ ** ...temperature difference = -0.33433 C51. 52. ** ~~~ ** ...calculated volume flow rate = 197273.21341 m3/s53. 54. ** ~~~ ** ...calculated mass flow rate = 237634.19357 kg/s55. 56. ** Warning ** ManageSizing: For a plant sizing run, there must be at least 1 Sizing:Plant object input. SimulationControl Plant Sizing option ignored.57. 58. ************* Testing Individual Branch Integrity59. 60. ************* All Branches passed integrity testing61. 62. ************* Testing Individual Supply Air Path Integrity63. 64. ************* All Supply Air Paths passed integrity testing65. 66. ************* Testing Individual Return Air Path Integrity67. 68. ************* All Return Air Paths passed integrity testing69. 70. ************* No node connection errors were found.71. 72. ************* Beginning Simulation73. 74. ************* Simulation Error Summary *************75. 76. ** Warning ** The following Report Variables were requested but not generated77. 78. ** ~~~ ** because IDF did not contain these elements or misspelled variable name -- check .rdd file79. 80. ************* Key=*, VarName=ZONE PACKAGED TERMINAL HEAT PUMP TOTAL COOLING ENERGY, Frequency=Hourly81. 82. ************* Key=*, VarName=ZONE PACKAGED TERMINAL HEAT PUMP TOTAL HEATING ENERGY, Frequency=Hourly83. 84. ************* Key=*, VarName=CHILLER ELECTRIC ENERGY, Frequency=Hourly85. 86. ************* Key=*, VarName=BOILER HEATING ENERGY, Frequency=Hourly87. 88. ************* Key=*, VarName=FAN ELECTRIC ENERGY, Frequency=Hourly89. 90. ************* Key=*, VarName=ZONE VENTILATION FAN ELECTRIC ENERGY, Frequency=Hourly91. 92. ************* Key=*, VarName=EARTH TUBE FAN ELECTRIC ENERGY, Frequency=Hourly93. 94. ************* Key=*, VarName=PUMP ELECTRIC ENERGY, Frequency=Hourly95. 96. ************* Key=*, VarName=ZONE VENTILATION TOTAL HEAT LOSS ENERGY, Frequency=Hourly97. 98. ************* Key=*, VarName=ZONE VENTILATION TOTAL HEAT GAIN ENERGY, Frequency=Hourly99. 100. ************* Key=*, VarName=EARTH TUBE ZONE SENSIBLE COOLING ENERGY, Frequency=Hourly101. 102. ************* Key=*, VarName=EARTH TUBE ZONE SENSIBLE HEATING ENERGY, Frequency=Hourly103. 104. ************* EnergyPlus Warmup Error Summary. During Warmup: 0 Warning; 0 Severe Errors.105. 106. ************* EnergyPlus Sizing Error Summary. During Sizing: 3 Warning; 1 Severe Errors.107. 108. ************* EnergyPlus Completed Successfully-- 5 Warning; 1 Severe Errors; Elapsed Time=00hr 00min 4.65sec109.…
en that name). For example, in my grammar:
F = FXX = %(50:F[-X][+X]; 30:F[-X][X][+X]; 20:F[X])Axiom => F0 - F1 - FX2 - FF[-X][+X] with some seed, or FF[-X][X][+X] with other seed, or FF[X] with other.
And context-sensitive means, for example in my grammar, the rule:X = >(-F:+FX; +F:F[-F[-X][+FX]]) if the previous symbols (in the string of L-System, on the left when a X is read) is a -F, then X will be +FX, but if the symbol is +F, then X will be F[-F[-X][+FX]].
Or:
X = G(2: +++F; 3:++F; 4:+F) means that in the second generation X will be +++F, in the fourth will be +F.
Or:
X = IF(BL = 3: +F, -F) It means that if the branch level (BL) of X is 3, will be +F, otherwise -F.
And parametric is something like:
F = F(ValueA:x+0.5; ValueB: 6*BL), F have two metadata (ValueA and ValueB), and when "x" is read, is replaced by the value of that attribute of his predecessor, ie, will be the ancestor valueA+0.5. And BL is the branch level of X, which means that if X have a Path like {0,0,1} or {0,3,0} (three indices), ValueB will be 12, for that X in that generation/iteration.
…
to open!!! That time goes up as you increase the count, and interesting offset curves (crosscut!) happen when count is in the mid to high twenties.
There is an anomaly to be aware of at the switchback points on the path; best seen in top view, the blue curves are the new, adjusted tool paths. See how they have no discontinuity at that point?
Also, some tool-bit-size areas are not touched by the tool path at this setting (1=100%) of the '%Tool Diameter' slider:
P.S. Coverage is improved considerably with '%Tool Diameter' slider at 0.5 (50%). 26 offsets take 1.6 minutes.
…
= new Point3d(0, 0, 0); b = new Point3d(0, 0, l); Line x = new Line(a, b); Curve m = x.ToNurbsCurve();
if (x == null) return;
Point3d[] points; m.DivideByCount(50, true, out points);
//for (double itr = 0; itr < 50; itr = itr + 0.01) //{ double frac = 50 / 230; int itr = 0; foreach (Point3d point in points) { while (true) { double imtr = (50 - itr) / frac; itr++; Color colour = ColorFromHSV(imtr, 1, 0.5); int rgb = colour.ToArgb(); if (_hash.Contains(rgb)) continue;
_hash.Add(rgb); _points.Add(point); _colours.Add(colour); break; } //} } for (int i = 0; i < _points.Count; i++) cd.AddPoint(_points[i], _colours[i]); }
// <Custom additional code> private readonly HashSet<int> _hash = new HashSet<int>(); private readonly List<Point3d> _points = new List<Point3d>(); private readonly List<Color> _colours = new List<Color>();
/// <summary> /// This method will be called once every solution, before any calls to RunScript. /// </summary> public override void BeforeRunScript() { _hash.Clear(); _points.Clear(); _colours.Clear(); } public static Color ColorFromHSV(double hue, double saturation, double value) { int hi = Convert.ToInt32(Math.Floor(hue / 60)) % 6; double f = hue / 60 - Math.Floor(hue / 60);
value = value * 255; int v = Convert.ToInt32(value); int p = Convert.ToInt32(value * (1 - saturation)); int q = Convert.ToInt32(value * (1 - f * saturation)); int t = Convert.ToInt32(value * (1 - (1 - f) * saturation));
if (hi == 0) return Color.FromArgb(255, v, t, p); else if (hi == 1) return Color.FromArgb(255, q, v, p); else if (hi == 2) return Color.FromArgb(255, p, v, t); else if (hi == 3) return Color.FromArgb(255, p, q, v); else if (hi == 4) return Color.FromArgb(255, t, p, v); else return Color.FromArgb(255, v, p, q); }
Gives this error
1. Value was either too large or too small for an Int32. (line: 0)
…
ntermediate) mode very quickly, in a matter of days or even less, but the initial cold shower is at least 3 degrees warmer if you're staring at 300 components instead of 600.
Entire Ribbon panels would disappear for example (Math.Domain, Math.Util, Sets.Tree, Vector.Colour, Mesh.Triangulation, Transform.Group, Transform.Util at a first glance). As well as a lot of components in the remaining panels. I'd say at least 50% of what's there now will be gone.
I can draw additional information in the ribbon indicating that one is currently in beginner mode and how to switch to advanced mode etc. etc.
--
David Rutten
david@mcneel.com
Poprad, Slovakia…
do i get them to be in one list...
Example:
List 1:
1
2
3
4
5
etc....
List 2:
10.1
11.1
34.5
40
50
etc...
Merged List
1, 10.1
2,11,1
3,34.5
4,40
5,50
etc... …
Added by Eric Galipo at 3:10pm on January 13, 2016