x?
So:
1. We need some random collections (pts) on a List of untrimmed surfaces. Homogenous "random" distribution is better than the method used in the Dubai abstract sketch attached (but at some CPU cost, not a big deal since pts a few: David Rutten did some very good jobin the GH component on that "even" matter). Adding random "noise" (with user controllable min/max values) is the easy thing: like the 256 does.
2. We need some "similarly" defined random pts applied on each surface edge.
3, We "join" 1+2 and do the del mash thing (that's the easy part). Thus the "similar" constrain is critical here for aesthetic purposes (see 2).
4. For each subsequent surface (sharing common edge, that is) we repeat by adding the pts related with the common edge.
5. Arriving to the last surface: we use either one common edge or two if the surfaces define some "closed" (in U or V) combo.
PS: Novice means nothing: we all are novices more or less: so don't let this "truncate" your aspirations.…
called C# (double click to the "component" in the def attached to see what I mean).
OK, jokes apart > back to our business (FORGET intersections and ANY bool thing > think ONLY (a) Intervals, (b) splitting a Surface with the right collections of Intervals):
1. See this attached: it's a prelude about dividing randomly surfaces in the forthcoming Div&Conq example n666. Notice that this deals with Intervals (although with rectangles but that's irrelevant). Notice also that's real-time. Accidentally splitting a surface deals with Intervals as well. Is this Karma? I don't think so, he he
2. It does this by a method called recursive iteration: Erik calls Eric who calls Eric ... until some condition is satisfied (girlfriend waiting for dinner, for instance) and the thing stops.
3. I hear you: BUT that's not what I've asked for. Yes (the whole logic needs some rethinking) and No (it's "similar", he he).
4. I hear you: Where is the real thing? Good question, can I have the next please? It's the Nth time that I've lost something (Alzheimer most probably).
5. Definitely a brain like David Rutten can think a far more efficient/handsome/appropriate random u/v creation approach.
more soon…
o connect the 'Line' for ClampLength and how it relating to Lower- and UpperLimitation.
they have differently lower and upper limitation configuration between red/blue (L:10; U: 10000000) and yellow/green(L:3; H:19)...are those parameter meaning something..?
It would be nice if you could explain about that ;-)
Otherwise, awesome example!
…
Added by Jon to Kangaroo at 3:27am on May 23, 2016
ind that a ?^@&@% door for your next 7 series (avoid that car at any cost) is rated about 10M (the so called development cost) whilst the whole car may require 500++ M. Did you know that the software used in a 7 series exceeds 70M lines of code? Therefor ... blah, blah.
Back to real-life things:
One "suitable" solution for flattish stuff the likes that you've captured is:
1. Make a BoundingBox and make a Point3d grid using, say, the bottom 4 corners (a single dimension tree)..
2. Declare a nullable Point3d grid [ DataTree<Point3d?> hitsTree = new DataTree <Point3d?>();].
3. Shoot a Ray3d from each point using some Vector3d (for instance using p4 - p0 out of the box points). If the Ray hits a brepface get the point if not put a null. That way you have a tree of equal List sizes and "combining" things (Points) for your patterns is greatly simplified [you can use the crude try{} catch{} approach].
4. If all these sound a bit freaky to you ... post a flattish test case (with different U/V) and give some hints about what "pattern" means to you.
best…
cal sweep2 issues as well ...er...cause a lot of cyclic logic in order to finally achieve a proper periodic surface.
Work is currently in a chaotic and incomplete state (that single Canvas is clearly a no no in complex definitions, not to mention the known cluster issue).
Back to GeoGym stuff (> use Saved View "GEO GYM ..." in order to locate your stuff).
Stupid Questions section:
1.OK, that's just a test: playing with mesh relaxation stuff in order to get the gist of the component.
2.Observe that without inputing a "proper" mesh (try the "default" mesh component) the algo can't actually make a meaningful quad mesh.
3.In fact the 1B thing here could be an algo that makes "as few as possible quads - in size" (you did a similar thing with triangles if I remember correctly). Notice that the boundary here is not an issue by any means.
4. But assuming that I've missed the way to do it (quite possibly) by what means can we do further work with the resulting mesh? (output is a single branch thing...thus how we can use it for classic truss creation etc etc).
5. By what means can we relax u/v in nurbs surfaces? (i.e place them "evenly", kinda like 3 above ).
Best, Peter
…
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? :)
…
ike using something like the Z vector, but technically you can use any vector you want. This vector will actually determine the static rotatation of all the planes, so you can control that here if you like. One important thing that I've noticed is that the closer the vector is to the plane of the curve or if its too similar to one of the tangent vectors, the more likely you'll have "flipping"
2) Take the cross product between the tangent and the static vector. This will be your first perpendicular vector, which you can use for the X component of the plane.
3) Take the cross product between the tangent and the result of the previous cross product. Use this result as the Y component of the plane. All three components (X, Y, and Z (which is the tangent vector)) are all perpendicular to each other now.
After you've done that you should have planes that decrease twisting. If your curve is not planar, then there will always be some twisting in the frames, but it will be minimal enough to use them effectively.
There also may be "flipping" within the frames, which means one (or both) of two things. First, you could have planes that have reversed their vectors, so the X vector is properly oriented, but pointing down when it should be pointing up. Second, the X and Y vectors could have potentially swapped, so that Y "should" be X and X "should" be Y. In order to check these things, you'll need to do a few tests. The first one is find out whether the vector (X or Y) of the plane your testing is pointing in the opposite direction of previous vector. The second test is to find out whether the vector (X or Y) of the plane your testing is perpendicular to the previous vector. In both cases, an angle test between the two vectors will be able to tell you what you need to know, but you will likely NEVER get exactly 180 for an opposite test or 90 for a perpendicular test. That means that you have to choose a range with which to determine that a given vector is opposite or perpendicular.
You should start testing the X vector to see if anything is wrong. If you find that the X vector is fine, then just move on because Rhino will only allow you to create right handed planes, and the Z vector (the tangent) will always be the same.
I don't believe that there's a native function within the old dotNET SDK for calculating angles, so use the example at the link below. It basically takes the arcCosine of the Dot Product of the two vectors your testing to return the angle in Radians. I'm not sure if this function is included in RhinoCommon or not....
http://wiki.mcneel.com/developer/sdksamples/anglebetweenvectors…
or 3. What is important is the direction and position of end curves (where a point is connected to only one line). The direction will give the orientation of the foot. The position its position as it is used as Anchor in Kangaroo.
So you will have this mesh. There are some mesh overlaps, which are not important if points are not coincidents.
U and V curves are used for springs. Mesh is used for inflation. Points (from mesh or lines for gravity).
With no inflation (don't use it at the beginning), constant stiffness for springs and not cutoff the shape is like that :
In order to have more equal size in lateral I apply a cutoff. I also add differents strength of string on u (along legs) direction, I use genome (grafted) in order to have multiple sliders. After that a bit of inflation and it is done.
…
es of creating complex geometries with increased control and manipulation possibilities which are processed by a computational subsystem articulated by Rhinoceros 5 + Grasshopper 3D & Sub-Plugins. We will explore the potential of design based on physical simulations with added interactivity and the formal expressivity of tensile membrane structures. Framework: 1 day Grasshopper for beginners crash course + 4 days Main course Date: 22th April _ 26 April 2014, 9:00-17:00 Place: Faculty of Architecture, Slovak University of Technology, Bratislava, Slovakia Tutors: Andrei Padure_Romania, Alex Ahmad_Austria Crash course tutors : Ján Pernecký_Slovakia, Rojiar Soleimani_Iran Organizer: 3D Dreaming, rese arch PROGRAM 1. 22 th April 2014 Rhinoceros 3D + Grasshopper Crash Course (optional) with Ján Pernecký and Rojiar Soleimani The participants will be thaught the essence of NURBS modelling, import/export techniques, best drafting practices and basic Grasshopper scripting – workflow, parameters, components, data structures, attractors, surface subdivision, mathematical and logical operations. 2. 23 - 26 April 2014 Tooling workshop: Grasshopper with Andrei Padure and Alex Ahmad TUTORS Andrei Padure Alex Ahmad Ján Pernecký Rojiar Soleimani ORGANIZERS Ján Pernecký Fabio Pavelli Matej Hoppan Rojiar Soleimani APPLICATION AND PAYMENT
REGISTER HERE ORGANIZING INSTITUTIONS 3D Dreaming rese arch 2b3d Digital Matters Faculty of Architecture, Slovak University of Technology MORE INFO AT www.parametricbratislava.sk…