n lofting, though, it makes perfect sense to scale sections independently from the distance between them.
For practical use, I found the graph mapper clumsy; too course and approximate. So I adapted the code I wrote here (Maths + Divide Curve) so that a list of numbers drives the spacing and, optionally(!), the scaling.
When 'Scale by Distance' is false, the numbers in the list determine scaling; '1' is actual size, '0.5' is half size, '2' is twice the size, etc.
When 'Scale by Distance' is true, the distance between the points is used for scaling. This is an indirect effect of the list of numbers (which determines point spacing) and the size of the original shape relative to the curve length.
'Tangent 0' is the curve tangent at each point. It works well for lofting.
'Tangent 1' is the vector between each point and its successor. It works well for orienting solids.
There are still some mysteries... ("Where there is mystery, there is no mastery.")
Lofting doesn't always work well, 'Cap Planar Holes' doesn't work anymore...
I had hoped that this sequence, ".5,1,2,1,.5", would result in:
two half size shapes, one at each end of the curve.
two full size ("1") and one double size ("2") shapes, spaced appropriately.
But I have a mental block about how to achieve that...? :( Instead, I settled for the last of the five shapes being one point short from the end of the curve, and the spacing is off.
Even so, I find this approach easier to use on a practical basis than the graph mapper.
…
Here I use one which has been refined with a 5 level subdivision...does it appear ok to you or would you recommend going even smaller? Green nodes are the ones loads act upon.
2) 'Local To Mesh' vs 'Global' vs 'Projected Global'
I am applying a positive wind pressure (0,729 kN/m2) in the direction of global positive y axis.
The façade mesh is 1505 m2, of which 1056 m2 runs parallel to the XZ plane.The wind pressure is 0,729 kN/m2 acting in the positive y direction ---> expected resultant of +/- 1056 x 0,729 = 770 kN.
'Global' gives +1098 kN in positive y direction.
'Global Projected' gives a +770 kN resultant in the positive y direction.
'Local to mesh'...gives -770kN along x axis (parallel to the façade according to ModelView) & -215kN along y axis. This surprised me since 'Local to mesh' is indeed the option to chose according to the manual yet I can't see how a wind load perpendicular to the facade would result in the tower moving in a cross-wind direction. 'Global projected' appears to provide the most logical result.
In view of these results, do you think the mesh remains ill-defined, the tower's shape is the culprit...or my choice of coordinate system for the load? What would you recommend?
Thanks again for your feedback, which is greatly appreciated.
Nathan
…
cript that and I attempted tweaking it for several days but I'm having problems achieving the full idea i had.
Problem 1:
Once I Brep a frame of the original cube, and the hoopsnake starts, it does not always select the right face of the frame, sometimes chooses a face inside rather than the exterior one, therefore not always fitting pieces together nicely. I tried applying a bounding box to each frame and use the face of the bounding box as reference for the hoopsnake mirroring but I couldn't figure it out so i got rid of it. So I'm stuck...
Problem 2:
The other thing, is I'm wondering whether its possible to parametrize some sort of structural principle into the linear growth sequence in order for structure to retain realistic structural integrity. For example, when you start hoopsnake, the cube linearly grows (mirrors itself) towards the selected point(s); if the growth goes up and across, how would I make it reach a structural limit to make it go back down to the floor and back up again and continue? Could even be as simple as "after 5 frames/cubes vertically and across it goes back down and then up again towards the referenced point(s)" or something.
PS. "Reset All" in Hoopsnake before doing anything.
Hope someone can help.
Thanks in advance,
Cesco…
tle.
I use rhino with the nurbsrelaxation plugin. Recently we have had rhino do some work to come up with an automated drawing tool via grasshopper.
Since grasshopper has been added to rhino i have noticed that when drawing surfaces and then using the nurbs tool the tools behaviour has changed and is now including iterations at the end of its process doubling the amount of time it takes to draw/finalise the surface/shape.
Below i have included 2 screenshots, the first one shows the surface(yellow edges), and then the cursor showing the nurbs icons (toolbar) and the rest of the info is in the command boxes.
The 2nd one shows info in the command line, detailing what happens once the tool is run (this is where you can see the iterations occuring).
Having done a little research i get the impression that this may be grasshopper related but cannot find any confirmation of this nor of anyone experiencing the same issue.
I also know that nurbsrelaxation is a plug in so not everyone will use this.
Can anyone help me with this as i would like to know why the iterations are occurring and if we can eliminate or reduce them.
Many thanks in advance
Matt…
Added by Matt Fairley at 4:08am on November 10, 2015
j
1
c
e
h
k
2
f
-------------------------------------------------------------------------------------------------
To these...
0;0
0;1
0
a
i
------------------------------------------------------------
0;0
0;1
0;2
0
b
g
j
1
c
h
k
------------------------------------------------------------
0;0
0
d
1
e
2
f
------------------------------------------------------------
Thanx……
can work in any node of a given hierarchy tree (loaded in your work session) by making the node "active". "Nodes" can be other things as well (like workplane, clip definitions etc).
Why to do that weird thing? Well, think any design being "flat" > meaning that all objects are placed in a single file (and in a single layer). Not that good > although the items are present you barely can handle them (because power is nothing without control, he he).
Let's go one step further: we can start classifying objects in "groups" (like a directories/files organization in any O/S). This means, in MCAD speak, creating assemblies (a void thing kinda like a directory) that contain components/entities (kinda like files).
Several steps further we end up with severely nested "arrangements" of entities (an assembly could be parent of something and child of something else).
For instance, it could be rather obvious the logical classification of a "geodetic" (so to speak) structure like this : a 40000m2 "hangar" defining some thematic park.
I mean : a void master that owns 4 equal void segment sets that own 4 "legs" that own various geodesic structural members + cables + membranes + you name it etc etc.
Each "leg" owns the concrete base (Shared) and a rather complex set of objects.
Notice that some tensile membrane "fixture" combos (see above)...act as perimeter light fixtures as well...meaning that the membrane tension plate may could be a child of a void "light" parent...or may could be a "stand alone" assembly etc etc.
These arrangements can be internal (belonging in, say, a x node within the current active file) or external (belonging in a y node within another file). If they deal with the same (topologically speaking) object they define clusters of Shared entities (or variations)- where only the view transformation matrix changes (in the simple scenario, he he). For instance the disk shown above is a Shared Assembly that owns the bolts, the plates, the tension member etc etc. Selective Instancing allows modifying some attributes without affecting the topology (i.e. the geometry).
The whole (terrible) mess is controlled by some tree like "dialog" (in Catia is "transparent") that is called Structure Browser. By controlled I mean (1) display/display mode with regard any tree member combo/selection set (assembly and/or component) in any View (2) clip state control (3) active status (for modifications/variations) (4) workplane control (5) drag and drop ownership control (6) ....
Now...what if I would chan…
this occasion, but it could be converted for DT in no time). Requires some minutes more as regards ... some things, but the usual update is due to some days.
Bad news: it's C#
Good news: User's Manual :
1. That thing (the C#, not me) after sorting (in a "sequential way", so tho speak) the panels (their order was chaotic) allows you to start the massacre by locating a focus of interest (and the user controllable +/- Range derived from it).2. The Range is variable (obviously) and takes care not to exceed the indices of the panel list (OK, that's elementary).
3. If you click the right button (Sadistic Q: where is it? he he) things are deleted and a new constantly self-updating list is your new List. Thus the massacre of panels is totally controllable. An autoZoom thing is also included (free of charge, but it's a bit nerve braking). Zoom factor is variable as well.
4. Then you move over (via the index slider) and start the massacre again. Notice the change of Range.
5. If you turn begin to false (initialization) and then begin to true > start all over again.
6. The other C# thing allows you to increment the index slider in a rather more convenient way. It's a bit weird: it uses delegates (A delegate is an object that knows how to call a method) and events (An event is a construct that exposes just the subset of delegate features required for the broadcaster/subscriber model - but don't ask what this means, he he) in order to talk with your slider (with a defined NickName) and perform the required value control.
NOTE: without realizing it you've just (indirectly) asked one of the most important questions even exposed in this Noble Forum. I hear you : what question? Well ... wait some days for the mother of all threads: "Total control in collections on a per Item basis"
may the Force (the dark option) be with you (and me)
best, Peter…
a machine that is light and very sturdy. I have taken my Macbook Pro all around the world, carry it with me every day, even dropped it a few times and its still totally fine. Its thin and light.
2) You get some actual support for your hardware even a few years down the line. My Macbook Pro is from 2012 and I can still walk in to any Apple Store and get help with it, which I have done many, many times in different places around the world - I never had to show a receipt or was charged any money for help. There is no PC/Laptop manufacturer in the world with anything close to that, because companies like Asus, Dell, etc. bring out dozens of new versions of laptops every year, so its much harder to service them after a few years.
3) This is the most important one, which usually people forget when they say that Macbooks are overpriced: Resale Value. If you have ever tried to sell an old PC/Laptop (I have a few times), you will know how little value they have even after just 2-3 years. Macbooks retain their value very well and even after 4 years you can still get 50% of your original price.
4) Of course you can install Windows on it and it runs perfectly. I have MacOS and Windows on it and both run absolutely fine. On the Windows side I have Rhino+GH, Maya and a few others. Having Windows is good, because some software still only runs on Windows (looking at you, 3DSMax!). Most other software also runs on MacOS. In the interest of sanity it is great to have an alternative to Windows for all the day to day stuff, like Mail, Calender, Photos, Presentations, etc. that just always works.
5) As for performance: Yes, Macbook Pros dont necessarily have the latest and greatest in graphics cards (the rest is on par with PC laptops), but unless you want to play games you will not need it. VRay RT can do GPU rendering, but you wont get great performance from a Notebook GPU anyways and it doesnt make sense to do rendering on a laptop (especially since you have a workstation). You could get one of the older Macbook Pro Retina Late 2013 or Mid 2014 models with the GTX750M by Nvidia, which will be usable to render using VRay RT, but of course not huge performance. Better to invest in a good used graphics card for your workstation like an Nvdia GTX980ti, which is the best value for money for GPU rendering right now (lots of used ones available).
So at least consider also getting a Macbook Pro. You can buy refurbished models (depending where you are) and they are like new, but a lot cheaper or even get an older one thats used. It will be a worthwile investment.
Take it from someone who has used dozens of PCs and Macs in my lifetime and have to do the IT support here at work (where we also use both).
I still have my Macbook Pro Retina from 2012 and its still running perfectly, super fast, and I can use Rhino and GH for huge files, do GPU Rendering with Octane Render and all sorts of other heavy computing stuff.
Hope that helps.…
Added by Armin Seltz at 11:12am on September 19, 2016
he Cordyceps. Maybe some of you find this helpful/useful.
So basically, the Cordyceps is a physical module with 4 knobs and 1 slider. The knobs give an output between 1 and 1000, while the physical slider outputs 0-359. And of course, for this physical module I wrote a plugin to communicate with it. The knobs are intended to be the variables that modifies the design, while the physical slider is intended to be connected to the camera component.
Here I will put up "the recipe" for all to make their own module. You will be able to download the plugin as well.
Please send me a message if you want the 3D-files for the knobs, the box and slider knob. They've been made to directly 3D-print.
Plugin:
https://github.com/zakadjeb/Cordyceps/blob/master/Cordyceps/Cordyce...
Code for Arduino IDE:
https://github.com/zakadjeb/Cordyceps/blob/master/Arduino/_Arduino_...
What you need:
1x - Arduino (Leonardo, UNO or whatever)
4x - Potentiometers
1x - Sliding potentiometer
1x - Breadboard
Bundle of jump wires.
1. So, a potentiometer is a variable resistor, which is basically a component that changes the resistance between the voltage and the ground.
If A is supplied with 5V then B must be connected to Ground. The W will give "read" the resistance, and thus should be placed in Analog input (A0-A5) on the Arduino. The slider potentiometer works the same way.
2. Now connect the 4 pots to each their Analog input. The slider is supposed to be in A4. So to make sure:
A0: Knob1
A1: Knob2
A2: Knob3
A3: Knob4
A4: Slider
3. Now it's time to connect the voltage! Using the breadboard, the voltage can be sent through 1 line, the Ground as well. It should be quite easy to connect them.
4. Now, download the Arduino IDE and copy-paste the code I supplied above. In the IDE, you need to let it know which Arduino you're working with, and which port is should send the script.
5. Almost there. Download the plugin. Open the port you're using through the plugin. Set Start to True and the Cordyceps should be within you.
This recipe will be updated!
Let me know if there are any issues.
// Zakaria Djebbara…
he Cordyceps. Maybe some of you find this helpful/useful.
So basically, the Cordyceps is a physical module with 4 knobs and 1 slider. The knobs give an output between 1 and 1000, while the physical slider outputs 0-359. And of course, for this physical module I wrote a plugin to communicate with it. The knobs are intended to be the variables that modifies the design, while the physical slider is intended to be connected to the camera component.
Here I will put up "the recipe" for all to make their own module. You will be able to download the plugin as well.
Please send me a message if you want the 3D-files for the knobs, the box and slider knob. They've been made to directly 3D-print.
Plugin:
https://github.com/zakadjeb/Cordyceps/blob/master/Cordyceps/Cordyce...
Code for Arduino IDE:
https://github.com/zakadjeb/Cordyceps/blob/master/Arduino/_Arduino_...
What you need:
1x - Arduino (Leonardo, UNO or whatever)
4x - Potentiometers
1x - Sliding potentiometer
1x - Breadboard
Bundle of jump wires.
1. So, a potentiometer is a variable resistor, which is basically a component that changes the resistance between the voltage and the ground.
If A is supplied with 5V then B must be connected to Ground. The W will give "read" the resistance, and thus should be placed in Analog input (A0-A5) on the Arduino. The slider potentiometer works the same way.
2. Now connect the 4 pots to each their Analog input. The slider is supposed to be in A4. So to make sure:
A0: Knob1
A1: Knob2
A2: Knob3
A3: Knob4
A4: Slider
3. Now it's time to connect the voltage! Using the breadboard, the voltage can be sent through 1 line, the Ground as well. It should be quite easy to connect them.
4. Now, download the Arduino IDE and copy-paste the code I supplied above. In the IDE, you need to let it know which Arduino you're working with, and which port is should send the script.
5. Almost there. Download the plugin. Open the port you're using through the plugin. Set Start to True and the Cordyceps should be within you.
This recipe will be updated!
Let me know if there are any issues.
// Zakaria Djebbara…