rees west to 1 degree west). Changing the latitudinal domain from, say, 0:1 (the equator to 1 degree north) to 88:89 (88 degrees north to 89 degrees north), has zero effect on the x,y shape of the topography map generated. However, in reality, the map should be far, far thinner in the latter case, because longitudinal lines get closer together toward the north and south poles. In actuality, the shape should be close to a trapezoid in both cases, but this is probably not a necessary detail for most people producing maps, since, at an urban or smaller scale, the latitudinal lines bounding the north and south of the map will probably not be that significantly different in length. But the maps should at least stretch from close-to-square for a 1 degree x 1 degree map near the equator to an extremely thin rectangle for a 1 degree x 1 degree map near the north pole.
As an example, I'm looking at a location in Sheffield, UK. The relevant SRTM HGT file spans from 53 N to 54 N, and 2 W to 1 W. The length of the map in the north-south direction should be approximately 111 km, as is the case with the topo map generated by Elk (and a near-standard for 1 degree latitude anywhere in the world). The length of the map in the east-west direction, however, should be somewhere in the range of 67 km, since the 2 W and 1 W longitudinal lines are much closer together at this latitude than they are at the equator. Thus the map should be nearly twice as long in the North-South direction as it is wide in the East-West direction.
If this were to be sorted out, I think it would be really nice to then have the SRTM topo map be positioned automatically in relation to the OSM map being brought in. I think it's good that the OSM map is positioned at 0,0, rather than it's world coordinates, but maybe the SRTM topo map could be aligned with it based on the latitude and longitude domains we input to the SRTM grasshopper module.…
an be given as 88° and 95°. All three angles must sum up to 180, and we're already 3 degrees over balance. Or maybe the user specifies three edge-lengths: 21, 12 and 8. 21 is bigger than 12+8, so even if the triangle was stretched flat, the two short edges cannot reach the ends of the long edge. The above is easy to test for and I add errors to the component if an invalid triangle is provided. However there are also many angle+edge length combinations which result in invalid triangles.
I could of course test for these as well, but the problem is now tolerance. What if the user specifies a redundant angle of 54.7°, whereas the mathematics tell us that the actual angle is 54.7002°. Is that an error? If so, is the angle wrong or is perhaps one of the edges wrong? Or has the triangle simply been over-constrained? Is there a mathematically robust way of dealing with this? And if so, would that also be the most user-friendly way of dealing with it?…
Added by David Rutten at 2:23pm on August 23, 2014
but as one would imagine after 6 or so 'animals' it gets so large that the machine starts to crawl :/
88% of the resources come from the permutation script, my guess is that if the permutation were calculated on the fly with the counter(the engine) it wont have to pre-compile the list which would be much faster...
If anyone has an idea im all ears....
I attached the file (re-written in C#) …
make a new curve from points I attempt to do it by writing:
Curve cv = new Curve();
This gives me the error:Error: 'Rhino.Geometry.Curve.Curve()' is inaccessible due to its protection level (line 88)
I have also tried calling the CreateInterpolatedCurve() from the Curve class, but
Curve cv = null; cv = new Curve.CreateInterpolatedCurve(Mould.Branch(0), 3);
But from this i get:
Error: 'Rhino.Geometry.Curve.CreateInterpolatedCurve(System.Collections.Generic.IEnumerable<Rhino.Geometry.Point3d>, int)' is a 'method' but is used like a 'type' (line 89)I'm really quite lost about how I can this to work. Can anyone help me?…
) function if you've already got a boolean value.
This expression:
x < 12
results in exactly the same things as this expression:
If( x < 12, True, False )
If() is only really useful when you want to return non-boolean data, like so:
If( x < 12, x, 100-x )
In this case, the expression will return either x, or 100-x if x is larger than or equal to 12:
x result
1 1
2 2
10 10
11 11
12 88
13 87
14 86
18 82
70 30
--
David Rutten
david@mcneel.com
Poprad, Slovakia…
Added by David Rutten at 7:22am on August 10, 2011
0.533000void brightfunc skyfunc2 skybright perezlum.cal010 1.382e+00 3.201e-01 1.066879 -0.754821 0.015485 -0.048998 -0.089403 0.066341 -0.860010 0.505947
The values in bold are then evaluated using the equations in the file perezlum.cal inside the RAYPATH directory in Radiance..
{ All-weather Angular Sky Luminance Distribution . Additional arguments required for calculation of skybright: A1 - diffus normalization A2 - ground brightness A3,A4,A5,A6,A7 - coefficients for the Perez model A8,A9,A10 - sun direction}skybright = wmean((Dz+1.01)^10, intersky, (Dz+1.01)^-10, A2 );wmean(a, x, b, y) = (a*x+b*y)/(a+b);intersky = if( (Dz-0.01), A1 * (1 + A3*Exp(A4/Dz) ) * ( 1 + A5*Exp(A6*gamma) + A7*cos(gamma)*cos(gamma) ), A1 * (1 + A3*Exp(A4/0.01) ) * ( 1 + A5*Exp(A6*gamma) + A7*cos(gamma)*cos(gamma) ) );
This data is then mapped to the "glow" material that represents the celestial hemisphere...You can edit the climate based sky produced by Honeybee and enter your own values. The other option would be to just use gendaylit from DOS Prompt.…
didn't look at it that closely), other than to say tree data structure is helping you and hurting you.
What I did to fix the file was work backwards. Looking at only the left panel you are trying to create 11 total planar surfaces from edge curves (8 curves per surface). That means you should be generating 11 of each type of curve so that you will have 88 total curves when you attempt to join them.
Tree data was in some cases giving you 121 of each type of curve (lists matching with tree structure...) so I worked backwards from your individual curves to flatten the inputs until ending up with only 11 (the expected number) of each type of curve.
…