e of type NoneType"
The component works when the number of shades is set to 2, but that's not what I'm looking for. The horizontal shading is working correctly.
Relating to the Daylight Simulation.
I'm also getting the error "1. Solution exception:'NoneType' object has no attribute 'UserDictionary'", more specifcally:
Runtime error (MissingMemberException): 'NoneType' object has no attribute 'UserDictionary'Traceback: line 7374, in callFromHoneybeeHive, "<string>" line 1602, in writeRADAndMaterialFiles, "<string>" line 193, in main, "<string>" line 258, in script
I think it has something to do with the rad material assigned to the shades, because when I disconnect them from the simulation, it works fine.…
(Rhino.RhinoApp.Version.Major >= 6)
the error goes away.
Also line 528 in OMS3Droof
elif (Rhino.RhinoApp.ExeVersion == 6)
to
elif (Rhino.RhinoApp.ExeVersion => 6)
I also noted the example create underwater terrain gives an error in script with item
terrain generator - gh file attached.
Runtime error (MissingMemberException): 'NoneType' object has no attribute 'NumberRows'
Traceback: line 699, in createTerrainMeshBrep, "<string>" line 1064, in script
create_underwater_terrain.gh
The other example all worked I think
Patrick…
same z value as the sphere but x and y rescaled.
You don't even need grasshopper to make it, simply take the diameter of the sphere and create the sin shape considering it as your angle parameter so that you have x=0,y=0 , x=1/4,y=max , x=1/2,y=0 , x=3/4,y=-max, x=1,y=0.
Interpolate the points and project the curve on the sphere, and you have the first curve.
Then scale2D the sphere on x,y and project the same curve as before on the ellipsoid.
At this point or you calculate the angular distance by yourself and rotate the second projection of half of the angular distance between the crests of the sphere and copy and rotate first projection, or simply make one polar array of the first projection deciding how many crests you would like, then create a line between two consecutive quadrant of two crests, and rotate the second projection from the crest to the mid of the line.
At this point you create one line between the quadrant of the crest and the quadrant of the second projection and again another line from the consecutive quadrant to the the quadrant of the second projection. You make two sweep2 with rails the outer crest and the inner crest and profile the line connecting the two, and then polar array them.
It sounds more complicated than what it is really to make …
ize what I'm trying to do, picture an eave blocking or not blocking a ray of sunlight depending on the angle of the sun.
I might be on the right track with using the surface|line tool, which creates a point value when there is an intersection I want the line to not exist(false), and when there is no intersection it has an empty value when I want the line to exist (true).
I can figure out how to make a point value become false, but I cannot figure out how to make no value become true, or anything for that matter.
Trying to convert this to boolean, am I on the right track of what I want to achieve or is there some other way and I need to back up a few steps?
I also figure that even if the line that creates the intersection has to exist, that is fine I will just have it's preview off and not bake it, I can then create a second identical line that is true/false based on whether there is an intersection or not.
…
s helped in the past...but again I must be missing something simple.
here is the code and error--attached are the def and (.3DM) file:
----------------------------------------------------------------------
import rhinoscriptsyntax as rs
import ghpythonlib.components as ghcomp
#print UV
pc = []
maxVecs = []
revVec = []
movedPts = []
pc = ghcomp.PrincipalCurvature(surface, UV)
maxVecs = pc[4]
frames = pc[0]
for vector in maxVecs:
#print vector
tempVec = rs.VectorReverse(vector)
revVec.append(tempVec)
for i in range(len(frames)):
#print frames[i]
print revVec[i]
tempPt = rs.MoveObject(frames[i],revVec[i])
#movedPts.append(tempPt)
vectors = revVec
--------------------------------------------------------------
Runtime error (TypeErrorException): Parameter must be a Guid or string representing a Guid
Traceback:
line 468, in coerceguid, "C:\Users\Aaron\AppData\Roaming\McNeel\Rhinoceros\5.0\Plug-ins\IronPython (814d908a-e25c-493d-97e9-ee3861957f49)\settings\lib\rhinoscript\utility.py"
line 1081, in TransformObjects, "C:\Users\Aaron\AppData\Roaming\McNeel\Rhinoceros\5.0\Plug-ins\IronPython (814d908a-e25c-493d-97e9-ee3861957f49)\settings\lib\rhinoscript\object.py"
line 396, in MoveObjects, "C:\Users\Aaron\AppData\Roaming\McNeel\Rhinoceros\5.0\Plug-ins\IronPython (814d908a-e25c-493d-97e9-ee3861957f49)\settings\lib\rhinoscript\object.py"
line 382, in MoveObject, "C:\Users\Aaron\AppData\Roaming\McNeel\Rhinoceros\5.0\Plug-ins\IronPython (814d908a-e25c-493d-97e9-ee3861957f49)\settings\lib\rhinoscript\object.py"
line 28, in script
Any help with understanding what's going on would be really helpful.
aaron…
tandably create a twist.
I know I need to find the bisector between surfaces to get a reference point (not use wbOffset) for the LnPt plane, but I don't know how.
I've read everything I could find, but I cant understand it well enough to apply it to my definition.
My understanding to find the bisector is so far to;
1) find the surface normals - use them as vectors
2 use the centre of the line that joins the 2 surfaces to create the origin plane needed for to calculate Angle
3) angle/2 = bisector
4?) determine the direction of offset ( I have not looked into that properly, but have seen it discussed)
I have attached the simple geometry version internalised with the wbOffset definition.
Many thanks
James
…
ve' ist nicht möglich. (line 85)
Unfortunately I don't know how to have it displayed in English but it is saying that it can't convert 'Rhino.Geometry.Curve[]' to 'Rhino.Geometry.Curve'. This is my code:
Point3d pt1 = new Point3d(0, 0, 0); Point3d pt2 = new Point3d(1, 0, 0); Point3d pt3 = new Point3d(1, 1, 0); Line line1 = new Line(pt1, pt2); Line line2 = new Line(pt2, pt3); Curve crv1 = line1.ToNurbsCurve(); Curve crv2 = line2.ToNurbsCurve(); List <Curve> crvlist = new List<Curve>(); crvlist.Add(crv1); crvlist.Add(crv2); Curve joined = Curve.JoinCurves(crvlist); A = joined;
What needs to change? Also, do I really need to convert things like lines etc. to NurbsCurves each time I do this, or is there a more direct way? I am quite new to C# and would be thankful for any tips on how to make the above code shorter and more efficient.
Cheers,
Max…
Added by Max Marschall at 7:58am on November 13, 2016
Ok. I'm still a bit stuck I'm afraid. What if I wanted to rotate the line?
I'm trying:
NewLine.Rotate(angle, zaxis, ptA)
Error: 'Rotate' is not a member of 'Rhino.Geometry.Line'.
Thanks!
Mårten