is the way the component was designed, but I love it and have used it multiple times.
You state:
Now for your position 3 the angle is either 0° or 180°. Since calculating the angle will always return both angle and reflex angle, you need to decide, which to use. AlignPlane uses minimal rotation. Hence your WorldXY will get no rotation at all for your position 3.
However... that's not actually true or what is happening. If you look closely at the image supplied in the original post you will see that the plane displayed at 180 is indeed rotated and the X vector is indeed pointing to -X. To double verify that I extracted the X vector from those planes and displayed them... clearly you can see in the image below that the AlignPlane component is rotating the plane at 180.
Now... to get back to the original issue. The problem I pointed out in my original post was not with the AlignPlane component, but rather with the OrientDirection component. It seems to me that component has an issue when fed a target direction of -X {-1;0;0} for a target vector.
To eliminate the confusion caused by the AlignPlane component I eliminated that component from the design and simply used rotated vectors as input to the target direction of OrientDirection. You will see that the results are the same... when given a target direction of {-1;0;0} the object is not rotated, while any other vector input does rotate the object.
I've attached the updated gh file demonstrating the issue using rotated vectors as the input for dB target direction of the OrientDirection component.…
ed rhino object with a uuid - as soon as i take it into a component the point comes out as a non referenced type and the associaiton, UUID, is broken to the original baked rhino object. This happened for a simple translation action using the move component - i specified a vector and moved all referenced points, output points were no longer reference types
For addition, if you use your idea of a uuid for a user string will it matter if you use addition as the two curves will have differnet uuids for the user string. The user could iterate through the user string collection on the created object to decide on which one to use. I guess the order of the user strings on the additive object is imprtant i.e. if A + B = C, then theorder of the user strings on C should be A, B
Some thoughts about how to maintian this.
1. If a grasshopper object is a reference type - the porperty IsReference can be used - then a new instance of a grasshoper object derived from any geometry that is a reference object has the option of copying that user string.
2. May be you can specify a global option as to whether to maintain inputted reference geometry user strings in components? May be a local option when right clickign on a components inputs where you can specify maintain input reference user strings
3. Restrict copying of reference user strings to certain componens where teh order and number of input parameetrs is unaltered when outputting - as you said, this should be the case for translation, scaling operations.
Not sure what the answer is, Im sure if you dont know the answer then nobody will know!!
Steve…
iew mode:
instead of the fabrication mode (individual Breps ready for 3d printing - minus "some" little details with regard their effortless connection > this is what V3 does):
2. GH does not (AFAIK) include the mesh.Offset capability (used a little C# for that).
3. I promise to translate the test C# used into native components ... if the result is what you are after (you never know, he he).
4. Rounding (fillet) the thickened panel lips (around the hole and with regard perimeter panels) is doable but only via code: AFAIK GH does not include the Surface.CreateRollingBallFillet method (something that does fillets, that is - forget it for the moment). In fact ... there's a complex way to do it without that method ... but is not for the moment (next week you'll be 100% more experienced, he he).…
ld be covered in concrete. I input the specs of the architectural fabric. E=.75 v=.3 p=610 and the thickness is .009. Whenever I run the study, and I've done so on several different meshes, it always produces several errant points. What do these points mean. Also when you divide 1 by the deflection does that convert the deflection to meters. I am also curious about the self weight input. Am I correct in assuming that a self weight of 1 applies 100% of all forces onto the model. I have been a big fan of your software and of your ideas and I still use topostruct since it's such a creative tool. I would like to learn more about doing studies in millipede but I need a little more info on what the various optimization setting should be and what tolerance values to apply. There are several inputs for these but I am unsure how to make adjustments. I have tried to follow your manual and demo files and they have been very helpful in getting me to this point but it seems there are some details I still don't get. If you can help explain or if you'd prefer I can provide you with the file to review. thanks …
s for the sunlight hours analysis.
I'm producing BRE Annual Probable Sunlight Hours calculations and so to match the BRE approach, I'm using 100 sun vectors, each representing 1% of probable sunlight hours. I could use the Sunpath and Analysis Period components to produce sun positions for the whole year, but this gives results that do not fully reflect the BRE methodology - which is important here. I'm detailing this just to clarify that this isn't a full annual calc of 8760 hours for 350 surfaces.
Anyway, when I run the calc, it takes about an hour to run, but the Sunlight Hours Component itself reports a calculation time of 3 seconds! Does this mean that the rest of the time is all about prepping the brep geometry? If so, is there a reason why this is much slower than when using a view of sky recipe and exporting to radiance. For the same project, I completed a view of sky calculations and based on the number of test points and -ad setting, this was completing about 5.25 billions rays so I understand why that took an hour.
Any thoughts as to why the sunlight hours calc seems to take so long?
thanks
Nick
…
omponent Srfgrid to work. I tried sorting the points and also tried all natural possibilities for the U-count from 0 up to 120.
The weirdest thing is that i can plug the same list of points into a Delauny Mesh and get the correct shell. However, when i bake this i get a Brep and not the solid i need for further research. Can anyone help me please? :)
…
s CNC Panelling machines PBA, SPM2 and SIP. Researchgroup: Technische Universität München Faculty of Architecture Chair for Architectural Informatics Prof. Dr. Frank Petzold Researchers: Stefan Kaufmann, Dipl.-Ing. Thomas Oberbichler, BSc.
Chair for Architectural Informatics
Information on machines and units:
Hans Hundegger Maschinenbau
The Component Enables you to define Panels with:
- mitered outline contours
- inline contours
- material thickness
- grain direction
- drill operations
- slit operations
- pocket operations
- textprinting
We also provide a first "system" that does direct manufacturing planing of a triangular tesselation of surfaces.
The recent version:
We did a first test with a 550-parts project. And had no problems. Even so, this is a Betaversion!
The Betaversion is limited to the export of 10 parts per session as we are still not 100% sure about the stability of the component.
Download Beaver 0.2.0
Please contact us, if you need support for more complex projects:
kaufmann@ai.ar.tum.de
…
ariation possibilities are 100 times more than the ones found in V4.
Additionally: a totally new (and vary fast) approach to feed Kangaroo with a proper mesh (case: no holes) based on triangulation of anchor points. Here's a preview (StarlingStar is way inferior for "long" shapes):
Additionally: a brand new way to offset a planar polyline (convex/concave/anything).
Weak point : my "uniform" random point generator is a "bit" inferior to the one found in the PopGeo component (obviously a custom thing - written, most probably, by David).
I would be very interested to get some hints about the logic used (or in an ideal world ... er... some C# code). On the other hand, this is David's work ... thus why share it?.
more soon…
aching my skill set here, but bare with me.
I want to create an animated facade of squares which rotate depending on a sequence of grey-scale images. I've got pretty far thanks to many discussions here, but have hit a blank with exporting my animated model to 3ds max.
Here's my GH script - it's a botch of 3 or 4 various things incorporating centipede at the start and end to get the animation.
All good and it works! It produces animations which I can sequence for presentations too thanks to it's bmp export, which is sort of a side-product.
What I have a problem is that the OBJs it produces error wildly when imported to max. eg in rhino it looks like
But when I've imported them to max it looks like
and as it animates it just gets longer and smaller.
NOW I reckon it might be because my model in grasshopper is 100 separate geometries and it'd like it to be a single one - but I've not achieved that.
Does anyone have any ideas how to solve this? My end result I would like to look like this rendered still from max, but animated.
Thankyou all! This also uses Firefly, so you might need that installed to see how my file works.
…
Added by chris parrott at 10:34am on September 11, 2015
e following inputs:
| title: The title of the new Rhino view.
| projection: A basic projection type.
| position: A position.
| floating: true if the view floats; false if it is docked.
| Returns: The newly constructed Rhino view; or null on error.
However when I try to use it python gives an error:
Add() takes exactly 5 arguments (4 given)
I've figured out that it wants me to give it also the "self" argument:
Add(self: ViewTable, title: str, projection: DefinedViewportProjection, position: Rectangle, floating: bool)
However I have no idea what to give as a first argument.
Here is the code if it helps:
import Rhino.DocObjects.Tables as tables
import Rhino
import System
tables.ViewTable.Add("Testi",Rhino.Display.DefinedViewportProjection.Perspective,
System.Drawing.Rectangle(0,0,100, 100),True)
Thanks from your help in advance!
-Matti Pirinen…
Added by Matti Pirinen at 3:08pm on December 8, 2015